{"version":3,"file":"js/root.ed6314e3.js","mappings":"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","sources":["webpack://upmed-agendamento/./src/components/base/svg/SvgWrapper.vue","webpack://upmed-agendamento/src/components/base/svg/SvgWrapper.vue","webpack://upmed-agendamento/./src/components/base/svg/SvgWrapper.vue?faff","webpack://upmed-agendamento/./src/components/base/svg/SvgWrapper.vue?d5a8","webpack://upmed-agendamento/./src/components/common/GoogleIcon.vue","webpack://upmed-agendamento/src/components/common/GoogleIcon.vue","webpack://upmed-agendamento/./src/components/common/GoogleIcon.vue?333c","webpack://upmed-agendamento/./src/components/common/GoogleIcon.vue?040f","webpack://upmed-agendamento/./src/components/common/UserAvatarPlaceholder.vue","webpack://upmed-agendamento/src/components/common/UserAvatarPlaceholder.vue","webpack://upmed-agendamento/./src/components/common/UserAvatarPlaceholder.vue?19f0","webpack://upmed-agendamento/./src/components/common/UserAvatarPlaceholder.vue?23d2","webpack://upmed-agendamento/./src/views/Base.vue","webpack://upmed-agendamento/./src/components/common/Header.vue","webpack://upmed-agendamento/./src/components/headerComponents/FirstLine.vue","webpack://upmed-agendamento/./src/components/common/BottomNavigation.vue","webpack://upmed-agendamento/./src/components/common/BottomNavigationRouteButton.vue","webpack://upmed-agendamento/src/components/common/BottomNavigationRouteButton.vue","webpack://upmed-agendamento/./src/components/common/BottomNavigationRouteButton.vue?c45f","webpack://upmed-agendamento/./src/components/common/BottomNavigationRouteButton.vue?811c","webpack://upmed-agendamento/./src/components/common/BottomNavigationProfileButton.vue","webpack://upmed-agendamento/src/components/common/BottomNavigationProfileButton.vue","webpack://upmed-agendamento/./src/components/common/BottomNavigationProfileButton.vue?2b93","webpack://upmed-agendamento/./src/components/common/BottomNavigationProfileButton.vue?57d0","webpack://upmed-agendamento/./src/components/common/MenuMobileLink.vue","webpack://upmed-agendamento/src/components/common/MenuMobileLink.vue","webpack://upmed-agendamento/./src/components/common/MenuMobileLink.vue?8604","webpack://upmed-agendamento/./src/components/common/MenuMobileLink.vue?800c","webpack://upmed-agendamento/./src/components/common/MenuMobileRoute.vue","webpack://upmed-agendamento/src/components/common/MenuMobileRoute.vue","webpack://upmed-agendamento/./src/components/common/MenuMobileRoute.vue?f729","webpack://upmed-agendamento/./src/components/common/MenuMobileRoute.vue?51f2","webpack://upmed-agendamento/src/components/common/BottomNavigation.vue","webpack://upmed-agendamento/./src/components/common/BottomNavigation.vue?64e0","webpack://upmed-agendamento/./src/components/common/BottomNavigation.vue?dc2f","webpack://upmed-agendamento/src/components/headerComponents/FirstLine.vue","webpack://upmed-agendamento/./src/components/headerComponents/FirstLine.vue?ef7b","webpack://upmed-agendamento/./src/components/headerComponents/FirstLine.vue?f104","webpack://upmed-agendamento/./src/components/headerComponents/StepperChecklist.vue","webpack://upmed-agendamento/src/components/headerComponents/StepperChecklist.vue","webpack://upmed-agendamento/./src/components/headerComponents/StepperChecklist.vue?2c69","webpack://upmed-agendamento/./src/components/headerComponents/StepperChecklist.vue?848b","webpack://upmed-agendamento/src/components/common/Header.vue","webpack://upmed-agendamento/./src/components/common/Header.vue?d8b8","webpack://upmed-agendamento/./src/components/common/Header.vue?875f","webpack://upmed-agendamento/./src/components/common/Footer.vue","webpack://upmed-agendamento/src/components/common/Footer.vue","webpack://upmed-agendamento/./src/components/common/Footer.vue?31a8","webpack://upmed-agendamento/./src/components/common/Footer.vue?37cd","webpack://upmed-agendamento/./src/mixins/autoLoginMixin.js","webpack://upmed-agendamento/./src/components/common/GlobalModal.vue","webpack://upmed-agendamento/./src/components/common/RelationModal.vue","webpack://upmed-agendamento/src/components/common/RelationModal.vue","webpack://upmed-agendamento/./src/components/common/RelationModal.vue?9ee5","webpack://upmed-agendamento/./src/components/common/RelationModal.vue?7e76","webpack://upmed-agendamento/./src/components/common/PickUBSModal.vue","webpack://upmed-agendamento/src/components/common/PickUBSModal.vue","webpack://upmed-agendamento/./src/components/common/PickUBSModal.vue?73ff","webpack://upmed-agendamento/./src/components/common/PickUBSModal.vue?772a","webpack://upmed-agendamento/./src/components/common/SideCardModal.vue","webpack://upmed-agendamento/src/components/common/SideCardModal.vue","webpack://upmed-agendamento/./src/components/common/SideCardModal.vue?c608","webpack://upmed-agendamento/./src/components/common/SideCardModal.vue?584a","webpack://upmed-agendamento/src/components/common/GlobalModal.vue","webpack://upmed-agendamento/./src/components/common/GlobalModal.vue?1c57","webpack://upmed-agendamento/./src/components/common/GlobalModal.vue?60e0","webpack://upmed-agendamento/src/views/Base.vue","webpack://upmed-agendamento/./src/views/Base.vue?5793","webpack://upmed-agendamento/./src/views/Base.vue?51f8","webpack://upmed-agendamento/./src/assets/theme/ sync ^\\.\\/.*\\/icons\\/logo\\-cidade\\.svg$","webpack://upmed-agendamento/./src/components/base/svg/elements/ lazy ^\\.\\/Icon.*\\.vue$ namespace object"],"sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c(_vm.lazyComponent,{tag:\"component\"},[_vm._v(\" \"+_vm._s(_vm.title ? _vm.title : _vm.icon)+\" \")])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <component :is=\"lazyComponent\">\n {{ title ? title : icon }}\n </component>\n</template>\n\n<script>\nexport default {\n name: 'SvgWrapper',\n\n props: {\n icon: {\n type: String,\n required: true,\n },\n title: {\n type: String,\n default: '',\n },\n },\n\n data() {\n return {\n lazyComponent: null,\n };\n },\n\n mounted() {\n this.loadComponent();\n },\n\n methods: {\n loadComponent() {\n import(`./elements/Icon${this.icon}.vue`).then((component) => {\n this.lazyComponent = component.default;\n });\n },\n },\n};\n</script>\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./SvgWrapper.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./SvgWrapper.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SvgWrapper.vue?vue&type=template&id=60f92028&\"\nimport script from \"./SvgWrapper.vue?vue&type=script&lang=js&\"\nexport * from \"./SvgWrapper.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',{class:`material-icons${_vm.materialIconsStyleClass}`,attrs:{\"translate\":\"no\"}},[_vm._v(\" \"+_vm._s(_vm.icon)+\" \")])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span\n translate=\"no\"\n :class=\"`material-icons${materialIconsStyleClass}`\"\n >\n {{ icon }}\n </span>\n</template>\n\n<script>\nexport default {\n name: 'GoogleIcon',\n props: {\n icon: {\n type: String,\n required: true\n },\n iconStyle: {\n type: String,\n default: 'outlined'\n }\n },\n computed: {\n materialIconsStyleClass() {\n return this.iconStyle !== 'filled' ? `-${this.iconStyle}` : '';\n }\n }\n};\n</script>\n<style lang=\"scss\" scoped>\n@import 'material-icons/iconfont/filled.css';\n@import 'material-icons/iconfont/outlined.css';\n</style>","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GoogleIcon.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GoogleIcon.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GoogleIcon.vue?vue&type=template&id=398ed431&scoped=true&\"\nimport script from \"./GoogleIcon.vue?vue&type=script&lang=js&\"\nexport * from \"./GoogleIcon.vue?vue&type=script&lang=js&\"\nimport style0 from \"./GoogleIcon.vue?vue&type=style&index=0&id=398ed431&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"398ed431\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('figure',{staticClass:\"img\",class:_vm.imageSize},[_c('img',{staticClass:\"img__figure\",attrs:{\"src\":_vm.userImage,\"alt\":\"Imagem de perfil do usuário\"}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <figure\n class=\"img\"\n :class=\"imageSize\"\n >\n <img\n class=\"img__figure\"\n :src=\"userImage\"\n alt=\"Imagem de perfil do usuário\"\n >\n </figure>\n</template>\n\n<script>\n export default {\n name: 'UserAvatarPlaceholder',\n props: {\n imageUser: {\n type: String,\n default: null\n },\n imageSize: {\n type: String,\n default: 'normal'\n }\n },\n computed: {\n userImage() {\n return this.imageUser || require('@/assets/img/UserFilledGray.png');\n }\n }\n };\n</script>\n\n<style lang=\"scss\" scoped>\n.img {\n display: flex;\n justify-content: center;\n align-items: center;\n\n &__figure {\n width: 100%;\n height: 100%;\n object-fit: cover;\n border-radius: $radius-full;\n }\n\n &.small {\n width: 24px;\n }\n\n &.normal {\n width: 34px;\n height: 34px;\n }\n\n &.big {\n width: 44px;\n height: 44px;\n }\n\n &.big-normal {\n width: 47px;\n height: 47px;\n\n @include screen (tablet-big-up) {\n width: 54px;\n height: 54px;\n }\n }\n\n &.large {\n width: 60px;\n }\n}\n</style>","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./UserAvatarPlaceholder.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./UserAvatarPlaceholder.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./UserAvatarPlaceholder.vue?vue&type=template&id=23742088&scoped=true&\"\nimport script from \"./UserAvatarPlaceholder.vue?vue&type=script&lang=js&\"\nexport * from \"./UserAvatarPlaceholder.vue?vue&type=script&lang=js&\"\nimport style0 from \"./UserAvatarPlaceholder.vue?vue&type=style&index=0&id=23742088&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"23742088\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"base\"},[_c('Header',{attrs:{\"current-view\":_vm.currentView}}),_c('div',{staticClass:\"main\"},[_c('transition',{attrs:{\"name\":\"slide-fade\",\"mode\":\"out-in\"}},[_c('router-view')],1)],1),_c('GlobalModal',{attrs:{\"show-modal\":_vm.showModal,\"info\":_vm.modalInfo}}),(_vm.footerShow)?_c('Footer'):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('nav',{staticClass:\"header\",class:{ 'header-home': _vm.isHomePage }},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"header__lines\"},[_c('FirstLine',{attrs:{\"current-view\":_vm.currentView}}),(_vm.isAppointmentPage)?_c('StepperChecklist',{staticClass:\"header__stepper\"}):_vm._e()],1)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"menu\"},[_c('div',{staticClass:\"header\"},[(!_vm.currentPage('Home'))?_c('button',{staticClass:\"first-line__goBack\",class:{ 'disabled': _vm.sendAppointment },on:{\"click\":function($event){$event.preventDefault();return _vm.backToComponent()}}},[_c('icon',{staticClass:\"arrow-prev\",attrs:{\"icon\":\"ArrowPrev\"}})],1):_vm._e(),_c('div',{staticClass:\"first-line\",class:{ 'first-line-isHome': _vm.currentPage('Home') }},[_c('router-link',{staticClass:\"first-line__homeLink\",attrs:{\"to\":{ name: 'Home' },\"aria-label\":\"App Logo with link to home\"},on:{\"click\":function($event){return _vm.redirectToHome()}}},[_c('img',{attrs:{\"src\":require(`@/assets/theme/${_vm.realm}/icons/logo-cidade.svg`),\"alt\":\"Prefeitura de Sua Cidade\"}})]),_c('div',{staticClass:\"header-options\"},[_c('div',{staticClass:\"header-options__item\"},[_c('router-link',{class:{ 'header-options__item-current': _vm.currentPage('Appointment') },attrs:{\"to\":{ name: 'Appointment' }}},[_vm._v(\" \"+_vm._s(_vm.$t('FOOTER.MENU.second'))+\" \")])],1),_c('div',{staticClass:\"header-options__item\"},[_c('router-link',{class:{ 'header-options__item-current': _vm.currentPage('ConsultaAgendamento') },attrs:{\"to\":{ name: 'ConsultaAgendamento' }}},[_vm._v(\" \"+_vm._s(_vm.$t('FOOTER.MENU.first'))+\" \")])],1),(_vm.linkMultiAgendamento.length > 0)?_c('div',{staticClass:\"header-options__item\"},[_c('a',{attrs:{\"href\":_vm.linkMultiAgendamento,\"target\":\"__blank\"}},[_vm._v(\" \"+_vm._s(_vm.$t('FOOTER.MENU.third'))+\" \")])]):_vm._e(),_c('div',{staticClass:\"header-options__item\"},[_c('router-link',{class:{ 'header-options__item-current': _vm.currentPage('FAQ') },attrs:{\"to\":{ name: 'FAQ' }}},[_vm._v(\" \"+_vm._s(_vm.$t('FOOTER.ABOUT.third'))+\" \")])],1)])],1),(_vm.userIsLogged)?_c('div',{staticClass:\"header-user\",on:{\"click\":function($event){return _vm.toggleMenu()}}},[_c('div',{staticClass:\"header-user__textBox\",style:({ 'display': _vm.currentPage('Home') ? 'block' : '' })},[_c('div',{staticClass:\"header-user__name\"},[_vm._v(\" Olá, \"+_vm._s(_vm.firstName)+\" \")]),(_vm.userGender && _vm.userZipcode)?_c('div',{staticClass:\"header-user__unity\"},[_vm._v(\" \"+_vm._s(_vm.unityName)+\" \")]):_vm._e()]),_c('UserAvatarPlaceholder',{attrs:{\"image-user\":_vm.userData.avatar}})],1):_c('div',{staticClass:\"first-line__notLoggedDiv\"},[_c('button',{staticClass:\"login\",on:{\"click\":function($event){$event.preventDefault();return _vm.userLogin()}}},[_vm._v(\" Entrar na conta \"),_c('icon',{attrs:{\"icon\":\"UserOutline\"}})],1)]),_c('div',{staticClass:\"menu-open\",class:{ 'menu-open--visible': _vm.menuState }},[(_vm.isWebView)?_c('a',{staticClass:\"menu-open__link\",attrs:{\"href\":_vm.minhaContaUrl,\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_c('span',{staticClass:\"menu-open__link__text\"},[_vm._v(\" Minha Conta \")]),_c('icon',{staticClass:\"menu-open__link__icon\",attrs:{\"icon\":\"ExternalLink\"}})],1):_vm._e(),_c('router-link',{staticClass:\"menu-open__link\",attrs:{\"to\":{ name: 'ConsultaAgendamento' }},nativeOn:{\"click\":function($event){return _vm.closeMenu.apply(null, arguments)}}},[_c('span',{staticClass:\"menu-open__link__text\"},[_vm._v(\" Meus agendamentos \")])]),_c('router-link',{staticClass:\"menu-open__link\",attrs:{\"type\":\"button\",\"to\":{ name: 'VinculacaoOnline' }},nativeOn:{\"click\":function($event){return _vm.closeMenu.apply(null, arguments)}}},[_vm._v(\" Vinculação Online \")]),(_vm.isWebView)?_c('a',{staticClass:\"menu-open__link\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.logout()}}},[_c('span',{staticClass:\"menu-open__link__text\"},[_vm._v(\" Sair \")])]):_vm._e()],1)]),_c('BottomNavigation',{attrs:{\"current-view\":_vm.currentView}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('footer',[_c('div',{staticClass:\"bottom-navigation\"},_vm._l((_vm.bottomButtons),function(button,index){return _c('div',{key:index},[_c(button.type,{tag:\"component\",attrs:{\"to-route-name\":button.toRouteName,\"route-button-active\":_vm.currentPage(button.toRouteName),\"route-button-icon\":_vm.verifyButtonIcon(_vm.currentPage(button.toRouteName), button.iconFilled, button.iconOutline),\"route-text\":button.text,\"profile-icon\":_vm.verifyButtonIcon(_vm.menuMobileState, button.iconFilled, button.iconOutline),\"profile-text\":_vm.verifyProfileText,\"menu-mobile-state\":_vm.menuMobileState},on:{\"handleRoutes\":function($event){return _vm.closeMobileMenu()},\"handleProfile\":function($event){return _vm.verifyUserIsLogged()}}})],1)}),0),(_vm.showModal)?_c('ErrorModal',{attrs:{\"title\":_vm.modalData.title,\"icon\":_vm.modalData.icon,\"message\":_vm.modalData.message,\"btn-text\":\"Ver Unidades\"},on:{\"toogleModal\":function($event){_vm.showModal = false},\"remakeRequest\":_vm.redirectToUnities}}):_vm._e(),_c('div',{staticClass:\"menu-mobile\",class:{ show: _vm.menuMobileState }},[_c('div',{staticClass:\"user\"},[_c('div',{staticClass:\"menu-mobile__close\"},[_c('div',{staticClass:\"icon-close\",on:{\"click\":_vm.closeMobileMenu}},[_c('icon',{attrs:{\"icon\":\"Close\"}})],1)]),_c('div',{staticClass:\"user-data\"},[(_vm.userGender && _vm.userZipcode)?_c('div',{staticClass:\"user-data__unity\",class:{ open: _vm.unityOpen }},[_c('div',{staticClass:\"user-data__unity__card\",on:{\"click\":_vm.openUnityCard}},[_c('div',{staticClass:\"user-data__unity__card--title\"},[(!_vm.unityOpen)?_c('icon',{staticClass:\"user-data__unity__card--title__icon\",attrs:{\"icon\":_vm.unityData.icon}}):_vm._e(),_c('p',[_vm._v(\" \"+_vm._s(_vm.unityData.message1)+\" \"),_c('span',[_vm._v(\" \"+_vm._s(_vm.unityData.message2)+\" \")]),_vm._v(\" \"+_vm._s(_vm.unityData.message3)+\" \")])],1),_c('icon',{attrs:{\"icon\":_vm.unityData.arrow}})],1),(_vm.unityOpen)?_c('div',{staticClass:\"user-data__unity__details\"},[_c('p',{staticClass:\"user-data__unity__details--text\"},[_vm._v(\" \"+_vm._s(_vm.unityData.phoneNumber)+\" \")]),(_vm.unityData.mapLink)?_c('ButtonComponent',{staticClass:\"user-data__unity__details--link\",attrs:{\"btn-style\":\"tertiary\",\"href\":_vm.unityData.mapLink,\"text\":\"Ver no mapa\",\"aria-label\":\"Button that redirect to map URL\"}}):_vm._e(),_c('div',{staticClass:\"user-data__unity__details--info\",on:{\"click\":function($event){_vm.showModal = true}}},[_c('icon',{attrs:{\"icon\":\"Info\"}}),_c('p',[_vm._v(\" A unidade de Saúde está errada? \")])],1)],1):_vm._e()]):_vm._e(),_c('div',{staticClass:\"user-data__avatarBox\"},[_c('user-avatar-placeholder',{attrs:{\"image-user\":_vm.userData.avatar,\"image-size\":\"large\"}}),_c('p',{staticClass:\"user-data__name\"},[_vm._v(\" Olá, \"+_vm._s(_vm.firstName)+\" \")])],1),_vm._l((_vm.menuButtons),function(menuButton,index){return _c('div',{key:index,staticClass:\"menu-options\"},[(menuButton.show)?_c(menuButton.type,{tag:\"component\",attrs:{\"text\":menuButton.text,\"icon\":menuButton.icon,\"route-name\":menuButton.routeName,\"href\":menuButton.href,\"is-new\":menuButton.isNew},on:{\"close-menu\":_vm.closeMobileMenu,\"link-actions\":menuButton.linkAction}}):_vm._e()],1)})],2)])])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('router-link',{staticClass:\"bottom-navigation__item\",class:{ 'bottom-navigation__item--active': _vm.routeButtonActive },attrs:{\"to\":{ name: _vm.toRouteName }},nativeOn:{\"click\":function($event){return _vm.handleRoutes.apply(null, arguments)}}},[_c('icon',{attrs:{\"icon\":_vm.routeButtonIcon,\"width\":\"24\",\"height\":\"24\"}}),_c('p',{staticClass:\"bottom-navigation__text\"},[_vm._v(\" \"+_vm._s(_vm.routeText)+\" \")])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <router-link\n class=\"bottom-navigation__item\"\n :class=\"{ 'bottom-navigation__item--active': routeButtonActive }\"\n :to=\"{ name: toRouteName }\"\n @click.native=\"handleRoutes\"\n >\n <icon\n :icon=\"routeButtonIcon\"\n width=\"24\"\n height=\"24\"\n />\n <p class=\"bottom-navigation__text\">\n {{ routeText }}\n </p>\n </router-link>\n</template>\n<script>\n export default {\n name: 'BottomNavigationButtons',\n\n props: {\n toRouteName: {\n type: String,\n required: true\n },\n routeText: {\n type: String,\n required: true\n },\n routeButtonIcon: {\n type: String,\n required: true\n },\n routeButtonActive: {\n type: Boolean,\n default: false\n },\n },\n methods: {\n handleRoutes() {\n this.$emit('handleRoutes');\n },\n },\n };\n</script>\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BottomNavigationRouteButton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BottomNavigationRouteButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BottomNavigationRouteButton.vue?vue&type=template&id=47aefa8d&\"\nimport script from \"./BottomNavigationRouteButton.vue?vue&type=script&lang=js&\"\nexport * from \"./BottomNavigationRouteButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('button',{staticClass:\"bottom-navigation__item\",class:{ 'bottom-navigation__item--active': _vm.menuMobileState },on:{\"click\":_vm.handleProfile}},[_c('icon',{attrs:{\"icon\":_vm.profileIcon,\"width\":\"24\",\"height\":\"24\"}}),_c('p',{staticClass:\"bottom-navigation__text\"},[_vm._v(\" \"+_vm._s(_vm.profileText)+\" \")])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <button\n class=\"bottom-navigation__item\"\n :class=\"{ 'bottom-navigation__item--active': menuMobileState }\"\n @click=\"handleProfile\"\n >\n <icon\n :icon=\"profileIcon\"\n width=\"24\"\n height=\"24\"\n />\n <p class=\"bottom-navigation__text\">\n {{ profileText }}\n </p>\n </button>\n</template>\n\n<script>\n export default {\n name: 'ProfileButton',\n props: {\n profileText: {\n type: String,\n required: true\n },\n profileIcon: {\n type: String,\n required: true\n },\n menuMobileState: {\n type: Boolean,\n default: false\n },\n },\n methods: {\n handleProfile(){\n this.$emit('handleProfile');\n }\n }\n\n };\n</script>\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BottomNavigationProfileButton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BottomNavigationProfileButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BottomNavigationProfileButton.vue?vue&type=template&id=b507a6c6&\"\nimport script from \"./BottomNavigationProfileButton.vue?vue&type=script&lang=js&\"\nexport * from \"./BottomNavigationProfileButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"menu-options__item\"},[_c('a',{attrs:{\"href\":_vm.href,\"target\":_vm.linkTarget,\"rel\":\"noopener noreferrer\"},on:{\"click\":_vm.linkActions}},[_c('div',{staticClass:\"menu-options__item-content\"},[_c('icon',{staticClass:\"menu-options__item-icon\",attrs:{\"icon\":_vm.icon}}),_vm._v(\" \"+_vm._s(_vm.text)+\" \")],1),_c('icon',{staticClass:\"menu-options__item-arrow\",attrs:{\"icon\":\"ArrowStepper\"}})],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"menu-options__item\">\n <a\n :href=\"href\"\n :target=\"linkTarget\"\n rel=\"noopener noreferrer\"\n @click=\"linkActions\"\n >\n <div class=\"menu-options__item-content\">\n <icon\n class=\"menu-options__item-icon\"\n :icon=\"icon\"\n />\n {{ text }}\n </div>\n <icon\n icon=\"ArrowStepper\"\n class=\"menu-options__item-arrow\"\n />\n </a>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'MenuMobileLink',\n props: {\n href: {\n type: String,\n required: false,\n default: '#'\n },\n text: {\n type: String,\n required: true\n },\n icon: {\n type: String,\n required: true\n }\n },\n computed: {\n linkTarget() {\n return this.href === '#' ? '_self' : '_blank';\n }\n },\n methods: {\n linkActions() {\n this.$emit('link-actions');\n }\n }\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.menu-options__item-icon {\n width: 26px;\n}\n</style>","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MenuMobileLink.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MenuMobileLink.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MenuMobileLink.vue?vue&type=template&id=41ce1b13&scoped=true&\"\nimport script from \"./MenuMobileLink.vue?vue&type=script&lang=js&\"\nexport * from \"./MenuMobileLink.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MenuMobileLink.vue?vue&type=style&index=0&id=41ce1b13&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"41ce1b13\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"menu-options__item\"},[_c('router-link',{attrs:{\"to\":{ name: _vm.routeName }},nativeOn:{\"click\":function($event){return _vm.closeMobileMenu.apply(null, arguments)}}},[_c('div',{staticClass:\"menu-options__item-content\"},[_c('icon',{staticClass:\"menu-options__item-icon\",attrs:{\"icon\":_vm.icon,\"width\":\"24\",\"height\":\"24\"}}),_vm._v(\" \"+_vm._s(_vm.text)+\" \")],1),(_vm.isNew)?_c('span',{staticClass:\"brand-new\"},[_vm._v(\" Novo! \")]):_vm._e(),_c('icon',{staticClass:\"menu-options__item-arrow\",attrs:{\"icon\":\"ArrowStepper\"}})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"menu-options__item\">\n <router-link\n :to=\"{ name: routeName }\"\n @click.native=\"closeMobileMenu\"\n >\n <div class=\"menu-options__item-content\">\n <icon\n class=\"menu-options__item-icon\"\n :icon=\"icon\"\n width=\"24\"\n height=\"24\"\n />\n {{ text }}\n </div>\n <span\n v-if=\"isNew\"\n class=\"brand-new\"\n >\n Novo!\n </span>\n <icon\n icon=\"ArrowStepper\"\n class=\"menu-options__item-arrow\"\n />\n </router-link>\n </div>\n</template>\n\n<script>\n export default {\n name: 'MenuMobileRoute',\n props: {\n text: {\n type: String,\n required: true\n },\n icon: {\n type: String,\n required: true\n },\n routeName: {\n type: String,\n required: true\n },\n isNew: {\n type: Boolean,\n required: false,\n default: () => false\n }\n },\n methods: {\n closeMobileMenu() {\n this.$emit('close-menu');\n }\n }\n };\n</script>\n\n<style lang=\"scss\" scoped>\n.brand-new {\n margin-left: auto;\n margin-right: 1rem;\n background-color: $primary;\n font-weight: $font-bold;\n color: $white;\n padding: 0 0.75rem;\n border-radius: 1.5rem;\n}\n</style>\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MenuMobileRoute.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MenuMobileRoute.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MenuMobileRoute.vue?vue&type=template&id=56b4306d&scoped=true&\"\nimport script from \"./MenuMobileRoute.vue?vue&type=script&lang=js&\"\nexport * from \"./MenuMobileRoute.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MenuMobileRoute.vue?vue&type=style&index=0&id=56b4306d&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"56b4306d\",\n null\n \n)\n\nexport default component.exports","<template>\n <footer>\n <div class=\"bottom-navigation\">\n <div\n v-for=\"(button, index) in bottomButtons\"\n :key=\"index\"\n >\n <component\n :is=\"button.type\"\n :to-route-name=\"button.toRouteName\"\n :route-button-active=\"currentPage(button.toRouteName)\"\n :route-button-icon=\"verifyButtonIcon(currentPage(button.toRouteName), button.iconFilled, button.iconOutline)\"\n :route-text=\"button.text\"\n :profile-icon=\"verifyButtonIcon(menuMobileState, button.iconFilled, button.iconOutline)\"\n :profile-text=\"verifyProfileText\"\n :menu-mobile-state=\"menuMobileState\"\n @handleRoutes=\"closeMobileMenu()\"\n @handleProfile=\"verifyUserIsLogged()\"\n />\n </div>\n </div>\n\n <ErrorModal\n v-if=\"showModal\"\n :title=\"modalData.title\"\n :icon=\"modalData.icon\"\n :message=\"modalData.message\"\n btn-text=\"Ver Unidades\"\n @toogleModal=\"showModal = false\"\n @remakeRequest=\"redirectToUnities\"\n />\n\n <div\n class=\"menu-mobile\"\n :class=\"{ show: menuMobileState }\"\n >\n <div class=\"user\">\n <div class=\"menu-mobile__close\">\n <div\n class=\"icon-close\"\n @click=\"closeMobileMenu\"\n >\n <icon icon=\"Close\" />\n </div>\n </div>\n\n <div class=\"user-data\">\n <div\n v-if=\"userGender && userZipcode\"\n class=\"user-data__unity\"\n :class=\"{ open: unityOpen }\"\n >\n <div\n class=\"user-data__unity__card\"\n @click=\"openUnityCard\"\n >\n <div class=\"user-data__unity__card--title\">\n <icon\n v-if=\"!unityOpen\"\n :icon=\"unityData.icon\"\n class=\"user-data__unity__card--title__icon\"\n />\n <p>\n {{ unityData.message1 }}\n <span>\n {{ unityData.message2 }}\n </span>\n {{ unityData.message3 }}\n </p>\n </div>\n <icon :icon=\"unityData.arrow\" />\n </div>\n\n <div\n v-if=\"unityOpen\"\n class=\"user-data__unity__details\"\n >\n <p class=\"user-data__unity__details--text\">\n {{ unityData.phoneNumber }}\n </p>\n\n <ButtonComponent\n v-if=\"unityData.mapLink\"\n btn-style=\"tertiary\"\n :href=\"unityData.mapLink\"\n text=\"Ver no mapa\"\n class=\"user-data__unity__details--link\"\n aria-label=\"Button that redirect to map URL\"\n />\n <div\n class=\"user-data__unity__details--info\"\n @click=\"showModal = true\"\n >\n <icon icon=\"Info\" />\n <p>\n A unidade de Saúde está errada?\n </p>\n </div>\n </div>\n </div>\n\n <div class=\"user-data__avatarBox\">\n <user-avatar-placeholder\n :image-user=\"userData.avatar\"\n image-size=\"large\"\n />\n <p class=\"user-data__name\">\n Olá, {{ firstName }}\n </p>\n </div>\n <div\n v-for=\"(menuButton, index) in menuButtons\"\n :key=\"index\"\n class=\"menu-options\"\n >\n <component\n :is=\"menuButton.type\"\n v-if=\"menuButton.show\"\n :text=\"menuButton.text\"\n :icon=\"menuButton.icon\"\n :route-name=\"menuButton.routeName\"\n :href=\"menuButton.href\"\n :is-new=\"menuButton.isNew\"\n @close-menu=\"closeMobileMenu\"\n @link-actions=\"menuButton.linkAction\"\n />\n </div>\n </div>\n </div>\n </div>\n </footer>\n</template>\n\n<script>\nimport { mapActions, mapGetters } from 'vuex';\nimport icon from '@/components/base/svg/SVG.vue';\nimport RouteButton from '@/components/common/BottomNavigationRouteButton.vue';\nimport ProfileButton from '@/components/common/BottomNavigationProfileButton.vue';\nimport MobileLink from '@/components/common/MenuMobileLink.vue';\nimport MobileRoute from '@/components/common/MenuMobileRoute.vue';\nimport ErrorModal from '@/components/appointment/modal/ErrorModal.vue';\nimport UserAvatarPlaceholder from './UserAvatarPlaceholder.vue';\n\nexport default {\n name: 'BottomNavigation',\n components: {\n RouteButton,\n ProfileButton,\n MobileLink,\n MobileRoute,\n icon,\n ErrorModal,\n UserAvatarPlaceholder\n },\n props: {\n currentView: {\n type: String,\n required: true\n }\n },\n\n data(){\n return{\n menuMobileState: false,\n bottomButtons: {\n Home: {\n text: 'InÃcio',\n toRouteName: 'Home',\n iconOutline: 'HomeOutline',\n iconFilled: 'HomeFilled',\n type: 'RouteButton',\n },\n Appointment: {\n text: 'Serviços',\n toRouteName: 'Appointment',\n iconOutline: 'ServiceOutline',\n iconFilled: 'ServiceFilled',\n type: 'RouteButton',\n },\n ConsultaAgendamento: {\n text: 'Acompanhar',\n toRouteName: 'ConsultaAgendamento',\n iconOutline: 'SolicitationOutline',\n iconFilled: 'SolicitationFilled',\n type: 'RouteButton',\n },\n ProfileButton: {\n iconOutline: 'UserOutline',\n iconFilled: 'UserFilled',\n type: 'ProfileButton',\n },\n },\n menuButtons: {\n MinhaConta: {},\n // References the element position in object\n MeusAgendamentos: {\n text: 'Meus agendamentos',\n routeName: 'ConsultaAgendamento',\n icon: 'SolicitationOutline',\n type: 'MobileRoute',\n show: true,\n linkAction: '',\n },\n // References the element position in object\n onlineRelation: {\n text: 'Vinculação Online',\n routeName: 'VinculacaoOnline',\n icon: 'HospitalSolid',\n type: 'MobileRoute',\n show: true,\n linkAction: '',\n isNew: true,\n },\n MultiAgendamento: {},\n Vacina: {},\n FAQ: {\n text: 'Dúvidas frequentes',\n routeName: 'FAQ',\n icon: 'FAQ',\n type: 'MobileRoute',\n show: true,\n linkAction: '',\n },\n Sair: {},\n },\n unityOpen: false,\n showModal: false,\n };\n },\n\n computed: {\n ...mapGetters([\n 'userIsLogged',\n 'userData',\n 'hasUnity',\n 'verifyClientId',\n 'userGender',\n 'userZipcode'\n ]),\n\n isWebView() {\n return this.verifyClientId;\n },\n\n firstName(){\n const splitedName = this.userData.name ? this.userData.name.split(' ') : null;\n\n return splitedName !== null ? splitedName[0] : '';\n },\n\n minhaContaUrl(){\n return process.env.VUE_APP_MINHACONTA_ROUTE;\n },\n\n // \\/ This hole function gonna be deleted after others features come out, on feature sc-24372 \\/\n linkMultiAgendamento(){ return this.$t('OTHER.multiAgendamento'); },\n // /\\ This hole function gonna be deleted after others features come out, on feature sc-24372 /\\\n covidText() { return this.$t('FOOTER.MENU.third'); },\n verifyProfileText() { return this.userIsLogged ? 'Perfil' : 'Entrar'; },\n\n unityData() {\n if (this.hasUnity) {\n return {\n icon: 'HospitalOutline',\n message1: 'Você está vinculado à :',\n message2: `Unidade de Saúde de ${this.hasUnity.nome}`,\n message3: null,\n phoneNumber: this.hasUnity.telefone,\n mapLink: this.hasUnity.link_maps,\n arrow: 'ArrowStepper'\n };\n } else {\n return {\n icon: 'Caution',\n message1: 'Você',\n message2: 'não está vinculado',\n message3: 'a uma Unidade de Saúde.',\n phoneNumber: null,\n mapLink: null,\n arrow: 'ArrowRight'\n };\n }\n },\n\n modalData() {\n if (this.hasUnity) {\n return {\n icon: 'InfoOutlineBig',\n title: 'A Unidade de Saúde está errada?',\n message: 'Caso a unidade que você foi associado esteja errada, se dirija a UBS mais próxima com comprovante de residência e documentos pessoais e solicite a troca.'\n };\n } else {\n return {\n title: 'Atenção!',\n icon: 'WarningTriangle',\n message: 'Você precisa estar vinculado a uma Unidade de Saúde. Recomendamos que vá a mais próxima para orientações.'\n };\n }\n },\n },\n\n created() {\n this.$root.$refs.Footer = this;\n // \\/ Add computing properties with $set in menu buttons list to generate in mobile menu \\/\n this.$set(this.menuButtons, 'MinhaConta', {\n text: 'Minha conta',\n href: this.minhaContaUrl,\n icon: 'Account',\n type: 'MobileLink',\n show: this.isWebView,\n linkAction: '',\n });\n this.$set(this.menuButtons, 'Sair', {\n text: 'Sair',\n icon: 'Logout',\n type: 'MobileLink',\n linkAction: this.logout,\n show: this.isWebView,\n });\n this.$set(this.menuButtons, 'MultiAgendamento', {\n text: this.covidText,\n href: this.linkMultiAgendamento,\n icon: 'TestCovid',\n type: 'MobileLink',\n show: true,\n linkAction: '',\n });\n // /\\ Add computing properties with $set in menu buttons list to generate in mobile menu /\\\n },\n\n methods: {\n ...mapActions([\n 'loginKeycloak',\n 'userLogout',\n ]),\n\n currentPage(page){\n return this.currentView === page && !this.menuMobileState;\n },\n\n toggleMobileMenu(){\n window.scrollTo(0, 0);\n document.querySelector('body').classList.toggle('fixed');\n this.menuMobileState = !this.menuMobileState;\n },\n\n closeMobileMenu(){\n if(!this.menuMobileState) return ;\n document.querySelector('body').classList.remove('fixed');\n this.menuMobileState = false;\n },\n\n async userLogin(){\n try {\n await this.loginKeycloak();\n } catch (error) {\n await this.$router.replace({ name: 'Error' }).catch(() => {});\n }\n },\n\n async logout(){\n this.closeMobileMenu();\n await this.userLogout();\n await this.$router.replace({ name: 'Home', query: {} }).catch(() => {});\n },\n verifyUserIsLogged(){\n this.userIsLogged ? this.toggleMobileMenu() : this.userLogin();\n },\n verifyButtonIcon(mobileState, filled, outline){\n return mobileState ? filled : outline;\n },\n\n openUnityCard() {\n if (this.hasUnity) {\n this.unityOpen = !this.unityOpen;\n } else {\n this.showModal = true;\n }\n },\n\n redirectToUnities() {\n this.$router.push('/lista-de-unidades');\n this.closeMobileMenu();\n }\n }\n};\n</script>\n\n<style lang=\"scss\">\n/* These styles are not scoped because two others components are using these styles */\n.bottom-navigation {\n display: flex;\n position: fixed;\n flex-direction: row;\n justify-content: space-between;\n background-color: $gray-300;\n\n @include make-accessible($gray-300, $primary-accessibility, background-color);\n\n width: 100%;\n z-index: 999;\n bottom: 0;\n padding: 0.625rem 2rem;\n margin: 0 -4%;\n align-items: center;\n border-top: 1px solid #d3d3d3;\n\n @include screen(phone-up) {\n display: flex;\n }\n\n @include screen(tablet-up) {\n display: none;\n }\n\n &__item {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n // color: $gray-share-button;\n\n @include make-accessible($gray-share-button, $white, color);\n\n &::v-deep svg path g g {\n fill: red !important;\n }\n\n p {\n margin-top: 0.2rem;\n }\n\n &--active {\n color: $primary;\n\n @include make-accessible($primary, $tertiary-accessibility, color);\n }\n }\n\n &__icon {\n width: 2rem;\n }\n\n &__text {\n font-size: $text-xs;\n text-align: center;\n }\n}\n\n.menu-mobile {\n display: flex;\n flex-direction: column;\n position: fixed;\n z-index: 10;\n width: 100%;\n height: calc(100% - 66px);\n padding: 1rem;\n top: 0;\n left: -100%;\n background: $gray-300;\n\n @include make-accessible($gray-300, $primary-accessibility, background);\n\n transition: left 0.4s ease-in-out;\n justify-content: flex-start;\n overflow: scroll;\n\n &.show {\n left: 0;\n }\n\n &__close {\n display: flex;\n justify-content: flex-end;\n\n .icon-close {\n opacity: 0.5;\n\n @include make-accessible(#464648, $white, color);\n }\n }\n\n .menu-options {\n width: 100%;\n\n @include make-accessible(#464648, $tertiary-accessibility, color);\n\n &__item {\n border-bottom: 0.5px solid #d5d5d5;\n padding: 1.5rem 0;\n\n a {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n font-size: $text-sm;\n }\n\n &-content {\n display: flex;\n flex-direction: row;\n\n svg {\n margin-right: 1rem;\n color: #3a3a3a;\n\n @include make-accessible(#3a3a3a, $tertiary-accessibility, color);\n //\n\n &::v-deep g g path {\n @include make-accessible(#3a3a3a, $tertiary-accessibility, color);\n }\n\n width: 22px;\n }\n }\n\n &-arrow {\n transform: rotate(-90deg);\n }\n }\n }\n\n .user-data {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n margin-top: 2rem;\n\n &__avatarBox {\n display: flex;\n align-items: center;\n margin-bottom: 1rem;\n }\n\n &__avatar {\n width: 60px;\n height: 60px;\n border-radius: 50%;\n }\n\n &__name {\n font-family: $montserrat-bold;\n font-size: $text-base;\n margin-left: 0.5rem;\n\n @include make-accessible(#464648, $white, color);\n }\n\n &__unity {\n width: 100%;\n display: flex;\n justify-content: space-between;\n background-color: white;\n\n @include make-accessible($white, $secondary-accessibility, background-color);\n\n margin-bottom: 2.5rem;\n padding: 1rem;\n border-radius: 0.5rem;\n transition: all 0.3s ease;\n\n &__card {\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n\n @include make-accessible(#464648, $white, color);\n\n &--title {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n gap: 0.9rem;\n margin-right: 1rem;\n\n /* stylelint-disable-next-line no-descending-specificity */\n &__icon::v-deep path {\n fill: red !important;\n }\n\n p {\n font-size: $text-sm;\n\n span {\n font-weight: $font-bold;\n }\n }\n }\n }\n\n &.open {\n flex-direction: column;\n transition: all 0.3s ease;\n\n span {\n font-size: $text-lg;\n }\n\n .user-data__unity__details {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: 0.875rem;\n font-size: 0.875rem;\n\n &--link {\n span {\n font-size: 0.875rem;\n }\n }\n\n &--info {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n gap: 0.5rem;\n background-color: #f0f0f0;\n\n @include make-accessible(#f0f0f0, $white, background-color);\n\n padding: 0.5rem;\n border-radius: 1rem;\n font-size: 0.65rem;\n\n svg {\n width: 18px;\n }\n }\n }\n }\n }\n }\n}\n</style>\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BottomNavigation.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BottomNavigation.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BottomNavigation.vue?vue&type=template&id=6b5e3234&\"\nimport script from \"./BottomNavigation.vue?vue&type=script&lang=js&\"\nexport * from \"./BottomNavigation.vue?vue&type=script&lang=js&\"\nimport style0 from \"./BottomNavigation.vue?vue&type=style&index=0&id=6b5e3234&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","<template>\n <div class=\"menu\">\n <div class=\"header\">\n <button\n v-if=\"!currentPage('Home')\"\n class=\"first-line__goBack\"\n :class=\"{ 'disabled': sendAppointment }\"\n @click.prevent=\"backToComponent()\"\n >\n <icon\n icon=\"ArrowPrev\"\n class=\"arrow-prev\"\n />\n </button>\n <div\n class=\"first-line\"\n :class=\"{ 'first-line-isHome': currentPage('Home') }\"\n >\n <router-link\n :to=\"{ name: 'Home' }\"\n class=\"first-line__homeLink\"\n aria-label=\"App Logo with link to home\"\n @click=\"redirectToHome()\"\n >\n <img\n :src=\"require(`@/assets/theme/${realm}/icons/logo-cidade.svg`)\"\n alt=\"Prefeitura de Sua Cidade\"\n >\n </router-link>\n <div class=\"header-options\">\n <div class=\"header-options__item\">\n <router-link\n :class=\"{ 'header-options__item-current': currentPage('Appointment') }\"\n :to=\"{ name: 'Appointment' }\"\n >\n {{ $t('FOOTER.MENU.second') }}\n </router-link>\n </div>\n <div class=\"header-options__item\">\n <router-link\n :class=\"{ 'header-options__item-current': currentPage('ConsultaAgendamento') }\"\n :to=\"{ name: 'ConsultaAgendamento' }\"\n >\n {{ $t('FOOTER.MENU.first') }}\n </router-link>\n </div>\n <!-- \\/ This hole div gonna be deleted after others features come out, on feature sc-24372 \\/ -->\n <div\n v-if=\"linkMultiAgendamento.length > 0\"\n class=\"header-options__item\"\n >\n <a\n :href=\"linkMultiAgendamento\"\n target=\"__blank\"\n >\n {{ $t('FOOTER.MENU.third') }}\n </a>\n </div>\n <!-- /\\ This hole div gonna be deleted after others features come out, on feature sc-24372 /\\ -->\n <div class=\"header-options__item\">\n <router-link\n :class=\"{ 'header-options__item-current': currentPage('FAQ') }\"\n :to=\"{ name: 'FAQ' }\"\n >\n {{ $t('FOOTER.ABOUT.third') }}\n </router-link>\n </div>\n </div>\n </div>\n <div\n v-if=\"userIsLogged\"\n class=\"header-user\"\n @click=\"toggleMenu()\"\n >\n <div\n :style=\"{ 'display': currentPage('Home') ? 'block' : '' }\"\n class=\"header-user__textBox\"\n >\n <div\n class=\"header-user__name\"\n >\n Olá, {{ firstName }}\n </div>\n <div\n v-if=\"userGender && userZipcode\"\n class=\"header-user__unity\"\n >\n {{ unityName }}\n </div>\n </div>\n <UserAvatarPlaceholder :image-user=\"userData.avatar\" />\n </div>\n <div\n v-else\n class=\"first-line__notLoggedDiv\"\n >\n <button\n class=\"login\"\n @click.prevent=\"userLogin()\"\n >\n Entrar na conta\n <icon\n icon=\"UserOutline\"\n />\n </button>\n </div>\n <div\n class=\"menu-open\"\n :class=\"{ 'menu-open--visible': menuState }\"\n >\n <a\n v-if=\"isWebView\"\n :href=\"minhaContaUrl\"\n class=\"menu-open__link\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n <span class=\"menu-open__link__text\">\n Minha Conta\n </span>\n <icon\n class=\"menu-open__link__icon\"\n icon=\"ExternalLink\"\n />\n </a>\n <router-link\n :to=\"{ name: 'ConsultaAgendamento' }\"\n class=\"menu-open__link\"\n @click.native=\"closeMenu\"\n >\n <span class=\"menu-open__link__text\">\n Meus agendamentos\n </span>\n </router-link>\n <router-link\n class=\"menu-open__link\"\n type=\"button\"\n :to=\"{ name: 'VinculacaoOnline' }\"\n @click.native=\"closeMenu\"\n >\n Vinculação Online\n </router-link>\n <a\n v-if=\"isWebView\"\n href=\"#\"\n class=\"menu-open__link\"\n @click.prevent=\"logout()\"\n >\n <span class=\"menu-open__link__text\">\n Sair\n </span>\n </a>\n </div>\n </div>\n <BottomNavigation\n :current-view=\"currentView\"\n />\n </div>\n</template>\n\n<script>\n// Vuex\nimport { mapActions, mapGetters } from 'vuex';\nimport icon from '@/components/base/svg/SVG.vue';\nimport BottomNavigation from '@/components/common/BottomNavigation.vue';\nimport UserAvatarPlaceholder from '@/components/common/UserAvatarPlaceholder';\n\nexport default {\n name: 'FirstLine',\n components: {\n icon,\n BottomNavigation,\n UserAvatarPlaceholder\n },\n\n inject: ['displayModal'],\n\n props: {\n currentView: {\n type: String,\n required: true\n }\n },\n\n\n data() {\n return {\n menuState: false,\n highContrastOn: false,\n realm: process.env.VUE_APP_KEYCLOAK_REALM === 'Uppersoft' ? 'upcities' : process.env.VUE_APP_KEYCLOAK_REALM\n };\n },\n\n computed: {\n ...mapGetters([\n 'userIsLogged',\n 'backToWhere',\n 'sendAppointment',\n 'userData',\n 'hasUnity',\n 'userGender',\n 'verifyClientId',\n 'userZipcode',\n ]),\n\n isWebView() {\n return this.verifyClientId;\n },\n\n firstName() {\n const splitedName = this.userData.name ? this.userData.name.split(' ') : null;\n\n return splitedName !== null ? splitedName[0] : '';\n },\n\n minhaContaUrl(){\n return process.env.VUE_APP_MINHACONTA_ROUTE;\n },\n\n unityName() {\n return this.hasUnity ? this.hasUnity.nome : 'Sem vÃnculo a uma unidade';\n },\n\n // \\/ This hole function gonna be deleted after others features come out, on feature sc-24372 \\/\n linkMultiAgendamento() {\n return this.$t('OTHER.multiAgendamento');\n },\n // /\\ This hole ancor gonna be deleted after others features come out, on feature sc-24372 /\\\n },\n\n mounted() {\n window.addEventListener('click', this.eventCloseMenu);\n // Commented while accessibility bar is hidden\n // this.highContrastVerifier();\n },\n\n beforeDestroy () {\n document.removeEventListener('click', this.eventCloseMenu);\n },\n\n methods: {\n ...mapActions([\n 'userLogout',\n 'registerKeycloak',\n 'loginKeycloak',\n 'routeStepChange'\n ]),\n\n highContrastVerifier() {\n let highContrast = document.querySelector('[data-id=\"highContrast\"]');\n\n highContrast.addEventListener('change', () => {\n if (highContrast.checked) {\n this.highContrastOn = true;\n const resetAccessibility = document.querySelector('[data-id=\"resetAccessibility\"]');\n\n resetAccessibility.addEventListener('click', () => {\n this.highContrastOn = false;\n });\n } else {\n this.highContrastOn = false;\n }\n });\n },\n\n async logout(){\n this.closeMenu();\n await this.$router.replace({ name: 'Home', query: {} }).catch(() => {});\n await this.userLogout();\n },\n\n async userLogin(){\n try {\n await this.loginKeycloak();\n } catch (error) {\n await this.$router.replace({ name: 'Error' }).catch(() => {});\n }\n },\n\n backToComponent() {\n this.$root.$refs.Footer.closeMobileMenu();\n if(this.$route.name === 'Appointment')\n this.routeStepChange(true);\n else\n return this.$router.go(-1);\n },\n\n currentPage(page){\n return this.currentView === page;\n },\n\n toggleMenu() {\n this.menuState = !this.menuState;\n },\n\n closeMenu() {\n this.menuState = false;\n },\n\n eventCloseMenu(e) {\n if (!document.querySelector('.menu-open')?.contains(e.target) &&\n !document.querySelector('.header-user')?.contains(e.target)){\n this.closeMenu();\n }\n },\n },\n};\n</script>\n\n<style lang=\"scss\" scoped>\n .header {\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n padding: 0.5rem 0;\n position: relative;\n height: $header-mobile-height;\n\n @include screen(tablet-up) {\n height: $header-desktop-height;\n justify-content: space-between;\n }\n\n &-options {\n display: flex;\n flex-direction: row;\n align-items: center;\n margin-left: 2rem;\n\n @include make-accessible($black, $tertiary-accessibility, color);\n\n @include screen(phone-only) {\n display: none;\n }\n\n @include screen(tablet-only) {\n display: none;\n }\n\n @include screen(tablet-big-up) {\n margin-left: 5rem;\n }\n\n &__item {\n margin-right: 1rem;\n font-size: 12px;\n\n &:hover {\n @include make-accessible($primary, $tertiary-accessibility, color);\n }\n\n a {\n padding: 1.5rem 0;\n }\n\n &-current {\n font-family: $montserrat-bold;\n border-bottom: none;\n\n @include make-accessible($gray-dark, $tertiary-accessibility, color);\n\n @include screen(tablet-big-up) {\n border-bottom: 3px solid;\n\n @include make-accessible($primary, $tertiary-accessibility, border-color);\n }\n }\n\n @include screen (tablet-big-up) {\n margin-right: 3rem;\n font-size: 14px;\n }\n }\n }\n\n &-user {\n margin-right: 2%;\n display: none;\n flex-direction: row;\n align-items: center;\n cursor: pointer;\n\n @include screen(phone-up) {\n margin-right: 4%;\n }\n\n @include screen(tablet-up) {\n display: flex;\n }\n\n @include screen(tablet-big-up) {\n margin-right: 8%;\n }\n\n &__avatar {\n width: 35px;\n height: 35px;\n border-radius: 50%;\n object-fit: cover;\n }\n\n &__textBox {\n display: none;\n text-align: right;\n\n @include screen (phone-up) {\n display: block;\n }\n }\n\n &__name {\n margin-right: 0.5rem;\n font-size: 12px;\n\n @include make-accessible($black, $tertiary-accessibility, color);\n\n @include screen (tablet-big-up) {\n font-size: 14px;\n }\n }\n\n &__unity {\n margin-right: 0.5rem;\n font-size: 12px;\n font-weight: bold;\n\n @include make-accessible($unity-color-label, $tertiary-accessibility, color);\n }\n }\n\n .menu-open {\n display: none;\n flex-direction: column;\n box-shadow: 0 4px 8px 0 #00000014;\n transition: all 0.3s ease-in;\n z-index: 999;\n position: absolute;\n right: 7%;\n top: 6rem;\n padding: 0 1.5rem;\n border-radius: $radius-normal;\n transform-origin: 100% 0%;\n transform: scaleY(0);\n\n @include make-accessible($white, $primary-accessibility, background-color);\n\n @include screen(phone-up) {\n display: flex;\n }\n\n &:hover {\n box-shadow: 0 6px 12px 0 $gray-400;\n transition: all 0.3s ease-out;\n }\n\n &__link {\n display: flex;\n justify-content: space-between;\n padding: 1rem 0;\n border-bottom: 0.5px solid;\n\n @include make-accessible($gray-400, $tertiary-accessibility, color);\n @include make-accessible($gray-200, $gray-txt, border-color);\n\n &:hover {\n @include make-accessible($primary, $tertiary-accessibility, color);\n }\n\n &:last-child {\n border-bottom: none;\n }\n\n &__icon {\n @include make-accessible($gray-200, $tertiary-accessibility, color);\n }\n }\n\n &--visible {\n transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);\n z-index: 999;\n transform-origin: 100% 0%;\n transform: scaleY(1);\n\n &::before {\n @include screen(tablet-down) {\n display: flex;\n background: var(--black);\n }\n }\n }\n }\n }\n\n .first-line {\n padding-left: 4%;\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 0.4rem;\n margin-top: 0.4rem;\n\n &__goBack {\n display: flex;\n position: absolute;\n left: 0;\n\n .arrow-prev {\n @include make-accessible($primary, $tertiary-accessibility, color);\n }\n\n @include screen(tablet-up) {\n display: none;\n }\n }\n\n &__homeLink {\n cursor: pointer;\n max-width: 8.625rem;\n }\n\n &__notLoggedDiv {\n display: none;\n\n @include screen (tablet-up) {\n display: flex;\n justify-content: space-between;\n font-family: $montserrat-bold;\n font-weight: 700;\n padding-right: 4%;\n }\n\n @include screen (tablet-big-up) {\n padding-right: 8%;\n }\n\n .login {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 5px;\n font-size: 14px;\n font-family: $montserrat-regular;\n margin-left: 0.5rem;\n margin-right: 0.5rem;\n color: $black;\n\n @include make-accessible($black, $tertiary-accessibility, color);\n\n @include screen (desktop-up) {\n gap: 15px;\n }\n\n svg {\n width: 22px;\n }\n\n &:hover {\n color: $primary;\n\n @include make-accessible($primary, $tertiary-accessibility, color);\n\n svg {\n opacity: 0.7;\n }\n }\n }\n\n .register {\n color: $primary;\n outline: 0;\n font-size: $text-xs;\n padding: 0;\n display: none;\n\n &:hover {\n color: $white;\n background: $primary;\n opacity: 0.7;\n }\n\n @include screen (tablet-up) {\n display: block;\n padding: 0.4rem 1.5rem;\n font-size: $text-sm;\n margin-left: 0.5rem;\n margin-right: 0.5rem;\n border-radius: $radius-lg;\n background: transparent;\n border: solid 0.12rem $primary;\n }\n }\n\n @include screen (phone-only) {\n :last-child {\n display: block;\n }\n }\n }\n\n @include screen (phone-only) {\n padding: 0;\n }\n\n @include screen (tablet-big-up) {\n padding-left: 8%;\n }\n }\n\n .disabled {\n font-family: $montserrat-bold;\n pointer-events: none;\n cursor: default;\n\n .arrow-prev {\n color: $gray-disabled-theme;\n }\n }\n</style>\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./FirstLine.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./FirstLine.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FirstLine.vue?vue&type=template&id=6ab209f0&scoped=true&\"\nimport script from \"./FirstLine.vue?vue&type=script&lang=js&\"\nexport * from \"./FirstLine.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FirstLine.vue?vue&type=style&index=0&id=6ab209f0&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6ab209f0\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"checklist\",style:(`--current-step-value: ${_vm.currentStep}`)},[_c('div',{staticClass:\"checklist__textBox\"},[_c('div',{staticClass:\"checklist__title\"},[_vm._v(\" \"+_vm._s(_vm.currentStepNumber)+\". \"+_vm._s(_vm.currentStepName)+\" \")]),_c('div',{staticClass:\"checklist__description\"},[_vm._v(\" \"+_vm._s(_vm.currentStepDescription)+\" \")])]),_c('div',{staticClass:\"checklist__divider\"}),_c('div',{staticClass:\"checklist__progress\"},_vm._l((_vm.stepsList),function(step){return _c('div',{key:step,staticClass:\"checklist__progress__item\",class:_vm.itemClass(step+1)},[_c('div',{staticClass:\"checklist__currentStepArrow\"},[_c('icon',{attrs:{\"icon\":\"ArrowStepper\"}})],1),_c('div',{staticClass:\"checklist__progress__counter\",on:{\"click\":function($event){return _vm.changeCurrentStep(step+1)}}},[_c('icon',{staticClass:\"checklist__progress__check\",attrs:{\"icon\":\"Check\"}}),_c('div',{staticClass:\"checklist__progress__counterText\"},[_vm._v(\" \"+_vm._s(step+1)+\" \")])],1)])}),0),_c('div',{staticClass:\"checklist__title--mobile\"},[_c('span',{staticClass:\"checklist__stepChange\"},[_vm._v(\" \"+_vm._s(_vm.currentStepName))]),_c('span',[_c('span',{staticClass:\"checklist__stepChange--black\"},[_vm._v(_vm._s(_vm.currentStep))]),_c('span',[_vm._v(\" / \"+_vm._s(_vm.steps))])])]),_c('div',{staticClass:\"checklist__progress--mobile\"},[_vm._l((_vm.steps),function(step){return _c('div',{key:step},[_c('div',{staticClass:\"checklist__progress--mobile__stepsBar--mobile\",style:({ marginLeft: _vm.marginCurrentStep(step) })})])}),_c('div',{staticClass:\"checklist__progress--mobile__statusBar--mobile\"})],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div\n class=\"checklist\"\n :style=\"`--current-step-value: ${currentStep}`\"\n >\n <div class=\"checklist__textBox\">\n <div class=\"checklist__title\">\n {{ currentStepNumber }}. {{ currentStepName }}\n </div>\n <div class=\"checklist__description\">\n {{ currentStepDescription }}\n </div>\n </div>\n <div class=\"checklist__divider\" />\n <div\n class=\"checklist__progress\"\n >\n <div\n v-for=\"step in stepsList\"\n :key=\"step\"\n class=\"checklist__progress__item\"\n :class=\"itemClass(step+1)\"\n >\n <div\n class=\"checklist__currentStepArrow\"\n >\n <icon\n icon=\"ArrowStepper\"\n />\n </div>\n <div\n class=\"checklist__progress__counter\"\n @click=\"changeCurrentStep(step+1)\"\n >\n <icon\n class=\"checklist__progress__check\"\n icon=\"Check\"\n />\n <div class=\"checklist__progress__counterText\">\n {{ step+1 }}\n </div>\n </div>\n </div>\n </div>\n <div class=\"checklist__title--mobile\">\n <span class=\"checklist__stepChange\"> {{ currentStepName }}</span>\n <span>\n <span class=\"checklist__stepChange--black\">{{ currentStep }}</span><span> / {{ steps }}</span>\n </span>\n </div>\n <div class=\"checklist__progress--mobile\">\n <div\n v-for=\"step in steps\"\n :key=\"step\"\n >\n <div\n :style=\"{ marginLeft: marginCurrentStep(step) }\"\n class=\"checklist__progress--mobile__stepsBar--mobile\"\n />\n </div>\n <div class=\"checklist__progress--mobile__statusBar--mobile\" />\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters, mapActions } from 'vuex';\n\nexport default {\n name: 'StepperChecklist',\n\n components: {\n },\n\n data() {\n return {\n steps: 5,\n stepsList: [0,1,2,3,4],\n };\n },\n\n computed: {\n ...mapGetters([\n 'currentStep',\n 'appointmentData',\n 'stepsIsCompleted'\n ]),\n\n currentStepNumber() {\n switch (this.currentStepName) {\n case this.$t('STEPPER.ONE.title'):\n return 1;\n case this.$t('STEPPER.TWO.title'):\n return 2;\n case this.$t('STEPPER.THREE.title'):\n return 3;\n case this.$t('STEPPER.FOUR.title'):\n return 4;\n case this.$t('STEPPER.FIVE.title'):\n return 5;\n default:\n return '';\n }\n },\n\n currentStepName() {\n switch (this.currentStep) {\n case 1:\n return this.$t('STEPPER.ONE.title');\n case 2:\n return this.$t('STEPPER.TWO.title');\n case 3:\n return this.$t('STEPPER.THREE.title');\n case 4:\n return this.$t('STEPPER.FOUR.title');\n case 5:\n return this.$t('STEPPER.FIVE.title');\n default:\n return '';\n }\n },\n\n currentStepDescription() {\n switch (this.currentStep) {\n case 1:\n return this.$t('STEPPER.ONE.description');\n case 2:\n return this.$t('STEPPER.TWO.description');\n case 3:\n return this.$t('STEPPER.THREE.description');\n case 4:\n return this.$t('STEPPER.FOUR.description');\n case 5:\n return this.$t('STEPPER.FIVE.description');\n default:\n return '';\n }\n },\n },\n\n methods: {\n ...mapActions([\n 'isThatStepCompleted',\n 'saveCurrentStep'\n ]),\n marginCurrentStep(step) {\n return `calc((100 / 5 * ${step} * 1%) + 0.01rem)`;\n },\n itemClass(step){\n return this.currentStep === step ? 'active' : this.stepsIsCompleted[step] ? 'completed' : '';\n },\n changeCurrentStep(step){\n if(this.stepsIsCompleted[step])\n this.saveCurrentStep(step);\n },\n stepsTitle(currentStep) {\n switch(currentStep) {\n case 1:\n return this.$t('STEPPER.ONE.title');\n case 2:\n return this.$t('STEPPER.TWO.title');\n case 3:\n return this.$t('STEPPER.THREE.title');\n case 4:\n return this.$t('STEPPER.FOUR.title');\n case 5:\n return this.$t('STEPPER.FIVE.title');\n default:\n return '';\n }\n }\n },\n};\n</script>\n\n<style lang=\"scss\" scoped>\n .checklist {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n padding: 0 0 1rem;\n max-height: 4rem;\n position: relative;\n\n @include screen (tablet-up) {\n padding: 0 4% 1rem;\n }\n\n &__textBox {\n display: none;\n height: 100%;\n\n @include screen (tablet-big-up) {\n display: block;\n }\n }\n\n &__currentStepArrow {\n display: none;\n\n @include make-accessible($gray-btn, $tertiary-accessibility, color);\n }\n\n &__title {\n font-family: $montserrat-bold;\n font-size: $text-sm;\n\n @include make-accessible($primary, $tertiary-accessibility, color);\n }\n\n &__divider {\n display: none;\n height: 4.5rem;\n width: 1rem;\n margin-right: 3rem;\n margin-left: -2rem;\n padding-top: 1rem;\n border-right: 0.175rem solid;\n\n @include make-accessible($gray-disabled-button, $white, border-color);\n\n @include screen (tablet-big-up) {\n display: block;\n }\n }\n\n &__description {\n font-family: $montserrat-regular;\n font-size: $text-sm;\n color: $gray-txt;\n\n @include make-accessible($gray-txt, $white, color);\n }\n\n &__title--mobile {\n font-family: $montserrat-regular;\n font-size: $text-xs;\n color: $select-default-color;\n display: flex;\n justify-content: space-between;\n width: 100%;\n\n @include make-accessible($select-default-color, $white, color);\n\n @include screen (tablet-big-up) {\n display: none;\n }\n }\n\n &__stepChange {\n @include make-accessible($black, $white, color);\n\n &--black {\n font-family: $montserrat-bold;\n\n @include make-accessible($black, $white, color);\n }\n\n @include screen (tablet-big-up) {\n display: none;\n }\n }\n\n &__progress--mobile {\n position: relative;\n margin-top: 0.5rem;\n height: 0.25rem;\n width: 100%;\n border-radius: 2rem;\n\n @include make-accessible($primary-light, $gray-line, background-color);\n\n &__statusBar--mobile {\n height: 0.25rem;\n width: calc(100 / 5 * var(--current-step-value) * 1%);\n z-index: 2;\n\n @include make-accessible($primary, $tertiary-accessibility, background-color);\n }\n\n &__stepsBar--mobile {\n position: absolute;\n height: 0.25rem;\n width: 0.2rem;\n background-color: $white;\n\n @include make-accessible($white, $primary-accessibility, background-color);\n }\n\n @include screen (tablet-big-up) {\n display: none;\n }\n }\n\n &__progress {\n display: none;\n width: 50%;\n flex-direction: row;\n z-index: 1;\n font-size: $text-sm;\n font-family: Montserrat-Medium, Arial, Helvetica, sans-serif;\n\n &__check {\n display: none;\n }\n\n &__counter {\n margin-left: 1rem;\n cursor: pointer;\n color: $gray-line;\n\n @include make-accessible($gray-line, $primary-accessibility, color);\n\n position: relative;\n font-size: $text-sm;\n z-index: 5;\n display: flex;\n justify-content: center;\n align-items: center;\n width: 2rem;\n height: 2rem;\n border-radius: 50%;\n background-color: $white;\n border: 0.175rem solid $gray-line;\n\n @include make-accessible($gray-line, $transparent, border-color);\n }\n\n &__item {\n position: relative;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n flex: 1;\n width: 25%;\n margin-top: 13px;\n margin-bottom: 13px;\n\n &::before {\n position: absolute;\n content: \"\";\n border-bottom: 0.2rem solid $gray-line;\n\n @include make-accessible($gray-line, $white, border-color);\n\n width: 100%;\n top: 0.938rem;\n left: -80%;\n z-index: 3;\n }\n\n &::after {\n position: absolute;\n content: \"\";\n border-bottom: 0.2rem solid transparent;\n width: 100%;\n top: 0.938rem;\n left: 50%;\n z-index: 3;\n }\n\n &.active {\n font-family: Montserrat-Bold, Arial, Helvetica, sans-serif;\n\n @include make-accessible($primary, $tertiary-accessibility, color);\n\n .checklist__progress__counter {\n border: 0.175rem solid;\n color: $white;\n font-family: Montserrat-SemiBold, Arial, Helvetica, sans-serif;\n\n @include make-accessible($white, $black, color);\n @include make-accessible($primary, $tertiary-accessibility, background-color);\n @include make-accessible($primary, $tertiary-accessibility, border-color);\n }\n\n .checklist__currentStepArrow {\n display: none;\n position: absolute;\n top: 0;\n //margin-left: calc(2rem + (15.2rem * (var(--current-step-value) - 1) ));\n margin-left: 1.675rem;\n margin-bottom: 0.2rem;\n margin-top: -0.8rem;\n\n @include screen (tablet-big-up) {\n display: block;\n }\n }\n\n &::before {\n @include make-accessible($primary, $tertiary-accessibility, border-color);\n }\n }\n\n &.completed {\n color: $gray-line;\n\n .checklist {\n &__progress {\n &__counter {\n border: 0.175rem solid;\n\n @include make-accessible($primary, $tertiary-accessibility, background-color);\n @include make-accessible($primary, $tertiary-accessibility, border-color);\n }\n\n &__check {\n display: block;\n }\n\n &__counterText {\n display: none;\n }\n }\n }\n\n &::before {\n @include make-accessible($primary, $tertiary-accessibility, border-color);\n }\n\n &::after {\n position: absolute;\n content: \"\";\n border-bottom: 0.2rem solid;\n width: 100%;\n top: 0.938rem;\n left: 20%;\n z-index: 3;\n\n @include make-accessible($primary, $tertiary-accessibility, border-bottom);\n }\n }\n\n &:first-child::before {\n content: \"\";\n display: none;\n }\n\n &:nth-child(1) {\n .checklist__progress__name {\n margin-left: 0.6rem;\n }\n }\n\n &:nth-child(3) {\n .checklist__progress__name {\n margin-left: 0.6rem;\n }\n }\n\n &:nth-child(4) {\n .checklist__progress__name {\n margin-left: 0.9rem;\n }\n }\n\n &:last-child {\n .checklist__progress__name {\n margin-left: -0.5rem;\n }\n\n &::after {\n content: \"\";\n display: none;\n }\n }\n }\n\n @include screen (tablet-big-up) {\n display: flex;\n }\n }\n\n @include screen (tablet-big-up) {\n flex-direction: row-reverse;\n justify-content: flex-end;\n align-items: center;\n padding: 2.2rem 8% 2.2rem;\n }\n\n @include screen (phone-only) {\n padding: 0;\n padding-bottom: 1rem;\n }\n }\n</style>","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./StepperChecklist.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./StepperChecklist.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./StepperChecklist.vue?vue&type=template&id=a00bcdd0&scoped=true&\"\nimport script from \"./StepperChecklist.vue?vue&type=script&lang=js&\"\nexport * from \"./StepperChecklist.vue?vue&type=script&lang=js&\"\nimport style0 from \"./StepperChecklist.vue?vue&type=style&index=0&id=a00bcdd0&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"a00bcdd0\",\n null\n \n)\n\nexport default component.exports","<template>\n <nav\n class=\"header\"\n :class=\"{ 'header-home': isHomePage }\"\n >\n <div class=\"container\">\n <div class=\"header__lines\">\n <FirstLine\n :current-view=\"currentView\"\n />\n <StepperChecklist\n v-if=\"isAppointmentPage\"\n class=\"header__stepper\"\n />\n </div>\n </div>\n </nav>\n</template>\n\n<script>\nimport FirstLine from '@/components/headerComponents/FirstLine.vue';\nimport StepperChecklist from '@/components/headerComponents/StepperChecklist.vue';\nimport { mapGetters } from 'vuex';\n\nexport default {\n name: 'Header',\n components: {\n FirstLine,\n StepperChecklist,\n },\n\n props: {\n currentView: {\n type: String,\n required: true,\n }\n },\n\n computed: {\n ...mapGetters([\n 'userIsLogged',\n ]),\n isHomePage() {\n return this.currentView === 'Home' ? true : false;\n },\n isAppointmentPage() {\n return this.currentView === 'Appointment' ? true : false;\n }\n },\n};\n</script>\n\n<style lang=\"scss\" scoped>\n .header {\n width: 100%;\n z-index: -2;\n\n @include make-accessible($white, $secondary-accessibility, background-color);\n\n &-home {\n @include make-accessible($white, $secondary-accessibility, background-color);\n }\n\n &__lines {\n padding: 0 4%;\n\n @include screen(tablet-up) {\n padding: 0;\n }\n }\n\n @include screen (tablet-big-up) {\n &__stepper {\n width: 100%;\n border-top: 0.1rem solid;\n\n @include make-accessible($gray-disabled-button, $white, border-color);\n }\n }\n\n @media print {\n display: none;\n }\n }\n</style>\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Header.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Header.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Header.vue?vue&type=template&id=6db1535e&scoped=true&\"\nimport script from \"./Header.vue?vue&type=script&lang=js&\"\nexport * from \"./Header.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Header.vue?vue&type=style&index=0&id=6db1535e&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6db1535e\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('footer',{staticClass:\"footer\"},[_c('section',{staticClass:\"footer__top\"},[_c('section',{staticClass:\"footer__top__left\"},[_c('router-link',{staticClass:\"footer__city-logo\",attrs:{\"to\":{ name: 'Home' },\"aria-label\":\"Botão para a página inicial com a imagem da prefeitura de Sua Cidade\"}},[_c('img',{attrs:{\"src\":require(`@/assets/theme/${_vm.realm}/icons/logo-cidade.svg`),\"alt\":\"Prefeitura de Sua Cidade\"}})]),_c('nav',{staticClass:\"footer__social\",attrs:{\"aria-label\":\"Logo da prefeitura e suas redes sociais\"}},[_c('ul',{staticClass:\"footer__social__list\"},[(_vm.$t('FOOTER.ICONS.LINKS.facebook') !== 'FOOTER.ICONS.LINKS.facebook')?_c('li',{staticClass:\"footer__social__list__item\"},[_c('a',{staticClass:\"footer__social__link\",attrs:{\"href\":_vm.$t('FOOTER.ICONS.LINKS.facebook'),\"aria-label\":\"Botão de redirecionamento para o Facebook de Sua Cidade\"}},[_c('svg-wrapper',{staticClass:\"footer__social__link__icon\",attrs:{\"icon\":\"Facebook\",\"title\":\"Ãcone da rede social Facebook\",\"aria-hidden\":\"true\"}})],1)]):_vm._e(),(_vm.$t('FOOTER.ICONS.LINKS.instagram') !== 'FOOTER.ICONS.LINKS.instagram')?_c('li',{staticClass:\"footer__social__list__item\"},[_c('a',{staticClass:\"footer__social__link\",attrs:{\"href\":_vm.$t('FOOTER.ICONS.LINKS.instagram'),\"aria-label\":\"Botão de redirecionamento para o Instagram de Sua Cidade\"}},[_c('svg-wrapper',{staticClass:\"footer__social__link__icon\",attrs:{\"icon\":\"Instagram\",\"title\":\"Ãcone da rede social Instagram\",\"aria-hidden\":\"true\"}})],1)]):_vm._e(),(_vm.$t('FOOTER.ICONS.LINKS.youtube') !== 'FOOTER.ICONS.LINKS.youtube')?_c('li',{staticClass:\"footer__social__list__item\"},[_c('a',{staticClass:\"footer__social__link\",attrs:{\"href\":_vm.$t('FOOTER.ICONS.LINKS.youtube'),\"aria-label\":\"Botão de redirecionamento para o Youtube de Sua Cidade\"}},[_c('svg-wrapper',{staticClass:\"footer__social__link__icon\",attrs:{\"icon\":\"Youtube\",\"title\":\"Ãcone do Youtube\",\"aria-hidden\":\"true\"}})],1)]):_vm._e(),(_vm.$t('FOOTER.ICONS.LINKS.city') !== 'FOOTER.ICONS.LINKS.city')?_c('li',{staticClass:\"footer__social__list__item\"},[_c('a',{staticClass:\"footer__social__link\",attrs:{\"href\":_vm.$t('FOOTER.ICONS.LINKS.city'),\"aria-label\":\"Botão de redirecionamento para o site da prefeitura\"}},[_c('svg-wrapper',{staticClass:\"footer__social__link__icon\",attrs:{\"icon\":\"Web\",\"title\":\"Ãcone de um planeta com um cursor indicando a Web de Sua Cidade\",\"aria-hidden\":\"true\"}})],1)]):_vm._e(),(_vm.$t('FOOTER.ICONS.LINKS.linkedin') !== 'FOOTER.ICONS.LINKS.linkedin')?_c('li',{staticClass:\"footer__social__list__item\"},[_c('a',{staticClass:\"footer__social__link\",attrs:{\"href\":_vm.$t('FOOTER.ICONS.LINKS.linkedin'),\"aria-label\":\"Botão de redirecionamento para o Linkedin de Sua Cidade\"}},[_c('svg-wrapper',{staticClass:\"footer__social__link__icon\",attrs:{\"icon\":\"Linkedin\",\"title\":\"Ãcone da rede social Linkedin\",\"aria-hidden\":\"true\"}})],1)]):_vm._e()])])],1),_c('section',{staticClass:\"footer__top__navigation\"},[_c('nav',{staticClass:\"footer__top__navigation__column\",attrs:{\"aria-label\":\"Primeira coluna com links úteis\"}},[_c('ul',{staticClass:\"footer__top__navigation__column__menu\",attrs:{\"role\":\"menu\"}},[_c('li',{attrs:{\"role\":\"menuitem\"}},[_c('router-link',{staticClass:\"footer__top__navigation__link\",attrs:{\"to\":{ name: 'VinculacaoOnline' },\"aria-label\":`Navegação para a página de ${_vm.$t('FOOTER.ABOUT.first')}`}},[_vm._v(\" \"+_vm._s(_vm.$t('FOOTER.ABOUT.first'))+\" \")])],1),_c('li',{attrs:{\"role\":\"menuitem\"}},[_c('router-link',{staticClass:\"footer__top__navigation__link\",attrs:{\"to\":{ name: 'UnitiesList' },\"aria-label\":`Navegação para a página de ${_vm.$t('FOOTER.ABOUT.second')}`}},[_vm._v(\" \"+_vm._s(_vm.$t('FOOTER.ABOUT.second'))+\" \")])],1)])]),_c('nav',{staticClass:\"footer__top__navigation__column\",attrs:{\"aria-label\":\"Segunda coluna com links úteis\"}},[_c('ul',{staticClass:\"footer__top__navigation__column__menu\",attrs:{\"role\":\"menu\"}},[_c('li',{attrs:{\"role\":\"menuitem\"}},[_c('router-link',{staticClass:\"footer__top__navigation__link\",attrs:{\"to\":{ name: 'ConsultaAgendamento' }}},[_vm._v(\" \"+_vm._s(_vm.$t('FOOTER.MENU.first'))+\" \")])],1),_c('li',{attrs:{\"role\":\"menuitem\"}},[_c('router-link',{staticClass:\"footer__top__navigation__link\",attrs:{\"to\":{ name: 'Appointment' }}},[_vm._v(\" \"+_vm._s(_vm.$t('FOOTER.MENU.second'))+\" \")])],1),_c('li',{attrs:{\"role\":\"menuitem\"}},[_c('router-link',{staticClass:\"footer__top__navigation__link\",attrs:{\"to\":{ name: 'FAQ' },\"aria-label\":`Navegação para a página de ${_vm.$t('FOOTER.ABOUT.third')}`}},[_vm._v(\" \"+_vm._s(_vm.$t('FOOTER.ABOUT.third'))+\" \")])],1)])])]),_c('section',{staticClass:\"footer__top__contact\"},[(_vm.$t('FOOTER.CONTACT.tel'))?_c('div',{staticClass:\"footer__top__contact__info\"},[_c('p',{staticClass:\"footer__top__contact__title\"},[_vm._v(\" Telefone 24 horas: \")]),_c('div',{staticClass:\"footer__top__contact__telephones\"},[_c('a',{staticClass:\"footer__top__contact__telephones__phone\",attrs:{\"aria-label\":\"Telefone para contato da capital\",\"href\":\"tel:162\"}},[_c('div',{staticClass:\"footer__top__contact__telephones__phone__wrapper\"},[_c('google-icon',{staticClass:\"footer__top__contact__icon\",attrs:{\"icon-style\":\"filled\",\"icon\":\"call\",\"aria-hidden\":\"true\"}}),_c('p',{staticClass:\"footer__top__contact__telephones__phone__number\"},[_vm._v(\"162\")])],1),_c('small',{staticClass:\"footer__top__contact__telephones__phone__location\"},[_vm._v(\"Capital\")])]),_c('span',{staticClass:\"footer__top__contact__separator\"}),_c('div',{staticClass:\"footer__top__contact__telephones__multiples\"},[_c('a',{staticClass:\"footer__top__contact__telephones__phone\",attrs:{\"href\":`tel:${_vm.$t('FOOTER.CONTACT.tel')}`,\"aria-label\":\"Telefone de contato para demais localidades\"}},[_c('div',{staticClass:\"footer__top__contact__telephones__phone__wrapper\"},[_c('google-icon',{staticClass:\"footer__top__contact__icon\",attrs:{\"icon-style\":\"filled\",\"icon\":\"call\",\"aria-hidden\":\"true\"}}),_c('p',{staticClass:\"footer__top__contact__telephones__phone__number\"},[_vm._v(_vm._s(_vm.$t('FOOTER.CONTACT.tel')))])],1),_c('small',{staticClass:\"footer__top__contact__telephones__phone__location\"},[_vm._v(\"Outras localidades\")])])])])]):_vm._e(),(_vm.$t('FOOTER.CONTACT.address'))?_c('div',{staticClass:\"footer__top__contact__info\"},[_c('p',{staticClass:\"footer__top__contact__title\"},[_vm._v(\" Endereço \")]),_c('div',{staticClass:\"footer__top__contact__general\"},[(_vm.$t('FOOTER.CONTACT.email'))?_c('a',{staticClass:\"footer__top__contact__general__info\",attrs:{\"href\":`mailto:${_vm.$t('FOOTER.CONTACT.email')}`}},[_c('google-icon',{staticClass:\"footer__top__contact__icon\",attrs:{\"icon-style\":\"filled\",\"icon\":\"mail\",\"aria-hidden\":\"true\"}}),_c('span',{staticClass:\"footer__top__contact__general__info__text\"},[_vm._v(_vm._s(_vm.$t('FOOTER.CONTACT.email')))])],1):_vm._e(),(_vm.$t('FOOTER.CONTACT.address'))?_c('a',{staticClass:\"footer__top__contact__general__info\",attrs:{\"href\":`https://maps.google.com/maps?q=${_vm.$t('FOOTER.CONTACT.address')}`,\"target\":\"__blank\",\"rel\":\"noopener noreferrer\"}},[_c('google-icon',{staticClass:\"footer__top__contact__icon\",attrs:{\"icon-style\":\"filled\",\"icon\":\"location_on\",\"aria-hidden\":\"true\"}}),_c('span',{staticClass:\"footer__top__contact__general__info__text\"},[_vm._v(_vm._s(_vm.$t('FOOTER.CONTACT.address')))])],1):_vm._e()])]):_vm._e()])]),_c('section',{staticClass:\"footer__bottom\"},[_c('router-link',{staticClass:\"footer__bottom__link\",attrs:{\"to\":{ name: 'Home' },\"aria-label\":\"Botão redirecionando para o site da UpCities\"}},[_c('svg-wrapper',{staticClass:\"footer__bottom__link__icon\",attrs:{\"icon\":\"CitiesProduct\",\"title\":\"Um produto UpCities\",\"aria-hidden\":\"true\"}})],1)],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <footer class=\"footer\">\n <section class=\"footer__top\">\n <section class=\"footer__top__left\">\n <router-link\n :to=\"{ name: 'Home' }\"\n class=\"footer__city-logo\"\n aria-label=\"Botão para a página inicial com a imagem da prefeitura de Sua Cidade\"\n >\n <img\n :src=\"require(`@/assets/theme/${realm}/icons/logo-cidade.svg`)\"\n alt=\"Prefeitura de Sua Cidade\"\n >\n </router-link>\n <nav\n class=\"footer__social\"\n aria-label=\"Logo da prefeitura e suas redes sociais\"\n >\n <ul class=\"footer__social__list\">\n <li\n v-if=\"$t('FOOTER.ICONS.LINKS.facebook') !== 'FOOTER.ICONS.LINKS.facebook'\"\n class=\"footer__social__list__item\"\n >\n <a\n :href=\"$t('FOOTER.ICONS.LINKS.facebook')\"\n class=\"footer__social__link\"\n aria-label=\"Botão de redirecionamento para o Facebook de Sua Cidade\"\n ><svg-wrapper\n class=\"footer__social__link__icon\"\n icon=\"Facebook\"\n title=\"Ãcone da rede social Facebook\"\n aria-hidden=\"true\"\n /></a>\n </li>\n <li\n v-if=\"$t('FOOTER.ICONS.LINKS.instagram') !== 'FOOTER.ICONS.LINKS.instagram'\"\n class=\"footer__social__list__item\"\n >\n <a\n :href=\"$t('FOOTER.ICONS.LINKS.instagram')\"\n class=\"footer__social__link\"\n aria-label=\"Botão de redirecionamento para o Instagram de Sua Cidade\"\n ><svg-wrapper\n class=\"footer__social__link__icon\"\n icon=\"Instagram\"\n title=\"Ãcone da rede social Instagram\"\n aria-hidden=\"true\"\n /></a>\n </li>\n <li\n v-if=\"$t('FOOTER.ICONS.LINKS.youtube') !== 'FOOTER.ICONS.LINKS.youtube'\"\n class=\"footer__social__list__item\"\n >\n <a\n :href=\"$t('FOOTER.ICONS.LINKS.youtube')\"\n class=\"footer__social__link\"\n aria-label=\"Botão de redirecionamento para o Youtube de Sua Cidade\"\n ><svg-wrapper\n class=\"footer__social__link__icon\"\n icon=\"Youtube\"\n title=\"Ãcone do Youtube\"\n aria-hidden=\"true\"\n /></a>\n </li>\n <li\n v-if=\"$t('FOOTER.ICONS.LINKS.city') !== 'FOOTER.ICONS.LINKS.city'\"\n class=\"footer__social__list__item\"\n >\n <a\n :href=\"$t('FOOTER.ICONS.LINKS.city')\"\n class=\"footer__social__link\"\n aria-label=\"Botão de redirecionamento para o site da prefeitura\"\n ><svg-wrapper\n class=\"footer__social__link__icon\"\n icon=\"Web\"\n title=\"Ãcone de um planeta com um cursor indicando a Web de Sua Cidade\"\n aria-hidden=\"true\"\n /></a>\n </li>\n <li\n v-if=\"$t('FOOTER.ICONS.LINKS.linkedin') !== 'FOOTER.ICONS.LINKS.linkedin'\"\n class=\"footer__social__list__item\"\n >\n <a\n :href=\"$t('FOOTER.ICONS.LINKS.linkedin')\"\n class=\"footer__social__link\"\n aria-label=\"Botão de redirecionamento para o Linkedin de Sua Cidade\"\n ><svg-wrapper\n class=\"footer__social__link__icon\"\n icon=\"Linkedin\"\n title=\"Ãcone da rede social Linkedin\"\n aria-hidden=\"true\"\n /></a>\n </li>\n </ul>\n </nav>\n </section>\n <section class=\"footer__top__navigation\">\n <nav\n class=\"footer__top__navigation__column\"\n aria-label=\"Primeira coluna com links úteis\"\n >\n <ul\n role=\"menu\"\n class=\"footer__top__navigation__column__menu\"\n >\n <li role=\"menuitem\">\n <router-link\n :to=\"{ name: 'VinculacaoOnline' }\"\n class=\"footer__top__navigation__link\"\n :aria-label=\"`Navegação para a página de ${$t('FOOTER.ABOUT.first')}`\"\n >\n {{ $t('FOOTER.ABOUT.first') }}\n </router-link>\n </li>\n <li role=\"menuitem\">\n <router-link\n :to=\"{ name: 'UnitiesList' }\"\n class=\"footer__top__navigation__link\"\n :aria-label=\"`Navegação para a página de ${$t('FOOTER.ABOUT.second')}`\"\n >\n {{ $t('FOOTER.ABOUT.second') }}\n </router-link>\n </li>\n </ul>\n </nav>\n <nav\n class=\"footer__top__navigation__column\"\n aria-label=\"Segunda coluna com links úteis\"\n >\n <ul\n role=\"menu\"\n class=\"footer__top__navigation__column__menu\"\n >\n <li role=\"menuitem\">\n <router-link\n :to=\"{ name: 'ConsultaAgendamento' }\"\n class=\"footer__top__navigation__link\"\n >\n {{ $t('FOOTER.MENU.first') }}\n </router-link>\n </li>\n <li role=\"menuitem\">\n <router-link\n :to=\"{ name: 'Appointment' }\"\n class=\"footer__top__navigation__link\"\n >\n {{ $t('FOOTER.MENU.second') }}\n </router-link>\n </li>\n <li role=\"menuitem\">\n <router-link\n :to=\"{ name: 'FAQ' }\"\n class=\"footer__top__navigation__link\"\n :aria-label=\"`Navegação para a página de ${$t('FOOTER.ABOUT.third')}`\"\n >\n {{ $t('FOOTER.ABOUT.third') }}\n </router-link>\n </li>\n </ul>\n </nav>\n </section>\n <section class=\"footer__top__contact\">\n <div\n v-if=\"$t('FOOTER.CONTACT.tel')\"\n class=\"footer__top__contact__info\"\n >\n <p class=\"footer__top__contact__title\">\n Telefone 24 horas:\n </p>\n <div class=\"footer__top__contact__telephones\">\n <a\n class=\"footer__top__contact__telephones__phone\"\n aria-label=\"Telefone para contato da capital\"\n href=\"tel:162\"\n >\n <div class=\"footer__top__contact__telephones__phone__wrapper\">\n <google-icon\n icon-style=\"filled\"\n class=\"footer__top__contact__icon\"\n icon=\"call\"\n aria-hidden=\"true\"\n />\n <p class=\"footer__top__contact__telephones__phone__number\">162</p>\n </div>\n <small class=\"footer__top__contact__telephones__phone__location\">Capital</small>\n </a>\n <span class=\"footer__top__contact__separator\" />\n <div class=\"footer__top__contact__telephones__multiples\">\n <a\n class=\"footer__top__contact__telephones__phone\"\n :href=\"`tel:${$t('FOOTER.CONTACT.tel')}`\"\n aria-label=\"Telefone de contato para demais localidades\"\n >\n <div class=\"footer__top__contact__telephones__phone__wrapper\">\n <google-icon\n icon-style=\"filled\"\n class=\"footer__top__contact__icon\"\n icon=\"call\"\n aria-hidden=\"true\"\n />\n <p class=\"footer__top__contact__telephones__phone__number\">{{ $t('FOOTER.CONTACT.tel') }}</p>\n </div>\n <small\n class=\"footer__top__contact__telephones__phone__location\"\n >Outras localidades</small>\n </a>\n </div>\n </div>\n </div>\n <div\n v-if=\"$t('FOOTER.CONTACT.address')\"\n class=\"footer__top__contact__info\"\n >\n <p class=\"footer__top__contact__title\">\n Endereço\n </p>\n <div class=\"footer__top__contact__general\">\n <a\n v-if=\"$t('FOOTER.CONTACT.email')\"\n class=\"footer__top__contact__general__info\"\n :href=\"`mailto:${$t('FOOTER.CONTACT.email')}`\"\n >\n <google-icon\n icon-style=\"filled\"\n icon=\"mail\"\n class=\"footer__top__contact__icon\"\n aria-hidden=\"true\"\n /><span\n class=\"footer__top__contact__general__info__text\"\n >{{ $t('FOOTER.CONTACT.email') }}</span>\n </a>\n <a\n v-if=\"$t('FOOTER.CONTACT.address')\"\n class=\"footer__top__contact__general__info\"\n :href=\"`https://maps.google.com/maps?q=${$t('FOOTER.CONTACT.address')}`\"\n target=\"__blank\"\n rel=\"noopener noreferrer\"\n >\n <google-icon\n icon-style=\"filled\"\n icon=\"location_on\"\n class=\"footer__top__contact__icon\"\n aria-hidden=\"true\"\n /><span\n class=\"footer__top__contact__general__info__text\"\n >{{ $t('FOOTER.CONTACT.address') }}</span>\n </a>\n </div>\n </div>\n </section>\n </section>\n <section class=\"footer__bottom\">\n <router-link\n :to=\"{ name: 'Home' }\"\n class=\"footer__bottom__link\"\n aria-label=\"Botão redirecionando para o site da UpCities\"\n >\n <svg-wrapper\n class=\"footer__bottom__link__icon\"\n icon=\"CitiesProduct\"\n title=\"Um produto UpCities\"\n aria-hidden=\"true\"\n />\n </router-link>\n </section>\n </footer>\n</template>\n\n<script>\nimport SvgWrapper from '@/components/base/svg/SvgWrapper.vue';\nimport GoogleIcon from '@/components/common/GoogleIcon.vue';\n\nconst realmTheme = process.env.VUE_APP_THEME_REALM ?? process.env.VUE_APP_KEYCLOAK_REALM;\n\nexport default {\n name: 'FooterLarge',\n components: { SvgWrapper, GoogleIcon },\n data() {\n const realm = realmTheme === 'Uppersoft' ? 'upcities' : realmTheme;\n\n return {\n realm\n };\n }\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.footer {\n width: 100%;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n background-color: $white;\n margin-bottom: 1rem;\n\n @include screen(phone-up) {\n margin-bottom: 0;\n }\n\n @include screen(tablet-up) {\n padding: 0 112px;\n }\n\n &__top {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n min-height: 9.75rem;\n gap: 2rem;\n padding: 2rem 0 1.5rem;\n width: 100%;\n\n @include screen(tablet-big-up) {\n min-height: 5.625rem;\n flex-direction: row;\n justify-content: space-between;\n align-items: flex-start;\n // max-width comentado enquanto o container não estiver adaptado ao projeto\n // max-width: 1200px;\n max-width: 100%;\n }\n\n &__left {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 2rem;\n\n @include screen(tablet-big-up) {\n align-items: flex-start;\n gap: 1.5rem;\n max-width: 25%;\n }\n }\n\n &__navigation {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-direction: column;\n gap: 1rem;\n width: 100%;\n\n @include screen(tablet-big-up) {\n flex-direction: row;\n align-items: flex-start;\n justify-content: space-between;\n width: calc(100% / 3);\n }\n\n &__link {\n @include text-m;\n\n transition: all 200ms ease;\n\n &:hover {\n color: $primary;\n text-decoration: underline;\n }\n }\n\n &__column {\n &__menu {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 1rem;\n\n @include screen(tablet-big-up) {\n align-items: flex-start;\n width: auto;\n }\n }\n }\n }\n\n &__contact {\n height: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n gap: 1rem;\n align-items: center;\n\n @include screen(tablet-big-up) {\n max-width: calc(100% / 4);\n align-items: flex-start;\n }\n\n &__info {\n display: flex;\n flex-direction: column;\n justify-content: center;\n gap: 1rem;\n align-items: center;\n\n @include screen (tablet-big-up) {\n align-items: start;\n }\n }\n\n &__icon {\n font-size: 1.125rem;\n color: $primary;\n }\n\n &__title {\n @include text-m(_, 2);\n }\n\n &__separator {\n height: 100%;\n width: 1px;\n background: $gray-30;\n }\n\n &__telephones {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 1rem;\n\n &__phone {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n transition: transform 200ms ease;\n\n &__wrapper {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 0.375rem;\n }\n\n &__number {\n @include text-l(_, 2);\n\n transition: color 200ms ease;\n }\n\n &:hover &__number {\n color: $primary;\n text-decoration: underline;\n }\n\n &__location {\n @include text-s;\n }\n }\n }\n\n &__general {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 1rem;\n max-width: 60%;\n\n @include screen(tablet-big-up) {\n align-items: flex-start;\n max-width: 100%;\n }\n\n &__info {\n display: flex;\n justify-content: flex-start;\n align-items: center;\n gap: 0.5rem;\n text-align: left;\n\n @include text-m;\n\n transition: color 200ms ease;\n\n &:hover {\n color: $primary;\n }\n\n &:hover &__text {\n text-decoration: underline;\n }\n }\n }\n }\n }\n\n &__city-logo {\n max-width: 9.375rem;\n }\n\n &__social {\n display: flex;\n justify-content: center;\n align-items: center;\n\n &__list {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 16px;\n }\n\n &__link {\n width: 2rem;\n height: 2rem;\n background-color: $primary-light;\n border-radius: 50%;\n display: flex;\n justify-content: center;\n align-items: center;\n transition: background-color ease 300ms;\n\n &__icon {\n fill: $primary;\n transition: fill ease 300ms;\n }\n\n &:hover {\n background-color: $primary;\n }\n\n &:hover &__icon {\n fill: $white;\n }\n }\n }\n\n &__bottom {\n width: 100%;\n height: 3.5rem;\n background-color: $white;\n display: flex;\n justify-content: center;\n align-items: center;\n position: relative;\n // max-width comentado enquanto o container não estiver adaptado ao projeto\n // max-width: 1200px;\n max-width: 100%;\n\n @include screen(tablet-big-up) {\n max-height: 2.5rem;\n }\n\n &::before {\n content: \"\";\n width: 90%;\n height: 0.125rem;\n position: absolute;\n top: 0;\n left: 50%;\n background-color: #d8d8d8;\n transform: translate(-50%, 0);\n\n @include screen(tablet-big-up) {\n width: 100%;\n }\n }\n\n &__link {\n height: 100%;\n width: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n\n &__icon {\n fill: $gray-40;\n transition: fill 200ms ease;\n }\n\n &:hover &__icon {\n fill: $primary;\n }\n }\n }\n\n @media print {\n display: none;\n }\n}\n</style>\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Footer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Footer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Footer.vue?vue&type=template&id=e64cc32c&scoped=true&\"\nimport script from \"./Footer.vue?vue&type=script&lang=js&\"\nexport * from \"./Footer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Footer.vue?vue&type=style&index=0&id=e64cc32c&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e64cc32c\",\n null\n \n)\n\nexport default component.exports","import { mapActions, mapGetters } from 'vuex';\nimport { setAuthHeader } from '@/config/axios/index';\n\nexport default {\n computed: {\n ...mapGetters([\n 'userAutoLoginData',\n 'userIsLogged'\n ]),\n },\n\n created() {\n let urlParams = (new URL(document.location)).searchParams;\n\n if(urlParams.get('token') && urlParams.get('refresh_token') && urlParams.get('client_id')){\n if(this.userIsLogged) {\n // Logout if system is already authenticated\n this.$router.replace({ name: 'Home', query: {} }).catch(() => {});\n this.$store.dispatch('userLogout');\n } else {\n this.autoLogin();\n }\n } else {\n this.autoLogin();\n }\n },\n\n methods: {\n ...mapActions([\n 'userAutoLoginKeycloak',\n 'userResetAutoLoginData'\n ]),\n\n /**\n * Makes user login when the userAutoLoginData is set in store\n */\n async autoLogin() {\n if (!this.userAutoLoginData) {\n return;\n }\n\n /**\n * If the auto login data are from URL\n * we need to clear url params\n */\n if (this.userAutoLoginData.origin === 'URL') {\n // Clearing the token and user id from URL\n const params = { ...this.$route.query };\n\n delete params.token;\n delete params.refresh_token;\n delete params.client_id;\n this.$router.replace({ query: { ...params } }).catch(() => {});\n }\n\n // Getting the user data from Keyclock\n\n try {\n\t\t\t\tawait Promise.all([\n\t\t\t\t\tthis.userAutoLoginKeycloak(this.userAutoLoginData),\n\t\t\t\t\tsetAuthHeader(this.userAutoLoginData.token),\n\t\t\t\t]);\n } catch (error) {\n //\n }\n\n this.userResetAutoLoginData();\n },\n },\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c(_vm.showModal,{tag:\"component\",attrs:{\"message\":_vm.modalInfo.relationModalText,\"btn-text\":_vm.modalInfo.relationBtnText,\"info\":_vm.info},on:{\"toogleModal\":function($event){return _vm.closeModal()},\"pushToAnotherPath\":({ name, selectedUBS }) => _vm.pushToRelationPage(name, selectedUBS)}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.showModal)?_c('ModalElement',{attrs:{\"name\":\"relation-modal\",\"icon\":\"warning\",\"width\":\"360\",\"close-button\":true,\"click-to-close\":true,\"show\":true,\"opacity\":true},on:{\"modalVisible\":function($event){_vm.showModal = $event}}},[_c('div',{staticClass:\"modal-content\"},[_c('div',{staticClass:\"modal-content__alert\"},[_c('icon',{staticClass:\"modal-content__alert__svg\",attrs:{\"icon\":_vm.icon}}),_c('p',{staticClass:\"modal-content__alert__text\"},[_vm._v(\" \"+_vm._s(_vm.title)+\" \")])],1),_c('div',{staticClass:\"modal-content__message\"},[(_vm.message.length)?_c('p',{staticClass:\"modal-content__message__text\"},[_vm._v(\" \"+_vm._s(_vm.message)+\" \")]):_c('p',{staticClass:\"modal-content__message__text\"},[_vm._v(\" Oops, ocorreu um erro \")])]),_c('ButtonComponent',{style:(`width: ${_vm.btnWidth};`),attrs:{\"btn-style\":\"primary\",\"text\":_vm.btnText,\"aria-label\":\"Botão pra redirecionar para página de vinculação\"},nativeOn:{\"click\":function($event){$event.preventDefault();return _vm.pushToAnotherPath()}}})],1)]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <ModalElement\n v-if=\"showModal\"\n name=\"relation-modal\"\n icon=\"warning\"\n width=\"360\"\n :close-button=\"true\"\n :click-to-close=\"true\"\n :show=\"true\"\n :opacity=\"true\"\n @modalVisible=\"showModal = $event\"\n >\n <div class=\"modal-content\">\n <div class=\"modal-content__alert\">\n <icon\n class=\"modal-content__alert__svg\"\n :icon=\"icon\"\n />\n <p class=\"modal-content__alert__text\">\n {{ title }}\n </p>\n </div>\n <div class=\"modal-content__message\">\n <p\n v-if=\"message.length\"\n class=\"modal-content__message__text\"\n >\n {{ message }}\n </p>\n <p\n v-else\n class=\"modal-content__message__text\"\n >\n Oops, ocorreu um erro\n </p>\n </div>\n <ButtonComponent\n btn-style=\"primary\"\n :text=\"btnText\"\n :style=\"`width: ${btnWidth};`\"\n aria-label=\"Botão pra redirecionar para página de vinculação\"\n @click.native.prevent=\"pushToAnotherPath()\"\n />\n </div>\n </ModalElement>\n</template>\n\n<script>\nexport default {\n name: 'RelationModal',\n\n props: {\n message: {\n type: String,\n required: true,\n },\n\n icon: {\n type: String,\n default: 'WarningTriangle'\n },\n\n title: {\n type: String,\n default: 'Atenção'\n },\n\n btnText: {\n type: String,\n default: 'Tentar novamente'\n },\n\n btnWidth: {\n type: String,\n default: '10.5rem'\n },\n },\n\n data() {\n return {\n showModal: true,\n };\n },\n\n watch: {\n showModal(){\n if(!this.showModal)\n this.$emit('toogleModal');\n }\n },\n\n methods: {\n pushToAnotherPath(){\n this.showModal = false;\n this.$emit('pushToAnotherPath', { name: 'VinculacaoOnline' });\n }\n }\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.modal-content {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n padding: 1.2rem 0 1.6rem 0;\n\n @include make-accessible($white, $secondary-accessibility, background-color);\n\n &__alert {\n display: flex;\n flex-direction: column;\n align-items: center;\n background-color: $white;\n\n @include make-accessible($white, $secondary-accessibility, background-color);\n\n &__text {\n font-weight: $font-bold;\n font-size: $text-base;\n\n @include make-accessible(#464648, $white, color);\n }\n\n &__svg {\n margin-bottom: 1.2rem;\n width: 4rem;\n color: $orange-text;\n }\n }\n\n &__message {\n padding: 0.5rem 1rem 0;\n margin-bottom: 1.8rem;\n text-align: center;\n\n @include make-accessible(#464648, $white, color);\n\n &__text {\n text-align: center;\n font-size: $text-xs;\n }\n }\n}\n</style>\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RelationModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RelationModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./RelationModal.vue?vue&type=template&id=16af479a&scoped=true&\"\nimport script from \"./RelationModal.vue?vue&type=script&lang=js&\"\nexport * from \"./RelationModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./RelationModal.vue?vue&type=style&index=0&id=16af479a&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"16af479a\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.showModal)?_c('ModalElement',{attrs:{\"name\":\"pick-ubs-modal\",\"icon\":\"warning\",\"width\":\"560\",\"close-button\":true,\"click-to-close\":true,\"show\":true,\"opacity\":true,\"no-overflow\":true},on:{\"modalVisible\":function($event){_vm.showModal = $event}}},[_c('div',{staticClass:\"modal-content\"},[_c('div',{staticClass:\"modal-content__alert\"},[_c('icon',{staticClass:\"modal-content__alert__svg\",attrs:{\"icon\":_vm.icon}}),_c('p',{staticClass:\"modal-content__alert__text\"},[_vm._v(\" Escolha uma Unidade de Saúde \")])],1),_c('div',{staticClass:\"modal-content__message\"},[(_vm.message.length)?_c('p',{staticClass:\"modal-content__message__text\"},[_vm._v(\" Selecione a Unidade de Saúde onde gostaria de ser vinculado. (Opcional) \")]):_c('p',{staticClass:\"modal-content__message__text\"},[_vm._v(\" Oops, ocorreu um erro \")])]),(_vm.loading)?_c('Loading'):_c('footer',{staticClass:\"modal-content__footer\"},[(_vm.services?.length > 0)?_c('SelectComponent',{staticClass:\"modal-content__select\",attrs:{\"list\":_vm.services,\"has-border\":true,\"placeholder\":\"Selecione\"},on:{\"selectedField\":_vm.setUBS}}):_vm._e(),_c('ButtonComponent',{staticClass:\"modal-content__mainBtn\",attrs:{\"btn-style\":\"primary\",\"text\":\"Confirmar\",\"aria-label\":\"Botão para selecionar unidade e redirecionar para próxima página\",\"disabled\":!_vm.selectedUBS},nativeOn:{\"click\":function($event){$event.preventDefault();return _vm.pushToAnotherPath()}}}),_c('ButtonComponent',{staticClass:\"modal-content__secondaryBtn\",attrs:{\"btn-style\":\"tertiary\",\"text\":\"Continuar sem escolher\",\"aria-label\":\"Botão para redirecionar para próxima página sem escolher a unidade\"},nativeOn:{\"click\":function($event){$event.preventDefault();return _vm.pushToAnotherPath()}}})],1)],1)]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <ModalElement\n v-if=\"showModal\"\n name=\"pick-ubs-modal\"\n icon=\"warning\"\n width=\"560\"\n :close-button=\"true\"\n :click-to-close=\"true\"\n :show=\"true\"\n :opacity=\"true\"\n :no-overflow=\"true\"\n @modalVisible=\"showModal = $event\"\n >\n <div class=\"modal-content\">\n <div class=\"modal-content__alert\">\n <icon\n class=\"modal-content__alert__svg\"\n :icon=\"icon\"\n />\n <p class=\"modal-content__alert__text\">\n Escolha uma Unidade de Saúde\n </p>\n </div>\n <div class=\"modal-content__message\">\n <p\n v-if=\"message.length\"\n class=\"modal-content__message__text\"\n >\n Selecione a Unidade de Saúde onde gostaria de ser vinculado. (Opcional)\n </p>\n <p\n v-else\n class=\"modal-content__message__text\"\n >\n Oops, ocorreu um erro\n </p>\n </div>\n\n <Loading v-if=\"loading\" />\n <footer\n v-else\n class=\"modal-content__footer\"\n >\n <SelectComponent\n v-if=\"services?.length > 0\"\n class=\"modal-content__select\"\n :list=\"services\"\n :has-border=\"true\"\n placeholder=\"Selecione\"\n @selectedField=\"setUBS\"\n />\n <ButtonComponent\n class=\"modal-content__mainBtn\"\n btn-style=\"primary\"\n text=\"Confirmar\"\n aria-label=\"Botão para selecionar unidade e redirecionar para próxima página\"\n :disabled=\"!selectedUBS\"\n @click.native.prevent=\"pushToAnotherPath()\"\n />\n <ButtonComponent\n class=\"modal-content__secondaryBtn\"\n btn-style=\"tertiary\"\n text=\"Continuar sem escolher\"\n aria-label=\"Botão para redirecionar para próxima página sem escolher a unidade\"\n @click.native.prevent=\"pushToAnotherPath()\"\n />\n </footer>\n </div>\n </ModalElement>\n</template>\n\n<script>\nimport '@/assets/sass/project/_select.scss';\nimport SelectComponent from '@/components/common/SelectComponent.vue';\nimport { mapActions } from 'vuex';\n\nexport default {\n name: 'PickUBSModal',\n components: {\n SelectComponent\n },\n\n props: {\n message: {\n type: String,\n required: true,\n },\n\n icon: {\n type: String,\n default: 'LocationIcon'\n },\n },\n\n data() {\n return {\n showModal: true,\n selectedUBS: '',\n services: [],\n loading: true,\n };\n },\n\n watch: {\n showModal(){\n if(!this.showModal)\n this.$emit('toogleModal');\n }\n },\n\n created() {\n this.getUnities();\n },\n\n methods: {\n ...mapActions([\n 'getUnitiesList',\n ]),\n pushToAnotherPath(){\n this.showModal = false;\n this.$emit('pushToAnotherPath', { name: 'AnexarDocumentos', selectedUBS: this.selectedUBS });\n },\n setUBS(value) {\n this.selectedUBS = value;\n },\n unityAddress(el){\n return `${el.endereco.logradouro}, ${el.endereco.numero??'S/A'} - ${el.endereco.bairro}`;\n },\n async getUnities() {\n await this.getUnitiesList()\n .then((result) => {\n this.services = result.data.map((result) => ({ ...result, nomeEndereco: this.unityAddress(result) }));\n this.loading = false;\n }).catch((error) => error);\n },\n }\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.modal-content {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n row-gap: 0.5rem;\n padding: 1.2rem 0 1.6rem 0;\n\n @include make-accessible($white, $secondary-accessibility, background-color);\n\n &__alert {\n display: flex;\n flex-direction: column;\n align-items: center;\n background-color: $white;\n\n @include make-accessible($white, $secondary-accessibility, background-color);\n\n &__text {\n font-family: $montserrat-semibold;\n font-size: $text-lg;\n\n @include make-accessible(#464648, $white, color);\n }\n\n &__svg {\n margin-bottom: 1.2rem;\n width: 4rem;\n color: $orange-text;\n }\n }\n\n &__message {\n padding: 0.5rem 1rem 0;\n text-align: center;\n margin-bottom: 1.5rem;\n\n @include make-accessible(#464648, $white, color);\n\n &__text {\n text-align: center;\n font-size: $text-sm;\n font-family: $montserrat-regular;\n\n @include screen(tablet-up) {\n font-size: $text-sm;\n }\n }\n }\n\n &__footer {\n display: flex;\n flex-direction: column;\n align-items: center;\n width: 100%;\n }\n\n &__select {\n width: 100%;\n margin-bottom: 2rem;\n }\n\n &__mainBtn {\n width: 100%;\n margin-bottom: 1.5rem;\n\n @include screen (tablet-up) {\n width: 10.5rem;\n }\n }\n\n &__secondaryBtn {\n width: 100%;\n\n @include screen (tablet-up) {\n width: 20.5rem;\n }\n }\n}\n</style>\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PickUBSModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PickUBSModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PickUBSModal.vue?vue&type=template&id=fdf6eec0&scoped=true&\"\nimport script from \"./PickUBSModal.vue?vue&type=script&lang=js&\"\nexport * from \"./PickUBSModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./PickUBSModal.vue?vue&type=style&index=0&id=fdf6eec0&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"fdf6eec0\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.showModal)?_c('ModalElement',{attrs:{\"name\":\"side-card-modal\",\"width\":\"360\",\"close-button\":true,\"click-to-close\":true,\"show\":true,\"opacity\":true},on:{\"modalVisible\":function($event){_vm.showModal = $event}}},[_c('side-card',{attrs:{\"is-modal-card\":true},on:{\"closeModal\":function($event){_vm.showModal = $event}}})],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <ModalElement\n v-if=\"showModal\"\n name=\"side-card-modal\"\n width=\"360\"\n :close-button=\"true\"\n :click-to-close=\"true\"\n :show=\"true\"\n :opacity=\"true\"\n @modalVisible=\"showModal = $event\"\n >\n <side-card\n :is-modal-card=\"true\"\n @closeModal=\"showModal = $event\"\n />\n </ModalElement>\n</template>\n\n<script>\nimport SideCard from '@/components/onlineRelation/SideCard.vue';\nexport default {\n name: 'SideCardModal',\n components: { SideCard },\n\n data() {\n return {\n showModal: true,\n };\n },\n\n watch: {\n showModal(){\n if(!this.showModal) this.$emit('toogleModal');\n }\n },\n};\n</script>\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./SideCardModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./SideCardModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SideCardModal.vue?vue&type=template&id=5d82e928&\"\nimport script from \"./SideCardModal.vue?vue&type=script&lang=js&\"\nexport * from \"./SideCardModal.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","<template>\n <div>\n <component\n :is=\"showModal\"\n :message=\"modalInfo.relationModalText\"\n :btn-text=\"modalInfo.relationBtnText\"\n :info=\"info\"\n @toogleModal=\"closeModal()\"\n @pushToAnotherPath=\"({ name, selectedUBS }) => pushToRelationPage(name, selectedUBS)\"\n />\n </div>\n</template>\n\n<script>\nimport relation from '@/components/common/RelationModal.vue';\nimport ubs from '@/components/common/PickUBSModal.vue';\nimport sidecard from '@/components/common/SideCardModal.vue';\n\nexport default {\n name: 'GlobalModal',\n components: {\n relation,\n ubs,\n sidecard\n },\n inject: ['closeModal'],\n props: {\n showModal: {\n type: String,\n required: true\n },\n info: {\n type: Object,\n required: false,\n default: () => {}\n }\n },\n data() {\n return {\n modalInfo: {\n relationModalText: 'Para realizar um agendamento é necessário estar vinculado a uma Unidade de Saúde. Você pode fazer isso no botão abaixo',\n relationBtnText: 'Pedir vinculação'\n }\n };\n },\n methods: {\n pushToRelationPage(name, selectedUBS) {\n this.$router.push({ name, params: { selectedUBS } });\n\n return;\n },\n }\n};\n</script>\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GlobalModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GlobalModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GlobalModal.vue?vue&type=template&id=53e028a8&\"\nimport script from \"./GlobalModal.vue?vue&type=script&lang=js&\"\nexport * from \"./GlobalModal.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","<template>\n <div class=\"base\">\n <Header :current-view=\"currentView\" />\n <div class=\"main\">\n <transition\n name=\"slide-fade\"\n mode=\"out-in\"\n >\n <router-view />\n </transition>\n </div>\n <GlobalModal\n :show-modal=\"showModal\"\n :info=\"modalInfo\"\n />\n <Footer\n v-if=\"footerShow\"\n />\n </div>\n</template>\n\n<script>\n// @ is an alias to /src\nimport Header from '@/components/common/Header.vue';\nimport Footer from '../components/common/Footer.vue';\nimport { mapGetters } from 'vuex';\nimport autoLogin from '@/mixins/autoLoginMixin';\nimport GlobalModal from '../components/common/GlobalModal.vue';\n\nexport default {\n name: 'Base',\n components: {\n Header,\n Footer,\n GlobalModal\n},\n\n mixins: [ autoLogin ],\n\n provide() {\n return {\n displayModal: this.displayModal,\n closeModal: this.closeModal\n };\n },\n\n data(){\n return {\n currentView: 'Home',\n showModal: '',\n modalInfo: {}\n };\n },\n\n computed: {\n ...mapGetters([\n 'userIsLogged',\n 'userToken'\n ]),\n footerShow(){\n if(this.currentView === 'Home' || this.currentView === 'UnitiesList' ||\n this.currentView === 'FAQ' || this.currentView === 'Accessibility' ||\n this.currentView === 'ShortcutList')\n\n return true;\n\n return false;\n }\n },\n\n mounted(){\n this.currentView = this.$router.history.current.name;\n },\n updated(){\n this.currentView = this.$router.history.current.name;\n },\n\n methods: {\n displayModal(modalName, info = {}) {\n this.showModal = modalName;\n this.modalInfo = info;\n },\n closeModal() {\n this.showModal = '';\n this.modalInfo = {};\n }\n },\n\n};\n</script>\n\n<style lang=\"scss\" scoped>\n .base {\n height: 100%;\n width: 100vw;\n\n @include make-accessible($gray-bg, $primary-accessibility, background-color);\n\n @include screen (phone-only) {\n padding-bottom: 2.5rem;\n }\n }\n\n .main {\n position: relative;\n margin: 0 4%;\n padding: 1.5rem 0;\n min-height:\n calc(\n 100vh - (#{$subheader-mobile-height} + #{$header-mobile-height})\n );\n\n @include screen(tablet-big-up) {\n margin: 1.5rem 8%;\n padding: 0;\n min-height:\n calc(\n 100vh - (#{$subheader-desktop-height} + #{$header-desktop-height})\n );\n }\n }\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Base.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Base.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Base.vue?vue&type=template&id=34496ac8&scoped=true&\"\nimport script from \"./Base.vue?vue&type=script&lang=js&\"\nexport * from \"./Base.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Base.vue?vue&type=style&index=0&id=34496ac8&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"34496ac8\",\n null\n \n)\n\nexport default component.exports","var map = {\n\t\"./aracruz/icons/logo-cidade.svg\": 3546,\n\t\"./pmcariacica/icons/logo-cidade.svg\": 2270,\n\t\"./pmci/icons/logo-cidade.svg\": 1664,\n\t\"./pmvv/icons/logo-cidade.svg\": 2476,\n\t\"./upcities/icons/logo-cidade.svg\": 3760\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 9165;","var map = {\n\t\"./IconArrowNext.vue\": [\n\t\t6488,\n\t\t6488\n\t],\n\t\"./IconCadastroDependentes.vue\": [\n\t\t5968,\n\t\t5968\n\t],\n\t\"./IconCitiesProduct.vue\": [\n\t\t8320,\n\t\t8320\n\t],\n\t\"./IconContato.vue\": [\n\t\t5714,\n\t\t5714\n\t],\n\t\"./IconEdit.vue\": [\n\t\t702,\n\t\t702\n\t],\n\t\"./IconErrorDependent.vue\": [\n\t\t6386,\n\t\t6386\n\t],\n\t\"./IconFacebook.vue\": [\n\t\t6492,\n\t\t6492\n\t],\n\t\"./IconFileLimite.vue\": [\n\t\t7582,\n\t\t7582\n\t],\n\t\"./IconInstagram.vue\": [\n\t\t7958,\n\t\t4389\n\t],\n\t\"./IconIssueDependent.vue\": [\n\t\t1306,\n\t\t1306\n\t],\n\t\"./IconLinkedin.vue\": [\n\t\t5878,\n\t\t5878\n\t],\n\t\"./IconRatingStar.vue\": [\n\t\t2738,\n\t\t2738\n\t],\n\t\"./IconVinculacaoOnline.vue\": [\n\t\t1584,\n\t\t1584\n\t],\n\t\"./IconWarningDependent.vue\": [\n\t\t8338,\n\t\t8338\n\t],\n\t\"./IconWeb.vue\": [\n\t\t4360,\n\t\t7293\n\t],\n\t\"./IconYoutube.vue\": [\n\t\t1155,\n\t\t1155\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn __webpack_require__.e(ids[1]).then(function() {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = function() { return Object.keys(map); };\nwebpackAsyncContext.id = 6920;\nmodule.exports = webpackAsyncContext;"],"names":["render","_vm","this","_c","_self","lazyComponent","tag","_v","_s","title","icon","staticRenderFns","name","props","type","String","required","default","data","mounted","loadComponent","methods","then","component","class","materialIconsStyleClass","attrs","iconStyle","computed","staticClass","imageSize","userImage","imageUser","require","currentView","showModal","modalInfo","footerShow","_e","isHomePage","isAppointmentPage","currentPage","sendAppointment","on","$event","preventDefault","backToComponent","redirectToHome","realm","$t","linkMultiAgendamento","length","userIsLogged","toggleMenu","style","firstName","userGender","userZipcode","unityName","userData","avatar","userLogin","menuState","isWebView","minhaContaUrl","nativeOn","closeMenu","apply","arguments","logout","_l","bottomButtons","button","index","key","toRouteName","verifyButtonIcon","iconFilled","iconOutline","text","menuMobileState","verifyProfileText","closeMobileMenu","verifyUserIsLogged","modalData","message","redirectToUnities","show","open","unityOpen","openUnityCard","unityData","message1","message2","message3","arrow","phoneNumber","mapLink","menuButtons","menuButton","routeName","href","isNew","linkAction","routeButtonActive","handleRoutes","routeButtonIcon","routeText","Boolean","$emit","handleProfile","profileIcon","profileText","linkTarget","linkActions","components","RouteButton","ProfileButton","MobileLink","MobileRoute","ErrorModal","UserAvatarPlaceholder","Home","Appointment","ConsultaAgendamento","MinhaConta","MeusAgendamentos","onlineRelation","MultiAgendamento","Vacina","FAQ","Sair","mapGetters","verifyClientId","splitedName","split","process","covidText","hasUnity","nome","telefone","link_maps","created","$root","$refs","Footer","$set","mapActions","page","toggleMobileMenu","window","scrollTo","document","querySelector","classList","toggle","remove","loginKeycloak","error","$router","replace","catch","userLogout","query","mobileState","filled","outline","push","BottomNavigation","inject","highContrastOn","addEventListener","eventCloseMenu","beforeDestroy","removeEventListener","highContrastVerifier","highContrast","checked","resetAccessibility","$route","go","routeStepChange","e","contains","target","currentStep","currentStepNumber","currentStepName","currentStepDescription","stepsList","step","itemClass","changeCurrentStep","steps","marginLeft","marginCurrentStep","stepsIsCompleted","saveCurrentStep","stepsTitle","FirstLine","StepperChecklist","realmTheme","VUE_APP_THEME_REALM","SvgWrapper","GoogleIcon","urlParams","URL","location","searchParams","get","$store","dispatch","autoLogin","async","userAutoLoginData","origin","params","token","refresh_token","client_id","Promise","all","userAutoLoginKeycloak","setAuthHeader","userResetAutoLoginData","relationModalText","relationBtnText","info","closeModal","pushToAnotherPath","selectedUBS","pushToRelationPage","btnWidth","btnText","watch","loading","services","setUBS","SelectComponent","getUnities","value","unityAddress","el","endereco","logradouro","numero","bairro","getUnitiesList","result","map","nomeEndereco","SideCard","relation","ubs","sidecard","Object","Header","GlobalModal","mixins","provide","displayModal","history","current","updated","modalName","webpackContext","req","id","webpackContextResolve","__webpack_require__","o","Error","code","keys","resolve","module","exports","webpackAsyncContext","ids"],"sourceRoot":""}