{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/views/ThankYou.vue?59c8","webpack:///./src/components/orienteme/UploadButton.vue?d48e","webpack:///./src/assets/svg/icons/arrow-left.svg","webpack:///./src/views/PersonalData.vue?ffc8","webpack:///./src/components/orienteme/CustomForm.vue?194f","webpack:///./src/views/Experience.vue?ca54","webpack:///./src/components/orienteme/CustomField.vue?6531","webpack:///./src/views/ProfessionalData.vue?45ec","webpack:///./src/assets/images/logo.png","webpack:///./src/App.vue","webpack:///./src/App.vue?8ecf","webpack:///./src/layouts/Default.vue?f228","webpack:///./src/components/orienteme/Steps.vue?8a8b","webpack:///./src/components/orienteme/Steps.vue","webpack:///./src/components/orienteme/Steps.vue?22af","webpack:///./src/interfaces/field.ts","webpack:///./src/constants/enums/gender.ts","webpack:///./src/constants/enums/internet-skill.ts","webpack:///./src/constants/enums/online-services.ts","webpack:///./src/constants/enums/professions.ts","webpack:///./src/constants/enums/http-status.ts","webpack:///./src/constants/enums/language.ts","webpack:///./src/constants/enums/steps.ts","webpack:///./src/constants/enums/states.ts","webpack:///./src/constants/enums/yes-no.ts","webpack:///./src/constants/enums/profession-question.ts","webpack:///./src/utils/helpers.ts","webpack:///./src/constants/contracts/PersonalData.ts","webpack:///./src/constants/forms/experience-form.ts","webpack:///./src/constants/forms/avaliability-form.ts","webpack:///./src/constants/forms/address-form.ts","webpack:///./src/constants/forms/basic-form.ts","webpack:///./src/constants/forms/personal-form.ts","webpack:///./src/constants/forms/professional-form.ts","webpack:///./src/utils/docTypes.ts","webpack:///./src/mixins/signup.ts","webpack:///./src/layouts/Default.vue","webpack:///./src/layouts/Default.vue?3637","webpack:///./src/views/PersonalData.vue?c1e5","webpack:///./src/components/orienteme/UploadButton.vue?b53b","webpack:///./src/components/orienteme/UploadButton.vue","webpack:///./src/components/orienteme/UploadButton.vue?bcaa","webpack:///./src/components/orienteme/CustomField.vue?9a9d","webpack:///./src/utils/http.ts","webpack:///./src/store/index.ts","webpack:///./src/components/orienteme/CustomField.vue","webpack:///./src/components/orienteme/CustomField.vue?ea8d","webpack:///./src/utils/rules.ts","webpack:///./src/mixins/notification.ts","webpack:///./src/mixins/upload-image.ts","webpack:///./src/mixins/answers.ts","webpack:///./src/views/PersonalData.vue","webpack:///./src/views/PersonalData.vue?1183","webpack:///./src/views/BasicData.vue?e356","webpack:///./src/components/orienteme/CustomForm.vue?27f3","webpack:///./src/components/orienteme/CustomForm.vue","webpack:///./src/components/orienteme/CustomForm.vue?5b28","webpack:///./src/views/BasicData.vue","webpack:///./src/views/BasicData.vue?2c03","webpack:///./src/views/ThankYou.vue?40e7","webpack:///./src/views/ThankYou.vue","webpack:///./src/views/ThankYou.vue?5f65","webpack:///./src/views/Address.vue?943e","webpack:///./src/views/Address.vue","webpack:///./src/views/Address.vue?3afd","webpack:///./src/views/ProfessionalData.vue?b27f","webpack:///./src/components/orienteme/SelectorElements.vue?e724","webpack:///./src/components/orienteme/SelectorElements.vue","webpack:///./src/components/orienteme/SelectorElements.vue?c834","webpack:///./src/constants/contracts/professionalData.ts","webpack:///./src/views/ProfessionalData.vue","webpack:///./src/views/ProfessionalData.vue?3b15","webpack:///./src/views/Availability.vue?70dc","webpack:///./src/views/Availability.vue","webpack:///./src/views/Availability.vue?15e2","webpack:///./src/views/Experience.vue?3923","webpack:///./src/views/Experience.vue","webpack:///./src/views/Experience.vue?d800","webpack:///./src/router/index.ts","webpack:///./src/main.ts","webpack:///./src/components/orienteme/SelectorElements.vue?b603","webpack:///./src/views/BasicData.vue?2e3c","webpack:///./src/layouts/Default.vue?06bf","webpack:///./src/components/orienteme/Steps.vue?b27d"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","_createBlock","_component_router_view","script","__exports__","render","_hoisted_1","class","_hoisted_2","_createElementVNode","src","_imports_0","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","href","_hoisted_8","_hoisted_9","target","style","_hoisted_10","_ctx","_cache","$props","$setup","$data","$options","_component_el_col","_resolveComponent","_component_el_row","_component_Steps","_component_el_card","_component_el_popover","_openBlock","_createElementBlock","_createVNode","default","_withCtx","span","_","onClick","goTo","wesiteUrl","isDebug","_createCommentVNode","_withDirectives","steps","values","activeStep","_vShow","stepVisible","placement","width","trigger","content","version","reference","_toDisplayString","currentYear","_createTextVNode","_component_check","_component_el_icon","_component_el_divider","_Fragment","_renderList","registerSteps","step","idx","_normalizeClass","id","currentStep","finished","$event","redirect","meta","title","defineComponent","componentes","Check","computed","mapGetters","methods","mapActions","inProgress","this","$router","replace","query","$route","goToStep","Option","constructor","GENDERS","INTERNET_SKILL","ONLINE_SERVICES","PROFESSIONS","psicologos","label","juridicos","financeiros","sociais","nutricionistas","medicos","coaches","personaltrainers","orientacaofisica","HTTP_STATUS","LANGUAGE","STEPS","path","active","status","STATES","YES_NO_OPTION","PROFESSION_QUESTIONS","ATUALMENTE_VOCE_E_PACIENTE_DE_TERAPIA_ANALISE","COLOQUE_NA_ESCALA_O_NUMERO_QUE_VOCE_CONSIDERA_ADEQUADO_AO_SEU_CONHECIMENTO_DE_INTERNET","COM_QUE_FREQUENCIA_VOCE_CHECA_SEU_E_MAIL","COMO_VOCE_DESCOBRIU_A","COMO_VOCE_DESCOBRIU_A_ORIENTEME","EM_MEDIA_QUANTAS_HORAS_VOCE_ATENDE_POR_SEMANA","EM_MEDIA_QUANTOS_PACIENTES_POR_SEMANA_VOCE_ATENDE","INDIQUE_A_FAIXA_ETARIA_MEDIA_DOS_SEUS_PACIENTES_ATUAIS","INDIQUE_O_CONTATO_DE_PELO_MENOS_UM_TERAPEUTA_QUE_POSSA_SERVIR_DE_REFERENCIA","JA_ATENDEU_ONLINE_SE_SIM_POR_QUE_MEIOS","MINHA_CONEXAO_COM_A_INTERNET_E","POR_QUE_O_ATENDIMENTO_ONLINE_TE_INTERESSA","POR_QUE_VOCE_QUER_ATENDER_PELA_PLATAFORMA","POSSUI_ANTECEDENTES_CRIMINAIS","QUAL_E_A_SUA_ABORDAGEM_TERAPEUTICA_INDIQUE_TODAS_AS_APLICAVEIS","QUAL_IS__FAIXA_S__ETARIA_S__VOCE_TEM_INTERESSE_EM_ATENDER_ONLINE","QUANTO_TEMPO_VOCE_PODERA_DISPOR_PARA_TRABALHAR_COM_A_PLATAFORMA_DIARIAMENTE","QUANTOS_ANOS_DE_EXPERIENCIA_COM_ATENDIMENTO_CLINICO_VOCE_TEM","QUE_NAVEGADOR_VOCE_USA","QUE_SISTEMA_OPERACIONAL_DE_SMARTPHONE_VOCE_USA","SELECIONE_ATE_10_TEMAS_PRINCIPAIS_EM_QUE_VOCE_POSSUI_EXPERIENCIA","VOCE_DA_SUPERVISAO_CLINICA","VOCE_EXERCE_ALGUMA_FUNCAO_COMO_TERAPEUTA","VOCE_JA_FOI_SUJEITO_A_ACOES_DISCIPLINARES_ATUANDO_COMO_TERAPEUTA","VOCE_PRETENDE_ATENDER_EM_QUAIS_IDIOMAS","VOCE_TEM_UM_SUPERVISOR_CLINICO","Helpers","index","self","indexOf","array","concat","date","Date","toLocaleDateString","DateParts","split","toISOString","exc","console","log","file","Promise","resolve","reject","reader","FileReader","readAsDataURL","onload","_reader$result","toString","onerror","error","transformToPersonalData","onlineServices","map","x","onlineService","filter","personalData","initialData","response","dateOfBirth","toJsonDate","referencePersonPhoneNumber","onlyNumbers","internetSkillLevel","hasCriminalRecords","Boolean","phoneNumber","convenienceServiceAnyWhereTime","language","PORTUGUESE","allProfessions","EXPERIENCE_FORM","targets","prop","title__nutricionistas","title__psicologos","subtitle","type","options","storeGetter","height","minimum","col","AVALIABILITY_FORM","ADDRESS_FORM","mask","maxlength","BASIC_FORM","PERSONAL_FORM","personalForm","placeholder","removePadding","feedbackForm","PROFESSIONAL_FORM","graduationForm","limit","occupationForm","created","profession","mounted","scrollTo","professionIndex","params","docType","docTypes","watch","immediate","setStepsVisible","SET_STEP","mapMutations","redirectStep","advanceStep","components","Steps","mixins","signup","arrowLeft","ArrowLeft","process","getFullYear","url","location","restore","uuid","_withScopeId","_pushScopeId","_popScopeId","_component_el_form_item","_component_CustomField","_component_UploadButton","_component_el_button","_component_el_form","ref","model","form","rules","formRules","filterPersonalForm","field","fieldValue","targetRendering","onChange","handleFieldChange","xs","sm","pictureProfessional","onUpload","v","handleUploadPicture","onRemove","handleRemovePicture","pictureIdentification","filterFeedbackForm","loading","lockState","submitForm","_component_el_upload","hasFile","drag","action","handleChange","handleRemove","tip","justify","emits","props","Number","required","$emit","_ctx$field$col","_component_el_radio","_component_el_radio_group","_component_el_checkbox","_component_el_checkbox_group","_component_el_option","_component_el_select","_component_el_input","_directive_maska","_resolveDirective","_ref","_ctx$field","includes","hasToScroll","externalOptions","option","_normalizeStyle","_ctx$field$placeholde","filterable","onInput","onKeyup","_withKeys","searchAddress","onBlur","pictureRemove","baseURL","http","axios","interceptors","request","use","req","Authorization","store","state","token","headers","async","wrappedError","errorCode","err","router","createStore","user","professionalData","address","experience","availability","statusCode","schema","institutionsList","courseList","graduateList","graduationList","specialtys","personalDataAnswers","experienceAnswers","availabilityAnswers","getters","institutionsSelectOptions","transformIntoSelect","courseListSelectOptions","graduateListSelectOptions","specialtysSelectOptions","graduationListSelectOptions","answersListSelectOptions","answers","storeGetterKey","objectKey","Error","answersByValue","storeObject","answersByKey","itemId","isNewUser","cleanAddress","DUMMY_DATA","entries","forEach","actions","context","payload","JSON","parse","stringify","cpfcnpj","post","commit","erros","join","handleHttpResponse","zipCode","handleUploadImageApiPicture","picture","dispatch","INITIAL_DATA","promiseInitialData","promisePersonalInfo","promises","all","responseInitialData","arrayAnswers","professionType","storeQuestions","storeUserAnswers","questionType","answerKey","LANGUAGE_PT_BR","answersId","PERSONAL_INFORMATION","responsePersonalInfo","hasFinishedPersonalData","whyDoYouWantToMeetOnThePlatform","cpfCnpj","city","institutions","actualStep","refreshStateApp","mutations","SET_USER","SET_PERSONAL_DATA","SET_ADDRESS","SET_INITIAL_DATA","SET_INSTITUITIONS","SET_COURSE_LIST","SET_GRADUATE_LIST","list","SET_SPECIALTY_LIST","SET_GRADUATION_LIST","SET_OPTIONS_ANSWERS","SET_POSTED_ANSWERS","SET_USER_ANSWERS","Array","isArray","SET_PROFESSIONAL_DATA","SET_USER_STATUS","SET_STEP_VISIBILITY","REFRESH_STATE_APP","keyId","keyValue","httpResponse","isSuccess","formData","FormData","append","raw","UploadButton","String","e","handlePictureRemove","Rules","message","re","validator","rule","callback","test","isValidDate","isNaN","min","notifySuccess","ElNotification","duration","notify","_err$erros","setTimeout","notifyError","warn","pop","flatten","distinct","distinctString","storeAnswers","formTemplate","vueFormData","storeObjectName","questionId","y","z","userAnswers","answerLabels","buildRequest","jsonForm","professionTarget","isOptionApiType","userAnswer","answerId","CustomField","notification","UploadImage","gender","professionalCouncilNumber","professionalCouncilState","howDidYouKnowPlataform","howIsYourInternetConnection","whatOperationSystemDoYouUse","similarityDifferenceOnLineService","el","formName","refs","$refs","validate","valid","requestBody","postPersonalData","sendProfilePicture","sendIdentificationDocumentPicture","sync","Endereço","event","builder","rawData","build","clearZero","getDate","getMonth","profilePictureUuid","profilePictureName","uid","profilePictureType","identificationDocumentUuid","identificationDocumentName","identificationDocumentType","fetchPersonalData","fetchGlobalAnswers","renderUserAnswers","_component_Form","fields","filterFieldsByProfession","onSubmit","_renderSlot","$slots","onSearchZipCode","handleSearchZipCode","handleFormSubmission","Form","email","uuidReference","postBasicData","firstThankYou","segment","goToWebSite","mapState","_this$user$name","segments","endsWith","handleSubmitForm","isWaiting","publicPlace","number","country","postAddress","_this$form$zipCode","zipCodeLength","then","addressData","erro","logradouro","neighborhood","bairro","localidade","uf","catch","fetchAddress","_component_SelectorElements","formGraduationRules","filterGraduationForm","onPictureRemove","onAdd","handleClickAddGraduation","handleClickRemoveGraduation","pictureCouncil","filterOccupationForm","_TransitionGroup","tag","grad","header","role","handleClickRemove","item","transform","reg","nome","hasEConcil","mostChallengingSituation","institutionList","institution","graduateDate","SelectorElements","institutionId","graduation","courseId","graduate","pictureGraduation","challenge","occupationArea","refFormGraduation","newGraduation","buildGraduation","fromForm","clearForm","sendPicture","sendCouncilDocument","postProfessionalData","Experiência","_store$state$graduati","_store$state$institut","_rawData$institutions","getBase64","fileType","fileName","fromAPI","toDate","councilDocumentName","councilDocumentUuid","councilDocumentType","fetchInstituitions","fetchGraduationList","fetchCourseList","fetchGraduateList","fetchSpecialtyList","fetchProfessionalData","Notification","emailCheckFrequency","languages","ageGroup","postAvailability","isFinished","isFormFinished","ex","years","online","themes","patientsWeekly","patientsAge","haveSupervisor","youAreSupervisor","postExperience","Disponibilidade","routes","component","DefaultLayout","children","BasicData","ThankYou","PersonalData","Address","ProfessionalData","Experience","Availability","createRouter","history","createWebHistory","SENTRY_DSN","app","createApp","App","ElementPlus","Maska","ElementPlusIconsVue","mount","Sentry","dsn","integrations","BrowserTracing","routingInstrumentation","tracePropagationTargets","tracesSampleRate"],"mappings":"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","file":"js/app.eb3d522e.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./ThankYou.vue?vue&type=style&index=0&id=2a74faf1&lang=scss&scoped=true\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./UploadButton.vue?vue&type=style&index=0&id=e1230ec0&scoped=true&lang=scss\"","module.exports = __webpack_public_path__ + \"img/arrow-left.03ab7769.svg\";","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./PersonalData.vue?vue&type=style&index=0&id=37a8efa4&scoped=true&lang=css\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./CustomForm.vue?vue&type=style&index=0&id=75f11196&lang=css\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Experience.vue?vue&type=style&index=0&id=07a202c8&scoped=true&lang=css\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./CustomField.vue?vue&type=style&index=0&id=16634a70&lang=scss\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./ProfessionalData.vue?vue&type=style&index=0&id=d82cea42&scoped=true&lang=css\"","module.exports = \"data:image/png;base64,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\"","\n","import { render } from \"./App.vue?vue&type=template&id=43f8a59e\"\nconst script = {}\n\nimport exportComponent from \"/app/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, vShow as _vShow, withDirectives as _withDirectives, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode } from \"vue\"\nimport _imports_0 from '../assets/images/logo.png'\n\n\nconst _hoisted_1 = { class: \"pr-default\" }\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"img\", { src: _imports_0 }, null, -1)\nconst _hoisted_3 = /*#__PURE__*/_createElementVNode(\"span\", null, \"Voltar para o site\", -1)\nconst _hoisted_4 = [\n _hoisted_3\n]\nconst _hoisted_5 = { class: \"pr-default__container\" }\nconst _hoisted_6 = { key: 0 }\nconst _hoisted_7 = /*#__PURE__*/_createElementVNode(\"ul\", null, [\n /*#__PURE__*/_createElementVNode(\"li\", null, [\n /*#__PURE__*/_createElementVNode(\"a\", {\n class: \"debug-link\",\n href: \"/cadastro/psicologos/dados-profissionais\"\n }, \"Psicologia\")\n ]),\n /*#__PURE__*/_createElementVNode(\"li\", null, [\n /*#__PURE__*/_createElementVNode(\"a\", {\n class: \"debug-link\",\n href: \"/cadastro/nutricionistas/dados-profissionais\"\n }, \"Nutrição\")\n ])\n], -1)\nconst _hoisted_8 = [\n _hoisted_7\n]\nconst _hoisted_9 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://orienteme.com.br/termos-de-uso/\",\n target: \"_blank\",\n style: {\"margin-right\":\"20px\"}\n}, \"Termos de uso\", -1)\nconst _hoisted_10 = /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://orienteme.com.br/politica-de-privacidade/\",\n target: \"_blank\"\n}, \"Politica de privacidade\", -1)\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_el_col = _resolveComponent(\"el-col\")!\n const _component_el_row = _resolveComponent(\"el-row\")!\n const _component_Steps = _resolveComponent(\"Steps\")!\n const _component_router_view = _resolveComponent(\"router-view\")!\n const _component_el_card = _resolveComponent(\"el-card\")!\n const _component_el_popover = _resolveComponent(\"el-popover\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createVNode(_component_el_row, { class: \"pr-default__header\" }, {\n default: _withCtx(() => [\n _createVNode(_component_el_col, { span: 12 }, {\n default: _withCtx(() => [\n _hoisted_2\n ]),\n _: 1\n }),\n _createVNode(_component_el_col, {\n class: \"pr-default__goback\",\n span: 12\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", {\n onClick: _cache[0] || (_cache[0] = () => _ctx.goTo(_ctx.wesiteUrl))\n }, _hoisted_4)\n ]),\n _: 1\n })\n ]),\n _: 1\n }),\n _createElementVNode(\"div\", _hoisted_5, [\n _createVNode(_component_el_row, null, {\n default: _withCtx(() => [\n _createVNode(_component_el_col, null, {\n default: _withCtx(() => [\n (_ctx.isDebug)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_6, _hoisted_8))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n })\n ]),\n _: 1\n }),\n _createVNode(_component_el_card, { class: \"pr-default__box-card\" }, {\n default: _withCtx(() => [\n _withDirectives(_createVNode(_component_Steps, {\n steps: Object.values(_ctx.steps),\n activeStep: _ctx.activeStep\n }, null, 8, [\"steps\", \"activeStep\"]), [\n [_vShow, _ctx.stepVisible]\n ]),\n _createVNode(_component_router_view)\n ]),\n _: 1\n }),\n _createVNode(_component_el_row, { class: \"pr-default__footer\" }, {\n default: _withCtx(() => [\n _createVNode(_component_el_popover, {\n placement: \"top-start\",\n width: 100,\n trigger: \"hover\",\n content: _ctx.version\n }, {\n reference: _withCtx(() => [\n _createVNode(_component_el_col, {\n class: \"pr-default__copy\",\n span: 12\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.currentYear) + \"©\", 1),\n _createTextVNode(\" orienteme \")\n ]),\n _: 1\n })\n ]),\n _: 1\n }, 8, [\"content\"]),\n _createVNode(_component_el_col, {\n class: \"pr-default__links\",\n span: 12\n }, {\n default: _withCtx(() => [\n _hoisted_9,\n _hoisted_10\n ]),\n _: 1\n })\n ]),\n _: 1\n })\n ])\n ]))\n}","import { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, createVNode as _createVNode, vShow as _vShow, withCtx as _withCtx, withDirectives as _withDirectives, normalizeClass as _normalizeClass, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-344fb195\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = [\"onClick\"]\nconst _hoisted_2 = { class: \"id\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_check = _resolveComponent(\"check\")!\n const _component_el_icon = _resolveComponent(\"el-icon\")!\n const _component_el_divider = _resolveComponent(\"el-divider\")!\n const _component_el_col = _resolveComponent(\"el-col\")!\n const _component_el_row = _resolveComponent(\"el-row\")!\n\n return (_openBlock(), _createBlock(_component_el_row, { class: \"orienteme-steps\" }, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.registerSteps, (step, idx) => {\n return (_openBlock(), _createBlock(_component_el_col, {\n key: idx,\n class: _normalizeClass([\"orienteme-steps__item\", \n { '-last': _ctx.registerSteps.length === (idx + 1),\n '--active': step.id === _ctx.currentStep.id,\n 'finished': step.finished }])\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"a\", {\n href: \"#\",\n onClick: ($event: any) => (_ctx.redirect(step))\n }, [\n _createElementVNode(\"span\", _hoisted_2, _toDisplayString(step.id) + \".\", 1),\n _createElementVNode(\"span\", null, _toDisplayString(`${step.meta.title}`), 1),\n _withDirectives(_createVNode(_component_el_icon, null, {\n default: _withCtx(() => [\n _createVNode(_component_check)\n ]),\n _: 2\n }, 1536), [\n [_vShow, step.finished]\n ])\n ], 8, _hoisted_1),\n _createVNode(_component_el_divider, { style: {\"margin-top\":\"10px\",\"height\":\"4px\"} })\n ]),\n _: 2\n }, 1032, [\"class\"]))\n }), 128))\n ]),\n _: 1\n }))\n}","\nimport { defineComponent } from 'vue';\nimport { IStep } from '@/constants';\nimport { mapActions, mapGetters } from 'vuex';\nimport { Check } from '@element-plus/icons-vue';\n\nexport default defineComponent({\n componentes: { Check },\n computed: {\n ...mapGetters(['currentStep', 'registerSteps']),\n },\n methods: {\n ...mapActions(['goToStep']),\n redirect: function(step: IStep) {\n if(step.finished || step.inProgress){\n this.$router.replace({ name: step.name, query: this.$route.query });\n this.goToStep(step);\n }\n }\n }\n});\n","import { render } from \"./Steps.vue?vue&type=template&id=344fb195&scoped=true&ts=true\"\nimport script from \"./Steps.vue?vue&type=script&lang=ts\"\nexport * from \"./Steps.vue?vue&type=script&lang=ts\"\n\nimport \"./Steps.vue?vue&type=style&index=0&id=344fb195&lang=scss&scoped=true\"\n\nimport exportComponent from \"/app/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-344fb195\"]])\n\nexport default __exports__","export interface IField {\n targets: string[], // 'psicologos' | 'nutricionistas'\n prop: string,\n title?: string,\n title__nutricionistas?: string,\n title__psicologos?: string,\n subtitle?: string,\n placeholder?: string,\n type: 'checkbox' | 'radio' | 'radioButton' | 'textarea' | 'input' | 'select' | 'upload',\n col?: number | undefined | null,\n options?: IOptionType | IOption[] | string,\n mask?: any,\n maxlength?: number\n removePadding?: boolean,\n limit?: number,\n minimum?: number;\n height?: number;\n}\n\nexport interface IOptionType {\n storeGetter: any[] | string\n key?: string,\n}\nexport interface IFieldEvent {\n e: any,\n field: IField\n}\nexport interface IOption {\n key: string,\n value: string\n}\n\nexport class Option implements IOption {\n constructor(key: string | boolean, value: string){\n this.key = key;\n this.value = value;\n }\n key: any;\n value: string;\n}","import { IOption, Option } from '@/interfaces/field';\n\nexport const GENDERS = [\n new Option('1', 'Feminino'),\n new Option('2', 'Masculino')\n] as IOption[];","import { IOption, Option } from '@/interfaces/field';\n\nexport const INTERNET_SKILL = [\n new Option('1', '1 - Muito Ruim'),\n new Option('2', '2 - Ruim'),\n new Option('3', '3 - Média'),\n new Option('4', '4 - Boa'),\n new Option('5', '5 - Muito Boa'),\n] as IOption[];","import { IOption, Option } from '@/interfaces/field';\n\nexport const ONLINE_SERVICES = [\n new Option('additionalVolumeUsers', 'Volume adicional de pacientes'),\n new Option('additionalIncome', 'Renda adicional'),\n new Option('convenienceServiceAnyWhereTime', 'Comodidade do atendimento em qualquer local e hora'),\n new Option('easeReceivingPeriodicUsersReports', 'Facilidade em receber relatórios periódicos de meus pacientes'),\n new Option('securityAutomatedPayment', 'Segurança em ter o pagamento automatizado pela plataforma'),\n new Option('securityHavingEncryptedConversations', 'Segurança em ter as conversas criptografadas'),\n new Option('others', 'Outros'),\n ] as IOption[];","export interface IProfessions {\n psicologos: any,\n juridicos: any,\n financeiros: any,\n sociais: any,\n nutricionistas: any,\n medicos: any,\n coaches: any,\n personaltrainers: any,\n orientacaofisica: any,\n}\n\nexport const PROFESSIONS = {\n psicologos: {\n label: 'Psicologia',\n target: 'psicologos',\n value: 1\n },\n juridicos: {\n label: 'Juridico',\n target: 'juridicos',\n value: 2\n },\n financeiros: {\n label: 'Financeiro',\n target: 'financeiros',\n value: 3\n },\n sociais: {\n label: 'Social',\n target: 'sociais',\n value: 4\n },\n nutricionistas: {\n label: 'Nutrição',\n target: 'nutricionistas',\n value: 5\n },\n medicos: {\n label: 'Medicina',\n target: 'medicos',\n value: 6\n },\n coaches: {\n label: 'Coach',\n target: 'coaches',\n value: 7\n },\n personaltrainers: {\n label: 'PersonalTraining',\n target: 'personaltrainers',\n value: 8\n },\n orientacaofisica: {\n label: 'Orientação Física',\n target: 'orientacaofisica',\n value: 9\n }\n} as IProfessions;\n\nexport interface IProfession {\n label: string,\n target: 'psicologos'| 'juridicos' | 'financeiros' | 'sociais' | 'nutricionistas' | 'medicos' | 'coaches' | 'orientacaofisica'\n value: number,\n}","export enum HTTP_STATUS{\n SUCCESS = 200,\n NOT_FOUND = 404,\n BAD_REQUEST = 400,\n INTERNAL_SERVER_ERROR = 500\n}","export enum LANGUAGE {\n PORTUGUESE = 1,\n ENGLISH = 2,\n SPANISH = 3,\n LIBRAS = 4\n}","export const STEPS = {\n\n 'Dados Pessoais': {\n path: ':profession/dados-pessoais',\n name: 'signup.personaldata',\n id: 1,\n active: false,\n finished: false,\n inProgress: false,\n meta: {\n title: 'Dados Pessoais',\n status: 10\n }\n },\n 'Endereço': {\n path: ':profession/endereco',\n name: 'signup.address',\n id: 2,\n active: false,\n finished: false,\n inProgress: false,\n meta: {\n title: 'Endereço',\n status: 20\n }\n },\n 'Dados Profissionais': {\n path: ':profession/dados-profissionais',\n name: 'signup.professionaldata',\n id: 3,\n active: false,\n finished: false,\n inProgress: false,\n meta: {\n title: 'Dados Profissionais',\n status: 30\n }\n },\n 'Experiência': {\n path: ':profession/experiencia',\n name: 'signup.experience',\n id: 4,\n active: false,\n finished: false,\n inProgress: false,\n meta: {\n title: 'Experiência',\n status: 40\n }\n },\n 'Disponibilidade': {\n path: ':profession/disponibilidade',\n name: 'signup.availability',\n id: 5,\n active: false,\n finished: false,\n inProgress: false,\n meta: {\n title: 'Disponibilidade',\n status: 50\n }\n }\n};\n\nexport interface IStep {\n path: string;\n name: string;\n id: number;\n finished: boolean;\n inProgress: boolean;\n meta: IMetaStep\n}\n\nexport interface IMetaStep{\n title: string;\n status: number\n}","import { IOption, Option } from '@/interfaces/field';\n// list of all brazilian states\n export const STATES = [\n new Option('AC', 'Acre'),\n new Option('AL', 'Alagoas'),\n new Option('AP', 'Amapá'),\n new Option('AM', 'Amazonas'),\n new Option('BA', 'Bahia'),\n new Option('CE', 'Ceará'),\n new Option('DF', 'Distrito Federal'),\n new Option('ES', 'Espírito Santo'),\n new Option('GO', 'Goiás'),\n new Option('MA', 'Maranhão'),\n new Option('MT', 'Mato Grosso'),\n new Option('MS', 'Mato Grosso do Sul'),\n new Option('MG', 'Minas Gerais'),\n new Option('PA', 'Pará'),\n new Option('PB', 'Paraíba'),\n new Option('PR', 'Paraná'),\n new Option('PE', 'Pernambuco'),\n new Option('PI', 'Piauí'),\n new Option('RJ', 'Rio de Janeiro'),\n new Option('RN', 'Rio Grande do Norte'),\n new Option('RS', 'Rio Grande do Sul'),\n new Option('RO', 'Rondônia'),\n new Option('RR', 'Roraima'),\n new Option('SC', 'Santa Catarina'),\n new Option('SP', 'São Paulo'),\n new Option('SE', 'Sergipe'),\n new Option('TO', 'Tocantins')\n ] as IOption[];","import { IOption, Option } from '@/interfaces/field';\n\nexport const YES_NO_OPTION = [\n new Option(true, 'Sim'),\n new Option(false, 'Não')\n] as IOption[];","export const PROFESSION_QUESTIONS = {\n ATUALMENTE_VOCE_E_PACIENTE_DE_TERAPIA_ANALISE: 1,\n COLOQUE_NA_ESCALA_O_NUMERO_QUE_VOCE_CONSIDERA_ADEQUADO_AO_SEU_CONHECIMENTO_DE_INTERNET: 2,\n COM_QUE_FREQUENCIA_VOCE_CHECA_SEU_E_MAIL: 3,\n COMO_VOCE_DESCOBRIU_A: 4,\n COMO_VOCE_DESCOBRIU_A_ORIENTEME: 5,\n EM_MEDIA_QUANTAS_HORAS_VOCE_ATENDE_POR_SEMANA: 6,\n EM_MEDIA_QUANTOS_PACIENTES_POR_SEMANA_VOCE_ATENDE: 7,\n INDIQUE_A_FAIXA_ETARIA_MEDIA_DOS_SEUS_PACIENTES_ATUAIS: 8,\n INDIQUE_O_CONTATO_DE_PELO_MENOS_UM_TERAPEUTA_QUE_POSSA_SERVIR_DE_REFERENCIA: 9,\n JA_ATENDEU_ONLINE_SE_SIM_POR_QUE_MEIOS: 10,\n MINHA_CONEXAO_COM_A_INTERNET_E: 11,\n POR_QUE_O_ATENDIMENTO_ONLINE_TE_INTERESSA: 12,\n POR_QUE_VOCE_QUER_ATENDER_PELA_PLATAFORMA: 13,\n POSSUI_ANTECEDENTES_CRIMINAIS: 14,\n QUAL_E_A_SUA_ABORDAGEM_TERAPEUTICA_INDIQUE_TODAS_AS_APLICAVEIS: 15,\n QUAL_IS__FAIXA_S__ETARIA_S__VOCE_TEM_INTERESSE_EM_ATENDER_ONLINE: 16,\n QUANTO_TEMPO_VOCE_PODERA_DISPOR_PARA_TRABALHAR_COM_A_PLATAFORMA_DIARIAMENTE: 17,\n QUANTOS_ANOS_DE_EXPERIENCIA_COM_ATENDIMENTO_CLINICO_VOCE_TEM: 18,\n QUE_NAVEGADOR_VOCE_USA: 19,\n QUE_SISTEMA_OPERACIONAL_DE_SMARTPHONE_VOCE_USA: 20,\n SELECIONE_ATE_10_TEMAS_PRINCIPAIS_EM_QUE_VOCE_POSSUI_EXPERIENCIA: 21,\n VOCE_DA_SUPERVISAO_CLINICA: 22,\n VOCE_EXERCE_ALGUMA_FUNCAO_COMO_TERAPEUTA: 23,\n VOCE_JA_FOI_SUJEITO_A_ACOES_DISCIPLINARES_ATUANDO_COMO_TERAPEUTA: 24,\n VOCE_PRETENDE_ATENDER_EM_QUAIS_IDIOMAS: 25,\n VOCE_TEM_UM_SUPERVISOR_CLINICO: 26\n} as Record;","\nexport default class Helpers {\n static onlyNumbers(value: string): string {\n if(typeof(value) === 'number')return value;\n if(!value) return value;\n return value.replace(/\\D/g, '');\n }\n static distinctString(value: string, index: number, self: string[]): boolean {\n return self.indexOf(value) === index;\n }\n static flatten(array: any[]): string[] {\n return [].concat(...array);\n }\n static toDate(date: string): string {\n return new Date(date).toLocaleDateString();\n }\n static toJsonDate(date: string): string {\n try{\n const DateParts = date.split('/');\n return new Date(`${DateParts[1]}/${DateParts[0]}/${DateParts[2]}`).toISOString();\n }\n catch(exc){\n console.log(exc);\n }\n return date;\n }\n static async getBase64(file: File): Promise {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.readAsDataURL(file);\n reader.onload = function () {\n const result = reader.result?.toString().split(',');\n resolve(result? result[1] : '');\n };\n reader.onerror = function (error) {\n reject(error);\n };\n });\n }\n}\n","import Helpers from '@/utils/helpers';\nimport { LANGUAGE, ONLINE_SERVICES } from '@/constants';\nimport { IOption } from '@/interfaces/field';\nexport interface PersonalDataPayload {\n uuid: string;\n name: string;\n cpfCnpj: string;\n dateOfBirth: string;\n gender: string;\n phoneNumber: string;\n professionalCouncilNumber: string;\n professionalCouncilState: string;\n referencePersonName: string;\n referencePersonPhoneNumber: string;\n referencePersonEmail: string;\n profession: number;\n language: string;\n additionalVolumeUsers: boolean;\n additionalIncome: boolean;\n convenienceServiceAnyWhereTime: boolean;\n easeReceivingPeriodicUsersReports: boolean;\n securityAutomatedPayment: boolean;\n securityHavingEncryptedConversations: boolean;\n others: boolean;\n hasCriminalRecords: boolean;\n howDidYouKnowPlataform: string;\n howIsYourInternetConnection: string;\n whatOperationSystemDoYouUse: string;\n similarityDifferenceOnLineService: string;\n whyDoYouWantToMeetOnThePlatform: string;\n internetSkillLevel: string;\n}\nexport const transformToPersonalData = function(data: any | undefined): PersonalDataPayload | null{\n if(!data) return null;\n \n if(data.onlineServices){\n ONLINE_SERVICES.map((x:IOption) => data[x.key] = false);\n for(const onlineService of data.onlineService) {\n data[ONLINE_SERVICES.filter((x:any) => x.value == onlineService)[0].key] = true;\n }\n delete data.onlineService;\n }\n delete data.personalData;\n delete data.initialData;\n const response = {\n ...data,\n dateOfBirth: Helpers.toJsonDate(data.dateOfBirth),\n referencePersonPhoneNumber: Helpers.onlyNumbers(data.referencePersonPhoneNumber),\n internetSkillLevel: Helpers.onlyNumbers(data.internetSkillLevel),\n hasCriminalRecords: Boolean(data.hasCriminalRecords),\n phoneNumber: Helpers.onlyNumbers(data.phoneNumber),\n convenienceServiceAnyWhereTime: Boolean(data.convenienceServiceAnyWhereTime),\n\n //hidden parameters\n language: LANGUAGE.PORTUGUESE.toString()\n } as PersonalDataPayload;\n return response;\n};","import {IField, IOptionType} from '../../interfaces/field';\nimport { PROFESSIONS } from '../enums/professions';\nconst allProfessions = [\n PROFESSIONS.psicologos.target,\n PROFESSIONS.nutricionistas.target,\n PROFESSIONS.orientacaofisica.target\n];\nexport const EXPERIENCE_FORM = [\n {\n targets: allProfessions,\n prop: 'role',\n title: 'Você exerce alguma função na sua área?',\n title__nutricionistas: 'Você exerce alguma função como nutricionista?',\n title__psicologos: 'Você exerce alguma função como terapeuta?',\n subtitle: 'Indique todas as aplicáveis',\n type: 'checkbox',\n options: {\n storeGetter: 'experienceAnswers',\n key: 'VOCE_EXERCE_ALGUMA_FUNCAO_COMO_TERAPEUTA'\n } as IOptionType,\n } as IField,\n {\n targets: allProfessions,\n prop: 'years',\n title: 'Quantos anos de experiência com atendimento clínico você tem?',\n subtitle: 'Selecione apenas uma opção',\n type: 'radio',\n options: {\n storeGetter: 'experienceAnswers',\n key: 'QUANTOS_ANOS_DE_EXPERIENCIA_COM_ATENDIMENTO_CLINICO_VOCE_TEM'\n } as IOptionType,\n } as IField,\n {\n targets: allProfessions,\n prop: 'online',\n title: 'Já atendeu online? Se sim, por que meios?',\n subtitle: 'Selecione apenas uma opção',\n type: 'radio',\n options: {\n storeGetter: 'experienceAnswers',\n key: 'JA_ATENDEU_ONLINE_SE_SIM_POR_QUE_MEIOS'\n } as IOptionType,\n } as IField,\n {\n targets: [PROFESSIONS.psicologos.target],\n prop: 'themes',\n title: 'Selecione os principais temas da área em que você possui experiência/conhecimento:',\n subtitle: 'Selecione no mínimo 6 temas',\n type: 'checkbox',\n height: 390,\n options: {\n storeGetter: 'experienceAnswers',\n key: 'SELECIONE_ATE_10_TEMAS_PRINCIPAIS_EM_QUE_VOCE_POSSUI_EXPERIENCIA'\n } as IOptionType,\n } as IField,\n {\n targets: [PROFESSIONS.nutricionistas.target],\n prop: 'themes',\n title: 'Selecione os principais temas da área em que você possui experiência/conhecimento:',\n subtitle: 'Selecione no mínimo 6 temas',\n type: 'checkbox',\n height: 390,\n options: {\n storeGetter: 'experienceAnswers',\n key: 'SELECIONE_ATE_10_TEMAS_PRINCIPAIS_EM_QUE_VOCE_POSSUI_EXPERIENCIA'\n } as IOptionType,\n } as IField,\n {\n targets: [PROFESSIONS.orientacaofisica.target],\n prop: 'themes',\n title: 'Selecione os principais temas da área em que você possui experiência/conhecimento:',\n subtitle: 'Selecione no mínimo 6 temas',\n type: 'checkbox',\n height: 390,\n minimum: 6,\n options: {\n storeGetter: 'experienceAnswers',\n key: 'SELECIONE_ATE_10_TEMAS_PRINCIPAIS_EM_QUE_VOCE_POSSUI_EXPERIENCIA'\n } as IOptionType,\n } as IField,\n {\n targets: allProfessions,\n prop: 'patientsWeekly',\n title: 'Em média, quantos pacientes por semana você atende?',\n type: 'radioButton',\n options: {\n storeGetter: 'experienceAnswers',\n key: 'EM_MEDIA_QUANTOS_PACIENTES_POR_SEMANA_VOCE_ATENDE'\n } as IOptionType,\n } as IField,\n {\n targets: allProfessions,\n prop: 'patientsAge',\n title: 'Indique a faixa etária média dos seus pacientes atuais:',\n subtitle: 'Selecione apenas uma opção',\n type: 'radio',\n options: {\n storeGetter: 'experienceAnswers',\n key: 'INDIQUE_A_FAIXA_ETARIA_MEDIA_DOS_SEUS_PACIENTES_ATUAIS'\n } as IOptionType,\n } as IField,\n {\n targets: [PROFESSIONS.psicologos.target],\n prop: 'haveSupervisor',\n title: 'Você tem um supervisor clínico?',\n type: 'radioButton',\n col: 12,\n options: {\n storeGetter: 'experienceAnswers',\n key: 'VOCE_TEM_UM_SUPERVISOR_CLINICO'\n } as IOptionType,\n } as IField,\n {\n targets: [PROFESSIONS.psicologos.target],\n prop: 'youAreSupervisor',\n title: 'Você dá supervisão clínica?',\n type: 'radioButton',\n col: 12,\n options: {\n storeGetter: 'experienceAnswers',\n key: 'VOCE_DA_SUPERVISAO_CLINICA'\n } as IOptionType,\n } as IField,\n ] as Array;","import { IField, IOptionType } from '@/interfaces/field';\nimport {PROFESSIONS} from '../../constants';\nconst allProfessions = [\n PROFESSIONS.psicologos.target,\n PROFESSIONS.nutricionistas.target,\n PROFESSIONS.orientacaofisica.target\n];\n\nexport const AVALIABILITY_FORM = [\n {\n targets: allProfessions,\n prop: 'availability',\n title: 'Quanto tempo você poderá dispor para trabalhar com a plataforma diariamente?',\n subtitle: 'Selecione apenas uma opção',\n type: 'radio',\n options: {\n storeGetter: 'availabilityAnswers',\n key: 'QUANTO_TEMPO_VOCE_PODERA_DISPOR_PARA_TRABALHAR_COM_A_PLATAFORMA_DIARIAMENTE'\n } as IOptionType\n },\n {\n targets: allProfessions,\n prop: 'emailCheckFrequency',\n title: 'Com que frequência você checa seu e-mail?',\n subtitle: 'Selecione apenas uma opção',\n type: 'radio',\n options: {\n storeGetter: 'availabilityAnswers',\n key: 'COM_QUE_FREQUENCIA_VOCE_CHECA_SEU_E_MAIL'\n } as IOptionType\n },\n {\n targets: allProfessions,\n prop: 'languages',\n title: 'Você pretende atender em quais idiomas?',\n subtitle: 'Indique todas as aplicáveis',\n type: 'checkbox',\n options: {\n storeGetter: 'availabilityAnswers',\n key: 'VOCE_PRETENDE_ATENDER_EM_QUAIS_IDIOMAS'\n } as IOptionType\n },\n {\n targets: allProfessions,\n prop: 'ageGroup',\n title: 'Quais faixas etárias você tem interesse em atender online?',\n subtitle: 'Indique todas as aplicáveis',\n type: 'checkbox',\n options: {\n storeGetter: 'availabilityAnswers',\n key: 'QUAL_IS__FAIXA_S__ETARIA_S__VOCE_TEM_INTERESSE_EM_ATENDER_ONLINE'\n } as IOptionType\n }\n ] as IField[];","import {IField} from '../../interfaces/field';\nimport {STATES, PROFESSIONS} from '../../constants';\nconst allProfessions = [\n PROFESSIONS.psicologos.target,\n PROFESSIONS.nutricionistas.target,\n PROFESSIONS.orientacaofisica.target\n];\nexport const ADDRESS_FORM = [\n {\n title: 'CEP',\n subtitle: 'Use o formato 00000-000',\n prop: 'zipCode',\n targets: allProfessions,\n type: 'input',\n col: 8,\n mask:'#####-###',\n maxlength:9\n } as IField,\n {\n title: 'Endereço',\n subtitle: 'Preenche seu endereço sem abreviações',\n prop: 'publicPlace',\n targets: allProfessions,\n type: 'input',\n col: 16,\n } as IField,\n {\n title: 'Número',\n subtitle: 'Número do imóvel',\n prop: 'number',\n targets: allProfessions,\n type: 'input',\n col: 9,\n } as IField,\n {\n title: 'Complemento',\n subtitle: 'Use esse campo para informações adicionais',\n prop: 'complement',\n targets: allProfessions,\n type: 'input',\n col: 15\n } as IField,\n\n {\n title: 'Bairro',\n subtitle: 'Informe seu bairro',\n prop: 'neighborhood',\n targets: allProfessions,\n type: 'input',\n col: 8\n } as IField,\n {\n title: 'Estado',\n prop: 'state',\n targets: allProfessions,\n type: 'select',\n col: 8,\n options: STATES\n }as IField,\n {\n title: 'Cidade',\n subtitle: 'Informe sua cidade',\n prop: 'city',\n targets: allProfessions,\n type: 'input',\n col: 8,\n }\n];","import {IField} from '../../interfaces/field';\nimport {STATES, PROFESSIONS} from '../../constants';\nconst allProfessions = [\n PROFESSIONS.psicologos.target,\n PROFESSIONS.nutricionistas.target,\n PROFESSIONS.orientacaofisica.target\n];\nexport const BASIC_FORM = [\n {\n title: 'Nome Completo',\n subtitle: 'Exemplo. Maria da Silva',\n prop: 'name',\n targets: allProfessions,\n type: 'input',\n } as IField,\n {\n title: 'E-mail',\n subtitle: 'Exemplo maria@gmail.com',\n prop: 'email',\n targets: allProfessions,\n col: 12,\n type: 'input',\n } as IField,\n {\n title: 'Telefone',\n subtitle: 'Lembre-se de indicar o DDD 11 987654321',\n prop: 'phoneNumber',\n mask: ['(##) ####-####', '(##) #####-####'],\n maxlength: 15,\n targets: allProfessions,\n col: 12,\n type: 'input',\n },\n {\n title: 'CPF/CNPJ',\n subtitle: 'Use apenas números',\n prop: 'cpfcnpj',\n mask: ['###.###.###-##', '##.###.###/####-##'],\n maxlength: 18,\n targets: allProfessions,\n col: 8,\n type: 'input',\n },\n {\n title: 'Número do CRN',\n subtitle: 'Use apenas números',\n prop: 'professionalCouncilNumber',\n targets: [PROFESSIONS.nutricionistas.target],\n col: 8,\n type: 'input',\n } as IField,\n {\n title: 'Número do CRP',\n subtitle: 'Use apenas números',\n prop: 'professionalCouncilNumber',\n targets: [PROFESSIONS.psicologos.target],\n col: 8,\n type: 'input',\n } as IField,\n {\n title: 'Número do CREF',\n subtitle: 'Use apenas números',\n prop: 'professionalCouncilNumber',\n targets: [PROFESSIONS.orientacaofisica.target],\n col: 8,\n type: 'input',\n } as IField,\n {\n title: 'UF',\n subtitle: 'Selecione um estado',\n prop: 'professionalCouncilState',\n targets: allProfessions,\n maxlength: 2,\n col: 6,\n type: 'select',\n options: STATES\n } as IField,\n];","import {IField, IOptionType} from '../../interfaces/field';\nimport {\n GENDERS, STATES, YES_NO_OPTION, ONLINE_SERVICES,\n INTERNET_SKILL\n } from '@/constants';\nconst targets =['nutricionistas', 'psicologos', 'orientacaofisica']; \nexport const PERSONAL_FORM = {\n personalForm: [\n {\n targets,\n prop: 'name',\n title: 'Nome completo',\n subtitle: 'Por favor, preencha seu nome completo sem abreviações',\n type: 'input',\n col: 15,\n } as IField,\n {\n targets,\n prop: 'cpfCnpj',\n title: 'CPF',\n subtitle: 'Use apenas números exemplo 11122233344',\n type: 'input',\n col: 9,\n mask: '###.###.###-##',\n maxlength: 14\n } as IField,\n {\n targets,\n prop: 'dateOfBirth',\n title: 'Data de nascimento',\n subtitle: 'Use o formato DD/MM/AAAA',\n type: 'input',\n col: 8,\n mask: '##/##/####',\n maxlength: 10\n } as IField,\n {\n targets,\n prop: 'gender',\n title: 'Gênero',\n type: 'select',\n col: 8,\n placeholder: 'Selecionar',\n options: GENDERS,\n removePadding: true\n } as IField,\n {\n targets,\n prop: 'phoneNumber',\n title: 'Telefone',\n subtitle: 'Ex. 11 987654321',\n type: 'input',\n col: 8,\n mask: ['(##) ####-####', '(##) #####-####']\n } as IField,\n {\n targets: ['psicologos'],\n prop: 'professionalCouncilNumber',\n title: 'Número do CRP',\n subtitle: 'Informe número e letras',\n type: 'input',\n col: 8,\n } as IField,\n {\n targets: ['nutricionistas'],\n prop: 'professionalCouncilNumber',\n title: 'Número do CRN',\n subtitle: 'Informe número e letras',\n type: 'input',\n col: 8,\n } as IField,\n {\n targets: ['orientacaofisica'],\n prop: 'professionalCouncilNumber',\n title: 'Número do CREF',\n subtitle: 'Informe número e letras',\n type: 'input',\n col: 8,\n } as IField,\n {\n targets: ['psicologos'],\n prop: 'professionalCouncilState',\n title: 'UF do CRP',\n type: 'select',\n col: 8,\n options: STATES,\n removePadding: true\n } as IField,\n {\n targets: ['nutricionistas'],\n prop: 'professionalCouncilState',\n title: 'UF do CRN',\n type: 'select',\n col: 8,\n options: STATES,\n removePadding: true\n } as IField,\n {\n targets,\n prop: 'hasCriminalRecords',\n title: 'Possui antecedentes criminais?',\n type: 'select',\n col: 8,\n options: YES_NO_OPTION,\n removePadding: true\n } as IField,\n ],\n feedbackForm: [\n {\n targets,\n prop: 'referencePersonName',\n title: 'Nome',\n type: 'input',\n col: 8,\n } as IField,\n {\n targets,\n prop: 'referencePersonPhoneNumber',\n title: 'Telefone',\n type: 'input',\n mask: ['(##) ####-####', '(##) #####-####'],\n maxlength: 15,\n col: 8,\n } as IField,\n {\n targets,\n prop: 'referencePersonEmail',\n title: 'E-mail',\n type: 'input',\n col: 8,\n } as IField,\n {\n targets,\n prop: 'onlineService',\n title: 'Por que o atendimento online te interessa?',\n subtitle: 'Indique todas as alternativas',\n type: 'checkbox',\n options: ONLINE_SERVICES,\n } as IField,\n {\n targets,\n prop: 'howDidYouKnowPlataform',\n title: 'Como você descobriu a orienteme?',\n type: 'select',\n col: 8,\n options: {\n storeGetter: 'personalDataAnswers',\n key: 'COMO_VOCE_DESCOBRIU_A_ORIENTEME'\n } as IOptionType,\n placeholder: 'Selecionar'\n } as IField,\n {\n targets,\n prop: 'howIsYourInternetConnection',\n title: 'Como é sua conexão de internet?',\n type: 'select',\n col: 8,\n options: {\n storeGetter: 'personalDataAnswers',\n key: 'MINHA_CONEXAO_COM_A_INTERNET_E'\n } as IOptionType,\n placeholder: 'Selecionar'\n } as IField,\n {\n targets,\n prop: 'whatOperationSystemDoYouUse',\n title: 'Qual sistema operacional você usa?',\n type: 'select',\n col: 8,\n options: {\n storeGetter: 'personalDataAnswers',\n key: 'QUE_SISTEMA_OPERACIONAL_DE_SMARTPHONE_VOCE_USA'\n } as IOptionType,\n placeholder: 'Selecionar'\n } as IField,\n {\n targets,\n prop: 'similarityDifferenceOnLineService',\n title: 'Na sua opinião, quais são as semelhanças e diferenças entre o atendimento presencial e o atendimento online?',\n type: 'textarea',\n col: 24,\n placeholder: 'Escreva aqui...'\n } as IField,\n {\n targets,\n prop: 'whyDoYouWantToMeetOnThePlatform',\n title: 'Por que você quer atender na orienteme?',\n type: 'textarea',\n col: 24,\n placeholder: 'Escreva aqui...'\n } as IField,\n {\n targets,\n prop: 'internetSkillLevel',\n title: 'De 1 a 5 o quanto você considera o sua habilidade na internet?',\n type: 'radioButton',\n options: INTERNET_SKILL,\n col: 24,\n } as IField,\n ]\n};","import {IField} from '../../interfaces/field';\nimport {\n YES_NO_OPTION, PROFESSIONS\n } from '@/constants';\n\n const allProfessions = [\n PROFESSIONS.psicologos.target,\n PROFESSIONS.nutricionistas.target,\n PROFESSIONS.orientacaofisica.target\n];\nexport const PROFESSIONAL_FORM = {\n graduationForm: [\n {\n targets: allProfessions,\n prop: 'courseId',\n title: 'Curso de graduação',\n subtitle: 'Qual sua formação',\n type: 'select',\n col: 8,\n options: 'courseListSelectOptions',\n removePadding: true\n } as IField,\n {\n targets: allProfessions,\n prop: 'institutionId',\n title: 'Instituição',\n type: 'select',\n col: 16,\n options: 'institutionsSelectOptions',\n removePadding: true\n } as IField,\n {\n targets: allProfessions,\n prop: 'graduateDate',\n title: 'Ano de conclusão da graduação',\n type: 'input',\n col: 8,\n mask: '##/##/####',\n maxlength: 10\n } as IField,\n {\n targets: allProfessions,\n prop: 'graduate',\n title: 'Titulação',\n subtitle: 'Indique a mais alta',\n type: 'select',\n col: 8,\n options: 'graduateListSelectOptions',\n removePadding: true\n } as IField,\n {\n targets: allProfessions,\n prop: 'graduation',\n title: 'Titulação Recebida',\n type: 'select',\n col: 8,\n options: 'graduationListSelectOptions',\n removePadding: true\n } as IField,\n {\n targets: allProfessions,\n prop: 'pictureGraduation',\n title: 'Foto diploma',\n subtitle: 'Garanta que a foto esteja legível',\n type: 'upload',\n col: 14,\n removePadding: true,\n limit: 1,\n } as IField\n ],\n occupationForm: [\n {\n targets: [PROFESSIONS.psicologos.target],\n prop: 'convenienceServiceAnyWhereTime',\n title: 'Você já foi sujeito a ações disciplinares atuando como terapeuta?',\n type: 'select',\n col: 14,\n options: YES_NO_OPTION,\n removePadding: false\n } as IField,\n {\n targets: [PROFESSIONS.nutricionistas.target],\n prop: 'hasEConcil',\n title: 'Possui o E-Nutricionista',\n title__psicologos: 'Possui o E-Psi',\n title__nutricionistas: 'Possui o E-Nutricionista',\n type: 'select',\n col: 10,\n options: YES_NO_OPTION,\n removePadding: false\n } as IField,\n {\n targets: allProfessions,\n prop: 'mostChallengingSituation',\n title: 'Como profissional, qual foi a situação mais desafiadora que você já enfrentou em um atendimento?',\n subtitle: 'Conte-nos um pouco sobre a situação e como a resolveu',\n placeholder: 'Escreva aqui...',\n type: 'textarea',\n col: 24,\n removePadding: true\n } as IField,\n {\n targets: [PROFESSIONS.psicologos.target, PROFESSIONS.orientacaofisica.target],\n prop: 'specialtys',\n title: 'Abordagem',\n title__psicologos: 'Qual é a sua abordagem terapêutica',\n subtitle: 'Indique todas as aplicáveis',\n type: 'checkbox',\n col: 24,\n options: 'specialtysSelectOptions'\n } as IField,\n ]\n};","export default {\n psicologos: 'CRP',\n nutricionistas: 'CRN',\n orientacaofisica: 'CREF',\n} as Record;\n","import { defineComponent } from 'vue';\nimport { mapActions, mapGetters, mapMutations } from 'vuex';\nimport {PROFESSIONS, IProfessions, IProfession, STEPS, IStep} from '@/constants';\nimport docTypes from '@/utils/docTypes';\n\nexport default defineComponent({\n created() {\n if (this.profession == null) {\n this.$router.replace('/');\n }\n },\n mounted() {\n window.scrollTo(0, 0);\n },\n data() {\n return {\n activeStep: 0,\n steps: STEPS\n };\n },\n computed: {\n ...mapGetters(['currentStep', 'isDebug']),\n profession(): IProfession {\n const professionIndex = this.$route.params.profession as keyof(IProfessions);\n return PROFESSIONS[professionIndex];\n },\n docType(): string {\n return docTypes[this.$route.params.profession as string];\n },\n },\n watch: {\n currentStep: {\n immediate: true,\n async handler (value: number) {\n this.setStepsVisible(true);\n if (value == null) {\n this.SET_STEP(STEPS['Dados Pessoais']);\n this.$router.replace({ name: 'signup.personaldata', query: this.$route.query });\n }\n }\n }\n },\n methods: {\n ...mapActions(['advanceStep', 'setStepsVisible']),\n ...mapMutations(['SET_STEP']),\n redirectStep(step: IStep){\n this.$route.meta.step = step;\n this.advanceStep(step);\n this.$router.replace({ name: step.name, query: this.$route.query});\n }\n }\n});\n","\nimport { defineComponent } from 'vue';\nimport { mapActions, mapGetters } from 'vuex';\nimport ArrowLeft from '@/assets/svg/icons/arrow-left.svg';\nimport Steps from '@/components/orienteme/Steps.vue';\nimport signup from '@/mixins/signup';\n\nexport default defineComponent({\n components: { Steps },\n mixins: [signup],\n computed: {\n ...mapGetters(['isDebug', 'currentStep', 'stepVisible']),\n arrowLeft(): string {\n return ArrowLeft;\n },\n wesiteUrl(): string {\n return process.env.VUE_APP_WEBSITE_URL as string;\n },\n version(): string {\n return `Versão: ${process.env.VUE_APP_VERSION}`;\n },\n currentYear(): number {\n return new Date().getFullYear();\n },\n },\n methods: {\n ...mapActions(['restore']),\n goTo(url: string): void {\n window.location.href = url;\n },\n },\n async mounted() {\n await this.restore({ uuid: this.$route.query.uuid });\n this.$router.replace({ name: this.currentStep.name, query: this.$route.query });\n },\n});\n","import { render } from \"./Default.vue?vue&type=template&id=3815f1ea&ts=true\"\nimport script from \"./Default.vue?vue&type=script&lang=ts\"\nexport * from \"./Default.vue?vue&type=script&lang=ts\"\n\nimport \"./Default.vue?vue&type=style&index=0&id=3815f1ea&lang=scss\"\n\nimport exportComponent from \"/app/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createBlock as _createBlock, createTextVNode as _createTextVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-37a8efa4\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h1\", null, \"Envio de documentos\", -1))\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"b\", null, \"Foto profissional\", -1))\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"subtitle-upload\" }, \" Sua foto deve ter fundo branco \", -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"b\", null, \"Foto de um documento de identificação\", -1))\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"b\", null, \"Indique o contato de uma pessoa que possa servir de referência\", -1))\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_el_form_item = _resolveComponent(\"el-form-item\")!\n const _component_CustomField = _resolveComponent(\"CustomField\")!\n const _component_el_row = _resolveComponent(\"el-row\")!\n const _component_UploadButton = _resolveComponent(\"UploadButton\")!\n const _component_el_col = _resolveComponent(\"el-col\")!\n const _component_el_divider = _resolveComponent(\"el-divider\")!\n const _component_el_button = _resolveComponent(\"el-button\")!\n const _component_el_form = _resolveComponent(\"el-form\")!\n\n return (_openBlock(), _createBlock(_component_el_form, {\n class: \"pr-registration__content\",\n ref: \"form\",\n model: _ctx.form,\n rules: _ctx.formRules\n }, {\n default: _withCtx(() => [\n _createVNode(_component_el_form_item, null, {\n default: _withCtx(() => [\n _createElementVNode(\"h1\", null, \"Cadastro de \" + _toDisplayString(_ctx.profession.label), 1)\n ]),\n _: 1\n }),\n _createVNode(_component_el_row, null, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.filterPersonalForm, (field, idx) => {\n return (_openBlock(), _createBlock(_component_CustomField, {\n key: idx,\n field: field,\n fieldValue: _ctx.form[field.prop],\n targetRendering: _ctx.profession.target,\n onChange: _ctx.handleFieldChange\n }, null, 8, [\"field\", \"fieldValue\", \"targetRendering\", \"onChange\"]))\n }), 128))\n ]),\n _: 1\n }),\n _createVNode(_component_el_form_item, null, {\n default: _withCtx(() => [\n _hoisted_1\n ]),\n _: 1\n }),\n _createVNode(_component_el_form_item, null, {\n default: _withCtx(() => [\n _createVNode(_component_el_row, null, {\n default: _withCtx(() => [\n _createVNode(_component_el_col, {\n xs: 24,\n sm: 12\n }, {\n default: _withCtx(() => [\n _createVNode(_component_el_form_item, { prop: \"pictureProfessional\" }, {\n default: _withCtx(() => [\n _hoisted_2,\n _hoisted_3,\n _createVNode(_component_UploadButton, {\n limit: 1,\n model: _ctx.form.pictureProfessional,\n onUpload: _cache[0] || (_cache[0] = (v) => {_ctx.handleUploadPicture(v, 'pictureProfessional')}),\n onRemove: _cache[1] || (_cache[1] = (v) => {_ctx.handleRemovePicture('pictureProfessional')})\n }, null, 8, [\"model\"])\n ]),\n _: 1\n })\n ]),\n _: 1\n }),\n _createVNode(_component_el_col, {\n xs: 24,\n sm: 12\n }, {\n default: _withCtx(() => [\n _createVNode(_component_el_form_item, { prop: \"pictureIdentification\" }, {\n default: _withCtx(() => [\n _hoisted_4,\n _createVNode(_component_UploadButton, {\n limit: 1,\n model: _ctx.form.pictureIdentification,\n onUpload: _cache[2] || (_cache[2] = (v) => {_ctx.handleUploadPicture(v, 'pictureIdentification')}),\n onRemove: _cache[3] || (_cache[3] = (v) => {_ctx.handleRemovePicture('pictureIdentification')})\n }, null, 8, [\"model\"])\n ]),\n _: 1\n })\n ]),\n _: 1\n })\n ]),\n _: 1\n })\n ]),\n _: 1\n }),\n _hoisted_5,\n _hoisted_6,\n _createVNode(_component_el_row, null, {\n default: _withCtx(() => [\n _createVNode(_component_el_col, { span: 24 }, {\n default: _withCtx(() => [\n _hoisted_7\n ]),\n _: 1\n })\n ]),\n _: 1\n }),\n _createVNode(_component_el_row, null, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.filterFeedbackForm, (field, idx) => {\n return (_openBlock(), _createBlock(_component_CustomField, {\n key: idx,\n field: field,\n fieldValue: _ctx.form[field.prop],\n targetRendering: _ctx.profession.target,\n onChange: _ctx.handleFieldChange\n }, null, 8, [\"field\", \"fieldValue\", \"targetRendering\", \"onChange\"]))\n }), 128))\n ]),\n _: 1\n }),\n _createVNode(_component_el_form_item, { style: {\"margin-top\":\"50px\"} }, {\n default: _withCtx(() => [\n _createVNode(_component_el_divider)\n ]),\n _: 1\n }),\n _createVNode(_component_el_form_item, { style: {\"text-align\":\"right\"} }, {\n default: _withCtx(() => [\n _createVNode(_component_el_button, {\n type: \"primary\",\n loading: _ctx.loading || _ctx.lockState,\n onClick: _cache[4] || (_cache[4] = () => _ctx.submitForm('form'))\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" CONFIRMAR \")\n ]),\n _: 1\n }, 8, [\"loading\"])\n ]),\n _: 1\n })\n ]),\n _: 1\n }, 8, [\"model\", \"rules\"]))\n}","import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-e1230ec0\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { id: \"image-upload\" }, null, -1))\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"b\", { class: \"orienteme-button-upload-title\" }, \"Clique ou arraste aqui\", -1))\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", { class: \"orienteme-button-upload-subtitle\" }, \" Selecione 1 arquivo 5mb \", -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"el-upload__tip\" }, null, -1))\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_el_col = _resolveComponent(\"el-col\")!\n const _component_el_row = _resolveComponent(\"el-row\")!\n const _component_el_upload = _resolveComponent(\"el-upload\")!\n\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass([\"orienteme-upload-base\", { 'orienteme-upload-base-full' : _ctx.hasFile }])\n }, [\n _createVNode(_component_el_upload, {\n class: \"upload-button\",\n drag: \"\",\n action: \"\",\n \"on-change\": _ctx.handleChange,\n \"on-remove\": _ctx.handleRemove,\n limit: _ctx.limit,\n \"file-list\": _ctx.model,\n \"auto-upload\": false\n }, {\n tip: _withCtx(() => [\n _hoisted_4\n ]),\n default: _withCtx(() => [\n _createVNode(_component_el_row, { justify: \"start\" }, {\n default: _withCtx(() => [\n _createVNode(_component_el_col, { span: 6 }, {\n default: _withCtx(() => [\n _hoisted_1\n ]),\n _: 1\n }),\n _createVNode(_component_el_col, { span: 16 }, {\n default: _withCtx(() => [\n _createVNode(_component_el_row, { justify: \"start\" }, {\n default: _withCtx(() => [\n _hoisted_2,\n _hoisted_3\n ]),\n _: 1\n })\n ]),\n _: 1\n })\n ]),\n _: 1\n })\n ]),\n _: 1\n }, 8, [\"on-change\", \"on-remove\", \"limit\", \"file-list\"])\n ], 2))\n}","\nimport { defineComponent } from 'vue';\n\nexport default defineComponent({\n emits: ['upload', 'remove'],\n props: {\n limit: {\n type: Number,\n required: true\n },\n model: {\n required: true\n }\n },\n computed: {\n hasFile({model}: any){\n return model?.length > 0;\n }\n },\n methods: {\n handleChange: function(file: any) {\n this.$emit('upload', file);\n },\n handleRemove: function(){\n this.$emit('remove');\n }\n }\n});\n","import { render } from \"./UploadButton.vue?vue&type=template&id=e1230ec0&scoped=true&ts=true\"\nimport script from \"./UploadButton.vue?vue&type=script&lang=ts\"\nexport * from \"./UploadButton.vue?vue&type=script&lang=ts\"\n\nimport \"./UploadButton.vue?vue&type=style&index=0&id=e1230ec0&scoped=true&lang=scss\"\n\nimport exportComponent from \"/app/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-e1230ec0\"]])\n\nexport default __exports__","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, normalizeClass as _normalizeClass, renderList as _renderList, Fragment as _Fragment, createElementBlock as _createElementBlock, normalizeStyle as _normalizeStyle, withKeys as _withKeys, resolveDirective as _resolveDirective, withDirectives as _withDirectives } from \"vue\"\n\nconst _hoisted_1 = { class: \"label\" }\nconst _hoisted_2 = { class: \"label\" }\nconst _hoisted_3 = { class: \"subtitle-upload\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_el_col = _resolveComponent(\"el-col\")!\n const _component_el_row = _resolveComponent(\"el-row\")!\n const _component_el_form_item = _resolveComponent(\"el-form-item\")!\n const _component_el_radio = _resolveComponent(\"el-radio\")!\n const _component_el_radio_group = _resolveComponent(\"el-radio-group\")!\n const _component_el_checkbox = _resolveComponent(\"el-checkbox\")!\n const _component_el_checkbox_group = _resolveComponent(\"el-checkbox-group\")!\n const _component_el_option = _resolveComponent(\"el-option\")!\n const _component_el_select = _resolveComponent(\"el-select\")!\n const _component_el_input = _resolveComponent(\"el-input\")!\n const _component_UploadButton = _resolveComponent(\"UploadButton\")!\n const _directive_maska = _resolveDirective(\"maska\")!\n\n return (_openBlock(), _createBlock(_component_el_col, {\n class: \"custom-fields\",\n span: _ctx.field.col ?? 24,\n xs: 24\n }, {\n default: _withCtx(() => [\n (_ctx.field.type !== 'upload')\n ? (_openBlock(), _createBlock(_component_el_form_item, {\n key: 0,\n class: _normalizeClass({'non-input' : !_ctx.field.removePadding && _ctx.field.type != 'input'})\n }, {\n default: _withCtx(() => [\n _createVNode(_component_el_row, null, {\n default: _withCtx(() => [\n _createVNode(_component_el_col, { span: 24 }, {\n default: _withCtx(() => [\n _createElementVNode(\"b\", null, _toDisplayString(_ctx.field[`title__${_ctx.targetRendering}`] ?? _ctx.field.title), 1)\n ]),\n _: 1\n }),\n (!['input', 'select'].includes(_ctx.field.type))\n ? (_openBlock(), _createBlock(_component_el_col, {\n key: 0,\n span: 24,\n class: \"label\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.field.subtitle), 1)\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n })\n ]),\n _: 1\n }, 8, [\"class\"]))\n : _createCommentVNode(\"\", true),\n (_ctx.field.type.includes('radio'))\n ? (_openBlock(), _createBlock(_component_el_form_item, {\n key: 1,\n class: _normalizeClass({'scroll' : _ctx.hasToScroll}),\n prop: _ctx.field.prop\n }, {\n default: _withCtx(() => [\n _createVNode(_component_el_radio_group, {\n onChange: _ctx.handleChange,\n \"model-value\": _ctx.fieldValue,\n class: _normalizeClass({ 'radio-button-group': _ctx.field.type === 'radioButton' })\n }, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.externalOptions, (option, idx) => {\n return (_openBlock(), _createBlock(_component_el_radio, {\n class: _normalizeClass({ 'radio-button-item': _ctx.field.type === 'radioButton' }),\n key: `${_ctx.field.prop}-${idx}`,\n label: option.value\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(option.value), 1)\n ]),\n _: 2\n }, 1032, [\"class\", \"label\"]))\n }), 128))\n ]),\n _: 1\n }, 8, [\"onChange\", \"model-value\", \"class\"])\n ]),\n _: 1\n }, 8, [\"class\", \"prop\"]))\n : _createCommentVNode(\"\", true),\n (_ctx.field.type === 'checkbox')\n ? (_openBlock(), _createBlock(_component_el_form_item, {\n key: 2,\n class: _normalizeClass({'scroll' : _ctx.hasToScroll}),\n style: _normalizeStyle({'height': _ctx.field.height + 'px' ?? 'auto'}),\n prop: _ctx.field.prop\n }, {\n default: _withCtx(() => [\n _createVNode(_component_el_checkbox_group, {\n \"model-value\": _ctx.fieldValue,\n onChange: _ctx.handleChange\n }, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.externalOptions, (option) => {\n return (_openBlock(), _createBlock(_component_el_checkbox, {\n key: option.key,\n label: option.value\n }, null, 8, [\"label\"]))\n }), 128))\n ]),\n _: 1\n }, 8, [\"model-value\", \"onChange\"])\n ]),\n _: 1\n }, 8, [\"class\", \"style\", \"prop\"]))\n : _createCommentVNode(\"\", true),\n (_ctx.field.type === 'select')\n ? (_openBlock(), _createBlock(_component_el_form_item, {\n key: 3,\n class: _normalizeClass({'scroll' : _ctx.hasToScroll}),\n prop: _ctx.field.prop\n }, {\n default: _withCtx(() => [\n _createVNode(_component_el_select, {\n filterable: \"\",\n \"model-value\": _ctx.fieldValue,\n onChange: _ctx.handleChange,\n \"no-match-text\": \"Nennhum resultado\",\n placeholder: _ctx.field.placeholder ?? 'Selecionar'\n }, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.externalOptions, (option) => {\n return (_openBlock(), _createBlock(_component_el_option, {\n key: option.key,\n label: option.value,\n value: option.key\n }, null, 8, [\"label\", \"value\"]))\n }), 128))\n ]),\n _: 1\n }, 8, [\"model-value\", \"onChange\", \"placeholder\"]),\n _createElementVNode(\"div\", _hoisted_1, _toDisplayString(_ctx.field.subtitle), 1)\n ]),\n _: 1\n }, 8, [\"class\", \"prop\"]))\n : _createCommentVNode(\"\", true),\n (_ctx.field.type === 'textarea')\n ? (_openBlock(), _createBlock(_component_el_form_item, {\n key: 4,\n prop: _ctx.field.prop\n }, {\n default: _withCtx(() => [\n _createVNode(_component_el_input, {\n onInput: _ctx.handleChange,\n \"model-value\": _ctx.fieldValue,\n type: \"textarea\",\n placeholder: _ctx.field.placeholder\n }, null, 8, [\"onInput\", \"model-value\", \"placeholder\"])\n ]),\n _: 1\n }, 8, [\"prop\"]))\n : _createCommentVNode(\"\", true),\n (_ctx.field.type === 'input')\n ? (_openBlock(), _createBlock(_component_el_form_item, {\n key: 5,\n prop: _ctx.field.prop\n }, {\n default: _withCtx(() => [\n _withDirectives(_createVNode(_component_el_input, {\n onInput: _ctx.handleChange,\n \"model-value\": _ctx.fieldValue,\n type: \"text\",\n maxlength: _ctx.field.maxlength,\n placeholder: _ctx.field.placeholder,\n onKeyup: _withKeys(_ctx.searchAddress, [\"enter\"]),\n onBlur: _ctx.searchAddress\n }, null, 8, [\"onInput\", \"model-value\", \"maxlength\", \"placeholder\", \"onKeyup\", \"onBlur\"]), [\n [_directive_maska, _ctx.field.mask]\n ]),\n _createElementVNode(\"div\", _hoisted_2, _toDisplayString(_ctx.field.subtitle), 1)\n ]),\n _: 1\n }, 8, [\"prop\"]))\n : _createCommentVNode(\"\", true),\n (_ctx.field.type === 'upload')\n ? (_openBlock(), _createBlock(_component_el_form_item, {\n key: 6,\n prop: _ctx.field.prop\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"b\", null, _toDisplayString(_ctx.field.title), 1),\n _createElementVNode(\"span\", _hoisted_3, _toDisplayString(_ctx.field.subtitle), 1),\n _createVNode(_component_UploadButton, {\n limit: _ctx.field.limit,\n model: _ctx.fieldValue,\n onUpload: _ctx.handleChange,\n onRemove: _ctx.pictureRemove\n }, null, 8, [\"limit\", \"model\", \"onUpload\", \"onRemove\"])\n ]),\n _: 1\n }, 8, [\"prop\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }, 8, [\"span\"]))\n}","import axios, { AxiosRequestConfig, AxiosResponse } from 'axios';\nimport router from '@/router';\nimport store from '@/store';\n\n/**\n * Creates and exports an Axios instance\n */\nconst baseURL = process.env.VUE_APP_API_ENTITY_PROFESSIONAL as string;\n\nconst http = axios.create({ baseURL });\n\n/**\n * Add token to header request\n */\nhttp.interceptors.request.use((req: AxiosRequestConfig): AxiosRequestConfig => {\n const Authorization = `Bearer ${store.state.token}`;\n req.headers = { ...req.headers, Authorization };\n return req;\n});\n\n/**\n * Log requests for development\n */\nif(process.env.VUE_APP_ENV === 'development'){\n http.interceptors.request.use((req: AxiosRequestConfig): AxiosRequestConfig => {\n console.log('Intercept Request ' + req.url);\n console.log(req);\n return req;\n });\n http.interceptors.response.use((req: AxiosResponse): AxiosRequestConfig => {\n console.log('Intercept Response ' + req.config.url);\n console.log(req);\n return req;\n });\n}\n\n/**\n * Monitor 401 to send to login page\n */\n http.interceptors.response.use(({ data }) => data, async (err) => {\n let errorCode = 500;\n let wrappedError;\n\n if (err.response) {\n errorCode = err.response.status;\n wrappedError = err.response.data;\n }\n\n // try to refresh token\n if (errorCode === 401) {\n return router.replace({ name: 'auth.signin' });\n }\n\n throw wrappedError || err;\n});\n\nexport default http;\n","import { createStore } from 'vuex';\nimport http from '@/utils/http';\nimport Helpers from '@/utils/helpers';\nimport { transformToPersonalData, AddressPayload, STEPS, IStep, PROFESSION_QUESTIONS } from '@/constants';\nimport { IPayloadAnswers, IPayloadUserAnswers, IRequestPostAnswers } from '@/interfaces/answers';\nimport { IOption } from '@/interfaces/field';\nimport { IRequestProfessionalData } from '@/constants/contracts/professionalData';\n\n\nexport default createStore({\n state: {\n step: 1,\n steps: STEPS,\n stepVisible: true,\n user: {\n initialData: {},\n personalData: {},\n professionalData: {},\n address: {},\n experience: [] as any[],\n availability: [] as any[],\n statusCode: null\n },\n token: '',\n schema: {},\n institutionsList: [],\n courseList: [],\n graduateList: [],\n graduationList: [],\n specialtys: [],\n personalDataAnswers: {\n QUE_SISTEMA_OPERACIONAL_DE_SMARTPHONE_VOCE_USA: [],\n COMO_VOCE_DESCOBRIU_A_ORIENTEME: [],\n MINHA_CONEXAO_COM_A_INTERNET_E: []\n },\n experienceAnswers: {\n QUAL_E_A_SUA_ABORDAGEM_TERAPEUTICA_INDIQUE_TODAS_AS_APLICAVEIS: [],\n QUANTOS_ANOS_DE_EXPERIENCIA_COM_ATENDIMENTO_CLINICO_VOCE_TEM: [],\n JA_ATENDEU_ONLINE_SE_SIM_POR_QUE_MEIOS: [],\n SELECIONE_ATE_10_TEMAS_PRINCIPAIS_EM_QUE_VOCE_POSSUI_EXPERIENCIA: [],\n EM_MEDIA_QUANTOS_PACIENTES_POR_SEMANA_VOCE_ATENDE: [],\n INDIQUE_A_FAIXA_ETARIA_MEDIA_DOS_SEUS_PACIENTES_ATUAIS: [],\n VOCE_TEM_UM_SUPERVISOR_CLINICO: [],\n VOCE_DA_SUPERVISAO_CLINICA: [],\n VOCE_EXERCE_ALGUMA_FUNCAO_COMO_TERAPEUTA: []\n } as any,\n availabilityAnswers: {\n QUANTO_TEMPO_VOCE_PODERA_DISPOR_PARA_TRABALHAR_COM_A_PLATAFORMA_DIARIAMENTE: [],\n COM_QUE_FREQUENCIA_VOCE_CHECA_SEU_E_MAIL: [],\n VOCE_PRETENDE_ATENDER_EM_QUAIS_IDIOMAS: [],\n QUAL_IS__FAIXA_S__ETARIA_S__VOCE_TEM_INTERESSE_EM_ATENDER_ONLINE: []\n } as any\n } as any,\n\n getters: {\n currentStep(state): IStep {\n return state.step;\n },\n institutionsSelectOptions(state): any[] {\n return transformIntoSelect(state.institutionsList);\n },\n courseListSelectOptions(state): any[] {\n return transformIntoSelect(state.courseList);\n },\n graduateListSelectOptions(state): any[] {\n return transformIntoSelect(state.graduateList);\n },\n specialtysSelectOptions(state): any[] {\n return transformIntoSelect(state.specialtys);\n },\n graduationListSelectOptions(state): any[] {\n return transformIntoSelect(state.graduationList);\n },\n answersListSelectOptions: (state) => (key: string) => {\n const answers = state.experienceAnswers[key];\n return transformIntoSelect(answers, 'id', 'resposta');\n },\n answers: (state) => (storeGetterKey: string, objectKey: string) => {\n if (typeof storeGetterKey !== 'string') throw new Error('Invalid type of parameters');\n if (typeof objectKey !== 'string') throw new Error('Invalid type of parameters');\n\n const answers = state[storeGetterKey][objectKey];\n return transformIntoSelect(answers, 'id', 'resposta');\n },\n answersByValue: (state) => (storeObject: string, storeGetterKey: string, value: string): string => {\n if (typeof value !== 'string') throw new Error('Invalid type of parameters');\n\n const answers = transformIntoSelect(state[storeObject][storeGetterKey], 'id', 'resposta');\n return answers.filter((x: any) => x.value === value)[0].key;\n },\n answersByKey: (state) => (storeObject: string, storeGetterKey: string, itemId: any[]): string[] => {\n if (typeof itemId === 'string') throw new Error('Invalid type of parameters');\n let answers = state[storeObject][storeGetterKey];\n answers = transformIntoSelect(answers, 'id', 'resposta');\n return itemId.map((key: any) => {\n return answers.filter((x: any) => x.key === key)[0].value;\n });\n },\n isDebug(): boolean {\n return process.env.VUE_APP_ENV === 'development';\n },\n isNewUser(state): boolean {\n return state.user.status <= 10;\n },\n cleanAddress: (state): any => {\n const DUMMY_DATA = 'dummy data';\n const address = state.user.address;\n Object.entries(address).forEach(([key, value]: any) => {\n if (typeof (key) !== 'string') return;\n if (value == DUMMY_DATA) {\n address[key] = '';\n }\n if (key === 'zipCode' && value === 0) {\n address[key] = '';\n }\n if (key === 'state' && value === 'na') {\n address[key] = '';\n }\n });\n return address;\n },\n registerSteps: (state): any => {\n for(const step of Object.values(state.steps) as IStep[]){\n if(state.user.status > step.meta.status){\n step.finished = true;\n } else if(state.user.status === step.meta.status){\n step.inProgress = true;\n }\n }\n return state.steps;\n },\n stepVisible: (state): boolean => {\n return state.stepVisible;\n }\n },\n\n actions: {\n\n // POST \n async postBasicData(context, payload): Promise {\n try {\n const data = JSON.parse(JSON.stringify(payload));\n data.cpfcnpj = Helpers.onlyNumbers(data.cpfcnpj);\n data.phoneNumber = Helpers.onlyNumbers(data.phoneNumber);\n\n await http.post('/createinitialdata', data);\n context.commit('SET_USER', data);\n }\n catch (err: any) {\n const error = err.erros && err.erros.length > 0 ? err.erros.join('. ') : err;\n throw new Error(error);\n }\n },\n async postPersonalData({ commit }, payload): Promise {\n payload.onlineServices = payload.onlineService;\n const data = transformToPersonalData(payload);\n const response = await http.post('/personaldata', data);\n if (handleHttpResponse(response)) {\n commit('SET_PERSONAL_DATA', data);\n }\n },\n async postAddress({ commit }, payload): Promise {\n try {\n const data = JSON.parse(JSON.stringify(payload)) as AddressPayload;\n data.zipCode = Helpers.onlyNumbers(data.zipCode);\n const response = await http.post(`/address/${data.uuid}`, data);\n if (response) {\n commit('SET_ADDRESS', data);\n }\n }\n catch (err: any) {\n const error = err.erros && err.erros.length > 0 ? err.erros.join('. ') : err;\n throw new Error(error);\n }\n },\n async postAvailability({ commit }, payload: IRequestPostAnswers): Promise {\n const data = JSON.parse(JSON.stringify(payload)) as IRequestPostAnswers;\n const response = await http.post(`/availability/${data.uuid}`, data);\n if (handleHttpResponse(response)) {\n commit('SET_POSTED_ANSWERS', data);\n }\n },\n async postExperience({ commit }, payload: IRequestPostAnswers): Promise {\n const data = JSON.parse(JSON.stringify(payload)) as IRequestPostAnswers;\n const response = await http.post(`/experience/${data.uuid}`, data);\n if (handleHttpResponse(response)) {\n commit('SET_POSTED_ANSWERS', data);\n }\n },\n async postProfessionalData({ commit }, payload: IRequestProfessionalData): Promise {\n const response = await http.post('/professionaldata', payload);\n if (handleHttpResponse(response)) {\n commit('SET_PROFESSIONAL_DATA', response.data);\n }\n },\n // PICTURES\n async sendProfilePicture(context, content): Promise {\n await handleUploadImageApiPicture(`/profilePicture/${content.uuid}`, content.picture);\n },\n async sendIdentificationDocumentPicture(context, content): Promise {\n await handleUploadImageApiPicture(`/identificationdocument/${content.uuid}`, content.picture);\n },\n async sendGraduationPicture(context, content): Promise {\n await handleUploadImageApiPicture(`/graduationpictureforregister/${content.uuid}`, content.picture);\n },\n async sendCouncilDocument(context, content): Promise {\n await handleUploadImageApiPicture(`/councilndocument/${content.uuid}`, content.picture);\n },\n\n // FETCH\n async fetchPersonalData({ dispatch, commit }, uuid): Promise {\n const INITIAL_DATA = 0;\n\n // fetch API data\n const promiseInitialData = http.get(`/initialdata/${uuid}`);\n const promisePersonalInfo = http.get(`/personaldata/${uuid}`);\n const promises = await Promise.all([promiseInitialData, promisePersonalInfo]);\n\n // commit inital data into state\n const responseInitialData = promises[INITIAL_DATA] as any;\n commit('SET_INITIAL_DATA', responseInitialData.data);\n\n await dispatch('hasPersonalData', promises);\n \n },\n async fetchGlobalAnswers({dispatch}, {arrayAnswers, professionType, uuid, storeQuestions, storeUserAnswers}): Promise{\n const promises=[];\n for(const key in arrayAnswers) {\n const questionType=PROFESSION_QUESTIONS[key];\n if(questionType==null) {\n throw Error(`question type invalid for key: ${key}`);\n }\n promises.push(dispatch('fetchAnswers', {\n professionType,\n answerKey: key,\n questionType: PROFESSION_QUESTIONS[key],\n storeObject: storeQuestions\n } as IPayloadAnswers));\n promises.push(dispatch('fetchUserAnswers',{\n uuid: uuid,\n professionType,\n answerKey: key,\n questionType: PROFESSION_QUESTIONS[key],\n storeObject: storeUserAnswers\n } as IPayloadUserAnswers));\n }\n await Promise.all(promises);\n },\n async fetchAddress({ commit }, uuid): Promise {\n const response = await http.get(`/address/${uuid}`);\n if (handleHttpResponse(response)) {\n commit('SET_ADDRESS', response.data);\n }\n },\n async fetchInstituitions({ commit }, professionType: number): Promise {\n const response = await http.get(`/institutionlist/${professionType}`);\n if (handleHttpResponse(response)) {\n commit('SET_INSTITUITIONS', response.data);\n }\n },\n async fetchCourseList({ commit }, professionType: number): Promise {\n const response = await http.get(`/courselist/${professionType}`);\n if (handleHttpResponse(response)) {\n commit('SET_COURSE_LIST', response.data);\n }\n },\n async fetchGraduateList({ commit }, professionType: number): Promise {\n const response = await http.get(`/graduatelist/${professionType}`);\n if (handleHttpResponse(response)) {\n commit('SET_GRADUATE_LIST', response.data);\n }\n },\n async fetchGraduationList({ commit }, professionType: number): Promise {\n const response = await http.get(`/graduationlist/${professionType}`);\n if (handleHttpResponse(response)) {\n commit('SET_GRADUATION_LIST', response.data);\n }\n },\n async fetchSpecialtyList({ commit }, professionType: number): Promise {\n const response = await http.get(`/specialtylist/${professionType}`);\n if (handleHttpResponse(response)) {\n commit('SET_SPECIALTY_LIST', response.data);\n }\n },\n async fetchAnswers({ commit }, { professionType, questionType, answerKey, storeObject }: IPayloadAnswers): Promise {\n const LANGUAGE_PT_BR = 1;\n const response = await http.get(`/answers/${professionType}/${questionType}/${LANGUAGE_PT_BR}`);\n if (handleHttpResponse(response)) {\n commit('SET_OPTIONS_ANSWERS', {\n storeObject: storeObject,\n key: answerKey,\n answers: response.data\n });\n }\n },\n async fetchUserAnswers({ commit }, { uuid, professionType, questionType, storeObject }: IPayloadUserAnswers): Promise {\n const LANGUAGE_PT_BR = 1;\n const response = await http.get(`/answers/${uuid}/${professionType}/${questionType}/${LANGUAGE_PT_BR}`);\n if (handleHttpResponse(response)) {\n commit('SET_USER_ANSWERS', {\n storeObject,\n payload: {\n questionType,\n answersId: response.data\n }\n });\n }\n },\n async fetchProfessionalData({ commit }, uuid): Promise {\n const response = await http.get(`/professionaldata/${uuid}`);\n if (handleHttpResponse(response)) {\n commit('SET_PROFESSIONAL_DATA', response.data);\n }\n },\n async fetchRegisterStatus({ commit }, uuid): Promise {\n const response = await http.get(`/status/${uuid}`) as any;\n if (handleHttpResponse(response)) {\n commit('SET_USER_STATUS', response.data.status);\n }\n },\n async fetch({ commit }, uuid): Promise {\n const response = await http.get(`/status/${uuid}`) as any;\n if (handleHttpResponse(response)) {\n commit('SET_USER_STATUS', response.data.status);\n }\n },\n // OTHERS\n goToStep({ commit }, payload): void {\n commit('SET_STEP', payload);\n },\n async hasPersonalData({ commit }, payload): Promise {\n const PERSONAL_INFORMATION = 1;\n //check is personal information already finished\n const responsePersonalInfo = payload[PERSONAL_INFORMATION] as any;\n const hasFinishedPersonalData =\n responsePersonalInfo.data.dateOfBirth != null\n && responsePersonalInfo.data.whyDoYouWantToMeetOnThePlatform != null\n && responsePersonalInfo.data.cpfCnpj != null\n && !this.getters.isNewUser;\n\n //advances user into address part\n if (hasFinishedPersonalData) {\n commit('SET_PERSONAL_DATA', responsePersonalInfo.data);\n }\n },\n async isFormFinished({ dispatch, state }: any, uuid: string): Promise {\n if(!uuid) return false;\n try {\n await Promise.all([\n await dispatch('fetchPersonalData', uuid),\n await dispatch('fetchAddress', uuid),\n await dispatch('fetchProfessionalData', uuid),\n await dispatch('fetchRegisterStatus', uuid),\n ]);\n const user = state.user;\n return user.address != null &&\n user.address.city != null &&\n user.availability != null &&\n user.availability.length > 0 &&\n user.personalData != null &&\n user.personalData.name != null &&\n user.experience != null &&\n user.experience.length > 0 &&\n user.professionalData != null &&\n user.professionalData.institutions != null &&\n user.professionalData.institutions.length > 0;\n }\n catch (error) {\n return false;\n }\n },\n async restore({ dispatch, commit, state }: any, { uuid }: any): Promise {\n if(!uuid) return;\n await dispatch('fetchRegisterStatus', uuid);\n const {user} = state;\n let actualStep = null;\n for(const s of Object.values(STEPS)){\n const step = s as any;\n if(user.status === step.meta.status){\n actualStep = step;\n break;\n }\n }\n console.log('actual step: '+ actualStep);\n if (actualStep) {\n commit('SET_STEP', actualStep);\n }\n },\n advanceStep({commit}:any, step: IStep): void {\n commit('SET_USER_STATUS', step.meta.status);\n commit('SET_STEP', step);\n },\n setStepsVisible({commit}: any, status: boolean): void {\n commit('SET_STEP_VISIBILITY', status);\n },\n refreshStateApp({commit}: any): void{\n commit('REFRESH_STATE_APP');\n }\n },\n\n mutations: {\n SET_USER(state, user) {\n state.user = { ...state.user, ...user };\n },\n SET_PERSONAL_DATA(state, data) {\n state.user.personalData = data;\n },\n SET_ADDRESS(state, data) {\n state.user.address = data;\n },\n SET_STEP(state, step: IStep) {\n state.step = step;\n },\n SET_INITIAL_DATA(state, initialData) {\n state.user.initialData = { ...state.user, ...initialData };\n },\n SET_INSTITUITIONS(state, institutions) {\n state.institutionsList = institutions;\n },\n SET_COURSE_LIST(state, courseList) {\n state.courseList = courseList;\n },\n SET_GRADUATE_LIST(state, list) {\n state.graduateList = list;\n },\n SET_SPECIALTY_LIST(state, list) {\n state.specialtys = list;\n },\n SET_GRADUATION_LIST(state, list) {\n state.graduationList = list;\n },\n SET_OPTIONS_ANSWERS(state, { storeObject, key, answers }) {\n state[storeObject][key] = answers;\n },\n SET_POSTED_ANSWERS(state, payload) {\n state.user.experience.push(payload);\n },\n SET_USER_ANSWERS(state, { storeObject, payload }) {\n if(Array.isArray(state.user[storeObject])){\n state.user[storeObject].push(payload);\n }else{\n if(!state.user[storeObject]['userAnswers']){\n state.user[storeObject]['userAnswers'] = [];\n }\n state.user[storeObject]['userAnswers'].push(payload);\n }\n },\n SET_PROFESSIONAL_DATA(state, data) {\n state.user.professionalData = data;\n },\n SET_USER_STATUS(state, status) {\n state.user.status = status;\n },\n SET_STEP_VISIBILITY(state, status){\n state.stepVisible = status;\n },\n REFRESH_STATE_APP(state){\n state.personalDataAnswers = {\n SELECIONE_ATE_10_TEMAS_PRINCIPAIS_EM_QUE_VOCE_POSSUI_EXPERIENCIA: [],\n QUE_SISTEMA_OPERACIONAL_DE_SMARTPHONE_VOCE_USA: [],\n COMO_VOCE_DESCOBRIU_A_ORIENTEME: [],\n MINHA_CONEXAO_COM_A_INTERNET_E: []\n };\n state.experienceAnswers = {\n QUAL_E_A_SUA_ABORDAGEM_TERAPEUTICA_INDIQUE_TODAS_AS_APLICAVEIS: [],\n QUANTOS_ANOS_DE_EXPERIENCIA_COM_ATENDIMENTO_CLINICO_VOCE_TEM: [],\n JA_ATENDEU_ONLINE_SE_SIM_POR_QUE_MEIOS: [],\n SELECIONE_ATE_10_TEMAS_PRINCIPAIS_EM_QUE_VOCE_POSSUI_EXPERIENCIA: [],\n EM_MEDIA_QUANTOS_PACIENTES_POR_SEMANA_VOCE_ATENDE: [],\n INDIQUE_A_FAIXA_ETARIA_MEDIA_DOS_SEUS_PACIENTES_ATUAIS: [],\n VOCE_TEM_UM_SUPERVISOR_CLINICO: [],\n VOCE_DA_SUPERVISAO_CLINICA: [],\n VOCE_EXERCE_ALGUMA_FUNCAO_COMO_TERAPEUTA: []\n };\n state.availabilityAnswers = {\n QUANTO_TEMPO_VOCE_PODERA_DISPOR_PARA_TRABALHAR_COM_A_PLATAFORMA_DIARIAMENTE: [],\n COM_QUE_FREQUENCIA_VOCE_CHECA_SEU_E_MAIL: [],\n VOCE_PRETENDE_ATENDER_EM_QUAIS_IDIOMAS: [],\n QUAL_IS__FAIXA_S__ETARIA_S__VOCE_TEM_INTERESSE_EM_ATENDER_ONLINE: []\n };\n state.user.experience = [];\n state.user.availability = [];\n }\n },\n modules: {}\n});\n\nconst transformIntoSelect = function (\n result = [],\n keyId = 'id',\n keyValue = 'nome'): IOption[] {\n return result.map((x: any) => {\n return {\n key: x[keyId],\n value: x[keyValue]\n } as IOption;\n });\n};\n\nconst handleHttpResponse = (httpResponse: any): boolean => {\n if (httpResponse.isSuccess) { return true; }\n return false;\n};\n\nconst handleUploadImageApiPicture = (url: string, picture: any): Promise | undefined => {\n if (!picture) return;\n const formData = new FormData();\n if(Array.isArray(picture)){\n for(let i = 0; i < picture.length; i++){\n formData.append('file', picture[i].raw);\n }\n }else{\n formData.append('file', picture.raw);\n }\n return http.post(url, formData, {\n headers: { 'Content-Type': 'multipart/form-data' }\n });\n};","\nimport {\n defineComponent\n} from 'vue';\nimport store from '@/store';\nimport { IOption } from '@/interfaces/field';\nimport UploadButton from '@/components/orienteme/UploadButton.vue';\n\nexport default defineComponent({\n emits: ['change', 'pictureRemove', 'searchZipCode'],\n name: 'custom-field',\n components: { UploadButton },\n store,\n props: {\n field: {\n type: Object,\n required: true\n },\n fieldValue: {\n required: true\n },\n targetRendering: {\n type: String,\n required: true\n }\n },\n computed:{\n externalOptions: function(): IOption[]{\n const options = this.field.options;\n if(typeof(options) === 'string'){\n return store.getters[options];\n }\n if(!options?.key){\n return options?.storeGetter ? options?.storeGetter : options;\n }\n if(options?.key){\n const {storeGetter, key} = options;\n return store.getters.answers(storeGetter, key);\n }\n return options;\n },\n hasToScroll: function(){\n return this.externalOptions.length > 20;\n }\n },\n methods: {\n handleChange: function (e: any) {\n this.$emit('change', {\n e,\n field: this.field\n });\n },\n searchAddress() {\n if (this.field.prop === 'zipCode') {\n this.$emit('searchZipCode', {\n e: this.fieldValue,\n field: this.field\n });\n }\n },\n handlePictureRemove: function (e: any) {\n this.$emit('pictureRemove', {\n e,\n field: this.field\n });\n }\n },\n});\n","import { render } from \"./CustomField.vue?vue&type=template&id=16634a70&ts=true\"\nimport script from \"./CustomField.vue?vue&type=script&lang=ts\"\nexport * from \"./CustomField.vue?vue&type=script&lang=ts\"\n\nimport \"./CustomField.vue?vue&type=style&index=0&id=16634a70&lang=scss\"\n\nimport exportComponent from \"/app/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","export default class Rules {\n static required(): Record {\n return {\n required: true,\n message: 'Campo obrigatório',\n trigger: 'blur',\n };\n }\n\n static email(): Record {\n const error = (message: string) => message;\n const re = /^[a-z0-9._]+@[a-z0-9]+\\.[a-z]/i;\n\n return {\n validator: (rule: unknown, value: string, callback: typeof error) => {\n if (!re.test(value)){\n return callback('Digite um e-mail válido');\n }\n\n return true;\n },\n trigger: 'blur',\n };\n }\n\n static date(): Record {\n const error = (message: string) => message;\n return {\n validator: (rule: unknown, value: string, callback: typeof error) => {\n const DateParts = value.split('/');\n\n const isValidDate = Date.parse(`${DateParts[1]}/${DateParts[0]}/${DateParts[2]}`);\n\n if (isNaN(isValidDate)) {\n return callback('Digite uma data válida');\n }\n\n return true;\n },\n trigger: 'blur',\n };\n }\n\n static password(): Record {\n return {\n min: 8,\n message: 'Mínimo 8 caracteres',\n trigger: 'blur',\n };\n }\n\n static minimum(min: number): Record {\n const error = (message: string) => message;\n return {\n validator: (rule: unknown, value: any[], callback: typeof error) => {\n\n if (!value || value.length < min) {\n return callback(`Selecione no mínimo ${min} opção(ões)`);\n }\n\n return true;\n },\n trigger: 'blur',\n };\n }\n}\n","import { defineComponent } from 'vue';\nimport { ElNotification } from 'element-plus';\n\nexport default defineComponent({\n name: 'notification',\n methods: {\n notifySuccess: function (message: string) {\n ElNotification({\n title: 'Sucesso',\n message: message,\n duration: 4500,\n type: 'success'\n });\n },\n notify: function (err: any) {\n console.log(err);\n if (err.message === '[object Object]') {\n err.message = 'Erro inesperado, favor tentar novamente!';\n }\n if (err.erros?.length > 0) {\n for (let i = 0; i < err.erros.length; i++) {\n setTimeout(() => {\n ElNotification({\n title: 'Erro',\n message: err.erros[i],\n duration: 0,\n type: 'error'\n });\n }, 300);\n }\n } else {\n ElNotification({\n title: 'Erro',\n message: err.message,\n duration: 0,\n type: 'error'\n });\n }\n\n },\n notifyError: function (err: string, duration: number) {\n console.log(err);\n ElNotification({\n title: 'Erro',\n message: err,\n duration: duration,\n type: 'error'\n });\n },\n warn: function (err: string) {\n ElNotification({\n title: 'Aviso',\n message: err,\n duration: 3000,\n type: 'warning'\n });\n },\n }\n});","import { defineComponent } from 'vue';\n\nexport default defineComponent({\n data(){\n\t\treturn {\n\t\t\tform: {\n\n } as any\n };\n },\n methods: {\n\t\thandleUploadPicture(picture: any, key: string): void {\n if(!this.form[key]) this.form[key] = [];\n this.form[key].push(picture);\n\t\t},\n\t\thandleRemovePicture(key: string): void {\n this.form[key].pop();\n\t\t},\n }\n});","import { PROFESSION_QUESTIONS } from '@/constants';\nimport { IAnswer, IRequestPostAnswers } from '@/interfaces/answers';\nimport { IField, IOptionType } from '@/interfaces/field';\nimport Helpers from '@/utils/helpers';\nimport { defineComponent } from 'vue';\nimport store from '@/store';\nimport { mapGetters } from 'vuex';\n\nconst flatten = Helpers.flatten;\nconst distinct = Helpers.distinctString;\n\nexport default defineComponent({\n name: 'answersFormSupport',\n computed: {\n ...mapGetters(['answersByValue', 'answersByKey']),\n },\n methods: {\n // Replace the IDs for the label in dropdowns\n async renderUserAnswers(\n storeAnswers: any,\n formTemplate: any,\n vueFormData: any,\n storeObjectName: string) {\n formTemplate.forEach((field: IField) => {\n if (typeof (field.options) !== 'object') return;\n const option = field.options as IOptionType;\n if (!option.key) return;\n const questionId = PROFESSION_QUESTIONS[option?.key];\n let answers = null;\n if(Array.isArray(storeAnswers)){\n answers = storeAnswers.filter((y: any) => y.questionType === questionId)\n .map(({ answersId }: any) => answersId.map((z: any) => z.id));\n }else{\n answers = storeAnswers.userAnswers.filter((y: any) => y.questionType === questionId)\n .map(({ answersId }: any) => answersId.map((z: any) => z.id));\n }\n answers = flatten(answers).filter(distinct);\n const answerLabels = this.answersByKey(storeObjectName, option?.key, answers) as string[];\n if(field.type === 'select'){\n vueFormData[field.prop] = answers[0];\n }else if(field.type === 'checkbox'){\n vueFormData[field.prop] = answerLabels;\n }\n else{\n vueFormData[field.prop] = answerLabels[0];\n }\n });\n },\n buildRequest(\n uuid: string,\n jsonForm: IField[],\n professionTarget: string,\n form: Record,\n storeObject: string\n ): IRequestPostAnswers {\n const payload = {\n uuid: uuid,\n answers: []\n } as IRequestPostAnswers;\n for (let prop of jsonForm) {\n prop = prop as any;\n if (prop.targets.includes(professionTarget) &&\n typeof (prop.options) === 'object') {\n const option = prop.options as IOptionType;\n const isOptionApiType = option.storeGetter != null && option.key != null;\n if (isOptionApiType) {\n if (option.key == null) continue;\n\n const questionType = PROFESSION_QUESTIONS[option.key];\n let userAnswers = form[prop.prop];\n\n userAnswers = typeof (userAnswers) === 'string' ? [userAnswers] : userAnswers;\n\n for (const userAnswer of userAnswers) {\n const answerId = store.getters.answersByValue(storeObject, option?.key, userAnswer);\n payload.answers.push({ questionType, answerId } as IAnswer);\n }\n }\n }\n }\n return payload;\n }\n }\n});","\nimport { defineComponent } from 'vue';\nimport { mapActions, mapGetters } from 'vuex';\nimport UploadButton from '@/components/orienteme/UploadButton.vue';\nimport CustomField from '@/components/orienteme/CustomField.vue';\nimport Rules from '@/utils/rules';\nimport signup from '@/mixins/signup';\nimport notification from '@/mixins/notification';\nimport UploadImage from '@/mixins/upload-image';\nimport store from '@/store';\nimport { PERSONAL_FORM, ONLINE_SERVICES, INTERNET_SKILL, STEPS } from '@/constants';\nimport answers from '@/mixins/answers';\n\nexport default defineComponent({\n components: { UploadButton, CustomField },\n mixins: [signup, notification, UploadImage, answers],\n store,\n data() {\n return {\n loading: false,\n lockState: false,\n\n form: {\n onlineService: [],\n internetSkillLevel: null,\n pictureProfessional: [],\n pictureIdentification: [],\n } as any,\n PERSONAL_FORM,\n };\n },\n computed: {\n ...mapGetters(['isDebug', 'isNewUser']),\n formRules() {\n return {\n name: [Rules.required()],\n cpfCnpj: [Rules.required()],\n dateOfBirth: [Rules.required(), Rules.date()],\n gender: [Rules.required()],\n phoneNumber: [Rules.required()],\n professionalCouncilNumber: [Rules.required()],\n professionalCouncilState: [Rules.required()],\n hasCriminalRecords: [Rules.required()],\n howDidYouKnowPlataform: [Rules.required()],\n howIsYourInternetConnection: [Rules.required()],\n whatOperationSystemDoYouUse: [Rules.required()],\n internetSkillLevel: [Rules.required(), Rules.minimum(1)],\n similarityDifferenceOnLineService: [Rules.required()],\n whyDoYouWantToMeetOnThePlatform: [Rules.required()],\n pictureIdentification: [Rules.required()],\n pictureProfessional: [Rules.required()],\n };\n },\n uuid() {\n return this.$route.query.uuid;\n },\n filterPersonalForm() {\n return PERSONAL_FORM.personalForm.filter((el: any) => {\n const targets = el.targets as string[];\n return targets.includes(this.profession.target);\n });\n },\n filterFeedbackForm() {\n return PERSONAL_FORM.feedbackForm.filter((el: any) => {\n const targets = el.targets as string[];\n return targets.includes(this.profession.target);\n });\n },\n },\n methods: {\n ...mapActions(['postPersonalData',\n 'sendProfilePicture',\n 'sendIdentificationDocumentPicture',\n 'fetchPersonalData',\n 'fetchGlobalAnswers']),\n\n async submitForm(formName: string): Promise {\n if(this.lockState) return;\n this.lockState = true;\n const refs = this.$refs[formName] as Record;\n\n refs.validate(async (valid: boolean) => {\n if (valid) {\n this.form.profession = this.profession.value;\n this.form.uuid = this.$route.query.uuid;\n try{\n const requestBody = JSON.parse(JSON.stringify(this.form));\n await this.postPersonalData(requestBody);\n let sendProfilePicture = null, sendIdentificationDocumentPicture = null;\n if(!this.form.pictureProfessional[0].sync){\n sendProfilePicture = this.sendProfilePicture({\n picture: this.form.pictureProfessional,\n uuid: this.uuid\n });\n }\n if(!this.form.pictureIdentification[0].sync){\n sendIdentificationDocumentPicture = this.sendIdentificationDocumentPicture({\n picture: this.form.pictureIdentification,\n uuid: this.uuid\n });\n }\n await Promise.all([sendProfilePicture, sendIdentificationDocumentPicture]);\n this.notifySuccess('Dados pessoais salvo com sucesso!');\n this.redirectStep(STEPS.Endereço);\n }\n catch(err: any){\n this.notify(err);\n }\n }else{\n this.warn('Favor preencher todos os campos obrigatórios');\n }\n this.lockState = false;\n });\n },\n handleFieldChange(event: any): void {\n this.form[event.field.prop] = event.e;\n },\n builder(rawData: any) {\n const form = {...rawData} as any;\n return {\n build(){\n // como você conhece a plataforma\n this.clearZero('howDidYouKnowPlataform');\n\n // como é sua conexão com internet\n this.clearZero('howIsYourInternetConnection');\n\n // qual sistema operacional usa\n this.clearZero('whatOperationSystemDoYouUse');\n\n return form;\n },\n dateOfBirth(){\n if(rawData.dateOfBirth){\n const date = new Date(rawData.dateOfBirth);\n form.dateOfBirth = `${date.getDate()}/${date.getMonth() + 1}/${date.getFullYear()}`;\n }\n return this;\n },\n gender(){\n if(!rawData.gender || rawData.gender === 0){\n form.gender = null;\n }else{\n form.gender = rawData.gender.toString();\n }\n return this;\n },\n onlineService(){\n form.onlineService = [];\n for(let option of ONLINE_SERVICES){\n if(rawData[option.key])\n form.onlineService.push(option.value);\n }\n return this;\n },\n internetSkillLevel(){\n if(rawData.internetSkillLevel > 0)\n form.internetSkillLevel = INTERNET_SKILL[rawData.internetSkillLevel - 1].value;\n return this;\n },\n clearZero(field: string): void {\n if(form[field] === 0)\n form[field] = null;\n else\n form[field] = form[field].toString();\n },\n pictureProfessional(){\n if(rawData.profilePictureUuid){\n form.pictureProfessional = [{\n name: rawData.profilePictureName,\n uid: rawData.profilePictureUuid,\n sync: true,\n raw: {\n type: rawData.profilePictureType,\n uid: rawData.profilePictureUuid\n }\n }];\n }\n return this;\n },\n pictureIdentification(){\n if(rawData.identificationDocumentUuid){\n form.pictureIdentification = [{\n name: rawData.identificationDocumentName,\n uid: rawData.identificationDocumentUuid,\n sync: true,\n raw: {\n type: rawData.identificationDocumentType,\n uid: rawData.identificationDocumentUuid\n }\n }];\n }\n return this;\n }\n };\n },\n },\n mounted: async function() {\n this.loading = true;\n try{\n const professionType = this.profession.value;\n await this.fetchPersonalData(this.uuid);\n await this.fetchGlobalAnswers(\n {\n arrayAnswers: store.state.personalDataAnswers,\n professionType,\n uuid: this.$route.query.uuid,\n storeQuestions: 'personalDataAnswers',\n storeUserAnswers: 'personalData'\n });\n if(!this.isNewUser){\n\n this.form = this.builder({\n ...store.state.user.personalData,\n ...store.state.user.initialData\n })\n .dateOfBirth()\n .gender()\n .onlineService()\n .internetSkillLevel()\n .pictureProfessional()\n .pictureIdentification()\n .build();\n this.renderUserAnswers(store.state.user.personalData,\n PERSONAL_FORM.feedbackForm,\n this.form,\n 'personalDataAnswers');\n }else{\n this.form = {\n ...this.form,\n ...store.state.user.personalData,\n ...store.state.user.initialData\n };\n // clear dummy data\n this.form.dateOfBirth = null;\n this.form.gender = null;\n this.form.howDidYouKnowPlataform = null;\n this.form.howIsYourInternetConnection = null;\n this.form.whatOperationSystemDoYouUse = null;\n this.form.whyDoYouWantToMeetOnThePlatform = null;\n this.form.hasCriminalRecords = null;\n }\n }\n catch(err: any){\n console.log(err);\n this.notifyError('Algo deu errado, favor tentar novamente', 0);\n }\n finally{\n this.loading = false;\n }\n }\n});\n","import { render } from \"./PersonalData.vue?vue&type=template&id=37a8efa4&scoped=true&ts=true\"\nimport script from \"./PersonalData.vue?vue&type=script&lang=ts\"\nexport * from \"./PersonalData.vue?vue&type=script&lang=ts\"\n\nimport \"./PersonalData.vue?vue&type=style&index=0&id=37a8efa4&scoped=true&lang=css\"\n\nimport exportComponent from \"/app/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-37a8efa4\"]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_Form = _resolveComponent(\"Form\")!\n\n return (_openBlock(), _createBlock(_component_Form, {\n form: _ctx.form,\n fields: _ctx.filterFieldsByProfession,\n title: `Cadastro de ${_ctx.profession.label}`,\n formRules: _ctx.formRules,\n loading: _ctx.loading,\n targetRendering: _ctx.profession.target,\n onChange: _ctx.handleFieldChange,\n onSubmit: _ctx.submitForm\n }, null, 8, [\"form\", \"fields\", \"title\", \"formRules\", \"loading\", \"targetRendering\", \"onChange\", \"onSubmit\"]))\n}","import { renderSlot as _renderSlot, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createBlock as _createBlock, createTextVNode as _createTextVNode } from \"vue\"\n\nconst _hoisted_1 = { style: {\"margin-top\":\"50px\"} }\nconst _hoisted_2 = { style: {\"text-align\":\"right\"} }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_el_form_item = _resolveComponent(\"el-form-item\")!\n const _component_CustomField = _resolveComponent(\"CustomField\")!\n const _component_el_row = _resolveComponent(\"el-row\")!\n const _component_el_divider = _resolveComponent(\"el-divider\")!\n const _component_el_button = _resolveComponent(\"el-button\")!\n const _component_el_form = _resolveComponent(\"el-form\")!\n\n return (_openBlock(), _createBlock(_component_el_form, {\n class: \"pr-registration__content custom-form\",\n ref: \"cform\",\n model: _ctx.form,\n rules: _ctx.formRules\n }, {\n default: _withCtx(() => [\n _createVNode(_component_el_form_item, null, {\n default: _withCtx(() => [\n _renderSlot(_ctx.$slots, \"header\", {}, () => [\n _createElementVNode(\"h1\", null, _toDisplayString(_ctx.title), 1)\n ])\n ]),\n _: 3\n }),\n _createVNode(_component_el_row, null, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.fields, (field, idx) => {\n return (_openBlock(), _createBlock(_component_CustomField, {\n key: idx,\n field: field,\n fieldValue: _ctx.form[field.prop],\n targetRendering: _ctx.targetRendering,\n onChange: _ctx.handleFieldChange,\n onSearchZipCode: _ctx.handleSearchZipCode\n }, null, 8, [\"field\", \"fieldValue\", \"targetRendering\", \"onChange\", \"onSearchZipCode\"]))\n }), 128))\n ]),\n _: 1\n }),\n _createElementVNode(\"div\", _hoisted_1, [\n _createVNode(_component_el_divider)\n ]),\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(_component_el_button, {\n type: \"primary\",\n loading: _ctx.loading,\n onClick: _cache[0] || (_cache[0] = (e) => _ctx.handleFormSubmission(e))\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" CONFIRMAR \")\n ]),\n _: 1\n }, 8, [\"loading\"])\n ])\n ]),\n _: 3\n }, 8, [\"model\", \"rules\"]))\n}","\nimport {\n defineComponent,\n} from 'vue';\nimport CustomField from '@/components/orienteme/CustomField.vue';\nimport {IFieldEvent} from '@/interfaces/field';\nimport { ElNotification } from 'element-plus';\n\nexport default defineComponent({\n name: 'custom-field',\n emits: ['change', 'submit', 'searchZipCode'],\n components: {\n CustomField\n },\n props: {\n title: {\n type: String,\n required: true\n },\n fields: {\n type: Object,\n required: true\n },\n form: {\n required: true\n } as any,\n formRules: {} as any,\n loading: {\n type: Boolean\n } as any,\n targetRendering: {\n type: String,\n required: true\n }\n },\n methods: {\n handleFieldChange(event: IFieldEvent): void {\n this.$emit('change', event);\n },\n handleFormSubmission(): void {\n const refs = this.$refs['cform'] as Record < string,any > ;\n refs.validate((valid: boolean) => {\n if (valid) {\n this.$emit('submit', 'form');\n }else{\n ElNotification({\n title: 'Aviso',\n message: 'Favor preencher todos os campos',\n duration: 3000,\n type: 'warning'\n });\n }\n });\n },\n handleSearchZipCode(event: IFieldEvent): void {\n this.$emit('searchZipCode', event);\n }\n },\n computed: {}\n});\n","import { render } from \"./CustomForm.vue?vue&type=template&id=75f11196&ts=true\"\nimport script from \"./CustomForm.vue?vue&type=script&lang=ts\"\nexport * from \"./CustomForm.vue?vue&type=script&lang=ts\"\n\nimport \"./CustomForm.vue?vue&type=style&index=0&id=75f11196&lang=css\"\n\nimport exportComponent from \"/app/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\nimport {\n defineComponent\n} from 'vue';\nimport {\n mapActions\n} from 'vuex';\nimport {\n ElNotification\n} from 'element-plus';\nimport Form from '@/components/orienteme/CustomForm.vue';\nimport Rules from '@/utils/rules';\nimport RulesI from '@/interfaces/Rules';\nimport signup from '@/mixins/signup';\nimport { BASIC_FORM } from '@/constants';\n\nexport default defineComponent({\n mixins: [signup],\n components: {\n Form\n },\n data() {\n return {\n loading: false,\n lockState: false,\n form: {\n name: '',\n cpfcnpj: '',\n email: '',\n phoneNumber: '',\n professionalCouncilNumber: '',\n professionalCouncilState: '',\n profession: 0,\n language: '1',\n uuidReference: null,\n } as any,\n };\n },\n computed: {\n formRules(): Record> {\n return {\n name: [\n Rules.required(),\n ],\n email: [\n Rules.required(),\n Rules.email()\n ],\n phoneNumber: [\n Rules.required(),\n ],\n cpfcnpj: [\n Rules.required(),\n ],\n professionalCouncilNumber: [\n Rules.required(),\n ],\n professionalCouncilState: [\n Rules.required()\n ],\n };\n },\n filterFieldsByProfession() {\n return BASIC_FORM.filter((el: any) => {\n const targets = el.targets as string[];\n return targets.includes(this.profession.target);\n });\n }\n },\n methods: {\n ...mapActions(['postBasicData', 'setStepsVisible']),\n handleFieldChange(event: any): void {\n this.form[event.field.prop] = event.e;\n },\n async submitForm(): Promise {\n try {\n // if has request going on\n // if(this.lockState) return;\n\n this.lockState = true;\n this.loading = true;\n this.form.profession = this.profession.value;\n this.form.uuidReference = this.$route.query.uuidReference;\n await this.postBasicData(this.form);\n this.$router.push({\n name: 'signup.thanks'\n });\n } catch (err: any) {\n ElNotification({\n title: 'Atenção',\n message: err.message,\n type: 'error',\n });\n } finally {\n this.loading = false;\n this.lockState = false;\n }\n },\n },\n mounted() {\n this.setStepsVisible(false);\n }\n});\n","import { render } from \"./BasicData.vue?vue&type=template&id=669054a8&scoped=true&ts=true\"\nimport script from \"./BasicData.vue?vue&type=script&lang=ts\"\nexport * from \"./BasicData.vue?vue&type=script&lang=ts\"\n\nimport \"./BasicData.vue?vue&type=style&index=0&id=669054a8&lang=scss&scoped=true\"\n\nimport exportComponent from \"/app/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-669054a8\"]])\n\nexport default __exports__","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, resolveComponent as _resolveComponent, createVNode as _createVNode, withCtx as _withCtx, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-2a74faf1\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"pr-registration__content basic-content\" }\nconst _hoisted_2 = { key: 0 }\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, \"Estamos muito felizes com seu interesse em atender na orienteme!\", -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_5 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, [\n /*#__PURE__*/_createTextVNode(\" Caso não encontre esse email, procure no Spam ou na sua lixeira.\"),\n /*#__PURE__*/_createElementVNode(\"br\"),\n /*#__PURE__*/_createTextVNode(\" Se mesmo assim não encontrar entre em contato pelo email \"),\n /*#__PURE__*/_createElementVNode(\"a\", { href: \"mailto:suporte@orienteme.com.br\" }, \"suporte@orienteme.com.br\")\n], -1))\nconst _hoisted_6 = { key: 1 }\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", null, \" Ficamos realmente felizes com sua inscrição. Em breve entraremos em contato com informações sobre os próximos passos. \", -1))\nconst _hoisted_8 = { style: {\"text-align\":\"right\"} }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_el_divider = _resolveComponent(\"el-divider\")!\n const _component_el_button = _resolveComponent(\"el-button\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"h1\", null, \"Obrigado \" + _toDisplayString(_ctx.name), 1),\n (_ctx.firstThankYou)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_2, [\n _hoisted_3,\n _createElementVNode(\"p\", null, [\n _createTextVNode(\" Seu cadastro já foi enviado para nosso time de \" + _toDisplayString(_ctx.segment) + \".\", 1),\n _hoisted_4,\n _createTextVNode(\" Você receberá um email com os próximos passos e um link para enviar suas informações profissionais e sua experiência. \")\n ]),\n _hoisted_5\n ]))\n : _createCommentVNode(\"\", true),\n (!_ctx.firstThankYou)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_6, [\n _hoisted_7,\n _createElementVNode(\"p\", null, \" Caso tenha alguma dúvida, ou precisar de mais informações, entre em contato com nosso time de \" + _toDisplayString(_ctx.segment) + \", pelo email suporte@orienteme.com.br \", 1)\n ]))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_el_divider, { style: {\"margin-top\":\"50px\"} }),\n _createElementVNode(\"div\", _hoisted_8, [\n _createVNode(_component_el_button, {\n type: \"primary\",\n onClick: _ctx.goToWebSite\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" VOLTAR PARA O SITE \")\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ])\n ]))\n}","\nimport { defineComponent } from 'vue';\nimport { mapActions, mapState } from 'vuex';\nimport signup from '@/mixins/signup';\n\nexport default defineComponent({\n mixins: [signup],\n computed: {\n ...mapState(['user']),\n name(): string {\n return this.user.name?.split(' ')[0];\n },\n segment(): string {\n const segments = {\n psicologos: 'Psicologia',\n nutricionistas: 'Nutrição',\n orientacaofisica: 'Orientação Física',\n } as Record;\n\n return segments[this.$route.params.profession as string];\n },\n firstThankYou(): boolean {\n return !this.$route.path.endsWith('finalizacao');\n }\n },\n methods: {\n ...mapActions(['setStepsVisible']),\n goToWebSite(): void {\n window.location.href = process.env.VUE_APP_WEBSITE_URL as string;\n }\n },\n mounted(){\n this.setStepsVisible(false);\n }\n});\n","import { render } from \"./ThankYou.vue?vue&type=template&id=2a74faf1&scoped=true&ts=true\"\nimport script from \"./ThankYou.vue?vue&type=script&lang=ts\"\nexport * from \"./ThankYou.vue?vue&type=script&lang=ts\"\n\nimport \"./ThankYou.vue?vue&type=style&index=0&id=2a74faf1&lang=scss&scoped=true\"\n\nimport exportComponent from \"/app/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-2a74faf1\"]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_Form = _resolveComponent(\"Form\")!\n\n return (_openBlock(), _createBlock(_component_Form, {\n form: _ctx.form,\n fields: _ctx.filterFieldsByProfession,\n title: `Cadastro de ${_ctx.profession.label}`,\n formRules: _ctx.formRules,\n loading: _ctx.loading,\n targetRendering: _ctx.profession.target,\n onChange: _ctx.handleFieldChange,\n onSubmit: _ctx.handleSubmitForm,\n onSearchZipCode: _ctx.searchAddress\n }, null, 8, [\"form\", \"fields\", \"title\", \"formRules\", \"loading\", \"targetRendering\", \"onChange\", \"onSubmit\", \"onSearchZipCode\"]))\n}","\nimport { defineComponent } from 'vue';\nimport { mapActions, mapGetters } from 'vuex';\nimport Form from '@/components/orienteme/CustomForm.vue';\nimport signup from '@/mixins/signup';\nimport notification from '@/mixins/notification';\nimport Rules from '@/utils/rules';\nimport store from '@/store';\nimport { ADDRESS_FORM, STEPS } from '@/constants';\n\nimport axios from 'axios';\n\nexport default defineComponent({\n components: {\n Form\n },\n store,\n mixins: [signup, notification], \n data() {\n return {\n isWaiting: false,\n loading: false,\n lockState: false,\n form: {\n publicPlace: null,\n number: null,\n zipCode: null,\n } as any,\n };\n },\n methods: {\n ...mapActions(['postAddress', 'fetchAddress']),\n async handleSubmitForm(): Promise{\n if(this.lockState) return;\n\n this.lockState = true;\n this.loading = true;\n\n this.form.uuid = this.$route.query.uuid as string;\n try {\n this.form.country = 'BR';\n this.form.uuid = this.$route.query.uuid as string;\n await this.postAddress(this.form);\n this.notifySuccess('Endereço salvo com sucesso!');\n this.redirectStep(STEPS['Dados Profissionais']);\n } catch (err: any) {\n this.notify(err);\n }\n finally{\n this.lockState = false;\n this.loading = false;\n }\n },\n handleFieldChange(event: any): void {\n this.form[event.field.prop] = event.e;\n },\n searchAddress() {\n const zipCodeLength = this.form.zipCode?.replace('-', '').length;\n\n if (this.form.zipCode && zipCodeLength === 8) {\n axios.get(`https://viacep.com.br/ws/${this.form.zipCode}/json/`)\n .then(response => {\n const addressData: any = response.data;\n\n if (addressData.erro && !this.isWaiting) {\n this.notifyError('CEP não encontrado', 2000);\n this.isWaiting = true;\n\n // set timeout to avoid multiple requests\n setTimeout(() => {\n this.isWaiting = false;\n }, 5000);\n } \n \n this.form.publicPlace = addressData.logradouro;\n this.form.neighborhood = addressData.bairro;\n this.form.city = addressData.localidade;\n this.form.state = addressData.uf;\n })\n .catch(error => {\n console.error('Erro ao buscar endereço:', error);\n });\n } \n }\n },\n computed: {\n ...mapGetters(['isDebug', 'isNewUser', 'cleanAddress']),\n formRules() {\n return {\n publicPlace: [Rules.required()],\n zipCode: [Rules.required()],\n city: [Rules.required()],\n state: [Rules.required()],\n number: [Rules.required()],\n };\n },\n filterFieldsByProfession() {\n return this.fields.filter((el: any) => {\n const targets = el.targets as string[];\n return targets.includes(this.profession.target);\n });\n },\n fields() {\n return ADDRESS_FORM;\n }\n },\n mounted: async function () {\n this.loading = true;\n const uuid = this.$route.query.uuid as string;\n try {\n if(!this.isNewUser){\n await this.fetchAddress(uuid);\n const address = this.cleanAddress;\n this.form = {\n ...address,\n };\n }\n } catch (err: any) {\n this.notifyError('Algo deu errado, favor tentar novamente', 0);\n } finally {\n this.loading = false;\n }\n }\n});\n","import { render } from \"./Address.vue?vue&type=template&id=f5314c28&ts=true\"\nimport script from \"./Address.vue?vue&type=script&lang=ts\"\nexport * from \"./Address.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"/app/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createBlock as _createBlock, createTextVNode as _createTextVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-d82cea42\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"h1\", null, \"Envio de documentos\", -1))\nconst _hoisted_3 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_el_form_item = _resolveComponent(\"el-form-item\")!\n const _component_CustomField = _resolveComponent(\"CustomField\")!\n const _component_el_row = _resolveComponent(\"el-row\")!\n const _component_SelectorElements = _resolveComponent(\"SelectorElements\")!\n const _component_el_form = _resolveComponent(\"el-form\")!\n const _component_UploadButton = _resolveComponent(\"UploadButton\")!\n const _component_el_col = _resolveComponent(\"el-col\")!\n const _component_el_divider = _resolveComponent(\"el-divider\")!\n const _component_el_button = _resolveComponent(\"el-button\")!\n\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createVNode(_component_el_form, {\n class: \"pr-registration__content\",\n ref: \"formGraduation\",\n model: _ctx.form,\n rules: _ctx.formGraduationRules,\n \"aria-labelledby\": \"Experiência profissional\"\n }, {\n default: _withCtx(() => [\n _createVNode(_component_el_form_item, null, {\n default: _withCtx(() => [\n _createElementVNode(\"h1\", null, \"Cadastro de \" + _toDisplayString(_ctx.profession.label), 1)\n ]),\n _: 1\n }),\n _createVNode(_component_el_row, null, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.filterGraduationForm, (field, idx) => {\n return (_openBlock(), _createBlock(_component_CustomField, {\n key: idx,\n field: field,\n fieldValue: _ctx.form[field.prop],\n targetRendering: _ctx.profession.target,\n onChange: _ctx.handleFieldChange,\n onPictureRemove: _ctx.handleRemovePicture\n }, null, 8, [\"field\", \"fieldValue\", \"targetRendering\", \"onChange\", \"onPictureRemove\"]))\n }), 128))\n ]),\n _: 1\n }),\n _hoisted_1,\n _createVNode(_component_SelectorElements, {\n list: _ctx.form.institutionsList,\n onAdd: _ctx.handleClickAddGraduation,\n onRemove: _ctx.handleClickRemoveGraduation\n }, null, 8, [\"list\", \"onAdd\", \"onRemove\"])\n ]),\n _: 1\n }, 8, [\"model\", \"rules\"]),\n _createVNode(_component_el_form, {\n class: \"pr-registration__content\",\n ref: \"form\",\n model: _ctx.form,\n rules: _ctx.formRules,\n \"aria-labelledby\": \"Dados Profissionais\"\n }, {\n default: _withCtx(() => [\n _createVNode(_component_el_form_item, null, {\n default: _withCtx(() => [\n _hoisted_2\n ]),\n _: 1\n }),\n _createVNode(_component_el_form_item, null, {\n default: _withCtx(() => [\n _createVNode(_component_el_row, null, {\n default: _withCtx(() => [\n _createVNode(_component_el_col, {\n xs: 24,\n sm: 12\n }, {\n default: _withCtx(() => [\n _createVNode(_component_el_form_item, { prop: \"pictureCouncil\" }, {\n default: _withCtx(() => [\n _createElementVNode(\"b\", null, \"Foto de seu \" + _toDisplayString(_ctx.docType), 1),\n _createVNode(_component_UploadButton, {\n limit: 1,\n model: _ctx.form.pictureCouncil,\n onUpload: _cache[0] || (_cache[0] = \n (v) => {\n _ctx.handleUploadPicture(v, 'pictureCouncil');\n }\n ),\n onRemove: _cache[1] || (_cache[1] = \n (v) => {\n _ctx.handleRemovePicture('pictureCouncil');\n }\n )\n }, null, 8, [\"model\"])\n ]),\n _: 1\n })\n ]),\n _: 1\n })\n ]),\n _: 1\n })\n ]),\n _: 1\n }),\n _hoisted_3,\n _hoisted_4,\n _createVNode(_component_el_row, null, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.filterOccupationForm, (field, idx) => {\n return (_openBlock(), _createBlock(_component_CustomField, {\n key: idx,\n field: field,\n fieldValue: _ctx.form[field.prop],\n targetRendering: _ctx.profession.target,\n onChange: _ctx.handleFieldChange\n }, null, 8, [\"field\", \"fieldValue\", \"targetRendering\", \"onChange\"]))\n }), 128))\n ]),\n _: 1\n }),\n _createVNode(_component_el_form_item, { style: {\"margin-top\":\"50px\"} }, {\n default: _withCtx(() => [\n _createVNode(_component_el_divider)\n ]),\n _: 1\n }),\n _createVNode(_component_el_form_item, { style: {\"text-align\":\"right\"} }, {\n default: _withCtx(() => [\n _createVNode(_component_el_button, {\n type: \"primary\",\n loading: _ctx.loading,\n onClick: _cache[2] || (_cache[2] = () => _ctx.handleSubmitForm('form'))\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" CONFIRMAR \")\n ]),\n _: 1\n }, 8, [\"loading\"])\n ]),\n _: 1\n })\n ]),\n _: 1\n }, 8, [\"model\", \"rules\"])\n ], 64))\n}","import { createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createBlock as _createBlock, TransitionGroup as _TransitionGroup } from \"vue\"\n\nconst _hoisted_1 = { class: \"container-grad\" }\nconst _hoisted_2 = [\"onClick\"]\nconst _hoisted_3 = { class: \"course\" }\nconst _hoisted_4 = { class: \"institution\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_el_button = _resolveComponent(\"el-button\")!\n const _component_el_col = _resolveComponent(\"el-col\")!\n const _component_el_row = _resolveComponent(\"el-row\")!\n\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createVNode(_component_el_row, { justify: \"end\" }, {\n default: _withCtx(() => [\n _createVNode(_component_el_col, {\n span: 6,\n xs: 24\n }, {\n default: _withCtx(() => [\n _createVNode(_component_el_button, {\n id: \"btn-add-graudation\",\n onClick: _ctx.handleClickAddGraduation,\n type: \"primary\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" ADICIONAR \")\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ]),\n _: 1\n })\n ]),\n _: 1\n }),\n _createVNode(_TransitionGroup, {\n tag: \"div\",\n name: \"fade\",\n class: \"container main-row el-row\"\n }, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.list, (grad, i) => {\n return (_openBlock(), _createBlock(_component_el_col, {\n span: 12,\n xs: 24,\n key: i\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_1, [\n _createVNode(_component_el_row, { class: \"header\" }, {\n default: _withCtx(() => [\n _createVNode(_component_el_col, {\n span: 12,\n class: \"titulation\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(grad.header), 1)\n ]),\n _: 2\n }, 1024),\n _createVNode(_component_el_col, {\n span: 12,\n class: \"titulation\"\n }, {\n default: _withCtx(() => [\n _createVNode(_component_el_row, { justify: \"end\" }, {\n default: _withCtx(() => [\n _createElementVNode(\"span\", {\n class: \"btn-excluir\",\n role: \"button\",\n onClick: () => { _ctx.handleClickRemove(grad) }\n }, \" Excluir \", 8, _hoisted_2)\n ]),\n _: 2\n }, 1024)\n ]),\n _: 2\n }, 1024)\n ]),\n _: 2\n }, 1024),\n _createVNode(_component_el_row, null, {\n default: _withCtx(() => [\n _createVNode(_component_el_col, { span: 24 }, {\n default: _withCtx(() => [\n _createElementVNode(\"b\", _hoisted_3, _toDisplayString(grad.title), 1)\n ]),\n _: 2\n }, 1024)\n ]),\n _: 2\n }, 1024),\n _createVNode(_component_el_row, null, {\n default: _withCtx(() => [\n _createVNode(_component_el_col, { span: 24 }, {\n default: _withCtx(() => [\n _createElementVNode(\"span\", _hoisted_4, _toDisplayString(grad.subtitle), 1)\n ]),\n _: 2\n }, 1024)\n ]),\n _: 2\n }, 1024)\n ])\n ]),\n _: 2\n }, 1024))\n }), 128))\n ]),\n _: 1\n })\n ], 64))\n}","\nimport { ISelectorElements } from '@/interfaces/selector-elements';\nimport {\n defineComponent, PropType\n} from 'vue';\n\nexport default defineComponent({\n name: 'SelectorElements',\n emits: ['add', 'remove'],\n props: {\n list: {\n type: Object as PropType,\n required: true\n }\n },\n methods: {\n handleClickAddGraduation: function (e: any){\n this.$emit('add', {e});\n },\n handleClickRemove: function(item: any){\n this.$emit('remove', {item});\n }\n }\n});\n","import { render } from \"./SelectorElements.vue?vue&type=template&id=05245049&ts=true\"\nimport script from \"./SelectorElements.vue?vue&type=script&lang=ts\"\nexport * from \"./SelectorElements.vue?vue&type=script&lang=ts\"\n\nimport \"./SelectorElements.vue?vue&type=style&index=0&id=05245049&lang=scss\"\n\nimport exportComponent from \"/app/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { ISelectorElements } from '@/interfaces/selector-elements';\nimport store from '@/store';\nimport Helpers from '@/utils/helpers';\n\n\nexport interface InstitutionItem {\n id: number;\n institutionId: number;\n graduate: number;\n graduateDate: Date | string;\n graduation: number;\n courseId: number;\n file: string;\n fileType: string;\n fileName: string;\n}\n\nexport interface IRequestProfessionalData {\n uuid: string;\n hasEConcil: boolean;\n specialtys: number[];\n mostChallengingSituation: string;\n institutionList: InstitutionItem[];\n convenienceServiceAnyWhereTime: boolean;\n}\n\n\nexport const transform = (data: any | undefined): IRequestProfessionalData => {\n if (!data) throw new Error(\"Can't transform null value\");\n data.specialtys = data.specialtys.map((x: string) => {\n const reg = store.state.specialtys.filter((y: any) => y.nome === x);\n if(reg?.length > 0) return reg[0].id;\n }\n );\n const response = {\n uuid: data.uuid,\n hasEConcil: data.hasEConcil,\n specialtys: data.specialtys,\n mostChallengingSituation: data.mostChallengingSituation,\n institutionList: data.institutionsList.map((institution: ISelectorElements) => {\n institution.data.graduateDate = Helpers.toJsonDate(institution.data.graduateDate);\n return institution.data;\n })\n } as IRequestProfessionalData;\n return response;\n};","\nimport { defineComponent } from 'vue';\nimport { mapActions } from 'vuex';\nimport store from '@/store';\nimport UploadButton from '@/components/orienteme/UploadButton.vue';\nimport CustomField from '@/components/orienteme/CustomField.vue';\nimport SelectorElements from '@/components/orienteme/SelectorElements.vue';\nimport Rules from '@/utils/rules';\nimport signup from '@/mixins/signup';\nimport UploadImage from '@/mixins/upload-image';\nimport notification from '@/mixins/notification';\nimport { PROFESSIONAL_FORM, STEPS } from '@/constants';\nimport { InstitutionItem, transform } from '@/constants/contracts/professionalData';\nimport { ISelectorElements } from '@/interfaces/selector-elements';\nimport Helpers from '@/utils/helpers';\nexport const TAG_PSICHOLOGY = 'psicologos';\n\n\nexport default defineComponent({\n\tcomponents: { UploadButton, CustomField, SelectorElements },\n\tmixins: [signup, notification, UploadImage],\n\tstore,\n\tdata() {\n\t\treturn {\n\t\t\tPROFESSIONAL_FORM,\n\t\t\tloading: false,\n lockState: false,\n\t\t\tvalid: false,\n\t\t\tform: {\n\t\t\t\tinstitutionId: null,\n\t\t\t\tgraduation: null,\n\t\t\t\tgraduateDate: null,\n\t\t\t\thasEConcil: null,\n\t\t\t\tmostChallengingSituation: '',\n\t\t\t\tspecialtys: [],\n\t\t\t\tcourseId: null,\n\t\t\t\tgraduate: null,\n\t\t\t\tuuid: this.$route.query.uuid,\n\t\t\t\tinstitutionsList: [],\n\t\t\t\tpictureGraduation: [],\n pictureCouncil: [],\n\t\t\t} as any,\n\t\t};\n\t},\n\tcomputed: {\n\t\tformRules() {\n\t\t\treturn {\n\t\t\t\tchallenge: [Rules.required()],\n\t\t\t\toccupationArea: [Rules.required()],\n pictureCouncil: [Rules.required()]\n\t\t\t};\n\t\t},\n\t\tformGraduationRules(): any{\n\t\t\treturn {\n\t\t\t\tcourseId: [Rules.required()],\n\t\t\t\tinstitutionId: [Rules.required()],\n\t\t\t\tgraduate: [Rules.required()],\n\t\t\t\tgraduateDate: [Rules.required(), Rules.date()],\n\t\t\t\tgraduation: [Rules.required()],\n\t\t\t\tpictureGraduation: [Rules.required()],\n\t\t\t};\n\t\t},\n\t\tfilterGraduationForm(): any {\n\t\t\treturn PROFESSIONAL_FORM.graduationForm.filter((el: any) => {\n\t\t\t\t\tconst targets = el.targets as string[];\n\t\t\t\t\treturn targets.includes(this.profession.target);\n\t\t\t});\n\t\t},\n\t\tfilterOccupationForm() {\n\t\t\treturn PROFESSIONAL_FORM.occupationForm.filter((el: any) => {\n\t\t\t\t\tconst targets = el.targets as string[];\n\t\t\t\t\treturn targets.includes(this.profession.target);\n\t\t\t});\n\t\t}\n\t},\n\tmethods: {\n\t\t...mapActions(['fetchInstituitions',\n\t\t'fetchCourseList',\n\t\t'fetchGraduateList',\n\t\t'fetchGraduationList',\n\t\t'fetchProfessionalData',\n\t\t'fetchSpecialtyList',\n 'fetchPersonalData',\n\t\t'postProfessionalData',\n\t\t'sendGraduationPicture',\n\t\t'sendCouncilDocument',\n\t\t'graduateListSelectOptions',\n 'postPersonalData',\n 'advanceStep']),\n\n\t\tasync handleSubmitForm(formName: string): Promise {\n if(this.lockState) return;\n\n\t\t\tconst refFormGraduation = this.$refs['formGraduation'] as Record;\n\n this.lockState = true;\n this.loading = true;\n\n\n\t\t\trefFormGraduation.validate(async (valid: boolean) => {\n\t\t\t\tconst refs = this.$refs[formName] as Record;\n\t\t\t\tthis.valid = valid || this.form.institutionsList.length > 0;\n\t\t\t\tif (!this.valid) {\n\t\t\t\t\tthis.warn('Favor preencher todos os campos obrigatórios');\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif(valid){\n const newGraduation = await (this.buildGraduation(this.form)).fromForm();\n this.form.institutionsList.push(newGraduation);\n this.clearForm();\n this.lockState = true;\n this.loading = true;\n\t\t\t\t}\n\t\t\t\trefs.validate(async (valid: boolean) => {\n\t\t\t\t\tif (!valid) {\n\t\t\t\t\t\tthis.warn('Favor preencher todos os campos obrigatórios');\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\ttry{\n if(this.form.hasEConcil == null){\n this.form.hasEConcil = false;\n }\n let sendPicture = !this.form.pictureCouncil[0].sync ? this.sendCouncilDocument({\n\t\t\t\t\t\t\t\tpicture: this.form.pictureCouncil,\n\t\t\t\t\t\t\t\tuuid: this.form.uuid\n\t\t\t\t\t\t\t}) : null;\n\t\t\t\t\t\tawait Promise.all([\n\t\t\t\t\t\t\tthis.postProfessionalData(transform(this.form)),\n this.postPersonalData({\n ...store.state.user.personalData,\n convenienceServiceAnyWhereTime: this.form.convenienceServiceAnyWhereTime\n }),\n\t\t\t\t\t\t\tsendPicture,\n\t\t\t\t\t\t]);\n\t\t\t\t\t\tthis.notifySuccess('Dados profissionais salvo com sucesso!');\n this.redirectStep(STEPS.Experiência);\n\t\t\t\t\t}\n\t\t\t\t\tcatch(err: any){\n\t\t\t\t\t\tthis.notify(err);\n\t\t\t\t\t}\n finally{\n this.lockState = false;\n this.loading = false;\n }\n\t\t\t\t});\n\t\t\t});\n\t\t},\n\t\thandleFieldChange({e, field} : any): void {\n\t\t\tif(field.type === 'upload'){\n\t\t\t\tthis.form[field.prop] = [e];\n\t\t\t}else{\n\t\t\t\tthis.form[field.prop] = e;\n\t\t\t}\n\t\t},\n\t\tasync handleClickAddGraduation(): Promise{\n\t\t\tconst refs = this.$refs['formGraduation'] as Record;\n\n\t\t\trefs.validate(async (valid: boolean) => {\n\t\t\t\tif (!valid) {\n\t\t\t\t\tthis.warn('Favor preencher todos os campos obrigatórios');\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tconst newGraduation = await (this.buildGraduation(this.form)).fromForm();\n this.form.institutionsList.push(newGraduation);\n this.clearForm();\n\t\t\t});\n\t\t},\n\t\thandleClickRemoveGraduation({item}: any): void {\n\t\t\tfor(let i = 0; i < this.form.institutionsList.length; i++){\n\t\t\t\tconst grad = this.form.institutionsList[i];\n\t\t\t\tif(item.id === grad.id)\n\t\t\t\t\tthis.form.institutionsList.splice(i, 1);\n\t\t\t}\n\t\t},\n clearForm(){\n this.form.graduate = null;\n this.form.graduation = null;\n this.form.institutionId = null;\n this.form.graduateDate = null;\n this.form.courseId = null;\n this.form.pictureGraduation = [];\n },\n buildGraduation(rawData: any): any {\n const header = store.state.graduateList.filter((x:any) => x.id == rawData.graduate)[0].nome;\n const graduation = store.state.graduationList.filter((x:any) => x.id == rawData.graduation)[0]?.nome;\n const institution = store.state.institutionsList.filter((x:any) => x.id == rawData.institutionId)[0]?.nome;\n return {\n fromForm: async() => {\n const picture = await Helpers.getBase64(rawData.pictureGraduation[0].raw);\n return {\n id: rawData.institutionsList.length ?? 0,\n header,\n title: `${graduation} - ${rawData.graduateDate}`,\n subtitle: institution,\n data: {\n institutionId: rawData.institutionId,\n graduateDate: rawData.graduateDate,\n graduate: rawData.graduate,\n graduation: rawData.graduation,\n courseId: rawData.courseId,\n file: picture,\n fileType: rawData.pictureGraduation[0].raw.type,\n fileName: rawData.pictureGraduation[0].name\n } as InstitutionItem\n } as ISelectorElements;\n },\n fromAPI: () =>{\n return{\n id: `${rawData.institutionId}${rawData.graduate}${rawData.graduation}${rawData.courseId}`,\n header,\n title: `${graduation} - ${Helpers.toDate(rawData.graduateDate)}`,\n subtitle: institution,\n data: {\n institutionId: rawData.institutionId,\n graduateDate: Helpers.toDate(rawData.graduateDate),\n graduate: rawData.graduate,\n graduation: rawData.graduation,\n courseId: rawData.courseId,\n file: rawData.file,\n fileType: rawData.fileType,\n fileName: rawData.fileName,\n } as InstitutionItem\n } as ISelectorElements;\n }\n };\n },\n builder(rawData: any, state: any, buildGraduation: any): any{\n const form = rawData;\n return {\n build(){\n return form;\n },\n graduateDate(){\n form.graduateDate = Helpers.toDate(rawData.graduateDate);\n return this;\n },\n specialtys(){\n try{\n let specialtys = rawData.specialtys;\n if(specialtys){\n specialtys = specialtys.map((x: number) => {\n const reg = state.specialtys.filter((y: any) => y.id === x);\n if(reg?.length > 0) return reg[0].nome;\n });\n }\n form.specialtys = specialtys;\n }\n catch(exc){\n console.log(exc);\n }\n return this;\n },\n institutionsList(){\n let institutionsList = [];\n for(let i = 0; i < rawData.institutions.length; i++){\n institutionsList.push(buildGraduation(rawData.institutions[i]).fromAPI());\n }\n form.institutionsList = institutionsList;\n return this;\n },\n pictureCouncil(){\n form.pictureCouncil = [{\n name: rawData.councilDocumentName,\n uid: rawData.councilDocumentUuid,\n sync: true,\n raw: {\n type: rawData.councilDocumentType,\n uid: rawData.councilDocumentUuid\n }\n }];\n return this;\n }\n };\n }\n },\n\tasync mounted(){\n\t\tconst professionType = this.profession.value as number;\n const uuid = this.$route.query.uuid;\n\n try {\n await Promise.all([\n this.fetchInstituitions(professionType),\n this.fetchGraduationList(professionType),\n this.fetchCourseList(professionType),\n this.fetchGraduateList(professionType),\n this.fetchSpecialtyList(professionType),\n this.fetchProfessionalData(uuid),\n this.fetchPersonalData(uuid)\n ]);\n this.form = this.builder({\n ...store.state.user.professionalData,\n ...store.state.user.personalData\n }, store.state,\n this.buildGraduation)\n .specialtys()\n .institutionsList()\n .graduateDate()\n .pictureCouncil()\n .build();\n this.clearForm();\n \n } catch (error: any) {\n if(error.statusCode !== 'NotFound'){\n throw error;\n } \n }\n\t}\n});\n","import { render } from \"./ProfessionalData.vue?vue&type=template&id=d82cea42&scoped=true&ts=true\"\nimport script from \"./ProfessionalData.vue?vue&type=script&lang=ts\"\nexport * from \"./ProfessionalData.vue?vue&type=script&lang=ts\"\n\nimport \"./ProfessionalData.vue?vue&type=style&index=0&id=d82cea42&scoped=true&lang=css\"\n\nimport exportComponent from \"/app/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-d82cea42\"]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_Form = _resolveComponent(\"Form\")!\n\n return (_openBlock(), _createBlock(_component_Form, {\n form: _ctx.form,\n fields: _ctx.filterFieldsByProfession,\n title: `Cadastro de ${_ctx.profession.label}`,\n formRules: _ctx.formRules,\n loading: _ctx.loading,\n targetRendering: _ctx.profession.target,\n onChange: _ctx.handleFieldChange,\n onSubmit: _ctx.handleSubmitForm\n }, null, 8, [\"form\", \"fields\", \"title\", \"formRules\", \"loading\", \"targetRendering\", \"onChange\", \"onSubmit\"]))\n}","\nimport { defineComponent } from 'vue';\nimport { mapActions, mapGetters } from 'vuex';\nimport store from '@/store';\nimport Form from '@/components/orienteme/CustomForm.vue';\nimport Rules from '@/utils/rules';\nimport signup from '@/mixins/signup';\nimport Notification from '@/mixins/notification';\nimport answers from '@/mixins/answers';\nimport { AVALIABILITY_FORM, STEPS } from '@/constants';\nimport { IFieldEvent } from '@/interfaces/field';\n\nexport default defineComponent({\n components: { Form },\n mixins: [signup, Notification, answers],\n data() {\n return {\n AVALIABILITY_FORM,\n loading: false,\n lockState: false,\n form: {\n availability: null,\n emailCheckFrequency: null,\n languages: [],\n ageGroup: [],\n } as any,\n };\n },\n computed: {\n ...mapGetters(['answersByValue', 'answersByKey']),\n formRules() {\n return {\n availability: [Rules.required()],\n emailCheckFrequency: [Rules.required()],\n languages: [Rules.required()],\n ageGroup: [Rules.required()],\n };\n },\n filterFieldsByProfession() {\n return AVALIABILITY_FORM.filter((el) => {\n const targets = el.targets as string[];\n return targets.includes(this.profession.target);\n });\n }\n },\n methods: {\n ...mapActions(['fetchAnswers',\n 'postAvailability',\n 'fetchUserAnswers',\n 'isFormFinished',\n 'refreshStateApp',\n 'fetchGlobalAnswers']),\n async handleSubmitForm(): Promise {\n if(this.lockState) return;\n\n this.lockState = true;\n this.loading = true;\n\n const uuid = this.$route.query.uuid as string;\n const answers = this.buildRequest(\n uuid,\n AVALIABILITY_FORM,\n this.profession.target,\n this.$data.form,\n 'availabilityAnswers'\n );\n try{\n await this.postAvailability(answers);\n this.notifySuccess('Dados salvo com sucesso!');\n const isFinished = await this.isFormFinished(uuid);\n if(isFinished){\n this.$router.push({\n name: 'signup.thanks.finish',\n query: this.$route.query\n });\n }else{\n this.warn('Alguns dados estão faltando, favor valide os dados pessoais');\n this.redirectStep(STEPS['Dados Pessoais']);\n }\n }\n catch(err: any){\n this.notify(err);\n }\n finally{\n this.lockState = false;\n this.loading = false;\n }\n },\n handleFieldChange(event: IFieldEvent): void{\n this.form[event.field.prop] = event.e;\n }\n },\n async mounted() {\n this.loading = true;\n this.refreshStateApp();\n try{\n const professionType = this.profession.value;\n await this.fetchGlobalAnswers({arrayAnswers: store.state.availabilityAnswers,\n professionType,\n uuid: this.$route.query.uuid,\n storeQuestions: 'availabilityAnswers',\n storeUserAnswers: 'availability'});\n }\n catch(ex){\n this.notify(ex);\n }\n finally{\n this.loading = false;\n this.renderUserAnswers(store.state.user.availability,\n AVALIABILITY_FORM,\n this.form,\n 'availabilityAnswers');\n }\n }\n});\n","import { render } from \"./Availability.vue?vue&type=template&id=7f399f2a&ts=true\"\nimport script from \"./Availability.vue?vue&type=script&lang=ts\"\nexport * from \"./Availability.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"/app/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_Form = _resolveComponent(\"Form\")!\n\n return (_openBlock(), _createBlock(_component_Form, {\n form: _ctx.form,\n fields: _ctx.filterFieldsByProfession,\n title: `Cadastro de ${_ctx.profession.label}`,\n formRules: _ctx.formRules,\n loading: _ctx.loading,\n targetRendering: _ctx.profession.target,\n onChange: _ctx.handleFieldChange,\n onSubmit: _ctx.handleSubmitForm\n }, null, 8, [\"form\", \"fields\", \"title\", \"formRules\", \"loading\", \"targetRendering\", \"onChange\", \"onSubmit\"]))\n}","\nimport { defineComponent } from 'vue';\nimport { mapActions, mapGetters } from 'vuex';\nimport store from '@/store';\nimport Form from '@/components/orienteme/CustomForm.vue';\nimport Rules from '@/utils/rules';\nimport signup from '@/mixins/signup';\nimport Notification from '@/mixins/notification';\nimport {IFieldEvent} from '@/interfaces/field';\nimport {EXPERIENCE_FORM, STEPS} from '@/constants';\nimport answers from '@/mixins/answers';\n\nexport default defineComponent({\n components: { Form },\n store,\n mixins: [signup, Notification, answers],\n data() {\n return {\n EXPERIENCE_FORM,\n loading: false,\n lockState: false,\n form: {\n role: [],\n years: [],\n online: null,\n themes: [],\n patientsWeekly: null,\n patientsAge: null,\n haveSupervisor: null,\n youAreSupervisor: null,\n } as any,\n };\n },\n computed: {\n ...mapGetters(['answersListSelectOptions', 'answersByKey']),\n formRules() {\n return {\n role: [Rules.required()],\n years: [Rules.required()],\n online: [Rules.required()],\n themes: [Rules.required(), Rules.minimum(6)],\n patientsWeekly: [Rules.required()],\n patientsAge: [Rules.required()],\n challenge: [Rules.required()],\n haveSupervisor: [Rules.required()],\n youAreSupervisor: [Rules.required()],\n };\n },\n filterFieldsByProfession() {\n return EXPERIENCE_FORM.filter((el) => {\n const targets = el.targets as string[];\n return targets.includes(this.profession.target);\n });\n }\n },\n methods: {\n ...mapActions(['fetchAnswers', 'postExperience', 'fetchUserAnswers', 'refreshStateApp',\n 'fetchGlobalAnswers']),\n async handleSubmitForm(): Promise {\n if(this.lockState) return;\n\n const uuid = this.$route.query.uuid as string;\n this.lockState = true;\n this.loading = true;\n const answers = this.buildRequest(\n uuid,\n EXPERIENCE_FORM,\n this.profession.target,\n this.$data.form,\n 'experienceAnswers'\n );\n try{\n await this.postExperience(answers);\n this.notifySuccess('Experiência salva com sucesso');\n this.redirectStep(STEPS.Disponibilidade);\n }\n catch(err: any){\n this.notify(err);\n }\n finally{\n this.lockState = false;\n this.loading = false;\n }\n },\n handleFieldChange(event: IFieldEvent): void{\n this.form[event.field.prop] = event.e;\n }\n },\n async mounted() {\n this.loading = true;\n this.refreshStateApp();\n try{\n const professionType = this.profession.value;\n await this.fetchGlobalAnswers({arrayAnswers: store.state.experienceAnswers,\n professionType,\n uuid: this.$route.query.uuid,\n storeQuestions: 'experienceAnswers',\n storeUserAnswers: 'experience'});\n }\n catch(err: any){\n this.notify(err);\n }\n finally{\n this.loading = false;\n this.renderUserAnswers(store.state.user.experience,\n EXPERIENCE_FORM,\n this.form,\n 'experienceAnswers');\n }\n },\n\n});\n","import { render } from \"./Experience.vue?vue&type=template&id=07a202c8&scoped=true&ts=true\"\nimport script from \"./Experience.vue?vue&type=script&lang=ts\"\nexport * from \"./Experience.vue?vue&type=script&lang=ts\"\n\nimport \"./Experience.vue?vue&type=style&index=0&id=07a202c8&scoped=true&lang=css\"\n\nimport exportComponent from \"/app/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-07a202c8\"]])\n\nexport default __exports__","import { createRouter, createWebHistory, RouteRecordRaw } from 'vue-router';\nimport DefaultLayout from '@/layouts/Default.vue';\nimport PersonalData from '@/views/PersonalData.vue';\nimport BasicData from '@/views/BasicData.vue';\nimport ThankYou from '@/views/ThankYou.vue';\nimport Address from '@/views/Address.vue';\nimport ProfessionalData from '@/views/ProfessionalData.vue';\nimport Availability from '@/views/Availability.vue';\nimport Experience from '@/views/Experience.vue';\n\nconst routes: Array = [\n {\n path: '/',\n redirect: '/cadastro/psicologos',\n },\n {\n path: '/cadastro',\n component: DefaultLayout,\n redirect: '/cadastro/psicologos',\n children: [\n {\n path: ':profession',\n name: 'signup.index',\n meta: {\n title: 'Cadastro',\n },\n component: BasicData\n },\n {\n path: ':profession/sucesso',\n name: 'signup.thanks',\n meta: {\n title: 'Obrigado!',\n },\n component: ThankYou\n },\n {\n path: ':profession/sucesso/finalizacao',\n name: 'signup.thanks.finish',\n meta: {\n title: 'Obrigado!',\n },\n component: ThankYou\n },\n {\n path: ':profession/dados-pessoais',\n name: 'signup.personaldata',\n meta: {\n title: 'Dados Pessoais',\n step: 1,\n },\n component: PersonalData\n },\n {\n path: ':profession/endereco',\n name: 'signup.address',\n meta: {\n title: 'Endereço',\n step: 2,\n },\n component: Address\n },\n {\n path: ':profession/dados-profissionais',\n name: 'signup.professionaldata',\n meta: {\n title: 'Dados Profissionais',\n step: 3,\n },\n component: ProfessionalData\n },\n {\n path: ':profession/experiencia',\n name: 'signup.experience',\n meta: {\n title: 'Experiência',\n step: 4,\n },\n component: Experience\n },\n {\n path: ':profession/disponibilidade',\n name: 'signup.availability',\n meta: {\n title: 'Disponibilidade',\n step: 5,\n },\n component: Availability\n },\n ]\n },\n {\n path: '/:pathMatch(.*)*',\n redirect: '/cadastro/psicologos'\n },\n];\n\nconst router = createRouter({\n history: createWebHistory(process.env.BASE_URL),\n routes\n});\n\nexport default router;\n","import { createApp } from 'vue';\nimport App from './App.vue';\nimport router from './router';\nimport store from './store';\nimport ElementPlus from 'element-plus';\nimport 'element-plus/dist/index.css';\nimport Maska from 'maska';\nimport './assets/styles/main.scss';\nimport './components/orienteme/styles.scss';\nimport * as ElementPlusIconsVue from '@element-plus/icons-vue';\nimport * as Sentry from '@sentry/vue';\nimport { BrowserTracing } from '@sentry/tracing';\n\nconst SENTRY_DSN = process.env.VUE_APP_SENTRY_DNS;\n\nconst app = createApp(App)\n .use(store)\n .use(router)\n .use(ElementPlus)\n .use(Maska);\nfor (const [key, component] of Object.entries(ElementPlusIconsVue)) {\n app.component(key, component);\n}\napp.mount('#app');\n\n\nSentry.init({\n app,\n dsn: SENTRY_DSN,\n integrations: [\n new BrowserTracing({\n routingInstrumentation: Sentry.vueRouterInstrumentation(router),\n tracePropagationTargets: ['cadastroprofissionais.orienteme.dev.br', /^\\//],\n }),\n ],\n tracesSampleRate: 1.0,\n});\n\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./SelectorElements.vue?vue&type=style&index=0&id=05245049&lang=scss\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./BasicData.vue?vue&type=style&index=0&id=669054a8&lang=scss&scoped=true\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Default.vue?vue&type=style&index=0&id=3815f1ea&lang=scss\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./Steps.vue?vue&type=style&index=0&id=344fb195&lang=scss&scoped=true\""],"sourceRoot":""}