{"version":3,"sources":["consts/index.ts","modules/AuthProvider/AuthContext.ts","types/graphql-global-types.ts","modules/AuthProvider/index.ts","modules/AuthProvider/AuthProvider.tsx","modules/PageMetaProvider/PageMetaContext.ts","modules/PageMetaProvider/index.ts","modules/PageMetaProvider/PageMetaProvider.tsx","config.ts","modules/apollo.ts","themes/DefaultTheme.ts","components/PublicRoute/index.ts","components/PublicRoute/PublicRoute.tsx","components/PrivateRoute/index.ts","components/PrivateRoute/PrivateRoute.tsx","pages/ErrorPages/Unauthorized/styles.ts","components/StyledTooltip/styles.ts","components/StyledTooltip/index.ts","components/StyledTooltip/StyledTooltip.tsx","components/styles.ts","components/button/ActionButton/styles.ts","components/button/ActionButton/index.ts","components/button/ActionButton/ActionButton.tsx","pages/ErrorPages/Unauthorized/index.ts","pages/ErrorPages/Unauthorized/Unauthorized.tsx","assets/images/egm-brand.png","modules/LocaleProvider/LocaleContext.ts","assets/images/gov-mg-brand.svg","assets/images/msanp-brand.svg","components/page/PageHeader/styles.ts","components/page/PageHeader/index.ts","components/page/PageHeader/PageHeader.tsx","assets/images/covax-branding-image.svg","assets/images/new-ugd-logo.svg","assets/images/la2mg.svg","components/page/PageFooter/styles.ts","assets/images/flag-mg.svg","assets/images/flag-fr.svg","locales/fr-FR/common.ts","locales/fr-FR/errors.ts","locales/fr-FR/index.ts","locales/fr-FR/hellobar.ts","locales/fr-FR/signin.ts","locales/fr-FR/register.ts","locales/fr-FR/changepassword.ts","locales/fr-FR/userprofile.ts","locales/fr-FR/user.ts","locales/fr-FR/citizen.ts","locales/fr-FR/profile.ts","locales/fr-FR/card.ts","locales/fr-FR/forgotpassword.ts","locales/fr-FR/resetpassword.ts","locales/fr-FR/faq.ts","locales/mg-MG/common.ts","locales/mg-MG/errors.ts","locales/mg-MG/index.ts","locales/mg-MG/hellobar.ts","locales/mg-MG/signin.ts","locales/mg-MG/register.ts","locales/mg-MG/changepassword.ts","locales/mg-MG/userprofile.ts","locales/mg-MG/user.ts","locales/mg-MG/citizen.ts","locales/mg-MG/profile.ts","locales/mg-MG/card.ts","locales/mg-MG/forgotpassword.ts","locales/mg-MG/resetpassword.ts","locales/mg-MG/faq.ts","locales/index.ts","modules/LocaleProvider/LocaleProvider.tsx","modules/LocaleProvider/index.ts","components/page/PageFooter/index.ts","components/page/PageFooter/PageFooter.tsx","assets/images/gov-mg-brand-original-pattern.png","components/page/PageContainer/styles.ts","components/page/PageContainer/index.ts","components/page/PageContainer/PageContainer.tsx","modules/hooks/useErrorHanlder.ts","graphql/citizen/fragment.ts","graphql/citizen/mutation.ts","graphql/authentication/query.ts","graphql/citizen/query.ts","graphql/citizen/hooks/useCitizenVaccinationProfile.ts","pages/Registration/styles.ts","components/inputfields/TextInputField/styles.ts","components/inputfields/TextInputField/index.ts","components/inputfields/TextInputField/TextInputField.tsx","components/inputfields/AutoCompleteField/RealAutoCompleteField/index.ts","components/inputfields/AutoCompleteField/RealAutoCompleteField/RealAutoCompleteField.tsx","components/inputfields/AutoCompleteField/index.ts","components/inputfields/AutoCompleteField/AutoCompleteField.tsx","components/inputfields/DateInputField/index.ts","components/inputfields/DateInputField/DateInputField.tsx","graphql/localization/fragment.ts","graphql/localization/query.ts","graphql/localization/hooks/useAllMunicipality.ts","graphql/localization/hooks/useAllAddress.ts","graphql/localization/hooks/useFokontaniesByMunicipality.ts","components/inputfields/RadioInputField/styles.ts","components/inputfields/RadioInputField/index.ts","components/inputfields/RadioInputField/RadioInputField.tsx","pages/Registration/CitizenInfoForm/styles.ts","pages/Registration/CitizenFokontanySearch/styles.ts","pages/Registration/CitizenFokontanySearch/index.ts","pages/Registration/CitizenFokontanySearch/CitizenFokontanySearch.tsx","graphql/localization/hooks/useDistrictsByRegion.ts","graphql/localization/hooks/useMunicipalitesByDistrict.ts","pages/Registration/CitizenInfoForm/index.ts","pages/Registration/CitizenInfoForm/CitizenInfoForm.tsx","graphql/localization/hooks/useAllRegion.ts","graphql/job/fragment.ts","graphql/job/query.ts","graphql/job/hooks/useAllJob.ts","graphql/job/hooks/useAllEmployerEntity.ts","pages/Registration/CitizenJobForm/index.ts","pages/Registration/CitizenJobForm/CitizenJobForm.tsx","graphql/health/fragment.ts","graphql/health/query.ts","graphql/health/hooks/useAllComorbidity.ts","graphql/health/hooks/useAllHealthCenter.ts","graphql/vaccine_meta/fragment.ts","graphql/vaccine_meta/query.ts","graphql/vaccine_meta/hooks/useAllVaccineMeta.ts","pages/Registration/CitizenHealthForm/index.ts","pages/Registration/CitizenHealthForm/CitizenHealthForm.tsx","pages/Registration/RegistrationAckPaper/styles.ts","pages/Registration/RegistrationAckPaper/index.ts","pages/Registration/RegistrationAckPaper/RegistrationAckPaper.tsx","pages/Registration/Registration.tsx","pages/Registration/index.ts","pages/Registration/formik.ts","graphql/citizen/hooks/useCitizenSubscribeMutation.ts","components/button/ConfirmButton/index.ts","components/button/ConfirmButton/ConfirmButton.tsx","graphql/authentication/mutation.ts","graphql/authentication/hooks/useMyProfile.ts","graphql/authentication/hooks/useForgotPassword.ts","components/page/TipsContainer/styles.ts","assets/images/person-tips-oldman.svg","components/page/TipsContainer/TipsHeadline/styles.ts","components/page/TipsContainer/TipsHeadline/index.ts","components/page/TipsContainer/TipsHeadline/TipsHeadline.tsx","components/page/TipsContainer/index.ts","components/page/TipsContainer/TipsContainer.tsx","components/page/TipsContainer/TipsItem/styles.ts","components/page/TipsContainer/TipsItem/index.ts","components/page/TipsContainer/TipsItem/TipsItem.tsx","pages/SignIn/styles.ts","assets/images/signin-persona-ext-travelers.svg","assets/images/signin-persona-health-worker.svg","assets/images/signin-persona-fair-people.svg","assets/images/signin-persona-gov-security.svg","pages/SignIn/tips.ts","assets/images/signin-persona-social-worker.svg","assets/images/signin-persona-teleoperator.svg","pages/SignIn/TooltipsCard/styles.ts","pages/SignIn/TooltipsCard/index.ts","pages/SignIn/TooltipsCard/TooltipsCard.tsx","pages/SignIn/index.ts","pages/SignIn/SignIn.tsx","graphql/authentication/hooks/useSignIn.ts","pages/SignIn/formik.ts","components/InfiniteLoading/styles.ts","components/InfiniteLoading/index.ts","components/InfiniteLoading/InfiniteLoading.tsx","pages/Profile/styles.ts","components/button/LabeledIconButton/styles.ts","components/button/LabeledIconButton/index.ts","components/button/LabeledIconButton/LabeledIconButton.tsx","pages/Profile/CitizenInfoForm/index.ts","pages/Profile/CitizenInfoForm/CitizenInfoForm.tsx","pages/Profile/CitizenJobForm/index.ts","pages/Profile/CitizenJobForm/CitizenJobForm.tsx","pages/Profile/CitizenHealthForm/index.ts","pages/Profile/CitizenHealthForm/CitizenHealthForm.tsx","assets/images/vaccine-dose-enabled.svg","assets/images/default-profile-pic.svg","pages/Profile/UserAvatar/styles.ts","pages/Profile/UserAvatar/UserAvatar.tsx","pages/Profile/UserAvatar/index.ts","components/dialog/DialogBase/DialogBaseTitle/styles.ts","components/dialog/DialogBase/DialogBaseTitle/index.ts","components/dialog/DialogBase/DialogBaseTitle/DialogBaseTitle.tsx","components/dialog/DialogBase/styles.ts","components/dialog/DialogBase/index.ts","components/dialog/DialogBase/DialogBase.tsx","pages/Profile/AvatarUploader/helper.ts","pages/Profile/AvatarUploader/styles.ts","pages/Profile/AvatarUploader/AvatarUploader.tsx","pages/Profile/AvatarUploader/index.ts","graphql/citizen/hooks/useCitizenUpdateProfilePicMutation.ts","pages/Profile/MainProfile/index.ts","pages/Profile/MainProfile/MainProfile.tsx","graphql/citizen/hooks/useCitizenSignIdMutation.ts","pages/Profile/Profile.tsx","graphql/citizen/hooks/useCitizenEditProfileMutation.ts","pages/Profile/formik.ts","pages/Profile/index.ts","pages/ForgotPassword/styles.ts","pages/ForgotPassword/ForgotPasswordAckPaper/styles.ts","pages/ForgotPassword/ForgotPasswordAckPaper/index.ts","pages/ForgotPassword/ForgotPasswordAckPaper/ForgotPasswordAckPaper.tsx","pages/ForgotPassword/index.ts","pages/ForgotPassword/ForgotPassword.tsx","pages/ForgotPassword/formik.ts","pages/ResetPassword/styles.ts","pages/ResetPassword/ResetPasswordAckPaper/styles.ts","pages/ResetPassword/ResetPasswordAckPaper/index.ts","pages/ResetPassword/ResetPasswordAckPaper/ResetPasswordAckPaper.tsx","pages/ResetPassword/index.ts","pages/ResetPassword/ResetPassword.tsx","graphql/authentication/hooks/usePasswordResetCheck.ts","graphql/authentication/hooks/usePasswordReset.ts","pages/ResetPassword/formik.ts","pages/VaccinationCard/styles.ts","pages/VaccinationCard/CardCertificate/index.tsx","pages/VaccinationCard/CardCertificate/CardCertificate.tsx","pages/VaccinationCard/VaccinationCard.tsx","pages/VaccinationCard/index.ts","pages/Faq/styles.ts","graphql/faq/fragment.ts","graphql/faq/query.ts","assets/images/faq-curious-individu.svg","assets/images/faq-empty.svg","pages/Faq/FaqItem/styles.ts","pages/Faq/FaqItem/index.ts","pages/Faq/FaqItem/FaqItem.tsx","pages/Faq/index.ts","pages/Faq/Faq.tsx","graphql/faq/hooks/useAllFaq.ts","pages/ChoiceCertificate/styles.ts","assets/images/la2m_choice.svg","pages/ChoiceCertificate/ChoiceCertificate.tsx","pages/ChoiceCertificate/index.ts","pages/TestCard/styles.ts","pages/TestCard/TestCertificate/TestCertificate.tsx","pages/TestCard/TestCard.tsx","pages/TestCard/index.ts","pages/index.ts","pages/Pages.tsx","modules/QRCodeProvider/QRCodeContext.ts","modules/QRCodeProvider/index.ts","modules/QRCodeProvider/QRCodeProvider.tsx","App.tsx","reportWebVitals.ts","index.tsx"],"names":["RegistrationStep","ApolloErrorCode","AuthContext","createContext","currentUser","undefined","setCurrentUser","isAuthenticated","signIn","accessToken","signOut","DEFAULT_SIGNIN_ROUTE","DEFAULT_HOME_ROUTE","ACCESS_TOKEN_KEY","process","NETWORK_ERROR","EnumGender","useAuthContext","useContext","AuthProvider","children","useState","Provider","value","user","Boolean","localStorage","getItem","setItem","removeItem","PageMetaContext","pathLabels","setPathLabels","usePageMetaContext","PageMetaProvider","intl","useIntl","pageTitle","length","formatMessage","id","defaultMessage","defaultTitle","Helmet","titleTemplate","defer","REACT_APP_API_URL","REACT_APP_REST_URL","REACT_APP_HEALTH_PROFILE_URL","cache","InMemoryCache","httpLink","createUploadLink","uri","createApolloClient","ApolloClient","link","ApolloLink","operation","forward","setContext","headers","authorization","concat","defaultOptions","query","fetchPolicy","watchQuery","palette","main","dark","light","disabled","black","DefaultTheme","createMuiTheme","maxContainerWidth","leftSideBarWidth","screenbreakpoint","smartphone","tablet","large","xlarge","xsmall","spacing","factor","typography","fontFamily","join","button","primary","secondary","default","fonts","lighter","lightest","error","success","border","text","icon","blue","colors","white","black00","black01","black02","black03","black004","tipsPrimaryTitle","tipsSecondaryTitle","lightPurple","grey","background","info","paper","input","PublicRoute","Component","component","others","render","props","location","pathname","indexOf","to","search","state","from","PrivateRoute","styles","makeStyles","theme","root","width","height","display","flexDirection","overflow","justifyContent","container","marginBottom","appLogoContainer","appLogo","appMakerLogo","loginCaption","textAlign","padding","fontSize","fontWeight","divider","margin","marginLeft","marginRight","alignItems","formBox","marginTop","paddingRight","submitButtom","controlsWrapper","forgotPasswordLink","alertContainer","registerLink","textDecoration","title","color","btn","popper","tooltip","maxWidth","boxSizing","borderRadius","backgroundColor","boxShadow","letterSpacing","lineHeight","textTransform","StyledTooltip","open","head","className","otherProps","classes","useStyles","Tooltip","enterDelay","Box","style","borderBottom","paddingBottom","whiteSpace","clsx","label","textOverflow","font","userDrag","userSelect","inlineLabel","scrollbar","scrollbarWidth","scrollbarColor","flex","webkitFlex","msFlex","minWidth","minHeight","cursor","buttonWrapper","wrapped","Color","lighten","opacity","darken","third","fontStyle","primaryLabel","secondaryLabel","primaryDisabledColor","secondaryDisabledColor","circularProgress","ActionButton","loading","CircularProgressProps","buttonClasses","commonClasses","useCommonStyles","Button","CircularProgress","size","Unauthorized","history","useHistory","Paper","elevation","Typography","variant","autoFocus","onClick","push","Grid","justify","item","align","Date","getFullYear","src","EnumLocaleKeys","paddingLeft","breakpoints","down","wrapper","govBrand","msanpBrand","flagIcon","languageLabel","PageHeader","Container","GovMgBrandingImage","alt","href","target","MsanpBrandingImage","paddingTop","copyright","makerBrand","covaxBrand","la2mBrand","copyrightWrapper","LocaleContext","locale","setLocale","newLocale","format","sub","years","add","days","common","errors","useIntlLabel","obj","attr","str","String","toLowerCase","split","map","word","charAt","toUpperCase","slice","messages","fr","fr_FR","mg","mg_MG","LOCALSTORAGE_FIELD_KEY","LocaleProvider","React","Malagasy","loadLastLocale","a","lastLocale","Francais","useEffect","defaultLocale","PageFooter","FlagMgIcon","FlagFrIcon","EgmBrandingImage","CovaxBrandingImage","La2mBrandingImage","showBackground","position","GovBrandPatternImage","flexGrow","content","PageContainer","classnames","mergeErrorHandler","destination","source","code","message","callback","silent","useErrorHanlder","defaultMessages","useSnackbar","enqueueSnackbar","commonMessages","UKNOWN_ERROR","INTERNAL_SERVER_ERROR","UNAUTHENTICATED","FORBIDDEN","ARGS_TYPE_ERROR","getCurrentErrorCodeMessage","apolloErrorCode","errorHandler","handler","graphQLErrors","currentError","currentErrorCode","extensions","currentHandler","networkError","anchorOrigin","horizontal","vertical","CITIZEN_INFO_FRAGMENT","gql","CITIZEN_SUBSCRIBE","CITIZEN_EDIT_PROFILE","CITIZEN_UPLOAD_PIC","CITIZEN_SIGN_ID","MY_PROFILE","USER_CHECK_PASSWORD_RESET","CITIZEN_VACCINATION_PROFILE","useCitizenVaccinationProfile","accessKey","handleError","errorAlert","setErrorAlert","useQuery","skip","variables","onError","INVALID_ACCESS_KEY","CITIZEN_NOT_FOUND","data","closeAlert","isLoading","citizenProfile","fullWithPaper","tipsItem","form","formTitle","actionButton","titleContainer","signLink","requiredHint","actionButtonWrapper","inputLabelRoot","textFieldroot","fade","TextInputField","InputLabel","disableAnimation","required","TextField","RealAutoCompleteField","getItemKey","getItemLabel","items","onSelectionChange","defaultValue","multiline","freeSolo","placeholder","name","helperText","onBlur","textFieldProps","autoCompleteValue","setAutoCompleteValue","inputValue","setInputValue","getOptionKey","option","Autocomplete","options","autoComplete","autoHighlight","autoSelect","noOptionsText","getOptionLabel","getOptionSelected","currentValue","itemKey","defaultSelectedOption","find","itm","getDefaultValue","onChange","event","newValue","onInputChange","newInputValue","renderInput","params","InputProps","startAdornment","rowsMax","fullWidth","AutoCompleteField","DateInputField","inputVariant","disableToolbar","disableFuture","inputProps","maxLength","invalidDateMessage","KeyboardButtonProps","REGION_INFO_FRAGMENT","DISTRICT_INFO_FRAGMENT","MUNICIPALITY_INFO_FRAGMENT","FOKONTANY_INFO_FRAGMENT","ADDRESS_INFO_FRAGMENT","GET_ALL_REGION","GET_DISTRICTS_BY_REGION","GET_ALL_MUNICIPALITY","GET_MUNICIPALITIES_BY_DISTRICT","GET_FOKONTANIES_BY_MUNICIPALITY","GET_ALL_ADDRESS","useAllMunicipality","municipalities","useAllAddress","fokontanyId","addresses","useFokontaniesByMunicipality","municipalityId","fokontanies","fokontaniesByMunicipality","optionLabel","RadioInputField","RadioGroup","optionItem","FormControlLabel","control","Radio","FormHelperText","popupActionButton","modal","float","subTitle","buttonClose","notice","close","right","top","CitizenFokontanySearch","isParentFormLoading","regions","stateChange","formik","currentRegion","setCurrentRegion","currentDistrict","setCurrentDistrict","currentMunicipality","setCurrentMunicipality","currentFokontany","setCurrentFokontany","regionId","districts","districtsByRegion","useDistrictsByRegion","isLoadingDistrict","districtId","useMunicipalitesByDistrict","isLoadingMunicipality","isLoadingFokontany","md","xs","selectedVal","handleChange","CitizenInfoForm","useAllRegion","isLoadingRegion","values","isLoadingAddress","showPopup","setShowPopup","lastName","handleBlur","touched","firstName","birthDate","newBirthDate","setFieldValue","maxDate","maxDateMessage","_errorElem","dateVal","setErrors","InputAdornment","aria-label","gender","row","MALE","FEMALE","mask","phoneNumber","disableUnderline","email","cniNum","district","addressName","Set","adrItem","addressId","onClose","overlayStyle","closeOnDocumentClick","JOB_INFO_FRAGMENT","EMPLOYERENTITY_INFO_FRAGMENT","GET_ALL_JOB","GET_ALL_EMPLOYERENTITY","useAllJob","other","intlLabel","refetch","jobs","jobItem","useAllEmployerEntity","employerEntities","CitizenJobForm","isLoadingJob","otherJobs","isLoadingOtherJob","isLoadingEmployerEntity","employerName","employerItm","jobId","offRegNum","profRegNum","cnapsId","jobName","jobItm","COMORBIDITY_INFO_FRAGMENT","HEALTHCENTER_INFO_FRAGMENT","GET_ALL_COMORBIDITY","GET_ALL_HEALTHCENTER","useAllComorbidity","comorbidities","comorbidityItem","useAllHealthCenter","healthCenters","VACCINE_META_INFO_FRAGMENT","GET_ALL_VACCINE_META","useAllVaccineMeta","vaccines","CitizenHealthForm","isLoadingComorbidity","isLoadingVaccines","isLoadingHealthCenter","otherComorbidities","isLoadingOtherComorbidity","comorbidityId","comorbidityName","comorbidityItm","healthCenterId","desiredVaccineId","centent","wordBreak","RegistrationAckPaper","dangerouslySetInnerHTML","__html","REGISTRATION_STEPS","REGISTRATION_PERSONAL_INFO","REGISTRATION_JOB_INFO","REGISTRATION_HEALTH_INFO","Registration","currentStep","setCurrentStep","config","validationSchema","yup","min","matches","useBaseFormik","validateOnChange","validate","trim","toString","includes","useFormik","initialValues","appointmentDate","onSubmit","helper","createCitizenMutation","isCurrentFormValid","theErrors","successAlert","setSuccessAlert","useMutation","onCompleted","selfSubscribeCitizen","citizen","onSuccess","CITIZEN_EXISTS","CITIZEN_CREATION_FAILED","INVALID_PHONE_NUMBER","INVALID_EMAIL_ADDRESS","NON_AUTHORIZED_OPERATION","HEALTH_REGISTRATION_FAILED","JOB_REGISTRATION_FAILED","ADDRESS_REGISTRATION_FAILED","PCR_TEST_NOT_ACCEPTED","mutate","createCitizenLoading","createInput","lastPcrTest","covaxPriority","useCitizenSubscribeMutation","REGISTRATION_ACK_INFO","createCloseAlert","createSuccessAlert","createErrorAlert","hasNextStep","hasPrevousStep","renderRegistrationStepName","useCallback","renderRegistrationForm","handleSubmit","Alert","severity","sm","currentStepIndex","validateForm","then","theError","type","isValid","ConfirmButton","USER_SIGN_IN","USER_FORGOT_PASSWORD","USER_RESET_PASSWORD","useMyProfile","myProfile","currentProfile","useForgotPassword","healthProfileForgotPassword","resetToken","INVALID_CREDENTIAL","forgotPasswordMutation","username","forgotPasswordLoading","tips","flexWrap","hintMessage","flexBasis","hideOnSmartphone","hideOnTablet","hideOnLargeScreen","up","tipsHintImage","titleWrapper","primaryTitle","secondaryTitle","TipsHeadline","OldPersonImage","TipsContainer","hideTipsOnTablet","hideTipsOnSmartphone","hideTipsOnLargeScreen","hideHealinesOnTablet","hideHealinesOnSmartphone","hideHealinesOnLargeScreen","hideTips","mainWrapper","justifyItems","tipsImageWrapper","tipsImage","maxHeight","tipsCaptionWrapper","tipsCaption","TipsItem","image","caption","mainContainer","infoButton","textDecorationLine","linkWrappers","registerHint","mainTipsContent","PERSONAS_PRIORITY","HealthWorkerPersonaImage","GovSecurityPersonaImage","FairPeoplePersonaImage","TravalersPersonaImage","TooltipsCard","rel","SignIn","showPassword","setShowPassword","useLocation","urlSearchParams","URLSearchParams","healthProfileSignIn","refreshToken","redirectRoute","get","certAccessKey","window","signInMutation","password","signInLoading","useSignIn","setOpen","openTooltips","setOpenTooltips","setTimeout","o","max","personaItem","index","endAdornment","IconButton","Divider","contentStyle","bottom","left","InfiniteLoading","mainProfile","mainProfilePicture","mainProfileInfo","mainProfileName","mainProfileAttr","vaccineDoseWrapper","vaccineDoseItem","vaccineDoseIcon","vaccineDoseIconChecked","vaccineDoseLabel","bottomaActionBar","topActionBar","saturate","alpha","primaryDisabled","iconColor","fill","primaryIconColor","disabledIconColor","disabledLabel","LabeledIconButton","startIcon","thickness","isVaccined","onToggleEditor","hidden","small","medium","avatarButton","editButtonContainer","action","focus","contrastText","active","UserAvatar","forwardRef","ref","onEditClick","renderAvatar","Avatar","DefaultAvatar","ButtonBase","displayName","labelWrapper","textShadow","iconCloseWrapper","iconClose","iconCloseDisabled","DialogBaseTitle","enableCloseIcon","disableClose","dialogTitleClasses","DialogTitle","disableTypography","cloneElement","actions","DialogBase","DialogTitleComponent","DialogTitleProps","dialogClasses","Dialog","disableBackdropClick","fullScreen","PaperProps","DialogContent","DialogActions","createImage","url","Promise","resolve","reject","Image","addEventListener","setAttribute","getCroppedImg","imageSrc","pixelCrop","canvas","document","createElement","ctx","getContext","maxSize","Math","safeArea","sqrt","translate","drawImage","getImageData","putImageData","round","x","y","toBlob","file","dialogTitleText","dialog","dialogTitleSection","closeIconWrapper","closeIcon","dialogContent","noPadding","secondButton","buttonProgressCircle","dialogAvatarWidth","zIndex","uploadButton","uploadIcon","imageCropper","actionWrapper","defaultAvatar","zoomControl","AVATAR_SIZE","AvatarUploader","handleCloseUploader","citizenId","currentAvatar","NoImage","crop","setCrop","cropSize","setCropSize","zoom","setZoom","newAvatar","setNewAvatar","avatarFilename","setAvatarFilename","croppedAvatar","setCroppedAvatar","updateProfilePic","update","myData","readQuery","writeQuery","photo","updateProfilePicLoading","updateProfilePicMutation","thePicture","thePic","useCitizenUpdateProfilePicMutation","onCropComplete","croppedArea","croppedAreaPixels","croppedImage","aspect","cropShape","showGrid","onCropChange","onZoomChange","onCropSizeChange","restrictPosition","Slider","step","aria-labelledby","e","accept","currentTarget","files","fileTmp","reader","FileReader","result","readAsDataURL","multiple","File","replace","MainProfile","uploadNewAvatar","setUploadNewAvatar","healthProfileSignInCitizenId","signIdMutation","signIdLoading","useCitizenSignIdMutation","isSignIdLoading","showCardButton","health","vaccineEvents","epiId","vaxEvent","CheckedIconEnabled","doseNum","doseName","prodigyId","Profile","currentForm","setCurrentForm","municipality","fokontany","address","job","employer","otherJob","otherComorbidity","updateCitizenProfile","updateCitizenProfileLoading","updateCitizenProfileMutation","profileInput","useCitizenEditProfileMutation","handleCurrentEditableFormChange","newSelectedForm","lastSelectedForm","setValues","direction","isLoadingProfile","ackPaper","ForgotPasswordAckPaper","theUsername","theEmailAddress","ForgotPassword","showAckForm","setShowAckForm","setTheEmailAddress","emailAddress","ResetPasswordAckPaper","ResetPassword","newpassword","confirmpassword","useParams","INVALID_PASSWORDRESET_TOKEN","healthProfilePasswordResetCheck","usePasswordResetCheck","passwordResetCheckIsLoading","passwordResetTokenIsValid","passwordResetCheckErrorAlert","passwordResetCheckCloseAlert","healthProfileResetPassword","response","PASSWORD_INVALID","PASSWORD_NOT_MATCH","passwordResetMutation","newPassword","confirmPassword","passwordResetLoading","usePasswordReset","passwordResetCloseAlert","passwordResetErrorAlert","toggleShowPassword","fieldName","oldState","alignContent","toolbar","printablePage","contentLogo","vaccineCertImage","headerLogo","headerLogoRight","prmLogo","marginPrimary","marginSecondary","mainTitle","mainSubTitle","mainSubTitleVirus","mainLabel","mainValue","mainLocalization","contentQRCode","footerLeftLogo","signatureContainer","table","tableRow","signatureText","stamp","cellDose","buttonDownload","printBodyClass","CardCertificate","printRef","VaccinationCard","componentRef","useRef","console","log","civilState","healthState","canGetCertificate","trigger","documentTitle","bodyClass","current","controlPanel","technicalLabel","faqLabel","captionMessage","faqCuriousIndividu","controlForm","qaPanel","qaEmptyPanel","alignItem","backLink","faqEmptyImage","emptyPrimaryMessage","emptySecondaryMessage","FAQ_INFO_FRAGMENT","FAQCATEG_INFO_FRAGMENT","GET_ALL_FAQ","boxHead","typoQuestion","marginBotton","typoAnswer","dropDownIcon","transition","transitions","create","duration","short","transform","FaqItem","question","answer","isOpen","currentState","Collapse","in","Faq","faqCategory","setFaqCategory","searchQuery","setSearchQuery","faqs","faqItem","faqCategs","categItem","useAllFaq","faqList","filter","qaItem","categId","evt","FaqCuriousIndividu","FaqEmpty","buttons","cardGrid","card","cardContent","cardMedia","choiceCertificateHeading","cardCaption","cardContentCaption","cards","typeLogo","ChoiceCertificate","testKey","Card","CardContent","gutterBottom","CardMedia","TestCertificate","TestCard","testCovidEvents","canGetTestCovidCertificate","Pages","exact","path","QRCodeContext","countryCode","setCountryCode","numericCode","setNumericCode","epi","setEpi","physicalNumber","setPhysicalNumber","QRCodeProvider","client","App","maxSnack","ApolloProvider","ThemeProvider","frLocale","utils","DateFnsUtils","reportWebVitals","onPerfEntry","Function","getCLS","getFID","getFCP","getLCP","getTTFB","ReactDOM","StrictMode","getElementById"],"mappings":"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","file":"static/js/main.e1a30478.chunk.js","sourcesContent":["export const DEFAULT_SIGNIN_ROUTE = '/signin';\nexport const DEFAULT_REGISTER_ROUTE = '/registration';\nexport const DEFAULT_FAQ_ROUTE = '/faq';\nexport const DEFAULT_FORGOTPASSWORD_ROUTE = '/forgot-password';\nexport const DEFAULT_CHOICE_CERTIFICATE = '/choice-certificate';\nexport const DEFAULT_SIGNOUT_ROUTE = '/signout';\nexport const DEFAULT_CARD = '/my_card';\nexport const DEFAULT_NOTIFICATION_ROUTE = '/notification';\nexport const DEFAULT_FORBIDDEN_ROUTE = '/error/forbidden';\nexport const DEFAULT_HOME_ROUTE = '/';\n\nexport const DEFAULT_CARD_CHECK_DATA = '/#/check_my_card_data';\nexport const VACCINE_ARSTRAZENECA_ID = '1';\nexport const VACCINE_JANSSEN_ID = '2';\nexport const VACCINED_STATUT_ONLY_ONE_DOSE = '1';\nexport const VACCINED_STATUT_TWO_DOSE = '2';\n\nexport const ACCESS_TOKEN_KEY = `${\n process.env.REACT_APP_BUILD_STAGE ?? 'local'\n}_vaksiny_profile_access_token`;\nexport const LAYOUT_DRAWER_KEY = 'covax_appointment_layout_drawer_state';\nexport const LAYOUT_DRAWER_OPEN = 'OPEN';\nexport const LAYOUT_DRAWER_CLOSED = 'CLOSED';\n\nexport const NETWORK_ERROR = 'NETWORK_ERROR';\n\nexport const OTHER_JOB_ID = '5';\nexport const OTHER_COMORBIDITY_ID = '4';\nexport const OTHER_DEFAULT_COMORBIDITY_ID = '16';\n\nexport const DEFAULT_CONTRY_CODE = 'MG';\nexport const DEFAULT_NUMERIC_CODE = '450';\n\nexport const COMBO_BOOL_VALUES = [\n {\n id: 'all',\n name: 'Tous',\n },\n {\n id: 'false',\n name: 'Non',\n },\n {\n id: 'true',\n name: 'Oui',\n },\n];\n\nexport enum RegistrationStep {\n REGISTRATION_PERSONAL_INFO = 'REGISTRATION_PERSONAL_INFO',\n REGISTRATION_JOB_INFO = 'REGISTRATION_JOB_INFO',\n REGISTRATION_HEALTH_INFO = 'REGISTRATION_HEALTH_INFO',\n REGISTRATION_ACK_INFO = 'REGISTRATION_ACK_INFO',\n}\n\nexport enum ApolloErrorCode {\n INTERNAL_SERVER_ERROR = 'INTERNAL_SERVER_ERROR',\n UNAUTHENTICATED = 'UNAUTHENTICATED', // User must be authentified to perform the action\n FORBIDDEN = 'FORBIDDEN', // User is not allowed to perform the action (ex: need admin right)\n BAD_USER_INPUT = 'BAD_USER_INPUT', // Front end input error\n UKNOWN_ERROR = 'UKNOWN_ERROR',\n NOT_FOUND = 'NOT_FOUND',\n ALREADY_EXIST = 'ALREADY_EXIST',\n NOT_IMPLEMENTED = 'NOT_IMPLEMENTED', // Features not implemented yet (ex: get new password by phone)\n ARGS_TYPE_ERROR = 'ARGS_TYPE_ERROR',\n RUNTIME_ERROR = 'RUNTIME_ERROR', // Should never happen, otherwise something went wrong\n INVALID_PHONE_NUMBER = 'INVALID_PHONE_NUMBER',\n INVALID_EMAIL_ADDRESS = 'INVALID_EMAIL_ADDRESS',\n NON_AUTHORIZED_OPERATION = 'NON_AUTHORIZED_OPERATION',\n\n // User\n INVALID_CREDENTIAL = 'INVALID_CREDENTIAL',\n USER_NOT_FOUND = 'USER_NOT_FOUND',\n USER_LOGIN_EXISTS = 'USER_LOGIN_EXISTS',\n USER_EMAIL_EXISTS = 'USER_EMAIL_EXISTS',\n USER_BODY_NOT_FOUND = 'USER_BODY_NOT_FOUND',\n INVALID_OLD_PASSWORD = 'INVALID_OLD_PASSWORD',\n INVALID_PASSWORD = 'INVALID_PASSWORD',\n\n //CITIZEN\n CITIZEN_NOT_FOUND = 'CITIZEN_NOT_FOUND',\n CITIZEN_EXISTS = 'CITIZEN_EXISTS',\n PCR_TEST_NOT_ACCEPTED = 'PCR_TEST_NOT_ACCEPTED',\n CITIZEN_CREATION_FAILED = 'CITIZEN_CREATION_FAILED',\n HEALTH_REGISTRATION_FAILED = 'HEALTH_REGISTRATION_FAILED',\n JOB_REGISTRATION_FAILED = 'JOB_REGISTRATION_FAILED',\n ADDRESS_REGISTRATION_FAILED = 'ADDRESS_REGISTRATION_FAILED',\n\n // Reset password\n INVALID_PASSWORDRESET_TOKEN = 'INVALID_PASSWORDRESET_TOKEN',\n PASSWORD_INVALID = 'PASSWORD_INVALID',\n PASSWORD_NOT_MATCH = 'PASSWORD_NOT_MATCH',\n\n // Access key\n INVALID_ACCESS_KEY = 'INVALID_ACCESS_KEY',\n}\n","import { createContext } from 'react';\nimport { MyProfile_myProfile } from '../../graphql/authentication/types/MyProfile';\n\ntype AuthContextType = {\n currentUser?: MyProfile_myProfile;\n setCurrentUser: (user?: MyProfile_myProfile) => void;\n isAuthenticated: () => boolean;\n signIn: (accessToken: string) => void;\n signOut: () => void;\n};\n\nexport const AuthContext = createContext({\n currentUser: undefined,\n setCurrentUser: () => {},\n isAuthenticated: () => false,\n signIn: (accessToken: string) => {},\n signOut: () => {},\n});\n\nexport default AuthContext;\n","/* tslint:disable */\n/* eslint-disable */\n// @generated\n// This file was automatically generated and should not be edited.\n\n//==============================================================\n// START Enums and Input Objects\n//==============================================================\n\n/**\n * Gender for citizen and user\n */\nexport enum EnumGender {\n FEMALE = \"FEMALE\",\n MALE = \"MALE\",\n}\n\n/**\n * Arguments to create a Citizen.\n */\nexport interface CreateCitizenInput {\n lastName: string;\n firstName?: string | null;\n email?: string | null;\n phoneNumber?: string | null;\n gender: EnumGender;\n birthDate?: any | null;\n birthPlace?: string | null;\n cniNum?: string | null;\n cniDeliveryDate?: any | null;\n cniDeliveryPlace?: string | null;\n addressId?: string | null;\n jobId: string;\n jobName?: string | null;\n otherJobId?: string | null;\n employerId?: string | null;\n employerName?: string | null;\n offRegNum?: string | null;\n profRegNum?: string | null;\n cnapsId?: string | null;\n workplace?: string | null;\n healthCenterId?: string | null;\n comorbidityId?: string | null;\n comorbidityName?: string | null;\n covaxPriority?: number | null;\n municipalityId: string;\n districtId?: string | null;\n fokontanyId: string;\n addressName?: string | null;\n lastPcrTest?: boolean | null;\n appointmentDate?: any | null;\n desiredVaccineId?: string | null;\n}\n\n/**\n * Arguments to update a Citizen profile.\n */\nexport interface UpdateCitizenProfileInput {\n id: string;\n birthDate?: any | null;\n cniNum?: string | null;\n municipalityId: string;\n fokontanyId: string;\n addressName?: string | null;\n jobId: string;\n jobName?: string | null;\n employerName?: string | null;\n offRegNum?: string | null;\n profRegNum?: string | null;\n cnapsId?: string | null;\n healthCenterId?: string | null;\n lastPcrTest?: boolean | null;\n comorbidityId?: string | null;\n comorbidityName?: string | null;\n desiredVaccineId?: string | null;\n}\n\n//==============================================================\n// END Enums and Input Objects\n//==============================================================\n","import { useContext } from 'react';\nimport AuthContext from './AuthContext';\nimport AuthProvider from './AuthProvider';\n\nexport const useAuthContext = () => useContext(AuthContext);\nexport default AuthProvider;\n","import React, { useState, FC } from 'react';\n\nimport { MyProfile_myProfile } from '../../graphql/authentication/types/MyProfile';\nimport { ACCESS_TOKEN_KEY } from '../../consts';\nimport { AuthContext } from './AuthContext';\n\ninterface IProps {\n children?: React.ReactNode;\n}\n\nconst AuthProvider: FC = ({ children }) => {\n const [currentUser, setCurrentUser] = useState();\n\n return (\n {\n setCurrentUser(user);\n },\n isAuthenticated: () => Boolean(localStorage.getItem(ACCESS_TOKEN_KEY)),\n signIn: (accessToken: string) => {\n localStorage.setItem(ACCESS_TOKEN_KEY, accessToken);\n },\n signOut: () => {\n setCurrentUser(undefined);\n localStorage.removeItem(ACCESS_TOKEN_KEY);\n },\n }}\n >\n {children}\n \n );\n};\n\nexport default AuthProvider;\n","import { createContext } from 'react';\n\ntype PageMetaContextType = {\n pathLabels: string[];\n setPathLabels: (pathLabels: string[]) => void;\n};\n\nexport const PageMetaContext = createContext({\n pathLabels: [],\n setPathLabels: () => {},\n});\n\nexport default PageMetaContext;\n","import { useContext } from 'react';\nimport PageMetaContext from './PageMetaContext';\nimport PageMetaProvider from './PageMetaProvider';\n\nexport const usePageMetaContext = () => useContext(PageMetaContext);\nexport default PageMetaProvider;\n","import React, { useState, FC } from 'react';\nimport { Helmet } from 'react-helmet';\nimport { useIntl } from 'react-intl';\n\nimport { PageMetaContext } from './PageMetaContext';\n\ninterface IProps {\n children?: React.ReactNode;\n}\nconst PageMetaProvider: FC = ({ children }) => {\n const intl = useIntl();\n const [pathLabels, setPathLabels] = useState([]);\n\n // Current page label\n const pageTitle =\n pathLabels.length > 0\n ? pathLabels[pathLabels.length - 1]\n : intl.formatMessage({\n id: 'common.default.page.label',\n defaultMessage: 'Accueil',\n });\n\n // Default page title\n const defaultTitle = intl.formatMessage({\n id: 'common.app.name',\n });\n\n return (\n 0 ? pathLabels : [pageTitle],\n setPathLabels: (pathLabels: string[]) => {\n setPathLabels(pathLabels);\n },\n }}\n >\n \n {pageTitle}\n \n {children}\n \n );\n};\n\nexport default PageMetaProvider;\n","export const REACT_APP_API_URL =\n process.env.REACT_APP_API_URL ?? 'http://localhost:8888/graphql';\nexport const REACT_APP_REST_URL =\n process.env.REACT_APP_REST_URL ?? 'http://localhost:8888';\nexport const REACT_APP_WS_URL =\n process.env.REACT_APP_WS_URL ?? 'http://localhost:8888';\nexport const REACT_APP_SOCKETIO_PATH =\n process.env.REACT_APP_SOCKETIO_PATH ?? '/stream/';\nexport const REACT_APP_HEALTH_PROFILE_URL =\n process.env.REACT_APP_HEALTH_PROFILE_URL ?? 'http://localhost:3000';\nexport const REACT_PUBLIC_URL = process.env.PUBLIC_URL ?? '';\n","import {\n ApolloClient,\n InMemoryCache,\n ApolloLink,\n NormalizedCacheObject,\n} from '@apollo/client';\n\nimport { createUploadLink } from 'apollo-upload-client';\n\nimport { REACT_APP_API_URL } from '../config';\nimport { ACCESS_TOKEN_KEY } from '../consts';\n\nconst cache = new InMemoryCache();\nconst httpLink = createUploadLink({ uri: REACT_APP_API_URL });\n\nconst createApolloClient = (): ApolloClient => {\n const authMiddleware = () =>\n new ApolloLink((operation, forward) => {\n const accessToken = localStorage.getItem(ACCESS_TOKEN_KEY);\n // add the authorization to the headers\n if (accessToken) {\n operation.setContext({\n headers: {\n authorization: `Bearer ${accessToken}`,\n },\n });\n }\n return forward(operation);\n });\n\n return new ApolloClient({\n link: authMiddleware().concat(httpLink),\n cache,\n defaultOptions: {\n query: { fetchPolicy: 'network-only' },\n watchQuery: { fetchPolicy: 'network-only' },\n },\n });\n};\n\nexport default createApolloClient;\n","import { createMuiTheme } from '@material-ui/core/styles';\ndeclare module '@material-ui/core/styles/createMuiTheme' {\n interface Theme {\n maxContainerWidth: number;\n screenbreakpoint: {\n tablet: number;\n smartphone: number;\n large: number;\n xlarge: number;\n xsmall: number;\n };\n leftSideBarWidth: number;\n fonts: {\n default: string;\n };\n button: {\n primary: string;\n secondary: string;\n default: string;\n disabled: string;\n };\n\n colors: {\n border: {\n main: string;\n };\n text: {\n black: string;\n white: string;\n black00: string;\n black01: string;\n black02: string;\n black03: string;\n black004: string;\n tipsPrimaryTitle: string;\n tipsSecondaryTitle: string;\n lightPurple: string;\n grey: string;\n };\n background: {\n default: string;\n info: string;\n paper: string;\n input: string;\n };\n };\n }\n\n interface ThemeOptions extends Theme {\n guard?: string;\n }\n}\n\nconst palette = {\n primary: { main: '#ea483a', dark: '#a33228', light: '#ee6c61' },\n secondary: {\n main: '#4aa1a0',\n dark: '#337070',\n light: '#6eb3b3',\n },\n text: {\n disabled: '#666666',\n black: '#1A1A1A',\n },\n\n border: {\n main: '#B3B3B3',\n },\n};\n\n/* theme customization */\nexport const DefaultTheme = createMuiTheme({\n maxContainerWidth: 1597,\n leftSideBarWidth: 256,\n screenbreakpoint: {\n smartphone: 768,\n tablet: 1024,\n large: 1440,\n xlarge: 1600,\n xsmall: 425,\n },\n spacing: (factor: number) => `${8 * factor}px`,\n typography: {\n fontFamily: ['\"Inter\"', '\"Lexend\"', 'sans-serif'].join(','),\n button: {\n fontFamily: ['\"Inter\"', '\"Lexend\"', 'sans-serif'].join(','),\n },\n },\n button: {\n primary: '#43A1A0',\n secondary: '#03CEA4',\n default: '#7D7D7D',\n disabled: '#F3F3F3',\n },\n fonts: {\n default: '\"Inter\", \"Lexend\", sans-serif',\n },\n palette: {\n primary: {\n main: palette.primary.main,\n dark: palette.primary.dark,\n light: palette.primary.light,\n //@ts-ignore\n lighter: '#D1EAFF',\n lightest: '#E1F5FE',\n },\n secondary: {\n main: palette.secondary.main,\n dark: palette.secondary.dark,\n light: palette.secondary.light,\n },\n error: { main: '#F44336' },\n success: { main: '#4CAF50', light: '#8BC34A' },\n border: {\n main: palette.border.main,\n light: '#E8E8E8',\n lighter: '#F2F2F2',\n },\n\n text: {\n disabled: palette.text.disabled,\n },\n\n icon: {\n blue: '#3d71cc',\n disabled: '#444A5D',\n },\n },\n colors: {\n border: {\n main: '#B3B3B3',\n },\n text: {\n black: '#000',\n white: '#fff',\n black00: '#032D23',\n black01: '#153B50',\n black02: '#263238',\n black03: '#626060',\n black004: '#667085',\n tipsPrimaryTitle: '#153B50',\n tipsSecondaryTitle: '#03CEA4',\n lightPurple: '#7B61FF',\n grey: '#E0E0E0',\n },\n background: {\n default: '#f7f5f5',\n info: '#36BFFA',\n paper: '#FAFAFA',\n input: '#FBFAFA',\n },\n },\n});\n","import PublicRoute from './PublicRoute';\n\nexport default PublicRoute;\n","import React, { FC } from 'react';\nimport {\n Route,\n Redirect,\n RouteProps,\n RouteComponentProps,\n} from 'react-router-dom';\nimport { useAuthContext } from '../../modules/AuthProvider';\nimport { DEFAULT_HOME_ROUTE } from '../../consts';\n\ninterface IProps\n extends Omit {\n component:\n | React.ComponentType>\n | React.ComponentType;\n}\n\nconst PublicRoute: FC = ({\n component: Component,\n ...others\n}: IProps) => {\n const { isAuthenticated } = useAuthContext();\n return (\n ) =>\n !isAuthenticated() || props.location.pathname.indexOf('/error') > -1 ? (\n <>\n \n \n ) : (\n <>\n \n \n )\n }\n />\n );\n};\n\nexport default PublicRoute;\n","import PrivateRoute from './PrivateRoute';\n\nexport default PrivateRoute;\n","import React, { FC } from 'react';\nimport {\n Route,\n Redirect,\n RouteProps,\n RouteComponentProps,\n} from 'react-router-dom';\n\nimport { useAuthContext } from '../../modules/AuthProvider';\nimport { DEFAULT_SIGNIN_ROUTE } from '../../consts';\n\ninterface IProps\n extends Omit {\n component:\n | React.ComponentType>\n | React.ComponentType;\n}\n\nconst PrivateRoute: FC = ({ component: Component, ...others }) => {\n const { isAuthenticated } = useAuthContext();\n return (\n ) =>\n isAuthenticated() ? (\n \n ) : (\n \n )\n }\n />\n );\n};\n\nexport default PrivateRoute;\n","import { makeStyles } from '@material-ui/core/styles';\n\nconst styles = makeStyles((theme) => ({\n root: {\n width: '100vw',\n height: '100vh',\n display: 'flex',\n flexDirection: 'column',\n overflow: 'hidden',\n justifyContent: 'center',\n },\n container: {\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n marginBottom: theme.spacing(5),\n },\n appLogoContainer: {\n display: 'flex',\n justifyContent: 'center',\n },\n appLogo: {\n height: theme.spacing(2),\n width: theme.spacing(2),\n },\n appMakerLogo: {\n height: theme.spacing(4),\n width: theme.spacing(12),\n },\n loginCaption: {\n textAlign: 'center',\n padding: theme.spacing(2, 0, 2, 0),\n fontSize: '24px',\n fontWeight: 300,\n },\n divider: {\n margin: theme.spacing(2, 0),\n },\n paper: {\n width: theme.spacing(70),\n padding: theme.spacing(4),\n marginLeft: 'auto',\n marginRight: 'auto',\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n },\n formBox: {\n marginTop: theme.spacing(1),\n '& .MuiTextField-root': {\n margin: theme.spacing(2, 0, 1, 0),\n },\n '& .MuiOutlinedInput-adornedEnd': {\n paddingRight: theme.spacing(1),\n },\n },\n submitButtom: {\n margin: theme.spacing(3, 0, 0),\n },\n controlsWrapper: {\n display: 'flex',\n flexDirection: 'row-reverse',\n width: '100%',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n forgotPasswordLink: {\n padding: theme.spacing(1, 0, 1, 0),\n },\n alertContainer: {\n padding: theme.spacing(2, 0, 0, 0),\n },\n registerLink: {\n display: 'block',\n padding: theme.spacing(0, 0, 2, 0),\n textDecoration: 'none',\n },\n title: {\n marginBottom: theme.spacing(7),\n color: theme.palette.secondary.main,\n },\n btn: {\n background: theme.palette.secondary.main,\n marginBottom: theme.spacing(3),\n '& *': {\n color: 'white',\n },\n },\n}));\n\nexport default styles;\n","import { makeStyles, Theme } from '@material-ui/core/styles';\n\nexport default makeStyles((theme: Theme) => ({\n popper: {},\n\n tooltip: {\n maxWidth: '300px',\n margin: '0px',\n padding: '10px 12px',\n boxSizing: 'border-box',\n\n borderRadius: '3px',\n backgroundColor: theme.palette.background.paper,\n boxShadow: '0px 3px 6px #00000029',\n },\n\n text: {\n textAlign: 'left',\n fontFamily: theme.fonts.default,\n fontSize: '14px',\n letterSpacing: '0.4px',\n lineHeight: '18px',\n color: theme.colors.text.black03,\n textTransform: 'none',\n },\n}));\n","import StyledTooltip from './StyledTooltip';\n\nexport default StyledTooltip;\nexport * from './StyledTooltip';\n","import React, { FC } from 'react';\nimport clsx from 'clsx';\nimport Box from '@material-ui/core/Box';\nimport Tooltip, { TooltipProps } from '@material-ui/core/Tooltip';\n\nimport useStyles from './styles';\n\nexport interface IStyledTooltipProps extends TooltipProps {\n head?: string;\n classes?: Partial>;\n}\n\nconst StyledTooltip: FC = (props: IStyledTooltipProps) => {\n const {\n children,\n open,\n title,\n id = 'tooltip',\n head = '',\n className,\n ...otherProps\n } = props;\n\n const classes = useStyles(props);\n\n if ((open !== undefined && !open) || !title) return children;\n\n return (\n \n {head && (\n \n {head}
\n \n )}\n {title}\n \n ),\n classes: {\n popper: classes.popper,\n tooltip: clsx(classes.tooltip, className),\n },\n }}\n >\n {children}\n \n );\n};\n\nexport default StyledTooltip;\n","import clsx from 'clsx';\nimport { makeStyles, Theme } from '@material-ui/core/styles';\nimport { Styles } from '@material-ui/styles';\n\nexport const mergeClasses = (\n defaultClasses: Record,\n newClasses: Record,\n): Record => {\n const currentClasses: Record = { ...defaultClasses };\n\n Object.entries(newClasses).forEach(\n ([classKey, newClassValue]) =>\n (currentClasses[classKey] = clsx(\n currentClasses[classKey],\n newClassValue,\n )),\n );\n\n return currentClasses;\n};\n\nexport const styles: Styles =\n (theme: Theme) => ({\n label: {\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n\n textAlign: 'left',\n letterSpacing: '0px',\n font: 'normal normal 500 14px/19px Roboto',\n //@ts-ignore\n color: theme.palette.text.black,\n textTransform: 'none',\n\n userDrag: 'none',\n userSelect: 'none',\n '-webkit-user-drag': 'none',\n '-webkit-user-select': 'none' /* Safari */,\n '-moz-user-select': 'none' /* Firefox */,\n '-ms-user-select': 'none' /* IE10+/Edge */,\n },\n\n inlineLabel: {\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n textAlign: 'left',\n letterSpacing: '0px',\n font: 'normal normal 500 14px/19px Roboto',\n //@ts-ignore\n color: theme.palette.text.black,\n textTransform: 'none',\n userDrag: 'none',\n userSelect: 'none',\n },\n\n scrollbar: {\n scrollbarWidth: 'thin',\n scrollbarColor: `${theme.palette.text.disabled} transparent`,\n\n '&::-webkit-scrollbar': {\n width: '7px',\n height: '7px',\n backgroundColor: 'transparent',\n },\n\n '&::-webkit-scrollbar-track': {\n backgroundColor: 'transparent',\n },\n\n '&::-webkit-scrollbar-thumb': {\n borderRadius: '25px',\n backgroundColor: theme.palette.text.disabled,\n },\n },\n });\n\nexport default makeStyles(styles);\n","import { makeStyles, Theme } from '@material-ui/core/styles';\nimport Color from 'color';\n\nexport default makeStyles((theme: Theme) => ({\n root: {\n flex: '0 1 auto',\n webkitFlex: '0 1 auto',\n msFlex: '0 1 auto',\n minWidth: '220px',\n minHeight: 'min-content',\n margin: '0px',\n padding: theme.spacing(2),\n borderRadius: '8px',\n cursor: 'pointer',\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n },\n\n buttonWrapper: {\n padding: '0px',\n backgroundColor: 'transparent',\n border: 'none',\n color: 'none',\n display: 'flex',\n },\n\n wrapped: { width: '100%', flex: 1, margin: '0px' },\n\n primary: {\n background: `${theme.button.primary} 0% 0% no-repeat padding-box`,\n\n '&:hover': {\n background: `${Color(theme.button.primary).lighten(\n 0.2,\n )} 0% 0% no-repeat padding-box`,\n },\n\n '&:active': {\n background: `${Color(theme.button.primary).lighten(\n 0.2,\n )} 0% 0% no-repeat padding-box`,\n },\n\n '&:disabled': {\n background: `${theme.button.disabled} 0% 0% no-repeat padding-box`,\n opacity: 0.5,\n '&:hover, &:active': {\n background: `${theme.button.disabled} 0% 0% no-repeat padding-box`,\n },\n },\n },\n\n secondary: {\n background: `${theme.button.secondary} 0% 0% no-repeat padding-box`,\n\n '&:hover': {\n background: `${Color(theme.button.secondary).darken(\n 0.1,\n )} 0% 0% no-repeat padding-box`,\n },\n\n '&:active': {\n background: `${Color(theme.button.secondary).darken(\n 0.1,\n )} 0% 0% no-repeat padding-box`,\n },\n\n '&:disabled': {\n background: `${theme.button.disabled} 0% 0% no-repeat padding-box`,\n opacity: 0.5,\n\n '&:hover, &:active': {\n background: `${theme.button.disabled} 0% 0% no-repeat padding-box`,\n },\n },\n },\n\n default: {\n background: `${theme.button.disabled} 0% 0% no-repeat padding-box`,\n color: `${theme.button.primary}`,\n '&:hover': {\n color: `${Color(theme.button.primary)}`,\n },\n '&:disabled': {\n background: `${theme.button.disabled} 0% 0% no-repeat padding-box`,\n opacity: 0.5,\n\n '&:hover, &:active': {\n background: `${theme.button.disabled} 0% 0% no-repeat padding-box`,\n },\n },\n },\n\n third: {\n color: `${theme.button.primary}`,\n '&:hover': {\n color: `${Color(theme.button.primary)}`,\n },\n },\n\n disabled: {\n boxShadow: 'none',\n },\n\n label: {\n fontFamily: theme.fonts.default,\n textAlign: 'center',\n fontSize: '18px',\n fontStyle: 'normal',\n fontWeight: 'bolder',\n whiteSpace: 'normal',\n lineHeight: '24px',\n },\n\n primaryLabel: {\n color: theme.colors.text.white,\n },\n\n secondaryLabel: { color: theme.colors.text.white },\n\n primaryDisabledColor: {\n color: theme.palette.text.disabled,\n },\n\n secondaryDisabledColor: {\n color: theme.palette.text.disabled,\n },\n\n circularProgress: {\n color: theme.palette.grey[100],\n width: '22px',\n height: '22px',\n },\n}));\n","import ActionButton from './ActionButton';\n\nexport default ActionButton;\n","import React, { ReactNode } from 'react';\nimport clsx from 'clsx';\nimport Button, { ButtonProps, ButtonClassKey } from '@material-ui/core/Button';\nimport CircularProgress, {\n CircularProgressProps,\n} from '@material-ui/core/CircularProgress';\nimport Box from '@material-ui/core/Box';\n\nimport StyledTooltip from '../../StyledTooltip';\n\nimport useCommonStyles from '../../styles';\nimport useStyles from './styles';\n\nexport interface IProps extends ButtonProps {\n children: React.ReactNode;\n disabled?: boolean;\n loading?: boolean;\n color?: 'primary' | 'secondary' | 'default';\n tooltip?: ReactNode;\n CircularProgressProps?: Partial;\n className?: string;\n classes?: Partial<\n Record | ButtonClassKey, string>\n >;\n}\n\nconst ActionButton = (props: IProps) => {\n const {\n children,\n disabled = false,\n loading = false,\n color = 'primary',\n tooltip,\n CircularProgressProps = {},\n className,\n classes: {\n root,\n primary,\n secondary,\n disabled: _,\n label,\n primaryLabel,\n primaryDisabledColor,\n secondaryDisabledColor,\n circularProgress,\n ...buttonClasses\n } = {},\n ...otherProps\n } = props;\n\n const commonClasses = useCommonStyles();\n const classes = useStyles(props);\n\n const button = (\n \n {loading ? (\n \n ) : (\n children\n )}\n \n );\n\n if (tooltip)\n return (\n \n {disabled ? (\n \n {button}\n \n ) : (\n button\n )}\n \n );\n\n return button;\n};\n\nexport default ActionButton;\n","import Unauthorized from './Unauthorized';\n\nexport default Unauthorized;\n","import React, { FC } from 'react';\nimport Paper from '@material-ui/core/Paper';\nimport { FormattedMessage, useIntl } from 'react-intl';\nimport Typography from '@material-ui/core/Typography';\nimport { Link, useHistory } from 'react-router-dom';\nimport Box from '@material-ui/core/Box';\nimport Grid from '@material-ui/core/Grid';\nimport MakerLogo from '../../../assets/images/egm-brand.png';\n\nimport useStyles from './styles';\nimport { DEFAULT_HOME_ROUTE, DEFAULT_SIGNIN_ROUTE } from '../../../consts';\nimport ActionButton from '../../../components/button/ActionButton';\n\nconst Unauthorized: FC = () => {\n const classes = useStyles();\n const intl = useIntl();\n const history = useHistory();\n\n const handleGoBack = () => {\n history.push(DEFAULT_HOME_ROUTE);\n };\n\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n {intl.formatMessage({\n id: 'error.title.backToHome',\n })}\n \n \n \n \n \n {'Copyright © '} {new Date().getFullYear()}\n \n \n \n \n \n \n \n \n );\n};\n\nexport default Unauthorized;\n","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJgAAAA0CAYAAAB2HPG0AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ1IDc5LjE2MzQ5OSwgMjAxOC8wOC8xMy0xNjo0MDoyMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjZGNzBDQ0MwNDk4MTExRUFBNzVGRDU3RjE3NThFQUJBIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjZGNzBDQ0MxNDk4MTExRUFBNzVGRDU3RjE3NThFQUJBIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6NkY3MENDQkU0OTgxMTFFQUE3NUZENTdGMTc1OEVBQkEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NkY3MENDQkY0OTgxMTFFQUE3NUZENTdGMTc1OEVBQkEiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4mjN8OAAAUO0lEQVR42uxd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\"","import { createContext } from 'react';\n\nexport type Locale = 'fr' | 'mg';\n\nexport enum EnumLocaleKeys {\n Francais = 'fr',\n Malagasy = 'mg',\n}\n\ntype ContextType = {\n locale: Locale;\n setLocale: (newLocale: Locale) => void;\n};\n\nexport const LocaleContext = createContext({\n locale: 'mg',\n setLocale: (newLocale: Locale) => {},\n});\n\nexport default LocaleContext;\n","export default __webpack_public_path__ + \"static/media/gov-mg-brand.3d90fc7a.svg\";","export default __webpack_public_path__ + \"static/media/msanp-brand.2a9e76c1.svg\";","import { makeStyles } from '@material-ui/core/styles';\n\nexport const useStyles = makeStyles((theme) => ({\n root: {\n padding: '4px 0px',\n },\n container: {\n maxWidth: theme.maxContainerWidth,\n paddingLeft: 0,\n paddingRight: 0,\n [theme.breakpoints.down(theme.maxContainerWidth + 1)]: {\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(2),\n },\n },\n wrapper: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'space-between',\n [theme.breakpoints.down(theme.screenbreakpoint.xsmall)]: {\n flexDirection: 'column',\n },\n },\n govBrand: {\n width: 143,\n height: 92,\n },\n msanpBrand: {\n width: 136,\n height: 52,\n [theme.breakpoints.down(theme.maxContainerWidth + 1)]: {\n marginTop: theme.spacing(2),\n },\n },\n flagIcon: {\n height: 32,\n width: 32,\n marginRight: 8,\n },\n languageLabel: {\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 900,\n color: theme.colors.text.black,\n },\n}));\n","import PageHeader from './PageHeader';\n\nexport default PageHeader;\n","import React, { FC } from 'react';\nimport Container from '@material-ui/core/Container';\nimport Box from '@material-ui/core/Box';\nimport { useIntl } from 'react-intl';\nimport GovMgBrandingImage from '../../../assets/images/gov-mg-brand.svg';\nimport MsanpBrandingImage from '../../../assets/images/msanp-brand.svg';\nimport { useStyles } from './styles';\n\nconst PageHeader: FC = () => {\n const classes = useStyles();\n const intl = useIntl();\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default PageHeader;\n","export default __webpack_public_path__ + \"static/media/covax-branding-image.70de5d7d.svg\";","export default __webpack_public_path__ + \"static/media/new-ugd-logo.b4e0bc8b.svg\";","export default __webpack_public_path__ + \"static/media/la2mg.b9f2fa53.svg\";","import { makeStyles } from '@material-ui/core/styles';\n\nexport const useStyles = makeStyles((theme) => ({\n root: {\n backgroundColor: theme.colors.background.paper,\n },\n container: {\n paddingTop: theme.spacing(2),\n paddingBottom: theme.spacing(2),\n paddingLeft: 0,\n paddingRight: 0,\n maxWidth: theme.maxContainerWidth,\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'space-between',\n alignItems: 'center',\n [theme.breakpoints.down(theme.maxContainerWidth + 1)]: {\n padding: theme.spacing(1, 2, 1, 2),\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n flexDirection: 'column',\n },\n },\n copyright: {\n color: theme.colors.text.black00,\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '16px',\n lineHeight: '28px',\n letterSpacing: '-0.18px',\n [theme.breakpoints.down('lg')]: {\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(2),\n },\n [theme.breakpoints.down(theme.screenbreakpoint.tablet + 1)]: {\n fontSize: '14px',\n lineHeight: '24px',\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n paddingTop: theme.spacing(2),\n },\n },\n makerBrand: {\n width: 152,\n height: 51,\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n paddingTop: theme.spacing(2),\n paddingBottom: theme.spacing(2),\n },\n },\n covaxBrand: {\n width: 147,\n height: 61,\n marginRight: theme.spacing(2),\n },\n la2mBrand: {\n width: 147,\n height: 61,\n },\n copyrightWrapper: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n flexDirection: 'column',\n },\n },\n flagIcon: {\n height: 32,\n width: 32,\n marginRight: 8,\n },\n languageLabel: {\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 900,\n color: theme.colors.text.black,\n },\n}));\n","export default __webpack_public_path__ + \"static/media/flag-mg.9af4dc01.svg\";","export default __webpack_public_path__ + \"static/media/flag-fr.c948d418.svg\";","export default {\n 'common.default.page.label': 'Accueil',\n 'common.app.name': 'CoVaX - Profil de santé - Madagascar',\n 'common.health.profile.label': 'PROFIL DE SANTÉ',\n 'common.page.footer.copyright': `Copyright © ${new Date().getFullYear()} vaksiny.gov.mg`,\n 'common.label.cancel': 'Annuler',\n 'common.label.nooption': 'Aucune option ne correspond à vos critères',\n 'common.noinformation.label': 'Non renseigné',\n 'common.button.reload.label': 'Recharger',\n 'common.editor.email.invalid.message': 'Adresse e-mail invalide',\n 'common.editor.email.not.trusted.message':\n 'Adresse e-mail invalide. Utilisez plutôt un service de courrier électronique connu et fiable.',\n 'common.editor.phonenumber.invalid.message': 'Numéro de téléphone incorrect',\n 'common.editor.cniNum.invalid.message': 'Numéro de CIN incorrect',\n 'common.editor.date.invalid.message': 'Date incorrecte',\n 'common.editor.cnapsid.invalid.message': 'N° CNAPS invalide!',\n 'common.editor.required.message': 'Les champs marqués (*) sont obligatoires.',\n 'common.language.fr.iso': 'FR',\n 'common.language.fr.iso.tooltip': 'Utiliser la langue française',\n 'common.language.mg.iso': 'MG',\n 'common.language.mg.iso.tooltip': 'Misafidy ny fiteny malagasy',\n};\n","import { format, add, sub } from 'date-fns';\n\nexport default {\n 'error.title.backToHome': 'Back to Home',\n 'error.title.error': 'Error',\n 'error.message.unknow':\n \"Une erreur inconnue s'est produite, vérifiez votre réseau ou contactez l'administrateur.\",\n 'error.message.internalServerError': 'Internal server error',\n 'error.message.networkError':\n 'Veuillez vérifier votre connexion Internet et réessayer.',\n 'error.message.unauthenticated':\n 'You must be logged in to perform this operation.',\n 'error.message.forbidden':\n \"Vous n'avez pas les droits pour effectuer cette action.\",\n 'error.message.args.type': 'Wrong type of arguments.',\n 'error.loading.label':\n \"Une erreur s'est produite lors du chargement des données\",\n 'error.helper.required': 'Ce champ est obligatoire',\n\n 'error.date.invalid.message': 'Date incorrecte',\n 'error.date.max.label': `La date ne doit pas être postérieure à ${format(\n new Date(),\n 'dd/MM/yyyy',\n )}`,\n 'error.date.min.label': \"L'année ne doit pas être antérieure à 1900\",\n\n 'error.birth.date.max.label': `La date ne doit pas être postérieure à ${format(\n sub(new Date(), { years: 18 }),\n 'dd/MM/yyyy',\n )}`,\n 'error.appointment.date.min.label': `La date ne doit pas être antérieure à ${format(\n add(new Date(), { days: 1 }),\n 'dd/MM/yyyy',\n )}`,\n 'error.appointment.date.max.label': `La date ne doit pas être postérieure à ${format(\n add(new Date(), { years: 1 }),\n 'dd/MM/yyyy',\n )}`,\n};\n","import signin from './signin';\nimport common from './common';\nimport errors from './errors';\nimport changepassword from './changepassword';\nimport userprofile from './userprofile';\nimport user from './user';\nimport citizen from './citizen';\nimport register from './register';\nimport profile from './profile';\nimport card from './card';\nimport forgotpassword from './forgotpassword';\nimport resetpassword from './resetpassword';\nimport hellobar from './hellobar';\nimport faq from './faq';\n\nexport default {\n ...hellobar,\n ...signin,\n ...register,\n ...common,\n ...errors,\n ...changepassword,\n ...userprofile,\n ...user,\n ...citizen,\n ...profile,\n ...card,\n ...forgotpassword,\n ...resetpassword,\n ...faq,\n};\n","export default {\n 'title.hellobar': 'Voir son certificat de vaccination',\n 'notice.hellobar':\n \"Le certificat de vaccination n'est pas un passe sanitaire européen mais un document obligatoire que vous aurez besoin pour
faire une demande de passe auprès de l'ambassade de votre pays d'accueil.\",\n 'button.hellobar.label': 'Voir les aides',\n 'button.close.hellobar.label': 'Non, merci',\n 'other.service.hellobar.label':\n 'Voir les autres services qui pourraient vous intéresser sur :
https://torolalana.gov.mg',\n 'tips.card.label': 'Accéder à la FAQ',\n 'tips.card.video.label': 'Voir la vidéo',\n};\n","export default {\n 'signin.app.label': 'Application pour la Gestion de Profil de santé',\n 'signin.form.hint.label': 'Accéder à votre profil',\n 'signin.form.call.for.registration.message': 'Inscrivez-vous',\n 'signin.page.title.label': 'Authentification',\n 'signin.login.label': 'Identifiant',\n 'signin.login.placeholder.label': 'Nom de famille',\n 'signin.password.label': 'Mot de passe',\n 'signin.password.placeholder.label': 'EPI_99999999',\n\n 'signin.buttom.label': 'Se connecter',\n 'signin.faq.label': 'Aller à la foire aux questions',\n 'signin.back.button.label': 'Retourner à la page de connection',\n 'signin.forgot.password.label': 'Mot de passe oublié ?',\n 'signin.keepmeloggedin.label': 'Gardez-moi connecté',\n 'signin.login.success': 'Authentifié avec succès',\n 'signin.login.error': 'Erreur: identifiant ou mot de passe invalide!',\n 'signin.password.error.min.message':\n 'Le mot de passe doit comporter au moins 4 caractères',\n 'signin.password.error.max.message':\n 'Le mot de passe doit comporter au maximum 32 caractères',\n 'signin.password.error.required.message': 'Entrer un mot de passe',\n 'signin.login.error.required.message': 'Entrez votre identifiant',\n 'signin.login.error.min.message':\n 'Le login doit comporter au moins 2 caractères',\n 'signin.login.error.max.message':\n 'Le login doit comporter au maximum 32 caractères',\n\n 'signin.tips.primary.title': 'VACCIN COVID-19',\n 'signin.tips.secondary.title':\n \"Bienvenue sur le site d'inscription officielle
à la vaccination contre la Covid-19.
“La vaccination est volontaire et gratuite”.\",\n 'signin.subscribe.hint.message':\n 'L’inscription est ouverte à toute personne désireuse de se faire vacciner et
appartenant aux catégories de personne suivantes : ',\n 'signin.persona.travelers.label':\n 'Personnes qui doivent voyager à l’extérieur pour motif de travail ou étude et disposant des documents justificatifs probants',\n 'signin.persona.healthworker.label':\n 'Agents de santé
(publics et privés)',\n 'signin.persona.frailpeople.label':\n 'Personnes affectées par une (des) maladie(s) chronique(s) et faisant l’objet d’un suivi médical',\n 'signin.persona.govsecurity.label': 'Les forces de l’ordre',\n 'signin.persona.socialworker.label': 'Les travailleurs sociaux',\n 'signin.persona.teleoperator.label':\n 'Pour tout besoin d’informations complementaires, Veuillez appeler le numéro 910.',\n 'signin.tips.main.message': `

La vaccination est maintenant accessible à toutes les personnes âgées de 18ans et plus.\n

Vous n’êtes pas encore vacciné ? ou vous êtes vaccinés mais pas encore enregistrés via tablette lors de votre passage au centre de vaccination.

\n

Prenez 2 minutes pour vous inscrire sur cette plateforme!

\n

L’inscription n’est pas obligatoire mais avoir un compte vous permet de bénéficier des avantages suivants :

\n

- faciliter votre enregistrement au niveau des centres de vaccinations ;

\n

- organiser votre prochain rendez-vous pour la 2e dose ;

\n

- disposer ultérieurement des fonctionnalités complémentaires proposées par la plateforme comme la délivrance d’une attestation de vaccination officielle ou d’une carte de vaccination digitale et bien d’autres.

\n

Pour toutes informations complémentaires, appelez le 910.

`,\n};\n","export default {\n 'register.title.label': 'Créez un compte',\n 'register.button.submit.label': 'Enregistrer',\n 'register.button.previous.label': 'Précédent',\n 'register.button.next.label': 'Suivant',\n 'register.link.label': 'S’inscrire',\n 'register.hint.label': 'Pas encore enregistré ?',\n 'registration.validation.notification':\n \"En attente de validation par l'admin...\",\n 'registration.validation.notification.title': 'Notification',\n\n 'registration.tips.primary.title': 'VACCIN COVID-19',\n 'registration.tips.secondary.title':\n 'Comment
puis-je prendre
rendez-vous?',\n\n 'register.step.personalinfo.title.label':\n 'Informations personnelles (Etape 1 sur 3)',\n 'register.step.jobinfo.title.label':\n 'Renseignement profession (Etape 2 sur 3)',\n 'register.step.healthinfo.title.label':\n 'Renseignement santé (Dernière étape)',\n 'registration.enrollment.process.job.label': 'Renseignement profession',\n 'registration.enrollment.process.health.label': 'Renseignement santé',\n 'registration.enrollment.process.appointment.label': 'Prise de rendez-vous',\n 'registration.enrollment.process.ackconfirm.label':\n 'Confirmation de réception',\n\n 'registration.test.positive.not.allowed.message':\n 'Test positif moins de 3 mois, vous ne devez pas vous faire vacciner',\n 'registration.ack.title.label': 'Confirmation de réception',\n 'registration.ack.message.label': `\n

Votre inscription à la vaccination contre la Covid-19 a été enregistrée. Vous pouvez directement se rapprocher du centre de vaccination qui vous arrange.

\n

Pour tout besoin d’information complémentaire, veuillez nous contacter par mail au vaccinationcovid19@googlegroups.com ou appeler le numéro 910.


\n

Nous vous remercions de votre intérêt à l'égard du vaccin contre le COVID-19. En se vaccinant, vous allez :

\n

1- vous protéger contre les formes graves de la maladie et donc de sauver des vies ou d’éviter les effets à longs termes sur la santé (séquelles neurologiques, pulmonaires, cardiovasculaires…),

\n

2- aider le système de santé en libérant les ressources médicales,

\n

3- protéger les plus vulnérables en atteignant l’immunité collective.

\n `,\n};\n","export default {\n 'changepassword.error.min.message':\n 'Le mot de passe doit comporter au moins 4 caractères',\n 'changepassword.error.max.message':\n 'Le mot de passe doit comporter au maximum 32 caractères',\n 'changepassword.error.newpassword.required.message':\n 'Le nouveau mot de passe est requis',\n 'changepassword.error.confirmpassword.required.message':\n 'Vous devez confirmer le nouveau mot de passe',\n 'changepassword.error.confirmpassword.notmatch.message':\n 'Le mot de passe de confirmation ne correspond pas',\n};\n","export default {\n 'userprofile.gender.label': 'Genre',\n 'userprofile.gender.male.label': 'Homme',\n 'userprofile.gender.female.label': 'Femme',\n 'userprofile.card': 'Ma carte',\n 'userprofile.uploadavatar.title': 'Modifier votre photo de profil',\n 'userprofile.uploadavatar.choosefile.label': 'Sélectionnez une photo',\n 'userprofile.uploadavatar.saveavatar.label': 'Enregistrer la photo de profil',\n 'userprofile.uploadavatar.updated.message':\n 'Votre photo de profil a été modifiée',\n 'userprofile.uploadavatar.error.message':\n \"Une erreur s'est produite lors de la mise à jour de votre photo!\",\n 'userprofile.cancel.edit.label': 'Annuler la modification',\n 'userprofile.edit.label': 'Modifier',\n 'userprofile.logout.label': 'Se déconnecter',\n};\n","export default {\n 'user.phonenumber.label': 'Téléphone',\n 'user.email.label': 'Email',\n 'user.editor.lastname.min.message':\n \"Le nom d'utilisateur doit comporter au moins 3 caractères.\",\n 'user.editor.lastname.required.message':\n \"Vous devez indiquer le nom de l'utilisateur\",\n 'user.error.notfound.label': 'Erreur: utilisateur introuvable!',\n};\n","export default {\n 'user.name.label': 'Nom',\n 'user.firstname.label': 'Prénom',\n 'citizen.municipality.label': 'District / Arrondissement',\n 'citizen.region.label': 'Région',\n 'citizen.district.label': 'District',\n 'citizen.fokontany.label': 'Fokontany',\n 'citizen.municipality.only.label': 'Commune',\n 'citizen.borough.label': 'Arrondissement',\n 'citizen.address.label': 'Adresse',\n 'citizen.birthdate.label': 'Date de naissance',\n 'citizen.cni.number.label': 'Numéro CNI',\n 'citizen.health.comorbidity.label':\n 'Type de commorbidité ou maladie(s) chronique(s) dont vous souffrez et pour la(les)quelle(s) vous faites l’objet d’un suivi médical',\n 'citizen.comorbidity.category.other.label':\n 'Type de commorbidité ou maladie chronique (si autre)',\n 'citizen.comorbidity.category.other.placeholder.label':\n 'Type commorbidité ou maladie chronique',\n 'citizen.health.facility.label':\n 'Parmi les formations sanitaires listées ci-dessous, veuillez cliquer celle qui est la plus proche de votre lieu de résidence',\n 'citizen.health.desired.vaccine.label': 'Vaccin souhaité',\n 'citizen.health.lastPcrTest.label':\n 'Résultat de test PCR ou Genexpert ces deriniers 3 mois',\n 'citizen.health.lastPcrTest.positive.label': 'Positif',\n 'citizen.health.lastPcrTest.negative.label': 'Négatif',\n 'citizen.health.lastPcrTest.notapplicable.label': \"Je n'ai pas fait le test\",\n 'citizen.job.employer.label': 'Etablissement / Société',\n 'citizen.job.employer.placeholder.label': 'L’endroit ou vous travaillez',\n 'citizen.job.category.label': 'Catégorie',\n 'citizen.job.category.placeholder.label': 'Agent de santé',\n 'citizen.job.category.other.label': 'Profession (si autre catégorie)',\n 'citizen.job.category.other.placeholder.label': 'Votre profession ',\n 'citizen.job.offregnum.label': 'Immatriculation (si fonctionnaire)',\n 'citizen.job.offregnum.placeholder.label': 'Votre numéro d’immatriculation',\n 'citizen.job.cnapsid.label': \"N° d'affiliation CNAPS\",\n 'citizen.job.cnapsid.placeholder.label': \"Votre n° d'affiliation CNAPS\",\n 'citizen.job.profregnum.label': 'Numéro d’ordre (si agent de santé)',\n 'citizen.job.profregnum.placeholder.label':\n 'Votre numéro d’inscription Ordre',\n 'citizen.success.edit.message': 'Votre profil a été mis à jour avec succès',\n 'citizen.success.create.message': 'Votre demande est reçu.',\n 'citizen.error.create.failed.message':\n \"Une erreur s'est produite lors de la création du nouveau citoyen\",\n 'citizen.error.create.unknown.message':\n \"Une erreur s'est produite lors de la création du nouveau citoyen\",\n 'citizen.error.exists.message':\n 'Un citoyen ayant les mêmes informations existe déjà',\n 'citizen.error.notfound.label': 'Erreur: citoyen introuvable!',\n 'citizen.error.health.message':\n \"Une erreur s'est produit lors de l'enregistrement de CSB de rattachement\",\n 'citizen.error.job.message':\n \"Une erreur s'est produit lors de l'enregistrement de Profession\",\n 'citizen.error.address.message':\n \"Une erreur s'est produit lors de l'enregistrement de l'adresse\",\n 'citizen.search.fokontany.label': 'Rechercher vôtre Fokontany',\n 'citizen.search.fokontany.button.label': 'Valider le Fokontany',\n};\n","export default {\n 'profile.personalinfo.title.label': 'Informations personnelles',\n 'profile.jobinfo.title.label': 'Renseignement profession',\n 'profile.healthinfo.title.label': 'Renseignement santé',\n 'profile.healthinfo.vaccine.dose.label': 'Dose {doseNum}',\n};\n","export default {\n 'common.card.back.to.profile': 'Retour au profil',\n 'common.vaccine.card.download': 'Télécharger le certificat de vaccination',\n 'common.test.card.download': 'Télécharger le certificat de test COVID-19',\n 'common.card.title': 'KARATRA FANAMARINANA VAKSINY',\n 'common.card.title.certificate': 'CERTIFICAT DE VACCINATION',\n 'common.card.title.virus': 'COVID-19',\n 'common.card.label.fullname.title': 'Anarana feno - Nom complet - Full name',\n 'common.card.label.bitrh.title':\n 'Daty nahaterahana - Date de naissance - Date of birth',\n 'common.card.label.address.title': 'Adiresy - Addresse - Address',\n 'common.card.label.country.title': 'Firenena - Pays - Country',\n 'common.card.label.vaccine.statut.title': 'Sata - Statut - Status',\n 'common.card.signature.1':\n \"Voamarina aradalana teo anivon'ny Ministeran'ny Fahasalamam-bahoaka\",\n 'common.card.signature.2':\n 'Certifié par le Ministère de la santé publique',\n 'common.card.signature.3': 'Certified by the Public Heath Ministry',\n 'common.card.epi.not.found.title': 'Numéro EPI non fourni',\n 'common.card.certificate.not.ready.message':\n \"Si vous n'êtes pas encore vaccinés, vous ne pouvez pas demander votre certificat.

Pour les personnes vaccinées, l'enrichissement des données relatives aux vaccins dans la plateforme peut prendre 2 jours.

Nous vous invitons à revérifier votre certificat après ce délai. Nous vous remercions pour votre compréhension.\",\n 'common.card.test.covid.certificate.not.ready.message':\n \"Si vous n'êtes pas encore testés, vous ne pouvez pas demander votre certificat.\",\n 'common.card.epi.not.found.label':\n \"Impossible de récupérer le certificat du citoyen. Le numéro EPI n'est pas fourni\",\n 'common.card.invalid.access.message':\n \"Vous ne pouvez pas accéder à cette page ou le lien que vous avez essayé d'utiliser a peut-être expiré.\",\n 'common.card.vaccined.statut.only.one.dose': 'Première dose administrée',\n 'common.card.vaccined.statut.two.dose': 'Vacciné(e)',\n};\n","export default {\n 'forgotpassword.title.label': 'Mot de passe oublié',\n 'forgotpassword.hint.message':\n \"Veuillez saisir votre adresse email ou identifiant unique afin d'obtenir le lien pour réinitialiser votre mot de passe.\",\n 'forgotpassword.username.required.message': 'Entrez votre identifiant',\n 'forgotpassword.id.label': 'Adresse email ou identifiant',\n 'forgotpassword.reset.mypassword.label': 'Réinitialiser mon mot de passe',\n 'forgotpassword.reset.cancel.label': 'Annuler',\n 'forgotpassword.login.invalid.message':\n \"Votre adresse e-mail ou votre identifiant n'a pas été reconnu. Il n'existe pas de profil de santé correspondant à l'identifiant que vous essayez d'entrer !\",\n 'forgotpassword.email.not.trusted.message':\n \"Votre adresse e-mail n'est pas valide. Il est également possible que vous n'avez pas fourni l'adresse correcte. Il est donc impossible de réinitialiser votre mot de passe.\",\n 'forgotpassword.username.invalid.message':\n 'Addresse email ou identifiant unique 12 chiffres',\n 'forgotpassword.invalid.link.message':\n \"Ce lien n'est plus valide, il a peut-être expiré. Vous devez retourner à la page Mot de passe oublié pour le réinitialiser.\",\n 'forgotpassword.ack.title.label':\n 'Email de réinitialisation du mot de passe envoyé',\n 'forgotpassword.ack.resend.email.label': \"Renvoyez l'e-mail\",\n 'forgotpassword.ack.message.label1': '

Veuillez vérifier votre email.

',\n 'forgotpassword.ack.message.label2':\n 'Un email a été envoyé à {theEmailAddress}.',\n 'forgotpassword.ack.message.label3':\n \"

Cliquez sur réinitialiser mon mot de passe, puis commencez à saisir votre nouveau mot de passe sur la page qui s'ouvre.

Vous n'avez pas reçu d'e-mail ?

\",\n};\n","export default {\n 'resetpassword.title.label': 'Réinitialiser votre mot de passe',\n 'resetpassword.password.label': 'Nouveau mot de passe',\n 'resetpassword.confirm.password.label': 'Confirmation du mot de passe',\n 'resetpassword.newpassword.invalid.message':\n \"Le nouveau mot de passe n'est pas acceptable. Le mot de passe doit comporter au moins 4 et au maximum 32 caractères.\",\n 'resetpassword.confirmpassword.invalid.message':\n \"Le nouveau mot de passe n'est pas acceptable. Le mot de passe de confirmation ne correspond pas.\",\n 'resetpassword.save.label': 'Sauvegarder',\n 'resetpassword.cancel.label': 'Annuler',\n 'resetpassword.ack.title.label':\n 'Votre mot de passe a été réinitialisé avec succès',\n 'resetpassword.ack.gologin.label': 'Allez à la page de connexion',\n 'resetpassword.ack.message.label':\n 'Votre nouveau mot de passe a été enregistré avec succès. Vous pouvez accéder à votre profil de santé via la page de connexion.',\n};\n","export default {\n 'faq.back.button.label': 'Retour à la page de connexion',\n 'faq.page.title': 'Foire aux questions',\n 'faq.form.title': 'FAQs',\n 'faq.technical.support': 'Support technique.',\n 'faq.caption.message':\n \"Tout ce que vous devez savoir sur la vaccination. Si Vous ne trouvez pas la réponse que vous cherchez ? Contactez notre équipe.\",\n 'faq.empty.primary.message': 'Nous ne pouvons pas trouver cette question',\n 'faq.empty.secondary.message':\n \"Désolé, la reponse que vous recherchez n'existe pas.\",\n 'faq.choose.category.label': 'Sélectionner une catégorie',\n 'faq.choose.theme.label': 'Rechercher une thématique',\n};\n","export default {\n 'common.default.page.label': 'Fandraisana',\n 'common.app.name': 'CoVaX - Profil de santé - Madagascar',\n 'common.health.profile.label': 'PROFIL DE SANTÉ',\n 'common.page.footer.copyright': `Copyright © ${new Date().getFullYear()} vaksiny.gov.mg`,\n 'common.label.cancel': 'Miala',\n 'common.label.nooption': 'Tsy misy',\n 'common.noinformation.label': 'Tsy fantatra',\n 'common.button.reload.label': 'Mamerina misintona',\n 'common.editor.email.invalid.message': 'Tsy mety io adiresy mailaka io',\n 'common.editor.email.not.trusted.message':\n 'Tsy ekena ny adiresy mailaka ampiasainao. Mampiasà adiresy mailaka voamarina ary azo antoka tsara.',\n 'common.editor.phonenumber.invalid.message': 'Tsy mety io laharana finday io',\n 'common.editor.cniNum.invalid.message': 'Tsy mety io laharana karatra io',\n 'common.editor.date.invalid.message': 'Tsy mety io daty io',\n 'common.editor.cnapsid.invalid.message': 'Tsy mety io laharana CNAPS!',\n 'common.editor.required.message':\n 'Tsy maintsy fenoina ireo rehetra misy marika (*).',\n 'common.language.fr.iso': 'FR',\n 'common.language.fr.iso.tooltip': 'Utiliser la langue française',\n 'common.language.mg.iso': 'MG',\n 'common.language.mg.iso.tooltip': 'Misafidy ny fiteny malagasy',\n};\n","import { format, add, sub } from 'date-fns';\n\nexport default {\n 'error.title.backToHome': 'Back to Home',\n 'error.title.error': 'Error',\n 'error.message.unknow':\n \"Une erreur inconnue s'est produite, vérifiez votre réseau ou contactez l'administrateur.\",\n 'error.message.internalServerError': 'Internal server error',\n 'error.message.networkError':\n 'Hamarino raha mandeha tsara ny tambajotra aterinetonao avy eo evereno atao ny fangatahanao.',\n 'error.message.unauthenticated':\n 'You must be logged in to perform this operation.',\n 'error.message.forbidden':\n \"Vous n'avez pas les droits pour effectuer cette action.\",\n 'error.message.args.type': 'Wrong type of arguments.',\n 'error.loading.label':\n \"Une erreur s'est produite lors du chargement des données\",\n 'error.helper.required': 'Tsy maintsy fenoina',\n\n 'error.date.invalid.message': 'Date incorrecte',\n 'error.date.max.label': `La date ne doit pas être postérieure à ${format(\n new Date(),\n 'dd/MM/yyyy',\n )}`,\n 'error.date.min.label': \"L'année ne doit pas être antérieure à 1900\",\n\n 'error.birth.date.max.label': `La date ne doit pas être postérieure à ${format(\n sub(new Date(), { years: 18 }),\n 'dd/MM/yyyy',\n )}`,\n 'error.appointment.date.min.label': `La date ne doit pas être antérieure à ${format(\n add(new Date(), { days: 1 }),\n 'dd/MM/yyyy',\n )}`,\n 'error.appointment.date.max.label': `La date ne doit pas être postérieure à ${format(\n add(new Date(), { years: 1 }),\n 'dd/MM/yyyy',\n )}`,\n};\n","import signin from './signin';\nimport common from './common';\nimport errors from './errors';\nimport changepassword from './changepassword';\nimport userprofile from './userprofile';\nimport user from './user';\nimport citizen from './citizen';\nimport register from './register';\nimport profile from './profile';\nimport card from './card';\nimport forgotpassword from './forgotpassword';\nimport resetpassword from './resetpassword';\nimport hellobar from './hellobar';\nimport faq from './faq';\n\nexport default {\n ...hellobar,\n ...signin,\n ...register,\n ...common,\n ...errors,\n ...changepassword,\n ...userprofile,\n ...user,\n ...citizen,\n ...profile,\n ...card,\n ...forgotpassword,\n ...resetpassword,\n ...faq,\n};\n","export default {\n 'title.hellobar': 'Hijery karatra fanamarinana fanaovam-baksiny',\n 'notice.hellobar':\n \"Ny taratasy fahamarinana ny fanaovana vaksiny dia tsy "passe sanitaire européen" velively, fa antotan-taratasy hafahana
mangataka "passe sanitaire" eny anivon'ny Ambasady ny firenena handray anao.\",\n 'button.hellobar.label': 'Jereo ny torolalana',\n 'button.close.hellobar.label': 'Tsia, misaotra',\n 'other.service.hellobar.label':\n \"Raha hijery servisy hafa hanampy anao amin'ny fiainana andavanandro :
https://torolalana.gov.mg\",\n 'tips.card.label': 'Fomba fampiasana ny torolalana',\n 'tips.card.video.label': 'Mijery video',\n};\n","export default {\n 'signin.app.label': 'Application pour la Gestion de Profil de santé',\n 'signin.form.hint.label': \"Miditra amin'ny kaontinao\",\n 'signin.form.call.for.registration.message': 'Misoratà anarana',\n 'signin.page.title.label': 'Fidirana',\n 'signin.login.label': \"Solon'anarana\",\n 'signin.login.placeholder.label': 'Anarana',\n 'signin.password.label': 'Teny miafina',\n 'signin.password.placeholder.label': 'EPI_99999999',\n\n 'signin.buttom.label': 'Miditra',\n 'signin.faq.label': 'Jereo ny torolalana',\n 'signin.back.button.label': 'Retourner à la page de connection',\n 'signin.forgot.password.label': 'Hadino ny teny miafina ?',\n 'signin.keepmeloggedin.label': 'Gardez-moi connecté',\n 'signin.login.success': 'Tontosa ny fanamarinana',\n 'signin.login.error': 'Erreur: identifiant ou mot de passe invalide!',\n 'signin.password.error.min.message': 'Tokony hisy soratra 4 farafahakeliny',\n 'signin.password.error.max.message': 'Tokony hisy soratra 32 farafahalavany',\n 'signin.password.error.required.message': 'Ampidiro ny teny miafina',\n 'signin.login.error.required.message': \"Ampidiro ny anaran'ny kaontinao\",\n 'signin.login.error.min.message': 'Tokony hisy soratra 2 farafahakeliny',\n 'signin.login.error.max.message': 'Tokony hisy soratra 32 farafahalavany',\n\n 'signin.tips.primary.title': 'VAKSINY FANEFITRY NY COVID-19',\n 'signin.tips.secondary.title':\n \"Tongasoa eto amin'ny tranokala ofisialy fisoratana anarana amin'ny vaksiny fanefitry ny covid-19..
“An-tsitrapo ny vaksiny”.\",\n 'signin.subscribe.hint.message':\n \"Misokatra ny fisoratana anarana ho an'izay maniry ny hatao vaksiny
indrindra ho an'ireto sokajin'olona manaraka ireto :\",\n 'signin.persona.travelers.label':\n 'Ireo olona tsy maintsy mandeha any ivelany mba hiasa na hianatra ary manana antontan-taratasy fanamarinana',\n 'signin.persona.healthworker.label':\n \"Mpiasan'ny fahasalamana
(amin'ny Fanjakana sy ny tsy miankina)\",\n 'signin.persona.frailpeople.label':\n 'Ireo olona manana aretina mitaiza sy misitraka fanaraha-maso ara-pahasalamana',\n 'signin.persona.govsecurity.label': 'Ny mpitandro filaminana',\n 'signin.persona.socialworker.label': \"Ireo mpiasan'ny sosialy\",\n 'signin.persona.teleoperator.label':\n 'Raha mila fanazavana fanampiny dia antsoy ny laharana 910.',\n 'signin.tips.main.message': `

La vaccination est maintenant accessible à toutes les personnes âgées de 18ans et plus.\n

Vous n’êtes pas encore vacciné ? ou vous êtes vaccinés mais pas encore enregistrés via tablette lors de votre passage au centre de vaccination.

\n

Prenez 2 minutes pour vous inscrire sur cette plateforme!

\n

L’inscription n’est pas obligatoire mais avoir un compte vous permet de bénéficier des avantages suivants :

\n

- faciliter votre enregistrement au niveau des centres de vaccinations ;

\n

- organiser votre prochain rendez-vous pour la 2e dose ;

\n

- disposer ultérieurement des fonctionnalités complémentaires proposées par la plateforme comme la délivrance d’une attestation de vaccination officielle ou d’une carte de vaccination digitale et bien d’autres.

\n

Pour toutes informations complémentaires, appelez le 910.

`,\n};\n","export default {\n 'register.title.label': 'Misoratra anarana',\n 'register.button.submit.label': 'Enregistrer',\n 'register.button.previous.label': 'Teo aloha',\n 'register.button.next.label': 'Manaraka',\n 'register.link.label': 'Misoratra anarana',\n 'register.hint.label': 'Tsy mbola manana kaonty ?',\n 'registration.validation.notification':\n \"En attente de validation par l'admin...\",\n 'registration.validation.notification.title': 'Notification',\n\n 'registration.tips.primary.title': 'VAKSINY COVID-19',\n 'registration.tips.secondary.title':\n 'Comment
puis-je prendre
rendez-vous?',\n\n 'register.step.personalinfo.title.label':\n \"Fampahalalana manokana (Dingana 1 amin'ny 3)\",\n 'register.step.jobinfo.title.label': \"Momban'ny asa (dingana 2 amin'ny 3)\",\n 'register.step.healthinfo.title.label':\n 'Fampahalalana momba ny fahasalamana (Dingana farany)',\n 'registration.enrollment.process.job.label': \"Momban'ny asa\",\n 'registration.enrollment.process.health.label':\n 'Fampahalalana momba ny fahasalamana',\n 'registration.enrollment.process.appointment.label': 'Prise de rendez-vous',\n 'registration.enrollment.process.ackconfirm.label':\n 'Confirmation de réception',\n\n 'registration.test.positive.not.allowed.message':\n 'Test positif moins de 3 mois, vous ne devez pas vous faire vacciner',\n 'registration.ack.title.label': 'Fanamafisana ny fandraisana',\n 'registration.ack.message.label': `\n

Voaray ny fangatahanao hisitraka ny vaksiny miaro amin’ny Covid-19. Aza miandry fa manatona haingana toerana fanaovam-baksiny.

\n

Raha mila fanazavana fanampiny dia antsoy ny laharana 910 na mandefasa mailaka ho any amin’ny vaccinationcovid19@googlegroups.com.


\n

Misaotra anao amin'ny fahazotoana hanao vaksiny miady amin'ny COVID-19.
Ny fanaovana vaksiny dia:

\n
    \n
  1. Miaro amin'ny fototr'aretina noho izany mamonjy aina ary misoroka ny fahatanjahan'ny fesehon'aretina eo amin'ny fahasalaman'ny ozatra, havokavoka, fo,...

  2. \n
  3. Manampy ny rafitra ara-pahasalamana amin'ny alàlan'ny fanamaivanana ny asan'ireo mpitsabo.

  4. \n
  5. Miaro ireo tena marefo hahazoana hery fiarovana hikambanana.

  6. \n
\n `,\n};\n","export default {\n 'changepassword.error.min.message': 'Tokony hisy soratra 4 farafahakeliny',\n 'changepassword.error.max.message': 'Tokony hisy soratra 32 farafahalavany',\n 'changepassword.error.newpassword.required.message':\n 'Tsy maintsy fenoina ny teny miafina vaovao',\n 'changepassword.error.confirmpassword.required.message':\n 'Hamarino ilay teny miafina vaovao',\n 'changepassword.error.confirmpassword.notmatch.message':\n 'Tsy mitovy ireo teny miafina nosoratanao',\n};\n","export default {\n 'userprofile.gender.label': 'Fananahana',\n 'userprofile.gender.male.label': 'Lahy',\n 'userprofile.gender.female.label': 'Vavy',\n 'userprofile.card': 'Ma carte',\n 'userprofile.uploadavatar.title': 'Modifier votre photo de profil',\n 'userprofile.uploadavatar.choosefile.label': 'Sélectionnez une photo',\n 'userprofile.uploadavatar.saveavatar.label': 'Enregistrer la photo de profil',\n 'userprofile.uploadavatar.updated.message':\n 'Votre photo de profil a été modifiée',\n 'userprofile.uploadavatar.error.message':\n \"Une erreur s'est produite lors de la mise à jour de votre photo!\",\n 'userprofile.cancel.edit.label': 'Annuler la modification',\n 'userprofile.edit.label': 'Modifier',\n 'userprofile.logout.label': 'Se déconnecter',\n};\n","export default {\n 'user.phonenumber.label': \"Laharan'ny finday\",\n 'user.email.label': 'Mailaka',\n 'user.editor.lastname.min.message':\n \"Ny solon'anarana dia tokony hahitana soratra miisa 3 farafahakeliny.\",\n 'user.editor.lastname.required.message':\n \"Tsy maintsy mampiditra solon'anarana ianao\",\n 'user.error.notfound.label': 'Olana: tsy fantatra io olona io!',\n};\n","export default {\n 'user.name.label': 'Anarana',\n 'user.firstname.label': \"Fanampin'anarana\",\n 'citizen.municipality.label': 'Distrika / Boriborintany',\n 'citizen.region.label': 'Faritra',\n 'citizen.district.label': 'Distrika',\n 'citizen.fokontany.label': 'Fokontany',\n 'citizen.municipality.only.label': 'Kaominina',\n 'citizen.borough.label': 'Boriborintany',\n 'citizen.address.label': 'Adiresy',\n 'citizen.birthdate.label': 'Daty nahaterahana',\n 'citizen.cni.number.label': \"Laharan'ny kara-panondro\",\n 'citizen.health.comorbidity.label':\n \"Karazana aretina mikiky na aretina mitaiza izay mahazo anao ary anarahi-maso anao amin'ny fitsaboana\",\n 'citizen.comorbidity.category.other.label':\n 'Karazana aretina mikiky na aretina mitaiza (raha hafa)',\n 'citizen.comorbidity.category.other.placeholder.label':\n 'Karazana aretina mikiky na aretina mitaiza',\n 'citizen.health.facility.label':\n \"Anisan'ny toerana ahitana izany ireo voalaza etsy ambany. Misafidiana ny toerana akaiky anao\",\n 'citizen.health.desired.vaccine.label': '​Vaksiny irina',\n 'citizen.health.lastPcrTest.label':\n 'Résultat de test PCR ou Genexpert ces deriniers 3 mois',\n 'citizen.health.lastPcrTest.positive.label': 'Positif',\n 'citizen.health.lastPcrTest.negative.label': 'Négatif',\n 'citizen.health.lastPcrTest.notapplicable.label': \"Je n'ai pas fait le test\",\n 'citizen.job.employer.label': 'Tranom-barotra / Orinasa',\n 'citizen.job.employer.placeholder.label': 'Toerana iasana',\n 'citizen.job.category.label': 'Sokajy',\n 'citizen.job.category.placeholder.label': \"Mpiasan'ny fahasalamana\",\n 'citizen.job.category.other.label': 'Asa (raha sokajy hafa) ',\n 'citizen.job.category.other.placeholder.label': 'Ny asanao',\n 'citizen.job.offregnum.label': '\"Immatriculation\" (raha mpiasam-panjakana)',\n 'citizen.job.offregnum.placeholder.label': 'Laharana maha mpiasam-panjakana',\n 'citizen.job.cnapsid.label': 'Laharana CNAPS',\n 'citizen.job.cnapsid.placeholder.label': 'Laharana maha mpikambana CNAPS',\n 'citizen.job.profregnum.label':\n \"Laharana fahazoandalana (mpiasan'ny fahasalamana)\",\n 'citizen.job.profregnum.placeholder.label': \"Laharana ao amin'ny ONM \",\n 'citizen.success.edit.message': 'Votre profil a été mis à jour avec succès',\n 'citizen.success.create.message': 'Voaray ny fangatahanao.',\n 'citizen.error.create.failed.message':\n \"Une erreur s'est produite lors de la création du nouveau citoyen\",\n 'citizen.error.create.unknown.message':\n \"Une erreur s'est produite lors de la création du nouveau citoyen\",\n 'citizen.error.exists.message':\n 'Un citoyen ayant les mêmes informations existe déjà',\n 'citizen.error.notfound.label': 'Erreur: citoyen introuvable!',\n 'citizen.error.health.message':\n \"Une erreur s'est produit lors de l'enregistrement de CSB de rattachement\",\n 'citizen.error.job.message':\n \"Une erreur s'est produit lors de l'enregistrement de Profession\",\n 'citizen.error.address.message':\n \"Une erreur s'est produit lors de l'enregistrement de l'adresse\",\n 'citizen.search.fokontany.label': 'Fitadiavana Fokontany',\n 'citizen.search.fokontany.button.label': 'Voasafidy ny Fokontany',\n};\n","export default {\n 'profile.personalinfo.title.label': 'Fampahalalana manokana',\n 'profile.jobinfo.title.label': \"Momban'ny asa\",\n 'profile.healthinfo.title.label': 'Fampahalalana momba ny fahasalamana ',\n 'profile.healthinfo.vaccine.dose.label': 'Dose {doseNum}',\n};\n","export default {\n 'common.card.back.to.profile': 'Retour au profil',\n 'common.vaccine.card.download': 'Télécharger le certificat de vaccination',\n 'common.test.card.download': 'Télécharger le certificat de test COVID-19',\n 'common.card.title': 'KARATRA FANAMARINANA VAKSINY',\n 'common.card.title.certificate': 'CERTIFICAT DE VACCINATION',\n 'common.card.title.virus': 'COVID-19',\n 'common.card.label.fullname.title': 'Anarana feno - Nom complet - Full name',\n 'common.card.label.bitrh.title':\n 'Daty nahaterahana - Date de naissance - Date of birth',\n 'common.card.label.address.title': 'Adiresy - Addresse - Address',\n 'common.card.label.country.title': 'Firenena - Pays - Country',\n 'common.card.label.vaccine.statut.title': 'Sata - Statut - Status',\n 'common.card.signature.1':\n \"Voamarina aradalana teo anivon'ny Ministeran'ny Fahasalamam-bahoaka\",\n 'common.card.signature.2':\n 'Certifié par le Ministère de la santé publique',\n 'common.card.signature.3': 'Certified by the Public Heath Ministry',\n 'common.card.epi.not.found.title': 'Numéro EPI non fourni',\n 'common.card.certificate.not.ready.message':\n \"Si vous n'êtes pas encore vaccinés, vous ne pouvez pas demander votre certificat.

Pour les personnes vaccinées, l'enrichissement des données relatives aux vaccins dans la plateforme peut prendre 2 jours.

Nous vous invitons à revérifier votre certificat après ce délai. Nous vous remercions pour votre compréhension.\",\n 'common.card.test.covid.certificate.not.ready.message':\n \"Si vous n'êtes pas encore testés, vous ne pouvez pas demander votre certificat.\",\n 'common.card.epi.not.found.label':\n \"Impossible de récupérer le certificat du citoyen. Le numéro EPI n'est pas fourni\",\n 'common.card.invalid.access.message':\n \"Vous ne pouvez pas accéder à cette page ou le lien que vous avez essayé d'utiliser a peut-être expiré.\",\n 'common.card.vaccined.statut.only.one.dose': 'Première dose administrée',\n 'common.card.vaccined.statut.two.dose': 'Vacciné(e)',\n};\n","export default {\n 'forgotpassword.title.label': 'Hadino ny teny miafina',\n 'forgotpassword.hint.message':\n 'Azafady mba fenoy ity takelaka manaraka ity hamerenana ny teny miafinao.',\n 'forgotpassword.username.required.message':\n \"Tsy maintsy mampiditra solon'anarana\",\n 'forgotpassword.id.label': \"Adiresy mailaka na solon'anarana\",\n 'forgotpassword.reset.mypassword.label': 'Avereno ny teny miafiko',\n 'forgotpassword.reset.cancel.label': 'Miala',\n 'forgotpassword.login.invalid.message':\n \"Tsy fantatra io solon'anarana na adiresy mailaka io. Tsy mbola misy kaonty mifanaraka amin'ireo ato!\",\n 'forgotpassword.email.not.trusted.message':\n 'Tsy mety ny adiresy mailaka nomenao. Mety tsy nanome adiresy mailaka koa ianao. Noho izany dia tsy afaka mamerina ny teny miafinao ianao.',\n 'forgotpassword.username.invalid.message':\n 'Adiresy mailaka na Laharana manokana',\n 'forgotpassword.invalid.link.message':\n \"Tsy afaka manohy ny fanovana teny miafina ianao. Tokony miverina any amin'ny pejy fanarenana teny miafina hadino raha hanohy izany.\",\n 'forgotpassword.ack.title.label':\n 'Lasa ny mailaka ahafahanao manova ny teny miafinao',\n 'forgotpassword.ack.resend.email.label': 'Alefaso ilay mailaka',\n 'forgotpassword.ack.message.label1': \"

Jereo any amin'ny mailakao.

\",\n 'forgotpassword.ack.message.label2':\n \"Nisy mailaka nalefa any amin'ny adiresinao {theEmailAddress}.\",\n 'forgotpassword.ack.message.label3':\n '

Kitiho ny hoe \"Réinitialiser mon mot de passe\", dia araho ny toromarika rehetra.

Tsy nahavoaray mailaka ve ianao ?

',\n};\n","export default {\n 'resetpassword.title.label': 'Famerenana ny teny miafina hadino',\n 'resetpassword.password.label': 'Teny miafina vaovao',\n 'resetpassword.confirm.password.label': 'Avereno eto ilay teny miafina',\n 'resetpassword.newpassword.invalid.message':\n \"Tsy ekena io teny miafina io. Tokony hisy soratra miisa 4 ka hatramin'ny 32 ny halavany.\",\n 'resetpassword.confirmpassword.invalid.message':\n 'Tsy ekena io teny miafina io. Tsy mitovy ny teny miafina vaosoratrao.',\n 'resetpassword.save.label': 'Mitahiry',\n 'resetpassword.cancel.label': 'Miala',\n 'resetpassword.ack.title.label': 'Tontosa ny fanovana teny miafina nataonao',\n 'resetpassword.ack.gologin.label': \"Miverina any amin'ny pejy fandraisana\",\n 'resetpassword.ack.message.label':\n \"Voatahiry ny teny miafina vaovao. Afaka miditra amin'ny kaontinao amin'izay ianao.\",\n};\n","export default {\n 'faq.back.button.label': \"Miverina any amin'ny fandraisana\",\n 'faq.page.title': 'Ireo fanontaniana matetika',\n 'faq.form.title': 'FAQs',\n 'faq.technical.support': 'Fanohanana ara-teknika.',\n 'faq.caption.message':\n \"Izay rehetra tokony ho fantatrao momba ny vaksiny. Raha tsy hitanao ny valiny tadiavinao? Mifandraisa amin'ny ekipanay.\",\n 'faq.empty.primary.message': 'Tsy hitantsika io fanontaniana io',\n 'faq.empty.secondary.message':\n 'Miala tsiny fa tsy misy ny valiny tadiavinao.',\n 'faq.choose.category.label': 'Misafidiana sokajin-dresaka',\n 'faq.choose.theme.label': 'Mitady teny',\n};\n","import { useIntl } from 'react-intl';\nimport fr_FR from './fr-FR';\nimport mg_MG from './mg-MG';\n\nconst messages: Record> = {\n fr: fr_FR,\n mg: mg_MG,\n};\n\nconst toTitleCase = (str: string): string => {\n return str\n .toLowerCase()\n .split(' ')\n .map(function (word) {\n return word.charAt(0).toUpperCase() + word.slice(1);\n })\n .join(' ');\n};\n// intl helper to load the content according to the current locale\nexport const useIntlLabel: () => (\n obj: Record,\n attr: string,\n) => string = () => {\n const intl = useIntl();\n return (obj: Record, attr: string): string => {\n return String(obj[`${attr}${toTitleCase(intl.locale)}`] ?? obj[attr]);\n };\n};\n\nexport default messages;\n","import React, { useEffect, FC } from 'react';\nimport { IntlProvider } from 'react-intl';\nimport messages from '../../locales';\nimport LocaleContext, { Locale, EnumLocaleKeys } from './LocaleContext';\n\ninterface IProps {\n children: React.ReactNode;\n}\n\nconst LOCALSTORAGE_FIELD_KEY = 'HEALTH-PROFILE-LOCALE';\n\nconst LocaleProvider: FC = ({ children }) => {\n const [locale, setLocale] = React.useState(EnumLocaleKeys.Malagasy);\n\n // Load the last configured locale\n const loadLastLocale = async () => {\n const lastLocale = (localStorage.getItem(LOCALSTORAGE_FIELD_KEY) ??\n EnumLocaleKeys.Malagasy) as Locale;\n\n if (\n EnumLocaleKeys.Francais != lastLocale &&\n EnumLocaleKeys.Malagasy != lastLocale\n ) {\n setLocale(EnumLocaleKeys.Malagasy);\n } else {\n setLocale(lastLocale as Locale);\n }\n };\n\n // Update locale on mount\n useEffect(() => {\n loadLastLocale();\n });\n\n return (\n {\n setLocale(newLocale);\n localStorage.setItem(LOCALSTORAGE_FIELD_KEY, newLocale);\n },\n }}\n >\n \n {children}\n \n \n );\n};\n\nexport default LocaleProvider;\n","import { useContext } from 'react';\nimport LocaleContext from './LocaleContext';\nimport LocaleProvider from './LocaleProvider';\n\nexport const useLocaleContext = () => useContext(LocaleContext);\nexport default LocaleProvider;\n","import PageFooter from './PageFooter';\n\nexport default PageFooter;\n","import React, { FC } from 'react';\nimport { useIntl } from 'react-intl';\nimport Container from '@material-ui/core/Container';\nimport Box from '@material-ui/core/Box';\nimport Typography from '@material-ui/core/Typography';\nimport CovaxBrandingImage from '../../../assets/images/covax-branding-image.svg';\nimport EgmBrandingImage from '../../../assets/images/new-ugd-logo.svg';\nimport La2mBrandingImage from '../../../assets/images/la2mg.svg';\n\nimport { useStyles } from './styles';\nimport { EnumLocaleKeys } from '../../../modules/LocaleProvider/LocaleContext';\nimport FlagMgIcon from '../../../assets/images/flag-mg.svg';\nimport FlagFrIcon from '../../../assets/images/flag-fr.svg';\nimport ActionButton from '../../button/ActionButton';\nimport { useLocaleContext } from '../../../modules/LocaleProvider';\n\nconst PageFooter: FC = () => {\n const classes = useStyles();\n const intl = useIntl();\n const { locale, setLocale } = useLocaleContext();\n\n return (\n \n \n \n
\n \n {intl.formatMessage({\n id:\n EnumLocaleKeys.Francais === locale\n ? 'common.language.mg.iso.tooltip'\n : 'common.language.fr.iso.tooltip',\n })}\n

\n }\n onClick={() =>\n setLocale(\n EnumLocaleKeys.Francais === locale\n ? EnumLocaleKeys.Malagasy\n : EnumLocaleKeys.Francais,\n )\n }\n >\n \n {intl.formatMessage({\n id:\n EnumLocaleKeys.Francais === locale\n ? 'common.language.mg.iso'\n : 'common.language.fr.iso',\n })}\n \n
\n \n {intl.formatMessage({ id: 'common.page.footer.copyright' })}\n \n
\n \n \n \n \n \n \n \n \n \n
\n
\n );\n};\n\nexport default PageFooter;\n","export default __webpack_public_path__ + \"static/media/gov-mg-brand-original-pattern.0414273d.png\";","import { makeStyles } from '@material-ui/core/styles';\nimport GovBrandPatternImage from '../../../assets/images/gov-mg-brand-original-pattern.png';\n\nexport interface IStyleProps {\n showBackground?: boolean;\n}\n\nexport const useStyles = makeStyles((theme) => ({\n root: ({ showBackground }: IStyleProps) => ({\n height: '100vh',\n width: '100vw',\n display: 'flex',\n flexDirection: 'column',\n position: 'relative',\n background: showBackground\n ? `url(${GovBrandPatternImage}) no-repeat calc(100% - 64px) center / 542px 521px, linear-gradient(to bottom, ${theme.colors.background.paper}, ${theme.colors.background.default})`\n : `linear-gradient(to bottom, ${theme.colors.background.paper}, ${theme.colors.background.default})`,\n overflow: 'auto',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n background: showBackground\n ? `url(${GovBrandPatternImage}) no-repeat center center / 361px 347px, linear-gradient(to bottom, ${theme.colors.background.paper}, ${theme.colors.background.default})`\n : `linear-gradient(to bottom, ${theme.colors.background.paper}, ${theme.colors.background.default})`,\n },\n }),\n container: {\n flexGrow: 1,\n maxWidth: theme.maxContainerWidth,\n paddingLeft: 0,\n paddingRight: 0,\n [theme.breakpoints.down(theme.maxContainerWidth + 1)]: {\n paddingLeft: theme.spacing(3),\n paddingRight: theme.spacing(3),\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(2),\n },\n },\n content: {\n flexGrow: 1,\n display: 'flex',\n flexDirection: 'row',\n height: '100%',\n },\n}));\n","import PageContainer from './PageContainer';\n\nexport default PageContainer;\n","import React, { FC } from 'react';\nimport Box from '@material-ui/core/Box';\nimport { Container } from '@material-ui/core';\nimport classnames from 'classnames';\nimport PageHeader from '../PageHeader';\nimport PageFooter from '../PageFooter';\nimport { useStyles, IStyleProps } from './styles';\n\nexport interface IProps extends IStyleProps {\n children?: React.ReactNode;\n className?: string;\n}\n\nconst PageContainer: FC = ({\n children,\n showBackground = false,\n className,\n}) => {\n const classes = useStyles({ showBackground });\n return (\n \n \n \n \n {children}\n \n \n \n \n );\n};\n\nexport default PageContainer;\n","import { ApolloError } from '@apollo/client';\nimport { useIntl } from 'react-intl';\nimport { useSnackbar } from 'notistack';\n\nimport { NETWORK_ERROR, ApolloErrorCode } from '../../consts';\n\ninterface ApolloErrorHandler {\n code: ApolloErrorCode | typeof NETWORK_ERROR;\n message?: string;\n callback?: (error?: ApolloError, displayMessage?: string) => void;\n silent?: boolean;\n}\n\nconst mergeErrorHandler = (\n destination: ApolloErrorHandler,\n source: ApolloErrorHandler,\n) => ({\n code: destination.code,\n message: source.message || destination.message,\n callback: source.callback || destination.callback,\n silent: source.silent || destination.silent || false,\n});\n\nexport const useErrorHanlder = (\n defaultMessages: ApolloErrorHandler[] = [],\n): ((error: ApolloError, messages?: ApolloErrorHandler[]) => void) => {\n const intl = useIntl();\n const { enqueueSnackbar } = useSnackbar();\n\n const commonMessages: ApolloErrorHandler[] = [\n {\n code: NETWORK_ERROR,\n message: intl.formatMessage({\n id: 'error.message.networkError',\n defaultMessage:\n 'Veuillez vérifier votre connexion Internet et réessayer.',\n }),\n },\n\n {\n code: ApolloErrorCode.UKNOWN_ERROR,\n message: intl.formatMessage({\n id: 'error.message.unknow',\n defaultMessage: 'An unknown error occured.',\n }),\n },\n\n {\n code: ApolloErrorCode.INTERNAL_SERVER_ERROR,\n message: intl.formatMessage({\n id: 'error.message.internalServerError',\n defaultMessage: 'Internal server error',\n }),\n },\n\n {\n code: ApolloErrorCode.UNAUTHENTICATED,\n message: intl.formatMessage({\n id: 'error.message.unauthenticated',\n defaultMessage: 'You must be logged in to perform this operation.',\n }),\n },\n\n {\n code: ApolloErrorCode.FORBIDDEN,\n message: intl.formatMessage({\n id: 'error.message.forbidden',\n defaultMessage: 'You are not authorized to perform this action.',\n }),\n },\n\n {\n code: ApolloErrorCode.ARGS_TYPE_ERROR,\n message: intl.formatMessage({\n id: 'error.message.args.type',\n defaultMessage: 'Wrong type of arguments.',\n }),\n },\n ];\n\n return (error: ApolloError, messages: ApolloErrorHandler[] = []) => {\n const getCurrentErrorCodeMessage = (\n apolloErrorCode: ApolloErrorCode | typeof NETWORK_ERROR,\n ): ApolloErrorHandler => {\n let message = '';\n let callback:\n | ((error?: ApolloError, displayMessage?: string) => void)\n | undefined = undefined;\n\n for (const errorHandler of [\n ...messages,\n ...defaultMessages,\n ...commonMessages,\n ]) {\n if (errorHandler.code === apolloErrorCode) {\n message = errorHandler.message || message;\n callback = errorHandler.callback || callback;\n }\n\n if (message)\n return {\n code: apolloErrorCode,\n message,\n callback,\n silent: errorHandler.silent,\n };\n }\n\n return { code: apolloErrorCode, message, callback, silent: false };\n };\n\n let handler: ApolloErrorHandler = getCurrentErrorCodeMessage(\n ApolloErrorCode.UKNOWN_ERROR,\n );\n\n if (error.graphQLErrors?.length) {\n const currentError = error.graphQLErrors[0];\n const currentErrorCode = currentError.extensions?.code;\n\n if (currentErrorCode) {\n const currentHandler: ApolloErrorHandler =\n getCurrentErrorCodeMessage(currentErrorCode);\n\n handler = mergeErrorHandler(handler, currentHandler);\n }\n } else if (error.networkError) {\n handler = mergeErrorHandler(\n handler,\n getCurrentErrorCodeMessage(NETWORK_ERROR),\n );\n }\n\n if (handler.callback) handler.callback(error, handler.message ?? undefined);\n\n if (!handler.silent)\n enqueueSnackbar(handler.message || '', {\n variant: 'error',\n anchorOrigin: { horizontal: 'center', vertical: 'top' },\n });\n };\n};\n","import { gql } from '@apollo/client';\n\nexport const CITIZEN_INFO_FRAGMENT = gql`\n fragment AllCitizenInfoFragment on Citizen {\n id\n prodigyId\n photo\n lastName\n firstName\n address {\n id\n name\n }\n addressId\n birthDate\n birthPlace\n cniDeliveryDate\n cniDeliveryPlace\n cniNum\n email\n gender\n phoneNumber\n epiId\n createdBy\n createdOn\n creator {\n id\n lastName\n firstName\n }\n updatedBy\n updatedOn\n updater {\n id\n lastName\n firstName\n }\n isValidated\n validatedBy\n validatedOn\n validator {\n id\n lastName\n firstName\n }\n fokontany {\n id\n name\n }\n borough {\n id\n name\n }\n municipality {\n id\n name\n }\n district {\n id\n name\n }\n job {\n id\n employerId\n jobId\n otherJobId\n offRegNum\n profRegNum\n workplace\n otherJob {\n code\n id\n name\n }\n employer {\n id\n municipalityId\n name\n }\n }\n health {\n id\n comorbidityId\n covaxPriority\n healthCenterId\n lastPcrTest\n covacDose1Date\n covacDose2Date\n desiredVaccineId\n desiredVaccine {\n id\n name\n uid\n }\n otherComorbidityId\n otherComorbidity {\n id\n name\n other\n }\n healthCenter {\n id\n name\n municipalityId\n }\n comorbidity {\n id\n name\n }\n vaccineEvents {\n vaccineId\n doseNum\n doseName\n vaccineBatchNum\n vaccineDate\n vaccineCenter\n }\n testCovidEvents {\n samplingDate\n deliveryDate\n testResult\n testedPathogen\n usedTechnique\n laboratoryReference\n }\n }\n }\n`;\n\nexport const CITIZEN_MIN_INFO_FRAGMENT = gql`\n fragment MinCitizenInfoFragment on Citizen {\n id\n prodigyId\n lastName\n firstName\n birthDate\n cniNum\n municipality {\n id\n name\n }\n district {\n id\n name\n }\n isValidated\n validatedBy\n validatedOn\n exportedOn\n createdOn\n }\n`;\n","import { gql } from '@apollo/client';\nimport { CITIZEN_INFO_FRAGMENT } from './fragment';\n\nexport const CITIZEN_SUBSCRIBE = gql`\n mutation CitizenSubscribeMutation($input: CreateCitizenInput!) {\n selfSubscribeCitizen(input: $input) {\n citizen {\n ...AllCitizenInfoFragment\n }\n }\n }\n ${CITIZEN_INFO_FRAGMENT}\n`;\n\nexport const CITIZEN_EDIT_PROFILE = gql`\n mutation CitizenEditProfileMutation($input: UpdateCitizenProfileInput!) {\n updateCitizenProfile(input: $input) {\n citizen {\n ...AllCitizenInfoFragment\n }\n }\n }\n ${CITIZEN_INFO_FRAGMENT}\n`;\n\nexport const CITIZEN_UPLOAD_PIC = gql`\n mutation CitizenUpdateProfilePicMutation($thePic: Upload!) {\n updateProfilePic(thePic: $thePic) {\n message\n photo\n success\n }\n }\n`;\n\nexport const CITIZEN_SIGN_ID = gql`\n mutation CitizenSignIdMutation($citizenId: String!) {\n healthProfileSignInCitizenId(citizenId: $citizenId) {\n accessKey\n }\n }\n`;\n","import { gql } from '@apollo/client';\nimport { CITIZEN_INFO_FRAGMENT } from '../citizen/fragment';\n\n// Get my health profile information\nexport const MY_PROFILE = gql`\n query MyProfile {\n myProfile {\n ...AllCitizenInfoFragment\n }\n }\n ${CITIZEN_INFO_FRAGMENT}\n`;\n\n// Check if the password reset link has not expired\nexport const USER_CHECK_PASSWORD_RESET = gql`\n query HealthProfilePasswordResetCheck($resetToken: String!) {\n healthProfilePasswordResetCheck(resetToken: $resetToken) {\n isValid\n message\n }\n }\n`;\n","import { gql } from '@apollo/client';\nimport { CITIZEN_INFO_FRAGMENT } from './fragment';\n\n// Fetch citizen's profile info by access key\nexport const CITIZEN_VACCINATION_PROFILE = gql`\n query CitizenVaccinationProfile($accessKey: String!) {\n citizenProfile(accessKey: $accessKey) {\n ...AllCitizenInfoFragment\n }\n }\n ${CITIZEN_INFO_FRAGMENT}\n`;\n","import React from 'react';\nimport { useIntl } from 'react-intl';\nimport { useQuery } from '@apollo/client';\nimport { ApolloErrorCode } from '../../../consts';\nimport { useErrorHanlder } from '../../../modules/hooks';\nimport { CITIZEN_VACCINATION_PROFILE } from '../query';\nimport {\n CitizenVaccinationProfile,\n CitizenVaccinationProfileVariables,\n CitizenVaccinationProfile_citizenProfile,\n} from '../types/CitizenVaccinationProfile';\n\nexport const useCitizenVaccinationProfile = (\n accessKey?: string,\n): {\n isLoading: boolean;\n citizenProfile?: CitizenVaccinationProfile_citizenProfile;\n errorAlert?: string | null;\n closeAlert: () => void;\n} => {\n const intl = useIntl();\n const handleError = useErrorHanlder();\n const [errorAlert, setErrorAlert] = React.useState();\n\n const closeAlert = () => {\n setErrorAlert(null);\n };\n\n const { data, loading } = useQuery<\n CitizenVaccinationProfile,\n CitizenVaccinationProfileVariables\n >(CITIZEN_VACCINATION_PROFILE, {\n fetchPolicy: 'network-only',\n skip: !accessKey,\n variables: { accessKey: accessKey ?? '' },\n onError: (error) => {\n handleError(error, [\n {\n code: ApolloErrorCode.INVALID_ACCESS_KEY,\n message: intl.formatMessage({\n id: 'common.card.invalid.access.message',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.CITIZEN_NOT_FOUND,\n message: intl.formatMessage({\n id: 'citizen.error.notfound.label',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.UKNOWN_ERROR,\n message: intl.formatMessage({\n id: 'error.loading.label',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n ]);\n },\n });\n\n return {\n errorAlert,\n closeAlert,\n isLoading: loading,\n citizenProfile: data?.citizenProfile ?? undefined,\n };\n};\n","import { makeStyles } from '@material-ui/core/styles';\n// import bgImage from '../../assets/images/bg-vakisiny.jpeg';\n\nconst styles = makeStyles((theme) => ({\n root: {\n flexGrow: 1,\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n alignItems: 'center',\n boxSizing: 'border-box',\n marginBottom: theme.spacing(4),\n },\n paper: {\n maxWidth: theme.spacing(116),\n borderRadius: 8,\n boxShadow: '0px 4px 80px rgba(0, 0, 0, 0.08)',\n },\n fullWithPaper: {\n maxWidth: theme.spacing(169),\n },\n content: {\n padding: theme.spacing(5, 3, 5, 5),\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n padding: theme.spacing(3, 1, 3, 3),\n },\n },\n tipsItem: {\n paddingRight: theme.spacing(8),\n },\n form: {\n padding: theme.spacing(0, 0, 0, 0),\n '& .MuiGrid-item': {\n padding: theme.spacing(1, 2, 1, 2),\n },\n },\n formTitle: {\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '24px',\n lineHeight: '24px',\n textAlign: 'center',\n letterSpacing: '0.82px',\n color: theme.colors.text.black02,\n padding: theme.spacing(0, 0, 2, 0),\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n fontWeight: 600,\n fontSize: '18px',\n lineHeight: '24px',\n },\n },\n alertContainer: {\n padding: theme.spacing(2, 0, 0, 0),\n },\n actionButton: {\n minWidth: 'auto',\n marginLeft: 'auto',\n width: theme.spacing(21),\n margin: 0,\n [theme.breakpoints.down(theme.screenbreakpoint.tablet)]: {\n marginTop: theme.spacing(2),\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n width: '100%',\n },\n },\n titleContainer: {\n color: theme.palette.secondary.main,\n marginBottom: 18,\n },\n signLink: {\n textDecoration: 'none',\n },\n requiredHint: {\n flexGrow: 1,\n color: theme.colors.text.lightPurple,\n },\n actionButtonWrapper: {\n [theme.breakpoints.down(theme.screenbreakpoint.tablet)]: {\n flexDirection: 'column-reverse',\n },\n },\n}));\n\nexport default styles;\n","import { makeStyles, fade } from '@material-ui/core/styles';\n\nexport const useStyles = makeStyles((theme) => ({\n inputLabelRoot: {\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 400,\n fontSize: '16px',\n lineHeight: '24px',\n letterSpacing: '-0.18px',\n color: theme.colors.text.black02,\n [theme.breakpoints.down(theme.screenbreakpoint.large + 1)]: {\n fontSize: '14px',\n lineHeight: '22px',\n },\n },\n textFieldroot: {\n padding: theme.spacing(0),\n margin: theme.spacing(1, 0, 2, 0),\n '& .MuiOutlinedInput-root': {\n backgroundColor: theme.colors.background.input,\n },\n '& .MuiOutlinedInput-root.Mui-error': {\n backgroundColor: fade(theme.palette.error.main, 0.1),\n },\n '& .MuiOutlinedInput-adornedEnd': {\n paddingRight: theme.spacing(1),\n },\n\n [theme.breakpoints.down(theme.screenbreakpoint.large + 1)]: {\n margin: theme.spacing(1, 0, 1, 0),\n '& .MuiOutlinedInput-root': {\n padding: '4px 8px',\n },\n '& .MuiOutlinedInput-input': {\n padding: '8px 14px',\n },\n '& .MuiAutocomplete-input': {\n padding: '8px 14px !important',\n },\n },\n },\n}));\n","import TextInputField from './TextInputField';\n\nexport default TextInputField;\n","import React, { FC } from 'react';\nimport { InputLabel, TextField, TextFieldProps, Box } from '@material-ui/core';\nimport { useStyles } from './styles';\n\ntype ITextInputFieldProps = Omit & {\n id?: string;\n};\n\nconst TextInputField: FC = ({\n label,\n ...otherProps\n}): React.ReactElement => {\n const classes = useStyles();\n return (\n \n \n {label}\n \n \n \n );\n};\n\nexport default TextInputField;\n","import RealAutoCompleteField from './RealAutoCompleteField';\n\nexport default RealAutoCompleteField;\n","import Autocomplete from '@material-ui/lab/Autocomplete';\nimport React from 'react';\nimport { useIntl } from 'react-intl';\nimport TextInputField from '../../TextInputField';\nimport { IAutoCompleteFieldProps } from '../AutoCompleteField';\n\nexport default function RealAutoCompleteField({\n id,\n getItemKey,\n getItemLabel,\n items,\n onSelectionChange,\n defaultValue,\n required = false,\n multiline = false,\n disabled = false,\n freeSolo = false,\n label,\n placeholder,\n name,\n error,\n helperText,\n onBlur,\n textFieldProps = {},\n}: IAutoCompleteFieldProps): React.ReactElement {\n const intl = useIntl();\n const [autoCompleteValue, setAutoCompleteValue] =\n React.useState(null);\n const [inputValue, setInputValue] = React.useState('');\n\n const getOptionLabel = (option: T): string => {\n if (getItemLabel) return getItemLabel?.(option);\n else return String(option);\n };\n\n const getOptionKey = (option: T | null): string => {\n if (getItemKey) return getItemKey?.(option);\n else return String(option);\n };\n\n const getDefaultValue = (itemKey?: string | null) => {\n if (items && items.length > 0) {\n const defaultSelectedOption = items.find(\n (itm) => getOptionKey(itm) === itemKey,\n );\n if (defaultSelectedOption) {\n return defaultSelectedOption;\n }\n }\n if (freeSolo) return itemKey;\n return null;\n };\n\n return (\n {\n return getOptionKey(option) === getOptionKey(currentValue);\n }}\n value={getDefaultValue(defaultValue) ?? autoCompleteValue}\n onChange={(event, newValue) => {\n setAutoCompleteValue(newValue ?? null);\n if (typeof newValue !== 'string') {\n onSelectionChange?.(getOptionKey(newValue));\n } else {\n onSelectionChange?.((newValue as string) ?? '');\n }\n }}\n inputValue={inputValue}\n onInputChange={(event, newInputValue) => {\n setInputValue(newInputValue);\n }}\n renderInput={(params) => (\n \n )}\n />\n );\n}\n","import AutoCompleteField from './AutoCompleteField';\n\nexport default AutoCompleteField;\n","import React from 'react';\nimport { TextFieldProps } from '@material-ui/core';\nimport TextInputField from '../TextInputField';\nimport RealAutoCompleteField from './RealAutoCompleteField';\n\nexport interface IAutoCompleteFieldProps {\n id?: string;\n label?: string;\n name?: string;\n placeholder?: string;\n required?: boolean;\n disabled?: boolean;\n multiline?: boolean;\n freeSolo?: boolean;\n items: T[];\n onSelectionChange?: (itemKey?: string) => void;\n getItemLabel?: (item?: T | null) => string;\n getItemKey?: (item?: T | null) => string;\n onBlur?: (event: React.FocusEvent) => void;\n defaultValue?: string;\n isLoading?: boolean;\n error?: boolean;\n helperText?: React.ReactNode;\n textFieldProps?: TextFieldProps;\n}\n\nexport default function AutoCompleteField(\n props: IAutoCompleteFieldProps,\n): React.ReactElement {\n const {\n items,\n onSelectionChange,\n required = false,\n multiline = false,\n disabled = false,\n label,\n placeholder,\n name,\n error,\n helperText,\n onBlur,\n defaultValue,\n textFieldProps = {},\n } = props;\n\n if (!items.length) {\n return (\n {\n onSelectionChange?.(event.target.value);\n }}\n {...textFieldProps}\n />\n );\n }\n\n return ;\n}\n","import DateInputField from './DateInputField';\n\nexport default DateInputField;\n","import React, { FC } from 'react';\nimport { InputLabel, Box } from '@material-ui/core';\nimport {\n KeyboardDatePicker,\n KeyboardDatePickerProps,\n} from '@material-ui/pickers/DatePicker/DatePicker';\nimport { useIntl } from 'react-intl';\nimport { useStyles } from '../TextInputField/styles';\n\ntype IDateInputFieldProps = Omit<\n KeyboardDatePickerProps,\n | 'variant'\n | 'color'\n | 'inputVariant'\n | 'disableToolbar'\n | 'disableFuture'\n | 'KeyboardButtonProps'\n | 'invalidDateMessage'\n>;\n\nconst DateInputField: FC = ({\n label,\n ...otherProps\n}): React.ReactElement => {\n const classes = useStyles();\n const intl = useIntl();\n return (\n \n \n {label}\n \n \n \n );\n};\n\nexport default DateInputField;\n","import { gql } from '@apollo/client';\n\nexport const REGION_INFO_FRAGMENT = gql`\n fragment RegionInfoFragment on Region {\n id\n name\n provinceId\n }\n`;\n\nexport const DISTRICT_INFO_FRAGMENT = gql`\n fragment DistrictInfoFragment on District {\n id\n name\n region {\n ...RegionInfoFragment\n }\n }\n ${REGION_INFO_FRAGMENT}\n`;\n\nexport const MUNICIPALITY_INFO_FRAGMENT = gql`\n fragment MunicipalityInfoFragment on Municipality {\n id\n name\n district {\n ...DistrictInfoFragment\n }\n }\n ${DISTRICT_INFO_FRAGMENT}\n`;\n\nexport const FOKONTANY_INFO_FRAGMENT = gql`\n fragment FokontanyInfoFragment on Fokontany {\n id\n name\n boroughId\n }\n`;\n\nexport const ADDRESS_INFO_FRAGMENT = gql`\n fragment AddressInfoFragment on Address {\n id\n name\n fokontanyId\n }\n`;\n","import { gql } from '@apollo/client';\nimport {\n MUNICIPALITY_INFO_FRAGMENT,\n ADDRESS_INFO_FRAGMENT,\n FOKONTANY_INFO_FRAGMENT,\n REGION_INFO_FRAGMENT,\n DISTRICT_INFO_FRAGMENT,\n} from './fragment';\n\nexport const GET_ALL_REGION = gql`\n query GetAllRegion {\n regions {\n ...RegionInfoFragment\n }\n }\n ${REGION_INFO_FRAGMENT}\n`;\n\nexport const GET_ALL_DISTRICT = gql`\n query GetAllDistrict {\n districts {\n ...DistrictInfoFragment\n }\n }\n ${DISTRICT_INFO_FRAGMENT}\n`;\n\nexport const GET_DISTRICTS_BY_REGION = gql`\n query GetDistrictsByRegion($regionId: ID!) {\n districtsByRegion(regionId: $regionId) {\n ...DistrictInfoFragment\n }\n }\n ${DISTRICT_INFO_FRAGMENT}\n`;\n\nexport const GET_ALL_MUNICIPALITY = gql`\n query GetAllMunicipality {\n municipalities {\n ...MunicipalityInfoFragment\n }\n }\n ${MUNICIPALITY_INFO_FRAGMENT}\n`;\n\nexport const GET_MUNICIPALITIES_BY_DISTRICT = gql`\n query GetMunicipalitiesByDistrict($districtId: ID!) {\n municipalities(districtId: $districtId) {\n ...MunicipalityInfoFragment\n }\n }\n ${MUNICIPALITY_INFO_FRAGMENT}\n`;\n\nexport const GET_FOKONTANIES_BY_MUNICIPALITY = gql`\n query GetFokontaniesByMunicipality($municipalityId: ID!) {\n fokontaniesByMunicipality(municipalityId: $municipalityId) {\n ...FokontanyInfoFragment\n }\n }\n ${FOKONTANY_INFO_FRAGMENT}\n`;\n\nexport const GET_ALL_ADDRESS = gql`\n query GetAllAddress($fokontanyId: ID!) {\n addresses(fokontanyId: $fokontanyId) {\n ...AddressInfoFragment\n }\n }\n ${ADDRESS_INFO_FRAGMENT}\n`;\n","import { useQuery } from '@apollo/client';\nimport { useIntl } from 'react-intl';\nimport { ApolloErrorCode } from '../../../consts';\nimport { useErrorHanlder } from '../../../modules/hooks';\n\nimport { GET_ALL_MUNICIPALITY } from '../query';\nimport {\n GetAllMunicipality,\n GetAllMunicipality_municipalities,\n} from '../types/GetAllMunicipality';\n\nexport const useAllMunicipality = (\n skip?: boolean,\n): {\n isLoading: boolean;\n municipalities: GetAllMunicipality_municipalities[];\n} => {\n // Error handler\n const handleError = useErrorHanlder();\n\n // Intl\n const intl = useIntl();\n\n // Graphql query\n const { data, loading } = useQuery(GET_ALL_MUNICIPALITY, {\n skip: skip,\n onError: (error) => {\n handleError(error, [\n {\n code: ApolloErrorCode.UKNOWN_ERROR,\n message: intl.formatMessage({\n id: 'error.loading.label',\n }),\n },\n ]);\n },\n fetchPolicy: 'cache-first',\n });\n\n return {\n isLoading: loading,\n municipalities: data?.municipalities ?? [],\n };\n};\n","import { useQuery } from '@apollo/client';\nimport { useIntl } from 'react-intl';\nimport { ApolloErrorCode } from '../../../consts';\nimport { useErrorHanlder } from '../../../modules/hooks';\n\nimport { GET_ALL_ADDRESS } from '../query';\nimport {\n GetAllAddress,\n GetAllAddressVariables,\n GetAllAddress_addresses,\n} from '../types/GetAllAddress';\n\nexport const useAllAddress = (\n fokontanyId?: string | null,\n skip?: boolean,\n): {\n isLoading: boolean;\n addresses: GetAllAddress_addresses[];\n} => {\n // Error handler\n const handleError = useErrorHanlder();\n\n // Intl\n const intl = useIntl();\n\n // Graphql query\n const { data, loading } = useQuery(\n GET_ALL_ADDRESS,\n {\n variables: { fokontanyId: fokontanyId ?? '' },\n skip: !fokontanyId || skip,\n onError: (error) => {\n handleError(error, [\n {\n code: ApolloErrorCode.UKNOWN_ERROR,\n message: intl.formatMessage({\n id: 'error.loading.label',\n }),\n },\n ]);\n },\n fetchPolicy: 'cache-first',\n },\n );\n\n return {\n isLoading: loading,\n addresses: data?.addresses ?? [],\n };\n};\n","import { useQuery } from '@apollo/client';\nimport { useIntl } from 'react-intl';\nimport { ApolloErrorCode } from '../../../consts';\nimport { useErrorHanlder } from '../../../modules/hooks';\n\nimport { GET_FOKONTANIES_BY_MUNICIPALITY } from '../query';\nimport {\n GetFokontaniesByMunicipality,\n GetFokontaniesByMunicipalityVariables,\n GetFokontaniesByMunicipality_fokontaniesByMunicipality,\n} from '../types/GetFokontaniesByMunicipality';\n\nexport const useFokontaniesByMunicipality = (\n municipalityId?: string | null,\n skip?: boolean,\n): {\n isLoading: boolean;\n fokontanies: GetFokontaniesByMunicipality_fokontaniesByMunicipality[];\n} => {\n // Error handler\n const handleError = useErrorHanlder();\n\n // Intl\n const intl = useIntl();\n\n // Graphql query\n const { data, loading } = useQuery<\n GetFokontaniesByMunicipality,\n GetFokontaniesByMunicipalityVariables\n >(GET_FOKONTANIES_BY_MUNICIPALITY, {\n variables: { municipalityId: municipalityId ?? '' },\n skip: !municipalityId || skip,\n onError: (error) => {\n handleError(error, [\n {\n code: ApolloErrorCode.UKNOWN_ERROR,\n message: intl.formatMessage({\n id: 'error.loading.label',\n }),\n },\n ]);\n },\n fetchPolicy: 'cache-first',\n });\n\n return {\n isLoading: loading,\n fokontanies: data?.fokontaniesByMunicipality ?? [],\n };\n};\n","import { makeStyles, fade } from '@material-ui/core/styles';\n\nexport const useStyles = makeStyles((theme) => ({\n inputLabelRoot: {\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 400,\n fontSize: '16px',\n lineHeight: '24px',\n letterSpacing: '-0.18px',\n color: theme.colors.text.black02,\n [theme.breakpoints.down(theme.screenbreakpoint.large + 1)]: {\n fontSize: '14px',\n lineHeight: '22px',\n },\n },\n optionLabel: {\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '18px',\n lineHeight: '24px',\n letterSpacing: '-0.18px',\n color: theme.colors.text.black02,\n width: 'fit-content',\n [theme.breakpoints.down(theme.screenbreakpoint.large + 1)]: {\n fontSize: '16px',\n lineHeight: '22px',\n },\n },\n}));\n","import RadioInputField from './RadioInputField';\n\nexport default RadioInputField;\n","import React from 'react';\nimport InputLabel from '@material-ui/core/InputLabel';\nimport Box from '@material-ui/core/Box';\nimport RadioGroup, { RadioGroupProps } from '@material-ui/core/RadioGroup';\nimport FormControlLabel from '@material-ui/core/FormControlLabel';\nimport Radio from '@material-ui/core/Radio';\nimport FormHelperText from '@material-ui/core/FormHelperText';\nimport { useStyles } from './styles';\n\ntype IRadioInputFieldProps = RadioGroupProps & {\n id?: string;\n label: string;\n required?: boolean;\n disabled?: boolean;\n options: T[];\n getOptionLabel: (item: T) => string;\n getOptionKey: (item: T) => string;\n error?: boolean;\n helperText?: React.ReactNode;\n};\n\nexport default function RadioInputField({\n label,\n required = false,\n disabled = false,\n error = false,\n helperText,\n options,\n getOptionKey,\n getOptionLabel,\n ...otherProps\n}: IRadioInputFieldProps): React.ReactElement {\n const classes = useStyles();\n return (\n \n \n {label}\n \n \n {options.map((optionItem: T) => (\n }\n label={getOptionLabel(optionItem)}\n disabled={disabled}\n classes={{ label: classes.optionLabel }}\n />\n ))}\n \n {helperText && (\n {helperText}\n )}\n \n );\n}\n","import { makeStyles } from '@material-ui/core/styles';\n\nconst styles = makeStyles((theme) => ({\n popupActionButton: {\n width: '100%',\n marginTop: theme.spacing(4),\n },\n}));\n\nexport default styles;\n","import { makeStyles } from '@material-ui/core/styles';\n\nconst styles = makeStyles((theme) => ({\n modal: {\n fontSize: '12px',\n backgroundColor: '#fff',\n borderRadius: '5px',\n display: 'flex',\n padding: theme.spacing(5),\n },\n title: {\n fontSize: '25px',\n fontWeight: 800,\n color: theme.colors.text.tipsPrimaryTitle,\n marginBottom: '20px',\n float: 'left',\n },\n subTitle: {\n fontStyle: 'italic',\n },\n button: {\n margin: 'auto',\n },\n buttonClose: {\n margin: 'auto',\n backgroundColor: theme.button.secondary,\n color: theme.colors.text.white,\n borderRadius: 5,\n marginTop: '-11px',\n padding: theme.spacing(1.5),\n float: 'right',\n cursor: 'pointer',\n },\n notice: {\n fontSize: '12px',\n },\n close: {\n cursor: 'pointer',\n position: 'absolute',\n padding: '1px 9px 5px',\n right: '-10px',\n top: '-10px',\n fontSize: '20px',\n background: '#f4364c',\n borderRadius: '18px',\n textDecoration: 'none',\n color: '#fff',\n fontWeight: 800,\n },\n}));\n\nexport default styles;\n","import CitizenFokontanySearch from './CitizenFokontanySearch';\n\nexport default CitizenFokontanySearch;\n","import React, { FC, useState } from 'react';\nimport Grid from '@material-ui/core/Grid';\nimport { FormattedMessage, useIntl } from 'react-intl';\nimport useStyles from './styles';\nimport AutoCompleteField from '../../../components/inputfields/AutoCompleteField';\nimport ActionButton from '../../../components/button/ActionButton';\nimport { useFormik } from '../formik';\nimport {\n useFokontaniesByMunicipality,\n useDistrictsByRegion,\n useMunicipalitesByDistrict,\n} from '../../../graphql/localization/hooks';\nimport { GetAllRegion_regions } from '../../../graphql/localization/types/GetAllRegion';\nimport Typography from '@material-ui/core/Typography';\nimport CloseIcon from '@material-ui/icons/Close';\n\ninterface ICitizenFokontanySearchProps {\n isLoading?: boolean;\n regions: Array;\n stateChange: any;\n formik: ReturnType;\n}\n\nconst CitizenFokontanySearch: FC = ({\n isLoading: isParentFormLoading,\n regions,\n stateChange,\n formik,\n}) => {\n const intl = useIntl();\n const [currentRegion, setCurrentRegion] = useState(regions[0].id);\n const [currentDistrict, setCurrentDistrict] = useState();\n const [currentMunicipality, setCurrentMunicipality] =\n useState();\n const [currentFokontany, setCurrentFokontany] =\n useState();\n const classes = useStyles();\n\n const { districts, isLoading: isLoadingDistrict } = useDistrictsByRegion(\n currentRegion,\n !regions.length,\n );\n\n const { municipalities, isLoading: isLoadingMunicipality } =\n useMunicipalitesByDistrict(currentDistrict, !districts.length);\n\n const { fokontanies, isLoading: isLoadingFokontany } =\n useFokontaniesByMunicipality(currentMunicipality, !municipalities.length);\n\n const handleValidFokontany = () => {\n formik.handleChange('municipalityId')(currentMunicipality ?? '');\n formik.handleChange('fokontanyId')(currentFokontany ?? '');\n stateChange(false);\n };\n\n const isLoading =\n isParentFormLoading ||\n isLoadingDistrict ||\n isLoadingMunicipality ||\n isLoadingFokontany;\n\n return (\n \n \n \n \n \n stateChange(false)}\n className={classes.buttonClose}\n />\n \n \n `${item?.id ?? ''}`}\n getItemLabel={(item) => `${item?.name}`}\n onSelectionChange={(selectedVal) => {\n setCurrentRegion(selectedVal ?? '');\n }}\n />\n \n \n `${item?.id ?? ''}`}\n getItemLabel={(item) => `${item?.name}`}\n onSelectionChange={(selectedVal) => {\n setCurrentDistrict(selectedVal ?? '');\n }}\n />\n \n \n `${item?.id ?? ''}`}\n getItemLabel={(item) => `${item?.name}`}\n onSelectionChange={(selectedVal) => {\n setCurrentMunicipality(selectedVal ?? '');\n }}\n />\n \n \n `${item?.id ?? ''}`}\n getItemLabel={(item) => `${item?.name}`}\n onSelectionChange={(selectedVal) => {\n setCurrentFokontany(selectedVal ?? '');\n }}\n />\n \n \n handleValidFokontany()}\n className={classes.button}\n >\n {intl.formatMessage({\n id: 'citizen.search.fokontany.button.label',\n })}\n \n \n \n );\n};\n\nexport default CitizenFokontanySearch;\n","import { useQuery } from '@apollo/client';\nimport { useIntl } from 'react-intl';\nimport { ApolloErrorCode } from '../../../consts';\nimport { useErrorHanlder } from '../../../modules/hooks';\n\nimport { GET_DISTRICTS_BY_REGION } from '../query';\nimport {\n GetDistrictsByRegion,\n GetDistrictsByRegionVariables,\n GetDistrictsByRegion_districtsByRegion,\n GetDistrictsByRegion_districtsByRegion_region,\n} from '../types/GetDistrictsByRegion';\n\nexport const useDistrictsByRegion = (\n regionId?: string | null,\n skip?: boolean,\n): {\n isLoading: boolean;\n districts: GetDistrictsByRegion_districtsByRegion[];\n} => {\n // Error handler\n const handleError = useErrorHanlder();\n\n // Intl\n const intl = useIntl();\n\n // Graphql query\n const { data, loading } = useQuery<\n GetDistrictsByRegion,\n GetDistrictsByRegionVariables\n >(GET_DISTRICTS_BY_REGION, {\n variables: { regionId: regionId ?? '' },\n skip: !regionId || skip,\n onError: (error) => {\n handleError(error, [\n {\n code: ApolloErrorCode.UKNOWN_ERROR,\n message: intl.formatMessage({\n id: 'error.loading.label',\n }),\n },\n ]);\n },\n fetchPolicy: 'cache-first',\n });\n\n return {\n isLoading: loading,\n districts: data?.districtsByRegion ?? [],\n };\n};\n","import { useQuery } from '@apollo/client';\nimport { useIntl } from 'react-intl';\nimport { ApolloErrorCode } from '../../../consts';\nimport { useErrorHanlder } from '../../../modules/hooks';\n\nimport { GET_MUNICIPALITIES_BY_DISTRICT } from '../query';\nimport {\n GetMunicipalitiesByDistrict,\n GetMunicipalitiesByDistrictVariables,\n GetMunicipalitiesByDistrict_municipalities,\n} from '../types/GetMunicipalitiesByDistrict';\n\nexport const useMunicipalitesByDistrict = (\n districtId?: string | null,\n skip?: boolean,\n): {\n isLoading: boolean;\n municipalities: GetMunicipalitiesByDistrict_municipalities[];\n} => {\n // Error handler\n const handleError = useErrorHanlder();\n\n // Intl\n const intl = useIntl();\n\n // Graphql query\n const { data, loading } = useQuery<\n GetMunicipalitiesByDistrict,\n GetMunicipalitiesByDistrictVariables\n >(GET_MUNICIPALITIES_BY_DISTRICT, {\n variables: { districtId: districtId ?? '' },\n skip: !districtId || skip,\n onError: (error) => {\n handleError(error, [\n {\n code: ApolloErrorCode.UKNOWN_ERROR,\n message: intl.formatMessage({\n id: 'error.loading.label',\n }),\n },\n ]);\n },\n fetchPolicy: 'cache-first',\n });\n\n return {\n isLoading: loading,\n municipalities: data?.municipalities ?? [],\n };\n};\n","import CitizenInfoForm from './CitizenInfoForm';\n\nexport default CitizenInfoForm;\n","import React, { FC, useState } from 'react';\nimport Grid from '@material-ui/core/Grid';\nimport { FormattedMessage, useIntl } from 'react-intl';\nimport InputAdornment from '@material-ui/core/InputAdornment';\nimport PhoneIcon from '@material-ui/icons/Phone';\nimport EmailIcon from '@material-ui/icons/AlternateEmail';\nimport FingerprintIcon from '@material-ui/icons/Fingerprint';\nimport TodayIcon from '@material-ui/icons/Today';\nimport InputMask from 'react-input-mask';\nimport { sub } from 'date-fns';\nimport Popup from 'reactjs-popup';\n\nimport { EnumGender } from '../../../types';\nimport AutoCompleteField from '../../../components/inputfields/AutoCompleteField';\nimport DateInputField from '../../../components/inputfields/DateInputField';\nimport TextInputField from '../../../components/inputfields/TextInputField';\nimport {\n useAllAddress,\n useAllMunicipality,\n useAllRegion,\n useFokontaniesByMunicipality,\n} from '../../../graphql/localization/hooks';\nimport RadioInputField from '../../../components/inputfields/RadioInputField';\nimport { useFormik } from '../formik';\nimport useStyles from './styles';\nimport ActionButton from '../../../components/button/ActionButton';\nimport CitizenFokontanySearch from '../CitizenFokontanySearch';\nimport SearchIcon from '@material-ui/icons/Search';\n\ninterface ICitizenInfoFormProps {\n isLoading?: boolean;\n formik: ReturnType;\n}\n\nconst CitizenInfoForm: FC = ({\n isLoading: isParentFormLoading,\n formik,\n}) => {\n const intl = useIntl();\n const classes = useStyles();\n\n const { regions, isLoading: isLoadingRegion } = useAllRegion();\n\n const { municipalities, isLoading: isLoadingMunicipality } =\n useAllMunicipality();\n\n const { fokontanies, isLoading: isLoadingFokontany } =\n useFokontaniesByMunicipality(\n formik.values.municipalityId,\n !municipalities.length,\n );\n\n const { addresses, isLoading: isLoadingAddress } = useAllAddress(\n formik.values.fokontanyId,\n );\n\n const [showPopup, setShowPopup] = useState(false);\n const overlayStyle = { background: 'rgba(0,0,0,0.5)' };\n\n const isLoading =\n isParentFormLoading ||\n isLoadingRegion ||\n isLoadingMunicipality ||\n isLoadingFokontany ||\n isLoadingAddress;\n\n return (\n <>\n \n \n \n \n \n \n \n \n formik.setFieldValue('birthDate', newBirthDate)\n }\n onBlur={formik.handleBlur}\n error={formik.touched.birthDate && Boolean(formik.errors.birthDate)}\n helperText={formik.touched.birthDate && formik.errors.birthDate}\n disabled={isLoading}\n inputProps={{\n maxLength: 12,\n }}\n fullWidth\n required\n maxDate={sub(new Date(), { years: 18 })}\n maxDateMessage={intl.formatMessage({\n id: 'error.birth.date.max.label',\n })}\n onError={(_errorElem, dateVal) => {\n String(_errorElem) &&\n formik.setErrors({\n birthDate: String(_errorElem) || undefined,\n });\n }}\n InputProps={{\n startAdornment: (\n \n \n \n ),\n }}\n />\n \n \n \n formik.handleChange('gender')(newValue)\n }\n options={[\n {\n value: EnumGender.MALE,\n label: intl.formatMessage({\n id: 'userprofile.gender.male.label',\n }),\n },\n {\n value: EnumGender.FEMALE,\n label: intl.formatMessage({\n id: 'userprofile.gender.female.label',\n }),\n },\n ]}\n getOptionKey={(item) => item.value}\n getOptionLabel={(item) => item.label}\n onBlur={formik.handleBlur}\n error={formik.touched.gender && Boolean(formik.errors.gender)}\n helperText={formik.touched.gender && formik.errors.gender}\n disabled={isLoading}\n />\n \n \n \n {(inputProps) => (\n \n \n \n ),\n }}\n />\n )}\n \n \n \n \n \n \n ),\n }}\n />\n \n \n \n {(inputProps) => (\n \n \n \n ),\n }}\n />\n )}\n \n \n \n `${item?.id ?? ''}`}\n getItemLabel={(item) => `${item?.district?.name} / ${item?.name}`}\n onSelectionChange={(selectedVal) => {\n formik.handleChange('municipalityId')(selectedVal ?? '');\n }}\n onBlur={formik.handleBlur}\n error={\n formik.touched.municipalityId &&\n Boolean(formik.errors.municipalityId)\n }\n helperText={\n formik.touched.municipalityId && formik.errors.municipalityId\n }\n />\n \n \n setShowPopup(true)}\n >\n \n \n \n \n \n `${item?.id ?? ''}`}\n getItemLabel={(item) => `${item?.name}`}\n onSelectionChange={(selectedVal) => {\n formik.handleChange('fokontanyId')(selectedVal ?? '');\n }}\n onBlur={formik.handleBlur}\n error={\n formik.touched.fokontanyId && Boolean(formik.errors.fokontanyId)\n }\n helperText={formik.touched.fokontanyId && formik.errors.fokontanyId}\n />\n \n \n adrItem.name))]}\n label={intl.formatMessage({\n id: 'citizen.address.label',\n })}\n getItemKey={(item) => item ?? ''}\n getItemLabel={(item) => item ?? ''}\n onSelectionChange={(selectedVal) => {\n formik.handleChange('addressName')(selectedVal ?? '');\n }}\n onBlur={formik.handleBlur}\n error={formik.touched.addressId && Boolean(formik.errors.addressId)}\n helperText={formik.touched.addressId && formik.errors.addressId}\n />\n \n setShowPopup(false)}\n overlayStyle={overlayStyle}\n closeOnDocumentClick={false}\n >\n \n \n \n );\n};\n\nexport default CitizenInfoForm;\n","import { useQuery } from '@apollo/client';\nimport { useIntl } from 'react-intl';\nimport { ApolloErrorCode } from '../../../consts';\nimport { useErrorHanlder } from '../../../modules/hooks';\n\nimport { GET_ALL_REGION } from '../query';\nimport { GetAllRegion, GetAllRegion_regions } from '../types/GetAllRegion';\n\nexport const useAllRegion = (\n skip?: boolean,\n): {\n isLoading: boolean;\n regions: GetAllRegion_regions[];\n} => {\n // Error handler\n const handleError = useErrorHanlder();\n\n // Intl\n const intl = useIntl();\n\n // Graphql query\n const { data, loading } = useQuery(GET_ALL_REGION, {\n skip: skip,\n onError: (error) => {\n handleError(error, [\n {\n code: ApolloErrorCode.UKNOWN_ERROR,\n message: intl.formatMessage({\n id: 'error.loading.label',\n }),\n },\n ]);\n },\n fetchPolicy: 'cache-first',\n });\n\n return {\n isLoading: loading,\n regions: data?.regions ?? [],\n };\n};\n","import { gql } from '@apollo/client';\n\nexport const JOB_INFO_FRAGMENT = gql`\n fragment JobInfoFragment on Job {\n id\n code\n name\n nameMg\n other\n }\n`;\n\nexport const EMPLOYERENTITY_INFO_FRAGMENT = gql`\n fragment EmployerEntityInfoFragment on EmployerEntity {\n id\n municipalityId\n name\n }\n`;\n","import { gql } from '@apollo/client';\nimport { EMPLOYERENTITY_INFO_FRAGMENT, JOB_INFO_FRAGMENT } from './fragment';\n\nexport const GET_ALL_JOB = gql`\n query GetAllJob($other: Boolean) {\n jobs(other: $other) {\n ...JobInfoFragment\n }\n }\n ${JOB_INFO_FRAGMENT}\n`;\n\nexport const GET_ALL_EMPLOYERENTITY = gql`\n query GetAllEmployerEntity($municipalityId: ID!) {\n employerEntities(municipalityId: $municipalityId) {\n ...EmployerEntityInfoFragment\n }\n }\n ${EMPLOYERENTITY_INFO_FRAGMENT}\n`;\n","import { useQuery } from '@apollo/client';\nimport { useIntl } from 'react-intl';\nimport { ApolloErrorCode } from '../../../consts';\nimport { useIntlLabel } from '../../../locales';\nimport { useErrorHanlder } from '../../../modules/hooks';\n\nimport { GET_ALL_JOB } from '../query';\nimport {\n GetAllJob,\n GetAllJobVariables,\n GetAllJob_jobs,\n} from '../types/GetAllJob';\n\nexport const useAllJob = (\n other: boolean,\n skip?: boolean,\n): {\n isLoading: boolean;\n jobs: GetAllJob_jobs[];\n refetch: () => void;\n} => {\n // Error handler\n const handleError = useErrorHanlder();\n\n // Intl\n const intl = useIntl();\n const intlLabel = useIntlLabel();\n\n // Graphql query\n const { data, loading, refetch } = useQuery(\n GET_ALL_JOB,\n {\n variables: { other },\n skip: skip,\n onError: (error) => {\n handleError(error, [\n {\n code: ApolloErrorCode.UKNOWN_ERROR,\n message: intl.formatMessage({\n id: 'error.loading.label',\n }),\n },\n ]);\n },\n },\n );\n\n return {\n isLoading: loading,\n jobs:\n data?.jobs?.map?.((jobItem) => ({\n ...jobItem,\n name: intlLabel(jobItem, 'name'),\n })) ?? [],\n refetch,\n };\n};\n","import { useQuery } from '@apollo/client';\nimport { useIntl } from 'react-intl';\nimport { ApolloErrorCode } from '../../../consts';\nimport { useErrorHanlder } from '../../../modules/hooks';\n\nimport { GET_ALL_EMPLOYERENTITY } from '../query';\nimport {\n GetAllEmployerEntity,\n GetAllEmployerEntityVariables,\n GetAllEmployerEntity_employerEntities,\n} from '../types/GetAllEmployerEntity';\n\nexport const useAllEmployerEntity = (\n municipalityId?: string | null,\n skip?: boolean,\n): {\n isLoading: boolean;\n employerEntities: GetAllEmployerEntity_employerEntities[];\n} => {\n // Error handler\n const handleError = useErrorHanlder();\n\n // Intl\n const intl = useIntl();\n\n // Graphql query\n const { data, loading } = useQuery<\n GetAllEmployerEntity,\n GetAllEmployerEntityVariables\n >(GET_ALL_EMPLOYERENTITY, {\n variables: { municipalityId: municipalityId ?? '' },\n skip: !municipalityId || skip,\n onError: (error) => {\n handleError(error, [\n {\n code: ApolloErrorCode.UKNOWN_ERROR,\n message: intl.formatMessage({\n id: 'error.loading.label',\n }),\n },\n ]);\n },\n });\n\n return {\n isLoading: loading,\n employerEntities: data?.employerEntities ?? [],\n };\n};\n","import CitizenJobForm from './CitizenJobForm';\n\nexport default CitizenJobForm;\n","import React, { FC } from 'react';\nimport Grid from '@material-ui/core/Grid';\nimport { useIntl } from 'react-intl';\nimport AutoCompleteField from '../../../components/inputfields/AutoCompleteField';\nimport TextInputField from '../../../components/inputfields/TextInputField';\nimport { useAllEmployerEntity, useAllJob } from '../../../graphql/job/hooks';\nimport { useFormik } from '../formik';\nimport { OTHER_JOB_ID } from '../../../consts';\n\ninterface ICitizenJobFormProps {\n isLoading?: boolean;\n formik: ReturnType;\n}\n\nconst CitizenJobForm: FC = ({\n isLoading: isParentFormLoading,\n formik,\n}) => {\n const intl = useIntl();\n\n const { jobs, isLoading: isLoadingJob } = useAllJob(false);\n\n const { jobs: otherJobs, isLoading: isLoadingOtherJob } = useAllJob(\n true,\n !jobs.length,\n );\n\n const { employerEntities, isLoading: isLoadingEmployerEntity } =\n useAllEmployerEntity(formik.values.municipalityId, !jobs.length);\n\n const isLoading =\n isParentFormLoading ||\n isLoadingJob ||\n isLoadingEmployerEntity ||\n isLoadingOtherJob;\n\n return (\n <>\n \n employerItm.name)}\n label={intl.formatMessage({\n id: 'citizen.job.employer.label',\n })}\n placeholder={intl.formatMessage({\n id: 'citizen.job.employer.placeholder.label',\n })}\n getItemKey={(item) => item ?? ''}\n getItemLabel={(item) => item ?? ''}\n onSelectionChange={(selectedVal) => {\n formik.handleChange('employerName')(selectedVal ?? '');\n }}\n />\n \n \n `${item?.id}`}\n getItemLabel={(item) => `${item?.name}`}\n onSelectionChange={(selectedVal) => {\n formik.handleChange('jobId')(selectedVal ?? '');\n }}\n onBlur={formik.handleBlur}\n error={formik.touched.jobId && Boolean(formik.errors.jobId)}\n helperText={formik.touched.jobId && formik.errors.jobId}\n />\n \n \n \n \n \n \n \n \n \n \n {OTHER_JOB_ID === formik.values.jobId && (\n \n jobItm.name)}\n label={intl.formatMessage({\n id: 'citizen.job.category.other.label',\n })}\n placeholder={intl.formatMessage({\n id: 'citizen.job.category.other.placeholder.label',\n })}\n getItemKey={(item) => item ?? ''}\n getItemLabel={(item) => item ?? ''}\n onSelectionChange={(selectedVal) => {\n formik.handleChange('jobName')(selectedVal ?? '');\n }}\n />\n \n )}\n \n );\n};\n\nexport default CitizenJobForm;\n","import { gql } from '@apollo/client';\n\nexport const COMORBIDITY_INFO_FRAGMENT = gql`\n fragment ComorbidityInfoFragment on Comorbidity {\n id\n name\n nameMg\n other\n }\n`;\n\nexport const HEALTHCENTER_INFO_FRAGMENT = gql`\n fragment HealthCenterInfoFragment on HealthCenter {\n id\n municipalityId\n name\n }\n`;\n","import { gql } from '@apollo/client';\nimport {\n COMORBIDITY_INFO_FRAGMENT,\n HEALTHCENTER_INFO_FRAGMENT,\n} from './fragment';\n\nexport const GET_ALL_COMORBIDITY = gql`\n query GetAllComorbidity($other: Boolean) {\n comorbidities(other: $other) {\n ...ComorbidityInfoFragment\n }\n }\n ${COMORBIDITY_INFO_FRAGMENT}\n`;\n\nexport const GET_ALL_HEALTHCENTER = gql`\n query GetAllHealthCenter($municipalityId: ID!) {\n healthCenters(municipalityId: $municipalityId) {\n ...HealthCenterInfoFragment\n }\n }\n ${HEALTHCENTER_INFO_FRAGMENT}\n`;\n","import { useQuery } from '@apollo/client';\nimport { useIntl } from 'react-intl';\nimport { ApolloErrorCode } from '../../../consts';\nimport { useIntlLabel } from '../../../locales';\nimport { useErrorHanlder } from '../../../modules/hooks';\n\nimport { GET_ALL_COMORBIDITY } from '../query';\nimport {\n GetAllComorbidity,\n GetAllComorbidity_comorbidities,\n} from '../types/GetAllComorbidity';\n\nexport const useAllComorbidity = (\n other: boolean,\n skip?: boolean,\n): {\n isLoading: boolean;\n comorbidities: GetAllComorbidity_comorbidities[];\n refetch: () => void;\n} => {\n // Error handler\n const handleError = useErrorHanlder();\n\n // Intl\n const intl = useIntl();\n const intlLabel = useIntlLabel();\n\n // Graphql query\n const { data, loading, refetch } = useQuery(\n GET_ALL_COMORBIDITY,\n {\n variables: { other },\n skip: skip,\n onError: (error) => {\n handleError(error, [\n {\n code: ApolloErrorCode.UKNOWN_ERROR,\n message: intl.formatMessage({\n id: 'error.loading.label',\n }),\n },\n ]);\n },\n fetchPolicy: 'cache-first',\n },\n );\n\n return {\n isLoading: loading,\n comorbidities:\n data?.comorbidities?.map?.((comorbidityItem) => ({\n ...comorbidityItem,\n name: intlLabel(comorbidityItem, 'name'),\n })) ?? [],\n refetch,\n };\n};\n","import { useQuery } from '@apollo/client';\nimport { useIntl } from 'react-intl';\nimport { ApolloErrorCode } from '../../../consts';\nimport { useErrorHanlder } from '../../../modules/hooks';\n\nimport { GET_ALL_HEALTHCENTER } from '../query';\nimport {\n GetAllHealthCenter,\n GetAllHealthCenterVariables,\n GetAllHealthCenter_healthCenters,\n} from '../types/GetAllHealthCenter';\n\nexport const useAllHealthCenter = (\n municipalityId?: string | null,\n skip?: boolean,\n): {\n isLoading: boolean;\n healthCenters: GetAllHealthCenter_healthCenters[];\n} => {\n // Error handler\n const handleError = useErrorHanlder();\n\n // Intl\n const intl = useIntl();\n\n // Graphql query\n const { data, loading } = useQuery<\n GetAllHealthCenter,\n GetAllHealthCenterVariables\n >(GET_ALL_HEALTHCENTER, {\n variables: { municipalityId: municipalityId ?? '' },\n skip: !municipalityId || skip,\n onError: (error) => {\n handleError(error, [\n {\n code: ApolloErrorCode.UKNOWN_ERROR,\n message: intl.formatMessage({\n id: 'error.loading.label',\n }),\n },\n ]);\n },\n fetchPolicy: 'cache-first',\n });\n\n return {\n isLoading: loading,\n healthCenters: data?.healthCenters ?? [],\n };\n};\n","import { gql } from '@apollo/client';\n\nexport const VACCINE_META_INFO_FRAGMENT = gql`\n fragment VaccineMetaInfoFragment on VaccineMetadata {\n id\n name\n uid\n }\n`;\n","import { gql } from '@apollo/client';\nimport { VACCINE_META_INFO_FRAGMENT } from './fragment';\n\nexport const GET_ALL_VACCINE_META = gql`\n query GetAllVaccineMeta {\n vaccines {\n ...VaccineMetaInfoFragment\n }\n }\n ${VACCINE_META_INFO_FRAGMENT}\n`;\n","import { useQuery } from '@apollo/client';\nimport { useIntl } from 'react-intl';\nimport { ApolloErrorCode } from '../../../consts';\nimport { useErrorHanlder } from '../../../modules/hooks';\n\nimport { GET_ALL_VACCINE_META } from '../query';\nimport {\n GetAllVaccineMeta_vaccines,\n GetAllVaccineMeta,\n} from '../types/GetAllVaccineMeta';\n\nexport const useAllVaccineMeta = (): {\n isLoading: boolean;\n vaccines: GetAllVaccineMeta_vaccines[];\n refetch: () => void;\n} => {\n // Error handler\n const handleError = useErrorHanlder();\n\n // Intl\n const intl = useIntl();\n\n // Graphql query\n const { data, loading, refetch } = useQuery(\n GET_ALL_VACCINE_META,\n {\n onError: (error) => {\n handleError(error, [\n {\n code: ApolloErrorCode.UKNOWN_ERROR,\n message: intl.formatMessage({\n id: 'error.loading.label',\n }),\n },\n ]);\n },\n },\n );\n\n return {\n isLoading: loading,\n vaccines: data?.vaccines ?? [],\n refetch,\n };\n};\n","import CitizenHealthForm from './CitizenHealthForm';\n\nexport default CitizenHealthForm;\n","import React, { FC } from 'react';\nimport Grid from '@material-ui/core/Grid';\nimport { useIntl } from 'react-intl';\nimport InputAdornment from '@material-ui/core/InputAdornment';\nimport LocalHospitalIcon from '@material-ui/icons/LocalHospital';\nimport AutoCompleteField from '../../../components/inputfields/AutoCompleteField';\nimport { useFormik } from '../formik';\nimport {\n useAllComorbidity,\n useAllHealthCenter,\n} from '../../../graphql/health/hooks';\nimport { useAllVaccineMeta } from '../../../graphql/vaccine_meta/hooks';\nimport RadioInputField from '../../../components/inputfields/RadioInputField';\nimport {\n OTHER_COMORBIDITY_ID,\n OTHER_DEFAULT_COMORBIDITY_ID,\n} from '../../../consts';\n\ninterface ICitizenHealthFormProps {\n isLoading?: boolean;\n formik: ReturnType;\n}\n\nconst CitizenHealthForm: FC = ({\n isLoading: isParentFormLoading,\n formik,\n}) => {\n const intl = useIntl();\n\n const { comorbidities, isLoading: isLoadingComorbidity } =\n useAllComorbidity(false);\n\n const { vaccines, isLoading: isLoadingVaccines } = useAllVaccineMeta();\n\n const { healthCenters, isLoading: isLoadingHealthCenter } =\n useAllHealthCenter(formik.values.municipalityId);\n const {\n comorbidities: otherComorbidities,\n isLoading: isLoadingOtherComorbidity,\n } = useAllComorbidity(true, !comorbidities.length);\n\n const isLoading =\n isParentFormLoading ||\n isLoadingComorbidity ||\n isLoadingHealthCenter ||\n isLoadingOtherComorbidity ||\n isLoadingVaccines;\n\n return (\n <>\n \n \n formik.handleChange('comorbidityId')(newValue)\n }\n options={comorbidities}\n getOptionKey={(item) => item.id}\n getOptionLabel={(item) => item.name}\n error={Boolean(formik.errors.comorbidityId)}\n helperText={formik.errors.comorbidityId}\n />\n \n {OTHER_COMORBIDITY_ID === formik.values.comorbidityId && (\n \n comorbidityItm.name,\n )}\n label={intl.formatMessage({\n id: 'citizen.comorbidity.category.other.label',\n })}\n placeholder={intl.formatMessage({\n id: 'citizen.comorbidity.category.other.placeholder.label',\n })}\n getItemKey={(item) => item ?? ''}\n getItemLabel={(item) => item ?? ''}\n onSelectionChange={(selectedVal) => {\n formik.handleChange('comorbidityName')(selectedVal ?? '');\n }}\n />\n \n )}\n \n `${item?.id}`}\n getItemLabel={(item) => `${item?.name ?? ''}`}\n onSelectionChange={(selectedVal) => {\n formik.handleChange('healthCenterId')(selectedVal ?? '');\n }}\n onBlur={formik.handleBlur}\n error={\n formik.touched.healthCenterId &&\n Boolean(formik.errors.healthCenterId)\n }\n helperText={\n formik.touched.healthCenterId && formik.errors.healthCenterId\n }\n textFieldProps={{\n InputProps: {\n startAdornment: (\n \n \n \n ),\n },\n }}\n />\n \n \n `${item?.id}`}\n getItemLabel={(item) => `${item?.name ?? ''}`}\n onSelectionChange={(selectedVal) => {\n formik.handleChange('desiredVaccineId')(selectedVal ?? '');\n }}\n onBlur={formik.handleBlur}\n error={\n formik.touched.desiredVaccineId &&\n Boolean(formik.errors.desiredVaccineId)\n }\n helperText={\n formik.touched.desiredVaccineId && formik.errors.desiredVaccineId\n }\n textFieldProps={{\n InputProps: {\n startAdornment: (\n \n \n \n ),\n },\n }}\n />\n \n \n );\n};\n\nexport default CitizenHealthForm;\n","import { makeStyles } from '@material-ui/core/styles';\n// import bgImage from '../../assets/images/bg-vakisiny.jpeg';\n\nconst styles = makeStyles((theme) => ({\n root: {\n padding: theme.spacing(7, 16),\n [theme.breakpoints.down(theme.screenbreakpoint.tablet)]: {\n padding: theme.spacing(3, 8),\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n padding: theme.spacing(3, 4),\n },\n },\n title: {\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '24px',\n lineHeight: '24px',\n textAlign: 'center',\n letterSpacing: '0.82px',\n color: theme.colors.text.black02,\n marginBottom: theme.spacing(10),\n [theme.breakpoints.down(theme.screenbreakpoint.tablet)]: {\n marginBottom: theme.spacing(7),\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n marginBottom: theme.spacing(3),\n },\n },\n centent: {\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '18px',\n lineHeight: '24px',\n letterSpacing: '-0.18px',\n wordBreak: 'keep-all',\n color: theme.colors.text.black,\n },\n}));\n\nexport default styles;\n","import RegistrationAckPaper from './RegistrationAckPaper';\n\nexport default RegistrationAckPaper;\n","import React, { FC } from 'react';\nimport { useIntl } from 'react-intl';\nimport Typography from '@material-ui/core/Typography';\nimport Box from '@material-ui/core/Box';\nimport useStyles from './styles';\n\nconst RegistrationAckPaper: FC = () => {\n const intl = useIntl();\n const classes = useStyles();\n\n return (\n \n \n {intl.formatMessage({\n id: 'registration.ack.title.label',\n })}\n \n \n \n );\n};\n\nexport default RegistrationAckPaper;\n","import React, { FC, useCallback, useEffect, useState } from 'react';\nimport Grid from '@material-ui/core/Grid';\nimport Box from '@material-ui/core/Box';\nimport Typography from '@material-ui/core/Typography';\nimport { FormattedMessage, useIntl } from 'react-intl';\nimport Paper from '@material-ui/core/Paper';\nimport { Alert } from '@material-ui/lab';\nimport { Link } from 'react-router-dom';\nimport clsx from 'clsx';\n\nimport { DEFAULT_SIGNIN_ROUTE, RegistrationStep } from '../../consts';\nimport { CreateCitizenInput, EnumGender } from '../../types';\nimport ActionButton from '../../components/button/ActionButton';\nimport { usePageMetaContext } from '../../modules/PageMetaProvider';\nimport PageContainer from '../../components/page/PageContainer';\nimport { useCitizenSubscribeMutation } from '../../graphql/citizen/hooks';\nimport useStyles from './styles';\nimport { useFormik, SubscriptionFieldError } from './formik';\nimport CitizenInfoForm from './CitizenInfoForm';\nimport CitizenJobForm from './CitizenJobForm';\nimport CitizenHealthForm from './CitizenHealthForm';\nimport RegistrationAckPaper from './RegistrationAckPaper';\n\nconst REGISTRATION_STEPS = [\n RegistrationStep.REGISTRATION_PERSONAL_INFO,\n RegistrationStep.REGISTRATION_JOB_INFO,\n RegistrationStep.REGISTRATION_HEALTH_INFO,\n];\n\nconst Registration: FC = () => {\n const intl = useIntl();\n const [currentStep, setCurrentStep] = useState(\n RegistrationStep.REGISTRATION_PERSONAL_INFO,\n );\n // Page context handler\n const { setPathLabels } = usePageMetaContext();\n const classes = useStyles();\n\n // Update page context\n useEffect(() => {\n setPathLabels([\n intl.formatMessage({\n id: 'register.title.label',\n }),\n ]);\n }, []);\n\n // Of formik as form state handler\n const formik = useFormik({\n initialValues: {\n gender: EnumGender.MALE,\n birthDate: null,\n appointmentDate: null,\n desiredVaccineId: null,\n },\n onSubmit: async (values, helper) => {\n createCitizenMutation(values as CreateCitizenInput);\n },\n });\n\n // Check if the current rendered form is valid\n const isCurrentFormValid = (theErrors: SubscriptionFieldError) => {\n switch (currentStep) {\n case RegistrationStep.REGISTRATION_PERSONAL_INFO:\n if (\n theErrors.lastName ||\n theErrors.phoneNumber ||\n theErrors.gender ||\n theErrors.birthDate ||\n theErrors.cniNum ||\n theErrors.municipalityId ||\n theErrors.fokontanyId ||\n theErrors.addressName\n )\n return false;\n break;\n case RegistrationStep.REGISTRATION_JOB_INFO:\n if (theErrors.jobId) return false;\n break;\n case RegistrationStep.REGISTRATION_HEALTH_INFO:\n if (theErrors.lastName || theErrors.phoneNumber || theErrors.gender)\n return false;\n break;\n\n default:\n return true;\n }\n return true;\n };\n\n // Hanle next form navigation\n const handleNavigateNext = () => {\n formik.validateForm().then((theError) => {\n if (isCurrentFormValid(theError)) {\n const currentStepIndex = REGISTRATION_STEPS.indexOf(currentStep);\n if (\n currentStepIndex > -1 &&\n currentStepIndex < REGISTRATION_STEPS.length - 1\n ) {\n setCurrentStep(REGISTRATION_STEPS[currentStepIndex + 1]);\n }\n }\n });\n };\n\n // Handle previous form navigation\n const handleNavigatePrevious = () => {\n const currentStepIndex = REGISTRATION_STEPS.indexOf(currentStep);\n if (currentStepIndex > 0) {\n setCurrentStep(REGISTRATION_STEPS[currentStepIndex - 1]);\n }\n };\n\n const {\n createCitizenLoading,\n createCitizenMutation,\n closeAlert: createCloseAlert,\n successAlert: createSuccessAlert,\n errorAlert: createErrorAlert,\n } = useCitizenSubscribeMutation({\n onSuccess: () => {\n setCurrentStep(RegistrationStep.REGISTRATION_ACK_INFO);\n },\n });\n\n const isLoading = createCitizenLoading;\n const successAlert = createSuccessAlert;\n const errorAlert = createErrorAlert;\n const closeAlert = createCloseAlert;\n const hasNextStep =\n REGISTRATION_STEPS.indexOf(currentStep) < REGISTRATION_STEPS.length - 1;\n const hasPrevousStep = REGISTRATION_STEPS.indexOf(currentStep) > 0;\n\n // Render the form title of the current step\n const renderRegistrationStepName = useCallback(() => {\n switch (currentStep) {\n case RegistrationStep.REGISTRATION_PERSONAL_INFO:\n return ;\n case RegistrationStep.REGISTRATION_JOB_INFO:\n return ;\n case RegistrationStep.REGISTRATION_HEALTH_INFO:\n return ;\n\n default:\n return null;\n }\n }, [currentStep]);\n\n // Render the fields of the current step\n const renderRegistrationForm = useCallback(() => {\n switch (currentStep) {\n case RegistrationStep.REGISTRATION_PERSONAL_INFO:\n return ;\n case RegistrationStep.REGISTRATION_JOB_INFO:\n return ;\n case RegistrationStep.REGISTRATION_HEALTH_INFO:\n return ;\n\n default:\n return null;\n }\n }, [currentStep, isLoading, formik]);\n\n return (\n \n \n \n {currentStep === RegistrationStep.REGISTRATION_ACK_INFO ? (\n \n ) : (\n \n \n {renderRegistrationStepName()}\n \n \n \n \n {(successAlert || errorAlert) && (\n \n closeAlert()}\n >\n {successAlert ? successAlert : errorAlert}\n \n \n )}\n \n \n \n {renderRegistrationForm()}\n \n \n \n \n \n \n \n \n {!hasPrevousStep && (\n \n \n \n \n \n \n \n )}\n {hasPrevousStep && (\n \n \n \n \n \n )}\n {hasNextStep && (\n \n \n \n \n \n )}\n {!hasNextStep && (\n \n \n \n \n \n )}\n \n \n \n \n \n )}\n \n \n \n );\n};\n\nexport default Registration;\n","import Registration from './Registration';\n\nexport default Registration;\n","import {\n FormikErrors,\n FormikHelpers,\n useFormik as useBaseFormik,\n} from 'formik';\nimport * as yup from 'yup';\nimport { useIntl } from 'react-intl';\nimport { CreateCitizenInput } from '../../types';\nimport { OTHER_COMORBIDITY_ID } from '../../consts';\n\ntype CitizenSubscriptionField = Partial;\nexport type SubscriptionFieldError = FormikErrors;\n\ninterface Config {\n initialValues: CitizenSubscriptionField;\n onSubmit: (\n values: CitizenSubscriptionField,\n formikHelpers: FormikHelpers,\n ) => void;\n}\n\nexport const useFormik = (config: Config) => {\n const intl = useIntl();\n\n const validationSchema = yup.object({\n lastName: yup\n .string()\n .min(\n 2,\n intl.formatMessage({\n id: 'error.helper.required',\n }),\n )\n .required(\n intl.formatMessage({\n id: 'error.helper.required',\n }),\n ),\n phoneNumber: yup\n .string()\n .required(\n intl.formatMessage({\n id: 'error.helper.required',\n }),\n )\n .matches(\n /^0[0-9]{2}\\s?[0-9]{2}\\s?[0-9]{3}\\s?[0-9]{2}$/,\n intl.formatMessage({\n id: 'common.editor.phonenumber.invalid.message',\n }),\n ),\n email: yup.string().email(\n intl.formatMessage({\n id: 'common.editor.email.invalid.message',\n }),\n ),\n gender: yup.string().required(\n intl.formatMessage({\n id: 'error.helper.required',\n }),\n ),\n municipalityId: yup.string().required(\n intl.formatMessage({\n id: 'error.helper.required',\n }),\n ),\n fokontanyId: yup.string().required(\n intl.formatMessage({\n id: 'error.helper.required',\n }),\n ),\n\n jobId: yup.string().required(\n intl.formatMessage({\n id: 'error.helper.required',\n }),\n ),\n cnapsId: yup.string().matches(\n /^[\\w]*$/,\n intl.formatMessage({\n id: 'common.editor.cnapsid.invalid.message',\n }),\n ),\n\n healthCenterId: yup.string().required(\n intl.formatMessage({\n id: 'error.helper.required',\n }),\n ),\n });\n\n const formik = useBaseFormik({\n validationSchema: validationSchema,\n validateOnChange: true,\n validate: (values: CitizenSubscriptionField) => {\n const errors: FormikErrors = {};\n\n if (\n !values.addressName ||\n (values.addressName && values.addressName.trim().length === 0)\n ) {\n errors.addressName = intl.formatMessage({\n id: 'error.helper.required',\n });\n }\n\n if (!values.birthDate) {\n errors.birthDate = intl.formatMessage({\n id: 'error.helper.required',\n });\n }\n\n if (!values.cniNum) {\n errors.cniNum = intl.formatMessage({\n id: 'error.helper.required',\n });\n }\n\n if (values.birthDate && values.birthDate.toString() === 'Invalid Date') {\n errors.birthDate = intl.formatMessage({\n id: 'common.editor.date.invalid.message',\n });\n }\n\n if (!values.healthCenterId) {\n errors.healthCenterId = intl.formatMessage({\n id: 'error.helper.required',\n });\n }\n\n if (\n OTHER_COMORBIDITY_ID == values.comorbidityId &&\n !values.comorbidityName\n ) {\n errors.comorbidityName = intl.formatMessage({\n id: 'error.helper.required',\n });\n }\n\n if (values.cniNum && values.cniNum.includes('_')) {\n errors.cniNum = intl.formatMessage({\n id: 'common.editor.cniNum.invalid.message',\n });\n }\n\n return errors;\n },\n ...config,\n });\n\n return formik;\n};\n","import React from 'react';\nimport { FetchResult, useMutation } from '@apollo/client';\nimport { useSnackbar } from 'notistack';\nimport { useIntl } from 'react-intl';\nimport { format } from 'date-fns';\nimport { useErrorHanlder } from '../../../modules/hooks';\nimport { ApolloErrorCode } from '../../../consts';\nimport { CreateCitizenInput } from '../../../types/index';\nimport { CITIZEN_SUBSCRIBE } from '../mutation';\nimport {\n CitizenSubscribeMutation,\n CitizenSubscribeMutationVariables,\n} from '../types/CitizenSubscribeMutation';\n\nexport const useCitizenSubscribeMutation = (\n options?: IMutationOptions,\n): {\n createCitizenMutation: (\n createInput: CreateCitizenInput,\n ) => Promise>;\n createCitizenLoading: boolean;\n successAlert?: string | null;\n errorAlert?: string | null;\n closeAlert: () => void;\n} => {\n const intl = useIntl();\n const { enqueueSnackbar } = useSnackbar();\n const handleError = useErrorHanlder();\n const [successAlert, setSuccessAlert] = React.useState();\n const [errorAlert, setErrorAlert] = React.useState();\n\n const closeAlert = () => {\n setErrorAlert(null);\n setSuccessAlert(null);\n };\n\n const [mutate, { loading: createCitizenLoading }] = useMutation<\n CitizenSubscribeMutation,\n CitizenSubscribeMutationVariables\n >(CITIZEN_SUBSCRIBE, {\n onCompleted: (data) => {\n if (data?.selfSubscribeCitizen?.citizen) {\n enqueueSnackbar(\n intl.formatMessage({\n id: 'citizen.success.create.message',\n }),\n {\n variant: 'success',\n anchorOrigin: { horizontal: 'center', vertical: 'top' },\n },\n );\n setSuccessAlert(\n intl.formatMessage({\n id: 'citizen.success.create.message',\n }),\n );\n options?.onSuccess?.();\n }\n },\n onError: (error) => {\n handleError(error, [\n {\n code: ApolloErrorCode.CITIZEN_EXISTS,\n message: intl.formatMessage({\n id: 'citizen.error.exists.message',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.UKNOWN_ERROR,\n message: intl.formatMessage({\n id: 'citizen.error.create.unknown.message',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.CITIZEN_CREATION_FAILED,\n message: intl.formatMessage({\n id: 'citizen.error.create.failed.message',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.INVALID_PHONE_NUMBER,\n message: intl.formatMessage({\n id: 'common.editor.phonenumber.invalid.message',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.INVALID_EMAIL_ADDRESS,\n message: intl.formatMessage({\n id: 'common.editor.email.not.trusted.message',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.NON_AUTHORIZED_OPERATION,\n message: intl.formatMessage({\n id: 'error.message.forbidden',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.HEALTH_REGISTRATION_FAILED,\n message: intl.formatMessage({\n id: 'citizen.error.health.message',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.JOB_REGISTRATION_FAILED,\n message: intl.formatMessage({\n id: 'citizen.error.job.message',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.ADDRESS_REGISTRATION_FAILED,\n message: intl.formatMessage({\n id: 'citizen.error.address.message',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.PCR_TEST_NOT_ACCEPTED,\n message: intl.formatMessage({\n id: 'registration.test.positive.not.allowed.message',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n ]);\n },\n });\n\n const createCitizenMutation = (\n createInput: CreateCitizenInput,\n ): Promise> => {\n closeAlert();\n return mutate({\n variables: {\n input: {\n firstName: createInput.firstName?.trim?.(),\n lastName: createInput.lastName?.toUpperCase?.()?.trim?.(),\n gender: createInput.gender,\n email: createInput.email,\n phoneNumber: createInput.phoneNumber,\n\n birthDate: format(new Date(createInput.birthDate), 'yyyy-MM-dd'),\n cniNum: createInput.cniNum,\n\n comorbidityId: createInput.comorbidityId,\n comorbidityName: createInput.comorbidityName,\n healthCenterId: createInput.healthCenterId,\n lastPcrTest: createInput.lastPcrTest,\n desiredVaccineId: createInput.desiredVaccineId,\n\n districtId: createInput.districtId,\n municipalityId: createInput.municipalityId,\n fokontanyId: createInput.fokontanyId,\n addressName: createInput.addressName,\n\n jobId: createInput.jobId,\n jobName: createInput.jobName,\n offRegNum: createInput.offRegNum,\n profRegNum: createInput.profRegNum,\n cnapsId: createInput.cnapsId,\n employerName: createInput.employerName,\n covaxPriority: 1,\n\n appointmentDate: format(new Date(), 'yyyy-MM-dd'),\n },\n },\n });\n };\n\n return {\n successAlert,\n errorAlert,\n closeAlert,\n createCitizenMutation,\n createCitizenLoading,\n };\n};\n","import ConfirmButton from './ConfirmButton';\n\nexport default ConfirmButton;\n","import React, { FC } from 'react';\nimport ActionButton from '../ActionButton';\nimport { IProps as ActionButtonProps } from '../ActionButton/ActionButton';\n\nconst ConfirmButton: FC = ({\n children,\n color = 'primary',\n ...otherProps\n}) => {children};\n\nexport default ConfirmButton;\n","import { gql } from '@apollo/client';\n\nexport const USER_SIGN_IN = gql`\n mutation SignIn($username: String!, $password: String!) {\n healthProfileSignIn(username: $username, password: $password) {\n accessToken\n refreshToken\n certAccessKey\n }\n }\n`;\n\nexport const USER_UPDATE_PASSWORD = gql`\n mutation UpdatePassword($oldPassword: String!, $newPassword: String!) {\n updatePassword(oldPassword: $oldPassword, newPassword: $newPassword) {\n response {\n success\n message\n }\n }\n }\n`;\n\n// Trigger password reset (In case of forgotten password)\nexport const USER_FORGOT_PASSWORD = gql`\n mutation HealthProfileForgotPassword($username: String!) {\n healthProfileForgotPassword(username: $username) {\n emailAddress\n resetToken\n }\n }\n`;\n\n// Reset the password\nexport const USER_RESET_PASSWORD = gql`\n mutation HealthProfileResetPassword(\n $newPassword: String!\n $confirmPassword: String!\n $resetToken: String!\n ) {\n healthProfileResetPassword(\n newPassword: $newPassword\n confirmPassword: $confirmPassword\n resetToken: $resetToken\n ) {\n response {\n success\n message\n }\n }\n }\n`;\n","import { useEffect } from 'react';\nimport { useQuery } from '@apollo/client';\nimport { useAuthContext } from '../../../modules/AuthProvider';\nimport { MY_PROFILE } from '../query';\nimport { MyProfile, MyProfile_myProfile } from '../types/MyProfile';\n\nexport const useMyProfile = (): {\n isLoading: boolean;\n currentProfile?: MyProfile_myProfile;\n} => {\n const { setCurrentUser } = useAuthContext();\n\n const { data, loading } = useQuery(MY_PROFILE, {\n fetchPolicy: 'network-only',\n });\n\n useEffect(() => {\n setCurrentUser(data?.myProfile ?? undefined);\n }, [data, setCurrentUser]);\n\n return {\n isLoading: loading,\n currentProfile: data?.myProfile ?? undefined,\n };\n};\n","import React from 'react';\nimport { useMutation, FetchResult } from '@apollo/client';\nimport { useSnackbar } from 'notistack';\nimport { useIntl } from 'react-intl';\n\nimport { useErrorHanlder } from '../../../modules/hooks';\nimport { ApolloErrorCode } from '../../../consts';\nimport { USER_FORGOT_PASSWORD } from '../mutation';\nimport {\n HealthProfileForgotPassword,\n HealthProfileForgotPasswordVariables,\n HealthProfileForgotPassword_healthProfileForgotPassword,\n} from '../types/HealthProfileForgotPassword';\n\nexport const useForgotPassword = (\n options?: IMutationOptions,\n): {\n forgotPasswordMutation: (\n username: string,\n ) => Promise>;\n forgotPasswordLoading: boolean;\n errorAlert?: string | null;\n closeAlert: () => void;\n} => {\n const intl = useIntl();\n const { enqueueSnackbar } = useSnackbar();\n const handleError = useErrorHanlder();\n\n const [errorAlert, setErrorAlert] = React.useState();\n\n const closeAlert = () => {\n setErrorAlert(null);\n };\n\n const [mutate, { loading: forgotPasswordLoading }] = useMutation<\n HealthProfileForgotPassword,\n HealthProfileForgotPasswordVariables\n >(USER_FORGOT_PASSWORD, {\n onCompleted: (data) => {\n if (data?.healthProfileForgotPassword?.resetToken) {\n enqueueSnackbar(\n intl.formatMessage({\n id: 'forgotpassword.ack.title.label',\n }),\n {\n variant: 'success',\n anchorOrigin: { horizontal: 'center', vertical: 'top' },\n },\n );\n options?.onSuccess?.(data.healthProfileForgotPassword);\n }\n },\n onError: (error) => {\n handleError(error, [\n {\n code: ApolloErrorCode.INVALID_CREDENTIAL,\n message: intl.formatMessage({\n id: 'forgotpassword.login.invalid.message',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.INVALID_EMAIL_ADDRESS,\n message: intl.formatMessage({\n id: 'forgotpassword.email.not.trusted.message',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.UKNOWN_ERROR,\n message: intl.formatMessage({\n id: 'error.message.unknow',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n ]);\n },\n });\n\n const forgotPasswordMutation = (\n username: string,\n ): Promise> => {\n return mutate({\n variables: { username },\n });\n };\n\n return {\n forgotPasswordMutation,\n forgotPasswordLoading,\n errorAlert,\n closeAlert,\n };\n};\n","import { makeStyles } from '@material-ui/core/styles';\nimport GovBrandPatternImage from '../../../assets/images/gov-mg-brand-original-pattern.png';\n\nconst MAX_LARGE_TIPS_WIDTH = 1600;\n\nexport const useStyles = makeStyles((theme) => ({\n root: {\n flexGrow: 1,\n display: 'flex',\n flexDirection: 'column',\n padding: theme.spacing(3, 0, 3, 0),\n // background: `url(${GovBrandPatternImage}) no-repeat calc(100% + 271px) center / 542px 521px`,\n [theme.breakpoints.down(theme.screenbreakpoint.large + 1)]: {\n padding: theme.spacing(2, 0, 2, 0),\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n paddingTop: theme.spacing(5),\n },\n },\n tips: {\n marginTop: theme.spacing(5),\n marginLeft: theme.spacing(25),\n display: 'flex',\n flexDirection: 'row',\n flexWrap: 'wrap',\n justifyContent: 'flex-start',\n [theme.breakpoints.down(theme.screenbreakpoint.xlarge + 1)]: {\n marginTop: theme.spacing(4),\n marginLeft: theme.spacing(0),\n },\n [theme.breakpoints.down(theme.screenbreakpoint.large + 1)]: {\n marginTop: theme.spacing(4),\n marginLeft: theme.spacing(0),\n },\n },\n hintMessage: {\n flexBasis: '100%',\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 500,\n fontSize: '16px',\n lineHeight: '24px',\n letterSpacing: '0.82px',\n color: theme.colors.text.black,\n marginBottom: theme.spacing(4),\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone + 134)]: {\n textAlign: 'center',\n },\n },\n hideOnSmartphone: {\n display: 'block',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone + 134)]: {\n display: 'none',\n },\n },\n hideOnTablet: {\n display: 'block',\n [theme.breakpoints.down(theme.screenbreakpoint.tablet + 340)]: {\n display: 'none',\n },\n },\n hideOnLargeScreen: {\n display: 'block',\n [theme.breakpoints.up(theme.screenbreakpoint.tablet + 340)]: {\n display: 'none',\n },\n },\n}));\n","export default __webpack_public_path__ + \"static/media/person-tips-oldman.ae344e12.svg\";","import { makeStyles } from '@material-ui/core/styles';\nexport const useStyles = makeStyles((theme) => ({\n root: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n [theme.breakpoints.down(theme.screenbreakpoint.tablet + 340)]: {\n marginBottom: theme.spacing(7),\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone + 134)]: {\n flexDirection: 'column',\n },\n },\n tipsHintImage: {\n height: theme.spacing(22),\n width: theme.spacing(23),\n },\n titleWrapper: {\n marginLeft: theme.spacing(2),\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n marginLeft: theme.spacing(4),\n },\n },\n primaryTitle: {\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 'bold',\n fontSize: '19px',\n lineHeight: '23px',\n letterSpacing: '4px',\n color: theme.colors.text.tipsPrimaryTitle,\n marginBottom: theme.spacing(2),\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone + 134)]: {\n textAlign: 'center',\n marginTop: theme.spacing(2),\n },\n },\n secondaryTitle: {\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '33px',\n lineHeight: '37px',\n color: theme.colors.text.tipsSecondaryTitle,\n [theme.breakpoints.down(theme.screenbreakpoint.large + 1)]: {\n fontSize: '28px',\n lineHeight: '35px',\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n fontSize: '24px',\n lineHeight: '32px',\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone + 134)]: {\n textAlign: 'center',\n },\n },\n}));\n","import TipsHeadline from './TipsHeadline';\n\nexport default TipsHeadline;\n","import React, { FC } from 'react';\nimport { Typography, Box } from '@material-ui/core';\nimport OldPersonImage from '../../../../assets/images/person-tips-oldman.svg';\nimport { useStyles } from './styles';\n\nexport interface IProps {\n primaryTitle: string;\n secondaryTitle: string;\n className?: string;\n}\n\nconst TipsHeadline: FC = ({\n primaryTitle,\n secondaryTitle,\n className,\n}) => {\n const classes = useStyles();\n return (\n \n \n \n \n \n \n \n {primaryTitle}\n \n \n \n \n \n );\n};\n\nexport default TipsHeadline;\n","import TipsContainer from './TipsContainer';\n\nexport default TipsContainer;\n","import React, { FC } from 'react';\nimport Box from '@material-ui/core/Box';\nimport Typography from '@material-ui/core/Typography';\nimport classnames from 'classnames';\nimport { useStyles } from './styles';\nimport TipsHeadline from './TipsHeadline';\n\nexport interface IProps {\n primaryTitle: string;\n secondaryTitle: string;\n hintMessage?: string;\n children?: React.ReactNode;\n hideOnTablet?: boolean;\n hideOnSmartphone?: boolean;\n hideOnLargeScreen?: boolean;\n hideTipsOnTablet?: boolean;\n hideTipsOnSmartphone?: boolean;\n hideTipsOnLargeScreen?: boolean;\n hideHealinesOnTablet?: boolean;\n hideHealinesOnSmartphone?: boolean;\n hideHealinesOnLargeScreen?: boolean;\n hideTips?: boolean;\n}\n\nconst TipsContainer: FC = ({\n primaryTitle,\n secondaryTitle,\n hintMessage,\n children,\n hideOnTablet = false,\n hideOnSmartphone = false,\n hideOnLargeScreen = false,\n hideTipsOnTablet = false,\n hideTipsOnSmartphone = false,\n hideTipsOnLargeScreen = false,\n hideHealinesOnTablet = false,\n hideHealinesOnSmartphone = false,\n hideHealinesOnLargeScreen = false,\n hideTips = false,\n}) => {\n const classes = useStyles();\n return (\n \n \n {!hideTips && (\n \n {hintMessage && (\n \n )}\n {children}\n \n )}\n \n );\n};\n\nexport default TipsContainer;\n","import { makeStyles } from '@material-ui/core/styles';\n\nconst DEFAULT_TIPS_WIDHT = 32;\nconst DEFAULT_TIPS_HEIGHT = 22;\nconst MAX_LG_TIPS_WIDH = 22;\nconst MAX_LG_TIPS_HEIGHT = 14;\n\nconst DEFAULT_CAPTION_WIDHT = 41;\nconst MAX_LG_CAPTION_WIDHT = 36;\n\nconst LG_SCREEN_BREAKPOINT = 1598;\n\nexport const useStyles = makeStyles((theme) => ({\n root: {\n flexBasis: '50%',\n paddingBottom: theme.spacing(4),\n [theme.breakpoints.down(LG_SCREEN_BREAKPOINT)]: {\n paddingBottom: theme.spacing(3),\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone + 134)]: {\n flexBasis: '100%',\n },\n },\n mainWrapper: {\n display: 'flex',\n flexDirection: 'row',\n justifyItems: 'center',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone + 134)]: {\n flexDirection: 'column',\n justifyItems: 'center',\n justifyContent: 'center',\n },\n },\n tipsImageWrapper: {\n marginBottom: 0,\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n },\n tipsImage: {\n maxWidth: theme.spacing(DEFAULT_TIPS_WIDHT),\n maxHeight: theme.spacing(DEFAULT_TIPS_HEIGHT),\n [theme.breakpoints.down(theme.screenbreakpoint.large + 1)]: {\n maxWidth: theme.spacing(MAX_LG_TIPS_WIDH),\n maxHeight: theme.spacing(MAX_LG_TIPS_HEIGHT),\n },\n },\n tipsCaptionWrapper: {\n width: theme.spacing(DEFAULT_CAPTION_WIDHT),\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n [theme.breakpoints.down(theme.screenbreakpoint.large + 1)]: {\n width: theme.spacing(MAX_LG_CAPTION_WIDHT),\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone + 134)]: {\n width: 'auto',\n alignItems: 'center',\n },\n },\n tipsCaption: {\n fontFamily: theme.fonts.default,\n textAlign: 'left',\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '16px',\n lineHeight: '19px',\n letterSpacing: '0.82px',\n color: theme.colors.text.black03,\n wordBreak: 'keep-all',\n padding: theme.spacing(0, 3, 0, 3),\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone + 134)]: {\n marginTop: theme.spacing(2),\n textAlign: 'center',\n maxWidth: theme.spacing(MAX_LG_CAPTION_WIDHT),\n },\n },\n}));\n","import TipsItem from './TipsItem';\n\nexport default TipsItem;\n","import React, { FC } from 'react';\nimport classnames from 'classnames';\nimport { Typography, Box } from '@material-ui/core';\nimport { useStyles } from './styles';\n\nexport interface IProps {\n image: string;\n caption: string;\n className?: string;\n}\n\nconst TipsItem: FC = ({ image, caption, className }) => {\n const classes = useStyles();\n return (\n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default TipsItem;\n","import { makeStyles } from '@material-ui/core/styles';\n\nconst styles = makeStyles((theme) => ({\n mainContainer: {\n [theme.breakpoints.down(theme.screenbreakpoint.large + 1)]: {\n padding: theme.spacing(0, 4, 0, 4),\n },\n [theme.breakpoints.down(theme.screenbreakpoint.tablet + 340)]: {\n flexDirection: 'column-reverse',\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n padding: theme.spacing(0, 1, 0, 1),\n },\n },\n root: {\n flexGrow: 1,\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n alignItems: 'center',\n boxSizing: 'border-box',\n paddingBottom: theme.spacing(3),\n [theme.breakpoints.down(theme.screenbreakpoint.large + 1)]: {\n justifyContent: 'flex-start',\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n marginLeft: theme.spacing(3),\n marginRight: theme.spacing(3),\n },\n },\n paper: {\n width: theme.spacing(50),\n padding: theme.spacing(1, 4, 1, 4),\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n borderRadius: 8,\n boxShadow: '0px 4px 80px rgba(0, 0, 0, 0.08)',\n [theme.breakpoints.down(theme.screenbreakpoint.large + 1)]: {\n width: theme.spacing(48),\n },\n [theme.breakpoints.down(theme.screenbreakpoint.tablet + 1)]: {\n width: '100%',\n },\n },\n container: {\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n marginBottom: theme.spacing(1),\n width: '100%',\n },\n tipsItem: {\n // paddingRight: theme.spacing(14),\n // [theme.breakpoints.down(theme.screenbreakpoint.large + 1)]: {\n // paddingRight: theme.spacing(8),\n // },\n // [theme.breakpoints.down(410)]: {\n // paddingRight: 0,\n // },\n },\n loginCaption: {\n color: theme.colors.text.black02,\n textAlign: 'center',\n padding: theme.spacing(4, 0, 4, 0),\n fontSize: '24px',\n fontWeight: 600,\n fontStyle: 'normal',\n lineHeight: '24px',\n letterSpacing: '-0.18px',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n fontWeight: 500,\n padding: theme.spacing(2, 0),\n },\n },\n divider: {\n margin: theme.spacing(2, 0),\n },\n\n formBox: {\n width: '100%',\n marginTop: theme.spacing(1),\n display: 'flex',\n flexDirection: 'column',\n },\n actionButton: {\n margin: theme.spacing(3, 0, 0),\n [theme.breakpoints.down(theme.screenbreakpoint.large + 1)]: {\n margin: theme.spacing(2, 0, 0),\n },\n },\n infoButton: {\n margin: theme.spacing(3, 0, 0),\n backgroundColor: theme.colors.background.info,\n [theme.breakpoints.down(theme.screenbreakpoint.large + 1)]: {\n margin: theme.spacing(2, 0, 0),\n },\n },\n\n alertContainer: {\n padding: theme.spacing(2, 0, 0, 0),\n },\n forgotPasswordLink: {\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '16px',\n lineHeight: '24px',\n letterSpacing: '-0.18px',\n textDecorationLine: 'underline',\n color: theme.colors.text.black02,\n marginLeft: 'auto',\n marginRight: 'auto',\n padding: theme.spacing(3, 0, 2, 0),\n },\n linkWrappers: {\n display: 'flex',\n flexDirection: 'column',\n flexWrap: 'nowrap',\n padding: theme.spacing(2, 0, 2, 0),\n },\n registerHint: {\n color: theme.colors.text.black02,\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '18px',\n lineHeight: '24px',\n textAlign: 'center',\n letterSpacing: '-0.18px',\n whiteSpace: 'nowrap',\n },\n mainTipsContent: {\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '14px',\n lineHeight: '18px',\n letterSpacing: '-0.18px',\n wordBreak: 'keep-all',\n color: theme.colors.text.black,\n },\n registerLink: {\n textDecoration: 'none',\n },\n}));\n\nexport default styles;\n","export default __webpack_public_path__ + \"static/media/signin-persona-ext-travelers.04b4e31e.svg\";","export default __webpack_public_path__ + \"static/media/signin-persona-health-worker.8178c53d.svg\";","export default __webpack_public_path__ + \"static/media/signin-persona-fair-people.314d704b.svg\";","export default __webpack_public_path__ + \"static/media/signin-persona-gov-security.1e5bd281.svg\";","import TravalersPersonaImage from '../../assets/images/signin-persona-ext-travelers.svg';\nimport HealthWorkerPersonaImage from '../../assets/images/signin-persona-health-worker.svg';\nimport FairPeoplePersonaImage from '../../assets/images/signin-persona-fair-people.svg';\nimport GovSecurityPersonaImage from '../../assets/images/signin-persona-gov-security.svg';\nimport SocialWorkerPersonaImage from '../../assets/images/signin-persona-social-worker.svg';\nimport TeleOperatorImage from '../../assets/images/signin-persona-teleoperator.svg';\n\nexport const PERSONAS_PRIORITY = [\n {\n image: HealthWorkerPersonaImage,\n caption: 'signin.persona.healthworker.label',\n },\n {\n image: SocialWorkerPersonaImage,\n caption: 'signin.persona.socialworker.label',\n },\n {\n image: GovSecurityPersonaImage,\n caption: 'signin.persona.govsecurity.label',\n },\n {\n image: FairPeoplePersonaImage,\n caption: 'signin.persona.frailpeople.label',\n },\n { image: TravalersPersonaImage, caption: 'signin.persona.travelers.label' },\n { image: TeleOperatorImage, caption: 'signin.persona.teleoperator.label' },\n];\n","export default __webpack_public_path__ + \"static/media/signin-persona-social-worker.3c8b5bb0.svg\";","export default __webpack_public_path__ + \"static/media/signin-persona-teleoperator.9939b02b.svg\";","import { makeStyles } from '@material-ui/core/styles';\n\nconst styles = makeStyles((theme) => ({\n modal: {\n fontSize: '12px',\n backgroundColor: '#fff',\n borderRadius: '5px',\n textAlign: 'center',\n display: 'flex',\n boxShadow: '0 0 10px rgba(0, 0, 0, 0.3)',\n },\n content: {\n width: '100%',\n padding: theme.spacing(2),\n fontFamily: theme.fonts.default,\n '& a': {\n textDecoration: 'none',\n color: theme.colors.text.tipsSecondaryTitle,\n },\n },\n title: {\n fontSize: '20px',\n fontWeight: 800,\n color: theme.colors.text.tipsPrimaryTitle,\n marginBottom: '20px',\n },\n subTitle: {\n fontStyle: 'italic',\n },\n button: {\n margin: 'auto',\n },\n buttonClose: {\n margin: 'auto',\n backgroundColor: '#FB4D3D',\n },\n notice: {\n fontSize: '12px',\n },\n close: {\n cursor: 'pointer',\n position: 'absolute',\n padding: '1px 9px 5px',\n right: '-10px',\n top: '-10px',\n fontSize: '20px',\n background: '#f4364c',\n borderRadius: '18px',\n textDecoration: 'none',\n color: '#fff',\n fontWeight: 800,\n },\n}));\n\nexport default styles;\n","import TooltipsCard from './TooltipsCard';\n\nexport default TooltipsCard;\n","import React, { FC } from 'react';\nimport { FormattedMessage, useIntl } from 'react-intl';\nimport useStyles from './styles';\nimport { Grid, Typography } from '@material-ui/core';\nimport ActionButton from '../../../components/button/ActionButton';\nimport { Link } from 'react-router-dom';\n\ninterface ITooltipsCard {\n close?: any;\n isLoading?: boolean;\n}\n\nconst TooltipsCard: FC = ({\n close: close,\n isLoading: isParentFormLoading,\n}) => {\n const intl = useIntl();\n const isLoading = isParentFormLoading;\n const classes = useStyles();\n return (\n <>\n \n ×\n \n \n \n \n \n \n \n \n {intl.formatMessage({\n id: 'tips.card.video.label',\n })}\n \n \n \n \n \n );\n};\n\nexport default TooltipsCard;\n","import SignIn from './SignIn';\n\nexport default SignIn;\n","import React, { FC, useEffect, useState } from 'react';\nimport Paper from '@material-ui/core/Paper';\nimport { useIntl } from 'react-intl';\nimport Typography from '@material-ui/core/Typography';\nimport Divider from '@material-ui/core/Divider';\nimport { Link } from 'react-router-dom';\nimport Box from '@material-ui/core/Box';\nimport Visibility from '@material-ui/icons/Visibility';\nimport LockIcon from '@material-ui/icons/Lock';\nimport AccountCircleIcon from '@material-ui/icons/AccountCircle';\nimport VisibilityOff from '@material-ui/icons/VisibilityOff';\nimport IconButton from '@material-ui/core/IconButton';\nimport InputAdornment from '@material-ui/core/InputAdornment';\nimport { Alert } from '@material-ui/lab';\nimport { usePageMetaContext } from '../../modules/PageMetaProvider';\nimport ConfirmButton from '../../components/button/ConfirmButton';\nimport { useSignIn } from '../../graphql/authentication/hooks';\nimport PageContainer from '../../components/page/PageContainer';\nimport Popup from 'reactjs-popup';\n\nimport {\n DEFAULT_FAQ_ROUTE,\n DEFAULT_FORGOTPASSWORD_ROUTE,\n DEFAULT_REGISTER_ROUTE,\n} from '../../consts';\nimport TipsContainer from '../../components/page/TipsContainer';\nimport TextInputField from '../../components/inputfields/TextInputField';\nimport TipsItem from '../../components/page/TipsContainer/TipsItem';\n\nimport { useFormik } from './formik';\nimport useStyles from './styles';\nimport { PERSONAS_PRIORITY } from './tips';\nimport TooltipsCard from './TooltipsCard';\n\nconst SignIn: FC = () => {\n const classes = useStyles();\n const intl = useIntl();\n const [showPassword, setShowPassword] = useState(false);\n const { signInLoading, signInMutation, closeAlert, errorAlert } = useSignIn();\n const [open, setOpen] = useState(false);\n const [openTooltips, setOpenTooltips] = useState(false);\n\n // Page context handler\n const { setPathLabels } = usePageMetaContext();\n\n // Update page context\n useEffect(() => {\n setPathLabels([\n intl.formatMessage({\n id: 'signin.page.title.label',\n }),\n ]);\n setTimeout(() => setOpen((o) => !o), 2500);\n setOpenTooltips((o) => (open ? o : !o));\n }, []);\n\n const formik = useFormik({\n onSubmit: async (values) => {\n signInMutation(values.username.trim(), values.password.trim());\n },\n });\n\n return (\n \n \n {PERSONAS_PRIORITY.map((personaItem, index) => (\n \n ))}\n \n \n \n \n \n \n {intl.formatMessage({\n id: 'signin.form.hint.label',\n })}\n \n {errorAlert && (\n \n closeAlert()}>\n {errorAlert}\n \n \n )}\n \n \n \n \n ),\n }}\n />\n\n \n \n \n ),\n endAdornment: (\n setShowPassword(!showPassword)}\n >\n \n {showPassword ? : }\n \n \n ),\n }}\n />\n \n {intl.formatMessage({\n id: 'signin.buttom.label',\n })}\n \n \n {intl.formatMessage({\n id: 'signin.forgot.password.label',\n })}\n \n \n \n \n \n {intl.formatMessage({ id: 'register.hint.label' })}\n \n \n \n {intl.formatMessage({\n id: 'register.link.label',\n })}\n \n \n \n \n {intl.formatMessage({\n id: 'signin.faq.label',\n })}\n \n \n \n \n \n \n \n \n \n {PERSONAS_PRIORITY.map((personaItem, index) => (\n \n ))}\n \n \n {(close) => }\n \n \n );\n};\n\nexport default SignIn;\n","import React from 'react';\nimport { FetchResult, useMutation } from '@apollo/client';\nimport { useHistory, useLocation } from 'react-router-dom';\nimport { useSnackbar } from 'notistack';\nimport { useIntl } from 'react-intl';\n\nimport { useAuthContext } from '../../../modules/AuthProvider';\nimport { useErrorHanlder } from '../../../modules/hooks';\nimport { ApolloErrorCode, DEFAULT_HOME_ROUTE } from '../../../consts';\nimport { REACT_APP_HEALTH_PROFILE_URL } from '../../../config';\nimport { USER_SIGN_IN } from '../mutation';\nimport { SignIn, SignInVariables } from '../types/SignIn';\n\nexport const useSignIn = (): {\n signInMutation: (\n currentPassword: string,\n newPassword: string,\n ) => Promise>;\n signInLoading: boolean;\n errorAlert?: string | null;\n closeAlert: () => void;\n} => {\n const intl = useIntl();\n const { enqueueSnackbar } = useSnackbar();\n const handleError = useErrorHanlder();\n const history = useHistory();\n const location = useLocation();\n const urlSearchParams = new URLSearchParams(location.search);\n\n const { signIn, signOut } = useAuthContext();\n\n const [errorAlert, setErrorAlert] = React.useState();\n\n const closeAlert = () => {\n setErrorAlert(null);\n };\n\n const [mutate, { loading: signInLoading }] = useMutation<\n SignIn,\n SignInVariables\n >(USER_SIGN_IN, {\n onCompleted: (data) => {\n if (\n data?.healthProfileSignIn?.accessToken &&\n data?.healthProfileSignIn?.refreshToken\n ) {\n const redirectRoute = urlSearchParams.get('from');\n enqueueSnackbar(\n intl.formatMessage({\n id: 'signin.login.success',\n }),\n {\n variant: 'success',\n anchorOrigin: { horizontal: 'center', vertical: 'top' },\n },\n );\n signIn(data.healthProfileSignIn.accessToken);\n history.push(redirectRoute ?? DEFAULT_HOME_ROUTE);\n } else if (data?.healthProfileSignIn?.certAccessKey) {\n window.location.href =\n REACT_APP_HEALTH_PROFILE_URL +\n '/#/choice-certificate/' +\n data.healthProfileSignIn.certAccessKey;\n }\n },\n onError: (error) => {\n signOut();\n handleError(error, [\n {\n code: ApolloErrorCode.INVALID_CREDENTIAL,\n message: intl.formatMessage({\n id: 'signin.login.error',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.UKNOWN_ERROR,\n message: intl.formatMessage({\n id: 'error.message.unknow',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n ]);\n },\n });\n\n const signInMutation = (\n username: string,\n password: string,\n ): Promise> => {\n return mutate({\n variables: { username, password },\n });\n };\n\n return {\n signInMutation,\n signInLoading,\n errorAlert,\n closeAlert,\n };\n};\n","import { FormikHelpers, useFormik as useBaseFormik } from 'formik';\nimport { useIntl } from 'react-intl';\nimport * as yup from 'yup';\nimport { SignInVariables } from '../../graphql/authentication/types/SignIn';\n\ninterface Config {\n onSubmit: (\n values: SignInVariables,\n formikHelpers: FormikHelpers,\n ) => void;\n}\n\nexport const useFormik = (config: Config) => {\n const intl = useIntl();\n\n const validationSchema = yup.object({\n password: yup\n .string()\n .min(\n 4,\n intl.formatMessage({\n id: 'signin.password.error.min.message',\n }),\n )\n .max(\n 32,\n intl.formatMessage({\n id: 'signin.password.error.max.message',\n }),\n )\n .required(\n intl.formatMessage({\n id: 'signin.password.error.required.message',\n }),\n ),\n username: yup\n .string()\n .min(\n 2,\n intl.formatMessage({\n id: 'signin.login.error.min.message',\n }),\n )\n .max(\n 32,\n intl.formatMessage({\n id: 'signin.login.error.max.message',\n }),\n )\n .required(\n intl.formatMessage({\n id: 'signin.login.error.required.message',\n }),\n ),\n });\n\n const formik = useBaseFormik({\n initialValues: {\n username: '',\n password: '',\n },\n validationSchema: validationSchema,\n ...config,\n });\n\n return formik;\n};\n","import { makeStyles } from '@material-ui/core/styles';\n\nexport const useStyles = makeStyles((theme) => ({\n root: {\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n alignItems: 'center',\n height: '100%',\n },\n label: {\n padding: theme.spacing(2, 0, 0, 0),\n },\n}));\n","import InfiniteLoading from './InfiniteLoading';\n\nexport default InfiniteLoading;\n","import React, { FC } from 'react';\nimport Box from '@material-ui/core/Box';\nimport Typography from '@material-ui/core/Typography';\nimport CircularProgress from '@material-ui/core/CircularProgress';\n\nimport { useStyles } from './styles';\n\nexport interface IProps {\n label?: string;\n}\n\nconst InfiniteLoading: FC = ({ label }) => {\n const classes = useStyles();\n return (\n \n \n {label && {label}}\n \n );\n};\n\nexport default InfiniteLoading;\n","import { makeStyles } from '@material-ui/core/styles';\n\nconst styles = makeStyles((theme) => ({\n root: {\n flexGrow: 1,\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n alignItems: 'center',\n boxSizing: 'border-box',\n marginBottom: theme.spacing(4),\n },\n\n paper: {\n maxWidth: theme.spacing(112),\n borderRadius: 8,\n boxShadow: '0px 4px 80px rgba(0, 0, 0, 0.08)',\n marginTop: theme.spacing(4),\n },\n content: {\n padding: theme.spacing(4),\n justifyContent: 'center',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n padding: theme.spacing(3),\n },\n },\n mainProfile: {\n display: 'flex',\n flexDirection: 'row',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n flexDirection: 'column',\n },\n },\n mainProfilePicture: {\n display: 'flex',\n flexDirection: 'row',\n },\n mainProfileInfo: {\n flexGrow: 1,\n paddingLeft: theme.spacing(5),\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n padding: theme.spacing(3, 0, 0, 0),\n },\n },\n mainProfileName: {\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '36px',\n lineHeight: '45px',\n color: theme.colors.text.black02,\n paddingBottom: theme.spacing(2),\n },\n mainProfileAttr: {\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '18px',\n lineHeight: '22px',\n color: theme.colors.text.black02,\n paddingBottom: theme.spacing(1),\n },\n vaccineDoseWrapper: {\n display: 'flex',\n flexDirection: 'row',\n paddingTop: theme.spacing(1),\n },\n vaccineDoseItem: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n },\n vaccineDoseIcon: {\n height: '32px',\n width: '32px',\n color: theme.colors.text.grey,\n },\n vaccineDoseIconChecked: {\n color: theme.button.primary,\n },\n vaccineDoseLabel: {\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '20px',\n lineHeight: '25px',\n color: theme.colors.text.black,\n paddingLeft: theme.spacing(1),\n paddingRight: theme.spacing(4),\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n paddingRight: theme.spacing(2),\n },\n },\n tipsItem: {\n paddingRight: theme.spacing(8),\n },\n form: {\n padding: theme.spacing(0, 0, 0, 0),\n '& .MuiGrid-item': {\n padding: theme.spacing(1, 2, 1, 2),\n },\n },\n formTitle: {\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '24px',\n lineHeight: '24px',\n textAlign: 'center',\n letterSpacing: '0.82px',\n color: theme.colors.text.black02,\n padding: theme.spacing(0, 0, 2, 0),\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n fontWeight: 600,\n fontSize: '18px',\n lineHeight: '24px',\n },\n },\n alertContainer: {\n padding: theme.spacing(2, 0, 0, 0),\n },\n actionButton: {\n minWidth: 'auto',\n marginLeft: 'auto',\n width: theme.spacing(21),\n marginRight: theme.spacing(2),\n margin: 0,\n [theme.breakpoints.down(theme.screenbreakpoint.tablet)]: {\n marginTop: theme.spacing(2),\n marginLeft: theme.spacing(2),\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n width: '100%',\n },\n },\n titleContainer: {\n color: theme.palette.secondary.main,\n marginBottom: 18,\n },\n signLink: {\n textDecoration: 'none',\n },\n requiredHint: {\n flexGrow: 1,\n color: theme.colors.text.lightPurple,\n },\n actionButtonWrapper: {\n [theme.breakpoints.down(theme.screenbreakpoint.tablet)]: {\n flexDirection: 'column-reverse',\n },\n },\n bottomaActionBar: {\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'flex-end',\n paddingTop: theme.spacing(2),\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n justifyContent: 'center',\n },\n },\n topActionBar: {\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'space-between',\n padding: theme.spacing(0, 2),\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n flexDirection: 'column',\n alignItems: 'center',\n padding: theme.spacing(0, 2, 3, 2),\n },\n },\n}));\n\nexport default styles;\n","import { makeStyles, Theme } from '@material-ui/core/styles';\nimport Color from 'color';\n\nexport default makeStyles((theme: Theme) => ({\n root: {\n width: 'min-content',\n height: '30px',\n minWidth: '90px',\n minHeight: 'min-content',\n padding: '7px 11px',\n margin: '0px',\n //@ts-ignore\n border: `1px solid ${theme.palette.border.light}`,\n borderRadius: '20px',\n boxSizing: 'border-box',\n },\n\n content: {\n width: '100%',\n boxSizing: 'border-box',\n\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n },\n\n primary: {\n border: 'none',\n boxShadow: 'none',\n background: `${theme.palette.secondary.light} 0% 0% no-repeat padding-box`,\n\n '&:hover': {\n background: `${theme.palette.secondary.main} 0% 0% no-repeat padding-box`,\n },\n },\n\n secondary: {\n border: 'none',\n boxShadow: 'none',\n background: `${Color(theme.button.default)\n .saturate(0.1)\n .lighten(0.9)\n .alpha(0.7)\n .toString()} 0% 0% no-repeat padding-box`,\n\n '&:hover': {\n background: `${Color(theme.button.default)\n .saturate(0.1)\n .lighten(0.9)\n .alpha(1)\n .toString()} 0% 0% no-repeat padding-box`,\n },\n },\n\n disabled: {\n border: 'none',\n boxShadow: 'none',\n background: `${theme.palette.background.default} 0% 0% no-repeat padding-box`,\n },\n\n primaryDisabled: {},\n\n icon: {\n flex: '0 0 auto',\n minWidth: 'min-content',\n minHeight: 'min-content',\n marginLeft: '0px',\n\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n },\n\n iconColor: {\n //@ts-ignore\n color: theme.palette.text.black,\n //@ts-ignore\n fill: theme.palette.text.black,\n },\n\n primaryIconColor: {\n color: theme.palette.grey[100],\n fill: theme.palette.grey[100],\n },\n\n disabledIconColor: {\n //@ts-ignore\n color: theme.palette.text.disabled,\n //@ts-ignore\n fill: theme.palette.text.disabled,\n },\n\n label: {\n flex: '1 1 auto',\n fontFamily: theme.fonts.default,\n fontWeight: 500,\n fontSize: '14px',\n //@ts-ignore\n color: theme.palette.text.black,\n textTransform: 'none',\n },\n\n primaryLabel: {\n color: theme.palette.grey[100],\n },\n\n disabledLabel: {\n color: theme.palette.text.disabled,\n },\n}));\n","import LabeledIconButton from './LabeledIconButton';\n\nexport default LabeledIconButton;\nexport * from './LabeledIconButton';\n","import React, { FC } from 'react';\nimport clsx from 'clsx';\nimport Button, { ButtonProps } from '@material-ui/core/Button';\nimport Box from '@material-ui/core/Box';\nimport CircularProgress, {\n CircularProgressProps,\n} from '@material-ui/core/CircularProgress';\n\nimport useCommonStyles from '../../styles';\nimport useStyles from './styles';\n\nexport interface ILabeledIconButtonProps extends Omit {\n children: React.ReactChild;\n icon: React.ReactElement;\n loading?: boolean;\n disabled?: boolean;\n color?: 'neutral' | 'primary' | 'secondary';\n CircularProgressProps?: Partial;\n className?: string;\n classes?: Partial>;\n}\n\nconst LabeledIconButton: FC = (props) => {\n const {\n children,\n icon,\n loading = false,\n disabled = false,\n color = 'neutral',\n CircularProgressProps = {},\n className,\n classes: _,\n ...otherProps\n } = props;\n\n const commonClasses = useCommonStyles();\n const classes = useStyles(props);\n\n return (\n \n ),\n\n classes: {\n root: clsx(\n classes.root,\n {\n [classes.primary]: color === 'primary',\n [classes.secondary]: color === 'secondary',\n },\n className,\n ),\n label: classes.content,\n disabled: clsx(classes.disabled, {\n [classes.primaryDisabled]: color === 'primary',\n }),\n startIcon: clsx(classes.icon, classes.iconColor, {\n [classes.primaryIconColor]: color === 'primary',\n [classes.disabledIconColor]: disabled,\n }),\n },\n ...otherProps,\n }}\n >\n \n {children}\n \n \n );\n};\n\nexport default LabeledIconButton;\n","import CitizenInfoForm from './CitizenInfoForm';\n\nexport default CitizenInfoForm;\n","import React, { FC } from 'react';\nimport Grid from '@material-ui/core/Grid';\nimport Paper from '@material-ui/core/Paper';\nimport Box from '@material-ui/core/Box';\nimport Typography from '@material-ui/core/Typography';\nimport { FormattedMessage, useIntl } from 'react-intl';\nimport InputAdornment from '@material-ui/core/InputAdornment';\nimport FingerprintIcon from '@material-ui/icons/Fingerprint';\nimport EditIcon from '@material-ui/icons/Edit';\nimport ClearIcon from '@material-ui/icons/Clear';\nimport TodayIcon from '@material-ui/icons/Today';\nimport InputMask from 'react-input-mask';\nimport { sub } from 'date-fns';\nimport LabeledIconButton from '../../../components/button/LabeledIconButton';\nimport ActionButton from '../../../components/button/ActionButton';\nimport AutoCompleteField from '../../../components/inputfields/AutoCompleteField';\nimport DateInputField from '../../../components/inputfields/DateInputField';\nimport TextInputField from '../../../components/inputfields/TextInputField';\nimport {\n useAllAddress,\n useAllMunicipality,\n useFokontaniesByMunicipality,\n} from '../../../graphql/localization/hooks';\nimport { useFormik } from '../formik';\nimport useStyles from '../styles';\n\ninterface ICitizenInfoFormProps {\n isLoading?: boolean;\n formik: ReturnType;\n disabled?: boolean;\n isVaccined?: boolean;\n onToggleEditor: () => void;\n}\n\nconst CitizenInfoForm: FC = ({\n isLoading: isParentFormLoading,\n formik,\n disabled = true,\n isVaccined,\n onToggleEditor,\n}) => {\n const classes = useStyles();\n const intl = useIntl();\n\n const { municipalities, isLoading: isLoadingMunicipality } =\n useAllMunicipality();\n\n const { fokontanies, isLoading: isLoadingFokontany } =\n useFokontaniesByMunicipality(\n formik.values.municipalityId,\n !municipalities.length,\n );\n\n const { addresses, isLoading: isLoadingAddress } = useAllAddress(\n formik.values.fokontanyId,\n );\n\n const isLoading =\n isParentFormLoading ||\n isLoadingMunicipality ||\n isLoadingFokontany ||\n isLoadingAddress;\n\n return (\n \n \n \n \n \n \n {isVaccined && (\n : ,\n onClick: onToggleEditor,\n hidden: false,\n }}\n >\n \n \n )}\n \n\n \n \n \n formik.setFieldValue('birthDate', newBirthDate)\n }\n onBlur={formik.handleBlur}\n error={\n formik.touched.birthDate && Boolean(formik.errors.birthDate)\n }\n helperText={formik.touched.birthDate && formik.errors.birthDate}\n disabled={disabled || isLoading}\n inputProps={{\n maxLength: 12,\n }}\n fullWidth\n required\n maxDate={sub(new Date(), { years: 18 })}\n maxDateMessage={intl.formatMessage({\n id: 'error.birth.date.max.label',\n })}\n onError={(_errorElem, dateVal) => {\n String(_errorElem) &&\n formik.setErrors({\n birthDate: String(_errorElem) || undefined,\n });\n }}\n InputProps={{\n startAdornment: (\n \n \n \n ),\n }}\n />\n \n\n \n \n {(inputProps) => (\n \n \n \n ),\n }}\n />\n )}\n \n \n \n `${item?.id ?? ''}`}\n getItemLabel={(item) => `${item?.district?.name} / ${item?.name}`}\n onSelectionChange={(selectedVal) => {\n formik.handleChange('municipalityId')(selectedVal ?? '');\n }}\n onBlur={formik.handleBlur}\n error={\n formik.touched.municipalityId &&\n Boolean(formik.errors.municipalityId)\n }\n helperText={\n formik.touched.municipalityId && formik.errors.municipalityId\n }\n />\n \n \n `${item?.id ?? ''}`}\n getItemLabel={(item) => `${item?.name}`}\n onSelectionChange={(selectedVal) => {\n formik.handleChange('fokontanyId')(selectedVal ?? '');\n }}\n onBlur={formik.handleBlur}\n error={\n formik.touched.fokontanyId && Boolean(formik.errors.fokontanyId)\n }\n helperText={\n formik.touched.fokontanyId && formik.errors.fokontanyId\n }\n />\n \n \n adrItem.name))]}\n label={intl.formatMessage({\n id: 'citizen.address.label',\n })}\n getItemKey={(item) => item ?? ''}\n getItemLabel={(item) => item ?? ''}\n onSelectionChange={(selectedVal) => {\n formik.handleChange('addressName')(selectedVal ?? '');\n }}\n onBlur={formik.handleBlur}\n error={\n formik.touched.addressName && Boolean(formik.errors.addressName)\n }\n helperText={\n formik.touched.addressName && formik.errors.addressName\n }\n />\n \n \n {isVaccined && (\n \n \n \n \n \n )}\n \n \n );\n};\n\nexport default CitizenInfoForm;\n","import CitizenJobForm from './CitizenJobForm';\n\nexport default CitizenJobForm;\n","import React, { FC } from 'react';\nimport Grid from '@material-ui/core/Grid';\nimport Paper from '@material-ui/core/Paper';\nimport Typography from '@material-ui/core/Typography';\nimport Box from '@material-ui/core/Box';\nimport { FormattedMessage, useIntl } from 'react-intl';\nimport EditIcon from '@material-ui/icons/Edit';\nimport ClearIcon from '@material-ui/icons/Clear';\nimport LabeledIconButton from '../../../components/button/LabeledIconButton';\nimport ActionButton from '../../../components/button/ActionButton';\nimport AutoCompleteField from '../../../components/inputfields/AutoCompleteField';\nimport TextInputField from '../../../components/inputfields/TextInputField';\nimport { useAllEmployerEntity, useAllJob } from '../../../graphql/job/hooks';\nimport { OTHER_JOB_ID } from '../../../consts';\nimport { useFormik } from '../formik';\nimport useStyles from '../styles';\n\ninterface ICitizenJobFormProps {\n isLoading?: boolean;\n formik: ReturnType;\n disabled?: boolean;\n isVaccined?: boolean;\n onToggleEditor: () => void;\n}\n\nconst CitizenJobForm: FC = ({\n isLoading: isParentFormLoading,\n formik,\n disabled = true,\n isVaccined,\n onToggleEditor,\n}) => {\n const intl = useIntl();\n const classes = useStyles();\n\n const { jobs, isLoading: isLoadingJob } = useAllJob(false);\n\n const { jobs: otherJobs, isLoading: isLoadingOtherJob } = useAllJob(\n true,\n !jobs.length,\n );\n\n const { employerEntities, isLoading: isLoadingEmployerEntity } =\n useAllEmployerEntity(formik.values.municipalityId, !jobs.length);\n\n const isLoading =\n isParentFormLoading ||\n isLoadingJob ||\n isLoadingEmployerEntity ||\n isLoadingOtherJob;\n\n return (\n \n \n \n \n \n \n {isVaccined && (\n : ,\n onClick: onToggleEditor,\n }}\n >\n \n \n )}\n \n \n \n employerItm.name)}\n label={intl.formatMessage({\n id: 'citizen.job.employer.label',\n })}\n placeholder={intl.formatMessage({\n id: 'citizen.job.employer.placeholder.label',\n })}\n getItemKey={(item) => item ?? ''}\n getItemLabel={(item) => item ?? ''}\n onSelectionChange={(selectedVal) => {\n formik.handleChange('employerName')(selectedVal ?? '');\n }}\n />\n \n \n `${item?.id}`}\n getItemLabel={(item) => `${item?.name}`}\n onSelectionChange={(selectedVal) => {\n formik.handleChange('jobId')(selectedVal ?? '');\n }}\n onBlur={formik.handleBlur}\n error={formik.touched.jobId && Boolean(formik.errors.jobId)}\n helperText={formik.touched.jobId && formik.errors.jobId}\n />\n \n \n \n \n \n \n \n {OTHER_JOB_ID === formik.values.jobId && (\n \n jobItm.name)}\n label={intl.formatMessage({\n id: 'citizen.job.category.other.label',\n })}\n placeholder={intl.formatMessage({\n id: 'citizen.job.category.other.placeholder.label',\n })}\n getItemKey={(item) => item ?? ''}\n getItemLabel={(item) => item ?? ''}\n onSelectionChange={(selectedVal) => {\n formik.handleChange('jobName')(selectedVal ?? '');\n }}\n />\n \n )}\n \n {isVaccined && (\n \n \n \n \n \n )}\n \n \n );\n};\n\nexport default CitizenJobForm;\n","import CitizenHealthForm from './CitizenHealthForm';\n\nexport default CitizenHealthForm;\n","import React, { FC, ChangeEvent, useCallback } from 'react';\nimport Grid from '@material-ui/core/Grid';\nimport Paper from '@material-ui/core/Paper';\nimport Box from '@material-ui/core/Box';\nimport Typography from '@material-ui/core/Typography';\nimport { FormattedMessage, useIntl } from 'react-intl';\nimport EditIcon from '@material-ui/icons/Edit';\nimport ClearIcon from '@material-ui/icons/Clear';\nimport LabeledIconButton from '../../../components/button/LabeledIconButton';\nimport ActionButton from '../../../components/button/ActionButton';\nimport {\n useAllComorbidity,\n useAllHealthCenter,\n} from '../../../graphql/health/hooks';\nimport RadioInputField from '../../../components/inputfields/RadioInputField';\nimport AutoCompleteField from '../../../components/inputfields/AutoCompleteField';\nimport { useAllVaccineMeta } from '../../../graphql/vaccine_meta/hooks';\nimport { useFormik } from '../formik';\nimport useStyles from '../styles';\nimport { OTHER_COMORBIDITY_ID } from '../../../consts';\nimport InputAdornment from '@material-ui/core/InputAdornment';\nimport LocalHospitalIcon from '@material-ui/icons/LocalHospital';\n\ninterface ICitizenHealthFormProps {\n isLoading?: boolean;\n formik: ReturnType;\n disabled?: boolean;\n isVaccined?: boolean;\n onToggleEditor: () => void;\n}\n\nconst CitizenHealthForm: FC = ({\n isLoading: isParentFormLoading,\n formik,\n disabled = true,\n isVaccined,\n onToggleEditor,\n}) => {\n const intl = useIntl();\n const classes = useStyles();\n\n const { comorbidities, isLoading: isLoadingComorbidity } =\n useAllComorbidity(false);\n const { healthCenters, isLoading: isLoadingHealthCenter } =\n useAllHealthCenter(formik.values.municipalityId);\n\n const {\n comorbidities: otherComorbidities,\n isLoading: isLoadingOtherComorbidity,\n } = useAllComorbidity(true, !comorbidities.length);\n\n const { vaccines, isLoading: isLoadingVaccines } = useAllVaccineMeta();\n\n const isLoading =\n isParentFormLoading ||\n isLoadingComorbidity ||\n isLoadingOtherComorbidity ||\n isLoadingVaccines ||\n isLoadingHealthCenter;\n\n return (\n \n \n \n \n \n \n {isVaccined && (\n : ,\n onClick: onToggleEditor,\n }}\n >\n \n \n )}\n \n\n \n \n \n formik.handleChange('comorbidityId')(newValue)\n }\n options={comorbidities}\n getOptionKey={(item) => item.id}\n getOptionLabel={(item) => item.name}\n error={Boolean(formik.errors.comorbidityId)}\n helperText={formik.errors.comorbidityId}\n />\n \n \n {OTHER_COMORBIDITY_ID === formik.values.comorbidityId && (\n \n comorbidityItm.name,\n )}\n label={intl.formatMessage({\n id: 'citizen.comorbidity.category.other.label',\n })}\n placeholder={intl.formatMessage({\n id: 'citizen.comorbidity.category.other.placeholder.label',\n })}\n getItemKey={(item) => item ?? ''}\n getItemLabel={(item) => item ?? ''}\n onSelectionChange={(selectedVal) => {\n formik.handleChange('comorbidityName')(selectedVal ?? '');\n }}\n />\n \n )}\n \n `${item?.id}`}\n getItemLabel={(item) => `${item?.name ?? ''}`}\n onSelectionChange={(selectedVal) => {\n formik.handleChange('healthCenterId')(selectedVal ?? '');\n }}\n onBlur={formik.handleBlur}\n error={\n formik.touched.healthCenterId &&\n Boolean(formik.errors.healthCenterId)\n }\n helperText={\n formik.touched.healthCenterId && formik.errors.healthCenterId\n }\n textFieldProps={{\n InputProps: {\n startAdornment: (\n \n \n \n ),\n },\n }}\n />\n \n \n `${item?.id}`}\n getItemLabel={(item) => `${item?.name ?? ''}`}\n onSelectionChange={(selectedVal) => {\n formik.handleChange('desiredVaccineId')(selectedVal ?? '');\n }}\n onBlur={formik.handleBlur}\n error={\n formik.touched.desiredVaccineId &&\n Boolean(formik.errors.desiredVaccineId)\n }\n helperText={\n formik.touched.desiredVaccineId && formik.errors.desiredVaccineId\n }\n textFieldProps={{\n InputProps: {\n startAdornment: (\n \n \n \n ),\n },\n }}\n />\n \n {isVaccined && (\n \n \n \n \n \n )}\n \n \n );\n};\n\nexport default CitizenHealthForm;\n","export default __webpack_public_path__ + \"static/media/vaccine-dose-enabled.0f5391ed.svg\";","export default __webpack_public_path__ + \"static/media/default-profile-pic.b15b91b1.svg\";","import { makeStyles } from '@material-ui/core/styles';\n\nconst styles = makeStyles((theme) => ({\n container: {\n // padding: theme.spacing(3),\n position: 'relative',\n },\n small: {\n width: theme.spacing(4),\n height: theme.spacing(4),\n },\n medium: {\n width: theme.spacing(6),\n height: theme.spacing(6),\n },\n large: {\n width: theme.spacing(24),\n height: theme.spacing(24),\n },\n avatarButton: {\n borderRadius: '50%',\n },\n editButtonContainer: {\n width: '100%',\n height: '100%',\n top: theme.spacing(0),\n right: theme.spacing(0),\n position: 'absolute',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n alignItems: 'center',\n '& .MuiIconButton-root': {\n padding: theme.spacing(1),\n backgroundColor: theme.palette.action.focus,\n opacity: 0,\n '&:hover': {\n color: theme.palette.primary.contrastText,\n backgroundColor: theme.palette.action.active,\n opacity: 1,\n },\n },\n },\n}));\n\nexport default styles;\n","import React, { FC } from 'react';\nimport Box from '@material-ui/core/Box';\nimport classnames from 'classnames';\nimport Avatar from '@material-ui/core/Avatar';\nimport IconButton from '@material-ui/core/IconButton';\nimport ButtonBase from '@material-ui/core/ButtonBase';\nimport UploadIcon from '@material-ui/icons/Backup';\n\nimport DefaultAvatar from '../../../assets/images/default-profile-pic.svg';\n\nimport useStyles from './styles';\ninterface IProps {\n src?: string | null;\n size?: 'small' | 'medium' | 'large';\n onEditClick?: () => void;\n onClick?: () => void;\n}\n\nconst UserAvatar = React.forwardRef(\n ({ size = 'small', src, onClick, onEditClick }, ref) => {\n const classes = useStyles();\n const renderAvatar = () => (\n \n );\n\n return (\n \n {onClick ? (\n \n {renderAvatar()}\n \n ) : (\n renderAvatar()\n )}\n {onEditClick && (\n \n \n \n \n \n )}\n \n );\n },\n);\n\nUserAvatar.displayName = 'UserAvatar';\n\nexport default UserAvatar;\n","import UserAvatar from './UserAvatar';\n\nexport default UserAvatar;\n","import { makeStyles, Theme } from '@material-ui/core/styles';\n\nexport default makeStyles((theme: Theme) => ({\n root: {\n width: '100%',\n height: 'min-content',\n maxHeight: theme.spacing(8),\n boxSizing: 'border-box',\n backgroundColor: theme.palette.primary.main,\n padding: '0px',\n\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'space-between',\n alignItems: 'flex-start',\n },\n\n labelWrapper: {\n flex: '1 1 auto',\n padding: theme.spacing(3),\n\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'flex-start',\n alignItems: 'center',\n },\n\n icon: { width: '28px', height: '28px' },\n\n label: {\n paddingLeft: '10px',\n boxSizing: 'border-box',\n\n textAlign: 'left',\n font: 'normal normal normal 20px/24px',\n textShadow: '0px 3px 20px #00000014',\n //@ts-ignore\n color: theme.palette.text.white,\n },\n\n iconCloseWrapper: {\n flex: '0 1 auto',\n padding: '0px',\n\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'flex-end',\n alignItems: 'flex-start',\n },\n\n iconClose: {\n width: '24px',\n height: '24px',\n padding: '0px',\n margin: '10px 13px',\n cursor: 'pointer',\n //@ts-ignore\n color: theme.palette.text.white,\n },\n\n iconCloseDisabled: {\n cursor: 'default',\n opacity: 0.75,\n },\n}));\n","import DialogBaseTitle from './DialogBaseTitle';\n\nexport default DialogBaseTitle;\n","import React from 'react';\nimport clsx from 'clsx';\nimport Box from '@material-ui/core/Box';\nimport DialogTitle, {\n DialogTitleProps,\n DialogTitleClassKey,\n} from '@material-ui/core/DialogTitle';\nimport CloseIcon from '@material-ui/icons/Close';\n\nimport useCommonStyles from '../../../styles';\nimport useStyles from './styles';\n\nexport interface IProps extends Omit {\n id?: string;\n icon?: React.ReactElement;\n title?: React.ReactNode;\n enableCloseIcon?: boolean;\n disableClose?: boolean;\n onClose?: () => void;\n className?: string;\n classes?: Partial<\n Record | DialogTitleClassKey, string>\n >;\n}\n\nconst DialogBaseTitle = (props: IProps) => {\n const {\n icon,\n title = '',\n enableCloseIcon = false,\n disableClose = false,\n onClose,\n className,\n classes: {\n root,\n labelWrapper,\n icon: _,\n label,\n iconCloseWrapper,\n iconClose,\n iconCloseDisabled,\n ...dialogTitleClasses\n } = {},\n ...otherProps\n } = props;\n\n const commonClasses = useCommonStyles();\n const classes = useStyles(props);\n\n return (\n \n \n {icon &&\n React.cloneElement(icon, {\n className: clsx(classes.icon, icon.props?.className),\n })}\n\n \n {title}\n \n \n\n {enableCloseIcon && (\n \n \n \n )}\n \n );\n};\n\nexport default DialogBaseTitle;\n","import { makeStyles } from '@material-ui/core/styles';\n\nexport default makeStyles(() => ({\n root: {\n width: 'min-content',\n height: 'min-content',\n minWidth: '550px',\n minHeight: '260px',\n maxWidth: '1200px',\n maxHeight: '750px',\n boxSizing: 'border-box',\n background: '#FFFFFF 0% 0% no-repeat padding-box',\n boxShadow: '0px 3px 20px #00000014',\n borderRadius: '15px',\n overflow: 'hidden',\n\n display: 'flex',\n },\n\n content: {\n flex: '1 1 auto',\n webkitFlex: '1 1 auto',\n msFlex: '1 1 auto',\n width: '100%',\n minWidth: 'min-content',\n boxSizing: 'border-box',\n padding: '25px',\n overflow: 'hidden',\n },\n\n actions: {},\n}));\n","import DialogBase from './DialogBase';\n\nexport default DialogBase;\n","import React from 'react';\nimport clsx from 'clsx';\nimport Dialog, { DialogProps, DialogClassKey } from '@material-ui/core/Dialog';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport { PaperProps } from '@material-ui/core';\n\nimport DialogBaseTitle from './DialogBaseTitle';\nimport { IProps as DialogBaseTitleProps } from './DialogBaseTitle/DialogBaseTitle';\n\nimport useStyles from './styles';\n\nexport interface IProps extends Omit {\n children: React.ReactNode;\n actions?: React.ReactNode;\n icon?: React.ReactElement;\n title?: React.ReactNode;\n enableCloseIcon?: boolean;\n disableClose?: boolean;\n onClose?: () => void;\n DialogTitleComponent?: React.ReactNode;\n DialogTitleProps?: Partial;\n PaperProps?: Partial;\n className?: string;\n classes?: Partial<\n Record | DialogClassKey, string>\n >;\n}\n\nconst DialogBase = (props: IProps) => {\n const {\n open,\n children,\n actions,\n icon,\n title = '',\n enableCloseIcon = false,\n disableClose = false,\n onClose,\n DialogTitleComponent,\n DialogTitleProps = {},\n className,\n classes: { root, content, ...dialogClasses } = {},\n ...otherProps\n } = props;\n\n const classes = useStyles(props);\n\n return (\n \n {DialogTitleComponent ? (\n DialogTitleComponent\n ) : (\n \n )}\n\n \n {children}\n \n\n {actions && (\n \n {actions}\n \n )}\n \n );\n};\n\nexport default DialogBase;\n","import { Area } from 'react-easy-crop/types';\n\nconst createImage = (url: string) =>\n new Promise((resolve, reject) => {\n const image = new Image();\n image.addEventListener('load', () => resolve(image));\n image.addEventListener('error', (error) => reject(error));\n image.setAttribute('crossOrigin', 'anonymous'); // needed to avoid cross-origin issues on CodeSandbox\n image.src = url;\n });\n\n/**\n * This function was adapted from the one in the ReadMe of https://github.com/DominicTobias/react-image-crop\n * @param {File} image - Image File url\n * @param {Object} pixelCrop - pixelCrop Object provided by react-easy-crop\n */\nexport const getCroppedImg = async (\n imageSrc: string,\n pixelCrop: Area,\n): Promise => {\n const image = await createImage(imageSrc);\n const canvas = document.createElement('canvas');\n const ctx = canvas.getContext('2d');\n\n const maxSize = Math.max(image.width, image.height);\n const safeArea = 2 * ((maxSize / 2) * Math.sqrt(2));\n\n // set each dimensions to double largest dimension to allow for a safe area for the\n // image to rotate in without being clipped by canvas context\n canvas.width = safeArea;\n canvas.height = safeArea;\n\n // translate canvas context to a central location on image to allow rotating around the center.\n ctx?.translate(safeArea / 2, safeArea / 2);\n ctx?.translate(-safeArea / 2, -safeArea / 2);\n\n // draw rotated image and store data.\n ctx?.drawImage(\n image,\n safeArea / 2 - image.width * 0.5,\n safeArea / 2 - image.height * 0.5,\n );\n const data = ctx?.getImageData(0, 0, safeArea, safeArea);\n\n // set canvas width to final desired crop size - this will clear existing context\n canvas.width = pixelCrop.width;\n canvas.height = pixelCrop.height;\n\n // paste generated rotate image with correct offsets for x,y crop values.\n if (data) {\n ctx?.putImageData(\n data,\n Math.round(0 - safeArea / 2 + image.width * 0.5 - pixelCrop.x),\n Math.round(0 - safeArea / 2 + image.height * 0.5 - pixelCrop.y),\n );\n }\n\n // As Base64 string\n // return canvas.toDataURL('image/jpeg');\n\n // As a blob\n return new Promise((resolve) => {\n canvas.toBlob((file) => {\n resolve(file);\n }, 'image/jpeg');\n });\n};\n","import { makeStyles } from '@material-ui/core/styles';\n\nexport const useStyles = makeStyles((theme) => ({\n dialogTitleText: {\n minWidth: 'min-content',\n minHeight: 'min-content',\n whiteSpace: 'nowrap',\n color: theme.palette.primary.dark,\n fontSize: '1.3125rem',\n\n fontFamily: theme.typography.fontFamily,\n lineHeight: '1.16667em',\n },\n dialog: {\n overflow: 'hidden',\n },\n dialogTitleSection: {\n flex: '1 1 auto',\n marginBottom: 16,\n fontSize: 14,\n backgroundColor: theme.palette.primary.main,\n\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'space-between',\n },\n closeIconWrapper: {\n minWidth: 'min-content',\n minHeight: 'min-content',\n cursor: 'pointer',\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'flex-end',\n alignItems: 'flex-start',\n },\n closeIcon: {\n '&:hover': { backgroundColor: '#00000010' },\n '&:active': { backgroundColor: '#00000020' },\n },\n titleWrapper: {\n padding: '5px 5px 0px 0px',\n },\n dialogContent: {\n // width: '100%',\n height: '100%',\n minWidth: 'min-content',\n minHeight: 'min-content',\n overflow: 'hidden',\n\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n alignItems: 'stretch',\n },\n actions: {\n // flex: '1 1 auto',\n height: 'min-content',\n minWidth: 'min-content',\n minHeight: 'min-content',\n margin: '0px 25px 25px',\n\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'space-between',\n alignItems: 'center',\n\n color: '#000',\n },\n\n label: {\n cursor: 'pointer',\n padding: '6px 0px',\n display: 'flex',\n justifyContent: 'center',\n width: '100%',\n },\n\n noPadding: {\n padding: '0 !important',\n },\n\n bottom: { marginTop: 20 },\n\n secondButton: {\n width: '100%',\n height: '35px',\n color: '#1F3967',\n backgroundColor: theme.palette.secondary.main,\n boxShadow: '0px 2px 2px #00000040',\n borderRadius: '3px',\n display: 'flow-root',\n '&:hover': {\n color: '#1F3967',\n backgroundColor: theme.palette.secondary.main,\n boxShadow: '0px 2px 2px #00000040',\n },\n marginLeft: 'auto',\n },\n buttonProgressCircle: {\n color: '#1F3967',\n margin: 'auto',\n },\n dialogAvatarWidth: {\n minWidth: '500px',\n minHeight: '500px',\n },\n paper: {\n position: 'absolute',\n zIndex: 2,\n top: -20,\n },\n uploadButton: {\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n },\n uploadIcon: {\n marginRight: 10,\n },\n\n content: {\n position: 'relative',\n flex: '1 1 auto',\n webkitFlex: '1 1 auto',\n msFlex: '1 1 auto',\n width: '100%',\n minWidth: 'min-content',\n minHeight: 'min-content',\n boxSizing: 'border-box',\n\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'flex-start',\n justifyContent: 'center',\n },\n\n title: {\n textAlign: 'center',\n fontWeight: 500,\n fontSize: '20px',\n //@ts-ignore\n color: theme.palette.text.white,\n },\n imageCropper: {\n position: 'relative',\n width: '100%',\n height: theme.spacing(40),\n },\n actionWrapper: {\n width: '100%',\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'stretch',\n '& .MuiButton-root': {\n marginTop: theme.spacing(2),\n },\n },\n defaultAvatar: {\n width: '100%',\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n marginBottom: theme.spacing(1),\n },\n zoomControl: {\n marginTop: theme.spacing(2),\n width: '100%',\n },\n}));\n","import React, { FC } from 'react';\nimport clsx from 'clsx';\nimport Slider from '@material-ui/core/Slider';\nimport Box from '@material-ui/core/Box';\nimport Cropper from 'react-easy-crop';\nimport { FormattedMessage } from 'react-intl';\nimport { Typography } from '@material-ui/core';\nimport { Area } from 'react-easy-crop/types';\nimport NoImage from '../../../assets/images/default-profile-pic.svg';\nimport DialogBase from '../../../components/dialog/DialogBase';\nimport ActionButton from '../../../components/button/ActionButton';\nimport useCommonStyles from '../../../components/styles';\nimport { useCitizenUpdateProfilePicMutation } from '../../../graphql/citizen/hooks';\n\nimport { getCroppedImg } from './helper';\nimport { useStyles } from './styles';\n\ninterface IProps {\n handleCloseUploader: () => void;\n currentAvatar?: string | null;\n citizenId: string;\n}\n\nconst AVATAR_SIZE = 256;\n\nconst AvatarUploader: FC = ({\n handleCloseUploader,\n citizenId,\n currentAvatar = NoImage,\n}) => {\n const classes = useStyles();\n const commonClasses = useCommonStyles();\n const [crop, setCrop] = React.useState({ x: 0, y: 0 });\n\n const [cropSize, setCropSize] = React.useState({\n width: AVATAR_SIZE,\n height: AVATAR_SIZE,\n });\n const [zoom, setZoom] = React.useState(1);\n const [newAvatar, setNewAvatar] = React.useState();\n const [avatarFilename, setAvatarFilename] = React.useState();\n const [croppedAvatar, setCroppedAvatar] = React.useState();\n const { updateProfilePicLoading, updateProfilePicMutation } =\n useCitizenUpdateProfilePicMutation(citizenId, {\n onSuccess: () => handleCloseUploader(),\n });\n\n const onSelectFile = (e: React.ChangeEvent) => {\n if (e.currentTarget.files && e.currentTarget.files.length > 0) {\n const fileTmp = e.currentTarget.files[0];\n const reader = new FileReader();\n reader.addEventListener('load', () => {\n setNewAvatar(reader.result as string);\n setAvatarFilename(fileTmp.name);\n });\n reader.readAsDataURL(fileTmp);\n }\n };\n\n const onCropComplete = React.useCallback(\n async (croppedArea: Area, croppedAreaPixels: Area) => {\n if (newAvatar) {\n const croppedImage = await getCroppedImg(newAvatar, croppedAreaPixels);\n setCroppedAvatar(croppedImage);\n }\n },\n [newAvatar],\n );\n\n return (\n \n \n \n ),\n onClose: handleCloseUploader,\n classes: { content: classes.content },\n }}\n >\n \n {newAvatar && (\n \n \n \n )}\n {newAvatar && (\n \n setZoom(zoom as number)}\n />\n \n )}\n {!newAvatar && (\n \n \n \n )}\n \n \n \n \n {\n if (croppedAvatar && avatarFilename) {\n updateProfilePicMutation(\n new File(\n [croppedAvatar],\n avatarFilename.replace(/\\.[^/.]+$/, '.jpeg'),\n { type: 'image/jpeg' },\n ),\n );\n }\n }}\n >\n \n \n \n \n \n );\n};\n\nexport default AvatarUploader;\n","import AvatarUploader from './AvatarUploader';\n\nexport default AvatarUploader;\n","import React from 'react';\nimport { FetchResult, useMutation } from '@apollo/client';\nimport { useSnackbar } from 'notistack';\nimport { useIntl } from 'react-intl';\nimport { useErrorHanlder } from '../../../modules/hooks';\nimport { ApolloErrorCode } from '../../../consts';\nimport { MY_PROFILE } from '../../authentication/query';\nimport { MyProfile } from '../../authentication/types/MyProfile';\nimport { CITIZEN_UPLOAD_PIC } from '../mutation';\nimport {\n CitizenUpdateProfilePicMutation,\n CitizenUpdateProfilePicMutationVariables,\n} from '../types/CitizenUpdateProfilePicMutation';\n\nexport const useCitizenUpdateProfilePicMutation = (\n citizenId: string,\n options?: IMutationOptions,\n): {\n updateProfilePicMutation: (\n thePicture: any,\n ) => Promise>;\n updateProfilePicLoading: boolean;\n successAlert?: string | null;\n errorAlert?: string | null;\n closeAlert: () => void;\n} => {\n const intl = useIntl();\n const { enqueueSnackbar } = useSnackbar();\n const handleError = useErrorHanlder();\n const [successAlert, setSuccessAlert] = React.useState();\n const [errorAlert, setErrorAlert] = React.useState();\n\n const closeAlert = () => {\n setErrorAlert(null);\n setSuccessAlert(null);\n };\n\n const [mutate, { loading: updateProfilePicLoading }] = useMutation<\n CitizenUpdateProfilePicMutation,\n CitizenUpdateProfilePicMutationVariables\n >(CITIZEN_UPLOAD_PIC, {\n onCompleted: (data) => {\n if (data?.updateProfilePic?.success) {\n enqueueSnackbar(\n intl.formatMessage({\n id: 'userprofile.uploadavatar.updated.message',\n }),\n {\n variant: 'success',\n anchorOrigin: { horizontal: 'center', vertical: 'top' },\n },\n );\n setSuccessAlert(\n intl.formatMessage({\n id: 'userprofile.uploadavatar.updated.message',\n }),\n );\n options?.onSuccess?.();\n }\n },\n update: (cache, { data }) => {\n if (data && data?.updateProfilePic?.success) {\n const myData = cache.readQuery({\n query: MY_PROFILE,\n variables: { citizenId },\n });\n\n if (myData && myData?.myProfile?.id) {\n cache.writeQuery({\n query: MY_PROFILE,\n data: {\n ...myData,\n myProfile: {\n ...myData.myProfile,\n photo: data?.updateProfilePic?.photo,\n },\n },\n variables: { citizenId },\n });\n }\n }\n },\n onError: (error) => {\n handleError(error, [\n {\n code: ApolloErrorCode.UKNOWN_ERROR,\n message: intl.formatMessage({\n id: 'userprofile.uploadavatar.error.message',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n ]);\n },\n });\n\n const updateProfilePicMutation = (\n thePicture: any,\n ): Promise> => {\n closeAlert();\n return mutate({\n variables: { thePic: thePicture },\n });\n };\n\n return {\n successAlert,\n errorAlert,\n closeAlert,\n updateProfilePicMutation,\n updateProfilePicLoading,\n };\n};\n","import MainProfile from './MainProfile';\n\nexport default MainProfile;\n","import React, { FC } from 'react';\nimport Paper from '@material-ui/core/Paper';\nimport Box from '@material-ui/core/Box';\nimport Typography from '@material-ui/core/Typography';\nimport { FormattedMessage } from 'react-intl';\nimport clsx from 'clsx';\nimport CheckedIconDisabled from '../../../assets/images/vaccine-dose-disabled.svg';\nimport CheckedIconEnabled from '../../../assets/images/vaccine-dose-enabled.svg';\nimport ActionButton from '../../../components/button/ActionButton';\nimport { useCitizenSignIdMutation } from '../../../graphql/citizen/hooks';\nimport { useAuthContext } from '../../../modules/AuthProvider';\nimport { MyProfile_myProfile_health_vaccineEvents } from '../../../graphql/authentication/types/MyProfile';\nimport { EnumGender } from '../../../types';\nimport { useFormik } from '../formik';\nimport useStyles from '../styles';\nimport UserAvatar from '../UserAvatar';\nimport AvatarUploader from '../AvatarUploader';\n\ninterface IMainProfileProps {\n isLoading?: boolean;\n formik: ReturnType;\n vaccineEvents?: MyProfile_myProfile_health_vaccineEvents[];\n}\n\nconst MainProfile: FC = ({\n isLoading: isParentFormLoading,\n formik,\n}) => {\n const classes = useStyles();\n const { currentUser, signOut } = useAuthContext();\n const [uploadNewAvatar, setUploadNewAvatar] = React.useState(false);\n\n const { signIdLoading: isSignIdLoading, signIdMutation } =\n useCitizenSignIdMutation();\n\n const showCardButton =\n currentUser?.health?.vaccineEvents &&\n currentUser?.health?.vaccineEvents.length > 0 &&\n currentUser?.epiId\n ? true\n : false;\n\n return (\n <>\n \n \n \n \n setUploadNewAvatar(true)}\n />\n \n \n \n {currentUser?.lastName ?? ''} {currentUser?.firstName ?? ''}\n \n {currentUser?.gender && (\n \n {currentUser?.gender === EnumGender.MALE && (\n \n )}\n {currentUser?.gender === EnumGender.FEMALE && (\n \n )}\n {!currentUser?.gender && (\n \n )}\n \n )}\n {currentUser?.phoneNumber && (\n \n {currentUser?.phoneNumber}\n \n )}\n {currentUser?.email && (\n \n {currentUser?.email}\n \n )}\n \n {currentUser?.health?.vaccineEvents &&\n currentUser?.health?.vaccineEvents.length > 0 &&\n currentUser?.health?.vaccineEvents.map((vaxEvent, index) => (\n \n \n \n \n \n \n ))}\n \n \n \n
\n \n {\n if (currentUser?.epiId)\n signIdMutation(currentUser?.prodigyId);\n },\n disabled: !showCardButton || isParentFormLoading,\n }}\n >\n \n \n signOut(),\n }}\n disabled={isParentFormLoading || isSignIdLoading}\n >\n \n \n \n \n
\n {currentUser && uploadNewAvatar && (\n setUploadNewAvatar(false)}\n />\n )}\n \n );\n};\n\nexport default MainProfile;\n","import React from 'react';\nimport { FetchResult, useMutation } from '@apollo/client';\nimport { useIntl } from 'react-intl';\nimport { CITIZEN_SIGN_ID } from '../mutation';\nimport {\n CitizenSignIdMutation,\n CitizenSignIdMutationVariables,\n} from '../types/CitizenSignIdMutation';\nimport { useErrorHanlder } from '../../../modules/hooks';\nimport { ApolloErrorCode } from '../../../consts';\nimport { REACT_APP_HEALTH_PROFILE_URL } from '../../../config';\n\nexport const useCitizenSignIdMutation = (): {\n signIdMutation: (\n citizenId: string,\n ) => Promise>;\n signIdLoading: boolean;\n errorAlert?: string | null;\n closeAlert: () => void;\n} => {\n const intl = useIntl();\n // const { enqueueSnackbar } = useSnackbar();\n const handleError = useErrorHanlder();\n\n const [errorAlert, setErrorAlert] = React.useState();\n\n const closeAlert = () => {\n setErrorAlert(null);\n };\n\n const [mutate, { loading: signIdLoading }] = useMutation<\n CitizenSignIdMutation,\n CitizenSignIdMutationVariables\n >(CITIZEN_SIGN_ID, {\n onCompleted: (data) => {\n if (data?.healthProfileSignInCitizenId?.accessKey) {\n setErrorAlert(null);\n window.open(\n REACT_APP_HEALTH_PROFILE_URL +\n '/#/c/' +\n data.healthProfileSignInCitizenId.accessKey,\n '_blank',\n );\n }\n },\n onError: (error) => {\n handleError(error, [\n {\n code: ApolloErrorCode.CITIZEN_NOT_FOUND,\n message: intl.formatMessage({\n id: 'citizen.error.notfound.label',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.UKNOWN_ERROR,\n message: intl.formatMessage({\n id: 'error.message.unknow',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n ]);\n },\n });\n\n const signIdMutation = (\n citizenId: string,\n ): Promise> => {\n return mutate({ variables: { citizenId } });\n };\n\n return {\n signIdMutation,\n signIdLoading,\n errorAlert,\n closeAlert,\n };\n};\n","import React, { FC, useEffect } from 'react';\nimport Grid from '@material-ui/core/Grid';\nimport Box from '@material-ui/core/Box';\nimport { useIntl } from 'react-intl';\nimport { Alert } from '@material-ui/lab';\nimport { Helmet } from 'react-helmet';\nimport { UpdateCitizenProfileInput } from '../../types';\nimport PageContainer from '../../components/page/PageContainer';\nimport { useCitizenEditProfileMutation } from '../../graphql/citizen/hooks';\nimport { useMyProfile } from '../../graphql/authentication/hooks';\nimport InfiniteLoading from '../../components/InfiniteLoading';\nimport { useAuthContext } from '../../modules/AuthProvider';\nimport { RegistrationStep } from '../../consts';\nimport useStyles from './styles';\nimport { useFormik } from './formik';\nimport CitizenInfoForm from './CitizenInfoForm';\nimport CitizenJobForm from './CitizenJobForm';\nimport CitizenHealthForm from './CitizenHealthForm';\nimport MainProfile from './MainProfile';\n\nconst Profile: FC = () => {\n const intl = useIntl();\n\n const [currentForm, setCurrentForm] = React.useState();\n\n const classes = useStyles();\n\n const { currentUser } = useAuthContext();\n\n const initialValues = {\n id: currentUser?.id,\n municipalityId: currentUser?.municipality.id,\n fokontanyId: currentUser?.fokontany.id,\n addressName: currentUser?.address?.name,\n jobId: currentUser?.job?.jobId,\n employerName: currentUser?.job?.employer?.name,\n healthCenterId: currentUser?.health?.healthCenterId,\n lastPcrTest: currentUser?.health?.lastPcrTest,\n birthDate: currentUser?.birthDate,\n gender: currentUser?.gender,\n cniNum: currentUser?.cniNum,\n offRegNum: currentUser?.job?.offRegNum,\n profRegNum: currentUser?.job?.profRegNum,\n jobName: currentUser?.job?.otherJob?.name,\n comorbidityId: currentUser?.health?.comorbidityId,\n comorbidityName: currentUser?.health?.otherComorbidity?.name,\n desiredVaccineId: currentUser?.health?.desiredVaccineId,\n };\n\n const {\n updateCitizenProfileLoading,\n updateCitizenProfileMutation,\n closeAlert: createCloseAlert,\n successAlert: createSuccessAlert,\n errorAlert: createErrorAlert,\n } = useCitizenEditProfileMutation({\n onSuccess: () => {\n setCurrentForm(undefined);\n },\n });\n\n // Of formik as form state handler\n const formik = useFormik({\n initialValues,\n onSubmit: async (values, helper) => {\n updateCitizenProfileMutation(values as UpdateCitizenProfileInput);\n },\n });\n\n // Chech is current citizen is vaccined\n const isVaccined = currentUser?.health?.vaccineEvents\n ? currentUser?.health?.vaccineEvents?.length > 1\n ? true\n : false\n : false;\n\n // Hanle edit form change\n const handleCurrentEditableFormChange = (\n newSelectedForm: RegistrationStep,\n ) => {\n setCurrentForm((lastSelectedForm) =>\n lastSelectedForm !== newSelectedForm ? newSelectedForm : undefined,\n );\n // Reset the form\n formik.setValues(initialValues);\n };\n\n const isLoading = updateCitizenProfileLoading;\n const successAlert = createSuccessAlert;\n const errorAlert = createErrorAlert;\n const closeAlert = createCloseAlert;\n\n return (\n \n \n \n {intl.formatMessage({ id: 'common.health.profile.label' })}\n \n \n \n \n {(successAlert || errorAlert) && (\n \n closeAlert()}\n >\n {successAlert ? successAlert : errorAlert}\n \n \n )}\n \n \n \n \n \n handleCurrentEditableFormChange(\n RegistrationStep.REGISTRATION_PERSONAL_INFO,\n )\n }\n />\n \n handleCurrentEditableFormChange(\n RegistrationStep.REGISTRATION_JOB_INFO,\n )\n }\n />\n \n handleCurrentEditableFormChange(\n RegistrationStep.REGISTRATION_HEALTH_INFO,\n )\n }\n />\n \n \n );\n};\n\nconst ProfileWrapper: FC = () => {\n const classes = useStyles();\n const { isLoading: isLoadingProfile } = useMyProfile();\n const { currentUser } = useAuthContext();\n return (\n \n \n {isLoadingProfile || !currentUser ? : }\n \n \n );\n};\n\nexport default ProfileWrapper;\n","import React from 'react';\nimport { FetchResult, useMutation } from '@apollo/client';\nimport { useSnackbar } from 'notistack';\nimport { useIntl } from 'react-intl';\nimport { format } from 'date-fns';\n\nimport { MY_PROFILE } from '../../authentication/query';\nimport { MyProfile } from '../../authentication/types/MyProfile';\nimport { useErrorHanlder } from '../../../modules/hooks';\nimport { ApolloErrorCode } from '../../../consts';\n\nimport { CITIZEN_EDIT_PROFILE } from '../mutation';\nimport {\n CitizenEditProfileMutation,\n CitizenEditProfileMutationVariables,\n} from '../types/CitizenEditProfileMutation';\nimport { UpdateCitizenProfileInput } from '../../../types';\n\nexport const useCitizenEditProfileMutation = (\n options?: IMutationOptions,\n): {\n updateCitizenProfileMutation: (\n profileInput: UpdateCitizenProfileInput,\n ) => Promise>;\n updateCitizenProfileLoading: boolean;\n successAlert?: string | null;\n errorAlert?: string | null;\n closeAlert: () => void;\n} => {\n const intl = useIntl();\n const { enqueueSnackbar } = useSnackbar();\n const handleError = useErrorHanlder();\n const [successAlert, setSuccessAlert] = React.useState();\n const [errorAlert, setErrorAlert] = React.useState();\n\n const closeAlert = () => {\n setErrorAlert(null);\n setSuccessAlert(null);\n };\n\n const [mutate, { loading: updateCitizenProfileLoading }] = useMutation<\n CitizenEditProfileMutation,\n CitizenEditProfileMutationVariables\n >(CITIZEN_EDIT_PROFILE, {\n onCompleted: (data) => {\n if (data?.updateCitizenProfile?.citizen) {\n enqueueSnackbar(\n intl.formatMessage({\n id: 'citizen.success.edit.message',\n }),\n {\n variant: 'success',\n anchorOrigin: { horizontal: 'center', vertical: 'top' },\n },\n );\n setSuccessAlert(\n intl.formatMessage({\n id: 'citizen.success.edit.message',\n }),\n );\n options?.onSuccess?.();\n }\n },\n update: (cache, { data }) => {\n if (data && data?.updateCitizenProfile?.citizen) {\n const myData = cache.readQuery({\n query: MY_PROFILE,\n variables: { citizenId: data.updateCitizenProfile.citizen.id },\n });\n\n if (myData && myData?.myProfile?.id) {\n cache.writeQuery({\n query: MY_PROFILE,\n data: {\n ...myData,\n ...data?.updateCitizenProfile?.citizen,\n },\n variables: { citizenId: data.updateCitizenProfile.citizen.id },\n });\n }\n }\n },\n onError: (error) => {\n handleError(error, [\n {\n code: ApolloErrorCode.CITIZEN_EXISTS,\n message: intl.formatMessage({\n id: 'citizen.error.exists.message',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.UKNOWN_ERROR,\n message: intl.formatMessage({\n id: 'error.loading.label',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.NON_AUTHORIZED_OPERATION,\n message: intl.formatMessage({\n id: 'error.message.forbidden',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.HEALTH_REGISTRATION_FAILED,\n message: intl.formatMessage({\n id: 'citizen.error.health.message',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.JOB_REGISTRATION_FAILED,\n message: intl.formatMessage({\n id: 'citizen.error.job.message',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.ADDRESS_REGISTRATION_FAILED,\n message: intl.formatMessage({\n id: 'citizen.error.address.message',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n ]);\n },\n });\n\n const updateCitizenProfileMutation = (\n profileInput: UpdateCitizenProfileInput,\n ): Promise> => {\n closeAlert();\n return mutate({\n variables: {\n input: {\n id: profileInput.id,\n birthDate: format(new Date(profileInput.birthDate), 'yyyy-MM-dd'),\n cniNum: profileInput.cniNum,\n lastPcrTest: profileInput.lastPcrTest,\n municipalityId: profileInput.municipalityId,\n fokontanyId: profileInput.fokontanyId,\n addressName: profileInput.addressName,\n jobId: profileInput.jobId,\n jobName: profileInput.jobName,\n offRegNum: profileInput.offRegNum,\n profRegNum: profileInput.profRegNum,\n employerName: profileInput.employerName,\n comorbidityId: profileInput.comorbidityId,\n comorbidityName: profileInput.comorbidityName,\n desiredVaccineId: profileInput.desiredVaccineId,\n healthCenterId: profileInput.healthCenterId,\n },\n },\n });\n };\n\n return {\n successAlert,\n errorAlert,\n closeAlert,\n updateCitizenProfileMutation,\n updateCitizenProfileLoading,\n };\n};\n","import {\n FormikErrors,\n FormikHelpers,\n useFormik as useBaseFormik,\n} from 'formik';\nimport * as yup from 'yup';\nimport { useIntl } from 'react-intl';\nimport { UpdateCitizenProfileInput } from '../../types';\n\ntype CitizenProfileUpdateField = Partial;\nexport type CitizenProfileUpdateFieldError =\n FormikErrors;\n\ninterface Config {\n initialValues: CitizenProfileUpdateField;\n onSubmit: (\n values: CitizenProfileUpdateField,\n formikHelpers: FormikHelpers,\n ) => void;\n}\n\nexport const useFormik = (config: Config) => {\n const intl = useIntl();\n\n const validationSchema = yup.object({\n municipalityId: yup.string().required(\n intl.formatMessage({\n id: 'error.helper.required',\n }),\n ),\n fokontanyId: yup.string().required(\n intl.formatMessage({\n id: 'error.helper.required',\n }),\n ),\n\n jobId: yup.string().required(\n intl.formatMessage({\n id: 'error.helper.required',\n }),\n ),\n });\n\n const formik = useBaseFormik({\n validationSchema: validationSchema,\n validateOnChange: true,\n validate: (values: CitizenProfileUpdateField) => {\n const errors: FormikErrors = {};\n\n if (\n !values.addressName ||\n (values.addressName && values.addressName.trim().length === 0)\n ) {\n errors.addressName = intl.formatMessage({\n id: 'error.helper.required',\n });\n }\n\n if (!values.birthDate) {\n errors.birthDate = intl.formatMessage({\n id: 'error.helper.required',\n });\n }\n\n if (values.birthDate && values.birthDate.toString() === 'Invalid Date') {\n errors.birthDate = intl.formatMessage({\n id: 'common.editor.date.invalid.message',\n });\n }\n\n return errors;\n },\n ...config,\n });\n\n return formik;\n};\n","import Profile from './Profile';\n\nexport default Profile;\n","import { makeStyles } from '@material-ui/core/styles';\n\nconst styles = makeStyles((theme) => ({\n root: {\n flexGrow: 1,\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n alignItems: 'center',\n boxSizing: 'border-box',\n marginBottom: theme.spacing(4),\n },\n paper: {\n maxWidth: theme.spacing(64),\n borderRadius: 8,\n boxShadow: '0px 4px 80px rgba(0, 0, 0, 0.08)',\n },\n container: {\n padding: theme.spacing(5),\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n padding: theme.spacing(3),\n },\n },\n ackPaper: {\n maxWidth: theme.spacing(96),\n },\n formTitle: {\n color: theme.colors.text.black02,\n textAlign: 'center',\n padding: theme.spacing(4, 0, 4, 0),\n fontSize: '24px',\n fontWeight: 600,\n fontStyle: 'normal',\n lineHeight: '24px',\n letterSpacing: '-0.18px',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n fontWeight: 500,\n padding: theme.spacing(2, 0),\n },\n },\n formBox: {\n width: '100%',\n marginTop: theme.spacing(1),\n display: 'flex',\n flexDirection: 'column',\n },\n messages: {\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '18px',\n lineHeight: '24px',\n letterSpacing: '-0.18px',\n wordBreak: 'break-word',\n color: theme.colors.text.black,\n },\n alertContainer: {\n padding: theme.spacing(2, 0, 0, 0),\n },\n actionButton: {\n margin: 0,\n width: '100%',\n marginTop: theme.spacing(3),\n [theme.breakpoints.down(theme.screenbreakpoint.tablet)]: {\n marginTop: theme.spacing(2),\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n width: '100%',\n },\n },\n signLink: {\n textDecoration: 'none',\n },\n}));\n\nexport default styles;\n","import { makeStyles } from '@material-ui/core/styles';\n// import bgImage from '../../assets/images/bg-vakisiny.jpeg';\n\nconst styles = makeStyles((theme) => ({\n root: {\n padding: theme.spacing(7, 16),\n [theme.breakpoints.down(theme.screenbreakpoint.tablet)]: {\n padding: theme.spacing(3, 8),\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n padding: theme.spacing(3, 4),\n },\n },\n title: {\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '24px',\n lineHeight: '24px',\n textAlign: 'center',\n letterSpacing: '0.82px',\n color: theme.colors.text.black02,\n marginBottom: theme.spacing(8),\n [theme.breakpoints.down(theme.screenbreakpoint.tablet)]: {\n marginBottom: theme.spacing(7),\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n marginBottom: theme.spacing(3),\n },\n },\n centent: {\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '18px',\n lineHeight: '24px',\n letterSpacing: '-0.18px',\n wordBreak: 'break-word',\n color: theme.colors.text.black,\n },\n actionButton: {\n width: theme.spacing(21),\n margin: 0,\n [theme.breakpoints.down(theme.screenbreakpoint.tablet)]: {\n marginTop: theme.spacing(2),\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n width: '100%',\n },\n },\n}));\n\nexport default styles;\n","import ForgotPasswordAckPaper from './ForgotPasswordAckPaper';\n\nexport default ForgotPasswordAckPaper;\n","import React, { FC } from 'react';\nimport { FormattedMessage, useIntl } from 'react-intl';\nimport Typography from '@material-ui/core/Typography';\nimport Grid from '@material-ui/core/Grid';\nimport Box from '@material-ui/core/Box';\nimport { useForgotPassword } from '../../../graphql/authentication/hooks';\n\nimport ActionButton from '../../../components/button/ActionButton';\nimport useStyles from './styles';\n\ninterface IForgotPasswordAckPaperProps {\n theUsername: string;\n theEmailAddress: string;\n}\n\nconst ForgotPasswordAckPaper: FC = ({\n theUsername,\n theEmailAddress,\n}) => {\n const intl = useIntl();\n const classes = useStyles();\n\n const { forgotPasswordLoading: isLoading, forgotPasswordMutation } =\n useForgotPassword();\n\n return (\n \n \n {intl.formatMessage({\n id: 'forgotpassword.ack.title.label',\n })}\n \n \n \n {intl.formatMessage(\n {\n id: 'forgotpassword.ack.message.label2',\n },\n {\n theEmailAddress: theEmailAddress,\n },\n )}\n \n \n \n {\n forgotPasswordMutation(theUsername);\n }}\n >\n \n \n \n \n );\n};\n\nexport default ForgotPasswordAckPaper;\n","import ForgotPassword from './ForgotPassword';\n\nexport default ForgotPassword;\n","import React, { FC, useEffect, useState } from 'react';\nimport Grid from '@material-ui/core/Grid';\nimport Box from '@material-ui/core/Box';\nimport Typography from '@material-ui/core/Typography';\nimport { FormattedMessage, useIntl } from 'react-intl';\nimport AccountCircleIcon from '@material-ui/icons/AccountCircle';\nimport InputAdornment from '@material-ui/core/InputAdornment';\nimport { Alert } from '@material-ui/lab';\nimport Paper from '@material-ui/core/Paper';\nimport { Link } from 'react-router-dom';\nimport clsx from 'clsx';\n\nimport { DEFAULT_SIGNIN_ROUTE } from '../../consts';\nimport ActionButton from '../../components/button/ActionButton';\nimport { usePageMetaContext } from '../../modules/PageMetaProvider';\nimport PageContainer from '../../components/page/PageContainer';\nimport { useForgotPassword } from '../../graphql/authentication/hooks';\nimport { HealthProfileForgotPassword_healthProfileForgotPassword } from '../../graphql/authentication/types/HealthProfileForgotPassword';\nimport TextInputField from '../../components/inputfields/TextInputField';\nimport useStyles from './styles';\nimport { useFormik } from './formik';\nimport ForgotPasswordAckPaper from './ForgotPasswordAckPaper';\n\nconst ForgotPassword: FC = () => {\n const intl = useIntl();\n\n // Page context handler\n const { setPathLabels } = usePageMetaContext();\n const classes = useStyles();\n const [showAckForm, setShowAckForm] = useState(false);\n const [theEmailAddress, setTheEmailAddress] = useState();\n\n // Update page context\n useEffect(() => {\n setPathLabels([\n intl.formatMessage({\n id: 'forgotpassword.title.label',\n }),\n ]);\n }, []);\n\n const {\n forgotPasswordLoading: isLoading,\n forgotPasswordMutation,\n closeAlert,\n errorAlert,\n } = useForgotPassword({\n onSuccess: (\n healthProfileForgotPassword?: HealthProfileForgotPassword_healthProfileForgotPassword,\n ) => {\n if (healthProfileForgotPassword) {\n setShowAckForm(true);\n setTheEmailAddress(healthProfileForgotPassword.emailAddress);\n }\n },\n });\n\n // Of formik as form state handler\n const formik = useFormik({\n onSubmit: async (values, helper) => {\n forgotPasswordMutation(values.username);\n },\n });\n\n return (\n \n \n \n {theEmailAddress && showAckForm ? (\n \n ) : (\n \n \n {intl.formatMessage({\n id: 'forgotpassword.title.label',\n })}\n \n \n {intl.formatMessage({\n id: 'forgotpassword.hint.message',\n })}\n \n {errorAlert && (\n \n closeAlert()}>\n {errorAlert}\n \n \n )}\n \n \n \n \n ),\n }}\n />\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n )}\n \n \n \n );\n};\n\nexport default ForgotPassword;\n","import { FormikHelpers, useFormik as useBaseFormik } from 'formik';\nimport { useIntl } from 'react-intl';\nimport * as yup from 'yup';\n\ninterface ForgotPasswordVariables {\n username: string;\n}\n\ninterface Config {\n onSubmit: (\n values: ForgotPasswordVariables,\n formikHelpers: FormikHelpers,\n ) => void;\n}\n\nexport const useFormik = (config: Config) => {\n const intl = useIntl();\n\n const validationSchema = yup.object({\n username: yup\n .string()\n .matches(\n /^[0-9ABCDEFabcdef]{12}|^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-_.]+\\.[a-zA-Z0-9-]*$/,\n intl.formatMessage({\n id: 'forgotpassword.username.invalid.message',\n }),\n )\n // .length(\n // 12,\n // intl.formatMessage({\n // id: 'forgotpassword.username.invalid.message',\n // }),\n // )\n .required(\n intl.formatMessage({\n id: 'forgotpassword.username.required.message',\n }),\n ),\n });\n\n const formik = useBaseFormik({\n initialValues: {\n username: '',\n },\n validationSchema: validationSchema,\n ...config,\n });\n\n return formik;\n};\n","import { makeStyles } from '@material-ui/core/styles';\n\nconst styles = makeStyles((theme) => ({\n root: {\n flexGrow: 1,\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n alignItems: 'center',\n boxSizing: 'border-box',\n marginBottom: theme.spacing(4),\n },\n paper: {\n maxWidth: theme.spacing(64),\n borderRadius: 8,\n boxShadow: '0px 4px 80px rgba(0, 0, 0, 0.08)',\n },\n container: {\n padding: theme.spacing(5),\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n padding: theme.spacing(3),\n },\n },\n ackPaper: {\n maxWidth: theme.spacing(96),\n },\n formTitle: {\n color: theme.colors.text.black02,\n textAlign: 'center',\n padding: theme.spacing(4, 0, 4, 0),\n fontSize: '24px',\n fontWeight: 600,\n fontStyle: 'normal',\n lineHeight: '24px',\n letterSpacing: '-0.18px',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n fontWeight: 500,\n padding: theme.spacing(2, 0),\n },\n },\n formBox: {\n width: '100%',\n marginTop: theme.spacing(1),\n display: 'flex',\n flexDirection: 'column',\n },\n messages: {\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '18px',\n lineHeight: '24px',\n letterSpacing: '-0.18px',\n wordBreak: 'break-word',\n color: theme.colors.text.black,\n },\n alertContainer: {\n padding: theme.spacing(2, 0, 0, 0),\n },\n actionButton: {\n margin: 0,\n width: '100%',\n marginTop: theme.spacing(3),\n [theme.breakpoints.down(theme.screenbreakpoint.tablet)]: {\n marginTop: theme.spacing(2),\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n width: '100%',\n },\n },\n signLink: {\n textDecoration: 'none',\n },\n}));\n\nexport default styles;\n","import { makeStyles } from '@material-ui/core/styles';\n// import bgImage from '../../assets/images/bg-vakisiny.jpeg';\n\nconst styles = makeStyles((theme) => ({\n root: {\n padding: theme.spacing(7, 16),\n [theme.breakpoints.down(theme.screenbreakpoint.tablet)]: {\n padding: theme.spacing(3, 8),\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n padding: theme.spacing(3, 4),\n },\n },\n title: {\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '24px',\n lineHeight: '24px',\n textAlign: 'center',\n letterSpacing: '0.82px',\n color: theme.colors.text.black02,\n marginBottom: theme.spacing(8),\n [theme.breakpoints.down(theme.screenbreakpoint.tablet)]: {\n marginBottom: theme.spacing(7),\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n marginBottom: theme.spacing(3),\n },\n },\n centent: {\n fontFamily: theme.fonts.default,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '18px',\n lineHeight: '24px',\n letterSpacing: '-0.18px',\n wordBreak: 'break-word',\n color: theme.colors.text.black,\n },\n actionButton: {\n margin: 0,\n marginTop: theme.spacing(3),\n [theme.breakpoints.down(theme.screenbreakpoint.tablet)]: {\n marginTop: theme.spacing(2),\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n width: '100%',\n },\n },\n signLink: {\n textDecoration: 'none',\n },\n}));\n\nexport default styles;\n","import ResetPasswordAckPaper from './ResetPasswordAckPaper';\n\nexport default ResetPasswordAckPaper;\n","import React, { FC } from 'react';\nimport { FormattedMessage, useIntl } from 'react-intl';\nimport Typography from '@material-ui/core/Typography';\nimport Grid from '@material-ui/core/Grid';\nimport Box from '@material-ui/core/Box';\nimport { Link } from 'react-router-dom';\n\nimport { DEFAULT_SIGNIN_ROUTE } from '../../../consts';\nimport ActionButton from '../../../components/button/ActionButton';\nimport useStyles from './styles';\n\nconst ResetPasswordAckPaper: FC = () => {\n const intl = useIntl();\n const classes = useStyles();\n const isLoading = false;\n\n return (\n \n \n {intl.formatMessage({\n id: 'resetpassword.ack.title.label',\n })}\n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default ResetPasswordAckPaper;\n","import ResetPassword from './ResetPassword';\n\nexport default ResetPassword;\n","import React, { FC, useEffect, useState } from 'react';\nimport Grid from '@material-ui/core/Grid';\nimport Box from '@material-ui/core/Box';\nimport Typography from '@material-ui/core/Typography';\nimport { FormattedMessage, useIntl } from 'react-intl';\nimport Visibility from '@material-ui/icons/Visibility';\nimport VisibilityOff from '@material-ui/icons/VisibilityOff';\nimport IconButton from '@material-ui/core/IconButton';\nimport InputAdornment from '@material-ui/core/InputAdornment';\nimport { Alert } from '@material-ui/lab';\nimport Paper from '@material-ui/core/Paper';\nimport { Link, useParams } from 'react-router-dom';\nimport clsx from 'clsx';\n\nimport { DEFAULT_SIGNIN_ROUTE } from '../../consts';\nimport ActionButton from '../../components/button/ActionButton';\nimport { usePageMetaContext } from '../../modules/PageMetaProvider';\nimport PageContainer from '../../components/page/PageContainer';\nimport {\n usePasswordResetCheck,\n usePasswordReset,\n} from '../../graphql/authentication/hooks';\nimport TextInputField from '../../components/inputfields/TextInputField';\nimport useStyles from './styles';\nimport { useFormik } from './formik';\nimport ResetPasswordAckPaper from './ResetPasswordAckPaper';\n\ntype PasswordField = 'newpassword' | 'confirmpassword';\n\ninterface IParams {\n resetToken: string;\n}\n\nconst ResetPassword: FC = () => {\n const intl = useIntl();\n\n const [showPassword, setShowPassword] = React.useState<\n Record\n >({\n newpassword: false,\n confirmpassword: false,\n });\n\n const [showAckForm, setShowAckForm] = useState(false);\n\n const { resetToken } = useParams();\n\n // Page context handler\n const { setPathLabels } = usePageMetaContext();\n const classes = useStyles();\n\n // Update page context\n useEffect(() => {\n setPathLabels([\n intl.formatMessage({\n id: 'resetpassword.title.label',\n }),\n ]);\n }, []);\n\n // Check if the password reset link has not expired\n const {\n isLoading: passwordResetCheckIsLoading,\n isValid: passwordResetTokenIsValid,\n errorAlert: passwordResetCheckErrorAlert,\n closeAlert: passwordResetCheckCloseAlert,\n } = usePasswordResetCheck(resetToken);\n\n // Reset the password\n const {\n passwordResetLoading,\n passwordResetMutation,\n closeAlert: passwordResetCloseAlert,\n errorAlert: passwordResetErrorAlert,\n } = usePasswordReset({\n onSuccess: () => {\n setShowAckForm(true);\n },\n });\n\n // Of formik as form state handler\n const formik = useFormik({\n onSubmit: async (values, helper) => {\n passwordResetMutation(\n resetToken,\n values.newPassword,\n values.confirmPassword,\n );\n },\n });\n\n const toggleShowPassword = (fieldName: PasswordField) => () => {\n setShowPassword((oldState) => ({\n ...oldState,\n [fieldName]: !oldState[fieldName],\n }));\n };\n\n const isLoading = passwordResetCheckIsLoading || passwordResetLoading;\n const errorAlert = passwordResetCheckErrorAlert || passwordResetErrorAlert;\n const closeAlert = () => {\n passwordResetCheckCloseAlert();\n passwordResetCloseAlert();\n };\n\n return (\n \n \n \n {showAckForm ? (\n \n ) : (\n \n \n {intl.formatMessage({\n id: 'resetpassword.title.label',\n })}\n \n \n {intl.formatMessage({\n id: 'forgotpassword.hint.message',\n })}\n \n {errorAlert && (\n \n closeAlert()}>\n {errorAlert}\n \n \n )}\n \n \n \n {showPassword.newpassword ? (\n \n ) : (\n \n )}\n \n \n ),\n }}\n />\n \n \n {showPassword.confirmpassword ? (\n \n ) : (\n \n )}\n \n \n ),\n }}\n />\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n )}\n \n \n \n );\n};\n\nexport default ResetPassword;\n","import React from 'react';\nimport { useQuery } from '@apollo/client';\nimport { useIntl } from 'react-intl';\nimport { ApolloErrorCode } from '../../../consts';\nimport { useErrorHanlder } from '../../../modules/hooks';\n\nimport { USER_CHECK_PASSWORD_RESET } from '../query';\nimport {\n HealthProfilePasswordResetCheck,\n HealthProfilePasswordResetCheckVariables,\n} from '../types/HealthProfilePasswordResetCheck';\n\nexport const usePasswordResetCheck = (\n resetToken?: string,\n): {\n isLoading: boolean;\n isValid?: boolean;\n errorAlert?: string | null;\n closeAlert: () => void;\n} => {\n const intl = useIntl();\n const handleError = useErrorHanlder();\n const [errorAlert, setErrorAlert] = React.useState();\n\n const closeAlert = () => {\n setErrorAlert(null);\n };\n\n const { data, loading } = useQuery<\n HealthProfilePasswordResetCheck,\n HealthProfilePasswordResetCheckVariables\n >(USER_CHECK_PASSWORD_RESET, {\n variables: { resetToken: resetToken ?? '' },\n fetchPolicy: 'network-only',\n skip: !resetToken,\n onError: (error) => {\n handleError(error, [\n {\n code: ApolloErrorCode.INVALID_PASSWORDRESET_TOKEN,\n message: intl.formatMessage({\n id: 'forgotpassword.invalid.link.message',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.UKNOWN_ERROR,\n message: intl.formatMessage({\n id: 'error.loading.label',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n ]);\n },\n });\n\n return {\n errorAlert,\n closeAlert,\n isLoading: loading,\n isValid: data?.healthProfilePasswordResetCheck?.isValid ?? undefined,\n };\n};\n","import React from 'react';\nimport { useMutation, FetchResult } from '@apollo/client';\nimport { useSnackbar } from 'notistack';\nimport { useIntl } from 'react-intl';\n\nimport { useErrorHanlder } from '../../../modules/hooks';\nimport { ApolloErrorCode } from '../../../consts';\nimport { USER_RESET_PASSWORD } from '../mutation';\nimport {\n HealthProfileResetPassword,\n HealthProfileResetPasswordVariables,\n HealthProfileResetPassword_healthProfileResetPassword_response,\n} from '../types/HealthProfileResetPassword';\n\nexport const usePasswordReset = (\n options?: IMutationOptions,\n): {\n passwordResetMutation: (\n resetToken: string,\n newPassword: string,\n confirmPassword: string,\n ) => Promise>;\n passwordResetLoading: boolean;\n errorAlert?: string | null;\n closeAlert: () => void;\n} => {\n const intl = useIntl();\n const { enqueueSnackbar } = useSnackbar();\n const handleError = useErrorHanlder();\n\n const [errorAlert, setErrorAlert] = React.useState();\n\n const closeAlert = () => {\n setErrorAlert(null);\n };\n\n const [mutate, { loading: passwordResetLoading }] = useMutation<\n HealthProfileResetPassword,\n HealthProfileResetPasswordVariables\n >(USER_RESET_PASSWORD, {\n onCompleted: (data) => {\n if (data?.healthProfileResetPassword?.response?.success) {\n enqueueSnackbar(\n intl.formatMessage({\n id: 'resetpassword.ack.title.label',\n }),\n {\n variant: 'success',\n anchorOrigin: { horizontal: 'center', vertical: 'top' },\n },\n );\n options?.onSuccess?.(data.healthProfileResetPassword.response);\n }\n },\n onError: (error) => {\n handleError(error, [\n {\n code: ApolloErrorCode.INVALID_PASSWORDRESET_TOKEN,\n message: intl.formatMessage({\n id: 'forgotpassword.invalid.link.message',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.PASSWORD_INVALID,\n message: intl.formatMessage({\n id: 'resetpassword.newpassword.invalid.message',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.PASSWORD_NOT_MATCH,\n message: intl.formatMessage({\n id: 'resetpassword.confirmpassword.invalid.message',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n\n {\n code: ApolloErrorCode.INVALID_EMAIL_ADDRESS,\n message: intl.formatMessage({\n id: 'forgotpassword.email.not.trusted.message',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n {\n code: ApolloErrorCode.UKNOWN_ERROR,\n message: intl.formatMessage({\n id: 'error.message.unknow',\n }),\n callback: (error, message) => {\n setErrorAlert(message);\n },\n },\n ]);\n },\n });\n\n const passwordResetMutation = (\n resetToken: string,\n newPassword: string,\n confirmPassword: string,\n ): Promise> => {\n return mutate({\n variables: { resetToken, confirmPassword, newPassword },\n });\n };\n\n return {\n passwordResetMutation,\n passwordResetLoading,\n errorAlert,\n closeAlert,\n };\n};\n","import {\n FormikErrors,\n FormikHelpers,\n useFormik as useBaseFormik,\n} from 'formik';\nimport { useIntl } from 'react-intl';\nimport * as yup from 'yup';\n\ninterface ResetPasswordVariables {\n newPassword: string;\n confirmPassword: string;\n}\n\ninterface Config {\n onSubmit: (\n values: ResetPasswordVariables,\n formikHelpers: FormikHelpers,\n ) => void;\n}\n\nexport const useFormik = (config: Config) => {\n const intl = useIntl();\n\n const validationSchema = yup.object({\n newPassword: yup\n .string()\n .min(\n 4,\n intl.formatMessage({\n id: 'changepassword.error.min.message',\n }),\n )\n .max(\n 32,\n intl.formatMessage({\n id: 'changepassword.error.max.message',\n }),\n )\n .required(\n intl.formatMessage({\n id: 'changepassword.error.newpassword.required.message',\n }),\n ),\n confirmPassword: yup.string().required(\n intl.formatMessage({\n id: 'changepassword.error.confirmpassword.required.message',\n }),\n ),\n });\n\n const formik = useBaseFormik({\n initialValues: {\n newPassword: '',\n confirmPassword: '',\n },\n validationSchema: validationSchema,\n validate: (values: ResetPasswordVariables) => {\n const errors: FormikErrors = {};\n if (\n values.newPassword &&\n values.confirmPassword &&\n values.newPassword !== values.confirmPassword\n ) {\n errors.confirmPassword = intl.formatMessage({\n id: 'changepassword.error.confirmpassword.notmatch.message',\n });\n }\n\n return errors;\n },\n ...config,\n });\n\n return formik;\n};\n","import { makeStyles } from '@material-ui/core/styles';\n\nconst styles = makeStyles((theme) => ({\n root: {\n flexGrow: 1,\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n alignItems: 'center',\n boxSizing: 'border-box',\n marginBottom: theme.spacing(4),\n },\n paper: {\n width: theme.spacing(98),\n borderRadius: 8,\n alignContent: 'center',\n boxShadow: '0px 4px 80px rgba(0, 0, 0, 0.08)',\n marginTop: theme.spacing(2),\n [theme.breakpoints.down('sm')]: {\n maxWidth: theme.screenbreakpoint.smartphone,\n width: 'auto',\n },\n },\n toolbar: {\n marginTop: theme.spacing(2),\n },\n content: {\n position: 'relative',\n textAlign: 'center',\n padding: theme.spacing(4),\n justifyContent: 'center',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n padding: theme.spacing(3),\n },\n },\n printablePage: {\n position: 'relative',\n maxWidth: '902px',\n // minWidth: '512px',\n },\n contentLogo: {\n position: 'absolute',\n bottom: '7%',\n left: '0',\n right: '0',\n margin: 'auto',\n },\n vaccineCertImage: {\n width: '100%',\n height: 'auto',\n borderRadius: 8,\n },\n headerLogo: {\n display: 'flex',\n flexDirection: 'row',\n position: 'absolute',\n left: theme.spacing(4),\n '& img': {\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n width: `${theme.spacing(12)} !important`,\n height: `${theme.spacing(12)} !important`,\n },\n },\n },\n headerLogoRight: {\n display: 'flex',\n flexDirection: 'row',\n position: 'absolute',\n right: theme.spacing(4),\n '& img': {\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n width: `${theme.spacing(12)} !important`,\n height: `${theme.spacing(12)} !important`,\n },\n },\n },\n\n prmLogo: {\n '& img': {\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n // width: theme.spacing(8),\n },\n },\n },\n marginPrimary: {\n marginTop: theme.spacing(4),\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n marginTop: theme.spacing(2),\n },\n },\n marginSecondary: {\n marginTop: theme.spacing(3),\n },\n mainTitle: {\n fontSize: '24px',\n fontWeight: 600,\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n fontSize: 14,\n },\n },\n mainSubTitle: {\n lineHeight: 0.6,\n fontSize: '24px',\n fontWeight: 400,\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n fontSize: 14,\n lineHeight: 0.6,\n },\n },\n mainSubTitleVirus: {\n lineHeight: 1.1,\n fontSize: '24px',\n fontWeight: 400,\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n fontSize: 14,\n lineHeight: 1.1,\n },\n },\n mainLabel: {\n fontStyle: 'italic',\n },\n mainValue: {\n fontWeight: 600,\n fontSize: '24px',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n fontSize: 17,\n },\n },\n mainLocalization: {\n fontWeight: 600,\n fontSize: '22px',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n fontSize: 17,\n },\n },\n contentQRCode: {\n flexGrow: 1,\n padding: theme.spacing(0, 5, 0, 5),\n height: theme.spacing(21),\n alignItems: 'center',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n padding: theme.spacing(3),\n height: theme.spacing(28),\n },\n position: 'relative',\n },\n footerLeftLogo: {\n display: 'flex',\n flexDirection: 'row',\n position: 'absolute',\n left: theme.spacing(4),\n '& canvas': {\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n width: `${theme.spacing(12)} !important`,\n height: `${theme.spacing(12)} !important`,\n },\n },\n },\n signatureContainer: {\n display: 'flex',\n flexDirection: 'column',\n [theme.breakpoints.down(690)]: {\n paddingLeft: theme.spacing(14),\n },\n },\n table: {\n width: 'auto',\n margin: '0 auto',\n },\n tableRow: {\n '&:last-child th, &:last-child td': {\n borderBottom: 0,\n },\n '& th': {\n fontWeight: 600,\n },\n },\n signatureText: {\n fontSize: '11px',\n fontStyle: 'italic',\n whiteSpace: 'nowrap',\n zIndex: 10,\n width: 'min-content',\n [theme.breakpoints.down(690)]: {\n whiteSpace: 'normal',\n width: 'fit-content',\n },\n },\n stamp: {\n width: '144px',\n height: '144px',\n },\n cellDose: {\n fontWeight: 500,\n },\n alertContainer: {\n padding: theme.spacing(2, 0, 0, 0),\n },\n buttonDownload: {\n display: 'flex',\n alignContent: 'flex-end',\n },\n printBodyClass: {\n padding: theme.spacing(6),\n '& div > div.only-on-print': {\n display: 'block',\n },\n '& div.fix-print-padding': {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(0),\n marginTop: theme.spacing(0),\n marginBottom: theme.spacing(0),\n },\n '& p.fix-print-font-size': {\n fontSize: '18px',\n },\n },\n}));\n\nexport default styles;\n","import CardCertificate from './CardCertificate';\n\nexport default CardCertificate;\n","import React, { FC } from 'react';\nimport { useIntl } from 'react-intl';\nimport { Helmet } from 'react-helmet';\n\nimport { REACT_APP_REST_URL } from '../../../config';\nimport useStyles from '../styles';\n\ninterface ICardCertificateProps {\n printRef: React.RefObject | null;\n accessKey: string;\n}\n\nconst CardCertificate: FC = ({\n printRef,\n accessKey,\n}) => {\n const classes = useStyles();\n const intl = useIntl();\n\n return (\n <>\n \n \n {intl.formatMessage({ id: 'common.card.title.certificate' })}\n \n \n
\n \n
\n \n );\n};\n\nexport default CardCertificate;\n","import React, { FC, useRef } from 'react';\nimport { useParams, Link } from 'react-router-dom';\nimport Grid from '@material-ui/core/Grid';\nimport Paper from '@material-ui/core/Paper';\nimport Box from '@material-ui/core/Box';\nimport { Alert } from '@material-ui/lab';\nimport ReactToPrint from 'react-to-print';\nimport { FormattedMessage, useIntl } from 'react-intl';\nimport GetAppIcon from '@material-ui/icons/GetApp';\nimport ArrowRightAltIcon from '@material-ui/icons/ArrowBack';\n\nimport LabeledIconButton from '../../components/button/LabeledIconButton';\nimport PageContainer from '../../components/page/PageContainer';\nimport InfiniteLoading from '../../components/InfiniteLoading';\nimport { useCitizenVaccinationProfile } from '../../graphql/citizen/hooks';\nimport { useAuthContext } from '../../modules/AuthProvider';\nimport CardCertificate from './CardCertificate';\nimport useStyles from './styles';\nimport { DEFAULT_HOME_ROUTE } from '../../consts';\nimport { useMyProfile } from '../../graphql/authentication/hooks';\nimport { Typography } from '@material-ui/core';\n\ninterface IParams {\n accessKey: string;\n}\n\nconst VaccinationCard: FC = () => {\n const classes = useStyles();\n const { accessKey } = useParams();\n const componentRef = useRef(null);\n useMyProfile();\n const { currentUser } = useAuthContext();\n const intl = useIntl();\n\n // Fetch citizen's profile info by access key\n const { isLoading, errorAlert, closeAlert, citizenProfile } =\n useCitizenVaccinationProfile(accessKey);\n\n const canGetCertificate = (citizenProfile) => {\n console.log('CITIZEN: ', citizenProfile);\n const civilState = citizenProfile?.lastName ? true : false;\n const healthState =\n citizenProfile.health?.vaccineEvents &&\n citizenProfile.health?.vaccineEvents.length > 0\n ? true\n : false;\n\n return civilState && healthState ? true : false;\n };\n\n return (\n \n {isLoading ? (\n \n ) : errorAlert || !citizenProfile ? (\n \n \n \n closeAlert()}>\n {errorAlert}\n \n \n \n \n ) : (\n <>\n {!canGetCertificate(citizenProfile) ? (\n \n \n \n ) : (\n <>\n \n {currentUser && (\n \n ,\n }}\n >\n \n \n \n )}\n (\n ,\n }}\n >\n \n \n )}\n documentTitle={\n citizenProfile.epiId +\n citizenProfile.lastName +\n citizenProfile.firstName\n }\n bodyClass={classes.printBodyClass}\n content={() => componentRef.current}\n />\n \n \n \n \n \n )}\n \n )}\n \n );\n};\n\nconst VaccinationCardWrapper: FC = () => {\n const classes = useStyles();\n return (\n \n \n \n \n \n );\n};\n\nexport default VaccinationCardWrapper;\n","import VaccinationCard from './VaccinationCard';\n\nexport default VaccinationCard;\n","import { makeStyles } from '@material-ui/core/styles';\n\nconst styles = makeStyles((theme) => ({\n root: {\n flexGrow: 1,\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'start',\n alignItems: 'center',\n boxSizing: 'border-box',\n marginBottom: theme.spacing(4),\n },\n controlPanel: {\n maxWidth: theme.spacing(160),\n width: '100%',\n paddingBottom: theme.spacing(3),\n alignContent: 'center',\n },\n paper: {\n maxWidth: theme.spacing(160),\n borderRadius: 8,\n alignContent: 'center',\n boxShadow: '0px 4px 80px rgba(0, 0, 0, 0.08)',\n [theme.breakpoints.down('sm')]: {\n width: 'auto',\n },\n },\n content: {\n position: 'relative',\n display: 'flex',\n flexDirection: 'row',\n padding: theme.spacing(2, 4),\n justifyContent: 'center',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n padding: theme.spacing(3),\n flexDirection: 'column',\n },\n },\n technicalLabel: {\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '16px',\n lineHeight: '24px',\n textAlign: 'left',\n color: theme.palette.secondary.main,\n },\n faqLabel: {\n paddingTop: theme.spacing(2),\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '36px',\n lineHeight: '44px',\n textAlign: 'left',\n letterSpacing: '-0.02em',\n color: theme.colors.text.black00,\n },\n captionMessage: {\n paddingTop: theme.spacing(2),\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '18px',\n lineHeight: '28px',\n textAlign: 'left',\n color: theme.colors.text.black004,\n '& a': {\n color: theme.palette.secondary.main,\n },\n },\n faqCuriousIndividu: {\n width: 'auto',\n height: 'auto',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone + 150)]: {\n width: '217px',\n height: '308px',\n },\n },\n controlForm: {\n flexBasis: '37%',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone + 150)]: {\n flexBasis: '25%',\n },\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n textAlign: 'center',\n },\n },\n qaPanel: {\n flexGrow: 1,\n paddingLeft: theme.spacing(8),\n paddingTop: theme.spacing(2),\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n paddingTop: theme.spacing(3),\n paddingLeft: 0,\n },\n },\n qaEmptyPanel: {\n display: 'flex',\n flexDirection: 'column',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n alignItem: 'center',\n },\n },\n backLink: {\n textDecoration: 'none',\n },\n faqEmptyImage: {\n maxWidth: theme.spacing(60),\n maxHeight: theme.spacing(44),\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n width: '100%',\n },\n },\n emptyPrimaryMessage: {\n maxWidth: theme.spacing(60),\n paddingTop: theme.spacing(8),\n paddingBottom: theme.spacing(8),\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '36px',\n lineHeight: '44px',\n textAlign: 'left',\n color: theme.colors.text.black00,\n letterSpacing: '-0.02em',\n },\n emptySecondaryMessage: {\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '18px',\n lineHeight: '28px',\n textAlign: 'left',\n color: theme.colors.text.black004,\n },\n}));\n\nexport default styles;\n","import { gql } from '@apollo/client';\n\nexport const FAQ_INFO_FRAGMENT = gql`\n fragment FaqObjTypeFragment on FaqObjType {\n id\n question\n questionMg\n answer\n answerMg\n categId\n }\n`;\n\nexport const FAQCATEG_INFO_FRAGMENT = gql`\n fragment FaqCategObjTypeFragment on FaqCategObjType {\n id\n name\n nameMg\n }\n`;\n","import { gql } from '@apollo/client';\nimport { FAQ_INFO_FRAGMENT, FAQCATEG_INFO_FRAGMENT } from './fragment';\n\nexport const GET_ALL_FAQ = gql`\n query GetAllFaq {\n faqs {\n ...FaqObjTypeFragment\n }\n faqCategs {\n ...FaqCategObjTypeFragment\n }\n }\n ${FAQ_INFO_FRAGMENT}\n ${FAQCATEG_INFO_FRAGMENT}\n`;\n","export default __webpack_public_path__ + \"static/media/faq-curious-individu.c0c44725.svg\";","export default __webpack_public_path__ + \"static/media/faq-empty.24055d89.svg\";","import { makeStyles } from '@material-ui/core/styles';\n\ninterface IProps {\n open: boolean;\n}\n\nconst useStyles = makeStyles((theme) => ({\n root: (props: IProps) => ({\n position: 'relative',\n borderRadius: theme.spacing(2),\n padding: theme.spacing(1),\n marginBottom: props.open ? theme.spacing(4) : theme.spacing(2),\n background: props.open\n ? 'linear-gradient(180deg, #FFFFFF 0%, #F7F4F4 100%)'\n : 'none',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n padding: theme.spacing(3, 2, 3, 2),\n },\n }),\n boxHead: {\n position: 'relative',\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'start',\n },\n typoQuestion: (props: IProps) => ({\n flexGrow: 1,\n fontWeight: 500,\n marginBotton: theme.spacing(4),\n fontSize: '18px',\n lineHeight: '25px',\n color: props.open ? theme.colors.text.black004 : theme.colors.text.black00,\n marginRight: theme.spacing(3),\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n marginRight: theme.spacing(2),\n },\n }),\n typoAnswer: (props: IProps) => ({\n fontWeight: 500,\n fontSize: '18px',\n lineHeight: '25px',\n color: props.open ? theme.colors.text.black00 : theme.colors.text.black004,\n }),\n dropDownIcon: (props: IProps) => ({\n fontSize: '20px',\n transition: theme.transitions.create(['transform'], {\n duration: theme.transitions.duration.short,\n }),\n transform: props.open ? 'rotate(-180deg)' : 'rotate(0)',\n }),\n}));\n\nexport default useStyles;\n","import FaqItem from './FaqItem';\n\nexport default FaqItem;\n","import React, { FC, useState } from 'react';\nimport Box from '@material-ui/core/Box';\nimport Collapse from '@material-ui/core/Collapse';\nimport IconButton from '@material-ui/core/IconButton';\nimport Typography from '@material-ui/core/Typography';\nimport RemoveCircleOutlineIcon from '@material-ui/icons/RemoveCircleOutline';\nimport AddCircleOutlineIcon from '@material-ui/icons/AddCircleOutline';\n\nimport useStyles from './styles';\n\ninterface IProps {\n question: string;\n answer: string;\n}\n\nconst FaqItem: FC = ({ question, answer }) => {\n const [isOpen, setOpen] = useState(false);\n const classes = useStyles({ open: isOpen });\n\n const toggleOpen = () => {\n setOpen((currentState) => !currentState);\n };\n return (\n \n \n {question}\n \n {isOpen ? (\n \n ) : (\n \n )}\n \n \n \n \n \n \n );\n};\n\nexport default FaqItem;\n","import Faq from './Faq';\n\nexport default Faq;\n","import React, { FC, useEffect, useState } from 'react';\nimport Paper from '@material-ui/core/Paper';\nimport Box from '@material-ui/core/Box';\nimport { useIntl } from 'react-intl';\nimport { Link } from 'react-router-dom';\nimport InputAdornment from '@material-ui/core/InputAdornment';\nimport SearchIcon from '@material-ui/icons/Search';\nimport Typography from '@material-ui/core/Typography';\nimport ArrowBackIcon from '@material-ui/icons/ArrowBack';\n\nimport ConfirmButton from '../../components/button/ConfirmButton';\nimport AutoCompleteField from '../../components/inputfields/AutoCompleteField';\nimport TextInputField from '../../components/inputfields/TextInputField';\n\nimport PageContainer from '../../components/page/PageContainer';\nimport useStyles from './styles';\nimport { useAllFaq } from '../../graphql/faq/hooks';\nimport { usePageMetaContext } from '../../modules/PageMetaProvider';\nimport FaqCuriousIndividu from '../../assets/images/faq-curious-individu.svg';\nimport FaqEmpty from '../../assets/images/faq-empty.svg';\nimport FaqItem from './FaqItem';\nimport { DEFAULT_SIGNIN_ROUTE } from '../../consts';\n\nconst Faq: FC = () => {\n const classes = useStyles();\n const intl = useIntl();\n const [faqCategory, setFaqCategory] = useState();\n const [searchQuery, setSearchQuery] = useState();\n const { faqCategs, faqs, isLoading: isLoading } = useAllFaq();\n\n // Page context handler\n const { setPathLabels } = usePageMetaContext();\n\n // Update page context\n useEffect(() => {\n setPathLabels([\n intl.formatMessage({\n id: 'faq.page.title',\n }),\n ]);\n }, [intl.locale]);\n\n const faqList = faqs\n .filter(\n (qaItem) =>\n (faqCategory && qaItem.categId === faqCategory) || !faqCategory,\n )\n .filter(\n (qaItem) =>\n (searchQuery &&\n (qaItem.question.toLowerCase().includes(searchQuery.toLowerCase()) ||\n qaItem.answer.toLowerCase().includes(searchQuery.toLowerCase()))) ||\n !searchQuery,\n );\n\n return (\n <>\n \n \n \n \n }>\n {intl.formatMessage({\n id: 'faq.back.button.label',\n })}\n \n \n \n \n \n \n \n {intl.formatMessage({\n id: 'faq.technical.support',\n })}\n \n \n {intl.formatMessage({\n id: 'faq.form.title',\n })}\n \n item?.id ?? ''}\n getItemLabel={(item) => item?.name ?? ''}\n onSelectionChange={(selectedVal) => {\n setFaqCategory(selectedVal);\n }}\n placeholder={intl.formatMessage({\n id: 'faq.choose.category.label',\n })}\n />\n setSearchQuery(evt.target.value)}\n placeholder={intl.formatMessage({\n id: 'faq.choose.theme.label',\n })}\n InputProps={{\n endAdornment: (\n \n \n \n ),\n }}\n />\n \n \n \n \n {faqList.map((qaItem) => (\n \n ))}\n {faqList.length === 0 && (\n \n \n \n {intl.formatMessage({\n id: 'faq.empty.primary.message',\n })}\n \n \n {intl.formatMessage({\n id: 'faq.empty.secondary.message',\n })}\n \n \n )}\n \n \n \n \n \n \n );\n};\n\nexport default Faq;\n","import { useQuery } from '@apollo/client';\nimport { useIntl } from 'react-intl';\nimport { ApolloErrorCode } from '../../../consts';\nimport { useIntlLabel } from '../../../locales';\nimport { useErrorHanlder } from '../../../modules/hooks';\n\nimport { GET_ALL_FAQ } from '../query';\nimport {\n GetAllFaq,\n GetAllFaq_faqs,\n GetAllFaq_faqCategs,\n} from '../types/GetAllFaq';\n\nexport const useAllFaq = (): {\n isLoading: boolean;\n faqs: GetAllFaq_faqs[];\n faqCategs: GetAllFaq_faqCategs[];\n refetch: () => void;\n} => {\n // Error handler\n const handleError = useErrorHanlder();\n\n // Intl\n const intl = useIntl();\n const intlLabel = useIntlLabel();\n\n // Graphql query\n const { data, loading, refetch } = useQuery(GET_ALL_FAQ, {\n onError: (error) => {\n handleError(error, [\n {\n code: ApolloErrorCode.UKNOWN_ERROR,\n message: intl.formatMessage({\n id: 'error.loading.label',\n }),\n },\n ]);\n },\n });\n\n return {\n isLoading: loading,\n faqs:\n data?.faqs?.map?.((faqItem) => ({\n ...faqItem,\n answer: intlLabel(faqItem, 'answer'),\n question: intlLabel(faqItem, 'question'),\n })) ?? [],\n faqCategs:\n data?.faqCategs?.map?.((categItem) => ({\n ...categItem,\n name: intlLabel(categItem, 'name'),\n })) ?? [],\n refetch,\n };\n};\n","import { makeStyles } from '@material-ui/core/styles';\n\nconst useStyles = makeStyles((theme) => ({\n container: {\n backgroundColor: theme.palette.background.paper,\n padding: theme.spacing(8, 0, 6),\n },\n icon: {\n marginRight: '20px',\n },\n buttons: {\n marginTop: '40px',\n },\n cardGrid: {\n padding: '20px 0',\n },\n card: {\n height: '100%',\n display: 'flex',\n flexDirection: 'column',\n borderRadius: 8,\n boxShadow: '0px 4px 80px rgba(0, 0, 0, 0.08)',\n background: '#fff',\n cursor: 'pointer',\n '&:hover': {\n background: '#6eb3b3',\n color: '#fff',\n },\n },\n cardContent: {\n flexGrow: 1,\n textAlign: 'center',\n margin: '40px 0px 180px 0px',\n fontStyle: 'bold',\n },\n cardMedia: {\n textAlign: 'center',\n marginBottom: '40px',\n },\n choiceCertificateHeading: {\n marginBottom: '100px',\n },\n\n cardCaption: {\n textAlign: 'center',\n padding: theme.spacing(4, 0, 4, 0),\n fontSize: '30px',\n fontWeight: 800,\n fontStyle: 'bold',\n lineHeight: '24px',\n letterSpacing: '-0.18px',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n fontWeight: 500,\n padding: theme.spacing(2, 0),\n },\n },\n\n cardContentCaption: {\n textAlign: 'center',\n padding: theme.spacing(4, 0, 4, 0),\n fontSize: '50px',\n fontWeight: 800,\n fontStyle: 'bold',\n lineHeight: '24px',\n letterSpacing: '-0.18px',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n fontWeight: 300,\n fontSize: '30px',\n fontStyle: 'bold',\n padding: theme.spacing(2, 0),\n },\n },\n}));\n\nexport default useStyles;\n","export default __webpack_public_path__ + \"static/media/la2m_choice.0350d0e2.svg\";","import React, { FC, useRef } from 'react';\nimport PageContainer from '../../components/page/PageContainer';\nimport useStyles from './styles';\nimport {\n Card,\n CardContent,\n CardMedia,\n Container,\n Grid,\n Typography,\n} from '@material-ui/core';\nimport La2mBrandingImage from '../../assets/images/la2m_choice.svg';\nimport CovaxBrandingImage from '../../assets/images/covax-branding-image.svg';\nimport { REACT_APP_HEALTH_PROFILE_URL } from '../../config';\nimport { useParams } from 'react-router-dom';\nimport ReactLoading from 'react-loading';\n\ninterface IParams {\n testKey: string;\n accessKey: string;\n}\n\nconst cards = [\n { id: 1, title: 'Certificat de Vaccination', typeLogo: 'covax' },\n { id: 2, title: 'Certificat de Test', typeLogo: 'la2m' },\n];\n\nconst ChoiceCertificate: FC = () => {\n const classes = useStyles();\n const { testKey, accessKey } = useParams();\n console.log(testKey);\n const onHandleChoiceCertificate = (typeLogo: string) => (e) => {\n if (typeLogo === 'la2m') {\n window.location.href = REACT_APP_HEALTH_PROFILE_URL + '/#/t/' + accessKey;\n } else {\n window.location.href = REACT_APP_HEALTH_PROFILE_URL + '/#/c/' + accessKey;\n }\n };\n\n const testSubmit = (data: any) => {\n return new Promise((resolve) => {\n setTimeout(() => {\n resolve(data);\n }, 4000);\n });\n };\n return (\n \n \n
\n \n Veuillez choisir votre certificat\n \n
\n \n {cards.map((card) => (\n \n \n \n \n {card.title}\n \n \n \n \n \n \n \n ))}\n \n
\n
\n );\n};\n\nexport default ChoiceCertificate;\n","import ChoiceCertificate from './ChoiceCertificate';\n\nexport default ChoiceCertificate;\n","import { makeStyles } from '@material-ui/core/styles';\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n flexGrow: 1,\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n alignItems: 'center',\n boxSizing: 'border-box',\n marginBottom: theme.spacing(4),\n },\n paper: {\n width: theme.spacing(98),\n borderRadius: 8,\n alignContent: 'center',\n boxShadow: '0px 4px 80px rgba(0, 0, 0, 0.08)',\n marginTop: theme.spacing(2),\n [theme.breakpoints.down('sm')]: {\n maxWidth: theme.screenbreakpoint.smartphone,\n width: 'auto',\n },\n },\n toolbar: {\n marginTop: theme.spacing(2),\n },\n content: {\n position: 'relative',\n textAlign: 'center',\n padding: theme.spacing(4),\n justifyContent: 'center',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n padding: theme.spacing(3),\n },\n },\n printablePage: {\n position: 'relative',\n maxWidth: '902px',\n // minWidth: '512px',\n },\n contentLogo: {\n position: 'absolute',\n bottom: '7%',\n left: '0',\n right: '0',\n margin: 'auto',\n },\n vaccineCertImage: {\n width: '100%',\n height: 'auto',\n borderRadius: 8,\n },\n headerLogo: {\n display: 'flex',\n flexDirection: 'row',\n position: 'absolute',\n left: theme.spacing(4),\n '& img': {\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n width: `${theme.spacing(12)} !important`,\n height: `${theme.spacing(12)} !important`,\n },\n },\n },\n headerLogoRight: {\n display: 'flex',\n flexDirection: 'row',\n position: 'absolute',\n right: theme.spacing(4),\n '& img': {\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n width: `${theme.spacing(12)} !important`,\n height: `${theme.spacing(12)} !important`,\n },\n },\n },\n\n prmLogo: {\n '& img': {\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n // width: theme.spacing(8),\n },\n },\n },\n marginPrimary: {\n marginTop: theme.spacing(4),\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n marginTop: theme.spacing(2),\n },\n },\n marginSecondary: {\n marginTop: theme.spacing(3),\n },\n mainTitle: {\n fontSize: '24px',\n fontWeight: 600,\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n fontSize: 14,\n },\n },\n mainSubTitle: {\n lineHeight: 0.6,\n fontSize: '24px',\n fontWeight: 400,\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n fontSize: 14,\n lineHeight: 0.6,\n },\n },\n mainSubTitleVirus: {\n lineHeight: 1.1,\n fontSize: '24px',\n fontWeight: 400,\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n fontSize: 14,\n lineHeight: 1.1,\n },\n },\n mainLabel: {\n fontStyle: 'italic',\n },\n mainValue: {\n fontWeight: 600,\n fontSize: '24px',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n fontSize: 17,\n },\n },\n mainLocalization: {\n fontWeight: 600,\n fontSize: '22px',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n fontSize: 17,\n },\n },\n contentQRCode: {\n flexGrow: 1,\n padding: theme.spacing(0, 5, 0, 5),\n height: theme.spacing(21),\n alignItems: 'center',\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n padding: theme.spacing(3),\n height: theme.spacing(28),\n },\n position: 'relative',\n },\n footerLeftLogo: {\n display: 'flex',\n flexDirection: 'row',\n position: 'absolute',\n left: theme.spacing(4),\n '& canvas': {\n [theme.breakpoints.down(theme.screenbreakpoint.smartphone)]: {\n width: `${theme.spacing(12)} !important`,\n height: `${theme.spacing(12)} !important`,\n },\n },\n },\n signatureContainer: {\n display: 'flex',\n flexDirection: 'column',\n [theme.breakpoints.down(690)]: {\n paddingLeft: theme.spacing(14),\n },\n },\n table: {\n width: 'auto',\n margin: '0 auto',\n },\n tableRow: {\n '&:last-child th, &:last-child td': {\n borderBottom: 0,\n },\n '& th': {\n fontWeight: 600,\n },\n },\n signatureText: {\n fontSize: '11px',\n fontStyle: 'italic',\n whiteSpace: 'nowrap',\n zIndex: 10,\n width: 'min-content',\n [theme.breakpoints.down(690)]: {\n whiteSpace: 'normal',\n width: 'fit-content',\n },\n },\n stamp: {\n width: '144px',\n height: '144px',\n },\n cellDose: {\n fontWeight: 500,\n },\n alertContainer: {\n padding: theme.spacing(2, 0, 0, 0),\n },\n buttonDownload: {\n display: 'flex',\n alignContent: 'flex-end',\n },\n printBodyClass: {\n padding: theme.spacing(6),\n '& div > div.only-on-print': {\n display: 'block',\n },\n '& div.fix-print-padding': {\n padding: theme.spacing(3),\n paddingBottom: theme.spacing(0),\n marginTop: theme.spacing(0),\n marginBottom: theme.spacing(0),\n },\n '& p.fix-print-font-size': {\n fontSize: '18px',\n },\n },\n}));\n\nexport default useStyles;\n","import React, { FC } from 'react';\nimport useStyles from '../styles';\nimport { useIntl } from 'react-intl';\nimport { Helmet } from 'react-helmet';\nimport { REACT_APP_REST_URL } from '../../../config';\nimport { Grid, Typography } from '@material-ui/core';\n\ninterface ITestCertificateProps {\n printRef: React.RefObject | null;\n accessKey: string;\n}\n\nconst TestCertificate: FC = ({\n printRef,\n accessKey,\n}) => {\n const classes = useStyles();\n const intl = useIntl();\n return (\n <>\n \n \n {intl.formatMessage({ id: 'common.card.title.certificate' })}\n \n \n
\n \n
\n \n );\n};\n\nexport default TestCertificate;\n","import React, { FC, useRef } from 'react';\nimport useStyles from './styles';\n\nimport { FormattedMessage, useIntl } from 'react-intl';\nimport { Box, Grid, Paper, Typography } from '@material-ui/core';\nimport PageContainer from '../../components/page/PageContainer';\nimport TestCertificate from './TestCertificate/TestCertificate';\nimport LabeledIconButton from '../../components/button/LabeledIconButton';\nimport GetAppIcon from '@material-ui/icons/GetApp';\nimport ReactToPrint from 'react-to-print';\nimport { Link, useParams } from 'react-router-dom';\nimport { useMyProfile } from '../../graphql/authentication/hooks';\nimport { useAuthContext } from '../../modules/AuthProvider';\nimport { useCitizenVaccinationProfile } from '../../graphql/citizen/hooks';\nimport InfiniteLoading from '../../components/InfiniteLoading';\nimport { Alert } from '@material-ui/lab';\nimport { DEFAULT_HOME_ROUTE } from '../../consts';\nimport ArrowRightAltIcon from '@material-ui/icons/ArrowBack';\n\ninterface IParams {\n accessKey: string;\n}\n\nconst TestCard: FC = () => {\n const classes = useStyles();\n const { accessKey } = useParams();\n const componentRef = useRef(null);\n useMyProfile();\n const { currentUser } = useAuthContext();\n const intl = useIntl();\n\n // Fetch citizen's profile info by access key\n const { isLoading, errorAlert, closeAlert, citizenProfile } =\n useCitizenVaccinationProfile(accessKey);\n\n const canGetTestCovidCertificate = (citizenProfile) => {\n console.log('CITIZEN: ', citizenProfile);\n const civilState = citizenProfile?.lastName ? true : false;\n const healthState =\n citizenProfile.health?.testCovidEvents &&\n citizenProfile.health?.testCovidEvents.length > 0\n ? true\n : false;\n\n return civilState && healthState ? true : false;\n };\n return (\n \n {isLoading ? (\n \n ) : errorAlert || !citizenProfile ? (\n \n \n \n closeAlert()}>\n {errorAlert}\n \n \n \n \n ) : (\n <>\n {!canGetTestCovidCertificate(citizenProfile) ? (\n \n \n \n ) : (\n <>\n \n {currentUser && (\n \n ,\n }}\n >\n \n \n \n )}\n (\n ,\n }}\n >\n \n \n )}\n documentTitle={\n citizenProfile.epiId +\n citizenProfile.lastName +\n citizenProfile.firstName\n }\n bodyClass={classes.printBodyClass}\n content={() => componentRef.current}\n />\n \n \n \n \n \n )}\n \n )}\n \n );\n};\n\nconst TestCardWrapper: FC = () => {\n const classes = useStyles();\n\n return (\n \n \n \n \n \n );\n};\n\nexport default TestCardWrapper;\n","import TestCard from './TestCard';\n\nexport default TestCard;\n","import Pages from './Pages';\n\nexport default Pages;\n","import React from 'react';\nimport { HashRouter, Redirect, Route, Switch } from 'react-router-dom';\nimport PublicRoute from '../components/PublicRoute';\nimport PrivateRoute from '../components/PrivateRoute';\nimport Unauthorized from './ErrorPages/Unauthorized';\nimport Registration from './Registration';\nimport SignIn from './SignIn';\nimport Profile from './Profile';\nimport ForgotPassword from './ForgotPassword';\nimport ResetPassword from './ResetPassword';\nimport VaccinationCard from './VaccinationCard';\nimport Faq from './Faq';\nimport ChoiceCertificate from './ChoiceCertificate';\nimport TestCard from './TestCard';\n\nconst Pages = () => (\n \n \n \n \n \n \n \n \n \n \n \n \n \n } />\n \n \n);\n\nexport default Pages;\n","import { createContext } from 'react';\n\ntype QRCodeContextType = {\n countryCode: string;\n setCountryCode: (countryCode: string) => void;\n numericCode: string;\n setNumericCode: (numericCode: string) => void;\n epi: string;\n setEpi: (epi: string) => void;\n physicalNumber: string;\n setPhysicalNumber: (physicalNumber: string) => void;\n};\n\nexport const QRCodeContext = createContext({\n countryCode: '',\n setCountryCode: () => {},\n numericCode: '',\n setNumericCode: () => {},\n epi: '',\n setEpi: () => {},\n physicalNumber: '',\n setPhysicalNumber: () => {},\n});\n\nexport default QRCodeContext;\n","import { useContext } from 'react';\nimport QRCodeContext from './QRCodeContext';\nimport QRCodeProvider from './QRCodeProvider';\n\nexport const useQRCodeContext = () => useContext(QRCodeContext);\nexport default QRCodeProvider;\n","import React, { useState, FC } from 'react';\nimport { QRCodeContext } from './QRCodeContext';\n\ninterface IProps {\n children?: React.ReactNode;\n}\nconst QRCodeProvider: FC = ({ children }) => {\n const [countryCode, setCountryCode] = useState('');\n const [numericCode, setNumericCode] = useState('');\n const [epi, setEpi] = useState('');\n const [physicalNumber, setPhysicalNumber] = useState('');\n\n return (\n {\n setCountryCode(countryCode);\n },\n numericCode: numericCode,\n setNumericCode: (numericCode: string) => {\n setNumericCode(numericCode);\n },\n epi: epi,\n setEpi: (epi: string) => {\n setEpi(epi);\n },\n physicalNumber: physicalNumber,\n setPhysicalNumber: (physicalNumber: string) => {\n setPhysicalNumber(physicalNumber);\n },\n }}\n >\n {children}\n \n );\n};\n\nexport default QRCodeProvider;\n","import React from 'react';\nimport { ApolloProvider } from '@apollo/client';\nimport { ThemeProvider } from '@material-ui/core/styles';\nimport { SnackbarProvider } from 'notistack';\n\nimport AuthProvider from './modules/AuthProvider';\nimport PageMetaProvider from './modules/PageMetaProvider';\nimport createApolloClient from './modules/apollo';\nimport { DefaultTheme } from './themes/DefaultTheme';\nimport Pages from './pages';\nimport MuiPickersUtilsProvider from '@material-ui/pickers/MuiPickersUtilsProvider';\nimport 'date-fns';\nimport frLocale from 'date-fns/locale/fr';\nimport DateFnsUtils from '@date-io/date-fns';\nimport QRCodeProvider from './modules/QRCodeProvider';\nimport LocaleProvider from './modules/LocaleProvider';\n\nconst client = createApolloClient();\n\nfunction App() {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n}\n\nexport default App;\n","import { ReportHandler } from 'web-vitals';\n\nconst reportWebVitals = (onPerfEntry?: ReportHandler) => {\n if (onPerfEntry && onPerfEntry instanceof Function) {\n import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {\n getCLS(onPerfEntry);\n getFID(onPerfEntry);\n getFCP(onPerfEntry);\n getLCP(onPerfEntry);\n getTTFB(onPerfEntry);\n });\n }\n};\n\nexport default reportWebVitals;\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport './index.css';\nimport App from './App';\nimport reportWebVitals from './reportWebVitals';\n\nReactDOM.render(\n \n \n ,\n document.getElementById('root'),\n);\n\n// If you want to start measuring performance in your app, pass a function\n// to log results (for example: reportWebVitals(console.log))\n// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals\nreportWebVitals();\n"],"sourceRoot":""}