{"version":3,"sources":["../../webpack/bootstrap","../.././ClientApp/app/App.jsx","../.././ClientApp/app/appSetup.js","../.././ClientApp/app/localization/index.ts","../.././ClientApp/app/localization/translate.ts","../.././ClientApp/app/services/activityService.ts","../.././ClientApp/app/services/externalUserService.ts","../.././ClientApp/app/services/healthRegistrationService.ts","../.././ClientApp/app/services/medicineService.ts","../.././ClientApp/app/services/outsideService.ts","../.././ClientApp/app/services/patientConsentService.ts","../.././ClientApp/app/services/sleepService.ts","../.././ClientApp/app/store/ActivityDataStore.ts","../.././ClientApp/app/store/AuthStore.ts","../.././ClientApp/app/store/ExternalUserStore.ts","../.././ClientApp/app/store/HealthRegistrationStore.ts","../.././ClientApp/app/store/MedicationStore.ts","../.././ClientApp/app/store/OutsideStore.ts","../.././ClientApp/app/store/PageSettingStore.js","../.././ClientApp/app/store/PatientConsentStore.ts","../.././ClientApp/app/store/PreviewStore.js","../.././ClientApp/app/store/ProgramStore.ts","../.././ClientApp/app/store/PublicStore.js","../.././ClientApp/app/store/SleepDataStore.ts","../.././ClientApp/app/store/UserStore.js","../.././ClientApp/app/store/actions.js","../.././ClientApp/app/store/index.ts","../.././ClientApp/app/store/types/healthRegistration.ts","../.././ClientApp/app/style/sharedClasses.js","webpack:///./ClientApp/app/style/styles.less?495a","../.././ClientApp/app/style/theme.ts","../.././ClientApp/app/urls.ts","../.././ClientApp/common/breadcrumbUtil.ts","../.././ClientApp/common/components/BreadCrumb.jsx","../.././ClientApp/common/components/Checkbox.jsx","../.././ClientApp/common/components/ChoiceNavigationDialog.jsx","../.././ClientApp/common/components/ConfirmButton.jsx","../.././ClientApp/common/components/ContentCommenting.jsx","../.././ClientApp/common/components/ContentVariableLoader.jsx","../.././ClientApp/common/components/Counter.jsx","../.././ClientApp/common/components/DaySelector.tsx","../.././ClientApp/common/components/Favourite.jsx","../.././ClientApp/common/components/FeedbackForm.jsx","../.././ClientApp/common/components/FileUpload.tsx","../.././ClientApp/common/components/Footer.tsx","../.././ClientApp/common/components/Header.tsx","../.././ClientApp/common/components/InfoMessage.jsx","../.././ClientApp/common/components/InternalLinkLoader.jsx","../.././ClientApp/common/components/Layout.tsx","../.././ClientApp/common/components/LinkListItem.jsx","../.././ClientApp/common/components/LinkMenu.jsx","../.././ClientApp/common/components/LoadAppContent.jsx","../.././ClientApp/common/components/LoadOrgConfig.jsx","../.././ClientApp/common/components/MenuContent.tsx","../.././ClientApp/common/components/ModalAction.jsx","../.././ClientApp/common/components/ModuleProgress.tsx","../.././ClientApp/common/components/NavigateDialog.jsx","../.././ClientApp/common/components/OverlayModal.tsx","../.././ClientApp/common/components/PageLayout.tsx","../.././ClientApp/common/components/PageTitle.jsx","../.././ClientApp/common/components/PortalModal.jsx","../.././ClientApp/common/components/ProgressBar.jsx","../.././ClientApp/common/components/SideMenu.tsx","../.././ClientApp/common/components/StartSession.jsx","../.././ClientApp/common/components/TextEditor.jsx","../.././ClientApp/common/components/TextEditorUploadAdapterPlugin.ts","../.././ClientApp/common/components/TimePicker.jsx","../.././ClientApp/common/components/TrackActivity.jsx","../.././ClientApp/common/components/TrackedLink.tsx","../.././ClientApp/common/components/WeekSelector.tsx","../.././ClientApp/common/components/YouwellSlider.jsx","../.././ClientApp/common/components/index.js","../.././ClientApp/common/constants.ts","../.././ClientApp/common/icons/ElementIconOrDefault.jsx","../.././ClientApp/common/icons/index.js","../.././ClientApp/common/image/Arrow.png","../.././ClientApp/common/image/BG_login_relationship.png","../.././ClientApp/common/image/BadFace.tsx","../.././ClientApp/common/image/HappyFace.tsx","../.././ClientApp/common/image/NoEmotionFace.tsx","../.././ClientApp/common/image/OkFace.tsx","../.././ClientApp/common/image/PlayingSoccer.tsx","../.././ClientApp/common/image/QuestionFace.tsx","../.././ClientApp/common/image/WalkingWithDog.tsx","../.././ClientApp/common/image/WorkingWithLaptop.tsx","../.././ClientApp/common/image/activity.svg","../.././ClientApp/common/image/awakeSmiley.svg","../.././ClientApp/common/image/book.svg","../.././ClientApp/common/image/calendar.svg","../.././ClientApp/common/image/flag.svg","../.././ClientApp/common/image/followUp.svg","../.././ClientApp/common/image/form.svg","../.././ClientApp/common/image/gladrygg.svg","../.././ClientApp/common/image/greyCloud.svg","../.././ClientApp/common/image/home.svg","../.././ClientApp/common/image/index.tsx","../.././ClientApp/common/image/introNight.svg","../.././ClientApp/common/image/logo/Logo.tsx","../.././ClientApp/common/image/logout.svg","../.././ClientApp/common/image/medicine.svg","../.././ClientApp/common/image/moon.svg","../.././ClientApp/common/image/phoneCall.svg","../.././ClientApp/common/image/retreat.svg","../.././ClientApp/common/image/retreatIcon.svg","../.././ClientApp/common/image/sleepSmiley.svg","../.././ClientApp/common/image/training.svg","../.././ClientApp/common/image/trophy.svg","../.././ClientApp/common/image/wakeUp.svg","../.././ClientApp/common/image/work.svg","../.././ClientApp/common/taskContentUtils.ts","../.././ClientApp/common/taskUtils.ts","../.././ClientApp/common/videoUtil.jsx","../.././ClientApp/features/external/Index.tsx","../.././ClientApp/features/external/ParentConsent.tsx","../.././ClientApp/features/home/Profile.tsx","../.././ClientApp/features/home/components/ProfileImageEditor.jsx","../.././ClientApp/features/home/components/validation.ts","../.././ClientApp/features/inside/Dashboard.jsx","../.././ClientApp/features/inside/Index.tsx","../.././ClientApp/features/inside/components/AppointmentBox.jsx","../.././ClientApp/features/inside/components/CalendarBox.jsx","../.././ClientApp/features/inside/components/CurrentModuleBox.jsx","../.././ClientApp/features/inside/components/LoadCurrentProgram.jsx","../.././ClientApp/features/inside/components/LoadCurrentProgramResponses.jsx","../.././ClientApp/features/inside/components/LoadProfileData.jsx","../.././ClientApp/features/inside/components/ModuleBoxFlat.jsx","../.././ClientApp/features/inside/components/ModuleBoxWithOverlay.tsx","../.././ClientApp/features/inside/components/ScheduledTasksBox.jsx","../.././ClientApp/features/inside/components/TaskLabelIcon.jsx","../.././ClientApp/features/inside/components/TimelineBox.jsx","../.././ClientApp/features/inside/components/UnfinishedTasksBox.jsx","../.././ClientApp/features/messages/MessageList.jsx","../.././ClientApp/features/outside/Index.jsx","../.././ClientApp/features/outside/InsideRedirect.tsx","../.././ClientApp/features/outside/components/ForgotPassword.jsx","../.././ClientApp/features/outside/components/Login.tsx","../.././ClientApp/features/outside/components/Logout.jsx","../.././ClientApp/features/outside/components/ResetPassword.jsx","../.././ClientApp/features/outside/components/SelectOrg.tsx","../.././ClientApp/features/outside/components/constants.js","../.././ClientApp/features/outsideProgram/Index.tsx","../.././ClientApp/features/outsideProgram/ProgramPage.tsx","../.././ClientApp/features/outsideProgram/ProgramSelect.tsx","../.././ClientApp/features/outsideProgram/TaskPage.tsx","../.././ClientApp/features/outsideProgram/components/OutsideTaskContent.tsx","../.././ClientApp/features/outsideProgram/components/TaskNavigation.tsx","../.././ClientApp/features/pages/Calendar/Calendar.jsx","../.././ClientApp/features/pages/Calendar/Index.jsx","../.././ClientApp/features/pages/Calendar/components/AddCustomTask.jsx","../.././ClientApp/features/pages/Calendar/components/EditTask.jsx","../.././ClientApp/features/pages/Consent.tsx","../.././ClientApp/features/pages/ElementSummary.jsx","../.././ClientApp/features/pages/Favourites.jsx","../.././ClientApp/features/pages/Feedback.jsx","../.././ClientApp/features/pages/Index.jsx","../.././ClientApp/features/pages/MissingGuardianConsent.tsx","../.././ClientApp/features/pages/Performance.jsx","../.././ClientApp/features/pages/PrintFiles.jsx","../.././ClientApp/features/pages/Videos.jsx","../.././ClientApp/features/pages/activityDiary/ActivityDiary.tsx","../.././ClientApp/features/pages/activityDiary/components/ActivityList.tsx","../.././ClientApp/features/pages/activityDiary/components/ActivityTable.tsx","../.././ClientApp/features/pages/activityDiary/components/AddEditActivityDialog.tsx","../.././ClientApp/features/pages/activityDiary/components/DateDetails.tsx","../.././ClientApp/features/pages/components/DetailedPerformanceChart.jsx","../.././ClientApp/features/pages/components/OverviewPerformanceChart.jsx","../.././ClientApp/features/pages/components/utils.js","../.././ClientApp/features/pages/health/Activity.tsx","../.././ClientApp/features/pages/health/BloodSugar.tsx","../.././ClientApp/features/pages/health/Diet.tsx","../.././ClientApp/features/pages/health/GoalsAndBarriers.tsx","../.././ClientApp/features/pages/health/Health.tsx","../.././ClientApp/features/pages/health/Index.tsx","../.././ClientApp/features/pages/health/Medicine.tsx","../.././ClientApp/features/pages/health/Psychosocial.tsx","../.././ClientApp/features/pages/health/Smoking.tsx","../.././ClientApp/features/pages/health/Weight.tsx","../.././ClientApp/features/pages/health/components/HealthGraph.tsx","../.././ClientApp/features/pages/health/components/HealthInput.tsx","../.././ClientApp/features/pages/health/components/HealthPageWrapper.tsx","../.././ClientApp/features/pages/health/components/HealthProgressCard.tsx","../.././ClientApp/features/pages/health/components/HealthRegistrationGoalLogging.tsx","../.././ClientApp/features/pages/health/components/HealthRegistrationGoalsCard.tsx","../.././ClientApp/features/pages/health/components/HealthRegistrationGoalsEditing.tsx","../.././ClientApp/features/pages/health/components/HealthRegistrationTaskLogging.tsx","../.././ClientApp/features/pages/health/components/HealthRegistrationTasksCard.tsx","../.././ClientApp/features/pages/health/components/HealthTable.tsx","../.././ClientApp/features/pages/health/components/LoadHealthRegistration.tsx","../.././ClientApp/features/pages/health/components/LoadMedicines.tsx","../.././ClientApp/features/pages/health/components/MedicationLogging.tsx","../.././ClientApp/features/pages/health/components/MyMedications.tsx","../.././ClientApp/features/pages/health/components/QuestionAndInput.tsx","../.././ClientApp/features/pages/health/components/TitleButtonCard.tsx","../.././ClientApp/features/pages/health/components/VerticalLineheader.tsx","../.././ClientApp/features/pages/health/components/WeekSelectorCard.tsx","../.././ClientApp/features/pages/health/utils/healthConstants.ts","../.././ClientApp/features/pages/health/utils/healthUtils.ts","../.././ClientApp/features/pages/sleepDiary/Index.tsx","../.././ClientApp/features/pages/sleepDiary/LogDay.tsx","../.././ClientApp/features/pages/sleepDiary/SleepDiary.tsx","../.././ClientApp/features/pages/sleepDiary/components/DaySummaryTable.tsx","../.././ClientApp/features/pages/sleepDiary/components/DayView.tsx","../.././ClientApp/features/pages/sleepDiary/components/DaytimeNap.tsx","../.././ClientApp/features/pages/sleepDiary/components/EditBedtimePlan.tsx","../.././ClientApp/features/pages/sleepDiary/components/InfoBox.tsx","../.././ClientApp/features/pages/sleepDiary/components/LogNaps.tsx","../.././ClientApp/features/pages/sleepDiary/components/LogWakeups.tsx","../.././ClientApp/features/pages/sleepDiary/components/RegisterSleepMenu.tsx","../.././ClientApp/features/pages/sleepDiary/components/SleepDetailsTable.tsx","../.././ClientApp/features/pages/sleepDiary/components/WeekAverageDetails.tsx","../.././ClientApp/features/pages/sleepDiary/constants.ts","../.././ClientApp/features/pages/sleepDiary/utils.ts","../.././ClientApp/features/preview/Index.jsx","../.././ClientApp/features/preview/PreviewTask.jsx","../.././ClientApp/features/preview/components/AddCommentOverlay.jsx","../.././ClientApp/features/preview/components/LoadPreviewTask.jsx","../.././ClientApp/features/preview/components/PreviewTaskContent.jsx","../.././ClientApp/features/program/Index.tsx","../.././ClientApp/features/program/TaskGroup.tsx","../.././ClientApp/features/program/TaskPage.tsx","../.././ClientApp/features/program/components/MyTaskContent.tsx","../.././ClientApp/features/program/components/ProgramError.tsx","../.././ClientApp/features/program/components/TaskNavigation.tsx","../.././ClientApp/features/program/components/WorkSheet.tsx","../.././ClientApp/features/public/Home.jsx","../.././ClientApp/features/public/Index.jsx","../.././ClientApp/features/public/Module.jsx","../.././ClientApp/features/public/Program.jsx","../.././ClientApp/features/public/Task.jsx","../.././ClientApp/features/public/components/LoadPublicProgram.jsx","../.././ClientApp/features/public/components/PublicTaskContent.jsx","../.././ClientApp/features/public/components/SessionFooter.jsx","../.././ClientApp/features/singlepage/Index.tsx","../.././ClientApp/features/singlepage/SingleTaskPage.tsx","../.././ClientApp/features/videochat/VideoPeerConnection.jsx","../.././ClientApp/features/videochat/Videochat.tsx","../.././ClientApp/features/videochat/YouwellVideoChat.jsx","../.././ClientApp/index-client.tsx","../.././ClientApp/youwell-common/AppUtil.ts","../.././ClientApp/youwell-common/Auth.ts","../.././ClientApp/youwell-common/Cookie.ts","../.././ClientApp/youwell-common/ReduxStoreHelper.ts","../.././ClientApp/youwell-common/apiUrls.ts","../.././ClientApp/youwell-common/arrayUtils.ts","../.././ClientApp/youwell-common/browserUtils.ts","../.././ClientApp/youwell-common/components/AsyncTextField.jsx","../.././ClientApp/youwell-common/components/DelayedFetch.jsx","../.././ClientApp/youwell-common/components/DevelopmentBanner.jsx","../.././ClientApp/youwell-common/components/DialogButton.jsx","../.././ClientApp/youwell-common/components/ErrorBoundary.jsx","../.././ClientApp/youwell-common/components/ErrorMessage.jsx","../.././ClientApp/youwell-common/components/FormLink.jsx","../.././ClientApp/youwell-common/components/HtmlContent.tsx","../.././ClientApp/youwell-common/components/IdleTimer.jsx","../.././ClientApp/youwell-common/components/Image.tsx","../.././ClientApp/youwell-common/components/InactivityAlert.jsx","../.././ClientApp/youwell-common/components/LanguageToggle.jsx","../.././ClientApp/youwell-common/components/LoadLanguageData.jsx","../.././ClientApp/youwell-common/components/Loading.jsx","../.././ClientApp/youwell-common/components/PageNotFound.jsx","../.././ClientApp/youwell-common/components/PollData.jsx","../.././ClientApp/youwell-common/components/PrivateRoute.jsx","../.././ClientApp/youwell-common/components/ScrollToTop.jsx","../.././ClientApp/youwell-common/components/accessibility/ArrowNavigation.jsx","../.././ClientApp/youwell-common/components/index.js","../.././ClientApp/youwell-common/components/taskElements/FormQuestion.tsx","../.././ClientApp/youwell-common/components/taskElements/FormValidation.tsx","../.././ClientApp/youwell-common/components/taskElements/LinkElement.jsx","../.././ClientApp/youwell-common/components/taskElements/TaskContent.tsx","../.././ClientApp/youwell-common/components/taskElements/TaskContentDisplay.tsx","../.././ClientApp/youwell-common/components/taskElements/TaskElement.tsx","../.././ClientApp/youwell-common/components/taskElements/TaskForm.jsx","../.././ClientApp/youwell-common/components/taskElements/formResponseTypes/ActionButton.tsx","../.././ClientApp/youwell-common/components/taskElements/formResponseTypes/FreetextResponse.jsx","../.././ClientApp/youwell-common/components/taskElements/formResponseTypes/MultipleChoice.tsx","../.././ClientApp/youwell-common/components/taskElements/formResponseTypes/ScaleResponse.jsx","../.././ClientApp/youwell-common/components/taskElements/formResponseTypes/SingleChoice.tsx","../.././ClientApp/youwell-common/components/taskElements/formResponseTypes/TableResponse.tsx","../.././ClientApp/youwell-common/components/taskElements/formResponseTypes/customTypes/BubbleChoiceQuestions.jsx","../.././ClientApp/youwell-common/components/taskElements/formResponseTypes/customTypes/BullsEyeQuestions.jsx","../.././ClientApp/youwell-common/components/taskElements/formResponseTypes/customTypes/CollapsedTable.jsx","../.././ClientApp/youwell-common/components/taskElements/formResponseTypes/customTypes/QuestionnaireTable.tsx","../.././ClientApp/youwell-common/components/taskElements/formResponseTypes/customTypes/Quiz.jsx","../.././ClientApp/youwell-common/components/taskElements/formResponseTypes/customTypes/QuizResponse.jsx","../.././ClientApp/youwell-common/components/taskElements/formResponseTypes/customTypes/RouteSelection.jsx","../.././ClientApp/youwell-common/components/taskElements/taskElementContent/ConnectedBoxes.jsx","../.././ClientApp/youwell-common/components/taskElements/taskElementContent/DefaultElementContent.jsx","../.././ClientApp/youwell-common/components/taskElements/taskElementContent/LinkedResponse.tsx","../.././ClientApp/youwell-common/components/taskElements/taskElementContent/ReadMore.jsx","../.././ClientApp/youwell-common/components/taskElements/taskElementContent/index.jsx","../.././ClientApp/youwell-common/components/taskElements/utils.ts","../.././ClientApp/youwell-common/constants.ts","../.././ClientApp/youwell-common/contentUtils.ts","../.././ClientApp/youwell-common/dateUtils.ts","../.././ClientApp/youwell-common/elementStateUtils.ts","../.././ClientApp/youwell-common/errorUtils.ts","../.././ClientApp/youwell-common/fetchUtils.js","../.././ClientApp/youwell-common/flags.ts","../.././ClientApp/youwell-common/htmlUtils.ts","../.././ClientApp/youwell-common/icons.ts","../.././ClientApp/youwell-common/index.ts","../.././ClientApp/youwell-common/mediaUpload.ts","../.././ClientApp/youwell-common/numberUtils.ts","../.././ClientApp/youwell-common/objectUtils.ts","../.././ClientApp/youwell-common/reduxUtils.js","../.././ClientApp/youwell-common/responseUtils.ts","../.././ClientApp/youwell-common/service/RequestStatusStore.ts","../.././ClientApp/youwell-common/service/serviceUtils.ts","../.././ClientApp/youwell-common/stringUtils.ts","../.././ClientApp/youwell-common/styles/defaultTheme.ts","../.././ClientApp/youwell-common/tableUtils.ts","../.././ClientApp/youwell-common/types/utils.ts","../.././ClientApp/youwell-common/useAutosaveForm.ts","../.././ClientApp/youwell-common/useForm.ts","../.././ClientApp/youwell-common/useSimpleOffline.ts","../.././ClientApp/youwell-common/uuid.ts","../.././ClientApp/youwell-common/validationUtils.ts"],"names":["OutsideRoute","appConfig","useYouwellSelector","state","pageSettings","publicProgramId","publicPrograms","length","App","urls","preview","home","singlepage","external","External","login","loginParts","authTypes","inside","Inside","selectOrg","user","Public","Preview","SingleTaskPage","outsideProgram","OutsideProgram","Outside","PageNotFound","React","hot","module","withRouter","appSettings","keepPublicTokenForSession","headerItems","title","pageTitle","flex","appItems","pages","chat","favourites","profile","logout","menu","org","customActions","dashboardItems","welcome","progress","programDescription","programIcon","questionnaires","intro","modules","healthTasks","dashboardItemsCustom","unfinished","calendar","completedIntro","waitingForScheduled","exit","info","appPages","key","url","health","nameKey","Icon","DirectionsRunIcon","activityDiary","CalendarIcon","sleepDiary","SleepIcon","elements","ElementListIcon","hideIfNoProgram","BullsEyeIcon","defaultSetup","header","dashboard","visitTaskDelay","features","languages","breadcrumb","timeline","notifications","heightWeight","genderAge","selfDelete","videoChat","feedback","moduleProgress","sensors","videoPage","printsPage","autoplayVideos","useFlatModuleBoxes","useSecondaryBackroundInSideMenu","patient","pollState","mailAndPhone","profilePicture","checkMissingData","useUserNameAndPw","startupConfig","appSetup","parseOrgConfigFeatures","clientConfig","values","Object","entries","forEach","value","push","overrideKeys","pagesFromFeatures","pagesToShow","customs","appSetupPages","split","reduce","prev","curr","trim","appSetupCustoms","appSetupHeader","map","d","appSetupDashboard","filter","appSetupWithOverrides","m","o","keys","cur","i","initializedFromOrgConfig","undefined","appName","appContentProgramId","ACTION_PREFIX","SET_PATH","SET_VERSION","SET_CONFIG","ADD_ORG_CONFIG","SET_CAL_DATE","APPCONTENT_RECEIVED","SET_PWA_STATUS","storeHelper","ReduxStoreHelper","actionCreators","setAppConfig","dispatch","setAppId","appId","type","setPath","path","pathWithSlash","setVersion","version","setAppVersion","navigateTo","getOrgConfig","createGetElementActionCreator","apiUrls","app","setCalendarDate","date","getAppContent","setPwaStatus","pwaStatus","initialState","pathname","newAvailableVersion","orgConfig","pageNotFound","calendarDate","Date","appContent","prevPathname","reducer","action","LOCATION_CHANGE","newState","payload","location","data","PAGE_NOTFOUND","PREVIEW_RESPONSE_INSERTED","PREVIEW_START_COMMENT","PREVIEW_TOGGLE_COMMENTS","SAVE_COMMENT","PREVIEW_CLEAR_COMMENT_ELEMENT","GET_COMMENTS","defaultActionCreators","updateResponse","toggleComments","startComment","getTaskComments","saveTaskComment","createInsertActionCreator","clearCommentElement","defaultInitialState","commentElementId","showComments","responses","comments","taskId","taskSubtotals","details","parseInsertedResponse","reducerParams","elementId","currentComments","inputData","id","created","stateFromDefaultActions","defaultReducer","RESPONSE_INSERTED","SESSION_RECEIVED","PUBLIC_PROGRAM_DETAILS_RECIEVED","END_SESSION","COMPLETE_TASK","RESPONSE_SAVED","TASKVISITED","FEEDBACK_FORM_SENT","endSessionReasons","tokenExpired","timeout","manualEnd","completed","getPublicProgram","sendFirstResponse","responseData","options","fetch","body","method","completeAction","onData","Auth","setLoginInfo","patientResult","loginLevel","saveResponse","getSession","onUnauthorized","endReason","deauthenticateUser","endSession","redirect","completeTask","visitTask","taskInfo","program","background","sendFeedbackFromForm","currentProgramId","currentOrgId","patientId","patientProgramId","patientProgramElementId","completedTasks","latestCompletedStep","LOGOUT","organizationId","Math","max","stepNr","buildResponseLookup","taskResult","parseResponseSaveResult","programId","moduleId","find","tasks","task","MESSAGE_LIST_UPDATE_RECIEVED","MESSAGES_READ_RECIEVED","USER_STATE_RECIEVED","ACTIVITY_INSERTED","USER_DELETED","checkForNewMessages","createGetListActionCreator","message","insertMessage","getUserState","getState","userStateTimeStamp","markMessagesAsRead","timestamp","sendActivity","activity","removeSensor","createDeleteActionCreator","sensor","SENSOR_DELETED","deleteUser","saveProfilePicture","createFileUploadActionCreator","SUCCESS_UPLOAD_PROFILEIMAGE","deleteProfilePicture","USER_DELETE_PROFILEIMAGE","sessionId","messageList","activityId","unreadMessages","allMessagesFetched","setNotifications","userState","currentNotifications","notificationKeys","overdueTasks","p","sortByDate","messagesTimestamp","requestParams","count","sid","timeStamp","PROGRAM_TASKRESPONSE_INSERTED","group","patientProgramElementGroups","scheduled","patientReadTime","PROGRAM_ACTION_PREFIX","TASKRESPONSE_INSERTED","RESPONSES_RECEIVED","CURRENTPROGRAM_RECEIVED","PROGRAM_RESPONSES_RECEIVED","PROGRAM_CURRENTPROGRAM_RECEIVED","USER_ACTION_PREFIX","USER_SENSOR_DELETED","USER_UPLOAD_PROFILEIMAGE","SUCCESS_DELETE_PROFILEIMAGE","PUBLIC_ACTION_PREFIX","PUBLIC_PROGRAM_RECEIVED","DETAILS_RECIEVED","PREVIEW_ACTION_PREFIX","PREVIEW_TASK_RECEIVED","AUTH_ACTION_PREFIX","SUCCESS_LOGIN","AUTH_SUCCESS_LOGIN","elementInfoClasses","theme","elementInfoRoot","display","marginBottom","spacing","breakpoints","down","flexDirection","elementInfoImageContainer","padding","elementInfoImage","width","elementInfoDescriptionContainer","elementInfoTitle","margin","elementInfoProgress","height","marginTop","elementInfoProgressText","elementInfoDescription","tableListClasses","tableListRoot","boxShadow","shadows","tableListTitleContainer","palette","primary","main","color","common","white","border","youwell","borders","dim","borderWidth","grey","tableListTitle","tableListRows","tableListRow","tableListRowIndex","secondary","borderBottom","alignItems","justifyContent","up","tableListRowElement","black","tableListRowElementTitle","tableListCurrent","tableListCompleted","tableListUnavailable","iconClasses","iconGreen","colors","green","opacity","iconRed","red","iconGray","styles","root","links","flexWrap","flexGrow","linkContainer","linkItem","borderColor","text","fontWeight","typography","fontWeightMedium","separatorIcon","progressContainer","progressBar","maxWidth","minWidth","progressBarRounded","borderRadius","shapes","progressBarFill","highlight","progressText","marginLeft","actionsContainer","actionIcon","fontSize","hideOnDesktop","BreadCrumb","props","classes","openSideMenu","translate","printFileId","contentBaseUrl","media","file","showFavourite","classnames","levels","className","isActiveProgram","showProgress","hasValue","l","activityLabels","link","renderActions","bar","round","propTypes","PropTypes","object","isRequired","func","array","number","string","bool","defaultProps","mapStateToProps","getTranslate","localize","auth","programStore","currentProgram","connect","withStyles","checkbox","checkboxInput","marginRight","Checkbox","checked","onChange","label","actions","primaryButton","ChoiceNavigationDialog","open","onCancel","description","primaryLink","primaryText","secondaryLink","secondaryText","Link","useStyles","makeStyles","dialogContent","borderTop","normal","error","paddingTop","okButton","cancelButton","danger","ConfirmDialog","onClose","dialogTitle","children","useSelector","oneOfType","arrayOf","node","oneOf","ConfirmButton","buttonClassName","variant","confirmText","confirmTitle","disabled","ButtonProps","onClick","dialogOpen","setDialogOpen","openDialog","closeDialog","confirmed","borderLeft","commentInputFields","commentElement","commentInput","sendButton","alignSelf","comment","commentHead","lineWrapper","position","top","left","pointerEvents","calculate","from","to","fromEl","document","getElementById","toEl","fromPosRect","getBoundingClientRect","toPosRect","fromPos","x","y","offsetHeight","toPos","right","Line","lineEl","useRef","update","useCallback","current","setAttribute","useEffect","window","addEventListener","removeEventListener","ContentCommenting","send","formValues","name","useForm","validateRequired","validationErrors","handleChange","handleSubmit","elementTitles","contentElements","getElementTitle","contentElemenIdPrefix","c","ownProps","previewStore","mapDispatchToProps","bindActionCreators","PreviewStore","valueFromCommonVariables","patientData","patientProgram","getAge","birthDate","datestamp","startDate","ContentVariableLoader","variableName","showVariableNameIfNull","customVariables","settings","keyValues","isBrowser","__getYouwellVariable","getYouwellVariable","createStyles","button","h4","Counter","rest","increase","target","icon","iconChecked","Favourite","isFav","programDetails","on","toggleFavourite","ProgramStore","nameAndEmail","submitButtonWrapper","submitButton","form","responseMsg","validators","email","validateEmail","initalFormState","FeedbackForm","useDispatch","formRef","profileData","useState","formState","setFormState","isEmailValid","setIsEmailValid","isFormValid","setIsFormValid","feedbackFormSent","setFeedbackFormSent","handleFormChange","e","validateAllFields","handleSubmitForm","preventDefault","feedbackData","orgId","organization","PublicStore","callback","reset","includeNameAndEmail","InfoMessage","messageKey","InternalLinkLoader","getLinkUrl","linkUrlFunction","__clickInternalLink","clickInternalLink","listItem","listItemText","paddingLeft","inactive","alert","LinkListItem","classname","element","linkMenu","LinkMenu","anchorEl","event","setState","currentTarget","handleClick","Boolean","handleClose","WithRef","ref","LoadAppContent","PageSettingStore","LoadOrgConfig","useYouwellDispatch","orgIdFromPropOrStore","isEmpty","buttonIcon","activeIcon","ModalAction","modalHeading","buttonText","buttonChildren","wideModal","buttonProps","active","Modal","ModalProps","tooltip","setOpen","openModal","closeModal","renderAction","renderActionWithTooltip","saveButton","NavigateDialog","onDiscard","onSave","saveText","PageTitle","defaultTitle","currentPath","defaultWidth","modalContainer","transform","minHeight","maxHeight","isIe","wide","fullscreen","modalHeader","secondaryBackground","modalHeaderText","headerMessage","modalContent","overflowY","PortalModal","heading","showUnsavedMessage","allowZoom","fixedWidth","fixedHeight","setFullscreen","backgroundColor","grayLight","lightgreyShadow","fill","ProgressBar","min","StartSession","isOffline","useSimpleOffline","AuthStore","startSession","anonymous","useAnonymousSessions","editorTextColors","hasBorder","hightScore","textDecoration","cursor","clear","toolbar","htmlEditor","ErrorFallback","TextEditor","editor","getData","allowUpload","config","fontColor","extraPlugins","TextEditorUploadAdapterPlugin","htmlContentClassName","Editors","ClassicEditor","handleEditorChange","EditorComponent","EditorErrorBoundary","hasError","console","warn","ErrorBoundaryComponent","flexShrink","input","iconButton","validationMessage","TimePicker","validation","defaultValue","inputAdornmentBeforeInput","disableUnderline","validateWithoutValueChange","validationError","setValidationError","invalidDate","setInvalidDate","validateAndUpdate","onValueChange","val","getTime","Number","isNaN","midnight","setHours","initialDate","today","substr","activityProps","TrackActivity","endId","pid","ppid","ppeid","tid","mid","start","prevProps","endActivity","UserStore","vertical","slider","paddingBottom","rail","track","mark","markActive","noUserInteraction","showThumb","hideThumb","topLabel","content","labels","YouwellSlider","topLabelFormat","marks","orientation","showValueLabelDisplay","saveTimer","changeId","setChangeId","sliderValue","setSliderValue","useTheme","isMobile","useMediaQuery","handleSliderChange","sValue","now","clearTimeout","setTimeout","prevId","thumb","getElementIcon","item","itemName","toLowerCase","indexOf","TrophyIcon","BudskapIcon","FoodIcon","Build","patientProgramAppElementSettings","trainingPlan","Pages","ElementIconOrDefault","getTaskVideosFromHtmlContent","getVideos","htmlContent","getTaskVideosFromLink","linkType","linkTypes","youtube","vimeo","video","Component","getTaskVideos","videos","html","getVideosForElement","none","countVideos","elementList","canvasBorder","upload","currentImage","uploadButton","deleteCurrent","imageActions","imageButton","noImage","image","addOverlay","addIcon","ProfileImageEditor","onDelete","currentImageId","setImage","scale","setScale","rotation","setRotation","modalOpen","setModalOpen","handleFileUpload","files","rotate","scaleImage","direction","onClickSave","canvas","getImage","canvasUrl","toDataURL","youwellFetch","then","res","blob","cancelEdit","imageUrl","baseUrl","welcomeContent","welcomeTitle","outline","inactiveMessage","logo","waitMessage","contentBox","alternativeContent","mainModules","mainModulesBackgroundImage","moduleTitle","moduleBoxBorder","borderBottomWidth","flexBasis","exitButtonContainer","exitButton","infoContent","healthTasksContent","programImageContainer","programImage","Dashboard","groupedElements","findIndex","appElements","hasElementSetting","dashboardInfo","mainElements","completedModules","totalModules","isInActiveProgram","status","patientProgramStatus","availableScheduledTasks","scheduledElements","firstVisit","thisRef","titleRef","appointment","programImageUrl","frontImageId","getImageUrl","introElement","getIntroElement","introModule","indexInGroup","nextElementIndex","getNextElementIndex","modulesRef","unfinishedElements","totalTasksVisited","moduleName","t","taskIndex","ok","visited","currentModule","hasAvailableScheduledTasks","TrackedLink","infoElement","getDashboardInfoElement","getTaskFromElement","startsWith","focus","hasLoaded","renderItem","requests","mapIFrame","AppointmentBox","futureElements","isFuture","startTime","sortByDateAscending","elementGroup","dateWithOptionalTime","topContainer","CalendarBox","lightGreen","contentAndImageWrap","imageContainer","justifySelf","startButton","CurrentModuleBox","index","trackLabel","hideProgress","moduleImageId","n","parts","resumeLatest","ppeId","renderModule","LoadCurrentProgram","getCurrentProgram","LoadCurrentProgramResponses","currentProgramResponsesLoaded","loadResponses","getProgramResponses","LoadProfileData","isUserAuthenticated","orgSelect","getUserProfile","heigth","textAlign","light","ModuleBoxFlat","isCurrent","useYouwellTranslate","clickElement","isCompletedElement","isCurrentElement","getElementActionText","taskName","overflowX","linkButton","firstButton","ScheduledTasksBox","TaskLabelIcon","patientProgramTaskLabels","gladRygg","work","medicine","xxsBreakpoint","webTimeline","mobileTimeline","retreatIcon","mobileTimelinePhases","mobileTimeLineItems","textTransform","preparationBtn","mediumGreen","paddingRight","changeBtn","followUpBtn","blue","itemGroup","itemTimeLinePart","itemDot","itemLine","itemText","blueToolTip","blueTooltipArrow","darkGreenToolTip","darkGreenTooltipArrow","mediumGreenToolTip","mediumGreenTooltipArrow","infoBoxList","infoBoxListItemText","borderBottomColor","closeIcon","zIndex","TimelineBox","phaseInfo","setPhaseInfo","mobileTimelineInfo","preparation","phases","change","followUp","tooltipClassNames","arrow","darkGreen","webTimelineItems","tooltipClasses","parseBoolString","timeline_rygg","splice","timeline_angst","examinationInterview","phase","infoBoxListItem","UnfinishedTasksBox","moduleItem","moduleLink","taskLink","POLLING_INTERVAL_IN_MINUTES","NUMBER_OF_MESSAGES_TO_LOAD","chats","reverseScrollContainer","listContainer","textInput","inputBackground","sendLine","attachFile","textLine","fromPatient","fromOther","lineFill","textBox","attachedFileButton","defaultState","attachmentFileId","showAttachedFile","createInitialState","MessageList","validateFieldLecagy_TOBEREMOVED","checkHasErrors","attachedFileId","checkTimeStamp","attachedFile","fileTypes","bottomRef","markAsReadIfAny","scroll","scrollHeight","behavior","canLoadMoreMessages","contentHeight","getBreadCrumb","checkForMessages","getMessagesInitial","fetchMoreMessages","senderIsPatient","attachedFileButtons","attachedFileType","senderName","allowFileUpload","onSelectFile","sendMessage","topPadding","topPaddingHeightBreak","overflow","lg","scrollerWidth","inner","heightBreak","titleLogo","appTitle","backgroundImage","Index","Login","accessKeyLogin","Logout","loginRedirect","InsideRedirect","resetPassword","ResetPassword","forgotPassword","ForgotPassword","SelectOrg","accessCode","appError","login_container","loginHeader","loginBox","loginDescription","textField","loading","infoContainer","completedMessageContainer","homeLink","errorMessage","submitted","setValidation","hasClicked","setClicked","handleForgotPassword","errors","startAdornment","sentForgotPasswordEmail","concat","join","match","params","reason","shape","loginLink","password","handleResetPassword","validatePassword","newPassword","token","onMissingTranslation","tmp","noTasksInWeek","body2","weekTitle","borderTopColor","borderTopWidth","week","day","outOfDate","dayHeader","mobileFlex","mobileDate","mobileAddTask","dayHeaderDate","taskList","userSelect","taskTopLine","taskTime","textOverflow","editIcon","bottom","noContent","transition","transitions","create","duration","touchDevice","Calendar","editItem","add","newDate","msInOneWeek","createdByPatient","currentWeek","getWeekNumberFromDate","weekStartDate","getWeekStartDate","addDays","startDay","j","isSameDate","todayDate","noElementsInWeek","setWeek","weekNr","dayIndex","isToday","isTouchDevice","clickTask","hasTime","timeOnly","AddIcon","AddCustomTask","mobileAddIcon","closeEditElement","taskField","addCustomButton","time","slice","elementToAdd","displayName","properties","insertPatientElement","save","instanceOf","getTimeText","getLocalDate","pad2","getHours","getMinutes","EditTask","elementToUpdate","updatePatientElement","deletePatientElement","getDay","elementHeading","elementHeadingTitle","items","contentWidth","elementTaskTitle","noElements","getItems","elementType","questions","getElements","renderElements","allTaskResponsesForElement","list","readOnly","small","ElementSummary","useParams","allTaskResponses","currentProgramTaskResponses","wordBreak","taskDescription","imageDisplay","objectFit","deleteButton","buildFavouriteViewModel","favTask","elementLookup","el","elementName","elementSubIndex","Favourites","deleteFavourite","favToDelete","toLookup","favouriteList","sortByMany","favouriteTasks","fav","Feedback","Videos","ActivityDiary","performance","Performance","SleepDiary","Health","prints","PrintFiles","missingGuardianConsent","MissingGuardianConsent","consent","Consent","baselineChartContainer","detailsChartContainer","elementContent","print","underline","noPrints","printModules","tasksWithPrint","modulePrintFileId","hasPrints","some","taskPrints","noVideos","cI","__html","tabsContainer","chartNavigationButtons","periodTitle","chartContainer","chartHeader","chart","DetailedPerformanceChart","tasksToDisplay","taskLabelsForPerformance","performanceDetailedPeriods","month","period","setPeriod","periodOffset","setPeriodOffset","currentLabel","setCurrentLabel","detailedCompleteRate","getDetailedCompleteRateForPeriod","chartData","toString","currentMonth","moduloBase1","getMonth","currentYear","addMonths","getFullYear","year","subTabsContainer","every","withTheme","hidden","visibility","OverviewPerformanceChart","performanceOverviewPeriods","getCompleteRateForPeriod","total","entry","getAllTasksFromElementGroup","elementIndex","taskWithStartTime","urlToTask","tasksWithStartTime","moduleIndex","getAllTasksToDisplay","calendarTasks","defaultTasks","getCompleteRateForTasks","getFromAndToDateForPeriod","offset","fromDate","toDate","getTasksPastDueDateWithLabelForPeriod","tomorrow","tasksPastDueDateWithLabelForPeriod","completeRateParts","tasksForPeriod","parseInternalLink","taskOrModuleId","hash","LoadPreviewTask","PreviewTask","fab","noHiddenStateValue","prevState","taskDetails","elementStates","toggleHiddenStates","showPrint","AddCommentOverlay","enableComments","getElement","ver","PreviewTaskContent","forwardedRef","allTasksDetails","responsesForCurrentTask","taskVersion","saveChanges","getProgramItem","noHiddenStates","HoveredElement","selectedElementId","getGetResponseFunc","Home","publicStore","USER_IDLE_TIMEOUT_IN_MINUTES","logoutReasons","idleTimeout","logoutOnIdle","getPublicProgramContentLink","LoadPublicProgram","Task","Module","Program","isSingleModule","moduleImage","programHeader","publicRedirectModule","singleactions","navIconLeft","navIconRight","nextDirection","currentStep","nextTaskNr","isLastTask","hasExitNodeElement","__youwellExitNode","go","taskContentRef","validateAndSave","saveWithoutValidation","taskIndexNr","isFirstTask","moreElementsInGroup","clickNext","hasSessionData","isPage","PublicTaskContent","showSavingId","setShowSavingId","formId","saveResponses","taskResponses","showIsSaving","getUpdatedResponsesForTask","AUTOSAVE_TIMEOUT_INTERVAL","getItemFromProgram","SessionFooter","myPeerConnection","negotiationStarted","videoPeerConnections","endPeerConnection","onIceCandidate","ontrack","onnegotiationneeded","onremovetrack","oniceconnectionstatechange","onicegatheringstatechange","onicecandidateerror","onsignalingstatechange","close","startPeerConnection","sendCandidateCallback","remoteTrackCallback","trackRemovedCallback","disconnectedCallback","RTCPeerConnection","iceServers","onicecandidate","evt","candidate","streams","iceConnectionState","sendError","sender","signalingState","setupPeerConnectionStream","localStream","getTracks","addTrack","answerPeerConnection","myId","offerSDP","createAnswerCallback","remoteSDP","RTCSessionDescription","sdp","setRemoteDescription","createAnswer","answer","setLocalDescription","receiveIceCandidate","candidateData","addIceCandidate","startActions","inCallActions","YouwellVideochat","isInTheCall","isBeingCalled","isReady","infoText","signalRConnection","onError","remoteStream","remoteVideo","srcObject","stream","trackList","endCall","hasVideoStreamStarted","getUserMedia","ideal","onSendCandidate","onRemoteStream","onTrackRemoved","onPeerDisconnected","onCreateAnswer","Promise","resolve","reject","navigator","webkitGetUserMedia","mozGetUserMedia","op","audio","localVideo","err","onSignalRStart","stop","transport","HttpTransportType","WebSockets","HubConnectionBuilder","configureLogging","LogLevel","Warning","withUrl","socket","withAutomaticReconnect","build","onSignalrAllowVideocall","onSignalrCloseVideocall","onSignalrReceiveSDP","onReceiveCandidate","onSignalrJoinVideocallFailed","onCallInterrupted","onPingPatient","onclose","createConnection","call","cancelCall","beReadyForCall","disabledReadonlyInput","AsyncTextField","delay","shrink","inputValue","setInputValue","updateAsyncTimer","updatedValue","DelayedFetch","timer","dataCall","delaySeconds","setup","devbannerHeight","banner","warning","contrastText","DEV_LOGIN_KEY","DevelopmentBanner","pw","localStorage","setItem","getItem","passwordDate","showBanner","isOpen","hasValidLogin","handleKeyPress","DialogButton","isDialogOpen","dialogOkAction","dialogCancelText","style","ErrorBoundary","componentStack","ErrorMessage","scrollEl","errorElement","scrollY","scrollIntoView","onClear","muteErrors","scrollMarginTop","filteredMessages","Set","includes","msg","FormLink","IS_BROWSER","DEFAULT_ELEMENT","DEFAULT_EVENTS","IdleTimer","idle","oldDate","lastActive","pageX","pageY","onActive","onIdle","elapsed","getElapsedTime","tId","toggleIdleState","timeoutInMinutes","timeLeft","handleEvent","capture","passive","hasInactivityAlert","inactivityMessage","InactivityAlert","idleTimer","showInactivityAlert","setShowInactivityAlert","alertTimer","closeAlert","flagIcon","LanguageToggle","activeLanguage","setActiveLanguage","lang","code","flags","withLocalize","LoadLanguageData","textTemplates","parsedTemplates","setObjectValue","client","addTranslationForLanguage","rootInline","Loading","show","loadingMessage","inline","delayed","PollData","pollCondition","pollingIntervalInMinutes","callImediately","initialdataCall","PrivateRoute","component","loginUrl","selectOrgUrl","requiredAuthType","encodeURIComponent","ScrollToTop","hardScroll","locationKeys","setLocationKeys","history","useHistory","listen","loc","scrollTo","_","with1dArrowNavigation","minX","Infinity","maxX","refs","setRef","currentId","setCurrentId","handleArrowLeft","handleArrowUp","handleArrowRight","handleArrowDown","handleKeyDown","ctrlKey","shiftKey","altKey","metaKey","keyCode","handleMouseDown","with2dArrowNavigation","minY","maxY","fileLink","internalLink","externalLink","missingContent","LinkElement","origin","source","aspectRatio","handlePostMessage","autoplay","internal","TaskForm","question","responseName","onResponse","questionId","questionKey","FormQuestionProps","QuestionnaireTableProps","contentState","showValidationErrors","getResponses","showScoreValues","elementSettings","questionContentElementTypes","bullseye","handleResponseUpdate","questionnaire","bubbleChoice","q","response","customContentElementTypes","quizResponse","quiz","routeSelection","collapsedTable","inputResponse","inputBox","getInputType","inputType","freetextInputTypes","phone","dateAndTime","singleLineText","FreetextResponse","freetextResponse","freetextConfig","onCompletedValid","freetextStateValue","setFreetextStateValue","showValidation","setShowValidation","freetextType","validate","valid","errorTextKey","handleDateTimeChange","isDateObject","valueString","getDate","onBlur","sharedPickerProps","fullWidth","autoOk","clearable","disableToolbar","ampm","minutesStep","clearLabel","cancelLabel","okLabel","invalidDateMessage","richText","textEditorContent","inputProps","maxLength","divider","dividerSmall","noLine","step","buttons","smallButtons","scaleLabels","lastLabel","ScaleResponse","updateTimeout","updateSliderValue","scaleConfig","minLabel","maxLabel","midLabel","navigation","range","abs","rangeStep","ceil","renderLabels","steps","tabIndex","onKeyDown","onMouseDown","onFocus","buttonStyle","unChecked","longText","BubbleChoiceQuestions","onBubbleClick","isChecked","choiceResponse","checkedResponses","answers","bullsEyeContainer","bullsEye","questionLabel","scoreCircle","line","scorePoint","calculateScore","xPos","yPos","numberOfCircles","circleSize","diagonalFromSenter","sqrt","radius","circleScoreWidth","questionSeparatorLineTopPositions","questionSeparatorLineLeftPositions","questionSeparatorLineTransform","createLines","createCircles","circles","labelPositionOffset","labelPositionOffsetSmall","getQuestionLabelPositionStyle","getQuadrantPosition","mouseClickX","mouseClickY","circleDiameter","center","fromPosX","fromPosY","BullsEyeQuestions","pointPositions","setPointPositions","useSmallLayout","onSetPoint","currentTargetRect","clientHeight","parseFloat","pageXOffset","pageYOffset","quadrantPosition","score","getPointPosition","questionResponse","scaleResponse","circleRadius","pointRadius","questionIndex","angleInDegrees","sin","PI","cos","lines","questionResponses","circle","accordionDetails","gap","rowHeader","rowFilledIcon","cell","cellHeader","cellTextField","ColumnQuestions","cellQuestions","cellData","JSON","parse","handleQuestionChange","updatedData","TableRow","expanded","columnHeaders","rowData","fillArrayToLength","cellCheck","compareLength","cellDataValues","rowIsFilled","handleCellChange","columnIndex","updatedRowData","row","stringify","columnHeader","CollapsedTable","expandedIndex","setExpandedIndex","tableConfig","rowHeaders","tableData","tableResponses","handleRowChange","rowIndex","updatedTableData","ri","results","scoreHeading","resetButton","showScoreButton","success","h6","successIcon","resetButtonSmall","Quiz","resultQuestionId","questionsWithAnswers","showScores","resetQuiz","documentElement","scrollTop","showResults","scoring","pResp","cResp","pAnswer","cAnswer","QuizResponse","quizElement","getQuizElement","quizTaskId","quizTask","column","bottomContainer","arrowImage","triangle","borderRight","triangleText","RouteSelection","leftValue","setLeftValue","rightValue","setRightValue","bottomValue","setBottomValue","answerLeft","answerRight","answerBottom","Arrow","stripHtml","box","inActive","empty","boxRow","first","last","detailsBackdrop","detailsBox","paper","arrowDirections","BottomToTop","LeftToRight","RightToLeft","TopToBottom","LeftToTop","RightToTop","BottomToRight","BottomToLeft","TopToRight","Self","getDirection","offsetWidth","ConnectingLine","showLeftArrow","showRightArrow","ConnectedBoxes","showDetailsBoxIx","setShowDetailsBoxIx","boxes","connectingLines","boxNr","substring","tagId","renderBox","hasContent","taskForm","DefaultElementContent","TaskFormProps","customElementHandler","LinkElementProps","elementPreContent","wrapper","noMargins","inlineContainer","inlineContent","linkWrapper","ingressImage","linkText","readMoreTypes","popup","readMoreLinkTypes","ReadMore","showReadMore","setShowReadMore","toggle","headerText","activeInline","renderLinkElement","renderContent","contentTaskId","contentTask","renderContainerElement","getStylesFromSettings","getHtmlContentPosition","contentPositionFromSetting","specialContentElementTypes","defaultContentElementTypes","readMore","TaskElementContent","linkedResponse","connectedBoxes","customHandeled","HTTP_STATUS_CODES","Unauthorized","Forbidden","NotFound","TooManyRequests","YOUWELL_ERROR_CODES","ElementNotFound","UnknownError","NoInternetConnection","VERSION_EXPIRED","FetchError","errorCode","json","Error","handleErrors","headers","get","previous","disposition","contentType","filenameValues","filename","blobData","jsonHeader","Accept","createRequestParams","requestParamsObject","getErrorMessageOrKey","dispatchError","requestId","errorMessageKey","downloadBlobAsFile","newBlob","Blob","downloadFileName","replace","longTimestamp","msSaveOrOpenBlob","URL","createObjectURL","createElement","href","download","click","revokeObjectURL","refreshPromise","withRefreshToken","refreshUrl","result","fetchWithDefaults","Cookie","getValue","CookieNames","csrf","credentials","fetchWithRefresh","has","refresh","stringValue","toISOString","mapToQueryString","buildRootReducer","allReducers","combineReducers","router","connectRouter","updateStore","store","reducers","replaceReducer","configureStore","composeEnhancers","__REDUX_DEVTOOLS_EXTENSION_COMPOSE__","compose","createStore","applyMiddleware","thunk","routerMiddleware","stateKey","clearState","removeItem","loadState","serializedState","saveState"],"mappings":";QAAA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA,QAAQ,oBAAoB;QAC5B;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA,iBAAiB,4BAA4B;QAC7C;QACA;QACA,kBAAkB,2BAA2B;QAC7C;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,GAAG;;QAEH;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,KAAK;QACL;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,MAAM;QACN;QACA;QACA,MAAM;QACN;QACA;QACA,MAAM;QACN;QACA;QACA;QACA,OAAO;QACP;QACA;QACA;QACA;QACA;QACA;QACA,IAAI;QACJ;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,MAAM;QACN;QACA;QACA;QACA;QACA;QACA;QACA,KAAK;QACL;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,MAAM;QACN;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,KAAK;;QAEL;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA,6BAA6B;QAC7B,6BAA6B;QAC7B;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA,qBAAqB,gBAAgB;QACrC;QACA;QACA,KAAK;QACL;QACA;QACA;QACA,qBAAqB,gBAAgB;QACrC;QACA;QACA,KAAK;QACL;QACA;QACA,KAAK;QACL;QACA;QACA,KAAK;QACL;QACA;QACA;QACA,KAAK;QACL;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,KAAK;;QAEL;QACA;QACA;QACA;QACA;QACA;QACA,KAAK;QACL;QACA;QACA,KAAK;QACL;QACA;QACA;QACA,KAAK;;QAEL;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;QACA,kBAAkB,8BAA8B;QAChD;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA,KAAK;QACL;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,IAAI;QACJ;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA,IAAI;QACJ;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,MAAM;QACN;QACA;QACA;QACA,OAAO;QACP;QACA;QACA;QACA;QACA,IAAI;QACJ;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA,KAAK;QACL;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,oBAAoB,2BAA2B;QAC/C;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,OAAO;QACP;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA,mBAAmB,cAAc;QACjC;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA,gBAAgB,KAAK;QACrB;QACA;QACA;QACA,MAAM;QACN;QACA;QACA;QACA;QACA;QACA,gBAAgB,YAAY;QAC5B;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA,cAAc,4BAA4B;QAC1C;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,MAAM;QACN;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA,IAAI;;QAEJ;QACA;QACA;QACA;QACA;QACA;;QAEA;;QAEA;QACA;QACA,eAAe,4BAA4B;QAC3C;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA,eAAe,4BAA4B;QAC3C;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,iBAAiB,uCAAuC;QACxD;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,iBAAiB,uCAAuC;QACxD;QACA;QACA;QACA;QACA;QACA;QACA;QACA,iBAAiB,sBAAsB;QACvC;QACA;QACA;QACA,QAAQ;QACR;QACA;QACA;QACA;QACA;QACA;QACA,UAAU;QACV;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA,cAAc,wCAAwC;QACtD;QACA;QACA;QACA;QACA;QACA;QACA,KAAK;QACL;QACA;QACA;QACA,OAAO;QACP;QACA;QACA;QACA;QACA;QACA;QACA,SAAS;QACT;QACA;QACA;QACA;QACA;QACA;QACA,MAAM;QACN;QACA;QACA;QACA;QACA;QACA,QAAQ;QACR;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA,MAAM;QACN;QACA,KAAK;QACL;;QAEA;QACA;QACA;QACA,IAAI;QACJ;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;;QAEA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,eAAe;QACf;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;;QAGA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA,0CAA0C,gCAAgC;QAC1E;QACA;;QAEA;QACA;QACA;QACA,wDAAwD,kBAAkB;QAC1E;QACA,iDAAiD,cAAc;QAC/D;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,yCAAyC,iCAAiC;QAC1E,gHAAgH,mBAAmB,EAAE;QACrI;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD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AuC,4DAA4D;AACnG;AACA,kCAAkC,6BAA6B;AAC/D,uEAAuE,oCAAoC,6EAA6E,EAAE,EAAE;AAC5L;AACA;AACA;;;;;;;;;;;;;ACZa;AACb;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,qBAAqB,mBAAO,CAAC,qGAA2C;AACxE,gCAAgC,mBAAO,CAAC,2EAA8B;AACtE,0BAA0B,mBAAO,CAAC,8EAA4B;AAC9D;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;;;;;;;;;;;;AC3Ca;AACb;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,0BAA0B,mBAAO,CAAC,8EAA4B;AAC9D,gCAAgC,mBAAO,CAAC,2EAA8B;AACtE,qBAAqB,mBAAO,CAAC,qGAA2C;AACxE;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;;;;;;;;;;;;ACjCa;AACb;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,qBAAqB,mBAAO,CAAC,qGAA2C;AACxE,gCAAgC,mBAAO,CAAC,2EAA8B;AACtE,gCAAgC,mBAAO,CAAC,0FAAkC;AAC1E;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;;;;;;;;;;;;AC7Da;AACb;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,qBAAqB,mBAAO,CAAC,qGAA2C;AACxE,gCAAgC,mBAAO,CAAC,2EAA8B;AACtE,wBAAwB,mBAAO,CAAC,0EAA0B;AAC1D;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;;;;;;;;;;;;ACnEa;AACb;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,qBAAqB,mBAAO,CAAC,oEAAuB;AACpD,qBAAqB,mBAAO,CAAC,qGAA2C;AACxE,gCAAgC,mBAAO,CAAC,2EAA8B;AACtE;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;;;;;;;;;;;;AChBa;AACb;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,4BAA4B,mBAAO,CAAC,kFAA8B;AAClE,gCAAgC,mBAAO,CAAC,2EAA8B;AACtE,qBAAqB,mBAAO,CAAC,qGAA2C;AACxE;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;;;;;;;;;;;;ACxBa;AACb;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,qBAAqB,mBAAO,CAAC,qGAA2C;AACxE,gCAAgC,mBAAO,CAAC,2EAA8B;AACtE,uBAAuB,mBAAO,CAAC,wEAAyB;AACxD;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;;;;;;;;;;;;ACzBa;AACb;AACA,4EAA4E,OAAO;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,cAAc;AAC5D;AACA,gBAAgB,mBAAO,CAAC,mFAAkB;AAC1C,yBAAyB,mBAAO,CAAC,6FAAuC;AACxE,mBAAmB,mBAAO,CAAC,iFAAiC;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,qFAAqF,uGAAuG,EAAE;AAC9L,SAAS;AACT;AACA,wFAAwF,QAAQ,gGAAgG,EAAE;AAClM,SAAS;AACT,KAAK;AACL,2BAA2B;AAC3B,qDAAqD,qBAAqB,EAAE;AAC5E;AACA,CAAC;AACD;AACA;;;;;;;;;;;;;AC9Ca;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,+BAA+B,mBAAO,CAAC,kFAAwB;AAC/D,6BAA6B,mBAAO,CAAC,wCAAS;AAC9C,gCAAgC,mBAAO,CAAC,2EAA8B;AACtE,0BAA0B,mBAAO,CAAC,qEAA2B;AAC7D,sCAAsC,mBAAO,CAAC,6FAAuC;AACrF,kBAAkB,mBAAO,CAAC,+EAAgC;AAC1D,gBAAgB,mBAAO,CAAC,mDAAW;AACnC,iCAAiC,mBAAO,CAAC,gDAAa;AACtD,mBAAmB,mBAAO,CAAC,iFAAiC;AAC5D,2BAA2B,mBAAO,CAAC,iHAAiD;AACpF,4BAA4B,mBAAO,CAAC,2EAAuB;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA,SAAS;AACT,MAAM,EAAE;AACR,kDAAkD;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT,MAAM,EAAE;AACR,uDAAuD;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT,MAAM,EAAE;AACR,0CAA0C;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT,MAAM,EAAE;AACR,oDAAoD;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT,MAAM,EAAE;AACR,6CAA6C;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,yCAAyC,gFAAgF,EAAE,EAAE;AACvJ;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,yCAAyC,aAAa,wMAAwM;AAC9P,SAAS;AACT,MAAM,EAAE;AACR,0CAA0C;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT,MAAM,EAAE;AACR,0DAA0D;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,0BAA0B,yCAAyC,6BAA6B,EAAE;AAClG,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,0BAA0B,yCAAyC,6BAA6B,EAAE;AAClG;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT,MAAM,EAAE;AACR,wCAAwC;AACxC;AACA;AACA;AACA;AACA;AACA,0BAA0B,2EAA2E;AACrG;AACA,aAAa;AACb;AACA,SAAS;AACT,MAAM,EAAE;AACR,wDAAwD;AACxD;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,MAAM,EAAE;AACR,+CAA+C;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT,MAAM,EAAE;AACR,6CAA6C;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,MAAM,EAAE;AACR,4CAA4C;AAC5C;AACA;AACA;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;;;;;;;;;;;;;;;;;;AC3Ib;AAAA;AACU;AACV,OAAO,IAAU;AACjB;AACA,sBAAsB,mBAAO,CAAC,wJAA2F,EAAE,QAAS,GAAG,eAAe;AACtJ;AACA;AACA;;;;;;;;;;;;;ACPa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,cAAc;AAC5D;AACA,aAAa,mBAAO,CAAC,wEAAmB;AACxC,qBAAqB,mBAAO,CAAC,mGAA0C;AACvE,0CAA0C,mC;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oEAAoE;AACpE;AACA;AACA;AACA;AACA,sJAAsJ;AACtJ;AACA;AACA;AACA;AACA;AACA,mCAAmC,iBAAiB;AACpD,KAAK,IAAI;AACT,sCAAsC;AACtC;AACA;AACA,qCAAqC,oDAAoD,2RAA2R;AACpX,qCAAqC,oDAAoD,6fAA6f;AACtlB;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB,iBAAiB;AACjB,aAAa;AACb;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;;;;;;;;;;;;;ACjJa;AACb,8CAA8C,cAAc;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,8BAA8B;AAC9B,sCAAsC,UAAU,EAAE,aAAa,EAAE;AACjE,qCAAqC,SAAS,EAAE;AAChD,mCAAmC;AACnC,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;;;;;;;;;;;;;AC5Ea;AACb;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,6BAA6B,mBAAO,CAAC,4CAAa;AAClD,kBAAkB,mBAAO,CAAC,oDAAa;AACvC;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0GAA0G,oCAAoC,aAAa,EAAE,EAAE;AAC/J,iBAAiB;AACjB;AACA;AACA;AACA;AACA,uBAAuB,kBAAkB;AACzC;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,yCAAyC,qHAAqH;AAC9J;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AChDA;AACA;AACA;AACA;AACA;AACA;AAEA;AAIA;AACA;AACA;AAGA;AACA;AACA;;AAEA,IAAMQ,MAAM,GAAG,SAATA,MAAS,CAAA5D,KAAK;EAAA,OAAK;IACrB6D,IAAI,EAAE;MACFlD,KAAK,EAAE,MADL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CA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA,oBAAoB;AACpB;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA,KAAK;AACL,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,wCAAwC,qYAAqY,gFAAgF;AAC7f,2CAA2C,6FAA6F;AACxI,wCAAwC,iCAAiC;AACzE,mDAAmD,8BAA8B;AACjF,sEAAsE,oEAAoE;AAC1I;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wEAAwE,+BAA+B,EAAE;AACzG,yEAAyE,gCAAgC,EAAE;AAC3G,2EAA2E,kCAAkC,EAAE;AAC/G,2EAA2E,0CAA0C,EAAE;AACvH,sEAAsE,qCAAqC,EAAE;AAC7G,0BAA0B;AAC1B,mLAAmL,mMAAmM,EAAE;AACxX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,0QAA0Q,+DAA+D,qBAAqB,8CAA8C,uEAAuE;AACvgB;AACA,oDAAoD,+FAA+F;AACnJ,4DAA4D,4FAA4F;AACxJ;AACA,oDAAoD,4DAA4D;AAChH;AACA,8TAA8T,+EAA+E;AAC7Y,gDAAgD,iCAAiC;AACjF,8DAA8D,8BAA8B;AAC5F,gEAAgE,oEAAoE;AACpI;AACA,6EAA6E,8IAA8I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AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,mCAAmC,mBAAO,CAAC,sDAAY;AACvD,aAAa,mBAAO,CAAC,wEAAmB;AACxC,kBAAkB,mBAAO,CAAC,qDAAc;AACxC,mBAAmB,mBAAO,CAAC,uFAAiC;AAC5D,6BAA6B,mBAAO,CAAC,+CAAgB;AACrD,oCAAoC,mBAAO,CAAC,oEAAe;AAC3D,gBAAgB,mBAAO,CAAC,2EAA8B;AACtD,kCAAkC,mBAAO,CAAC,mFAAkC;AAC5E,cAAc,mBAAO,CAAC,uDAAiB;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,qBAAqB;AACrB,mBAAmB;AACnB,oBAAoB;AACpB,KAAK;AACL,CAAC,GAAG,yBAAyB;AAC7B;AACA;AACA;AACA,oDAAoD,sHAAsH;AAC1K;AACA;AACA;AACA;AACA;AACA;AACA,2EAA2E,0CAA0C,EAAE;AACvH;AACA;AACA;AACA,+KAA+K,oCAAoC,EAAE;AACrN;AACA,wCAAwC,gEAAgE;AACxG;AACA;AACA,4CAA4C,8DAA8D,kEAAkE;AAC5K,0DAA0D,0MAA0M;AACpQ,+CAA+C,8DAA8D,geAAge,eAAe,yLAAyL,WAAW,uBAAuB,2HAA2H,qLAAqL;AACvmC,uDAAuD,2FAA2F;AAClJ,KAAK;AACL;AACA;AACA;AACA;AACA;;;;;;;;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AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT,KAAK;AACL,CAAC,GAAG,uBAAuB;AAC3B;AACA;AACA;AACA;AACA;AACA,+CAA+C,+CAA+C,SAAS,8FAA8F,EAAE,UAAU,4BAA4B,6DAA6D,iCAAiC;AAC3U,oCAAoC,+DAA+D;AACnG;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AC7Ea;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E,OAAO;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,eAAe,mBAAO,CAAC,sFAA0B;AACjD,aAAa,mBAAO,CAAC,wEAAmB;AACxC,mCAAmC,mBAAO,CAAC,sDAAY;AACvD,cAAc,mBAAO,CAAC,4CAAO;AAC7B,mCAAmC,mBAAO,CAAC,kEAAc;AACzD,iCAAiC,mBAAO,CAAC,8DAAY;AACrD,cAAc,mBAAO,CAAC,6DAAuB;AAC7C,cAAc,mBAAO,CAAC,mDAAU;AAChC,eAAe,mBAAO,CAAC,0DAAU;AACjC,kCAAkC,mBAAO,CAAC,mFAAkC;AAC5E,cAAc,mBAAO,CAAC,uDAAiB;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT,KAAK;AACL,CAAC;AACD,qCAAqC,mNAAmN;AACxP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yEAAyE,gCAAgC,EAAE;AAC3G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,mFAAmF,+CAA+C,EAAE;AACpI;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,0HAA0H;AAC9J;AACA,mCAAmC;AACnC,wCAAwC,gCAAgC,yGAAyG,+HAA+H;AAChT,8DAA8D,uEAAuE;AACrI;AACA;AACA,oEAAoE,6KAA6K;AACjP;AACA,gDAAgD,sLAAsL;AACtO,4CAA4C,8BAA8B;AAC1E,gEAAgE,qCAAqC;AACrG,0EAA0E,iGAAiG;AAC3K,kEAAkE,6BAA6B;AAC/F,yDAAyD,gHAAgH;AACzK;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC3OA;AACA;AACA;;IAEM4O,S;;;;;;;;;;;;;;;;;;4DACM;MACJC,YAAY,eAAElK,QAAF,8CAAE,UAAU3f;IADpB,C;;;;;;;WAIR,6BAAoB;MAChB2f,QAAQ,CAAC3f,KAAT,GAAiB,KAAKiZ,KAAL,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AAK,EAAE,IADkB;EAEzBisB,cAAc,EAAE,IAFS;EAGzBnX,SAAS,EAAE,IAHc;EAIzBoX,KAAK,EAAE,EAJkB;EAKzBC,WAAW,EAAE,IALY;EAMzBC,qBAAqB,EAAE;AANE,CAA7B;eASeJ,a;AAAA;;;;;;;;;;0BA5JTpU,S;0BAsEAoU,a;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACpFN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AC7Ba;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,cAAc;AAC5D;AACA,kBAAkB,mBAAO,CAAC,4EAA6B;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA,0DAA0D,qCAAqC,+GAA+G;AAC9M;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AClHA;AACA;AAE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ACA;AACA,uCAAuC,oCAAoC;AAC3E;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA,uCAAuC,mCAAmC;AAC1E;AACA,sCAAsC,6BAA6B;AACnE;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,oCAAoC;AAC/E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,sCAAsC;AACnE;AACA;AACA,wBAAwB;AACxB;AACA;AACA,mCAAmC,mCAAmC;AACtE;AACA;AACA,gCAAgC;AAChC;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA,iCAAiC,sCAAsC;AACvE;AACA;AACA;AACA;AACA,mCAAmC,wIAAwI;AAC3K;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8GAA8G,6GAA6G,EAAE;AAC7N;AACA;AACA;AACA;AACA,yIAAyI;AACzI;AACA;AACA;AACA,KAAK,EAAE,EAAE;AACT;AACA;;;;;;;;;;;;;ACpIa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,kBAAkB,mBAAO,CAAC,oDAAa;AACvC,oBAAoB,mBAAO,CAAC,gFAA+B;AAC3D,6BAA6B,mBAAO,CAAC,4CAAa;AAClD,yBAAyB,mBAAO,CAAC,kEAAoB;AACrD;AACA;AACA;AACA,wCAAwC,4BAA4B;AACpE;AACA,8EAA8E,8BAA8B,EAAE;AAC9G;AACA;AACA;AACA;AACA;AACA,kCAAkC,kBAAkB;AACpD,wCAAwC,wBAAwB;AAChE,8BAA8B,cAAc;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA,+HAA+H;AAC/H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA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,kCAAkC,mBAAO,CAAC,mFAAkC;AAC5E,yDAAyD;AACzD;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL,CAAC,EAAE,EAAE;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA,6EAA6E,gBAAgB,yCAAyC;AACtI,KAAK,sBAAsB,kBAAkB,8BAA8B;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA,wEAAwE,+BAA+B,EAAE;AACzG,yEAAyE,gCAAgC,EAAE;AAC3G,6EAA6E,QAAQ,yGAAyG,EAAE;AAChM;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wFAAwF,iBAAiB;AACzG,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qEAAqE,4FAA4F;AACjK;AACA;AACA,8CAA8C;AAC9C;AACA,+CAA+C,+FAA+F;AAC9I;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0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E,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,mCAAmC,mBAAO,CAAC,sDAAY;AACvD,oBAAoB,mBAAO,CAAC,2DAAa;AACzC,6BAA6B,mBAAO,CAAC,6EAAsB;AAC3D,yBAAyB,mBAAO,CAAC,iFAAkB;AACnD,aAAa,mBAAO,CAAC,wEAAmB;AACxC,6BAA6B,mBAAO,CAAC,wEAA8B;AACnE,gBAAgB,mBAAO,CAAC,8EAAiC;AACzD,mBAAmB,mBAAO,CAAC,0FAAoC;AAC/D,kBAAkB,mBAAO,CAAC,kEAA2B;AACrD,kBAAkB,mBAAO,CAAC,kFAAmC;AAC7D,cAAc,mBAAO,CAAC,0DAAoB;AAC1C,kCAAkC,mBAAO,CAAC,sFAAqC;AAC/E,cAAc,mBAAO,CAAC,gEAAuB;AAC7C,uBAAuB,mBAAO,CAAC,oEAAyB;AACxD;AACA;AACA;AACA,wCAAwC;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL,iBAAiB;AACjB,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL,CAAC,EAAE;AACH;AACA,iEAAiE,+BAA+B;AAChG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mDAAmD,iDAAiD;AACpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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GAAG,gBAAgB;AACpB;AACA;AACA;AACA;AACA;AACA;AACA,oEAAoE,2BAA2B,EAAE;AACjG,yEAAyE,4DAA4D,YAAY,EAAE,gBAAgB,EAAE;AACrK,sEAAsE,qCAAqC,EAAE;AAC7G,yEAAyE,gCAAgC,EAAE;AAC3G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,GAAG,0BAA0B;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,GAAG,qBAAqB;AACjC;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,GAAG,0BAA0B;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oFAAoF,yCAAyC;AAC7H;AACA;AACA,6EAA6E,0BAA0B;AACvG;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sEAAsE,qBAAqB;AAC3F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,qCAAqC;AACrC;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,wCAAwC,0BAA0B;AAClE,oCAAoC,qCAAqC;AACzE,6GAA6G,6EAA6E,uBAAuB,EAAE,wBAAwB;AAC3O,mGAAmG,WAAW,oBAAoB,mDAAmD;AACrL,mGAAmG,WAAW,oBAAoB,2CAA2C;AAC7K,oGAAoG,WAAW,oBAAoB,oDAAoD;AACvL,wCAAwC,8BAA8B;AACtE,wDAAwD,6BAA6B;AACrF;AACA;AACA,2DAA2D,iGAAiG,iCAAiC,EAAE;AAC/L;AACA,wFAAwF,gDAAgD;AACxI,yBAAyB,EAAE;AAC3B,2DAA2D,0GAA0G,oCAAoC,EAAE;AAC3M;AACA,wFAAwF,gDAAgD;AACxI,yBAAyB,EAAE;AAC3B,wDAAwD,6HAA6H;AACrL,kEAAkE,4FAA4F;AAC9J,gEAAgE,wFAAwF;AACxJ;AACA,4DAA4D,wDAAwD,0CAA0C,6B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,8BAA8B,mBAAO,CAAC,4CAAO;AAC7C,aAAa,mBAAO,CAAC,wEAAmB;AACxC,qBAAqB,mBAAO,CAAC,qEAAc;AAC3C,yBAAyB,mBAAO,CAAC,iFAAkB;AACnD,6BAA6B,mBAAO,CAAC,+CAAgB;AACrD,cAAc,mBAAO,CAAC,uDAAiB;AACvC,mBAAmB,mBAAO,CAAC,uEAAyB;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL,CAAC;AACD;AACA;AACA,qEAAqE,QAAQ,mGAAmG,EAAE;AAClL,gFAAgF,QAAQ,oGAAoG,EAAE;AAC9L;AACA;AACA,4EAA4E,4CAA4C;AACxH;AACA,wEAAwE,0BAA0B;AAClG;AACA;AACA,wEAAwE,4CAA4C;AACpH;AACA,kDAAkD,0BAA0B;AAC5E,8CAA8C,6BAA6B;AAC3E,6FAA6F,0BAA0B;AACvH,kDAAkD,8BAA8B,mCAAmC,iEAAiE,4HAA4H;AAChT,kEAAkE,qEAAqE,kBAAkB,EAAE;AAC3J;AACA;;;;;;;;;;;;;ACnGa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;A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;AAC/D,kBAAkB,mBAAO,CAAC,kEAA2B;AACrD,wBAAwB,mBAAO,CAAC,0FAAuC;AACvE,kCAAkC,mBAAO,CAAC,sFAAqC;AAC/E,cAAc,mBAAO,CAAC,0DAAoB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA,iDAAiD;AACjD;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL,CAAC,GAAG,wBAAwB;AAC5B,+CAA+C;AAC/C;AACA;AACA,+BAA+B,iBAAiB;AAChD;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,CAAC,IAAI,SAAS;AACd;AACA;AACA;AACA;AACA,yEAAyE,gCAAgC,EAAE;AAC3G,sEAAsE,4DAA4D,EAAE;AACpI,uEAAuE,2CAA2C,EAAE,EAAE;AACtH,iFAAiF,qDAAqD,EAAE;AAC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AAsC,gCAAgC,EAAE,EAAE,EAAE,EAAE;AACpK;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;ACpGa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,aAAa,mBAAO,CAAC,wEAAmB;AACxC,+BAA+B,mBAAO,CAAC,oFAAyB;AAChE,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,mCAAmC,mBAAO,CAAC,sDAAY;AACvD,oBAAoB,mBAAO,CAAC,2DAAa;AACzC,cAAc,mBAAO,CAAC,mEAA0B;AAChD,kBAAkB,mBAAO,CAAC,qFAAsC;AAChE,wBAAwB,mBAAO,CAAC,6FAA0C;AAC1E,kCAAkC,mBAAO,CAAC,yFAAwC;AAClF;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT,iBAAiB;AACjB;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL,CAAC,GAAG,wBAAwB;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,kDAAkD,cAAc,uBAAuB;AACvF;AACA;AACA,wCAAwC,4DAA4D,mCAAmC;AACvI;AACA,4CAA4C,8EAA8E,wDAAwD;AAClL,oDAAoD,qEAAqE;AACzH,wCAAwC,iCAAiC;AACzE,4CAA4C,kCAAkC;AAC9E,4DAA4D,uBAAuB;AACnF,4DAA4D,2CAA2C;AACvG,wDAAwD,+DAA+D;AACvH;AACA,uDAAuD,6BAA6B;AACpF,wDAAwD,yEAAyE;AACjI,qDAAqD,mEAAmE;AACxH,4DAA4D,4DAA4D,yCAAyC,EAAE,EAAE;AACrK;AACA,uDAAuD,uEAAuE,wCAAwC,EAAE,uDAAuD;AAC/N,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;ACnKa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,aAAa,mBAAO,CAAC,wEAAmB;AACxC,+BAA+B,mBAAO,CAAC,oFAAyB;AAChE,eAAe,mBAAO,CAAC,sFAA0B;AACjD,oBAAoB,mBAAO,CAAC,2DAAa;AACzC,cAAc,mBAAO,CAAC,mEAA0B;AAChD,kBAAkB,mBAAO,CAAC,qFAAsC;AAChE,kBAAkB,mBAAO,CAAC,qEAA8B;AACxD,wBAAwB,mBAAO,CAAC,6FAA0C;AAC1E,kCAAkC,mBAAO,CAAC,yFAAwC;AAClF,cAAc,mBAAO,CAAC,6DAAuB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL,CAAC,GAAG,gCAAgC;AACpC;AACA;AACA;AACA;AACA;AACA,sEAAsE,QAAQ,iFAAiF,EAAE;AACjK,uCAAuC;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0EAA0E,oBAAoB;AAC9F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gFAAgF,oBAAoB;AACpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,0BAA0B;AAClE,oCAAoC,6BAA6B;AACjE,oDAAoD,iDAAiD;AACrG,oDAAoD,mBAAmB;AACvE;AACA,oCAAoC,0BAA0B;AAC9D,mDAAmD,gHAAgH,4CAA4C,kBAAkB,2BAA2B,GAAG,EAAE,8EAA8E,eAAe,mBAAmB,0EAA0E,+CAA+C,uEAAuE,+FAA+F,EAAE;AAClpB,mDAAmD,4JAA4J,4CAA4C,kBAAkB,2BAA2B,GAAG,EAAE,iFAAiF,eAAe,mBAAmB;AACha,mDAAmD,qLAAqL,4CAA4C,kBAAkB,sDAAsD,GAAG,EAAE,iGAAiG,4CAA4C,uCAAuC,8BAA8B,oBAAoB,eAAe,mBAAmB;AACzmB;AACA,wDAAwD,qBAAqB;AAC7E,4CAA4C,kCAAkC;AAC9E,4DAA4D,wFAAwF,4CAA4C,kBAAkB,mBAAmB,GAAG,EAAE,EAAE;AAC5O;AACA,2DAA2D,uDAAuD,yDAAyD,kBAAkB,kBAAkB,wBAAwB,kBAAkB,0BAA0B,GAAG,EAAE,sDAAsD;AAC9U,oCAAoC,qCAAqC;AACzE,gDAAgD,wFAAwF;AACxI,gDAAgD,4HAA4H;AAC5K;AACA;;;;;;;;;;;;;ACvLa;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,aAAa,mBAAO,CAAC,wEAAmB;AACxC,oBAAoB,mBAAO,CAAC,2DAAa;AACzC,+BAA+B,mBAAO,CAAC,oFAAyB;AAChE,cAAc,mBAAO,CAAC,mEAA0B;AAChD,kBAAkB,mBAAO,CAAC,qFAAsC;AAChE,wBAAwB,mBAAO,CAAC,6FAA0C;AAC1E,kCAAkC,mBAAO,CAAC,yFAAwC;AAClF,cAAc,mBAAO,CAAC,6DAAuB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,SAAS;AACT,sBAAsB;AACtB;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL,CAAC,GAAG,sBAAsB;AAC1B;AACA;AACA;AACA;AACA;AACA,0EAA0E,2CAA2C,EAAE;AACvH;AACA;AACA;AACA,oIAAoI,kDAAkD,EAAE;AACxL;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,MAAM;AACN,8CAA8C;AAC9C,uEAAuE,oBAAoB;AAC3F,MAAM;AACN,+CAA+C,qEAAqE;AACpH,oCAAoC,6BAA6B;AACjE,wCAAwC,4BAA4B;AACpE,wDAAwD,kEAAkE;AAC1H,wDAAwD,mBAAmB;AAC3E,qEAAqE,gCAAgC;AACrG,2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AAoB;AAC1C,oBAAoB,mBAAO,CAAC,mFAAqB;AACjD,oCAAoC,mBAAO,CAAC,8FAA0B;AACtE,oCAAoC,mBAAO,CAAC,8FAA0B;AACtE,wBAAwB,mBAAO,CAAC,2FAAyB;AACzD,0CAA0C,mBAAO,CAAC,0GAAgC;AAClF,kBAAkB,mBAAO,CAAC,kFAAmC;AAC7D,yCAAyC,mBAAO,CAAC,wGAA+B;AAChF,oDAAoD,mBAAO,CAAC,8HAA0C;AACtG,sDAAsD,mBAAO,CAAC,kIAA4C;AAC1G,2BAA2B,mBAAO,CAAC,sGAA6C;AAChF;AACA;AACA;AACA;AACA,uCAAuC;AACvC;AACA;AACA;AACA;AACA;AACA,6CAA6C;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,CAAC,EAAE;AACH;AACA;AACA;AACA;AACA,gFAAgF,0DAA0D,EAAE;AAC5I;AACA,wJAAwJ,sCAAsC,EAAE;AAChM;AACA;AACA;AACA;AACA,8DAA8D,0CAA0C;AACxG,sEAAsE,uBAAuB;AAC7F,oEAAoE,yCAAyC;AAC7G,yDAAyD,wDAAwD;AACjH,oDAAoD,4KAA4K,qBAAqB,EAAE,0NAA0N,cAAc,EAAE,8DAA8D;AAC/hB,oDAAoD;AACpD;AACA;AACA,aAAa,EAAE;AACf,oDAAoD,2XAA2X;AAC/a;AACA;;;;;;;;;;;;;AC5Ja;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AAC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AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6EAA6E,QAAQ,mGAAmG,EAAE;AAC1L,gFAAgF,0DAA0D,EAAE;AAC5I;AACA;AACA,wJAAwJ,kCAAkC,EAAE;AAC5L;AACA,8DAA8D,sCAAsC;AACpG,sEAAsE,mBAAmB;AACzF,uEAAuE,mBAAmB;AAC1F,yDAAyD,wDAAwD;AACjH,oDAAoD;AACpD;AACA;AACA;AACA,eAAe;AACf;AACA;;;;;;;;;;;;;AC7Ma;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,mCAAmC,mBAAO,CAAC,kGAAqC;AAChF,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,aAAa,mBAAO,CAAC,wEAAmB;AACxC,kCAAkC,mBAAO,CAAC,8GAAiD;AAC3F,kCAAkC,mBAAO,CAAC,sFAAqC;AAC/E,cAAc,mBAAO,CAAC,0DAAoB;AAC1C,yCAAyC,mBAAO,CAAC,wGAA+B;AAChF,wBAAwB,mBAAO,CAAC,2FAAyB;AACzD,0CAA0C,mBAAO,CAAC,0GAAgC;AAClF,2BAA2B,mBAAO,CAAC,sGAA6C;AAChF,4DAA4D;AAC5D;AACA;AACA;AACA;AACA,KAAK;AACL,CAAC,EAAE,EAAE;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gFAAgF,0DAA0D,EAAE;AAC5I,8BAA8B;AAC9B;AACA,6IAA6I,qEAAqE,EAAE;AACpN;AACA,+EAA+E,QAAQ,2JAA2J,EAAE;AACpP;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL,wDAAwD;AACxD;AACA;AACA,wCAAwC,sBAAsB;AAC9D,SAAS;AACT;AACA,MAAM;AACN;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA,wCAAwC,iBAAiB;AACzD,SAAS,IAAI;AACb,oCAAoC,uBAAuB;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gHAAgH,qBAAqB;AACrI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA,0GAA0G,qBAAqB;AAC/H;AACA;AACA,8DAA8D,kDAAkD;AAChH;AACA,0DAA0D,0DAA0D,4HAA4H,GAAG,EAAE;AACrP,wCAAwC,6BAA6B;AACrE,0EAA0E,wBAAwB;AAClG,sGAAsG,sGAAsG;AAC5M;AACA;;;;;;;;;;;;;ACzJa;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,mCAAmC,mBAAO,CAAC,kGAAqC;AAChF,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,aAAa,mBAAO,CAAC,wEAAmB;AACxC,cAAc,mBAAO,CAAC,0EAAoB;AAC1C,6BAA6B,mBAAO,CAAC,kDAAmB;AACxD,kCAAkC,m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A+B;AAChF,kBAAkB,mBAAO,CAAC,kFAAmC;AAC7D,oCAAoC,mBAAO,CAAC,8FAA0B;AACtE,2BAA2B,mBAAO,CAAC,sGAA6C;AAChF,sCAAsC,mBAAO,CAAC,kGAA4B;AAC1E,0CAA0C,mBAAO,CAAC,0GAAgC;AAClF,wBAAwB,mBAAO,CAAC,0FAAuC;AACvE,mBAAmB,mBAAO,CAAC,oFAAoC;AAC/D,6CAA6C;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA,KAAK;AACL,GAAG;AACH;AACA,yHAAyH,gCAAgC,gHAAgH,0BAA0B;AACnS;AACA;AACA;AACA;AACA,0BAA0B;AAC1B,SAAS,WAAW,EAAE,cAAc,EAAE;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qHAAqH,gCAAgC,oBAAoB,4DAA4D;AACrO;AACA;AACA,oCAAoC,cAAc;AAClD,KAAK,IAAI,IAAI,EAAE,IAAI;AACnB;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,uGAAuG,mBAAmB,EAAE;AAC5H,sGAAsG,oBAAoB,EAAE;AAC5H;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6EAA6E,QAAQ,mGAAmG,EAAE;AAC1L,wEAAwE,0CAA0C,EAAE;AACpH,2EAA2E,6CAA6C,EAAE;AAC1H;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,8DAA8D,0CAA0C;AACxG,0DAA0D,2DAA2D;AACrH,sDAAsD,2DAA2D;AACjH,yDAAyD,wDAAwD;AACjH,oDAAoD;AACpD;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;;;;;;;;;;;;;AChPa;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,aAAa,mBAAO,CAAC,wEAAmB;AACxC,kCAAkC,mBAAO,CAAC,sFAAqC;AAC/E,cAAc,mBAAO,CAAC,0DAAoB;AAC1C,oBAAoB,mBAAO,CAAC,mFAAqB;AACjD,oCAAoC,mBAAO,CAAC,8FAA0B;AACtE,wBAAwB,mBAAO,CAAC,2FAAyB;AACzD,0CAA0C,mBAAO,CAAC,0GAAgC;AAClF,oCAAoC,mBAAO,CAAC,8FAA0B;AACtE,oDAAoD,mBAAO,CAAC,8HAA0C;AACtG,oDAAoD,mBAAO,CAAC,8HAA0C;AACtG,2BAA2B,mBAAO,CAAC,sGAA6C;AAChF;AACA,6CAA6C;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA,CAAC,EAAE;AACH;AACA;AACA;AACA;AACA,gFAAgF,0DAA0D,EAAE;AAC5I;AACA,wJAAwJ,0CAA0C,EAAE;AACpM;AACA;AACA,8DAA8D,8CAA8C;AAC5G,oEAAoE,6CAA6C;AACjH,oEAAoE,6CAA6C;AACjH,oDAAoD,wIAAwI,oBAAoB,EAAE,sGAAsG,cAAc,EAAE,kPAAkP;AAC1jB;AACA;AACA,gEAAgE,sFAAsF,qBAAqB,wWAAwW;AACnhB,SAAS;AACT;AACA;;;;;;;;;;;;;AC1La;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E,OAAO;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,kCAAkC,mBAAO,CAAC,sFAAqC;AAC/E,cAAc,mBAAO,CAAC,0DAAoB;AAC1C,oBAAoB,mBAAO,CAAC,mFAAqB;AACjD,oCAAoC,mBAAO,CAAC,8FAA0B;AACtE,oCAAoC,mBAAO,CAAC,8FAA0B;AACtE,wBAAwB,mBAAO,CAAC,2FAAyB;AACzD,0CAA0C,mBAAO,CAAC,0GAAgC;AAClF,kBAAkB,mBAAO,CAAC,kFAAmC;AAC7D,yCAAyC,mBAAO,CAAC,wGAA+B;AAChF,oDAAoD,mBAAO,CAAC,8HAA0C;AACtG,oDAAoD,mBAAO,CAAC,8HAA0C;AACtG,2BAA2B,mBAAO,CAAC,sGAA6C;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,gFAAgF,0DAA0D,EAAE;AAC5I,wJAAwJ,sCAAsC,EAAE;AAChM;AACA;AACA;AACA,8DAA8D,yCAAyC;AACvG,oEAAoE,yCAAyC;AAC7G,oEAAoE,yCAAyC;AAC7G,yDAAyD,wDAAwD;AACjH,oDAAoD,6DAA6D,oBAAoB,EAAE,oDAAoD,cAAc,EAAE,4BAA4B;AACvO,oDAAoD;AACpD;AACA;AACA,aAAa,EAAE;AACf,oDAAoD;AACpD;AACA;AACA,aAAa,EAAE;AACf;AACA;;;;;;;;;;;;;AClHa;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E,OAAO;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,kCAAkC,mBAAO,CAAC,sFAAqC;AAC/E,cAAc,mBAAO,CAAC,0DAAoB;AAC1C,oBAAoB,mBAAO,CAAC,mFAAqB;AACjD,oCAAoC,mBAAO,CAAC,8FAA0B;AACtE,oCAAoC,mBAAO,CAAC,8FAA0B;AACtE,wBAAwB,mBAAO,CAAC,2FAAyB;AACzD,0CAA0C,mBAAO,CAAC,0GAAgC;AAClF,oDAAoD,mBAAO,CAAC,8HAA0C;AACtG,oDAAoD,mBAAO,CAAC,8HAA0C;AACtG,2BAA2B,mBAAO,CAAC,sGAA6C;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,sDAAsD;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,gFAAgF,0DAA0D,EAAE;AAC5I,wJAAwJ,4CAA4C,EAAE;AACtM;AACA;AACA,8DAA8D,wCAAwC;AACtG,oEAAoE,+CAA+C;AACnH,oEAAoE,+CAA+C;AACnH,oDAAoD,4FAA4F,QAAQ,gFAAgF,EAAE,oDAAoD,cAAc,EAAE,GAAG;AACjT,oDAAoD;AACpD;AACA;AACA,aAAa,EAAE;AACf,oDAAoD;AACpD;AACA;AACA,aAAa,EAAE;AACf;AACA;;;;;;;;;;;;;ACvHa;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,aAAa,mBAAO,CAAC,wEAAmB;AACxC,iBAAiB,mBAAO,CAAC,sDAAU;AACnC,cAAc,mBAAO,CAAC,0EAAoB;AAC1C,kCAAkC,mBAAO,CAAC,yFAAwC;AAClF,2CAA2C,mBAAO,CAAC,iGAAsB;AACzE;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,eAAe;AACnE,wDAAwD,6KAA6K;AACrO;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,mCAAmC;AACjF,gDAAgD,0DAA0D;AAC1G,8DAA8D,mBAAmB;AACjF,4DAA4D,mBAAmB;AAC/E,4DAA4D,mBAAmB;AAC/E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,0BAA0B;AACxE,oCAAoC,0CAA0C;AAC9E,+DAA+D,eAAe;AAC9E,6DAA6D,uEAAuE;AACpI,2DAA2D;AAC3D;AACA;AACA;AACA;AACA,iBAAiB,EAAE;AACnB,gFAAgF,+DAA+D;AAC/I,mFAAmF,sDAAsD;AACzI,uDAAuD,2DAA2D,sDAAsD,EAAE;AAC1K,uDAAuD,2GAA2G,6DAA6D,EAAE,EAAE;AACnO,yDAAyD,gBAAgB,6BAA6B,oCAAoC,6CAA6C,6HAA6H,GAAG,EAAE,EAAE;AAC3T;AACA;AACA;AACA,mB;AACA;AACA;AACA;AACA;AACA,iEAAiE,mEAAmE;AACpI,qBAAqB,EAAE;AACvB;AACA;AACA;AACA,mB;AACA;AACA;AACA,iPAAiP;AACjP;AACA;AACA;AACA,mB;AACA;AACA;AACA,iPAAiP;AACjP,sDAAsD,+BAA+B;AACrF,oDAAoD,sDAAsD;AAC1G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;ACzMa;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E,OAAO;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,aAAa,mBAAO,CAAC,wEAAmB;AACxC,mCAAmC,mBAAO,CAAC,sDAAY;AACvD,+BAA+B,mBAAO,CAAC,yFAAwC;AAC/E,wBAAwB,mBAAO,CAAC,4FAA0B;AAC1D,oDAAoD;AACpD,YAAY;AACZ;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL,cAAc;AACd,CAAC,EAAE,EAAE;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gHAAgH,UAAU,EAAE;AAC5H;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6DAA6D,kIAAkI;AAC/L,wDAAwD,yCAAyC;AACjG,oDAAoD,8HAA8H,4KAA4K,+CAA+C,uCAAuC,kBAAkB,EAAE;AACxc;AACA;AACA;AACA;AACA,+EAA+E,+CAA+C,uBAAuB,EAAE,EAAE,EAAE,oBAAoB,UAAU,mBAAmB,EAAE,EAAE;AAChN,6DAA6D,kIAAkI;AAC/L,wDAAwD,yCAAyC;AACjG,oDAAoD,gHAAgH,8EAA8E,4DAA4D,EAAE,cAAc,EAAE,uFAAuF,oHAAoH,+CAA+C,uCAAuC;AACjmB,0DAA0D,kDAAkD;AAC5G,8DAA8D,yBAAyB,IAAI,EAAE;AAC7F;AACA;AACA;AACA;AACA,2DAA2D,4DAA4D,2oBAA2oB,eAAe;AACjxB;AACA;AACA;AACA,iBAAiB,cAAc;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;ACpGa;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,eAAe,mBAAO,CAAC,sFAA0B;AACjD,aAAa,mBAAO,CAAC,wEAAmB;AACxC,yBAAyB,mBAAO,CAAC,iFAAkB;AACnD,6BAA6B,mBAAO,CAAC,qDAAsB;AAC3D,kCAAkC,mBAAO,CAAC,yFAAwC;AAClF,uBAAuB,mBAAO,CAAC,+EAAmC;AAClE,mBAAmB,mBAAO,CAAC,6EAA+B;AAC1D,cAAc,mBAAO,CAAC,6DAAuB;AAC7C,2CAA2C,mBAAO,CAAC,iGAAsB;AACzE,cAAc,mBAAO,CAAC,6EAAkC;AACxD,2DAA2D;AAC3D;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL,CAAC,EAAE,EAAE;AACL;AACA;AACA;AACA;AACA,yEAAyE,gCAAgC,EAAE;AAC3G,0DAA0D;AAC1D;AACA;AACA;AACA,aAAa;AACb,YAAY;AACZ,oCAAoC,0BAA0B;AAC9D,+DAA+D,eAAe;AAC9E;AACA,wCAAwC,mCAAmC;AAC3E,oDAAoD,4IAA4I;AAChM;AACA;;;;;;;;;;;;;ACpEa;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,aAAa,mBAAO,CAAC,wEAAmB;AACxC,yBAAyB,mBAAO,CAAC,iFAAkB;AACnD,kCAAkC,mBAAO,CAAC,yFAAwC;AAClF,6DAA6D;AAC7D;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL,CAAC,EAAE,EAAE;AACL;AACA;AACA;AACA;AACA,8CAA8C,mCAAmC;AACjF,0CAA0C,wCAAwC;AAClF,wDAAwD,wGAAwG;AAChK;AACA,kDAAkD,aAAa;AAC/D,4DAA4D,8CAA8C;AAC1G,kDAAkD,aAAa;AAC/D,4DAA4D,mBAAmB;AAC/E;AACA;;;;;;;;;;;;;AC1Da;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,aAAa,mBAAO,CAAC,wEAAmB;AACxC,oBAAoB,mBAAO,CAAC,2DAAa;AACzC,mCAAmC,mBAAO,CAAC,sDAAY;AACvD,cAAc,mBAAO,CAAC,mEAA0B;AAChD,kCAAkC,mBAAO,CAAC,yFAAwC;AAClF,2CAA2C,mBAAO,CAAC,iGAAsB;AACzE,2BAA2B,mBAAO,CAAC,yGAAgD;AACnF,oCAAoC,mBAAO,CAAC,gGAA2C;AACvF,cAAc,mBAAO,CAAC,6DAAuB;AAC7C,kBAAkB,mBAAO,CAAC,qFAAsC;AAChE,kCAAkC,mBAAO,CAAC,iHAAoD;AAC9F,mBAAmB,mBAAO,CAAC,uFAAuC;AAClE,yDAAyD;AACzD;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL,CAAC,EAAE,EAAE;AACL;AACA;AACA;AACA;AACA;AACA,mFAAmF,gBAAgB,wIAAwI,8BAA8B,EAAE,uGAAuG,EAAE;AACpX,iEAAiE,uEAAuE,EAAE;AAC1I;AACA;AACA;AACA;AACA,8BAA8B,4HAA4H,EAAE;AAC5J,2CAA2C,YAAY,0JAA0J;AACjN,mDAAmD;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN,8CAA8C,0BAA0B;AACxE,oCAAoC,qCAAqC;AACzE,+DAA+D,uCAAuC;AACtG,oCAAoC,iCAAiC;AACrE,wDAAwD,wDAAwD;AAChH,oCAAoC,2BAA2B;AAC/D;AACA,gDAAgD,wCAAwC;AACxF;AACA;AACA,oEAAoE,8CAA8C;AAClH,iBAAiB;AACjB,wDAAwD,mCAAmC;AAC3F,4DAA4D,8CAA8C,wGAAwG;AAClN,wDAAwD,kCAAkC;AAC1F,gEAAgE,8CAA8C,0GAA0G;AACxN,SAAS;AACT;AACA;;;;;;;;;;;;;AChJa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E,OAAO;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,aAAa,mBAAO,CAAC,wEAAmB;AACxC,kCAAkC,mBAAO,CAAC,yFAAwC;AAClF,cAAc,mBAAO,CAAC,6DAAuB;AAC7C,kCAAkC,mBAAO,CAAC,iHAAoD;AAC9F,2CAA2C,mBAAO,CAAC,iGAAsB;AACzE,oBAAoB,mBAAO,CAAC,oFAAsB;AAClD,wBAAwB,mBAAO,CAAC,4FAA0B;AAC1D,2BAA2B,mBAAO,CAAC,yGAAgD;AACnF,yDAAyD;AACzD;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL,CAAC,EAAE,EAAE;AACL;AACA;AACA;AACA;AACA;AACA,gFAAgF,0DAA0D,EAAE;AAC5I;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,sBAAsB;AAC9D,SAAS;AACT;AACA;AACA;AACA,kEAAkE,0BAA0B,EAAE;AAC9F;AACA;AACA;AACA;AACA,8DAA8D;AAC9D;AACA;AACA;AACA,8FAA8F;AAC9F;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6DAA6D,2BAA2B,EAAE;AAC1F,uCAAuC,iBAAiB;AACxD,SAAS,IAAI;AACb;AACA;AACA,0BAA0B;AAC1B;AACA;AACA;AACA;AACA;AACA,6DAA6D,wBAAwB,EAAE;AACvF;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,0BAA0B;AAC1B;AACA;AACA,gDAAgD;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gGAAgG,qBAAqB;AACrH;AACA;AACA;AACA,oFAAoF,kBAAkB,EAAE;AACxG;AACA,4EAA4E,kBAAkB,EAAE;AAChG;AACA;AACA,aAAa;AACb;AACA,oGAAoG,qBAAqB;AACzH;AACA;AACA;AACA;AACA;AACA;AACA,mDAAmD,QAAQ,2IAA2I;AACtM,4EAA4E,4BAA4B,EAAE;AAC1G,8CAA8C,0BAA0B;AACxE,2DAA2D,oCAAoC;AAC/F,qEAAqE,0CAA0C;AAC/G;AACA;AACA,gDAAgD,0DAA0D;AAC1G,uDAAuD,6nBAA6nB,WAAW,uBAAuB,eAAe,iCAAiC,EAAE,oBAAoB,eAAe,0BAA0B,kCAAkC,EAAE;AACz2B;AA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A;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL,CAAC,EAAE,EAAE;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6EAA6E,QAAQ,mGAAmG,EAAE;AAC1L,gFAAgF,0DAA0D,EAAE;AAC5I,wJAAwJ,gDAAgD,EAAE;AAC1M;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA,4EAA4E,kFAAkF,EAAE;AAChK;AACA,oBAAoB;AACpB;AACA;AACA;AACA;AACA,mJAAmJ,uHAAuH,EAAE;AAC5Q,sKAAsK,8IAA8I,EAAE;AACtT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,sBAAsB;AAC9D,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kEAAkE,0BAA0B,EAAE;AAC9F;AACA;AACA;AACA;AACA,8DAA8D;AAC9D;AACA;AACA;AACA,8FAA8F;AAC9F;AACA;AACA;AACA;AACA;AACA;AACA,6DAA6D,2BAA2B,EAAE;AAC1F,uCAAuC,iBAAiB;AACxD,SAAS,IAAI;AACb;AACA;AACA;AACA;AACA,0BAA0B;AAC1B;AACA;AACA;AACA;AACA,gEAAgE,8BAA8B,EAAE;AAChG;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD;AACA;AACA;AACA,SAAS;AACT;AACA,gFAAgF,kBAAkB,EAAE;AACpG;AACA;AACA,wEAAwE,kBAAkB,EAAE;AAC5F;AACA;AACA,SAAS;AACT,kDAAkD;AAClD;AACA;AACA;AACA;AACA;AACA,uGAAuG,qBAAqB;AAC5H;AACA;AACA;AACA;AACA,kCAAkC;AAClC;AACA;AACA,8GAA8G,qBAAqB;AACnI;AACA;AACA;AACA;AACA;AACA;AACA,mDAAmD,QAAQ,2IAA2I;AACtM;AACA,8CAA8C,0BAA0B;AACxE,2DAA2D,sGAAsG;AACjK;AACA;AACA,gDAAgD,uDAAuD;AACvG,8HAA8H,8BAA8B,aAAa,wEAAwE;AACjP;AACA,2DAA2D,qGAAqG,mCAAmC,EAAE,sCAAsC,6FAA6F,kDAAkD,uCAAuC,kBAAkB,EAAE;AACrb,sLAAsL,yjBAAyjB,WAAW,uBAAuB,eAAe,8BAA8B,EAAE,oBAAoB,eAAe,8BAA8B,mCAAmC,EAAE;AACt6B;AACA;AACA;AACA,qBAAqB,cAAc;AACnC,wDAAwD,gCAAgC;AACxF,SAAS;AACT,oCAAoC,4BAA4B;AAChE,oDAAoD,mDAAmD;AACvG,uDAAuD,uCAAuC,mCAAmC,oDAAoD,8BAA8B,yJAAyJ;AAC5W,gDAAgD,wHAAwH;AACxK,wEAAwE,kEAAkE;AAC1I;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AC/Pa;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,aAAa,mBAAO,CAAC,wEAAmB;AACxC,mCAAmC,mBAAO,CAAC,sDAAY;AACvD,kCAAkC,mBAAO,CAAC,yFAAwC;AAClF,2CAA2C,mBAAO,CAAC,iGAAsB;AACzE,wBAAwB,mBAAO,CAAC,4FAA0B;AAC1D,6DAA6D;AAC7D;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL,CAAC,EAAE,EAAE;AACL,uFAAuF;AACvF;AACA;AACA;AACA,sBAAsB;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,gCAAgC;AACpE,+DAA+D,qFAAqF;AACpJ;AACA;AACA;AACA;AACA,+DAA+D,6BAA6B;AAC5F,+EAA+E,gDAAgD,sDAAsD,kCAAkC,EAAE;AACzN,2IAA2I;AAC3I;AACA,mB;AACA;AACA,kKAAkK;AAClK;AACA;AACA;AACA;AACA,iIAAiI,oCAAoC,QAAQ,8HAA8H,EAAE,EAAE;AAC/S;AACA;AACA;AACA,2B;AACA;AACA,kKAAkK;AAClK,qBAAqB,IAAI,EAAE;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AC9Fa;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,kCAAkC,mBAAO,CAAC,iHAAoD;AAC9F,cAAc,mBAAO,CAAC,6DAAuB;AAC7C;AACA,gFAAgF,0DAA0D,EAAE;AAC5I;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;;;;;;;;;;;;ACvCa;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,cAAc,mBAAO,CAAC,6DAAuB;AAC7C,wBAAwB,mBAAO,CAAC,6FAA0C;AAC1E;AACA,sEAAsE,0CAA0C,EAAE;AAClH;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;;;;;;;;;;;;ACvCa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E,OAAO;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,aAAa,mBAAO,CAAC,wEAAmB;AACxC,oBAAoB,mBAAO,CAAC,2DAAa;AACzC,mCAAmC,mBAAO,CAAC,sDAAY;AACvD,cAAc,mBAAO,CAAC,mEAA0B;AAChD,+BAA+B,mBAAO,CAAC,yFAAwC;AAC/E,2CAA2C,mBAAO,CAAC,iGAAsB;AACzE,wBAAwB,mBAAO,CAAC,6FAA0C;AAC1E,kBAAkB,mBAAO,CAAC,qFAAsC;AAChE,oCAAoC,mBAAO,CAAC,gGAA2C;AACvF,yDAAyD;AACzD;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL,CAAC,EAAE,EAAE;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,QAAQ,6KAA6K;AAClO;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4DAA4D;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uEAAuE,4CAA4C,EAAE;AACrH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oFAAoF,6BAA6B,UAAU,wBAAwB,GAAG,EAAE;AACxJ,KAAK;AACL,6BAA6B,6BAA6B,SAAS,qEAAqE,GAAG,EAAE;AAC7I,8CAA8C,0BAA0B;AACxE,oCAAoC,qCAAqC;AACzE,+DAA+D,iDAAiD;AAChH,oCAAoC,iCAAiC;AACrE,wDAAwD,wDAAwD;AAChH,oCAAoC,+BAA+B;AACnE;AACA,gDAAgD,0GAA0G;AAC1J,wDAAwD,oCAAoC;AAC5F,wDAAwD,oCAAoC;AAC5F,wDAAwD,+CAA+C;AACvG,4DAA4D,8CAA8C,0GAA0G;AACpN,wDAAwD,8CAA8C;AACtG,gEAAgE,8CAA8C,4GAA4G;AAC1N,SAAS;AACT;AACA;;;;;;;;;;;;;AC5Ka;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E,OAAO;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,aAAa,mBAAO,CAAC,wEAAmB;AACxC,oBAAoB,mBAAO,CAAC,2DAAa;AACzC,cAAc,mBAAO,CAAC,mEAA0B;AAChD,kCAAkC,mBAAO,CAAC,yFAAwC;AAClF,2CAA2C,mBAAO,CAAC,iGAAsB;AACzE,wBAAwB,mBAAO,CAAC,6FAA0C;AAC1E,oCAAoC,mBAAO,CAAC,mFAAe;AAC3D,mBAAmB,mBAAO,CAAC,6EAA+B;AAC1D,yDAAyD;AACzD;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL,CAAC,EAAE,EAAE;AACL;AACA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA,2BAA2B;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,+CAA+C;AAC/C,wCAAwC,qBAAqB;AAC7D;AACA,iFAAiF,qBAAqB;AACtG;AACA;AACA,iFAAiF,qBAAqB;AACtG;AACA;AACA;AACA,gDAAgD;AAChD;AACA,MAAM;AACN,6DAA6D;AAC7D;AACA;AACA;AACA;AACA,wCAAwC,iBAAiB;AACzD,SAAS;AACT,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,0BAA0B;AACxE,oCAAoC,qCAAqC;AACzE,+DAA+D,2CAA2C;AAC1G,oCAAoC,+BAA+B;AACnE,sDAAsD,qCAAqC,oDAAoD;AAC/I,sDAAsD,qDAAqD,0MAA0M,GAAG,EAAE;AAC1T;AACA,4DAA4D,sBAAsB;AAClF;AACA,4DAA4D,uBAAuB;AACnF,+DAA+D,mBAAmB,yDAAyD,4JAA4J;AACvS,sEAAsE,EAAE;AACxE;AACA,6DAA6D,6BAA6B;AAC1F,gDAAgD,oFAAoF;AACpI;AACA;;;;;;;;;;;;;ACxJa;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,aAAa,mBAAO,CAAC,wEAAmB;AACxC,cAAc,mBAAO,CAAC,0EAAoB;AAC1C,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,kCAAkC,mBAAO,CAAC,yFAAwC;AAClF,6DAA6D;AAC7D;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL,CAAC,EAAE,EAAE;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD,sDAAsD;AACtG,+CAA+C,uFAAuF,yBAAyB,EAAE,uBAAuB,0BAA0B,EAAE;AACpN,6EAA6E,oBAAoB;AACjG,uDAAuD,0CAA0C;AACjG,aAAa,EAAE;AACf;AACA;;;;;;;;;;;;;ACzDa;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,cAAc;AAC5D;AACA,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,aAAa,mBAAO,CAAC,wEAAmB;AACxC,yBAAyB,mBAAO,CAAC,iFAAkB;AACnD,6DAA6D;AAC7D,YAAY;AACZ;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL,CAAC,EAAE,EAAE;AACL;AACA;AACA;AACA,8CAA8C,0BAA0B;AACxE,oDAAoD,mFAAmF;AACvI,oDAAoD,2CAA2C;AAC/F,gDAAgD,2CAA2C;AAC3F;AACA;;;;;;;;;;;;;AChDa;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,mCAAmC,mBAAO,CAAC,kGAAqC;AAChF,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,aAAa,mBAAO,CAAC,wEAAmB;AACxC,gEAAgE;AAChE;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL,CAAC,EAAE,EAAE;AACL;AACA;AACA;AACA,wCAAwC,0BAA0B;AAClE,6CAA6C,4EAA4E;AACzH,gDAAgD,2CAA2C;AAC3F,oCAAoC,0BAA0B;AAC9D;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AC7Da;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,aAAa,mBAAO,CAAC,wEAAmB;AACxC,qCAAqC,mBAAO,CAAC,kGAA4C;AACzF,6DAA6D;AAC7D;AACA;AACA;AACA;AACA,KAAK;AACL,CAAC,EAAE,EAAE;AACL;AACA;AACA;AACA,8CAA8C,0BAA0B;AACxE,qDAAqD,iDAAiD;AACtG;AACA;;;;;;;;;;;;;AC7Ca;AACb,8CAA8C,cAAc;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,4EAA4E;AAC7E;AACA;AACA;AACA;AACA;AACA,CAAC,qFAAqF;AACtF;AACA;AACA;AACA;AACA;AACA,CAAC,2FAA2F;AAC5F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,+EAA+E;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,2FAA2F;AAC5F;AACA;AACA;AACA;AACA,CAAC,mEAAmE;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,wFAAwF;AACzF;AACA;AACA;AACA;AACA,CAAC,iGAAiG;AAClG;AACA;AACA;AACA;AACA;AACA,CAAC,oGAAoG;AACrG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,iGAAiG;;;;;;;;;;;;;AC9ErF;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E,OAAO;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,cAAc;AAC5D;AACA,eAAe,mBAAO,CAAC,+CAAQ;AAC/B,kBAAkB,mBAAO,CAAC,qFAAsC;AAChE,oBAAoB,mBAAO,CAAC,yFAAwC;AACpE,mBAAmB,mBAAO,CAAC,uFAAuC;AAClE,wBAAwB,mBAAO,CAAC,qFAAmB;AACnD,2BAA2B,mBAAO,CAAC,yGAAgD;AACnF;AACA;AACA;AACA,gGAAgG,qDAAqD,EAAE;AACvJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0KAA0K,wBAAwB,EAAE;AACpM;AACA;AACA;AACA;AACA,4BAA4B,gBAAgB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iEAAiE;AACjE,6DAA6D;AAC7D,uIAAuI,mBAAmB,EAAE;AAC5J,yIAAyI,mBAAmB,EAAE;AAC9J,qIAAqI,oBAAoB,EAAE;AAC3J,4IAA4I,mBAAmB,EAAE;AACjK,8IAA8I,oBAAoB,EAAE;AACpK;AACA,wIAAwI,2GAA2G,EAAE;AACrP,mDAAmD,wBAAwB,8MAA8M;AACzR;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,oIAAoI,oLAAoL,EAAE;AAC1T;AACA,iEAAiE;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mDAAmD,qBAAqB;AACxE;AACA,+CAA+C,qBAAqB;AACpE,iBAAiB,IAAI;AACrB,+IAA+I,0HAA0H,EAAE;AAC3Q,6EAA6E,mCAAmC,mGAAmG;AACnN;AACA;AACA,kEAAkE,mBAAmB,mGAAmG;AACxL;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qFAAqF,0IAA0I,yCAAyC,8EAA8E,cAAc,EAAE,EAAE,EAAE,GAAG;AAC7W;AACA,wFAAwF,sKAAsK,6EAA6E,EAAE,YAAY;AACzV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,mEAAmE;AACnE;AACA;AACA;AACA,8BAA8B,iBAAiB;AAC/C,CAAC,IAAI,EAAE;AACP;AACA,gDAAgD,oGAAoG,4EAA4E,EAAE,IAAI;AACtO;;;;;;;;;;;;;AC9Ia;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,yBAAyB,mBAAO,CAAC,iFAAkB;AACnD,cAAc,mBAAO,CAAC,0DAAoB;AAC1C,qBAAqB,mBAAO,CAAC,oFAAoC;AACjE,mBAAmB,mBAAO,CAAC,0FAAoC;AAC/D,6BAA6B,mBAAO,CAAC,kDAAmB;AACxD,mCAAmC,mBAAO,CAAC,0EAAc;AACzD,+BAA+B,mBAAO,CAAC,kEAAU;AACjD;AACA;AACA,yEAAyE,qCAAqC,EAAE;AAChH;AACA;AACA;AACA;AACA,4DAA4D,uBAAuB;AACnF;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,uDAAuD,qGAAqG;AAC5J,uDAAuD,0DAA0D;AACjH;AACA,uDAAuD,uCAAuC;AAC9F;AACA;;;;;;;;;;;;;ACvDa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,mCAAmC,mBAAO,CAAC,sDAAY;AACvD,aAAa,mBAAO,CAAC,wEAAmB;AACxC,qBAAqB,mBAAO,CAAC,qEAAc;AAC3C,eAAe,mBAAO,CAAC,sFAA0B;AACjD,qBAAqB,mBAAO,CAAC,oFAAoC;AACjE,kCAAkC,mBAAO,CAAC,sFAAqC;AAC/E,mBAAmB,mBAAO,CAAC,0EAA4B;AACvD,uBAAuB,mBAAO,CAAC,4EAAgC;AAC/D,kBAAkB,mBAAO,CAAC,kFAAmC;AAC7D,6BAA6B,mBAAO,CAAC,kDAAmB;AACxD,wCAAwC,mBAAO,CAAC,8FAAyC;AACzF,kBAAkB,mBAAO,CAAC,uEAAa;AACvC,cAAc,mBAAO,CAAC,gEAAuB;AAC7C,wBAAwB,mBAAO,CAAC,8FAAyC;AACzE,cAAc,mBAAO,CAAC,+DAAS;AAC/B,cAAc,mBAAO,CAAC,0DAAoB;AAC1C,cAAc,mBAAO,CAAC,iEAAuB;AAC7C,mCAAmC,mBAAO,CAAC,gGAAyB;AACpE,gCAAgC,mBAAO,CAAC,0FAAsB;AAC9D,gCAAgC,mBAAO,CAAC,0FAAsB;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT,oBAAoB;AACpB;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT,sBAAsB;AACtB;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA,yDAAyD,sBAAsB,EAAE,GAAG,iBAAiB;AACrG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAC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ACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,aAAa,mBAAO,CAAC,wEAAmB;AACxC,+BAA+B,mBAAO,CAAC,kFAAwB;AAC/D,yBAAyB,mBAAO,CAAC,iFAAkB;AACnD,kCAAkC,mBAAO,CAAC,yFAAwC;AAClF,cAAc,mBAAO,CAAC,6DAAuB;AAC7C,kBAAkB,mBAAO,CAAC,qFAAsC;AAChE,6BAA6B,mBAAO,CAAC,qDAAsB;AAC3D,cAAc,mBAAO,CAAC,mEAA0B;AAChD,mBAAmB,mBAAO,CAAC,uFAAuC;AAClE,cAAc,mBAAO,CAAC,gEAAU;AAChC,0CAA0C,mBAAO,CAAC,mGAAqB;AACvE,mBAAmB,mBAAO,CAAC,6EAA+B;AAC1D,qBAAqB,mBAAO,CAAC,uFAAuC;AACpE,wCAAwC,mBAAO,CAAC,+FAAmB;AACnE;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT,KAAK;AACL,CAAC,GAAG,kBAAkB;AACtB;AACA;AACA;AACA;AACA;AACA;AACA,yEAAyE,0FAA0F,EAAE;AACrK,0CAA0C,kDAAkD,EAAE;AAC9F,8CAA8C,kDAAkD,EAAE,MAAM;AACxG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB,iBAAiB;AACjB;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4DAA4D;AAC5D,oBAAoB,MAAM;AAC1B,oBAAoB;AACpB,oCAAoC,mDAAmD;AACvF,wCAAwC,kCAAkC;AAC1E,4CAA4C,yBAAyB;AACrE;AACA,gEAAgE,gBAAgB;AAChF,gEAAgE,gBAAgB;AAChF,wDAAwD,gBAAgB;AACxE,gEAAgE,WAAW;AAC3E,wCAAwC,kCAAkC;AAC1E,4CAA4C,qCAAqC,uDAAuD,gDAAgD;AACxL,8DAA8D,kCAAkC;AAChG,4DAA4D,kCAAkC,qMAAqM,8CAA8C;AACjV,4CAA4C,mCAAmC;AAC/E,sEAAsE,0CAA0C;AAChH;AACA,oDAAoD,kCAAkC;AACtF;AACA,oDAAoD,gCAAgC;AACpF,gEAAgE,+GAA+G;AAC/K,gEAAgE,kGAAkG,mFAAmF,gCAAgC;AACrR,4DAA4D,sGAAsG,kCAAkC,EAAE,EAAE;AACxM,4CAA4C,qCAAqC;AACjF,8DAA8D,kCAAkC;AAChG;AACA,oDAAoD,+JAA+J;AACnN;AACA;;;;;;;;;;;;;AC3La;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,aAAa,mBAAO,CAAC,wEAAmB;AACxC,cAAc,mBAAO,CAAC,mEAA0B;AAChD,mBAAmB,mBAAO,CAAC,6EAA+B;AAC1D,cAAc,mBAAO,CAAC,gEAAU;AAChC,kBAAkB,mBAAO,CAAC,wEAAc;AACxC,kCAAkC,mBAAO,CAAC,yFAAwC;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL,CAAC,GAAG,sBAAsB;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC;AACA,qCAAqC,kBAAkB;AACvD,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uFAAuF,mCAAmC;AAC1H,oCAAoC,0BAA0B;AAC9D,wCAAwC,2BAA2B;AACnE,wDAAwD,sDAAsD;AAC9G,8DAA8D,oHAAoH,+DAA+D,EAAE,uFAAuF;AAC1U,wCAAwC,2BAA2B;AACnE,wDAAwD,sDAAsD;AAC9G,8DAA8D,kHAAkH,8DAA8D,EAAE,sFAAsF;AACtU,wCAAwC,0BAA0B;AAClE,oDAAoD,mCAAmC;AACvF,yDAAyD,gCAAgC;AACzF;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AC7Ja;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,aAAa,mBAAO,CAAC,wEAAmB;AACxC,kCAAkC,mBAAO,CAAC,yFAAwC;AAClF,cAAc,mBAAO,CAAC,6DAAuB;AAC7C,6BAA6B,mBAAO,CAAC,2EAAiC;AACtE,kBAAkB,mBAAO,CAAC,qFAAsC;AAChE,mBAAmB,mBAAO,CAAC,6EAA+B;AAC1D,kBAAkB,mBAAO,CAAC,wEAAc;AACxC,kBAAkB,mBAAO,CAAC,qFAAsC;AAChE,yDAAyD;AACzD,YAAY;AACZ;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL,CAAC,EAAE,EAAE,GAAG,0BAA0B;AAClC;AACA;AACA;AACA;AACA;AACA,wEAAwE,+BAA+B,EAAE;AACzG,6BAA6B,gCAAgC;AAC7D;AACA,wCAAwC;AACxC;AACA;AACA,wCAAwC,iBAAiB;AACzD,SAAS;AACT;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,KAAK;AACL;AACA;AACA,2CAA2C,qGAAqG;AAChJ,oEAAoE,oBAAoB;AACxF;AACA,wCAAwC,0BAA0B;AAClE,2CAA2C,2BAA2B;AACtE;AACA;AACA;AACA,2DAA2D,iBAAiB;AAC5E,sEAAsE,oMAAoM;AAC1Q;AACA;AACA,2DAA2D,iBAAiB;AAC5E,sEAAsE,qMAAqM;AAC3Q,oCAAoC,6BAA6B;AACjE,gDAAgD,uCAAuC;AACvF;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AC3Ga;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,aAAa,mBAAO,CAAC,wEAAmB;AACxC,mBAAmB,mBAAO,CAAC,6EAA+B;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,SAAS;AACT,mBAAmB;AACnB,sBAAsB;AACtB;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT,KAAK;AACL,CAAC,GAAG,kBAAkB;AACtB;AACA;AACA;AACA,wCAAwC,kCAAkC,8BAA8B,EAAE;AAC1G,2CAA2C,0BAA0B;AACrE,gDAAgD,4CAA4C;AAC5F,+DAA+D,gCAAgC;AAC/F,oCAAoC,6BAA6B;AACjE,uEAAuE,uDAAuD,4EAA4E,4EAA4E;AACtR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;ACjFa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E,OAAO;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,aAAa,mBAAO,CAAC,wEAAmB;AACxC,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,mCAAmC,mBAAO,CAAC,sDAAY;AACvD,kCAAkC,mBAAO,CAAC,yFAAwC;AAClF,mCAAmC,mBAAO,CAAC,qFAAc;AACzD,cAAc,mBAAO,CAAC,gEAAU;AAChC,cAAc,mBAAO,CAAC,mEAA0B;AAChD;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT,sBAAsB;AACtB,mCAAmC;AACnC;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA,yDAAyD,sBAAsB,EAAE,GAAG,kBAAkB;AACtG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,qDAAqD;AACrD;AACA,gHAAgH,4BAA4B,EAAE;AAC9I;AACA,MAAM;AACN,0DAA0D;AAC1D,oFAAoF,+CAA+C,EAAE;AACrI;AACA,MAAM;AACN;AACA;AACA,0CAA0C,4BAA4B,iCAAiC;AACvG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,0BAA0B;AAClE,oCAAoC,0CAA0C;AAC9E,wCAAwC,2BAA2B;AACnE,wDAAwD,sDAAsD;AAC9G,wDAAwD,kEAAkE;AAC1H,kEAAkE,8JAA8J,4BAA4B,sCAAsC;AAClS,kEAAkE,6JAA6J,0BAA0B,uCAAuC;AAChS,uDAAuD,uCAAuC;AAC9F,oDAAoD,sDAAsD;AAC1G,sFAAsF,4CAA4C;AAClI,wCAAwC,uCAAuC;AAC/E,2CAA2C;AAC3C;AACA,mB;AACA;AACA,ySAAyS,sBAAsB,EAAE,GAAG,GAAG,EAAE;AACzU,4CAA4C,8CAA8C;AAC1F,wDAAwD,8IAA8I;AACtM;AACA;;;;;;;;;;;;;AChLa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,aAAa,mBAAO,CAAC,wEAAmB;AACxC,mCAAmC,mBAAO,CAAC,sDAAY;AACvD,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,kCAAkC,mBAAO,CAAC,yFAAwC;AAClF,kBAAkB,mBAAO,CAAC,qFAAsC;AAChE,cAAc,mBAAO,CAAC,oEAA0B;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT,sBAAsB;AACtB;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA,yDAAyD,sBAAsB,EAAE,GAAG,qBAAqB;AACzG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,4BAA4B,sKAAsK;AAC5O;AACA;AACA;AACA;AACA,0CAA0C,4BAA4B,0DAA0D;AAChI;AACA;AACA;AACA;AACA,0CAA0C,4BAA4B,wDAAwD;AAC9H;AACA;AACA;AACA;AACA,wCAAwC,yBAAyB;AACjE,oCAAoC,0CAA0C;AAC9E,wCAAwC,2BAA2B;AACnE,4CAA4C,2CAA2C;AACvF,gDAAgD,wCAAwC;AACxF,gEAAgE,sDAAsD;AACtH;AACA,wDAAwD,wHAAwH;AAChL,kEAAkE,oIAAoI,4BAA4B,0DAA0D;AAC5R,kEAAkE,oIAAoI,0BAA0B,2DAA2D;AAC3R,uDAAuD,uCAAuC;AAC9F,oDAAoD,sDAAsD;AAC1G,oDAAoD,uEAAuE;AAC3H;AACA,sEAAsE,+HAA+H,kHAAkH,gEAAgE;AACvX,aAAa;AACb,oDAAoD,sDAAsD;AAC1G,wCAAwC,0CAA0C;AAClF,oDAAoD;AACpD;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA,yBAAyB;AACzB;AACA,qBAAqB,EAAE,2EAA2E,+CAA+C,iEAAiE;AAClN;AACA,0EAA0E,sEAAsE;AAChJ,mEAAmE,sEAAsE,8BAA8B,EAAE;AACzK,oDAAoD;AACpD;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA,yBAAyB;AACzB;AACA,qBAAqB,EAAE,iFAAiF,+CAA+C,iEAAiE;AACxN;AACA,0EAA0E,sEAAsE;AAChJ,mEAAmE,sEAAsE,gCAAgC,EAAE;AAC3K;AACA;;;;;;;;;;;;;AClNa;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,aAAa,mBAAO,CAAC,wEAAmB;AACxC,yBAAyB,mBAAO,CAAC,iFAAkB;AACnD,+BAA+B,mBAAO,CAAC,kFAAwB;AAC/D,mCAAmC,mBAAO,CAAC,sDAAY;AACvD,kCAAkC,mBAAO,CAAC,yFAAwC;AAClF,cAAc,mBAAO,CAAC,mEAA0B;AAChD,6BAA6B,mBAAO,CAAC,qDAAsB;AAC3D,kBAAkB,mBAAO,CAAC,qFAAsC;AAChE,cAAc,mBAAO,CAAC,6DAAuB;AAC7C,mBAAmB,mBAAO,CAAC,uFAAuC;AAClE,cAAc,mBAAO,CAAC,gEAAU;AAChC,mBAAmB,mBAAO,CAAC,6EAA+B;AAC1D;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL,CAAC,GAAG,4BAA4B;AAChC;AACA;AACA;AACA;AACA;AACA;AACA,yEAAyE,0FAA0F,EAAE;AACrK;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yIAAyI,iGAAiG,+BAA+B,EAAE,EAAE;AAC7Q,wCAAwC,8CAA8C;AACtF,sDAAsD,8BAA8B;AACpF,4CAA4C,0CAA0C;AACtF,4DAA4D,gBAAgB;AAC5E,4DAA4D,+DAA+D;AAC3H;AACA;AACA,wDAAwD,sIAAsI;AAC9L,wCAAwC,kCAAkC;AAC1E,4CAA4C,4BAA4B;AACxE,4DAA4D,gDAAgD;AAC5G,4DAA4D,8DAA8D;AAC1H;AACA;AACA,4CAA4C,iCAAiC;AAC7E,gDAAgD,qCAAqC;AACrF,gEAAgE,sDAAsD;AACtH;AACA,4CAA4C,qCAAqC;AACjF,gDAAgD,4CAA4C;AAC5F;AACA;AACA,oEAAoE,oFAAoF,yOAAyO;AACjY,wDAAwD,4CAA4C;AACpG,sEAAsE,8BAA8B;AACpG,4DAA4D,gDAAgD;AAC5G,4EAA4E,gBAAgB;AAC5F,4EAA4E,qFAAqF;AACjK,qBAAqB;AACrB,gDAAgD,gCAAgC;AAChF,4DAA4D,4FAA4F,uEAAuE,uCAAuC;AACtQ;AACA;AACA,oDAAoD,oFAAoF,2HAA2H,0BAA0B,EAAE,EAAE;AACjS,wCAAwC,4CAA4C;AACpF,sDAAsD,8BAA8B;AACpF,4CAA4C,gDAAgD;AAC5F,4DAA4D,gBAAgB;AAC5E,4DAA4D,qFAAqF;AACjJ,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;ACnOa;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,yBAAyB,mBAAO,CAAC,iFAAkB;AACnD,aAAa,mBAAO,CAAC,wEAAmB;AACxC,mCAAmC,mBAAO,CAAC,sDAAY;AACvD,kCAAkC,mBAAO,CAAC,yFAAwC;AAClF,kBAAkB,mBAAO,CAAC,qFAAsC;AAChE,kBAAkB,mBAAO,CAAC,wEAAc;AACxC,cAAc,mBAAO,CAAC,mEAA0B;AAChD,cAAc,mBAAO,CAAC,oEAA0B;AAChD,6BAA6B,mBAAO,CAAC,qDAAsB;AAC3D,yDAAyD;AACzD;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT,KAAK;AACL,YAAY;AACZ,WAAW;AACX,WAAW;AAC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A;AACA,wFAAwF;AACxF;AACA,EAAE;AACF;AACA;AACA;AACA,sBAAsB;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iIAAiI,UAAU,4FAA4F,EAAE,EAAE;AAC3O,qHAAqH,kDAAkD,EAAE;AACzK;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C;AAC9C;AACA;AACA,gCAAgC,iBAAiB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,CAAC,IAAI,QAAQ;AACb;AACA,8CAA8C;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,UAAU,mEAAmE;AAC5G,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,EAAE;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AChLA;AACA;AACA;AACA;AACA;AAIA;AACA;AAEA;AACA;AACA;AACA;;IAEM3M,K;;;;;;;;;;;;;;;;iEACW,UAACxqB,IAAD,EAAU;MACnB,yBAAiC05B,mFAAiB,CAAC15B,IAAD,CAAlD;MAAA,IAAQ25B,cAAR,sBAAQA,cAAR;MAAA,IAAwBC,IAAxB,sBAAwBA,IAAxB;;MACA,iBAAUz1C,gDAAI,CAACC,OAAL,CAAaC,IAAvB,cAA+Bs1C,cAA/B,SAAgDC,IAAhD;IACH,C;;;;;;;WAED,kBAAS;MACL,oBACI,oDAAC,yDAAD;QACI,eAAe,MADnB;QAEI,QAAQ,MAFZ;QAGI,eAAe,EAAE,KAAK76B,KAAL,CAAWG,SAAX,CAAqB,eAArB;MAHrB,gBAKI,oDAAC,sDAAD;QAAO,I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E,2DAA2D;AAC3D;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,iBAAiB;AACjB,mBAAmB;AACnB;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL,CAAC,EAAE,EAAE;AACL;AACA;AACA;AACA;AACA,yEAAyE,gCAAgC,EAAE;AAC3G,2EAA2E,0CAA0C,EAAE;AACvH;AACA,2CAA2C;AAC3C;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,0DAA0D,2IAA2I;AACrM,oCAAoC,0BAA0B;AAC9D,wCAAwC,6BAA6B;AACrE;AACA,sEAAsE,6EAA6E,kLAAkL;AACrU,gDAAgD,6BAA6B;AAC7E;AACA,6FAA6F,0BAA0B;AACvH,yIAAyI,6BAA6B;AACtK,4DAA4D,0BAA0B;AACtF,qFAAqF,4EAA4E;AACjK,aAAa,gDAAgD,gGAAgG;AAC7J,2CAA2C,kHAAkH;AAC7J;AACA,wDAAwD,iDAAiD;AACzG;AACA,wDAAwD,8DAA8D;AACtH,wDAAwD,0BAA0B;AAClF;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;;;;;;;;;;;;;ACnIa;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,yBAAyB,mBAAO,CAAC,iFAAkB;AACnD,gCAAgC,mBAAO,CAAC,2EAA8B;AACtE,6BAA6B,mBAAO,CAAC,+CAAgB;AACrD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C,yBAAyB,mBAAO,CAAC,iFAAkB;AACnD,aAAa,mBAAO,CAAC,wEAAmB;AACxC,gCAAgC,mBAAO,CAAC,8EAAiC;AACzE,6BAA6B,mBAAO,CAAC,kDAAmB;AACxD,mBAAmB,mBAAO,CAAC,0EAA4B;AACvD,cAAc,mBAAO,CAAC,0DAAoB;AAC1C,kCAAkC,mBAAO,CAAC,sFAAqC;AAC/E,yDAAyD;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL,CAAC,EAAE,EAAE;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kGAAkG,qBAAqB,EAAE;AACzH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qGAAqG,gCAAgC;AACrI,gDAAgD,gDAAgD,uFAAuF,0BAA0B;AACjN,wEAAwE,gEAAgE;AACxI,oCAAoC,gCAAgC;AACpE,4EAA4E,gDAAgD;AAC5H,4GAA4G,mGAAmG;AAC/M,kEAAkE,mcAAmc;AACrgB;AACA;AACA;AACA;AACA;;;;;;;;;;;;;ACzJa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAy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A;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;;;;;;;;;;;;ACpEa;AACb,8CAA8C,cAAc;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC;AACvC,uBAAuB,eAAe;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD,sCAAsC;AACxF;AACA;AACA;AACA,CAAC;AACD;;;;;;;;;;;;;ACjDa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E,OAAO;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,+BAA+B,mBAAO,CAAC,kFAAwB;AAC/D,gCAAgC,mBAAO,CAAC,wDAAW;AACnD,mBAAmB,mBAAO,CAAC,8DAAc;AACzC,oBAAoB,mBAAO,CAAC,gEAAe;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4DAA4D;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF,2DAA2D;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,cAAc,2HAA2H;AACzI;AACA,EAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B;AAC1B;AACA,uCAAuC,2BAA2B,sCAAsC,aAAa,4CAA4C;AACjK,uEAAuE,oHAAoH,EAAE;AAC7L,+BAA+B,WAAW,+HAA+H,mDAAmD,EAAE,UAAU;AACxO;AACA,oCAAoC,6BAA6B,WAAW;AAC5E;AACA,oCAAoC,iBAAiB,iCAAiC,0BAA0B,cAAc;AAC9H,KAAK,IAAI,MAAM,gBAAgB,GAAG;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B;AAC3B;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,kGAAkG,4BAA4B;AAC9H;AACA;AACA,6CAA6C,aAAa,oCAAoC,0DAA0D,GAAG;AAC3J;AACA;AACA,aAAa;AACb,UAAU,GAAG;AACb,qGAAqG,uCAAuC;AAC5I;AACA;AACA,6CAA6C,aAAa,oCAAoC,0DAA0D,GAAG;AAC3J;AACA;AACA,aAAa;AACb,UAAU,GAAG;AACb,gGAAgG,kCAAkC;AAClI;AACA;AACA,6CAA6C,aAAa,oCAAoC,0DAA0D,4BAA4B,qCAAqC,sCAAsC,GAAG;AAClQ;AACA;AACA;AACA,aAAa;AACb,UAAU,GAAG;AACb,iGAAiG,uFAAuF;AACxL,iGAAiG,sFAAsF;AACvL,iGAAiG,6CAA6C;AAC9I;AACA;AACA,6CAA6C,aAAa,oCAAoC,0DAA0D,GAAG;AAC3J;AACA;AACA;AACA,8BAA8B,4RAA4R;AAC1T,iBAAiB;AACjB,aAAa;AACb,UAAU,GAAG;AACb,kFAAkF,kCAAkC;AACpH;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,UAAU,GAAG;AACb,8FAA8F,4BAA4B;AAC1H;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,aAAa;AACb,UAAU,GAAG;AACb,mGAAmG,kCAAkC;AACrI;AACA;AACA,6CAA6C,aAAa,oCAAoC,0DAA0D,GAAG;AAC3J;AACA;AACA;AACA,aAAa;AACb,UAAU,GAAG;AACb,yDAAyD;AACzD,sDAAsD;AACtD;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,EAAE;AAChB,iCAAiC;AACjC;AACA,cAAc,EAAE;AAChB;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,EAAE;AACX;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA,+CAA+C,WAAW,aAAa;AACvE;AACA;AACA;AACA,+CAA+C,WAAW,8BAA8B,qBAAqB,WAAW,4BAA4B;AACpJ;AACA;AACA;AACA,+CAA+C,WAAW,2HAA2H,qBAAqB,WAAW,4BAA4B;AACjP;AACA;AACA;AACA,+CAA+C,WAAW,oDAAoD,2BAA2B,EAAE,uCAAuC,qBAAqB,WAAW,mCAAmC;AACrP;AACA;AACA;AACA,+CAA+C,WAAW,8BAA8B,qBAAqB,WAAW,gFAAgF,0CAA0C,EAAE,UAAU;AAC9P;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,WAAW,8BAA8B,qBAAqB,WAAW,+CAA+C,eAAe,cAAc,uBAAuB,yDAAyD,sDAAsD,EAAE,UAAU;AACtV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;;;;;;;;;;;;ACtUa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,cAAc;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,oEAAoE;AAC1G;AACA,+BAA+B,+EAA+E;AAC9G;AACA;;;;;;;;;;;;;AC/Fa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E,OAAO;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,cAAc;AAC5D;AACA,kBAAkB,mBAAO,CAAC,4DAAa;AACvC,oBAAoB,mBAAO,CAAC,gEAAe;AAC3C;AACA,6BAA6B,gBAAgB;AAC7C;AACA;AACA;AACA,+CAA+C,iBAAiB;AAChE,SAAS,IAAI,MAAM;AACnB;AACA;AACA,8CAA8C;AAC9C;AACA;AACA,oCAAoC,iBAAiB;AACrD,KAAK,IAAI,MAAM,EAAE;AACjB;AACA;AACA;AACA,6BAA6B,kBAAkB;AAC/C;AACA,8CAA8C,2FAA2F,EAAE;AAC3I;AACA;AACA;AACA,gCAAgC,gBAAgB;AAChD;AACA,8CAA8C,6FAA6F,EAAE;AAC7I;AACA;AACA;AACA,6BAA6B,qBAAqB;AAClD,gCAAgC,gBAAgB;AAChD;AACA,8CAA8C,QAAQ,+KAA+K,EAAE;AACvO;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,8BAA8B,sBAAsB;AACpD,yEAAyE,0EAA0E,EAAE;AACrJ;AACA;AACA;AACA,8BAA8B,sBAAsB;AACpD,yEAAyE,0EAA0E,EAAE;AACrJ;AACA;AACA;AACA,8BAA8B,mBAAmB;AACjD,yEAAyE,gEAAgE,EAAE;AAC3I;AACA;AACA;AACA,gCAAgC,0BAA0B;AAC1D,oCAAoC,sDAAsD;AAC1F;AACA;AACA,oBAAoB,uBAAuB;AAC3C;AACA;AACA,gDAAgD,gDAAgD,2CAA2C,EAAE,KAAK,EAAE;AACpJ;AACA;AACA;AACA;AACA,oBAAoB,uBAAuB;AAC3C;AACA;AACA,yEAAyE,gDAAgD;AACzH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,QAAQ,EAAE,KAAK,EAAE;AACtB;AACA;AACA;AACA;AACA,gCAAgC,4BAA4B,gBAAgB,GAAG;AAC/E;AACA,0FAA0F;AAC1F,qBAAqB,2BAA2B,aAAa,EAAE;AAC/D;AACA;AACA;AACA;AACA,yBAAyB,YAAY;AACrC;AACA,6CAA6C,0BAA0B,EAAE;AACzE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E,8NAA8N;AAC1S;AACA;AACA,yBAAyB,cAAc;AACvC,qGAAqG,QAAQ,wHAAwH,EAAE;AACvO;AACA;;;;;;;;;;;;;AC9Ja;AACb,8CAA8C,cAAc;AAC5D;AACA,cAAc,mBAAO,CAAC,4CAAO;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA,0EAA0E;AAC1E;AACA,iCAAiC,mEAAmE;AACpG;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB;AACA;AACA,oBAAoB;AACpB;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,4BAA4B,2DAA2D;AACvF,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,qCAAqC,qBAAqB;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AChJA;AACA;AACA;AAKA,IAAMxF,SAAS,GAAGC,oEAAU,CAAC,UAAAnJ,KAAK;EAAA,OAAK;IACnCorC,qBAAqB,EAAE;MACnBxpC,KAAK,EAAE5B,KAAK,CAACyB,OAAN,CAAc2C,IAAd,CAAmB1C;IADP;EADY,CAAL;AAAA,CAAN,CAA5B;;AAMA,IAAM2pC,cAAc,GAAG,SAAjBA,cAAiB,OAEjB;EAAA,IADF/iC,KACE,QADFA,KACE;EAAA,IADKhX,KACL,QADKA,KACL;EAAA,IADY+W,QACZ,QADYA,QACZ;EAAA,IADsBijC,KACtB,QADsBA,KACtB;EAAA,IAD6BhS,QAC7B,QAD6BA,QAC7B;EAAA,IADuCiS,MACvC,QADuCA,MACvC;EAAA,IADkD9lC,KAClD;;EACF,IAAMC,OAAO,GAAGwD,SAAS,EAAzB;;EACA,sBAAoCjd,8CAAA,CAAe,IAAf,CAApC;EAAA;EAAA,IAAOu/C,UAAP;EAAA,IAAmBC,aAAnB;;EACA,IAAMC,gBAAgB,GAAGz/C,4CAAA,EAAzB;;EAEA,IAAMgiB,YAAY,GAAG,SAAfA,YAAe,CAAC+F,KAAD,EAAW;IAC5B,IAAM23B,YAAY,GAAG33B,KAAK,CAAC7D,MAAN,CAAa7e,KAAlC;IACAm6C,aAAa,CAACE,YAAD,CAAb;IAEA,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AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,mCAAmC,mBAAO,CAAC,sDAAY;AACvD,aAAa,mBAAO,CAAC,wEAAmB;AACxC,cAAc,mBAAO,CAAC,0EAAoB;AAC1C,oBAAoB,mBAAO,CAAC,oEAAmB;AAC/C,kBAAkB,mBAAO,CAAC,gEAAiB;AAC3C,oCAAoC,mBAAO,CAAC,6EAAgB;AAC5D,sCAAsC,mBAAO,CAAC,iIAAmC;AACjF,sCAAsC,mBAAO,CAAC,iIAAmC;AACjF,yCAAyC,mBAAO,CAAC,uIAAsC;AACvF,qCAAqC,mBAAO,CAAC,+HAAkC;AAC/E,uCAAuC,mBAAO,CAAC,mIAAoC;AACnF,qCAAqC,mBAAO,CAAC,+HAAkC;AAC/E,yDAAyD;AACzD;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT,KAAK;AACL,CAAC,EAAE,EAAE;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+DAA+D;AAC/D;AACA;AACA;AACA;AACA;AACA,MAAM;AACN,sDAAsD;AACtD;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA,wCAAwC,4DAA4D,0FAA0F;AAC9L,iEAAiE,yBAAyB;AAC1F,wDAAwD,uFAAuF;AAC/I;AACA,+FAA+F,2EAA2E;AAC1K,iFAAiF,4DAA4D;AAC7I,oHAAoH,4RAA4R;AAChZ;AACA,qDAAqD,gYAAgY;AACrb,wHAAwH,qYAAqY;AAC7f;AACA,sDAAsD,kOAAkO;AACxR,8GAA8G,sQAAsQ;AACpX,8GAA8G,8OAA8O;AAC5V,6FAA6F,oCAAoC;AACjI;AACA,8DAA8D,mEAAmE,oPAAoP,uDAAuD,0BAA0B,GAAG;AACzc;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AC7Ka;AACb;AACA;AACA;AACA,cAAc,gBAAgB,sCAAsC,iBAAiB,EAAE;AACvF,6BAA6B,8EAA8E;AAC3G;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,sBAAsB;AAC7C;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,6BAA6B,mBAAO,CAAC,6EAAsB;AAC3D,aAAa,mBAAO,CAAC,wEAAmB;AACxC,qBAAqB,mBAAO,CAAC,2FAAgB;AAC7C,0BAA0B,mBAAO,CAAC,gFAAyB;AAC3D,kBAAkB,mBAAO,CAAC,gEAAiB;AAC3C,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,CAAC,EAAE;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa,qBAAqB,UAAU,EAAE;AAC9C,4BAA4B,yEAAyE;AACrG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wDAAwD,gGAAgG;AACxJ,mEAAmE,kDAAkD;AACrH;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACpHA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEA;AACA;AACA;;AAEA,IAAMhwC,MAAM,GAAG,SAATA,MAAS,CAAA5D,KAAK;EAAA,OAAK;IACrBghB,KAAK,EAAE;MACHrgB,KAAK,EAAE;IADJ,CADc;IAIrB6oC,KAAK,EAAE;MACH7oC,KAAK,EAAE;IADJ,CAJc;IAOrB+F,IAAI,EAAE;MACFxG,OAAO,EAAE,QADP;MAEFwC,YAAY,sBAAe1C,KAAK,CAACyB,OAAN,CAAcW,IAAd,CAAmB,GAAnB,CAAf;IAFV,CAPe;IAWrB2xC,QAAQ,EAAE,EAXW;IAarBC,YAAY,EAAE,EAbO;IAerBC,YAAY,EAAE,EAfO;IAkBrB7jC,IAAI,EAAE;MACFjL,UAAU,EAAEnF,KAAK,CAACI,OAAN,CAAc,CAAd;IADV,CAlBe;IAqBrB8zC,cAAc,EAAE;MACZ35C,UAAU,EAAEyF,KAAK,CAACyB,OAAN,CAAcW,IAAd,CAAmB,GAAnB,CADA;MAEZ3B,OAAO,EAAET,KAAK,CAACI,OAAN,CAAc,CAAd;IAFG;EArBK,CAAL;AAAA,CAApB;;IA2BM+zC,W;;;;;;;;;;;;;;;;4DACM;MACJx3B,aAAa,EAAE;IADX,C;;wEAYY,UAAC3I,KAAD,EAAW;MAAA;;MAC3B,IAAIA,KAAK,CAACogC,MAAN,KAAiBz/C,+CAAO,CAACmR,cAAzB,IAA2C,gBAAAkO,KAAK,CAAC/d,IAAN,4DAAYo+C,MAAZ,MAAuB,gBAAtE,EAAwF;QACpF,IAAMC,WAAW,GAAGtgC,KAAK,CAAC/d,IAAN,CAAW+K,MAAX,GAAoBgT,KAAK,CAAC/d,IAAN,CAAW0K,KAAnD;;QACA,IAAI2zC,WAAW,GAAG,CAAlB,EAAqB;UACjB,MAAKrgC,QAAL,CAAc;YAAE0I,aAAa,YAAK23B,WAAW,GAAG,GAAnB;UAAf,CAAd;QACH;MACJ;IACJ,C;;;;;;;WAfD,6BAAoB;MAChB/mC,MAAM,CAACC,gBAAP,CAAwB,SAAxB,EAAmC,KAAK+mC,iBAAxC;IACH;;;WAED,gCAAuB;MACnBhnC,MAAM,CAACE,mBAAP,CAA2B,SAA3B,EAAsC,KAAK8mC,iBAA3C;IACH;;;WAWD,kBAAS;MACL,kBAEI,KAAK9uC,KAFT;MAAA,IACIC,OADJ,eACIA,OADJ;MAAA,IACagB,IADb,eACaA,IADb;MAAA,IACmBN,SADnB,eACmBA,SADnB;MAAA,IAC8B6M,UAD9B,eAC8BA,UAD9B;MAAA,IAC0C5iB,cAD1C,eAC0CA,cAD1C;;MAIA,IAAI,CAACqW,IAAD,IAAS,CAACA,IAAI,CAACpY,GAAnB,EAAwB;QACpB,OAAO,IAAP;MACH;;MAED,IAAMkmD,QAAQ,GAAGnkD,cAAc,GAAG,qBAAH,GAA2B,EAA1D;MAEA,oBACI;QAAK,SAAS,EAAE+V;MAAhB,GACK6M,UAAU,KAAKvM,IAAI,CAACiZ,QAAL,KAAkBC,oDAAS,CAAChkB,IAA5B,IAAoC8K,IAAI,CAACiZ,QAAL,KAAkBC,oDAAS,CAACzzB,MAAhE,IAA0Eua,IAAI,CAACiZ,QAAL,KAAkBC,oDAAS,CAAC60B,QAA3G,CAAV,iBACG,oDAAC,qDAAD;QAAM,EAAE,EAAExhC,UAAU,CAACvM,IAAD;MAApB,gBACI,oDAAC,4DAAD;QAAY,OAAO,EAAC,WAApB;QAAgC,SAAS,EAAC,MAA1C;QAAiD,SAAS,EAAER,iDAAU,CAACR,OAAO,CAACgB,IAAT,EAAehB,OAAO,CAACsuC,YAAvB;MAAtE,GACKttC,IAAI,CAACmH,IADV,CADJ,CAFR,EASKnH,IAAI,CAACiZ,QAAL,KAAkBC,oDAAS,CAACoB,KAA5B,iBACG,oDAAC,8CAAD;QACI,GAAG,EAAEsE,4DAAW,CAAC5e,IAAI,CAACpY,GAAN,CADpB;QAEI,SAAS,EAAEoX,OAAO,CAACsb;MAFvB,EAVR,EAgBKta,IAAI,CAACiZ,QAAL,KAAkBC,oDAAS,CAAC4pB,KAA5B,iBACG;QAAO,QAAQ,MAAf;QAAgB,SAAS,EAAE9jC,OAAO,CAAC8jC;MAAnC,gBACI;QAAQ,GAAG,YAAK70C,+CAAO,CAACmR,cAAb,cAA+BnR,+CAAO,CAACoR,KAAR,CAAcC,IAA7C,cAAqDU,IAAI,CAACpY,GAA1D,CAAX;QAA4E,IAAI,EAAC;MAAjF,EADJ,CAjBR,EAsBKoY,IAAI,CAACiZ,QAAL,KAAkBC,oDAAS,CAAC5Z,IAA5B,iBACG;QAAG,IAAI,YAAKrR,+CAAO,CAACmR,cAAb,cAA+BnR,+CAAO,CAACoR,KAAR,CAAcC,IAA7C,cAAqDU,IAAI,CAACpY,GAA1D,CAAP;QAAwE,MAAM,EAAC,QAA/E;QAAwF,GAAG,EAAC;MAA5F,gBACI,oDAAC,4DAAD;QAAY,OAAO,EAAC,WAApB;QAAgC,SAAS,EAAC,MAA1C;QAAiD,SAAS,EAAE4X,iDAAU,CAACR,OAAO,CAACgB,IAAT,EAAehB,OAAO,CAACquC,QAAvB;MAAtE,GACKrtC,IAAI,CAACmH,IAAL,iBAAc,oDAAC,8DAAD;QAAW,EAAE,EAAC;MAAd,EADnB,CADJ,CAvBR,EA8BKnH,IAAI,CAACiZ,QAAL,KAAkBC,oDAAS,CAACtxB,GAA5B,iBACG;QAAG,IAAI,EAAEoY,IAAI,CAACpY,GAAd;QAAmB,MAAM,EAAC,QAA1B;QAAmC,GAAG,EAAC;MAAvC,gBACI,oDAAC,4DAAD;QAAY,OAAO,EAAC,WAApB;QAAgC,SAAS,EAAC,MAA1C;QAAiD,SAAS,EAAE4X,iDAAU,CAACR,OAAO,CAACgB,IAAT,EAAehB,OAAO,CAACuuC,YAAvB;MAAtE,GACKvtC,IAAI,CAACmH,IAAL,iBAAc,oDAAC,8DAAD;QAAW,EAAE,EAAC;MAAd,EADnB,CADJ,eAII,oDAAC,mEAAD;QAAqB,SAAS,EAAEnI,OAAO,CAAC0K;MAAxC,EAJJ,CA/BR,EAuCK1J,IAAI,CAACiZ,QAAL,KAAkBC,oDAAS,CAACG,KAA5B,iBACG;QAAK,SAAS,EAAC,gBAAf;QAAgC,KAAK,EAAE;UAAEpD,aAAa,EAAE,KAAKpyB,KAAL,CAAWoyB;QAA5B;MAAvC,gBACI;QACI,EAAE,kBAAWjW,IAAI,CAACpY,GAAhB,YADN;QAEI,KAAK,EAAC,eAFV;QAGI,IAAI,EAAC,WAHT;QAII,GAAG,YAAKqG,+CAAO,CAACmR,cAAb,cAA+BnR,+CAAO,CAACoR,KAAR,CAAcga,KAA7C,cAAsDrZ,IAAI,CAACpY,GAA3D,sBAA0Eif,MAAM,CAACvX,QAAP,CAAgBo+C,MAA1F,SAAmGI,QAAnG,CAJP;QAKI,SAAS,EAAC,YALd;QAMI,eAAe;MANnB,EADJ,CAxCR,EAoDK9tC,IAAI,CAACiZ,QAAL,KAAkBC,oDAAS,CAACE,KAA5B,iBACG;QAAK,SAAS,EAAC;MAAf,gBACI;QACI,EAAE,EAAC,SADP;QAEI,KAAK,EAAC,aAFV;QAGI,IAAI,EAAC,WAHT;QAII,SAAS,EAAC,YAJd;QAKI,GAAG,2CAAoCpZ,IAAI,CAACpY,GAAzC,iCALP;QAMI,eAAe;MANnB,EADJ,CArDR,EAiEKoY,IAAI,CAACiZ,QAAL,KAAkBC,oDAAS,CAACC,OAA5B,iBACG;QAAK,SAAS,EAAC;MAAf,gBACI;QACI,EAAE,EAAC,UADP;QAEI,KAAK,EAAC,eAFV;QAGI,IAAI,EAAC,WAHT;QAII,SAAS,EAAC,YAJd;QAKI,GAAG,0CAAmCnZ,IAAI,CAACpY,GAAxC,sCALP;QAMI,eAAe;MANnB,EADJ,CAlER,CADJ;IAgFH;;;;;;;;;;;EAjHqBrC,+C;;AAoH1BkoD,WAAW,CAACrtC,SAAZ,GAAwB;EACpBpB,OAAO,EAAEqB,iDAAS,CAACC,MAAV,CAAiBC,UADN;EAEpBP,IAAI,EAAEK,iDAAS,CAACC,MAFI;EAGpBZ,SAAS,EAAEW,iDAAS,CAACM,MAHD;EAIpB4L,UAAU,EAAElM,iDAAS,CAACG,IAJF;EAKpB7W,cAAc,EAAE0W,iDAAS,CAACO;AALN,CAAxB;AAQA6sC,WAAW,CAAC5sC,YAAZ,GAA2B;EACvBb,IAAI,EAAE,IADiB;EAEvBN,SAAS,EAAE,IAFY;EAGvB6M,UAAU,EAAE,IAHW;EAIvB5iB,cAAc,EAAE;AAJO,CAA3B;;eAOe0X,2EAAU,CAACnE,MAAD,CAAV,CAAmBuwC,WAAnB,C;;AAAA;;;;;;;;;;0BA9JTvwC,M;0BA2BAuwC,W;;;;;;;;;;;;;;;;;;;;;;ACzCO;AACb;AACA;AACA;AACA,cAAc,gBAAgB,sCAAsC,iBAAiB,EAAE;AACvF,6BAA6B,8EAA8E;AAC3G;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,sBAAsB;AAC7C;AACA;AACA,CAAC;AACD;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,aAAa,mBAAO,CAAC,wEAAmB;AACxC,0BAA0B,mBAAO,CAAC,gFAAyB;AAC3D;AACA,oCAAoC,mBAAO,CAAC,yFAAe;AAC3D,uCAAuC,mBAAO,CAAC,+FAAkB;AACjE,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,CAAC,EAAE;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,6BAA6B;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,8BAA8B;AACtE;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,uBAAuB;AACnE;AACA,sEAAsE,0CAA0C;AAChH;AACA;AACA,+DAA+D,8DAA8D,uWAAuW,sBAAsB,EAAE;AAC5f,2DAA2D,kMAAkM;AAC7P;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AC5Ia;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4DAA4D,cAAc;AAC1E;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,mCAAmC,mBAAO,CAAC,sDAAY;AACvD,oCAAoC,mBAAO,CAAC,yFAAe;AAC3D;AACA;AACA;AACA,gEAAgE,0CAA0C,aAAa,EAAE,6BAA6B,aAAa,EAAE,mDAAmD,iBAAiB,2BAA2B,EAAE,8BAA8B,EAAE,EAAE;AACxS;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AClEa;AACb;AACA;AACA;AACA,cAAc,gBAAgB,sCAAsC,iBAAiB,EAAE;AACvF,6BAA6B,8EAA8E;AAC3G;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,sBAAsB;AAC7C;AACA;AACA,CAAC;AACD;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,eAAe,mBAAO,CAAC,sFAA0B;AACjD,mCAAmC,mBAAO,CAAC,sDAAY;AACvD,aAAa,mBAAO,CAAC,wEAAmB;AACxC,oCAAoC,mBAAO,CAAC,6EAAgB;AAC5D,kBAAkB,mBAAO,CAAC,gEAAiB;AAC3C;AACA,wCAAwC,mBAAO,CAAC,6GAAsB;AACtE,oCAAoC,mBAAO,CAAC,yFAAe;AAC3D,0BAA0B,mBAAO,CAAC,gFAAyB;AAC3D,cAAc,mBAAO,CAAC,4EAAS;AAC/B,oBAAoB,mBAAO,CAAC,oEAAmB;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb,SAAS;AACT,uBAAuB;AACvB,uBAAuB;AACvB,oBAAoB;AACpB,oBAAoB;AACpB,oBAAoB;AACpB,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC;AACtC;AACA;AACA,yCAAyC,SAAS;AAClD;AACA;AACA;AACA;AACA;AACA,0CAA0C,qBAAqB;AAC/D,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,wJAAwJ;AACvM;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,iQAAiQ;AACzS;AACA;AACA;AACA;AACA,gKAAgK,GAAG;AACnK,wEAAwE,4EAA4E;AACpJ,6EAA6E,4BAA4B;AACzG,4DAA4D,iDAAiD;AAC7G,0FAA0F,wGAAwG;AAClM,qFAAqF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ACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E,OAAO;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,mCAAmC,mBAAO,CAAC,sDAAY;AACvD,aAAa,mBAAO,CAAC,wEAAmB;AACxC,kCAAkC,mBAAO,CAAC,yFAAwC;AAClF,yDAAyD;AACzD;AACA;AACA;AACA;AACA,KAAK;AACL,kBAAkB;AAClB;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT,KAAK;AACL,gBAAgB;AAChB,CAAC,EAAE,EAAE,GAAG,yBAAyB;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iEAAiE;AACjE;AACA,mDAAmD,oEAAoE,EAAE;AACzH,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN,qDAAqD;AACrD,qEAAqE,mEAAmE,EAAE;AAC1I;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA,wCAAwC,iBAAiB;AACzD,2BAA2B;AAC3B,KAAK,IAAI;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD,iEAAiE,EAAE;AAC1H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,SAAS,yFAAyF,oEAAoE;AAC9M,+CAA+C,mEAAmE,uJAAuJ;AACzQ,oCAAoC,uDAAuD,qFAAq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;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL,gBAAgB;AAChB,CAAC,EAAE,EAAE;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD;AACvD;AACA,gDAAgD,oBAAoB,EAAE,MAAM;AAC5E;AACA;AACA;AACA;AACA,MAAM;AACN,4DAA4D;AAC5D;AACA,mCAAmC,8DAA8D;AACjG,MAAM;AACN,gDAAgD;AAChD;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kNAAkN,6EAA6E,uJAAuJ,yFAAyF,6CAA6C,wYAAwY,iBAAiB,EAAE,mCAAmC,SAAS,yFAAyF,qCAAqC;AACjoC,gDAAgD,kEAAkE,+SAA+S;AACja,oCAAoC,uDAAuD,iIAAiI,mCAAmC,yBAAyB,EAAE,aAAa,iEAAiE,yFAAyF,GAAG,EAAE;AACtc,0JAA0J,yGAAyG,mCAAmC,yBAAyB,EAAE,aAAa,iEAAiE,sCAAsC,mCAAmC;AACxd,4DAA4D,uCAAuC;AACnG,uDAAuD,qZAAqZ,KAAK;AACjd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AC7Ka;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E,OAAO;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D,yBAAyB,mBAAO,CAAC,4CAAO;AACxC,eAAe,mBAAO,CAAC,sFAA0B;AACjD,sCAAsC,mBAAO,CAAC,oGAAiC;AAC/E,mCAAmC,mBAAO,CAAC,sDAAY;AACvD,aAAa,mBAAO,CAAC,wEAAmB;AACxC,cAAc,mBAAO,CAAC,mEAA0B;AAChD,kCAAkC,mBAAO,CAAC,yFAAwC;AAClF,2DAA2D;AAC3D;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL,kBAAkB;AAClB,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT,KAAK;AACL,mBAAmB;AACnB;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL,sBAAsB;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL,yBAAyB;AACzB;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL,CAAC,EAAE,EAAE;AACL,qCAAqC,4DAA4D;AACjG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,GAAG,gCAAgC;AAChD,yEAAyE,yBAAyB,EAAE;AACpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gFAAgF,sCAAsC,WAAW,EAAE,EAAE,EAAE;AACvI;AACA;AACA;AACA;AACA;AACA;AACA,sDAAsD,WAAW,EAAE;AACnE;AACA;AACA;AACA,8CAA8C,WAAW,EAAE;AAC3D;AACA;AACA;AACA,gHAAgH,WAAW,EAAE;AA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AlC;eAIe8B,kB;AAAA;;;;;;;;;;0BAzCFL,sB;0BAWPK,kB;;;;;;;;;;;;;;;;;;;;;;ACtBO;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,cAAc;AAC5D;AACA;AACA;AACA,4BAA4B,mBAAmB;AAC/C,qCAAqC;AACrC;AACA,8DAA8D,iBAAiB;AAC/E,KAAK,IAAI;AACT;AACA;;;;;;;;;;;;;ACtBa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,cAAc;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,uFAAuF;AAC1H,yGAAyG,EAAE,SAAS,EAAE;AACtH,gCAAgC,uFAAuF;AACvH,oFAAoF,EAAE,SAAS,EAAE;AACjG,yCAAyC,uFAAuF;AAChI,6GAA6G,EAAE,SAAS,EAAE;AAC1H;AACA,6CAA6C,4FAA4F,EAAE;AAC3I;AACA,2CAA2C,2HAA2H,EAAE;AACxK;AACA,gCAAgC;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D,iCAAiC,iFAAiF;AAC5K;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,iEAAiE,EAAE;AACxG,sCAAsC,oCAAoC,EAAE;AAC5E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,qFAAqF;;;;;;;;;;;;;ACjTzE;AACb,8CAA8C,cAAc;AAC5D;AACA,kBAAkB,mBAAO,CAAC,4DAAa;AACvC,+CAA+C,uEAAuE,oCAAoC,EAAE,gBAAgB;AAC5K;AACA,qDAAqD;AACrD,mDAAmD;AACnD,mDAAmD,yCAAyC,EAAE;AAC9F,aAAa,EAAE;AACf,YAAY;AACZ;AACA,8CAA8C,sGAAsG;AACpJ;AACA;AACA,4BAA4B,aAAa;AACzC;AACA;AACA;AACA;AACA;AACA,kCAAkC,yBAAyB;AAC3D;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AC3Ba;AACb,8CAA8C,cAAc;AAC5D;AACA;AACA,oBAAoB,mBAAO,CAAC,gEAAe;AAC3C;AACA;AACA;AACA;AACA,8BAA8B,oDAAoD;AAClF;AACA;AACA;AACA,qCAAqC,uGAAuG;AAC5I;AACA;AACA;AACA,gCAAgC,mBAAmB;AACnD;AACA;AACA;AACA;AACA,8CAA8C;AAC9C;AACA;AACA;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC;AACA;AACA;AACA,4FAA4F;AAC5F;AACA;AACA;AACA;AACA,8DAA8D;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,yIAAyI;AACvL;AACA,+BAA+B,QAAQ,8HAA8H;AACrK;AACA;AACA,0BAA0B,UAAU;AACpC,4BAA4B,YAAY;AACxC,4BAA4B,YAAY;AACxC;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,UAAU;AACpC,4BAA4B,YAAY;AACxC,4BAA4B,YAAY;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,UAAU;AACpC,4BAA4B,YAAY;AACxC,4BAA4B,YAAY;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,kEAAkE;AACvG;AACA,yCAAyC,sEAAsE;AAC/G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,QAAQ,wGAAwG;AAC1J;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,oBAAoB;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,2BAA2B;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,qBAAqB;AACtD,iCAAiC,qBAAqB;AACtD,gCAAgC,oBAAoB;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,gCAAgC;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,iBAAiB;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wDAAwD,iEAAiE;AACzH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,yBAAyB;AAClE,oDAAoD,uBAAuB,UAAU,EAAE;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,4BAA4B;AACrE;AACA;AACA,gCAAgC,oBAAoB;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC;AACA;AACA,CAAC,EAAE;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,QAAQ,oOAAoO;AAC1R;;;;;;;;;;;;;AChda;AACb,8CAA8C,cAAc;AAC5D;AACA,kBAAkB,mBAAO,CAAC,4DAAa;AACvC,oBAAoB,mBAAO,CAAC,gEAAe;AAC3C,sBAAsB,mBAAO,CAAC,oEAAiB;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,QAAQ,mGAAmG,6CAA6C,EAAE,EAAE,EAAE;AACxM;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mIAAmI,6CAA6C,EAAE;AAClL,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8KAA8K,uDAAuD,8DAA8D,EAAE,aAAa,EAAE;AACpT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kJAAkJ,QAAQ,0FAA0F,QAAQ,6HAA6H,+BAA+B,EAAE,EAAE,EAAE,EAAE,EAAE;AACla;AACA;AACA;AACA;AACA,2HAA2H,QAAQ,yIAAyI,+BAA+B,EAAE,EAAE,EAAE;AACjT;AACA,kLAAkL,+BAA+B,EAAE;AACnN;AACA;AACA;AACA;AACA;AACA;AACA,yMAAyM,QAAQ,4FAA4F,QAAQ,6HAA6H,+BAA+B,EAAE,EAAE,EAAE,GAAG,EAAE;AAC5d;AACA,6HAA6H,QAAQ,uMAAuM,EAAE;AAC9U;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;;;;;;;;;;;;ACjLa;AACb;AACA;AACA;AACA;AACA,cAAc,oCAAoC,aAAa,EAAE;AACjE;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA,yCAAyC,6BAA6B;AACtE,CAAC;AACD;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,gCAAgC,mBAAO,CAAC,wDAAW;AACnD,4BAA4B,mBAAO,CAAC,sDAAU;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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B,wCAAwC,sBAAsB,WAAW,0BAA0B;AACjI;AACA,yCAAyC,aAAa,cAAc,QAAQ,SAAS;AACrF;AACA;AACA,uBAAuB,EAAE;AACzB,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wDAAwD,sBAAsB,WAAW,sBAAsB;AAC/G,4EAA4E,IAAI;AAChF,4DAA4D,aAAa,cAAc,QAAQ,SAAS;AACxG;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,qBAAqB;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,kBAAkB;AACrC;AACA;AACA;AACA,2BAA2B,2BAA2B;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,kBAAkB;AACrC,6FAA6F,6BAA6B;AAC1H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,kBAAkB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,kBAAkB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,kBAAkB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA,gIAAgI;AAChI;AACA,oHAAoH,yBAAyB;AAC7I;AACA;AACA;AACA,6GAA6G;AAC7G,6GAA6G;AAC7G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,kBAAkB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,kBAAkB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,+BAA+B;AAC1E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,2CAA2C,MAAM;AACpF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,kBAAkB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,kBAAkB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,kBAAkB;AACzC;AACA;AACA;AACA,+BAA+B,2BAA2B;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AC9Wa;AACb;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,aAAa,mBAAO,CAAC,0EAAyB;AAC9C,4CAA4C,qCAAqC,wCAAwC,EAAE,EAAE;AAC7H,wBAAwB,mBAAO,CAAC,gGAAoC;AACpE,8CAA8C,qCAAqC,mDAAmD,EAAE,EAAE;AAC1I,iBAAiB,mBAAO,CAAC,kFAA6B;AACtD,8CAA8C,qCAAqC,4CAA4C,EAAE,EAAE;AACnI,kBAAkB,mBAAO,CAAC,oFAA8B;AACxD,4CAA4C,qCAAqC,6CAA6C,EAAE,EAAE;AAClI,mBAAmB,mBAAO,CAAC,sFAA+B;AAC1D,8CAA8C,qCAAqC,8CAA8C,EAAE,EAAE;AACrI,mBAAmB,mBAAO,CAAC,sFAA+B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CAAC,8DAAc;AACzC,gCAAgC,mBAAO,CAAC,wDAAW;AACnD,kBAAkB,mBAAO,CAAC,4DAAa;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wHAAwH;AACxH,yIAAyI;AACzI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,+BAA+B,mCAAmC,SAAS,EAAE;AAC7E,iCAAiC,iFAAiF,EAAE;AACpH;AACA;AACA;AACA,wHAAwH;AACxH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,+BAA+B,8BAA8B,EAAE;AAC/D,iCAAiC,iFAAiF,EAAE;AACpH;AACA;;;;;;;;;;;;;AC3Ga;AACb,8CAA8C,cAAc;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,2DAA2D,4BAA4B,EAAE;AACzF,6EAA6E,mBAAmB,EAAE;AAClG;AACA;;;;;;;;;;;;;ACrCa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E,OAAO;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,cAAc;AAC5D;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA,uDAAuD;AACvD;AACA,+BAA+B,mCAAmC;AAClE;AACA,kDAAkD;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,iBAAiB,8CAA8C,6BAA6B,OAAO,+BAA+B,GAAG,EAAE,wBAAwB,8BAA8B,EAAE;AACtO;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4DAA4D,qDAAqD,EAAE;AACnH,uCAAuC,iBAAiB;AACxD,iDAAiD,4CAA4C,EAAE;AAC/F;AACA,sCAAsC,UAAU,EAAE;AAClD;AACA;AACA;AACA;AACA;AACA,uCAAuC,iBAAiB,gCAAgC,sBAAsB;AAC9G;AACA,mCAAmC,iBAAiB;AACpD,KAAK,8CAA8C;AACnD,YAAY;AACZ;AACA,oEAAoE,6BAA6B,8DAA8D;AAC/J;AACA;AACA;AACA;AACA;AACA;AACA,6DAA6D,mCAAmC,EAAE;AAClG;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC7EA;AAGA;AACA;;AAEA,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,WAAD,EAAc7Z,OAAd;EAAA,OAA0B8Z,6DAAe,iCAAMD,WAAN;IAAmBE,MAAM,EAAEC,4EAAa,CAACha,OAAD;EAAxC,GAAzC;AAAA,CAAzB;;AAEO,IAAMia,WAAW,GAAG,SAAdA,WAAc,CAACC,KAAD,EAAQC,QAAR,EAAkBna,OAAlB,EAA8B;EACrDka,KAAK,CAACE,cAAN,CAAqBR,gBAAgB,CAACO,QAAD,EAAWna,OAAX,CAArC;AACH,CAFM;AAIA,IAAMqa,cAAc,GAAG,SAAjBA,cAAiB,CAACF,QAAD,EAAWna,OAAX,EAAoBj9C,YAApB,EAAqC;EAC/D,IAAMu3D,gBAAgB,GAAI,QAAOl/C,MAAP,yCAAOA,MAAP,OAAkB,QAAlB,IAA8BA,MAAM,CAACm/C,oCAAtC,CAA4E;EAA5E,GAClBC,6CADP;EAGA,IAAMN,KAAK,GAAGO,yDAAW,CACrBb,gBAAgB,CAACO,QAAD,EAAWna,OAAX,CADK,EAErBj9C,YAFqB,EAGrBu3D,gBAAgB,CACZI,6DAAe,CAACC,mDAAD,EAAQC,+EAAgB,CAAC5a,OAAD,CAAxB,CADH,CAHK,CAAzB;EAQA,OAAOka,KAAP;AACH,CAbM;AAeP,IAAMW,QAAQ,GAAG,WAAjB;AAEO,IAAMC,UAAU,GAAG,SAAbA,UAAa,GAAM;EAC5B,IAAI;IACAzgB,YAAY,CAAC0gB,UAAb,CAAwBF,QAAxB;EACH,CAFD,CAEE,gBAAM,CACJ;EACH;AACJ,CANM;AAQA,IAAMG,SAAS,GAAG,SAAZA,SAAY,GAAM;EAC3B,IAAI;IACA,IAAMC,eAAe,GAAG5gB,YAAY,CAACE,OAAb,CAAqBsgB,QAArB,CAAxB;;IACA,IAAII,eAAe,KAAK,IAAxB,EAA8B;MAC1B,OAAOr6D,SAAP;IACH;;IACD,OAAOisD,IAAI,CAACC,KAAL,CAAWmO,eAAX,CAAP;EACH,CAND,CAME,OAAO1jB,GAAP,EAAY;IACV,OAAO32C,SAAP;EACH;AACJ,CAVM;AAYA,IAAMs6D,SAAS,GAAG,SAAZA,SAAY,CAAC9iE,KAAD,EAAW;EAChC,IAAI;IACA,IAAM6iE,eAAe,GAAGpO,IAAI,CAACiB,SAAL,CAAe11D,KAAf,CAAxB;IACAiiD,YAAY,CAACC,OAAb,CAAqBugB,QAArB,EAA+BI,eAA/B;EACH,CAHD,CAGE,iBAAM,CACJ;EACH;AACJ,CAPM;;;;;;;;;;0BA3CDrB,gB;0BAEOK,W;0BAIAI,c;0BAePQ,Q;0BAEOC,U;0BAQAE,S;0BAYAE,S;;;;;;;;;;;;;;;;;;;;;ACjDA;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4DAA4D,cAAc;AAC1E;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E,OAAO;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,cAAc;AAC5D;AACA,oBAAoB,mBAAO,CAAC,gEAAe;AAC3C,kBAAkB,mBAAO,CAAC,4DAAa;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qEAAqE,+EAA+E,EAAE;AACtJ;AACA;AACA;AACA;AACA,qEAAqE;AACrE;AACA;AACA;AACA,CAAC;AACD;AACA;AACA,aAAa,mEAAmE;AAChF,CAAC,SAAS;AACV;AACA;AACA;AACA;AACA,oCAAoC,iBAAiB;AACrD,KAAK,IAAI;AACT;AACA;AACA;AACA;AACA,8EAA8E,sBAAsB,EAAE;AACtG,6DAA6D,oDAAoD,EAAE;AACnH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,uBAAuB;AAC9C;AACA,KAAK;AACL;AACA;AACA;AACA,2CAA2C;AAC3C;AACA;AACA;AACA;AACA,CAAC,UAAU;AACX;AACA;AACA;AACA;AACA,mCAAmC,sBAAsB;AACzD;AACA;AACA;AACA;AACA,2HAA2H,2BAA2B,EAAE;AACxJ,6HAA6H,4BAA4B,EAAE;AAC3J;AACA;AACA;AACA,kFAAkF,kFAAkF,EAAE;AACtK;AACA;AACA,4EAA4E,kDAAkD,8DAA8D,0CAA0C,sCAAsC;AAC5Q;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,uDAAuD,yCAAyC,yOAAyO;AACzU,+BAA+B,gCAAgC,oDAAoD,wCAAwC,mCAAmC;AAC9L;AACA,oCAAoC,iBAAiB;AACrD;AACA;AACA;AACA,SAAS;AACT,KAAK,IAAI;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,+BAA+B;AAC/B,+BAA+B;AAC/B,qCAAqC;AACrC;AACA,oCAAoC,kBAAkB;AACtD;AACA;AACA;AACA,SAAS;AACT,KAAK,IAAI;AACT;AACA;AACA;AACA,yEAAyE;AACzE;AACA;AACA,+BAA+B,iBAAiB,yDAAyD,+CAA+C;AACxJ,CAAC,4BAA4B,iCAAiC;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,iEAAiE,sCAAsC,aAAa,4BAA4B,EAAE;AACzL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wGAAwG;AACxG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qEAAqE;AACrE,gFAAgF;AAChF,kIAAkI,EAAE,QAAQ,EAAE;AAC9I;AACA,iEAAiE;AACjE,4EAA4E;AAC5E,oIAAoI,EAAE,QAAQ,EAAE;AAChJ,EAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6DAA6D,gCAAgC,kHAAkH;AAC/M;AACA;AACA,SAAS,EAAE,EAAE,uBAAuB,qDAAqD,EAAE,GAAG;AAC9F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iFAAiF,6GAA6G;AAC9L;AACA;AACA,0BAA0B;AAC1B;AACA;AACA,CAAC,EAAE,EAAE,EAAE;AACP;;;;;;;;;;;;;ACvQa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E,OAAO;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,cAAc;AAC5D;AACA,gBAAgB,mBAAO,CAAC,mFAAkB;AAC1C;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kEAAkE;AAClE;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,wFAAwF,mDAAmD,EAAE;AAC7I,SAAS;AACT;AACA;AACA;AACA;AACA,4CAA4C,iBAAiB,iCAAiC,0BAA0B,cAAc;AACtI,aAAa,IAAI;AACjB,SAAS;AACT,KAAK;AACL,CAAC;AACD;AACA;;;;;;;;;;;;;ACxDa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA,8CAA8C,cAAc;AAC5D;AACA,+BAA+B,mBAAO,CAAC,kFAAwB;AAC/D,gCAAgC,mBAAO,CAAC,yDAAY;AACpD,mBAAmB,mBAAO,CAAC,+DAAe;AAC1C,2BAA2B,mBAAO,CAAC,sFAAsB;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,oBAAoB;AACpD;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,gCAAgC,oBAAoB;AACpD;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,gCAAgC,oBAAoB;AACpD;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B;AAC5B;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,gDAAgD,qHAAqH;AACrK;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;;;;;;;;;;;;;ACvGa;AACb,8CAA8C,cAAc;AAC5D;AACA,kBAAkB,mBAAO,CAAC,4DAAa;AACvC,8CAA8C,mDAAmD,6DAA6D,EAAE,YAAY;AAC5K;AACA,4CAA4C,mDAAmD,2DAA2D,EAAE,YAAY;AACxK;AACA,gDAAgD,4DAA4D,iBAAiB,EAAE,QAAQ;AACvI;AACA;AACA,kCAAkC,mBAAmB;AACrD,yDAAyD,iBAAiB,EAAE;AAC5E;AACA;AACA,2CAA2C,gFAAgF;AAC3H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,gFAAgF;AACvH;AACA,oEAAoE,8EAA8E;AAClJ;AACA;AACA,4BAA4B,YAAY;AACxC;AACA;AACA;AACA,0CAA0C,mFAAmF;AAC7H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,eAAe;AAC9C;AACA;AACA;AACA;AACA,yDAAyD,QAAQ,oJAAoJ,EAAE;AACvN;AACA;AACA,sDAAsD,kDAAkD;AACxG;;;;;;;;;;;;;ACzDa;AACb,8CAA8C,cAAc;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,EAAE;AACH;AACA,6CAA6C;AAC7C;AACA;AACA,CAAC,EAAE;AACH;;;;;;;;;;;;;AC9Ca;AACb,8CAA8C,cAAc;AAC5D;AACA,kBAAkB,mBAAO,CAAC,4DAAa;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,kIAAkI;AAChL;AACA;AACA;AACA;AACA;AACA;AACA,6DAA6D,uFAAuF,EAAE;AACtJ;AACA;AACA,+CAA+C,sRAAsR;AACrU,6CAA6C,uTAAuT;AACpW,+CAA+C,mSAAmS;AAClV,6CAA6C,8TAA8T;AAC3W;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,oCAAoC,EAAE;AACrF;AACA,+CAA+C,sCAAsC,EAAE;AACvF;AACA,+CAA+C,oCAAoC,EAAE;AACrF;AACA,+CAA+C,sCAAsC,EAAE;AACvF;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;ACzCa;AACb,8CAA8C,cAAc;AAC5D;AACA,oBAAoB,mBAAO,CAAC,2DAAa;AACzC;AACA,4CAA4C,aAAa;AACzD;AACA,6CAA6C,aAAa;AAC1D;;;;;;;;;;;;;ACRa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E,OAAO;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,cAAc;AAC5D;AACA,cAAc,mBAAO,CAAC,4CAAO;AAC7B,oBAAoB,mBAAO,CAAC,gEAAe;AAC3C,yCAAyC;AACzC;AACA;AACA;AACA;AACA;AACA,0DAA0D,oBAAoB,kBAAkB,EAAE;AAClG,8CAA8C;AAC9C;AACA,yCAAyC,6BAA6B,+BAA+B,EAAE;AACvG;AACA;AACA,wCAAwC;AACxC;AACA,6BAA6B;AAC7B,MAAM;AACN,6CAA6C;AAC7C;AACA,6BAA6B;AAC7B,MAAM;AACN,8CAA8C;AAC9C;AACA,6BAA6B;AAC7B,MAAM;AACN,2DAA2D;AAC3D;AACA,kEAAkE,qBAAqB,EAAE;AACzF;AACA,6BAA6B;AAC7B,MAAM;AACN,8CAA8C;AAC9C;AACA,6BAA6B;AAC7B,MAAM;AACN;AACA;AACA;AACA,+CAA+C,8CAA8C,EAAE;AAC/F;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,kGAAkG,gBAAgB;AAClH,iBAAiB,IAAI;AACrB,2CAA2C,6BAA6B,yBAAyB,EAAE;AACnG;AACA;AACA,qCAAqC;AACrC;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;ACpHa;AACb;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,cAAc;AAC5D,cAAc,mBAAO,CAAC,4CAAO;AAC7B,wBAAwB,mBAAO,CAAC,wEAAmB;AACnD;AACA;AACA,qCAAqC;AACrC;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,wFAAwF,oCAAoC,EAAE,EAAE;AACtJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,uBAAuB;AAC/D,SAAS;AACT;AACA;AACA,iFAAiF,uBAAuB;AACxG;AACA;AACA,4CAA4C,uBAAuB;AACnE,aAAa;AACb;AACA;AACA,wCAAwC;AACxC;AACA,MAAM;AACN,+CAA+C;AAC/C;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;AC5Ea;AACb,8CAA8C,cAAc;AAC5D,cAAc,mBAAO,CAAC,4CAAO;AAC7B;AACA;AACA;AACA,qCAAqC,oBAAoB;AACzD,oCAAoC,qBAAqB;AACzD;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;;;;;;;;;;;;ACjBa;AACb;AACA,8CAA8C,cAAc;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;ACzBa;AACb;AACA;AACA;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,cAAc;AAC5D;AACA,oBAAoB,mBAAO,CAAC,gEAAe;AAC3C,gCAAgC,UAAU,kCAAkC,EAAE;AAC9E;AACA,wCAAwC;AACxC;AACA;AACA,CAAC,EAAE;AACH;AACA,yCAAyC,yBAAyB;AAClE;AACA;AACA,CAAC,EAAE,GAAG;AACN;AACA,gCAAgC,wBAAwB,4BAA4B,IAAI,QAAQ,IAAI,QAAQ,IAAI,QAAQ,IAAI,gCAAgC,GAAG;AAC/J,sCAAsC;AACtC;AACA;AACA,CAAC,EAAE;AACH;AACA,oCAAoC;AACpC;AACA;AACA,CAAC,EAAE;AACH;AACA,yCAAyC;AACzC;AACA;AACA,CAAC,EAAE;AACH;AACA,oCAAoC;AACpC;AACA;AACA,CAAC,EAAE;AACH;AACA,4CAA4C;AAC5C;AACA;AACA,CAAC,EAAE;AACH;AACA,gFAAgF;AAChF;AACA;AACA,CAAC,EAAE;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,OAAO;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,yDAAyD,uCAAuC,EAAE,SAAS;AACnJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK,GAAG,gCAAgC;AACxC;AACA;AACA;AACA,uDAAuD;AACvD;AACA;AACA,kDAAkD,iBAAiB;AACnE,CAAC,IAAI,EAAE;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK,GAAG,gCAAgC;AACxC,+CAA+C,mCAAmC;AAClF,+EAA+E,wEAAwE,EAAE;AACzJ,+BAA+B,sBAAsB,uBAAuB;AAC5E;AACA","file":"main-client.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n \tfunction hotDisposeChunk(chunkId) {\n \t\tdelete installedChunks[chunkId];\n \t}\n \tvar parentHotUpdateCallback = window[\"webpackHotUpdate\"];\n \twindow[\"webpackHotUpdate\"] = // eslint-disable-next-line no-unused-vars\n \tfunction webpackHotUpdateCallback(chunkId, moreModules) {\n \t\thotAddUpdateChunk(chunkId, moreModules);\n \t\tif (parentHotUpdateCallback) parentHotUpdateCallback(chunkId, moreModules);\n \t} ;\n\n \t// eslint-disable-next-line no-unused-vars\n \tfunction hotDownloadUpdateChunk(chunkId) {\n \t\tvar script = document.createElement(\"script\");\n \t\tscript.charset = \"utf-8\";\n \t\tscript.src = __webpack_require__.p + \"\" + chunkId + \".\" + hotCurrentHash + \".hot-update.js\";\n \t\tif (null) script.crossOrigin = null;\n \t\tdocument.head.appendChild(script);\n \t}\n\n \t// eslint-disable-next-line no-unused-vars\n \tfunction hotDownloadManifest(requestTimeout) {\n \t\trequestTimeout = requestTimeout || 10000;\n \t\treturn new Promise(function(resolve, reject) {\n \t\t\tif (typeof XMLHttpRequest === \"undefined\") {\n \t\t\t\treturn reject(new Error(\"No browser support\"));\n \t\t\t}\n \t\t\ttry {\n \t\t\t\tvar request = new XMLHttpRequest();\n \t\t\t\tvar requestPath = __webpack_require__.p + \"\" + hotCurrentHash + \".hot-update.json\";\n \t\t\t\trequest.open(\"GET\", requestPath, true);\n \t\t\t\trequest.timeout = requestTimeout;\n \t\t\t\trequest.send(null);\n \t\t\t} catch (err) {\n \t\t\t\treturn reject(err);\n \t\t\t}\n \t\t\trequest.onreadystatechange = function() {\n \t\t\t\tif (request.readyState !== 4) return;\n \t\t\t\tif (request.status === 0) {\n \t\t\t\t\t// timeout\n \t\t\t\t\treject(\n \t\t\t\t\t\tnew Error(\"Manifest request to \" + requestPath + \" timed out.\")\n \t\t\t\t\t);\n \t\t\t\t} else if (request.status === 404) {\n \t\t\t\t\t// no update available\n \t\t\t\t\tresolve();\n \t\t\t\t} else if (request.status !== 200 && request.status !== 304) {\n \t\t\t\t\t// other failure\n \t\t\t\t\treject(new Error(\"Manifest request to \" + requestPath + \" failed.\"));\n \t\t\t\t} else {\n \t\t\t\t\t// success\n \t\t\t\t\ttry {\n \t\t\t\t\t\tvar update = JSON.parse(request.responseText);\n \t\t\t\t\t} catch (e) {\n \t\t\t\t\t\treject(e);\n \t\t\t\t\t\treturn;\n \t\t\t\t\t}\n \t\t\t\t\tresolve(update);\n \t\t\t\t}\n \t\t\t};\n \t\t});\n \t}\n\n \tvar hotApplyOnUpdate = true;\n \t// eslint-disable-next-line no-unused-vars\n \tvar hotCurrentHash = \"8ac64e02d2f57816b6a1\";\n \tvar hotRequestTimeout = 10000;\n \tvar hotCurrentModuleData = {};\n \tvar hotCurrentChildModule;\n \t// eslint-disable-next-line no-unused-vars\n \tvar hotCurrentParents = [];\n \t// eslint-disable-next-line no-unused-vars\n \tvar hotCurrentParentsTemp = [];\n\n \t// eslint-disable-next-line no-unused-vars\n \tfunction hotCreateRequire(moduleId) {\n \t\tvar me = installedModules[moduleId];\n \t\tif (!me) return __webpack_require__;\n \t\tvar fn = function(request) {\n \t\t\tif (me.hot.active) {\n \t\t\t\tif (installedModules[request]) {\n \t\t\t\t\tif (installedModules[request].parents.indexOf(moduleId) === -1) {\n \t\t\t\t\t\tinstalledModules[request].parents.push(moduleId);\n \t\t\t\t\t}\n \t\t\t\t} else {\n \t\t\t\t\thotCurrentParents = [moduleId];\n \t\t\t\t\thotCurrentChildModule = request;\n \t\t\t\t}\n \t\t\t\tif (me.children.indexOf(request) === -1) {\n \t\t\t\t\tme.children.push(request);\n \t\t\t\t}\n \t\t\t} else {\n \t\t\t\tconsole.warn(\n \t\t\t\t\t\"[HMR] unexpected require(\" +\n \t\t\t\t\t\trequest +\n \t\t\t\t\t\t\") from disposed module \" +\n \t\t\t\t\t\tmoduleId\n \t\t\t\t);\n \t\t\t\thotCurrentParents = [];\n \t\t\t}\n \t\t\treturn __webpack_require__(request);\n \t\t};\n \t\tvar ObjectFactory = function ObjectFactory(name) {\n \t\t\treturn {\n \t\t\t\tconfigurable: true,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: function() {\n \t\t\t\t\treturn __webpack_require__[name];\n \t\t\t\t},\n \t\t\t\tset: function(value) {\n \t\t\t\t\t__webpack_require__[name] = value;\n \t\t\t\t}\n \t\t\t};\n \t\t};\n \t\tfor (var name in __webpack_require__) {\n \t\t\tif (\n \t\t\t\tObject.prototype.hasOwnProperty.call(__webpack_require__, name) &&\n \t\t\t\tname !== \"e\" &&\n \t\t\t\tname !== \"t\"\n \t\t\t) {\n \t\t\t\tObject.defineProperty(fn, name, ObjectFactory(name));\n \t\t\t}\n \t\t}\n \t\tfn.e = function(chunkId) {\n \t\t\tif (hotStatus === \"ready\") hotSetStatus(\"prepare\");\n \t\t\thotChunksLoading++;\n \t\t\treturn __webpack_require__.e(chunkId).then(finishChunkLoading, function(err) {\n \t\t\t\tfinishChunkLoading();\n \t\t\t\tthrow err;\n \t\t\t});\n\n \t\t\tfunction finishChunkLoading() {\n \t\t\t\thotChunksLoading--;\n \t\t\t\tif (hotStatus === \"prepare\") {\n \t\t\t\t\tif (!hotWaitingFilesMap[chunkId]) {\n \t\t\t\t\t\thotEnsureUpdateChunk(chunkId);\n \t\t\t\t\t}\n \t\t\t\t\tif (hotChunksLoading === 0 && hotWaitingFiles === 0) {\n \t\t\t\t\t\thotUpdateDownloaded();\n \t\t\t\t\t}\n \t\t\t\t}\n \t\t\t}\n \t\t};\n \t\tfn.t = function(value, mode) {\n \t\t\tif (mode & 1) value = fn(value);\n \t\t\treturn __webpack_require__.t(value, mode & ~1);\n \t\t};\n \t\treturn fn;\n \t}\n\n \t// eslint-disable-next-line no-unused-vars\n \tfunction hotCreateModule(moduleId) {\n \t\tvar hot = {\n \t\t\t// private stuff\n \t\t\t_acceptedDependencies: {},\n \t\t\t_declinedDependencies: {},\n \t\t\t_selfAccepted: false,\n \t\t\t_selfDeclined: false,\n \t\t\t_selfInvalidated: false,\n \t\t\t_disposeHandlers: [],\n \t\t\t_main: hotCurrentChildModule !== moduleId,\n\n \t\t\t// Module API\n \t\t\tactive: true,\n \t\t\taccept: function(dep, callback) {\n \t\t\t\tif (dep === undefined) hot._selfAccepted = true;\n \t\t\t\telse if (typeof dep === \"function\") hot._selfAccepted = dep;\n \t\t\t\telse if (typeof dep === \"object\")\n \t\t\t\t\tfor (var i = 0; i < dep.length; i++)\n \t\t\t\t\t\thot._acceptedDependencies[dep[i]] = callback || function() {};\n \t\t\t\telse hot._acceptedDependencies[dep] = callback || function() {};\n \t\t\t},\n \t\t\tdecline: function(dep) {\n \t\t\t\tif (dep === undefined) hot._selfDeclined = true;\n \t\t\t\telse if (typeof dep === \"object\")\n \t\t\t\t\tfor (var i = 0; i < dep.length; i++)\n \t\t\t\t\t\thot._declinedDependencies[dep[i]] = true;\n \t\t\t\telse hot._declinedDependencies[dep] = true;\n \t\t\t},\n \t\t\tdispose: function(callback) {\n \t\t\t\thot._disposeHandlers.push(callback);\n \t\t\t},\n \t\t\taddDisposeHandler: function(callback) {\n \t\t\t\thot._disposeHandlers.push(callback);\n \t\t\t},\n \t\t\tremoveDisposeHandler: function(callback) {\n \t\t\t\tvar idx = hot._disposeHandlers.indexOf(callback);\n \t\t\t\tif (idx >= 0) hot._disposeHandlers.splice(idx, 1);\n \t\t\t},\n \t\t\tinvalidate: function() {\n \t\t\t\tthis._selfInvalidated = true;\n \t\t\t\tswitch (hotStatus) {\n \t\t\t\t\tcase \"idle\":\n \t\t\t\t\t\thotUpdate = {};\n \t\t\t\t\t\thotUpdate[moduleId] = modules[moduleId];\n \t\t\t\t\t\thotSetStatus(\"ready\");\n \t\t\t\t\t\tbreak;\n \t\t\t\t\tcase \"ready\":\n \t\t\t\t\t\thotApplyInvalidatedModule(moduleId);\n \t\t\t\t\t\tbreak;\n \t\t\t\t\tcase \"prepare\":\n \t\t\t\t\tcase \"check\":\n \t\t\t\t\tcase \"dispose\":\n \t\t\t\t\tcase \"apply\":\n \t\t\t\t\t\t(hotQueuedInvalidatedModules =\n \t\t\t\t\t\t\thotQueuedInvalidatedModules || []).push(moduleId);\n \t\t\t\t\t\tbreak;\n \t\t\t\t\tdefault:\n \t\t\t\t\t\t// ignore requests in error states\n \t\t\t\t\t\tbreak;\n \t\t\t\t}\n \t\t\t},\n\n \t\t\t// Management API\n \t\t\tcheck: hotCheck,\n \t\t\tapply: hotApply,\n \t\t\tstatus: function(l) {\n \t\t\t\tif (!l) return hotStatus;\n \t\t\t\thotStatusHandlers.push(l);\n \t\t\t},\n \t\t\taddStatusHandler: function(l) {\n \t\t\t\thotStatusHandlers.push(l);\n \t\t\t},\n \t\t\tremoveStatusHandler: function(l) {\n \t\t\t\tvar idx = hotStatusHandlers.indexOf(l);\n \t\t\t\tif (idx >= 0) hotStatusHandlers.splice(idx, 1);\n \t\t\t},\n\n \t\t\t//inherit from previous dispose call\n \t\t\tdata: hotCurrentModuleData[moduleId]\n \t\t};\n \t\thotCurrentChildModule = undefined;\n \t\treturn hot;\n \t}\n\n \tvar hotStatusHandlers = [];\n \tvar hotStatus = \"idle\";\n\n \tfunction hotSetStatus(newStatus) {\n \t\thotStatus = newStatus;\n \t\tfor (var i = 0; i < hotStatusHandlers.length; i++)\n \t\t\thotStatusHandlers[i].call(null, newStatus);\n \t}\n\n \t// while downloading\n \tvar hotWaitingFiles = 0;\n \tvar hotChunksLoading = 0;\n \tvar hotWaitingFilesMap = {};\n \tvar hotRequestedFilesMap = {};\n \tvar hotAvailableFilesMap = {};\n \tvar hotDeferred;\n\n \t// The update info\n \tvar hotUpdate, hotUpdateNewHash, hotQueuedInvalidatedModules;\n\n \tfunction toModuleId(id) {\n \t\tvar isNumber = +id + \"\" === id;\n \t\treturn isNumber ? +id : id;\n \t}\n\n \tfunction hotCheck(apply) {\n \t\tif (hotStatus !== \"idle\") {\n \t\t\tthrow new Error(\"check() is only allowed in idle status\");\n \t\t}\n \t\thotApplyOnUpdate = apply;\n \t\thotSetStatus(\"check\");\n \t\treturn hotDownloadManifest(hotRequestTimeout).then(function(update) {\n \t\t\tif (!update) {\n \t\t\t\thotSetStatus(hotApplyInvalidatedModules() ? \"ready\" : \"idle\");\n \t\t\t\treturn null;\n \t\t\t}\n \t\t\thotRequestedFilesMap = {};\n \t\t\thotWaitingFilesMap = {};\n \t\t\thotAvailableFilesMap = update.c;\n \t\t\thotUpdateNewHash = update.h;\n\n \t\t\thotSetStatus(\"prepare\");\n \t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\thotDeferred = {\n \t\t\t\t\tresolve: resolve,\n \t\t\t\t\treject: reject\n \t\t\t\t};\n \t\t\t});\n \t\t\thotUpdate = {};\n \t\t\tfor(var chunkId in installedChunks)\n \t\t\t// eslint-disable-next-line no-lone-blocks\n \t\t\t{\n \t\t\t\thotEnsureUpdateChunk(chunkId);\n \t\t\t}\n \t\t\tif (\n \t\t\t\thotStatus === \"prepare\" &&\n \t\t\t\thotChunksLoading === 0 &&\n \t\t\t\thotWaitingFiles === 0\n \t\t\t) {\n \t\t\t\thotUpdateDownloaded();\n \t\t\t}\n \t\t\treturn promise;\n \t\t});\n \t}\n\n \t// eslint-disable-next-line no-unused-vars\n \tfunction hotAddUpdateChunk(chunkId, moreModules) {\n \t\tif (!hotAvailableFilesMap[chunkId] || !hotRequestedFilesMap[chunkId])\n \t\t\treturn;\n \t\thotRequestedFilesMap[chunkId] = false;\n \t\tfor (var moduleId in moreModules) {\n \t\t\tif (Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\thotUpdate[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif (--hotWaitingFiles === 0 && hotChunksLoading === 0) {\n \t\t\thotUpdateDownloaded();\n \t\t}\n \t}\n\n \tfunction hotEnsureUpdateChunk(chunkId) {\n \t\tif (!hotAvailableFilesMap[chunkId]) {\n \t\t\thotWaitingFilesMap[chunkId] = true;\n \t\t} else {\n \t\t\thotRequestedFilesMap[chunkId] = true;\n \t\t\thotWaitingFiles++;\n \t\t\thotDownloadUpdateChunk(chunkId);\n \t\t}\n \t}\n\n \tfunction hotUpdateDownloaded() {\n \t\thotSetStatus(\"ready\");\n \t\tvar deferred = hotDeferred;\n \t\thotDeferred = null;\n \t\tif (!deferred) return;\n \t\tif (hotApplyOnUpdate) {\n \t\t\t// Wrap deferred object in Promise to mark it as a well-handled Promise to\n \t\t\t// avoid triggering uncaught exception warning in Chrome.\n \t\t\t// See https://bugs.chromium.org/p/chromium/issues/detail?id=465666\n \t\t\tPromise.resolve()\n \t\t\t\t.then(function() {\n \t\t\t\t\treturn hotApply(hotApplyOnUpdate);\n \t\t\t\t})\n \t\t\t\t.then(\n \t\t\t\t\tfunction(result) {\n \t\t\t\t\t\tdeferred.resolve(result);\n \t\t\t\t\t},\n \t\t\t\t\tfunction(err) {\n \t\t\t\t\t\tdeferred.reject(err);\n \t\t\t\t\t}\n \t\t\t\t);\n \t\t} else {\n \t\t\tvar outdatedModules = [];\n \t\t\tfor (var id in hotUpdate) {\n \t\t\t\tif (Object.prototype.hasOwnProperty.call(hotUpdate, id)) {\n \t\t\t\t\toutdatedModules.push(toModuleId(id));\n \t\t\t\t}\n \t\t\t}\n \t\t\tdeferred.resolve(outdatedModules);\n \t\t}\n \t}\n\n \tfunction hotApply(options) {\n \t\tif (hotStatus !== \"ready\")\n \t\t\tthrow new Error(\"apply() is only allowed in ready status\");\n \t\toptions = options || {};\n \t\treturn hotApplyInternal(options);\n \t}\n\n \tfunction hotApplyInternal(options) {\n \t\thotApplyInvalidatedModules();\n\n \t\tvar cb;\n \t\tvar i;\n \t\tvar j;\n \t\tvar module;\n \t\tvar moduleId;\n\n \t\tfunction getAffectedStuff(updateModuleId) {\n \t\t\tvar outdatedModules = [updateModuleId];\n \t\t\tvar outdatedDependencies = {};\n\n \t\t\tvar queue = outdatedModules.map(function(id) {\n \t\t\t\treturn {\n \t\t\t\t\tchain: [id],\n \t\t\t\t\tid: id\n \t\t\t\t};\n \t\t\t});\n \t\t\twhile (queue.length > 0) {\n \t\t\t\tvar queueItem = queue.pop();\n \t\t\t\tvar moduleId = queueItem.id;\n \t\t\t\tvar chain = queueItem.chain;\n \t\t\t\tmodule = installedModules[moduleId];\n \t\t\t\tif (\n \t\t\t\t\t!module ||\n \t\t\t\t\t(module.hot._selfAccepted && !module.hot._selfInvalidated)\n \t\t\t\t)\n \t\t\t\t\tcontinue;\n \t\t\t\tif (module.hot._selfDeclined) {\n \t\t\t\t\treturn {\n \t\t\t\t\t\ttype: \"self-declined\",\n \t\t\t\t\t\tchain: chain,\n \t\t\t\t\t\tmoduleId: moduleId\n \t\t\t\t\t};\n \t\t\t\t}\n \t\t\t\tif (module.hot._main) {\n \t\t\t\t\treturn {\n \t\t\t\t\t\ttype: \"unaccepted\",\n \t\t\t\t\t\tchain: chain,\n \t\t\t\t\t\tmoduleId: moduleId\n \t\t\t\t\t};\n \t\t\t\t}\n \t\t\t\tfor (var i = 0; i < module.parents.length; i++) {\n \t\t\t\t\tvar parentId = module.parents[i];\n \t\t\t\t\tvar parent = installedModules[parentId];\n \t\t\t\t\tif (!parent) continue;\n \t\t\t\t\tif (parent.hot._declinedDependencies[moduleId]) {\n \t\t\t\t\t\treturn {\n \t\t\t\t\t\t\ttype: \"declined\",\n \t\t\t\t\t\t\tchain: chain.concat([parentId]),\n \t\t\t\t\t\t\tmoduleId: moduleId,\n \t\t\t\t\t\t\tparentId: parentId\n \t\t\t\t\t\t};\n \t\t\t\t\t}\n \t\t\t\t\tif (outdatedModules.indexOf(parentId) !== -1) continue;\n \t\t\t\t\tif (parent.hot._acceptedDependencies[moduleId]) {\n \t\t\t\t\t\tif (!outdatedDependencies[parentId])\n \t\t\t\t\t\t\toutdatedDependencies[parentId] = [];\n \t\t\t\t\t\taddAllToSet(outdatedDependencies[parentId], [moduleId]);\n \t\t\t\t\t\tcontinue;\n \t\t\t\t\t}\n \t\t\t\t\tdelete outdatedDependencies[parentId];\n \t\t\t\t\toutdatedModules.push(parentId);\n \t\t\t\t\tqueue.push({\n \t\t\t\t\t\tchain: chain.concat([parentId]),\n \t\t\t\t\t\tid: parentId\n \t\t\t\t\t});\n \t\t\t\t}\n \t\t\t}\n\n \t\t\treturn {\n \t\t\t\ttype: \"accepted\",\n \t\t\t\tmoduleId: updateModuleId,\n \t\t\t\toutdatedModules: outdatedModules,\n \t\t\t\toutdatedDependencies: outdatedDependencies\n \t\t\t};\n \t\t}\n\n \t\tfunction addAllToSet(a, b) {\n \t\t\tfor (var i = 0; i < b.length; i++) {\n \t\t\t\tvar item = b[i];\n \t\t\t\tif (a.indexOf(item) === -1) a.push(item);\n \t\t\t}\n \t\t}\n\n \t\t// at begin all updates modules are outdated\n \t\t// the \"outdated\" status can propagate to parents if they don't accept the children\n \t\tvar outdatedDependencies = {};\n \t\tvar outdatedModules = [];\n \t\tvar appliedUpdate = {};\n\n \t\tvar warnUnexpectedRequire = function warnUnexpectedRequire() {\n \t\t\tconsole.warn(\n \t\t\t\t\"[HMR] unexpected require(\" + result.moduleId + \") to disposed module\"\n \t\t\t);\n \t\t};\n\n \t\tfor (var id in hotUpdate) {\n \t\t\tif (Object.prototype.hasOwnProperty.call(hotUpdate, id)) {\n \t\t\t\tmoduleId = toModuleId(id);\n \t\t\t\t/** @type {TODO} */\n \t\t\t\tvar result;\n \t\t\t\tif (hotUpdate[id]) {\n \t\t\t\t\tresult = getAffectedStuff(moduleId);\n \t\t\t\t} else {\n \t\t\t\t\tresult = {\n \t\t\t\t\t\ttype: \"disposed\",\n \t\t\t\t\t\tmoduleId: id\n \t\t\t\t\t};\n \t\t\t\t}\n \t\t\t\t/** @type {Error|false} */\n \t\t\t\tvar abortError = false;\n \t\t\t\tvar doApply = false;\n \t\t\t\tvar doDispose = false;\n \t\t\t\tvar chainInfo = \"\";\n \t\t\t\tif (result.chain) {\n \t\t\t\t\tchainInfo = \"\\nUpdate propagation: \" + result.chain.join(\" -> \");\n \t\t\t\t}\n \t\t\t\tswitch (result.type) {\n \t\t\t\t\tcase \"self-declined\":\n \t\t\t\t\t\tif (options.onDeclined) options.onDeclined(result);\n \t\t\t\t\t\tif (!options.ignoreDeclined)\n \t\t\t\t\t\t\tabortError = new Error(\n \t\t\t\t\t\t\t\t\"Aborted because of self decline: \" +\n \t\t\t\t\t\t\t\t\tresult.moduleId +\n \t\t\t\t\t\t\t\t\tchainInfo\n \t\t\t\t\t\t\t);\n \t\t\t\t\t\tbreak;\n \t\t\t\t\tcase \"declined\":\n \t\t\t\t\t\tif (options.onDeclined) options.onDeclined(result);\n \t\t\t\t\t\tif (!options.ignoreDeclined)\n \t\t\t\t\t\t\tabortError = new Error(\n \t\t\t\t\t\t\t\t\"Aborted because of declined dependency: \" +\n \t\t\t\t\t\t\t\t\tresult.moduleId +\n \t\t\t\t\t\t\t\t\t\" in \" +\n \t\t\t\t\t\t\t\t\tresult.parentId +\n \t\t\t\t\t\t\t\t\tchainInfo\n \t\t\t\t\t\t\t);\n \t\t\t\t\t\tbreak;\n \t\t\t\t\tcase \"unaccepted\":\n \t\t\t\t\t\tif (options.onUnaccepted) options.onUnaccepted(result);\n \t\t\t\t\t\tif (!options.ignoreUnaccepted)\n \t\t\t\t\t\t\tabortError = new Error(\n \t\t\t\t\t\t\t\t\"Aborted because \" + moduleId + \" is not accepted\" + chainInfo\n \t\t\t\t\t\t\t);\n \t\t\t\t\t\tbreak;\n \t\t\t\t\tcase \"accepted\":\n \t\t\t\t\t\tif (options.onAccepted) options.onAccepted(result);\n \t\t\t\t\t\tdoApply = true;\n \t\t\t\t\t\tbreak;\n \t\t\t\t\tcase \"disposed\":\n \t\t\t\t\t\tif (options.onDisposed) options.onDisposed(result);\n \t\t\t\t\t\tdoDispose = true;\n \t\t\t\t\t\tbreak;\n \t\t\t\t\tdefault:\n \t\t\t\t\t\tthrow new Error(\"Unexception type \" + result.type);\n \t\t\t\t}\n \t\t\t\tif (abortError) {\n \t\t\t\t\thotSetStatus(\"abort\");\n \t\t\t\t\treturn Promise.reject(abortError);\n \t\t\t\t}\n \t\t\t\tif (doApply) {\n \t\t\t\t\tappliedUpdate[moduleId] = hotUpdate[moduleId];\n \t\t\t\t\taddAllToSet(outdatedModules, result.outdatedModules);\n \t\t\t\t\tfor (moduleId in result.outdatedDependencies) {\n \t\t\t\t\t\tif (\n \t\t\t\t\t\t\tObject.prototype.hasOwnProperty.call(\n \t\t\t\t\t\t\t\tresult.outdatedDependencies,\n \t\t\t\t\t\t\t\tmoduleId\n \t\t\t\t\t\t\t)\n \t\t\t\t\t\t) {\n \t\t\t\t\t\t\tif (!outdatedDependencies[moduleId])\n \t\t\t\t\t\t\t\toutdatedDependencies[moduleId] = [];\n \t\t\t\t\t\t\taddAllToSet(\n \t\t\t\t\t\t\t\toutdatedDependencies[moduleId],\n \t\t\t\t\t\t\t\tresult.outdatedDependencies[moduleId]\n \t\t\t\t\t\t\t);\n \t\t\t\t\t\t}\n \t\t\t\t\t}\n \t\t\t\t}\n \t\t\t\tif (doDispose) {\n \t\t\t\t\taddAllToSet(outdatedModules, [result.moduleId]);\n \t\t\t\t\tappliedUpdate[moduleId] = warnUnexpectedRequire;\n \t\t\t\t}\n \t\t\t}\n \t\t}\n\n \t\t// Store self accepted outdated modules to require them later by the module system\n \t\tvar outdatedSelfAcceptedModules = [];\n \t\tfor (i = 0; i < outdatedModules.length; i++) {\n \t\t\tmoduleId = outdatedModules[i];\n \t\t\tif (\n \t\t\t\tinstalledModules[moduleId] &&\n \t\t\t\tinstalledModules[moduleId].hot._selfAccepted &&\n \t\t\t\t// removed self-accepted modules should not be required\n \t\t\t\tappliedUpdate[moduleId] !== warnUnexpectedRequire &&\n \t\t\t\t// when called invalidate self-accepting is not possible\n \t\t\t\t!installedModules[moduleId].hot._selfInvalidated\n \t\t\t) {\n \t\t\t\toutdatedSelfAcceptedModules.push({\n \t\t\t\t\tmodule: moduleId,\n \t\t\t\t\tparents: installedModules[moduleId].parents.slice(),\n \t\t\t\t\terrorHandler: installedModules[moduleId].hot._selfAccepted\n \t\t\t\t});\n \t\t\t}\n \t\t}\n\n \t\t// Now in \"dispose\" phase\n \t\thotSetStatus(\"dispose\");\n \t\tObject.keys(hotAvailableFilesMap).forEach(function(chunkId) {\n \t\t\tif (hotAvailableFilesMap[chunkId] === false) {\n \t\t\t\thotDisposeChunk(chunkId);\n \t\t\t}\n \t\t});\n\n \t\tvar idx;\n \t\tvar queue = outdatedModules.slice();\n \t\twhile (queue.length > 0) {\n \t\t\tmoduleId = queue.pop();\n \t\t\tmodule = installedModules[moduleId];\n \t\t\tif (!module) continue;\n\n \t\t\tvar data = {};\n\n \t\t\t// Call dispose handlers\n \t\t\tvar disposeHandlers = module.hot._disposeHandlers;\n \t\t\tfor (j = 0; j < disposeHandlers.length; j++) {\n \t\t\t\tcb = disposeHandlers[j];\n \t\t\t\tcb(data);\n \t\t\t}\n \t\t\thotCurrentModuleData[moduleId] = data;\n\n \t\t\t// disable module (this disables requires from this module)\n \t\t\tmodule.hot.active = false;\n\n \t\t\t// remove module from cache\n \t\t\tdelete installedModules[moduleId];\n\n \t\t\t// when disposing there is no need to call dispose handler\n \t\t\tdelete outdatedDependencies[moduleId];\n\n \t\t\t// remove \"parents\" references from all children\n \t\t\tfor (j = 0; j < module.children.length; j++) {\n \t\t\t\tvar child = installedModules[module.children[j]];\n \t\t\t\tif (!child) continue;\n \t\t\t\tidx = child.parents.indexOf(moduleId);\n \t\t\t\tif (idx >= 0) {\n \t\t\t\t\tchild.parents.splice(idx, 1);\n \t\t\t\t}\n \t\t\t}\n \t\t}\n\n \t\t// remove outdated dependency from module children\n \t\tvar dependency;\n \t\tvar moduleOutdatedDependencies;\n \t\tfor (moduleId in outdatedDependencies) {\n \t\t\tif (\n \t\t\t\tObject.prototype.hasOwnProperty.call(outdatedDependencies, moduleId)\n \t\t\t) {\n \t\t\t\tmodule = installedModules[moduleId];\n \t\t\t\tif (module) {\n \t\t\t\t\tmoduleOutdatedDependencies = outdatedDependencies[moduleId];\n \t\t\t\t\tfor (j = 0; j < moduleOutdatedDependencies.length; j++) {\n \t\t\t\t\t\tdependency = moduleOutdatedDependencies[j];\n \t\t\t\t\t\tidx = module.children.indexOf(dependency);\n \t\t\t\t\t\tif (idx >= 0) module.children.splice(idx, 1);\n \t\t\t\t\t}\n \t\t\t\t}\n \t\t\t}\n \t\t}\n\n \t\t// Now in \"apply\" phase\n \t\thotSetStatus(\"apply\");\n\n \t\tif (hotUpdateNewHash !== undefined) {\n \t\t\thotCurrentHash = hotUpdateNewHash;\n \t\t\thotUpdateNewHash = undefined;\n \t\t}\n \t\thotUpdate = undefined;\n\n \t\t// insert new code\n \t\tfor (moduleId in appliedUpdate) {\n \t\t\tif (Object.prototype.hasOwnProperty.call(appliedUpdate, moduleId)) {\n \t\t\t\tmodules[moduleId] = appliedUpdate[moduleId];\n \t\t\t}\n \t\t}\n\n \t\t// call accept handlers\n \t\tvar error = null;\n \t\tfor (moduleId in outdatedDependencies) {\n \t\t\tif (\n \t\t\t\tObject.prototype.hasOwnProperty.call(outdatedDependencies, moduleId)\n \t\t\t) {\n \t\t\t\tmodule = installedModules[moduleId];\n \t\t\t\tif (module) {\n \t\t\t\t\tmoduleOutdatedDependencies = outdatedDependencies[moduleId];\n \t\t\t\t\tvar callbacks = [];\n \t\t\t\t\tfor (i = 0; i < moduleOutdatedDependencies.length; i++) {\n \t\t\t\t\t\tdependency = moduleOutdatedDependencies[i];\n \t\t\t\t\t\tcb = module.hot._acceptedDependencies[dependency];\n \t\t\t\t\t\tif (cb) {\n \t\t\t\t\t\t\tif (callbacks.indexOf(cb) !== -1) continue;\n \t\t\t\t\t\t\tcallbacks.push(cb);\n \t\t\t\t\t\t}\n \t\t\t\t\t}\n \t\t\t\t\tfor (i = 0; i < callbacks.length; i++) {\n \t\t\t\t\t\tcb = callbacks[i];\n \t\t\t\t\t\ttry {\n \t\t\t\t\t\t\tcb(moduleOutdatedDependencies);\n \t\t\t\t\t\t} catch (err) {\n \t\t\t\t\t\t\tif (options.onErrored) {\n \t\t\t\t\t\t\t\toptions.onErrored({\n \t\t\t\t\t\t\t\t\ttype: \"accept-errored\",\n \t\t\t\t\t\t\t\t\tmoduleId: moduleId,\n \t\t\t\t\t\t\t\t\tdependencyId: moduleOutdatedDependencies[i],\n \t\t\t\t\t\t\t\t\terror: err\n \t\t\t\t\t\t\t\t});\n \t\t\t\t\t\t\t}\n \t\t\t\t\t\t\tif (!options.ignoreErrored) {\n \t\t\t\t\t\t\t\tif (!error) error = err;\n \t\t\t\t\t\t\t}\n \t\t\t\t\t\t}\n \t\t\t\t\t}\n \t\t\t\t}\n \t\t\t}\n \t\t}\n\n \t\t// Load self accepted modules\n \t\tfor (i = 0; i < outdatedSelfAcceptedModules.length; i++) {\n \t\t\tvar item = outdatedSelfAcceptedModules[i];\n \t\t\tmoduleId = item.module;\n \t\t\thotCurrentParents = item.parents;\n \t\t\thotCurrentChildModule = moduleId;\n \t\t\ttry {\n \t\t\t\t__webpack_require__(moduleId);\n \t\t\t} catch (err) {\n \t\t\t\tif (typeof item.errorHandler === \"function\") {\n \t\t\t\t\ttry {\n \t\t\t\t\t\titem.errorHandler(err);\n \t\t\t\t\t} catch (err2) {\n \t\t\t\t\t\tif (options.onErrored) {\n \t\t\t\t\t\t\toptions.onErrored({\n \t\t\t\t\t\t\t\ttype: \"self-accept-error-handler-errored\",\n \t\t\t\t\t\t\t\tmoduleId: moduleId,\n \t\t\t\t\t\t\t\terror: err2,\n \t\t\t\t\t\t\t\toriginalError: err\n \t\t\t\t\t\t\t});\n \t\t\t\t\t\t}\n \t\t\t\t\t\tif (!options.ignoreErrored) {\n \t\t\t\t\t\t\tif (!error) error = err2;\n \t\t\t\t\t\t}\n \t\t\t\t\t\tif (!error) error = err;\n \t\t\t\t\t}\n \t\t\t\t} else {\n \t\t\t\t\tif (options.onErrored) {\n \t\t\t\t\t\toptions.onErrored({\n \t\t\t\t\t\t\ttype: \"self-accept-errored\",\n \t\t\t\t\t\t\tmoduleId: moduleId,\n \t\t\t\t\t\t\terror: err\n \t\t\t\t\t\t});\n \t\t\t\t\t}\n \t\t\t\t\tif (!options.ignoreErrored) {\n \t\t\t\t\t\tif (!error) error = err;\n \t\t\t\t\t}\n \t\t\t\t}\n \t\t\t}\n \t\t}\n\n \t\t// handle errors in accept handlers and self accepted module load\n \t\tif (error) {\n \t\t\thotSetStatus(\"fail\");\n \t\t\treturn Promise.reject(error);\n \t\t}\n\n \t\tif (hotQueuedInvalidatedModules) {\n \t\t\treturn hotApplyInternal(options).then(function(list) {\n \t\t\t\toutdatedModules.forEach(function(moduleId) {\n \t\t\t\t\tif (list.indexOf(moduleId) < 0) list.push(moduleId);\n \t\t\t\t});\n \t\t\t\treturn list;\n \t\t\t});\n \t\t}\n\n \t\thotSetStatus(\"idle\");\n \t\treturn new Promise(function(resolve) {\n \t\t\tresolve(outdatedModules);\n \t\t});\n \t}\n\n \tfunction hotApplyInvalidatedModules() {\n \t\tif (hotQueuedInvalidatedModules) {\n \t\t\tif (!hotUpdate) hotUpdate = {};\n \t\t\thotQueuedInvalidatedModules.forEach(hotApplyInvalidatedModule);\n \t\t\thotQueuedInvalidatedModules = undefined;\n \t\t\treturn true;\n \t\t}\n \t}\n\n \tfunction hotApplyInvalidatedModule(moduleId) {\n \t\tif (!Object.prototype.hasOwnProperty.call(hotUpdate, moduleId))\n \t\t\thotUpdate[moduleId] = modules[moduleId];\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"main-client\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {},\n \t\t\thot: hotCreateModule(moduleId),\n \t\t\tparents: (hotCurrentParentsTemp = hotCurrentParents, hotCurrentParents = [], hotCurrentParentsTemp),\n \t\t\tchildren: []\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"dist/\";\n\n \t// __webpack_hash__\n \t__webpack_require__.h = function() { return hotCurrentHash; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"vendors-chunk\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import * as React from 'react';\nimport { Route, withRouter, Switch } from 'react-router-dom';\nimport { CssBaseline } from '@material-ui/core';\nimport { hot } from 'react-hot-loader';\n\nimport {\n ScrollToTop, PrivateRoute, PageNotFound, ErrorBoundary,\n} from '../youwell-common/components';\nimport { LoadAppContent, StartSession, LoadOrgConfig } from '../common/components';\n\nimport urls from './urls';\n\nimport Inside from '../features/inside/Index';\nimport Outside from '../features/outside/Index';\nimport Public from '../features/public/Index';\nimport Preview from '../features/preview/Index';\nimport LoadLanguageData from '../youwell-common/components/LoadLanguageData';\nimport SingleTaskPage from '../features/singlepage/Index';\nimport OutsideProgram from '../features/outsideProgram/Index';\nimport External from '../features/external/Index';\nimport { useYouwellSelector } from './store';\nimport { authTypes } from '../youwell-common/Auth';\n\nconst OutsideRoute = () => {\n const appConfig = useYouwellSelector(state => state.pageSettings.appConfig);\n\n if (appConfig.publicProgramId || appConfig.publicPrograms?.length > 0) return ;\n\n return ;\n}\n\nclass App extends React.Component {\n render() {\n return (\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 );\n }\n}\n\nexport default hot(module)(withRouter(App));\n","import { CalendarIcon } from '../common/image';\r\nimport {\r\n SleepIcon, ElementListIcon, BullsEyeIcon, DirectionsRunIcon,\r\n} from '../common/icons';\r\nimport urls from './urls';\r\n\r\nexport const appSettings = {\r\n keepPublicTokenForSession: false,\r\n};\r\n\r\nexport const headerItems = {\r\n title: 'title',\r\n pageTitle: 'pageTitle',\r\n flex: 'flex',\r\n appItems: 'appItems',\r\n pages: 'pages',\r\n chat: 'chat',\r\n favourites: 'favourites',\r\n profile: 'profile',\r\n logout: 'logout',\r\n menu: 'menu',\r\n org: 'org',\r\n login: 'login',\r\n customActions: 'customActions',\r\n};\r\n\r\nexport const dashboardItems = {\r\n welcome: 'welcome',\r\n progress: 'progress',\r\n programDescription: 'programDescription',\r\n programIcon: 'programIcon',\r\n questionnaires: 'questionnaires',\r\n intro: 'intro',\r\n modules: 'modules',\r\n healthTasks: 'healthTasks',\r\n};\r\n\r\nexport const dashboardItemsCustom = {\r\n unfinished: 'unfinished',\r\n progress: 'progress',\r\n calendar: 'calendar',\r\n completedIntro: 'completedIntro',\r\n waitingForScheduled: 'waitingForScheduled',\r\n exit: 'exit',\r\n info: 'info',\r\n};\r\n\r\nconst appPages = [\r\n {\r\n key: 'health', url: urls.inside.pages.health.health, nameKey: 'healthPage.header', Icon: DirectionsRunIcon,\r\n },\r\n {\r\n key: 'activityDiary', url: urls.inside.pages.activityDiary, nameKey: 'activityDiary.header', Icon: CalendarIcon,\r\n },\r\n {\r\n key: 'sleepDiary', url: urls.inside.pages.sleepDiary, nameKey: 'sleepDiary.header', Icon: SleepIcon,\r\n },\r\n {\r\n key: 'elementsPage', url: urls.inside.pages.elements, nameKey: 'elementsPage.heading', Icon: ElementListIcon, hideIfNoProgram: true,\r\n },\r\n {\r\n key: 'elementsPage-bullseye', url: `${urls.inside.pages.elements}/BullsEye`, nameKey: 'elementsPage.heading', Icon: BullsEyeIcon, hideIfNoProgram: true,\r\n },\r\n];\r\n\r\nconst defaultSetup = {\r\n header: [headerItems.title, headerItems.flex, headerItems.pages, headerItems.appItems, headerItems.chat, headerItems.favourites, headerItems.menu],\r\n dashboard: [dashboardItems.welcome, dashboardItems.questionnaires, dashboardItems.modules],\r\n pages: [],\r\n visitTaskDelay: 0.2, // delay before a task is visited (in seconds)\r\n features: {\r\n profile: true,\r\n favourites: false,\r\n languages: false,\r\n menu: true,\r\n breadcrumb: true,\r\n org: true,\r\n timeline: true,\r\n\r\n // features that is mapped from OrgConfig\r\n notifications: false,\r\n activityDiary: false,\r\n chat: false,\r\n heightWeight: false,\r\n genderAge: false,\r\n selfDelete: false,\r\n sleepDiary: false,\r\n videoChat: false,\r\n feedback: false,\r\n\r\n // Som features that are default off\r\n moduleProgress: false,\r\n sensors: false,\r\n videoPage: false,\r\n calendar: false,\r\n printsPage: false,\r\n autoplayVideos: false,\r\n\r\n // Special features in layout/design\r\n useFlatModuleBoxes: false,\r\n useSecondaryBackroundInSideMenu: false,\r\n },\r\n patient: {\r\n pollState: true,\r\n mailAndPhone: true,\r\n profilePicture: true,\r\n\r\n // Som features that are default off\r\n checkMissingData: false,\r\n useUserNameAndPw: false,\r\n },\r\n};\r\n\r\n// Starts with empty values to avoid flash of hidden content\r\nconst startupConfig = { appSetup: { header: [], dashboard: [] }, startupConfig: true };\r\n\r\nconst parseOrgConfigFeatures = (clientConfig) => {\r\n const values = [];\r\n if (clientConfig.features) {\r\n Object.entries(clientConfig.features).forEach(([key, value]) => {\r\n values.push({ key: `features.${key}`, value });\r\n });\r\n }\r\n if (clientConfig.appSetup) {\r\n Object.entries(clientConfig.appSetup).forEach(([key, value]) => {\r\n values.push({ key, value });\r\n });\r\n }\r\n\r\n return values;\r\n};\r\n\r\nconst appSetup = (clientConfig = startupConfig) => {\r\n const overrideKeys = parseOrgConfigFeatures(clientConfig);\r\n\r\n const pagesFromFeatures = {\r\n sleepDiary: clientConfig.features?.sleepDiary,\r\n activityDiary: clientConfig.features?.activityDiary,\r\n health: clientConfig.features?.health,\r\n };\r\n\r\n const pagesToShow = clientConfig.customs?.appSetupPages?.split(',').reduce((prev, curr) => ({ ...prev, [curr.trim()]: true }), pagesFromFeatures) || pagesFromFeatures;\r\n\r\n const appSetupCustoms = {\r\n header: clientConfig.customs?.appSetupHeader?.split(',').map(d => d.trim()) || defaultSetup.header,\r\n dashboard: clientConfig.customs?.appSetupDashboard?.split(',').map(d => d.trim()) || defaultSetup.dashboard,\r\n pages: appPages.filter(d => pagesToShow[d.key]),\r\n };\r\n\r\n const appSetupWithOverrides = overrideKeys.reduce((m, o) => {\r\n const keys = o.key.split('.');\r\n let cur = m;\r\n keys.forEach((key, i) => {\r\n if (i < keys.length - 1) {\r\n cur[key] = cur[key] || {};\r\n cur = cur[key];\r\n } else {\r\n cur[key] = o.value;\r\n }\r\n });\r\n return m;\r\n }, { ...defaultSetup, ...appSetupCustoms });\r\n\r\n // Set patient.pollState either by direct override or if chat is enabled\r\n appSetupWithOverrides.patient.pollState = appSetupWithOverrides.patient.pollState || appSetupWithOverrides.features.chat;\r\n\r\n return {\r\n ...clientConfig,\r\n initializedFromOrgConfig: !clientConfig.startupConfig,\r\n features: undefined, // is moved into appSetup..\r\n appName: clientConfig.appName,\r\n appContentProgramId: clientConfig.appContentProgramId,\r\n customs: clientConfig.customs || {},\r\n appSetup: appSetupWithOverrides,\r\n };\r\n};\r\n\r\nexport default appSetup;\r\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.translateInitialization = exports.translations = void 0;\nvar server_1 = require(\"react-dom/server\");\nvar texts_json_1 = __importDefault(require(\"./texts.json\"));\nvar translations_json_1 = __importDefault(require(\"../../youwell-common/translations.json\"));\nexports.translations = __assign(__assign({}, texts_json_1.default), translations_json_1.default);\nvar detectLanguage = function (language, defaultLanguage) {\n var _a;\n switch (language === null || language === void 0 ? void 0 : language.toLowerCase()) {\n case 'nb-no':\n case 'nn-no':\n case 'nb':\n case 'nn':\n case 'no':\n return 'no';\n case 'en':\n case 'en-us':\n case 'en-uk':\n return 'en';\n default:\n return defaultLanguage !== null && defaultLanguage !== void 0 ? defaultLanguage : detectLanguage((_a = window.navigator) === null || _a === void 0 ? void 0 : _a.language, 'en');\n }\n};\nvar translateInitialization = function (defaultLanguage) { return ({\n languages: [\n { name: 'Norsk', code: 'no' },\n { name: 'English', code: 'en' },\n ],\n translation: exports.translations,\n options: {\n renderToStaticMarkup: server_1.renderToStaticMarkup,\n defaultLanguage: detectLanguage(defaultLanguage),\n onMissingTranslation: function (obj) { return \"missing translation for \".concat(obj.translationId); },\n },\n}); };\nexports.translateInitialization = translateInitialization;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.translateWithDefault = void 0;\nvar react_localize_redux_1 = require(\"react-localize-redux\");\nvar react_redux_1 = require(\"react-redux\");\nvar getYouwellTranslate = function (store) { return function (translationKey, data, options) { return (0, react_localize_redux_1.getTranslate)(store.localize)(translationKey, data, options).toString(); }; };\nvar useYouwellTranslate = function () { return (0, react_redux_1.useSelector)(getYouwellTranslate); };\nvar translateWithDefault = function (translateFunction, translateKey, defaultValue) {\n if (defaultValue === void 0) { defaultValue = translateKey; }\n return (translateKey ? translateFunction(translateKey, undefined, { onMissingTranslation: function () { return defaultValue !== null && defaultValue !== void 0 ? defaultValue : ''; } }) : '');\n};\nexports.translateWithDefault = translateWithDefault;\nexports.default = useYouwellTranslate;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.deleteActivityData = exports.updateActivitiesData = exports.insertActivityData = exports.fetchActivitiesData = void 0;\nvar serviceUtils_1 = require(\"../../youwell-common/service/serviceUtils\");\nvar apiUrls_1 = __importDefault(require(\"../../youwell-common/apiUrls\"));\nvar ActivityDataStore_1 = require(\"../store/ActivityDataStore\");\nvar fetchActivitiesData = function (dispatch, queryParams, options) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: apiUrls_1.default.app.activity,\n dataAction: ActivityDataStore_1.getActivities,\n queryParams: queryParams,\n }, options);\n};\nexports.fetchActivitiesData = fetchActivitiesData;\nvar insertActivityData = function (dispatch, activityData, options) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: apiUrls_1.default.app.activity,\n dataAction: ActivityDataStore_1.insertActivity,\n method: 'POST',\n body: activityData,\n }, options);\n};\nexports.insertActivityData = insertActivityData;\nvar updateActivitiesData = function (dispatch, activityData, options) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: apiUrls_1.default.app.activity,\n dataAction: ActivityDataStore_1.updateActivities,\n method: 'PUT',\n body: activityData,\n }, options);\n};\nexports.updateActivitiesData = updateActivitiesData;\nvar deleteActivityData = function (dispatch, activityData, options) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: \"\".concat(apiUrls_1.default.app.activity, \"/\").concat(activityData.id),\n dataAction: ActivityDataStore_1.deleteActivity,\n method: 'DELETE',\n body: activityData,\n }, options);\n};\nexports.deleteActivityData = deleteActivityData;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.submitConsents = exports.fetchConsents = exports.loginExternalUser = void 0;\nvar ExternalUserStore_1 = require(\"../store/ExternalUserStore\");\nvar apiUrls_1 = __importDefault(require(\"../../youwell-common/apiUrls\"));\nvar serviceUtils_1 = require(\"../../youwell-common/service/serviceUtils\");\nvar loginExternalUser = function (dispatch, loginRequest, fetchOptions) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: \"\".concat(apiUrls_1.default.app.external, \"/login\"),\n dataAction: ExternalUserStore_1.setExternalUserLogin,\n method: 'POST',\n body: loginRequest,\n }, fetchOptions);\n};\nexports.loginExternalUser = loginExternalUser;\nvar fetchConsents = function (dispatch, fetchOptions) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: \"\".concat(apiUrls_1.default.app.external, \"/consent\"),\n dataAction: ExternalUserStore_1.setConsents,\n }, fetchOptions);\n};\nexports.fetchConsents = fetchConsents;\nvar submitConsents = function (dispatch, response, fetchOptions) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: \"\".concat(apiUrls_1.default.app.external, \"/consent\"),\n dataAction: ExternalUserStore_1.setConsentResponse,\n method: 'POST',\n body: response,\n }, fetchOptions);\n};\nexports.submitConsents = submitConsents;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.deleteHealthRegistrationLogsData = exports.updateHealthRegistrationLogsData = exports.insertHealthRegistrationLogsData = exports.updateHealthRegistrationsData = exports.insertHealthRegistrationsData = exports.fetchHealthRegistrationData = void 0;\nvar serviceUtils_1 = require(\"../../youwell-common/service/serviceUtils\");\nvar apiUrls_1 = __importDefault(require(\"../../youwell-common/apiUrls\"));\nvar HealthRegistrationStore_1 = require(\"../store/HealthRegistrationStore\");\nvar fetchHealthRegistrationData = function (dispatch, queryParams, options) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: apiUrls_1.default.app.healthRegistration,\n dataAction: HealthRegistrationStore_1.getHealthRegistrations,\n queryParams: queryParams,\n }, options);\n};\nexports.fetchHealthRegistrationData = fetchHealthRegistrationData;\nvar insertHealthRegistrationsData = function (dispatch, healthRegistrations, options) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: apiUrls_1.default.app.healthRegistration,\n dataAction: HealthRegistrationStore_1.insertHealthRegistrations,\n method: 'POST',\n body: healthRegistrations,\n }, options);\n};\nexports.insertHealthRegistrationsData = insertHealthRegistrationsData;\nvar updateHealthRegistrationsData = function (dispatch, healthRegistrations, options) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: apiUrls_1.default.app.healthRegistration,\n dataAction: HealthRegistrationStore_1.updateHealthRegistrations,\n method: 'PUT',\n body: healthRegistrations,\n }, options);\n};\nexports.updateHealthRegistrationsData = updateHealthRegistrationsData;\nvar insertHealthRegistrationLogsData = function (dispatch, healthRegistrationLogs, options) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: \"\".concat(apiUrls_1.default.app.healthRegistration, \"/log\"),\n dataAction: HealthRegistrationStore_1.insertHealthRegistrationLog,\n method: 'POST',\n body: healthRegistrationLogs,\n }, options);\n};\nexports.insertHealthRegistrationLogsData = insertHealthRegistrationLogsData;\nvar updateHealthRegistrationLogsData = function (dispatch, healthRegistrationLogs, options) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: \"\".concat(apiUrls_1.default.app.healthRegistration, \"/log\"),\n dataAction: HealthRegistrationStore_1.updateHealthRegistrationLog,\n method: 'PUT',\n body: healthRegistrationLogs,\n }, options);\n};\nexports.updateHealthRegistrationLogsData = updateHealthRegistrationLogsData;\nvar deleteHealthRegistrationLogsData = function (dispatch, healthRegistrationLogs, options) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: \"\".concat(apiUrls_1.default.app.healthRegistration, \"/log/\").concat(healthRegistrationLogs.id),\n dataAction: HealthRegistrationStore_1.deleteHealthRegistrationLog,\n method: 'DELETE',\n body: healthRegistrationLogs,\n }, options);\n};\nexports.deleteHealthRegistrationLogsData = deleteHealthRegistrationLogsData;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.updateMedicationLogData = exports.insertMedicationLogData = exports.fetchMedicationLogData = exports.deleteMedicationData = exports.updateMedicationData = exports.insertMedicationData = exports.fetchMedicationData = void 0;\nvar serviceUtils_1 = require(\"../../youwell-common/service/serviceUtils\");\nvar apiUrls_1 = __importDefault(require(\"../../youwell-common/apiUrls\"));\nvar MedicationStore_1 = require(\"../store/MedicationStore\");\nvar fetchMedicationData = function (dispatch, options) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: apiUrls_1.default.app.medication,\n dataAction: MedicationStore_1.getMedications,\n }, options);\n};\nexports.fetchMedicationData = fetchMedicationData;\nvar insertMedicationData = function (dispatch, medication, options) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: apiUrls_1.default.app.medication,\n dataAction: MedicationStore_1.insertMedication,\n method: 'POST',\n body: medication,\n }, options);\n};\nexports.insertMedicationData = insertMedicationData;\nvar updateMedicationData = function (dispatch, medication, options) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: apiUrls_1.default.app.medication,\n dataAction: MedicationStore_1.updateMedication,\n method: 'PUT',\n body: medication,\n }, options);\n};\nexports.updateMedicationData = updateMedicationData;\nvar deleteMedicationData = function (dispatch, medication, options) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: \"\".concat(apiUrls_1.default.app.medication, \"/\").concat(medication.id),\n dataAction: MedicationStore_1.deleteMedication,\n method: 'DELETE',\n body: medication,\n }, options);\n};\nexports.deleteMedicationData = deleteMedicationData;\nvar fetchMedicationLogData = function (dispatch, options) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: \"\".concat(apiUrls_1.default.app.medication, \"/log\"),\n dataAction: MedicationStore_1.getMedicationLogs,\n }, options);\n};\nexports.fetchMedicationLogData = fetchMedicationLogData;\nvar insertMedicationLogData = function (dispatch, medicationLog, options) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: \"\".concat(apiUrls_1.default.app.medication, \"/log\"),\n dataAction: MedicationStore_1.insertOrUpdateMedicationLog,\n method: 'POST',\n body: medicationLog,\n }, options);\n};\nexports.insertMedicationLogData = insertMedicationLogData;\nvar updateMedicationLogData = function (dispatch, medicationLog, options) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: \"\".concat(apiUrls_1.default.app.medication, \"/log\"),\n dataAction: MedicationStore_1.insertOrUpdateMedicationLog,\n method: 'PUT',\n body: medicationLog,\n }, options);\n};\nexports.updateMedicationLogData = updateMedicationLogData;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.fetchOutsideProgram = void 0;\nvar OutsideStore_1 = require(\"../store/OutsideStore\");\nvar serviceUtils_1 = require(\"../../youwell-common/service/serviceUtils\");\nvar apiUrls_1 = __importDefault(require(\"../../youwell-common/apiUrls\"));\n// eslint-disable-next-line import/prefer-default-export\nvar fetchOutsideProgram = function (dispatch, programId, options) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: \"\".concat(apiUrls_1.default.app.public, \"/\").concat(programId),\n dataAction: OutsideStore_1.setProgram,\n }, options);\n};\nexports.fetchOutsideProgram = fetchOutsideProgram;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.submitConsents = exports.fetchConsentTaskDetails = void 0;\nvar PatientConsentStore_1 = require(\"../store/PatientConsentStore\");\nvar apiUrls_1 = __importDefault(require(\"../../youwell-common/apiUrls\"));\nvar serviceUtils_1 = require(\"../../youwell-common/service/serviceUtils\");\nvar fetchConsentTaskDetails = function (dispatch, taskId, fetchOptions) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: \"\".concat(apiUrls_1.default.app.user, \"/consent-task/\").concat(taskId),\n dataAction: PatientConsentStore_1.setTaskDetails,\n }, fetchOptions);\n};\nexports.fetchConsentTaskDetails = fetchConsentTaskDetails;\nvar submitConsents = function (dispatch, response, fetchOptions) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: \"\".concat(apiUrls_1.default.app.user, \"/consent\"),\n dataAction: PatientConsentStore_1.setConsentResponse,\n method: 'POST',\n body: response,\n }, fetchOptions);\n};\nexports.submitConsents = submitConsents;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.updateSleepEntry = exports.fetchEntriesData = void 0;\nvar serviceUtils_1 = require(\"../../youwell-common/service/serviceUtils\");\nvar apiUrls_1 = __importDefault(require(\"../../youwell-common/apiUrls\"));\nvar SleepDataStore_1 = require(\"../store/SleepDataStore\");\nvar fetchEntriesData = function (dispatch, queryParams, options) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: apiUrls_1.default.app.sleep,\n dataAction: SleepDataStore_1.getSleepData,\n queryParams: queryParams,\n }, options);\n};\nexports.fetchEntriesData = fetchEntriesData;\nvar updateSleepEntry = function (dispatch, sleepData, options) {\n (0, serviceUtils_1.fetchFromYouwellApi)(dispatch, {\n apiPath: apiUrls_1.default.app.sleep,\n dataAction: SleepDataStore_1.updateEntries,\n method: 'PUT',\n body: sleepData,\n }, options);\n};\nexports.updateSleepEntry = updateSleepEntry;\n","\"use strict\";\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar _a, _b;\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.deleteActivity = exports.updateActivities = exports.insertActivity = exports.getActivities = exports.ActivitySlice = void 0;\nvar toolkit_1 = require(\"@reduxjs/toolkit\");\nvar ReduxStoreHelper_1 = require(\"../../youwell-common/ReduxStoreHelper\");\nvar arrayUtils_1 = require(\"../../youwell-common/arrayUtils\");\nvar initialState = {\n activities: null,\n activitiesLoadedFrom: null,\n};\nexports.ActivitySlice = (0, toolkit_1.createSlice)({\n name: 'ActivitySlice',\n initialState: initialState,\n reducers: {\n getActivities: function (state, action) {\n var _a, _b, _c;\n state.activities = (0, arrayUtils_1.distinct)(__spreadArray(__spreadArray([], state.activities || [], true), action.payload.response || [], true));\n state.activitiesLoadedFrom = ((_a = action.payload.requestQuery) === null || _a === void 0 ? void 0 : _a.start) || ((_c = (_b = action.payload.response) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.date) || null;\n },\n insertActivity: function (state, action) {\n if (action.payload.response) {\n state.activities = state.activities ? (0, arrayUtils_1.sortByDateAscending)(__spreadArray(__spreadArray([], state.activities, true), [action.payload.response], false), 'date') : null;\n }\n },\n updateActivities: function (state, action) {\n state.activities = state.activities ? state.activities.map(function (a) { return (action.payload.response && a.id === action.payload.response.id ? action.payload.response : a); }) : null;\n },\n deleteActivity: function (state, action) {\n state.activities = state.activities ? state.activities.filter(function (a) { var _a; return a.id !== ((_a = action.payload.requestBody) === null || _a === void 0 ? void 0 : _a.id); }) : null;\n },\n },\n extraReducers: (_a = {},\n _a[ReduxStoreHelper_1.LOGOUT] = function () { return initialState; },\n _a),\n});\nexports.getActivities = (_b = exports.ActivitySlice.actions, _b.getActivities), exports.insertActivity = _b.insertActivity, exports.updateActivities = _b.updateActivities, exports.deleteActivity = _b.deleteActivity;\nexports.default = exports.ActivitySlice.reducer;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.reducer = exports.actionCreators = void 0;\nvar connected_react_router_1 = require(\"connected-react-router\");\nvar urls_1 = __importDefault(require(\"../urls\"));\nvar apiUrls_1 = __importDefault(require(\"../../youwell-common/apiUrls\"));\nvar Auth_1 = __importStar(require(\"../../youwell-common/Auth\"));\nvar ReduxStoreHelper_1 = __importStar(require(\"../../youwell-common/ReduxStoreHelper\"));\nvar constants_1 = require(\"../../youwell-common/constants\");\nvar actions_1 = require(\"./actions\");\nvar appSetup_1 = __importDefault(require(\"../appSetup\"));\nvar reduxUtils_1 = require(\"../../youwell-common/reduxUtils\");\nvar RequestStatusStore_1 = require(\"../../youwell-common/service/RequestStatusStore\");\nvar PatientConsentStore_1 = require(\"./PatientConsentStore\");\nvar storeHelper = new ReduxStoreHelper_1.default(actions_1.AUTH_ACTION_PREFIX);\nvar TOKEN_EXPIRED = 'TOKEN_EXPIRED';\nvar SUCCESS_GETPROFILE = 'SUCCESS_GETPROFILE';\nvar SUCCESS_SAVEPROFILE = 'SUCCESS_SAVEPROFILE';\nvar START_SESSION = 'START_SESSION';\nvar RESET_PASSWORD = 'RESET_PASSWORD';\nvar FORGOT_PASSWORD = 'FORGOT_PASSWORD';\nvar LOGOUT_ORG = 'LOGOUT_ORG';\nexports.actionCreators = {\n clearError: function () { return function (dispatch) {\n dispatch((0, RequestStatusStore_1.clearErrors)());\n dispatch({\n type: ReduxStoreHelper_1.CLEAR_ERROR,\n });\n }; },\n loginWithCode: function (loginBody, options) { return function (dispatch) {\n storeHelper.fetch(dispatch, {\n url: \"\".concat(apiUrls_1.default.app.auth, \"/codelogin\"),\n method: 'POST',\n body: loginBody,\n completeAction: actions_1.AUTH_SUCCESS_LOGIN,\n onData: function (data) {\n Auth_1.default.setLoginInfo(data.loginLevel, data.sessionLifetime, Auth_1.authTypes.user);\n },\n options: options,\n });\n }; },\n loginWithAccessKey: function (loginBody, options) { return function (dispatch) {\n storeHelper.fetch(dispatch, {\n url: \"\".concat(apiUrls_1.default.app.auth, \"/keylogin\"),\n method: 'POST',\n body: loginBody,\n completeAction: actions_1.AUTH_SUCCESS_LOGIN,\n onData: function (data) {\n Auth_1.default.setLoginInfo(data.loginLevel, data.sessionLifetime, Auth_1.authTypes.user);\n },\n options: options,\n });\n }; },\n login: function (loginBody, options) { return function (dispatch) {\n storeHelper.fetch(dispatch, {\n url: \"\".concat(apiUrls_1.default.app.auth, \"/login\"),\n method: 'POST',\n body: loginBody,\n completeAction: actions_1.AUTH_SUCCESS_LOGIN,\n onData: function (data) {\n Auth_1.default.setLoginInfo(data.loginLevel, data.sessionLifetime, Auth_1.authTypes.user);\n },\n options: options,\n });\n }; },\n startNewSession: function (loginBody, options) { return function (dispatch) {\n storeHelper.fetch(dispatch, {\n url: \"\".concat(apiUrls_1.default.app.auth, \"/start\"),\n method: 'POST',\n body: loginBody,\n completeAction: actions_1.AUTH_SUCCESS_LOGIN,\n onData: function (data) {\n Auth_1.default.setLoginInfo(data.loginLevel, data.sessionLifetime, Auth_1.authTypes.user);\n },\n options: options,\n });\n }; },\n logoutOrg: function (newOrgId, options) { return function (dispatch) {\n var _a;\n storeHelper.fetch(dispatch, {\n url: \"\".concat(apiUrls_1.default.app.auth, \"/logoutorg\"),\n method: 'POST',\n requestId: LOGOUT_ORG,\n onData: function (data) {\n var authResponse = data;\n // cannot use YouwellFetchOptions because of this dispatch (with other parameters..)\n dispatch({ type: ReduxStoreHelper_1.LOGOUT, data: { authResponse: authResponse, logoutReason: constants_1.logoutReasons.changeOrg } }); // Send Logout to empty all other state\n if (authResponse && authResponse.loginLevel) {\n Auth_1.default.setLoginInfo(authResponse.loginLevel, authResponse.sessionLifetime, Auth_1.authTypes.orgSelect);\n }\n else {\n Auth_1.default.deauthenticateUser();\n }\n },\n options: __assign(__assign({}, options), { redirect: (_a = options === null || options === void 0 ? void 0 : options.redirect) !== null && _a !== void 0 ? _a : \"\".concat(urls_1.default.login, \"/\").concat(urls_1.default.loginParts.selectOrg) }),\n });\n }; },\n selectOrg: function (orgId, options) { return function (dispatch) {\n storeHelper.fetch(dispatch, {\n url: \"\".concat(apiUrls_1.default.app.auth, \"/selectorg/\").concat(orgId),\n method: 'POST',\n completeAction: actions_1.AUTH_SUCCESS_LOGIN,\n onData: function (data) {\n Auth_1.default.setLoginInfo(data.loginLevel, data.sessionLifetime, Auth_1.authTypes.user);\n },\n options: options,\n });\n }; },\n logout: function (logoutReason, redirectAfterLogout) { return function (dispatch) {\n var loginLevel = Auth_1.default.getLoginLevel();\n var redirect = loginLevel !== constants_1.loginLevels.level4 ? redirectAfterLogout || urls_1.default.home : undefined;\n var redirectExternal = loginLevel === constants_1.loginLevels.level4 ? \"\".concat(apiUrls_1.default.baseUrl, \"/\").concat(apiUrls_1.default.route.oauth, \"/logout/idporten\") : undefined;\n storeHelper.fetch(dispatch, {\n url: \"\".concat(apiUrls_1.default.app.auth, \"/logout\"),\n method: 'POST',\n body: {\n logoutReason: logoutReason,\n },\n requestId: ReduxStoreHelper_1.LOGOUT,\n onData: function () {\n Auth_1.default.deauthenticateUser();\n (0, reduxUtils_1.clearState)();\n dispatch({ type: ReduxStoreHelper_1.LOGOUT, data: { logoutReason: logoutReason } });\n },\n options: {\n redirect: redirect,\n redirectExternal: redirectExternal,\n },\n onError: function () {\n Auth_1.default.deauthenticateUser();\n (0, reduxUtils_1.clearState)();\n dispatch({ type: ReduxStoreHelper_1.LOGOUT, data: { logoutReason: logoutReason } });\n if (redirect) {\n dispatch((0, connected_react_router_1.push)(redirect));\n }\n else if (redirectExternal) {\n window.location.href = redirectExternal;\n }\n },\n });\n }; },\n getUserProfile: function (options) { return function (dispatch) {\n storeHelper.fetch(dispatch, {\n url: \"\".concat(apiUrls_1.default.app.auth, \"/profile\"),\n completeAction: \"\".concat(actions_1.AUTH_ACTION_PREFIX, \"/\").concat(SUCCESS_GETPROFILE),\n onUnauthorized: function () {\n Auth_1.default.deauthenticateUser();\n dispatch({ type: \"\".concat(actions_1.AUTH_ACTION_PREFIX, \"/\").concat(TOKEN_EXPIRED) });\n dispatch((0, connected_react_router_1.push)(urls_1.default.login));\n },\n options: options,\n });\n }; },\n saveUserProfile: function (elementToSave, options) { return function (dispatch) {\n storeHelper.fetch(dispatch, {\n url: \"\".concat(apiUrls_1.default.app.auth, \"/profile\"),\n method: 'PUT',\n body: elementToSave,\n completeAction: \"\".concat(actions_1.AUTH_ACTION_PREFIX, \"/\").concat(SUCCESS_SAVEPROFILE),\n options: options,\n });\n }; },\n forgotPassword: function (email, options) { return function (dispatch) {\n storeHelper.fetch(dispatch, {\n url: \"\".concat(apiUrls_1.default.app.auth, \"/forgotPassword\"),\n method: 'POST',\n requestId: \"\".concat(actions_1.AUTH_ACTION_PREFIX, \"/\").concat(FORGOT_PASSWORD),\n body: {\n email: email,\n },\n options: options,\n });\n }; },\n resetPassword: function (body, options) { return function (dispatch) {\n storeHelper.fetch(dispatch, {\n url: \"\".concat(apiUrls_1.default.app.auth, \"/resetPassword\"),\n method: 'POST',\n requestId: \"\".concat(actions_1.AUTH_ACTION_PREFIX, \"/\").concat(RESET_PASSWORD),\n body: body,\n options: options,\n });\n }; },\n startSession: function (body, options) { return function (dispatch) {\n storeHelper.fetch(dispatch, {\n url: \"\".concat(apiUrls_1.default.app.auth, \"/ss\"),\n requestId: \"\".concat(actions_1.AUTH_ACTION_PREFIX, \"/\").concat(START_SESSION),\n method: 'POST',\n body: body,\n options: options,\n });\n }; },\n updateUserSettings: storeHelper.createUpdateActionCreator(\"\".concat(apiUrls_1.default.app.auth, \"/userSettings\"), SUCCESS_GETPROFILE),\n updateUserData: storeHelper.createUpdateActionCreator(\"\".concat(apiUrls_1.default.app.auth, \"/userData\"), SUCCESS_GETPROFILE),\n};\nvar initialState = __assign(__assign({}, storeHelper.defaultInitialState), { profileData: null, clientConfig: (0, appSetup_1.default)(), logoutReason: null, hasUnansweredConsents: false, hasMissingGuardianConsents: false });\nvar reducer = function (state, action) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;\n // Base reducer overloads\n switch (action.type) {\n case ReduxStoreHelper_1.LOGOUT: {\n var data = action.data;\n return __assign(__assign({}, initialState), { profileData: data.logoutReason === constants_1.logoutReasons.changeOrg ? (_b = (_a = data.authResponse) === null || _a === void 0 ? void 0 : _a.profile) !== null && _b !== void 0 ? _b : null : null, logoutReason: data.logoutReason });\n }\n default: {\n var stateFromDefaultActions = storeHelper.defaultReducer(state, action, initialState);\n if (stateFromDefaultActions !== null) {\n return stateFromDefaultActions;\n }\n }\n }\n switch (action.type) {\n case \"\".concat(actions_1.AUTH_ACTION_PREFIX, \"/\").concat(TOKEN_EXPIRED): {\n return __assign(__assign({}, initialState), { logoutReason: constants_1.logoutReasons.tokenExpired });\n }\n case actions_1.AUTH_SUCCESS_LOGIN: {\n var data = action.data;\n return __assign(__assign({}, state), { profileData: __assign(__assign({}, data.profile), { clientConfig: undefined }), \n // @ts-ignore must fix types in appSetup()\n clientConfig: (0, appSetup_1.default)((_c = data.profile) === null || _c === void 0 ? void 0 : _c.clientConfig), logoutReason: null, hasUnansweredConsents: ((_e = (_d = data.profile) === null || _d === void 0 ? void 0 : _d.patientConsents) === null || _e === void 0 ? void 0 : _e.findIndex(function (c) { return !c.consentDate || (c.isRequired && !c.consent); })) > -1, hasMissingGuardianConsents: ((_g = (_f = data.profile) === null || _f === void 0 ? void 0 : _f.patientGuardianConsents) === null || _g === void 0 ? void 0 : _g.findIndex(function (c) { return !c.consentDate; })) > -1 });\n }\n case \"\".concat(actions_1.AUTH_ACTION_PREFIX, \"/\").concat(SUCCESS_GETPROFILE): {\n var data = action.data;\n return __assign(__assign({}, state), { profileData: __assign(__assign({}, data), { clientConfig: undefined }), \n // @ts-ignore must fix types in appSetup()\n clientConfig: (0, appSetup_1.default)(data === null || data === void 0 ? void 0 : data.clientConfig), hasUnansweredConsents: ((_h = data === null || data === void 0 ? void 0 : data.patientConsents) === null || _h === void 0 ? void 0 : _h.findIndex(function (c) { return !c.consentDate || (c.isRequired && !c.consent); })) > -1, hasMissingGuardianConsents: ((_j = data === null || data === void 0 ? void 0 : data.patientGuardianConsents) === null || _j === void 0 ? void 0 : _j.findIndex(function (c) { return !c.consentDate; })) > -1 });\n }\n case \"\".concat(actions_1.AUTH_ACTION_PREFIX, \"/\").concat(SUCCESS_SAVEPROFILE): {\n var data = action.data;\n return __assign(__assign({}, state), { profileData: data });\n }\n case actions_1.USER_SENSOR_DELETED: {\n var data_1 = action.data;\n if (!state.profileData) {\n return state;\n }\n return __assign(__assign({}, state), { profileData: __assign(__assign({}, state.profileData), { sensors: (_l = (_k = state.profileData) === null || _k === void 0 ? void 0 : _k.sensors) === null || _l === void 0 ? void 0 : _l.filter(function (d) { return d.id !== data_1.id; }) }) });\n }\n case actions_1.USER_UPLOAD_PROFILEIMAGE: {\n var data = action.data;\n if (!state.profileData) {\n return state;\n }\n return __assign(__assign({}, state), { profileData: __assign(__assign({}, state.profileData), { profileImageId: data }) });\n }\n case actions_1.USER_DELETE_PROFILEIMAGE: {\n if (!state.profileData) {\n return state;\n }\n return __assign(__assign({}, state), { profileData: __assign(__assign({}, state.profileData), { profileImageId: undefined }) });\n }\n case \"\".concat(PatientConsentStore_1.PatientConsentSlice.name, \"/setConsentResponse\"): {\n var payload_1 = action.payload;\n if (!((_m = state.profileData) === null || _m === void 0 ? void 0 : _m.patientConsents) || !(payload_1 === null || payload_1 === void 0 ? void 0 : payload_1.response)) {\n return state;\n }\n var patientConsents = state.profileData.patientConsents.map(function (c) { var _a; return (c.id === ((_a = payload_1.response) === null || _a === void 0 ? void 0 : _a.id) ? payload_1.response : c); });\n return __assign(__assign({}, state), { profileData: __assign(__assign({}, state.profileData), { patientConsents: patientConsents }), hasUnansweredConsents: patientConsents.findIndex(function (c) { return !c.consentDate || (c.isRequired && !c.consent); }) > -1 });\n }\n default: {\n return state || initialState;\n }\n }\n};\nexports.reducer = reducer;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar _a, _b;\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.setConsentResponse = exports.setExternalUserLogin = exports.setConsents = exports.ExternalUserSlice = void 0;\nvar toolkit_1 = require(\"@reduxjs/toolkit\");\nvar ReduxStoreHelper_1 = require(\"../../youwell-common/ReduxStoreHelper\");\nvar Auth_1 = __importStar(require(\"../../youwell-common/Auth\"));\nvar initialState = {\n consents: null,\n userProfile: null,\n};\nexports.ExternalUserSlice = (0, toolkit_1.createSlice)({\n name: 'ExternalUserSlice',\n initialState: initialState,\n reducers: {\n setConsents: function (state, action) {\n if (action.payload.response) {\n state.consents = action.payload.response;\n }\n },\n setExternalUserLogin: function (state, action) {\n var _a;\n if (action.payload.response) {\n Auth_1.default.setLoginInfo(action.payload.response.loginLevel, action.payload.response.sessionLifetime, Auth_1.authTypes.external);\n }\n state.userProfile = ((_a = action.payload.response) === null || _a === void 0 ? void 0 : _a.profile) || null;\n },\n setConsentResponse: function (state, action) {\n if (state.consents) {\n state.consents = state.consents.map(function (c) {\n var _a;\n return (c.id === ((_a = action.payload.requestBody) === null || _a === void 0 ? void 0 : _a.consentId) ? __assign(__assign({}, c), { consent: action.payload.requestBody.accept, consentDate: new Date(), responses: action.payload.requestBody.responses }) : c);\n });\n }\n },\n },\n extraReducers: (_a = {},\n _a[ReduxStoreHelper_1.LOGOUT] = function () { return initialState; },\n _a),\n});\nexports.setConsents = (_b = exports.ExternalUserSlice.actions, _b.setConsents), exports.setExternalUserLogin = _b.setExternalUserLogin, exports.setConsentResponse = _b.setConsentResponse;\nexports.default = exports.ExternalUserSlice.reducer;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar _a, _b;\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.deleteHealthRegistrationLog = exports.updateHealthRegistrationLog = exports.insertHealthRegistrationLog = exports.updateHealthRegistrations = exports.insertHealthRegistrations = exports.getHealthRegistrations = exports.HealthRegistrationSlice = void 0;\nvar toolkit_1 = require(\"@reduxjs/toolkit\");\nvar ReduxStoreHelper_1 = require(\"../../youwell-common/ReduxStoreHelper\");\nvar arrayUtils_1 = require(\"../../youwell-common/arrayUtils\");\nvar initialState = {\n healthRegistrations: null,\n healthRegistrationsLoadedFrom: null,\n};\nexports.HealthRegistrationSlice = (0, toolkit_1.createSlice)({\n name: 'HealthRegistrationSlice',\n initialState: initialState,\n reducers: {\n getHealthRegistrations: function (state, action) {\n var _a;\n if (action.payload.response) {\n state.healthRegistrations = (0, arrayUtils_1.distinct)(__spreadArray(__spreadArray([], state.healthRegistrations || [], true), action.payload.response || [], true));\n state.healthRegistrationsLoadedFrom = ((_a = action.payload.requestQuery) === null || _a === void 0 ? void 0 : _a.start) || null;\n }\n },\n insertHealthRegistrations: function (state, action) {\n if (action.payload.response) {\n state.healthRegistrations = __spreadArray(__spreadArray([], state.healthRegistrations || [], true), [action.payload.response], false);\n }\n },\n updateHealthRegistrations: function (state, action) {\n var _a;\n if (action.payload.response) {\n state.healthRegistrations = __spreadArray(__spreadArray([], ((_a = state.healthRegistrations) === null || _a === void 0 ? void 0 : _a.filter(function (h) { var _a; return h.id !== ((_a = action.payload.response) === null || _a === void 0 ? void 0 : _a.id); })) || [], true), [action.payload.response], false);\n }\n },\n insertHealthRegistrationLog: function (state, action) {\n var _a, _b, _c;\n if (state.healthRegistrations && action.payload.response) {\n var healthRegistrationId_1 = (_a = action.payload.response) === null || _a === void 0 ? void 0 : _a.healthRegistrationId;\n var healthRegistrationToUpdate = (_b = state.healthRegistrations.filter(function (h) { return h.id === healthRegistrationId_1; })) === null || _b === void 0 ? void 0 : _b[0];\n if (healthRegistrationToUpdate === null || healthRegistrationToUpdate === void 0 ? void 0 : healthRegistrationToUpdate.healthRegistrationLogs) {\n state.healthRegistrations = __spreadArray(__spreadArray([], (_c = state.healthRegistrations) === null || _c === void 0 ? void 0 : _c.filter(function (d) { return (d.id !== healthRegistrationId_1); }), true), [\n __assign(__assign({}, healthRegistrationToUpdate), { healthRegistrationLogs: __spreadArray(__spreadArray([], healthRegistrationToUpdate.healthRegistrationLogs, true), [\n action.payload.response,\n ], false) }),\n ], false);\n }\n }\n },\n updateHealthRegistrationLog: function (state, action) {\n var _a, _b, _c;\n if (state.healthRegistrations && action.payload.response) {\n var healthRegistrationId_2 = (_a = action.payload.response) === null || _a === void 0 ? void 0 : _a.healthRegistrationId;\n var healthRegistrationToUpdate = (_b = state.healthRegistrations.filter(function (h) { return h.id === healthRegistrationId_2; })) === null || _b === void 0 ? void 0 : _b[0];\n if (healthRegistrationToUpdate === null || healthRegistrationToUpdate === void 0 ? void 0 : healthRegistrationToUpdate.healthRegistrationLogs) {\n state.healthRegistrations = __spreadArray(__spreadArray([], (_c = state.healthRegistrations) === null || _c === void 0 ? void 0 : _c.filter(function (d) { return (d.id !== healthRegistrationId_2); }), true), [\n __assign(__assign({}, healthRegistrationToUpdate), { healthRegistrationLogs: healthRegistrationToUpdate.healthRegistrationLogs.map(function (d) { var _a; return (d.id === ((_a = action.payload.response) === null || _a === void 0 ? void 0 : _a.id) ? action.payload.response : d); }) }),\n ], false);\n }\n }\n },\n deleteHealthRegistrationLog: function (state, action) {\n var _a, _b, _c;\n if (state.healthRegistrations && action.payload.requestBody) {\n var healthRegistrationId_3 = (_a = action.payload.requestBody) === null || _a === void 0 ? void 0 : _a.healthRegistrationId;\n var healthRegistrationToUpdate = (_b = state.healthRegistrations.filter(function (h) { return h.id === healthRegistrationId_3; })) === null || _b === void 0 ? void 0 : _b[0];\n if (healthRegistrationToUpdate === null || healthRegistrationToUpdate === void 0 ? void 0 : healthRegistrationToUpdate.healthRegistrationLogs) {\n state.healthRegistrations = __spreadArray(__spreadArray([], (_c = state.healthRegistrations) === null || _c === void 0 ? void 0 : _c.filter(function (d) { return (d.id !== healthRegistrationId_3); }), true), [\n __assign(__assign({}, healthRegistrationToUpdate), { healthRegistrationLogs: healthRegistrationToUpdate.healthRegistrationLogs.filter(function (d) { var _a; return (d.id !== ((_a = action.payload.requestBody) === null || _a === void 0 ? void 0 : _a.id)); }) }),\n ], false);\n }\n }\n },\n },\n extraReducers: (_a = {},\n _a[ReduxStoreHelper_1.LOGOUT] = function () { return initialState; },\n _a),\n});\nexports.getHealthRegistrations = (_b = exports.HealthRegistrationSlice.actions, _b.getHealthRegistrations), exports.insertHealthRegistrations = _b.insertHealthRegistrations, exports.updateHealthRegistrations = _b.updateHealthRegistrations, exports.insertHealthRegistrationLog = _b.insertHealthRegistrationLog, exports.updateHealthRegistrationLog = _b.updateHealthRegistrationLog, exports.deleteHealthRegistrationLog = _b.deleteHealthRegistrationLog;\nexports.default = exports.HealthRegistrationSlice.reducer;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar _a, _b;\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.insertOrUpdateMedicationLog = exports.getMedicationLogs = exports.deleteMedication = exports.updateMedication = exports.insertMedication = exports.getMedications = exports.MedicationSlice = void 0;\nvar toolkit_1 = require(\"@reduxjs/toolkit\");\nvar ReduxStoreHelper_1 = require(\"../../youwell-common/ReduxStoreHelper\");\nvar dateUtils_1 = require(\"../../youwell-common/dateUtils\");\nvar initialState = {\n medications: null,\n medicationLogs: null,\n};\nexports.MedicationSlice = (0, toolkit_1.createSlice)({\n name: 'MedicationSlice',\n initialState: initialState,\n reducers: {\n getMedications: function (state, action) {\n if (action.payload.response) {\n state.medications = action.payload.response;\n }\n },\n insertMedication: function (state, action) {\n if (action.payload.response) {\n if (!state.medications)\n state.medications = [];\n state.medications.push(action.payload.response);\n }\n },\n updateMedication: function (state, action) {\n if (action.payload.response) {\n if (!state.medications)\n state.medications = [];\n state.medications = state.medications.map(function (h) { var _a; return (h.id === ((_a = action.payload.response) === null || _a === void 0 ? void 0 : _a.id) ? action.payload.response : h); });\n }\n },\n deleteMedication: function (state, action) {\n if (action.payload.requestBody) {\n if (!state.medications)\n state.medications = [];\n state.medications = state.medications.filter(function (h) { var _a; return (h.id !== ((_a = action.payload.requestBody) === null || _a === void 0 ? void 0 : _a.id)); });\n }\n },\n insertOrUpdateMedicationLog: function (state, action) {\n var newItem = action.payload.response;\n if (newItem && state.medicationLogs) {\n if (!state.medicationLogs[newItem.medicationId])\n state.medicationLogs[newItem.medicationId] = {};\n state.medicationLogs[newItem.medicationId][(0, dateUtils_1.getTextfieldDateString)(newItem.date)] = newItem;\n }\n },\n getMedicationLogs: function (state, action) {\n var _a, _b;\n state.medicationLogs = (_b = (_a = action.payload.response) === null || _a === void 0 ? void 0 : _a.reduce(function (prev, curr) {\n var _a, _b;\n return (__assign(__assign({}, prev), (_a = {}, _a[curr.medicationId] = __assign(__assign({}, prev[curr.medicationId]), (_b = {}, _b[(0, dateUtils_1.getTextfieldDateString)(curr.date)] = curr, _b)), _a)));\n }, {})) !== null && _b !== void 0 ? _b : {};\n },\n },\n extraReducers: (_a = {},\n _a[ReduxStoreHelper_1.LOGOUT] = function () { return initialState; },\n _a),\n});\nexports.getMedications = (_b = exports.MedicationSlice.actions, _b.getMedications), exports.insertMedication = _b.insertMedication, exports.updateMedication = _b.updateMedication, exports.deleteMedication = _b.deleteMedication, exports.getMedicationLogs = _b.getMedicationLogs, exports.insertOrUpdateMedicationLog = _b.insertOrUpdateMedicationLog;\nexports.default = exports.MedicationSlice.reducer;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.setProgram = exports.OutsideSlice = void 0;\nvar toolkit_1 = require(\"@reduxjs/toolkit\");\nvar initialState = {\n programDetails: {},\n currentOrgId: null,\n};\nexports.OutsideSlice = (0, toolkit_1.createSlice)({\n name: 'OutsideStore',\n initialState: initialState,\n reducers: {\n setProgram: function (state, action) {\n if (action.payload.response) {\n state.programDetails[action.payload.response.id] = action.payload.response;\n state.currentOrgId = action.payload.response.organizationId;\n }\n },\n },\n});\nexports.setProgram = exports.OutsideSlice.actions.setProgram;\nexports.default = exports.OutsideSlice.reducer;\n","import { push, LOCATION_CHANGE } from 'connected-react-router';\nimport { PAGE_NOTFOUND, setAppId, setAppVersion } from '../../youwell-common/fetchUtils';\nimport apiUrls from '../../youwell-common/apiUrls';\nimport ReduxStoreHelper from '../../youwell-common/ReduxStoreHelper';\nimport appSetup from '../appSetup';\n\nconst ACTION_PREFIX = 'PAGESETTINGS';\nconst SET_PATH = 'PAGESETTINGS/SET_PATH';\nconst SET_VERSION = 'PAGESETTINGS/SET_VERSION';\nconst SET_CONFIG = 'PAGESETTINGS/SET_CONFIG';\nconst ADD_ORG_CONFIG = 'ADD_ORG_CONFIG';\nconst SET_CAL_DATE = 'SET_CAL_DATE';\nconst APPCONTENT_RECEIVED = 'APPCONTENT_RECEIVED';\nconst SET_PWA_STATUS = 'SET_PWA_STATUS';\n\nconst storeHelper = new ReduxStoreHelper(ACTION_PREFIX);\n\nexport const actionCreators = {\n setAppConfig: appConfig => (dispatch) => {\n setAppId(appConfig.appId);\n dispatch({ type: SET_CONFIG, appConfig });\n },\n\n setPath: path => (dispatch) => {\n const pathWithSlash = path && path[0] === '/' ? path : `/${path}`;\n dispatch({ type: SET_PATH, path: pathWithSlash });\n },\n\n setVersion: version => (dispatch) => {\n setAppVersion(version);\n dispatch({ type: SET_VERSION, version });\n },\n\n navigateTo: path => (dispatch) => {\n dispatch(push(path));\n },\n getOrgConfig: storeHelper.createGetElementActionCreator(`${apiUrls.app.public}/orgconfig`, ADD_ORG_CONFIG),\n setCalendarDate: date => (dispatch) => {\n dispatch({ type: SET_CAL_DATE, date });\n },\n getAppContent: storeHelper.createGetElementActionCreator(apiUrls.app.public, APPCONTENT_RECEIVED),\n setPwaStatus: pwaStatus => (dispatch) => {\n dispatch({ type: SET_PWA_STATUS, pwaStatus });\n },\n};\n\n\nconst initialState = {\n pathname: '',\n version: '',\n newAvailableVersion: '',\n appConfig: {},\n orgConfig: {}, // This is duplicated in AuthStore (included in ProfileData). Should be merged..\n pageNotFound: false,\n calendarDate: new Date(),\n appContent: null,\n pwaStatus: null,\n};\n\nlet prevPathname = '';\n\nexport const reducer = (state, action) => {\n switch (action.type) {\n case SET_CONFIG: {\n return {\n ...state,\n appConfig: action.appConfig || {},\n };\n }\n case SET_PATH: {\n return {\n ...state,\n pathname: action.path,\n };\n }\n case SET_VERSION: {\n return {\n ...state,\n version: action.version,\n };\n }\n case LOCATION_CHANGE: {\n const newState = {\n ...state,\n pageNotFound: false,\n prevPathname,\n pathname: action.payload.location.pathname,\n };\n prevPathname = newState.pathname;\n return newState;\n }\n case `${ACTION_PREFIX}/${ADD_ORG_CONFIG}`: {\n return {\n ...state,\n orgConfig: appSetup(action.data),\n };\n }\n case PAGE_NOTFOUND: {\n return {\n ...initialState,\n pageNotFound: true,\n };\n }\n case SET_CAL_DATE: {\n return {\n ...state,\n calendarDate: action.date,\n };\n }\n case `${ACTION_PREFIX}/${APPCONTENT_RECEIVED}`: {\n return {\n ...state,\n appContent: action.data,\n };\n }\n case SET_PWA_STATUS: {\n return {\n ...state,\n pwaStatus: {\n ...state.pwaStatus,\n ...action.pwaStatus,\n },\n };\n }\n default: {\n return state || initialState;\n }\n }\n};\n","\"use strict\";\nvar _a, _b;\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.setConsentResponse = exports.setTaskDetails = exports.PatientConsentSlice = void 0;\nvar toolkit_1 = require(\"@reduxjs/toolkit\");\nvar ReduxStoreHelper_1 = require(\"../../youwell-common/ReduxStoreHelper\");\nvar initialState = {\n taskDetails: {},\n};\nexports.PatientConsentSlice = (0, toolkit_1.createSlice)({\n name: 'PatientConsentSlice',\n initialState: initialState,\n reducers: {\n setTaskDetails: function (state, action) {\n if (action.payload.response) {\n state.taskDetails[action.payload.response.id] = action.payload.response;\n }\n },\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n setConsentResponse: function (state, action) {\n // void -> Action is handeled in AuthStore\n },\n },\n extraReducers: (_a = {},\n _a[ReduxStoreHelper_1.LOGOUT] = function () { return initialState; },\n _a),\n});\nexports.setTaskDetails = (_b = exports.PatientConsentSlice.actions, _b.setTaskDetails), exports.setConsentResponse = _b.setConsentResponse;\nexports.default = exports.PatientConsentSlice.reducer;\n","import apiUrls from '../../youwell-common/apiUrls';\nimport ReduxStoreHelper from '../../youwell-common/ReduxStoreHelper';\n\nimport { PREVIEW_ACTION_PREFIX as ACTION_PREFIX } from './actions';\nimport { parseInsertedResponse } from '../../youwell-common/responseUtils';\n\nconst PREVIEW_RESPONSE_INSERTED = 'PREVIEW_RESPONSE_INSERTED';\nconst PREVIEW_START_COMMENT = 'PREVIEW_START_COMMENT';\nconst PREVIEW_TOGGLE_COMMENTS = 'PREVIEW_TOGGLE_COMMENTS';\nconst SAVE_COMMENT = 'PREVIEW_SAVE_COMMENT';\nconst PREVIEW_CLEAR_COMMENT_ELEMENT = 'PREVIEW_CLEAR_COMMENT_ELEMENT';\nconst GET_COMMENTS = 'PREVIEW_GET_COMMENTS';\n\nconst storeHelper = new ReduxStoreHelper(ACTION_PREFIX);\n\nexport const actionCreators = {\n ...storeHelper.defaultActionCreators(apiUrls.app.preview),\n updateResponse: data => (dispatch) => {\n dispatch({ type: PREVIEW_RESPONSE_INSERTED, data });\n },\n toggleComments: () => (dispatch) => {\n dispatch({ type: PREVIEW_TOGGLE_COMMENTS });\n },\n startComment: data => (dispatch) => {\n dispatch({ type: PREVIEW_START_COMMENT, data });\n },\n getTaskComments: storeHelper.createGetElementActionCreator(`${apiUrls.app.preview}/comments`, GET_COMMENTS),\n saveTaskComment: storeHelper.createInsertActionCreator(`${apiUrls.app.preview}/comment`, SAVE_COMMENT),\n clearCommentElement: () => (dispatch) => {\n dispatch({ type: PREVIEW_CLEAR_COMMENT_ELEMENT });\n },\n};\n\nconst initialState = {\n ...storeHelper.defaultInitialState,\n commentElementId: null,\n showComments: false,\n responses: {},\n comments: {},\n};\n\nexport const reducer = (state, action) => {\n switch (action.type) {\n case PREVIEW_RESPONSE_INSERTED: {\n const { taskId } = action.data;\n\n const taskSubtotals = state.details?.[taskId]?.taskSubtotals || [];\n\n const responses = parseInsertedResponse(action.data, taskSubtotals, state.responses);\n\n return {\n ...state,\n responses,\n };\n }\n case PREVIEW_TOGGLE_COMMENTS: {\n return {\n ...state,\n showComments: !state.showComments,\n };\n }\n case `${ACTION_PREFIX}/${GET_COMMENTS}`: {\n return {\n ...state,\n comments: {\n ...state.comments,\n [action.reducerParams.taskId]: action.data,\n },\n };\n }\n case PREVIEW_START_COMMENT: {\n return {\n ...state,\n commentElementId: action.data.elementId,\n showComments: true,\n };\n }\n case PREVIEW_CLEAR_COMMENT_ELEMENT: {\n return {\n ...state,\n commentElementId: null,\n };\n }\n case `${ACTION_PREFIX}/${SAVE_COMMENT}`: {\n const currentComments = state.comments[action.inputData.taskId] || [];\n\n return {\n ...state,\n comments: {\n ...state.comments,\n [action.inputData.taskId]: [...currentComments, {\n id: action.data.id, created: action.data.created, ...action.inputData,\n }],\n },\n commentElementId: null,\n showComments: true,\n };\n }\n default: {\n const stateFromDefaultActions = storeHelper.defaultReducer(state, action, initialState);\n\n if (stateFromDefaultActions !== null) {\n return stateFromDefaultActions;\n }\n\n return state || initialState;\n }\n }\n};\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.reducer = exports.actionCreators = void 0;\nvar apiUrls_1 = __importDefault(require(\"../../youwell-common/apiUrls\"));\nvar ReduxStoreHelper_1 = __importDefault(require(\"../../youwell-common/ReduxStoreHelper\"));\nvar dateUtils_1 = require(\"../../youwell-common/dateUtils\");\nvar arrayUtils_1 = require(\"../../youwell-common/arrayUtils\");\nvar actions_1 = require(\"./actions\");\nvar constants_1 = require(\"../../common/constants\");\nvar responseUtils_1 = require(\"../../youwell-common/responseUtils\");\nvar constants_2 = require(\"../../youwell-common/constants\");\nvar TASKVISITED = 'TASKVISITED';\nvar FAVOURITE_INSERTED = 'FAVOURITE_INSERTED';\nvar PATIENTELEMENT_INSERTED = 'PATIENTELEMENT_INSERTED';\nvar PATIENTELEMENT_UPDATED = 'PATIENTELEMENT_UPDATED';\nvar PATIENTELEMENT_DELETED = 'PATIENTELEMENT_DELETED';\nvar RESPONSE_FORMS_RECEIVED = 'RESPONSE_FORMS_RECEIVED';\nvar RESET_RESPONSE_FORM = 'RESET_RESPONSE_FORM';\nvar UPDATE_SUBMITTED_FORMS = 'UPDATE_SUBMITTED_FORMS';\nvar storeHelper = new ReduxStoreHelper_1.default(actions_1.PROGRAM_ACTION_PREFIX);\nexports.actionCreators = __assign(__assign({}, storeHelper.defaultActionCreators(apiUrls_1.default.app.program)), { getCurrentProgram: storeHelper.createGetListActionCreator(\"\".concat(apiUrls_1.default.app.program, \"/current\"), actions_1.CURRENTPROGRAM_RECEIVED), updateResponse: function (patientProgramTaskResponse) { return function (dispatch) {\n dispatch({ type: \"\".concat(actions_1.PROGRAM_ACTION_PREFIX, \"/\").concat(actions_1.TASKRESPONSE_INSERTED), data: patientProgramTaskResponse });\n }; }, saveResponse: function (patientProgramTaskResponse, options) { return function (dispatch) {\n storeHelper.fetch(dispatch, {\n url: \"\".concat(apiUrls_1.default.app.program, \"/resp\"),\n method: 'POST',\n body: patientProgramTaskResponse,\n completeAction: \"\".concat(actions_1.PROGRAM_ACTION_PREFIX, \"/\").concat(TASKVISITED),\n options: options,\n });\n }; }, visitTask: function (taskInfo, options) { return function (dispatch) {\n storeHelper.fetch(dispatch, {\n url: \"\".concat(apiUrls_1.default.app.program, \"/vt\"),\n method: 'POST',\n body: taskInfo,\n completeAction: \"\".concat(actions_1.PROGRAM_ACTION_PREFIX, \"/\").concat(TASKVISITED),\n options: __assign({ background: true }, options),\n });\n }; }, toggleFavourite: function (favTask, options) { return function (dispatch) {\n storeHelper.fetch(dispatch, {\n url: \"\".concat(apiUrls_1.default.app.program, \"/fav\"),\n method: 'POST',\n body: favTask,\n completeAction: \"\".concat(actions_1.PROGRAM_ACTION_PREFIX, \"/\").concat(FAVOURITE_INSERTED),\n options: options,\n });\n }; }, insertPatientElement: storeHelper.createInsertActionCreator(\"\".concat(apiUrls_1.default.app.program, \"/task\"), PATIENTELEMENT_INSERTED), updatePatientElement: storeHelper.createUpdateActionCreator(\"\".concat(apiUrls_1.default.app.program, \"/task\"), PATIENTELEMENT_UPDATED), deletePatientElement: storeHelper.createDeleteActionCreator(\"\".concat(apiUrls_1.default.app.program, \"/task\"), PATIENTELEMENT_DELETED), getProgramResponses: storeHelper.createGetElementActionCreator(\"\".concat(apiUrls_1.default.app.program, \"/resp\"), actions_1.RESPONSES_RECEIVED), getResponseForms: storeHelper.createGetListActionCreator(\"\".concat(apiUrls_1.default.app.program, \"/forms\"), RESPONSE_FORMS_RECEIVED), setCurrentForm: function (patientProgramElementId, taskId, form) { return function (dispatch) {\n dispatch({ type: \"\".concat(actions_1.PROGRAM_ACTION_PREFIX, \"/\").concat(RESET_RESPONSE_FORM), data: { patientProgramElementId: patientProgramElementId, taskId: taskId, form: form } });\n }; }, updateAllFormsList: function (patientProgramElementId, taskId, form) { return function (dispatch) {\n dispatch({ type: \"\".concat(actions_1.PROGRAM_ACTION_PREFIX, \"/\").concat(UPDATE_SUBMITTED_FORMS), data: { patientProgramElementId: patientProgramElementId, taskId: taskId, form: form } });\n }; } });\nvar initialState = __assign(__assign({}, storeHelper.defaultInitialState), { currentProgram: null, currentProgramTaskResponses: null, allForms: null });\nvar buildElementViewModel = function (element, allPrevElementsCompleted) {\n var _a, _b;\n var isEnded = Boolean(element.endTime && ((0, dateUtils_1.getLocalDate)(element.endTime) || 0) < (0, dateUtils_1.today)());\n var isNotStarted = Boolean(element.startTime && ((0, dateUtils_1.getLocalDate)(element.startTime) || 0) > new Date());\n var prereqNotCompleted = element.completeInOrder && !allPrevElementsCompleted;\n var progress = (element.totalTasks || 0) > 0 ? Math.min((element.totalTasksCompleted || 0) / (element.totalTasks || 1), 1) : 0;\n var name = element.displayName || ((_a = element.module) === null || _a === void 0 ? void 0 : _a.name) || ((_b = element.task) === null || _b === void 0 ? void 0 : _b.name) || '';\n return __assign(__assign({}, element), { progress: progress, name: name, isEnded: isEnded, isNotStarted: isNotStarted, prereqNotCompleted: prereqNotCompleted, disabled: isEnded || isNotStarted || prereqNotCompleted });\n};\nvar buildProgramViewModel = function (programData) {\n var _a, _b;\n if (!programData) {\n return null;\n }\n // finds first element of each type that is not completed. Used for disabling elements with \"CompleteInOrder\" set.\n var firstIncompleteIndex = (_a = programData.elements) === null || _a === void 0 ? void 0 : _a.reduce(function (prev, curr, i) {\n var _a;\n return (__assign(__assign({}, prev), (_a = {}, _a[curr.elementGroup] = prev[curr.elementGroup] !== undefined || curr.completed ? prev[curr.elementGroup] : i, _a)));\n }, {});\n var elementVms = (_b = programData.elements) === null || _b === void 0 ? void 0 : _b.map(function (d, i) { return buildElementViewModel(d, firstIncompleteIndex[d.elementGroup] >= i); });\n var groupedElements = elementVms === null || elementVms === void 0 ? void 0 : elementVms.reduce(function (prev, curr) {\n var _a;\n var _b;\n return (!curr ? prev : __assign(__assign({}, prev), (_a = {}, _a[curr.elementGroup] = __spreadArray(__spreadArray([], prev[curr.elementGroup] || [], true), [\n __assign(__assign({}, curr), { indexInGroup: ((_b = prev[curr.elementGroup]) === null || _b === void 0 ? void 0 : _b.length) || 0 }),\n ], false), _a)));\n }, Object.keys(constants_1.patientProgramElementGroups).reduce(function (prev, curr) {\n var _a;\n return (__assign(__assign({}, prev), (_a = {}, _a[constants_1.patientProgramElementGroups[curr]] = [], _a)));\n }, {}));\n return __assign(__assign({}, programData), { isActiveProgram: programData.status === constants_2.patientProgramStatus.active, elements: elementVms, favourites: (0, arrayUtils_1.toBoolLookup)(programData.favouriteTasks, 'taskId'), groupedElements: groupedElements, totalModules: groupedElements[constants_1.patientProgramElementGroups.main].length, completedModules: groupedElements[constants_1.patientProgramElementGroups.main].reduce(function (prev, curr) { return prev + (curr.completed ? 1 : 0); }, 0), scheduledElements: groupedElements[constants_1.patientProgramElementGroups.scheduled], appElements: groupedElements[constants_1.patientProgramElementGroups.app], unAnsweredConsentIndex: groupedElements[constants_1.patientProgramElementGroups.consent].reduce(function (prev, curr, i) { return (prev > -1 || curr.completed || curr.disabled ? prev : i); }, -1), unAnsweredPreContentIndex: groupedElements[constants_1.patientProgramElementGroups.preContent].reduce(function (prev, curr, i) { return (prev > -1 || curr.completed || curr.disabled ? prev : i); }, -1) });\n};\nvar currentProgramWithVisitResponse = function (currentProgram, visitTaskResponse) { return (__assign(__assign({}, currentProgram), { elements: currentProgram.elements.map(function (e) { return (e.id === visitTaskResponse.patientProgramElementId ? __assign(__assign({}, e), { task: e.task ? __assign(__assign({}, e.task), { visited: true }) : null, module: e.module ? __assign(__assign({}, e.module), { tasks: e.module.tasks.map(function (t) { return (t.id === visitTaskResponse.taskId ? __assign(__assign({}, t), { visited: true, completed: visitTaskResponse.taskCompleted }) : t); }) }) : null, completed: visitTaskResponse.elementCompleted, totalTasksCompleted: visitTaskResponse.completedTasks, totalTasksVisited: visitTaskResponse.visitedTasks }) : e); }) })); };\nvar reducer = function (state, action) {\n var _a, _b, _c, _d, _e, _f;\n var _g, _h, _j, _k, _l, _m, _o, _p, _q;\n switch (action.type) {\n case \"\".concat(actions_1.PROGRAM_ACTION_PREFIX, \"/\").concat(TASKVISITED): {\n var _r = action, inputData = _r.inputData, data = _r.data;\n if (!state.currentProgram || state.currentProgram.id !== (data === null || data === void 0 ? void 0 : data.patientProgramId)) {\n return state;\n }\n var vm = buildProgramViewModel(currentProgramWithVisitResponse(state.currentProgram, data));\n var currentProgramTaskResponses = (0, responseUtils_1.parseResponseSaveResult)(inputData, data, state.currentProgramTaskResponses);\n return __assign(__assign({}, state), { currentProgram: vm, currentProgramTaskResponses: currentProgramTaskResponses });\n }\n case \"\".concat(actions_1.PROGRAM_ACTION_PREFIX, \"/\").concat(actions_1.TASKRESPONSE_INSERTED): {\n if (!state.currentProgram) {\n return state;\n }\n var data_1 = action.data;\n var taskSubtotals = ((_k = (_j = (_h = (_g = state.currentProgram\n .elements.find(function (element) { return element.id === data_1.patientProgramElementId; })) === null || _g === void 0 ? void 0 : _g.module) === null || _h === void 0 ? void 0 : _h.tasks) === null || _j === void 0 ? void 0 : _j.find(function (task) { return task.id === data_1.taskId; })) === null || _k === void 0 ? void 0 : _k.taskSubtotals) || [];\n var currentProgramTaskResponses = (0, responseUtils_1.parseInsertedResponse)(data_1, taskSubtotals, state.currentProgramTaskResponses);\n return __assign(__assign({}, state), { currentProgramTaskResponses: currentProgramTaskResponses });\n }\n case \"\".concat(actions_1.PROGRAM_ACTION_PREFIX, \"/\").concat(actions_1.RESPONSES_RECEIVED): {\n var _s = action, data = _s.data, reducerParams = _s.reducerParams;\n if (!state.currentProgram || state.currentProgram.id !== reducerParams.patientProgramId) {\n return state;\n }\n return __assign(__assign({}, state), { currentProgramTaskResponses: (0, responseUtils_1.buildResponseLookup)(data, state.currentProgramTaskResponses) });\n }\n case \"\".concat(actions_1.PROGRAM_ACTION_PREFIX, \"/\").concat(actions_1.CURRENTPROGRAM_RECEIVED): {\n var data = action.data;\n var vm = buildProgramViewModel(data);\n // const tasksToDisplay = []; // getAllTasksToDisplay(vm); // not in use at the moment.. used in performance-overview and TaskSlider (old components)\n return __assign(__assign({}, state), { currentProgram: vm });\n }\n case actions_1.AUTH_SUCCESS_LOGIN: {\n var data = action.data;\n if (!data.currentProgram) {\n return state;\n }\n var vm = buildProgramViewModel(data.currentProgram);\n return __assign(__assign({}, state), { currentProgram: vm });\n }\n case \"\".concat(actions_1.PROGRAM_ACTION_PREFIX, \"/\").concat(FAVOURITE_INSERTED): {\n var _t = action, data = _t.data, reducerParams = _t.reducerParams;\n if (!state.currentProgram || state.currentProgram.id !== reducerParams.patientProgramId) {\n return state;\n }\n var vm = buildProgramViewModel(__assign(__assign({}, state.currentProgram), { favouriteTasks: data }));\n return __assign(__assign({}, state), { currentProgram: vm });\n }\n case \"\".concat(actions_1.PROGRAM_ACTION_PREFIX, \"/\").concat(PATIENTELEMENT_INSERTED): {\n var _u = action, data = _u.data, reducerParams = _u.reducerParams;\n if (!state.currentProgram || state.currentProgram.id !== reducerParams.patientProgramId || !data) {\n return state;\n }\n var vm = buildProgramViewModel(__assign(__assign({}, state.currentProgram), { elements: state.currentProgram.elements ? __spreadArray(__spreadArray([], state.currentProgram.elements, true), [data.patientProgramElement], false) : [data.patientProgramElement] }));\n return __assign(__assign({}, state), { currentProgram: vm });\n }\n case \"\".concat(actions_1.PROGRAM_ACTION_PREFIX, \"/\").concat(PATIENTELEMENT_UPDATED): {\n var _v = action, data_2 = _v.data, reducerParams = _v.reducerParams;\n if (!state.currentProgram || state.currentProgram.id !== reducerParams.patientProgramId) {\n return state;\n }\n var vm = buildProgramViewModel(__assign(__assign({}, state.currentProgram), { elements: state.currentProgram.elements.map(function (d) { return (d.id === data_2.id ? data_2 : d); }) }));\n return __assign(__assign({}, state), { currentProgram: vm });\n }\n case \"\".concat(actions_1.PROGRAM_ACTION_PREFIX, \"/\").concat(PATIENTELEMENT_DELETED): {\n var _w = action, data_3 = _w.data, reducerParams = _w.reducerParams;\n if (!state.currentProgram || state.currentProgram.id !== reducerParams.patientProgramId) {\n return state;\n }\n var vm = buildProgramViewModel(__assign(__assign({}, state.currentProgram), { elements: state.currentProgram.elements.filter(function (d) { return d.id !== data_3.id; }) }));\n return __assign(__assign({}, state), { currentProgram: vm });\n }\n case \"\".concat(actions_1.PROGRAM_ACTION_PREFIX, \"/\").concat(RESPONSE_FORMS_RECEIVED): {\n var _x = action, data = _x.data, requestParams = _x.requestParams;\n return __assign(__assign({}, state), { allForms: __assign(__assign({}, state.allForms), (_a = {}, _a[requestParams.patientProgramElementId] = __assign(__assign({}, (_l = state.allForms) === null || _l === void 0 ? void 0 : _l[requestParams.patientProgramElementId]), (_b = {}, _b[requestParams.taskId] = data.map(responseUtils_1.buildResponseFormVm), _b)), _a)) });\n }\n case \"\".concat(actions_1.PROGRAM_ACTION_PREFIX, \"/\").concat(UPDATE_SUBMITTED_FORMS): {\n var data_4 = action.data;\n var existingForms = ((_o = (_m = state.allForms) === null || _m === void 0 ? void 0 : _m[data_4.patientProgramElementId]) === null || _o === void 0 ? void 0 : _o[data_4.taskId]) || [];\n var hasExistingForm = existingForms.some(function (d) { var _a; return d.formId === ((_a = data_4.form) === null || _a === void 0 ? void 0 : _a.formId); });\n var formsForTask = void 0;\n if (hasExistingForm) {\n formsForTask = existingForms.map(function (d) { var _a; return (d.formId === ((_a = data_4.form) === null || _a === void 0 ? void 0 : _a.formId) ? data_4.form : d); });\n }\n else {\n formsForTask = __spreadArray([data_4.form], existingForms, true);\n }\n return __assign(__assign({}, state), { allForms: __assign(__assign({}, state.allForms), (_c = {}, _c[data_4.patientProgramElementId] = __assign(__assign({}, (_p = state.allForms) === null || _p === void 0 ? void 0 : _p[data_4.patientProgramElementId]), (_d = {}, _d[data_4.taskId] = formsForTask, _d)), _c)) });\n }\n case \"\".concat(actions_1.PROGRAM_ACTION_PREFIX, \"/\").concat(RESET_RESPONSE_FORM): {\n var data = action.data;\n if (!((_q = state.currentProgramTaskResponses) === null || _q === void 0 ? void 0 : _q[data.patientProgramElementId])) {\n return state;\n }\n return __assign(__assign({}, state), { currentProgramTaskResponses: __assign(__assign({}, state.currentProgramTaskResponses), (_e = {}, _e[data.patientProgramElementId] = __assign(__assign({}, state.currentProgramTaskResponses[data.patientProgramElementId]), (_f = {}, _f[data.taskId] = data.form, _f)), _e)) });\n }\n default: {\n var stateFromDefaultActions = storeHelper.defaultReducer(state, action, initialState);\n if (stateFromDefaultActions !== null) {\n return stateFromDefaultActions;\n }\n return state || initialState;\n }\n }\n};\nexports.reducer = reducer;\n","import { push, LOCATION_CHANGE } from 'connected-react-router';\nimport apiUrls from '../../youwell-common/apiUrls';\nimport ReduxStoreHelper, { LOGOUT } from '../../youwell-common/ReduxStoreHelper';\n\nimport { PUBLIC_ACTION_PREFIX as ACTION_PREFIX } from './actions';\nimport Auth, { authTypes } from '../../youwell-common/Auth';\nimport {\n parseResponseSaveResult, parseInsertedResponse, buildResponseLookup,\n} from '../../youwell-common/responseUtils';\n\nconst RESPONSE_INSERTED = 'RESPONSE_INSERTED';\nconst SESSION_RECEIVED = 'SESSION_RECEIVED';\nconst PUBLIC_PROGRAM_DETAILS_RECIEVED = 'PUBLIC_PROGRAM_DETAILS_RECIEVED';\nconst END_SESSION = 'END_SESSION';\nconst COMPLETE_TASK = 'COMPLETE_TASK';\nconst RESPONSE_SAVED = 'RESPONSE_SAVED';\nconst TASKVISITED = 'TASKVISITED';\nconst FEEDBACK_FORM_SENT = 'FEEDBACK_FORM_SENT';\n\nconst storeHelper = new ReduxStoreHelper(ACTION_PREFIX);\n\nexport const endSessionReasons = {\n tokenExpired: 'tokenExpired',\n timeout: 'timeout',\n manualEnd: 'manualEnd',\n completed: 'completed',\n};\n\nexport const actionCreators = {\n ...storeHelper.defaultActionCreators(apiUrls.app.public),\n getPublicProgram: storeHelper.createGetElementActionCreator(apiUrls.app.public, PUBLIC_PROGRAM_DETAILS_RECIEVED),\n updateResponse: data => (dispatch) => {\n dispatch({ type: `${ACTION_PREFIX}/${RESPONSE_INSERTED}`, data });\n },\n sendFirstResponse: (responseData, options) => (dispatch) => {\n storeHelper.fetch(dispatch, {\n url: `${apiUrls.app.public}/re1`,\n body: responseData,\n method: 'POST',\n completeAction: `${ACTION_PREFIX}/${RESPONSE_SAVED}`,\n onData: (data) => {\n Auth.setLoginInfo(data.patientResult?.loginLevel, null, authTypes.public);\n },\n options,\n });\n },\n saveResponse: storeHelper.createInsertActionCreator(`${apiUrls.app.public}/res`, RESPONSE_SAVED),\n getSession: (body, options) => (dispatch) => {\n storeHelper.fetch(dispatch, {\n url: `${apiUrls.app.public}/curr`,\n body,\n method: 'POST',\n completeAction: `${ACTION_PREFIX}/${SESSION_RECEIVED}`,\n onUnauthorized: () => {\n dispatch({ type: END_SESSION, endReason: endSessionReasons.tokenExpired });\n Auth.deauthenticateUser();\n },\n options,\n });\n },\n endSession: (endReason, redirect) => (dispatch) => {\n dispatch({ type: END_SESSION, endReason });\n Auth.deauthenticateUser();\n if (redirect) {\n dispatch(push(redirect));\n }\n },\n completeTask: (data, redirect) => (dispatch) => {\n dispatch({ type: COMPLETE_TASK, data });\n if (redirect) {\n dispatch(push(redirect));\n }\n },\n visitTask: (taskInfo, options) => (dispatch) => {\n storeHelper.fetch(dispatch, {\n url: `${apiUrls.app.program}/vt`,\n method: 'POST',\n body: taskInfo,\n completeAction: `${ACTION_PREFIX}/${TASKVISITED}`,\n options: { background: true, ...options },\n });\n },\n sendFeedbackFromForm: storeHelper.createInsertActionCreator(`${apiUrls.app.public}/feedback`, FEEDBACK_FORM_SENT),\n};\n\nconst initialState = {\n ...storeHelper.defaultInitialState,\n currentProgramId: null,\n currentOrgId: null,\n patientId: null,\n patientProgramId: null,\n patientProgramElementId: null,\n endReason: null,\n completedTasks: null,\n latestCompletedStep: -1,\n};\n\nexport const reducer = (state, action) => {\n switch (action.type) {\n case LOGOUT: {\n return {\n ...initialState,\n details: { ...state.details },\n currentProgramId: state.currentProgramId,\n currentOrgId: state.organizationId,\n };\n }\n case LOCATION_CHANGE: {\n if (state.endReason === endSessionReasons.completed) {\n return {\n ...initialState,\n details: { ...state.details },\n currentProgramId: state.currentProgramId,\n currentOrgId: state.organizationId,\n };\n }\n return {\n ...state,\n };\n }\n case END_SESSION: {\n return {\n ...initialState,\n details: { ...state.details },\n currentProgramId: state.currentProgramId,\n currentOrgId: state.organizationId,\n endReason: action.endReason,\n };\n }\n case COMPLETE_TASK: {\n return {\n ...state,\n latestCompletedStep: Math.max(action.data.stepNr, state.latestCompletedStep),\n completedTasks: {\n ...state.completedTasks,\n [action.data.taskId]: true,\n },\n };\n }\n case `${ACTION_PREFIX}/${PUBLIC_PROGRAM_DETAILS_RECIEVED}`: {\n const { data } = action;\n\n return {\n ...state,\n details: {\n ...state.details || {},\n [data.id]: data,\n },\n currentProgramId: data.id,\n currentOrgId: data.organizationId,\n };\n }\n case `${ACTION_PREFIX}/${SESSION_RECEIVED}`: {\n if (!action.data) {\n return {\n ...initialState,\n details: { ...state.details },\n };\n }\n\n return {\n ...state,\n patientId: action.data.patientId,\n patientProgramId: action.data.patientProgramId,\n patientProgramElementId: action.data.patientProgramElementId,\n responses: buildResponseLookup(action.data.responses, state.responses),\n };\n }\n case `${ACTION_PREFIX}/${RESPONSE_SAVED}`: {\n const { inputData, data } = action;\n const { taskResult, patientResult } = data;\n\n const responses = parseResponseSaveResult(inputData, taskResult, state.responses);\n\n delete responses.null; // remove responses that is not connected to patientProgramElementId (these are now saved)\n\n return {\n ...state,\n ...patientResult,\n responses,\n };\n }\n case `${ACTION_PREFIX}/${RESPONSE_INSERTED}`: {\n const {\n programId, moduleId, taskId,\n } = action.data;\n\n const taskSubtotals = state.details[programId]\n ?.modules.find(m => m.id === moduleId)\n ?.tasks?.find(task => task.id === taskId)\n ?.taskSubtotals || [];\n\n const responses = parseInsertedResponse(action.data, taskSubtotals, state.responses);\n\n return {\n ...state,\n responses,\n };\n }\n default: {\n const stateFromDefaultActions = storeHelper.defaultReducer(state, action, initialState);\n\n if (stateFromDefaultActions !== null) {\n return stateFromDefaultActions;\n }\n\n return state || initialState;\n }\n }\n};\n","\"use strict\";\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar _a, _b;\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.setSelectedWeek = exports.updateEntries = exports.getSleepData = exports.SleepSlice = void 0;\nvar toolkit_1 = require(\"@reduxjs/toolkit\");\nvar dateUtils_1 = require(\"../../youwell-common/dateUtils\");\nvar ReduxStoreHelper_1 = require(\"../../youwell-common/ReduxStoreHelper\");\nvar arrayUtils_1 = require(\"../../youwell-common/arrayUtils\");\nvar initialState = {\n entries: null,\n sleepEntriesLoadedFrom: null,\n selectedWeek: (0, dateUtils_1.getWeek)(),\n};\nexports.SleepSlice = (0, toolkit_1.createSlice)({\n name: 'SleepSlice',\n initialState: initialState,\n reducers: {\n setSelectedWeek: function (state, action) { state.selectedWeek = action.payload; },\n getSleepData: function (state, action) {\n var _a, _b;\n state.entries = (0, arrayUtils_1.distinct)(__spreadArray(__spreadArray([], state.entries || [], true), ((_a = action.payload.response) === null || _a === void 0 ? void 0 : _a.entries) || [], true), function (d) { var _a; return (_a = d.date) === null || _a === void 0 ? void 0 : _a.toString(); });\n state.sleepEntriesLoadedFrom = ((_b = action.payload.requestQuery) === null || _b === void 0 ? void 0 : _b.startDate) || null;\n },\n updateEntries: function (state, action) {\n if (state.entries) {\n var isNew_1 = true;\n state.entries = state.entries.map(function (d) {\n if (action.payload.response && (0, dateUtils_1.isSameDate)(d.date, action.payload.response.date)) {\n isNew_1 = false;\n return action.payload.response;\n }\n return d;\n });\n if (isNew_1 && action.payload.response) {\n state.entries.push(action.payload.response);\n }\n }\n else if (action.payload.response) {\n state.entries = [action.payload.response];\n }\n },\n },\n extraReducers: (_a = {},\n _a[ReduxStoreHelper_1.LOGOUT] = function () { return initialState; },\n _a),\n});\nexports.getSleepData = (_b = exports.SleepSlice.actions, _b.getSleepData), exports.updateEntries = _b.updateEntries, exports.setSelectedWeek = _b.setSelectedWeek;\nexports.default = exports.SleepSlice.reducer;\n","import apiUrls from '../../youwell-common/apiUrls';\nimport ReduxStoreHelper from '../../youwell-common/ReduxStoreHelper';\nimport {\n USER_ACTION_PREFIX as ACTION_PREFIX, PROGRAM_TASKRESPONSE_INSERTED, SENSOR_DELETED, SUCCESS_UPLOAD_PROFILEIMAGE, USER_DELETE_PROFILEIMAGE,\n} from './actions';\n\nimport { notificationKeys, patientProgramElementGroups } from '../../common/constants';\nimport { sortByDate } from '../../youwell-common/arrayUtils';\n\nconst MESSAGE_LIST_UPDATE_RECIEVED = 'MESSAGE_LIST_UPDATE_RECIEVED';\nconst MESSAGES_READ_RECIEVED = 'MESSAGES_READ_RECIEVED';\nconst USER_STATE_RECIEVED = 'USER_STATE_RECIEVED';\nconst ACTIVITY_INSERTED = 'ACTIVITY_INSERTED';\nconst USER_DELETED = 'USER_DELETED';\n\nconst storeHelper = new ReduxStoreHelper(ACTION_PREFIX);\n\nexport const actionCreators = {\n checkForNewMessages: storeHelper.createGetListActionCreator(`${apiUrls.app.message}`, MESSAGE_LIST_UPDATE_RECIEVED),\n insertMessage: storeHelper.createInsertActionCreator(`${apiUrls.app.message}`, MESSAGE_LIST_UPDATE_RECIEVED),\n getUserState: options => (dispatch, getState) => {\n storeHelper.fetch(dispatch, {\n url: `${apiUrls.app.user}/state/${getState().user.userStateTimeStamp || ''}`,\n onData: (data) => {\n dispatch({ type: `${ACTION_PREFIX}/${USER_STATE_RECIEVED}`, data });\n },\n options: { background: true, ...options },\n });\n },\n markMessagesAsRead: (timestamp, options) => (dispatch) => {\n storeHelper.fetch(dispatch, {\n url: `${apiUrls.app.message}/read/${timestamp}`,\n method: 'PUT',\n completeAction: `${ACTION_PREFIX}/${MESSAGES_READ_RECIEVED}`,\n options,\n });\n },\n sendActivity: (activity, options) => (dispatch) => {\n storeHelper.fetch(dispatch, {\n url: `${apiUrls.app.user}/act`,\n method: 'POST',\n body: activity,\n completeAction: `${ACTION_PREFIX}/${ACTIVITY_INSERTED}`,\n options: { background: true, ...options },\n });\n },\n removeSensor: storeHelper.createDeleteActionCreator(`${apiUrls.app.sensor}`, SENSOR_DELETED),\n deleteUser: storeHelper.createDeleteActionCreator(`${apiUrls.app.user}`, USER_DELETED),\n saveProfilePicture: storeHelper.createFileUploadActionCreator(`${apiUrls.app.user}/image`, SUCCESS_UPLOAD_PROFILEIMAGE),\n deleteProfilePicture: options => (dispatch) => {\n storeHelper.fetch(dispatch, {\n url: `${apiUrls.app.user}/image`,\n method: 'DELETE',\n completeAction: USER_DELETE_PROFILEIMAGE,\n options,\n });\n },\n};\n\nconst initialState = {\n ...storeHelper.defaultInitialState,\n sessionId: null,\n userStateTimeStamp: null,\n messageList: null,\n notifications: [],\n activityId: null,\n unreadMessages: 0,\n allMessagesFetched: false,\n};\n\n\nconst setNotifications = (userState, currentNotifications) => {\n const notifications = [...currentNotifications];\n\n if (!userState) {\n return notifications;\n }\n\n if (userState.unreadMessages > 0) {\n notifications.push(notificationKeys.unreadMessages);\n }\n if (userState.overdueTasks && userState.overdueTasks.length > 0) {\n notifications.push(...userState.overdueTasks.map(p => `${notificationKeys.program}_${p}_${notificationKeys.overdueTasks}`));\n }\n return notifications;\n};\n\nexport const reducer = (state, action) => {\n const stateFromDefaultActions = storeHelper.defaultReducer(state, action, initialState);\n\n if (stateFromDefaultActions !== null) {\n return stateFromDefaultActions;\n }\n\n switch (action.type) {\n case `${ACTION_PREFIX}/${MESSAGE_LIST_UPDATE_RECIEVED}`: {\n const messageList = sortByDate(state.messageList ? [...state.messageList, ...action.data] : action.data) || [];\n const messagesTimestamp = messageList[0]?.created;\n\n return {\n ...state,\n messageList,\n messagesTimestamp,\n allMessagesFetched: action.requestParams?.count ? (action.data.length < action.requestParams.count) : state.allMessagesFetched,\n };\n }\n\n case `${ACTION_PREFIX}/${USER_STATE_RECIEVED}`: {\n return {\n ...state,\n sessionId: action.data.sid,\n unreadMessages: action.data.unreadMessages,\n userStateTimeStamp: action.data.timeStamp,\n notifications: setNotifications(action.data, state.notifications),\n };\n }\n case PROGRAM_TASKRESPONSE_INSERTED: {\n return {\n ...state,\n // todo - check for real..!\n notifications: action.reducerParams && action.reducerParams.group === patientProgramElementGroups.scheduled\n ? state.notifications.filter(d => d !== `${notificationKeys.program}_${action.reducerParams.patientProgramId}_${notificationKeys.overdueTasks}`)\n : [...state.notifications],\n };\n }\n case `${ACTION_PREFIX}/${MESSAGES_READ_RECIEVED}`: {\n return {\n ...state,\n unreadMessages: 0,\n notifications: state.notifications.filter(d => d !== notificationKeys.unreadMessages),\n messageList: state.messageList.map(m => (\n m.created < action.reducerParams.timestamp ? m : { ...m, patientReadTime: action.reducerParams.timestamp }\n )),\n };\n }\n case `${ACTION_PREFIX}/${ACTIVITY_INSERTED}`: {\n return {\n ...state,\n activityId: action.data,\n };\n }\n default: {\n return state || initialState;\n }\n }\n};\n","import {\r\n DETAILS_RECIEVED,\r\n} from '../../youwell-common/ReduxStoreHelper';\r\n\r\n\r\nexport const PROGRAM_ACTION_PREFIX = 'PROGRAM';\r\nexport const TASKRESPONSE_INSERTED = 'TASKRESPONSE_INSERTED';\r\nexport const PROGRAM_TASKRESPONSE_INSERTED = `${PROGRAM_ACTION_PREFIX}/${TASKRESPONSE_INSERTED}`;\r\nexport const RESPONSES_RECEIVED = 'RESPONSES_RECEIVED';\r\nexport const CURRENTPROGRAM_RECEIVED = 'CURRENTPROGRAM_RECEIVED';\r\n\r\nexport const PROGRAM_RESPONSES_RECEIVED = `${PROGRAM_ACTION_PREFIX}/${RESPONSES_RECEIVED}`;\r\nexport const PROGRAM_CURRENTPROGRAM_RECEIVED = `${PROGRAM_ACTION_PREFIX}/${CURRENTPROGRAM_RECEIVED}`;\r\n\r\nexport const USER_ACTION_PREFIX = 'USER';\r\nexport const SENSOR_DELETED = 'SENSOR_DELETED';\r\nexport const USER_SENSOR_DELETED = `${USER_ACTION_PREFIX}/${SENSOR_DELETED}`;\r\nexport const SUCCESS_UPLOAD_PROFILEIMAGE = 'SUCCESS_UPLOAD_PROFILEIMAGE';\r\nexport const USER_UPLOAD_PROFILEIMAGE = `${USER_ACTION_PREFIX}/${SUCCESS_UPLOAD_PROFILEIMAGE}`;\r\nconst SUCCESS_DELETE_PROFILEIMAGE = 'SUCCESS_DELETE_PROFILEIMAGE';\r\nexport const USER_DELETE_PROFILEIMAGE = `${USER_ACTION_PREFIX}/${SUCCESS_DELETE_PROFILEIMAGE}`;\r\n\r\nexport const PUBLIC_ACTION_PREFIX = 'PUBLIC';\r\nexport const PUBLIC_PROGRAM_RECEIVED = `${PUBLIC_ACTION_PREFIX}/${DETAILS_RECIEVED}`;\r\n\r\nexport const PREVIEW_ACTION_PREFIX = 'PREVIEW';\r\nexport const PREVIEW_TASK_RECEIVED = `${PREVIEW_ACTION_PREFIX}/${DETAILS_RECIEVED}`;\r\n\r\nexport const AUTH_ACTION_PREFIX = 'AUTH';\r\nexport const SUCCESS_LOGIN = 'SUCCESS_LOGIN';\r\nexport const AUTH_SUCCESS_LOGIN = `${AUTH_ACTION_PREFIX}/${SUCCESS_LOGIN}`;\r\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nvar _a;\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.useYouwellDispatch = exports.useYouwellSelector = exports.history = exports.reducers = void 0;\nvar react_localize_redux_1 = require(\"react-localize-redux\");\nvar history_1 = require(\"history\");\nvar react_redux_1 = require(\"react-redux\");\nvar AuthStore = __importStar(require(\"./AuthStore\"));\nvar ProgramStore = __importStar(require(\"./ProgramStore\"));\nvar UserStore = __importStar(require(\"./UserStore\"));\nvar PageSettingStore = __importStar(require(\"./PageSettingStore\"));\nvar PublicStore = __importStar(require(\"./PublicStore\"));\nvar PreviewStore = __importStar(require(\"./PreviewStore\"));\nvar SleepDataStore_1 = __importDefault(require(\"./SleepDataStore\"));\nvar ActivityDataStore_1 = __importDefault(require(\"./ActivityDataStore\"));\nvar OutsideStore_1 = __importDefault(require(\"./OutsideStore\"));\nvar reduxUtils_1 = require(\"../../youwell-common/reduxUtils\");\nvar RequestStatusStore_1 = __importDefault(require(\"../../youwell-common/service/RequestStatusStore\"));\nvar ExternalUserStore_1 = __importDefault(require(\"./ExternalUserStore\"));\nvar PatientConsentStore_1 = __importDefault(require(\"./PatientConsentStore\"));\nvar HealthRegistrationStore_1 = __importDefault(require(\"./HealthRegistrationStore\"));\nvar MedicationStore_1 = __importDefault(require(\"./MedicationStore\"));\nexports.reducers = {\n localize: react_localize_redux_1.localizeReducer,\n auth: AuthStore.reducer,\n programStore: ProgramStore.reducer,\n user: UserStore.reducer,\n pageSettings: PageSettingStore.reducer,\n publicStore: PublicStore.reducer,\n previewStore: PreviewStore.reducer,\n activityDataStore: ActivityDataStore_1.default,\n sleepDataStore: SleepDataStore_1.default,\n requestStatusStore: RequestStatusStore_1.default,\n outsideStore: OutsideStore_1.default,\n externalUserStore: ExternalUserStore_1.default,\n patientConsentStore: PatientConsentStore_1.default,\n healthRegistrationStore: HealthRegistrationStore_1.default,\n medicationStore: MedicationStore_1.default,\n};\nvar baseUrl = ((_a = document.getElementById('react-app')) === null || _a === void 0 ? void 0 : _a.getAttribute('data-base-url')) || undefined;\n// Create browser history to use in the Redux store\nexports.history = (0, history_1.createBrowserHistory)({ basename: baseUrl });\n// Get the application-wide store instance, prepopulating with state from the server where available.\nvar store = (0, reduxUtils_1.configureStore)(exports.reducers, exports.history);\n// export type RootStore = ReturnType;\nexports.useYouwellSelector = react_redux_1.useSelector;\nvar useYouwellDispatch = function () { return (0, react_redux_1.useDispatch)(); };\nexports.useYouwellDispatch = useYouwellDispatch;\nexports.default = store;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.HealthRegistrationLogType = exports.HealthRegistrationType = void 0;\nvar HealthRegistrationType;\n(function (HealthRegistrationType) {\n HealthRegistrationType[\"Custom\"] = \"Custom\";\n HealthRegistrationType[\"Activity\"] = \"Activity\";\n HealthRegistrationType[\"WeightAndSize\"] = \"WeightAndSize\";\n HealthRegistrationType[\"SmokeStop\"] = \"SmokeStop\";\n HealthRegistrationType[\"BloodSugar\"] = \"BloodSugar\";\n HealthRegistrationType[\"GoutLevel\"] = \"GoutLevel\";\n HealthRegistrationType[\"Goals\"] = \"Goals\";\n HealthRegistrationType[\"Psychosocial\"] = \"Psychosocial\";\n HealthRegistrationType[\"Medicine\"] = \"Medicine\";\n HealthRegistrationType[\"Diet\"] = \"Diet\";\n})(HealthRegistrationType = exports.HealthRegistrationType || (exports.HealthRegistrationType = {}));\nvar HealthRegistrationLogType;\n(function (HealthRegistrationLogType) {\n HealthRegistrationLogType[\"Goal\"] = \"goal\";\n HealthRegistrationLogType[\"Task\"] = \"task\";\n})(HealthRegistrationLogType = exports.HealthRegistrationLogType || (exports.HealthRegistrationLogType = {}));\n","export const elementInfoClasses = theme => ({\r\n elementInfoRoot: {\r\n display: 'flex',\r\n marginBottom: theme.spacing(6),\r\n\r\n [theme.breakpoints.down('xs')]: {\r\n flexDirection: 'column',\r\n },\r\n },\r\n elementInfoImageContainer: {\r\n flex: '1 1 50%',\r\n padding: theme.spacing(2),\r\n marginBottom: theme.spacing(1),\r\n\r\n [theme.breakpoints.down('xs')]: {\r\n padding: theme.spacing(1),\r\n },\r\n },\r\n elementInfoImage: {\r\n width: '100%',\r\n },\r\n elementInfoDescriptionContainer: {\r\n flex: '1 1 50%',\r\n padding: theme.spacing(2),\r\n display: 'flex',\r\n flexDirection: 'column',\r\n\r\n [theme.breakpoints.down('xs')]: {\r\n padding: theme.spacing(1),\r\n },\r\n },\r\n elementInfoTitle: {\r\n flex: '1 1 auto',\r\n margin: theme.spacing(1),\r\n },\r\n elementInfoProgress: {\r\n height: 12,\r\n marginTop: theme.spacing(2),\r\n },\r\n elementInfoProgressText: {\r\n marginTop: theme.spacing(0.5),\r\n },\r\n elementInfoDescription: {\r\n margin: theme.spacing(1),\r\n },\r\n});\r\n\r\n\r\nexport const tableListClasses = theme => ({\r\n tableListRoot: {\r\n boxShadow: theme.shadows[1],\r\n\r\n [theme.breakpoints.down('xs')]: {\r\n boxShadow: 'none',\r\n },\r\n },\r\n tableListTitleContainer: {\r\n padding: theme.spacing(1, 8),\r\n background: theme.palette.primary.main,\r\n color: theme.palette.common.white,\r\n border: theme.youwell.borders.dim,\r\n borderWidth: '0px 1px',\r\n\r\n [theme.breakpoints.down('xs')]: {\r\n borderWidth: 0,\r\n background: theme.palette.grey[100],\r\n color: theme.palette.primary.main,\r\n padding: theme.spacing(1, 4),\r\n },\r\n },\r\n tableListTitle: {\r\n\r\n },\r\n tableListRows: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n\r\n [theme.breakpoints.down('xs')]: {\r\n flex: '1 1 auto',\r\n },\r\n },\r\n tableListRow: {\r\n display: 'flex',\r\n },\r\n tableListRowIndex: {\r\n background: theme.palette.secondary.main,\r\n borderBottom: theme.youwell.borders.dim,\r\n width: theme.spacing(3),\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n color: theme.palette.common.white,\r\n\r\n [theme.breakpoints.up('sm')]: {\r\n width: theme.spacing(4),\r\n },\r\n },\r\n tableListRowElement: {\r\n flex: '1 1 0px',\r\n margin: theme.spacing(0, 4),\r\n padding: theme.spacing(2, 0),\r\n borderBottom: theme.youwell.borders.dim,\r\n color: theme.palette.grey[400],\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'space-between',\r\n\r\n [theme.breakpoints.down('xs')]: {\r\n margin: theme.spacing(0, 2),\r\n },\r\n\r\n '$tableListCurrent &': {\r\n background: theme.palette.grey[200],\r\n color: theme.palette.common.black,\r\n margin: '-1px 0 0',\r\n padding: theme.spacing(2, 4),\r\n\r\n [theme.breakpoints.down('xs')]: {\r\n padding: theme.spacing(2),\r\n },\r\n },\r\n '$tableListCompleted &': {\r\n color: theme.palette.common.black,\r\n },\r\n '$tableListUnavailable &': {\r\n color: theme.palette.grey[400],\r\n },\r\n },\r\n tableListRowElementTitle: {\r\n flex: '1 1 auto',\r\n },\r\n tableListCurrent: {\r\n },\r\n tableListCompleted: {\r\n },\r\n tableListUnavailable: {\r\n },\r\n});\r\n\r\nexport const iconClasses = theme => ({\r\n iconGreen: {\r\n color: theme.youwell.colors.green,\r\n opacity: 0.5,\r\n },\r\n iconRed: {\r\n color: theme.youwell.colors.red,\r\n opacity: 0.7,\r\n },\r\n iconGray: {\r\n color: theme.palette.grey[400],\r\n opacity: 0.7,\r\n },\r\n});\r\n","// extracted by mini-css-extract-plugin\nexport {};\n if(module.hot) {\n // 1713287957649\n var cssReload = require(\"/home/vsts/work/1/s/node_modules/mini-css-extract-plugin/dist/hmr/hotModuleReplacement.js\")(module.id, {\"locals\":false});\n module.hot.dispose(cssReload);\n module.hot.accept(undefined, cssReload);\n }\n ","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.headerHeight = exports.scrollerWidth = void 0;\nvar core_1 = require(\"@material-ui/core\");\nvar defaultTheme_1 = require(\"../../youwell-common/styles/defaultTheme\");\nvar customerPalette = __assign(__assign({}, defaultTheme_1.defaultPalette), { \n // Customer palette can be overridden here or in appsettings.json\n // Primary/Secondary/Highlight must also be set in appsettings.json\n // Primary and Secondary should have at least 4.5 contrast ratio to eachother\n primary: '#056839', secondary: '#CEA205', highlight: '#056839', hover: '#CEA205', defaultBackground: '#E5F0EB', secondaryBackground: '#ffffff', \n // common\n inputBackground: '#ffffff', white: '#ffffff', grayDark: '#626262', grayMiddle: '#A9A8A8', grayLight: '#D3D1CF', black: '#000000', red: '#FB6C76', green: '#056839', highScore: '#07995b', midScore: '#2C1585', lowScore: '#910DA7', \n // HiH\n blue: '#5076FF', lightGreen: '#E5F0EB', mediumGreen: '#7BA425' });\nexports.scrollerWidth = 16;\nexports.headerHeight = 50;\nvar generateTheme = function (options, darkMode) {\n var _a;\n var paletteFromOptions = (_a = options === null || options === void 0 ? void 0 : options.palette) === null || _a === void 0 ? void 0 : _a.split(';').reduce(function (prev, curr) {\n var _a;\n var currKeyVal = curr === null || curr === void 0 ? void 0 : curr.split(':');\n if ((currKeyVal === null || currKeyVal === void 0 ? void 0 : currKeyVal.length) !== 2) {\n return prev;\n }\n return __assign(__assign({}, prev), (_a = {}, _a[currKeyVal[0]] = currKeyVal[1], _a));\n }, {});\n var palette = __assign(__assign({}, customerPalette), paletteFromOptions);\n var customerThemeProperties = {\n colors: palette,\n shadows: __assign(__assign({}, (0, defaultTheme_1.getDefaultShadows)(palette)), { default: '-5px -5px 10px #FFFFFF, 5px 5px 10px #BDD8D8, 10px 10px 20px rgba(189, 216, 216, 0.5), -10px -10px 20px rgba(255, 255, 255, 0.5)', button: '2px 2px 4px rgba(0, 0, 0, 0.25))', lightgreyShadow: '0px 4px 4px rgba(255, 255, 255, 0.15), inset 3px 3px 3px rgba(0, 0, 0, 0.15)' }),\n borders: __assign(__assign({}, (0, defaultTheme_1.getDefaultBorders)(palette)), { normal: \"1px solid \".concat(palette.grayMiddle), dim: \"1px solid \".concat(palette.grayLight), transparent: '1px solid transparent', medium: \"4px solid \".concat(palette.grayMiddle), large: \"8px solid \".concat(palette.grayMiddle), primary: \"2px solid \".concat(palette.primary), secondary: \"3px solid \".concat(palette.secondary), hover: \"2px solid \".concat(palette.hover), dotted: \"2px dotted \".concat(palette.secondary), inputBox: \"1px solid \".concat(palette.primary), error: \"1px solid \".concat(palette.red) }),\n shapes: {\n borderRadius: 10,\n borderRadiusRounder: 20,\n borderRadiusFlatter: 5,\n borderRadiusRound: 1000,\n },\n };\n var themeOptions = {\n palette: {\n type: darkMode ? 'light' : 'light',\n primary: {\n main: palette.primary,\n },\n secondary: {\n main: palette.secondary,\n },\n error: {\n main: palette.red,\n },\n background: {\n default: palette.defaultBackground,\n paper: palette.white,\n },\n text: {\n primary: palette.black,\n secondary: palette.grayMiddle,\n },\n },\n youwell: customerThemeProperties,\n shape: {\n borderRadius: customerThemeProperties.shapes.borderRadius,\n },\n typography: {\n fontSize: 16,\n },\n overrides: {\n MuiCssBaseline: {\n '@global': {\n body: {\n backgroundColor: palette.defaultBackground,\n },\n },\n },\n MuiInputBase: {\n root: {\n backgroundColor: palette.white,\n },\n },\n MuiButton: {\n root: {\n fontWeight: 400,\n borderRadius: 20,\n },\n label: {\n fontWeight: 500,\n },\n outlinedSecondary: {\n color: palette.primary,\n border: \"1px solid \".concat(palette.secondary),\n '&:hover': {\n backgroundColor: palette.secondaryBackground,\n },\n },\n containedSecondary: {\n color: palette.white,\n },\n },\n MuiDrawer: {\n paper: {\n maxWidth: '100%',\n },\n },\n MuiTypography: {\n body1: {\n fontSize: '1.1875rem',\n lineHeight: '1.473685em',\n },\n subtitle1: {\n lineHeight: '1.5em',\n },\n subtitle2: {\n fontSize: '1.1875rem',\n },\n },\n MuiTooltip: {\n tooltip: {\n backgroundColor: palette.white,\n border: \"2px solid \".concat(palette.grayLight),\n color: palette.grayLight,\n padding: 16,\n fontSize: '1rem',\n fontWeight: 400,\n },\n },\n MuiRating: {\n root: {\n color: palette.primary,\n },\n },\n },\n };\n return (0, core_1.createTheme)(themeOptions);\n};\nexports.default = generateTheme;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar urls = {\n home: '/',\n login: '/login',\n loginRedirect: '/loginredirect',\n accessKeyLogin: '/acc',\n loginParts: {\n accessCode: 'code',\n selectOrg: 'selectorg',\n forgotPassword: 'forgotPassword',\n resetPassword: 'resetPassword',\n external: 'ext',\n },\n logout: '/logout',\n preview: {\n home: '/preview', // {taskId}\n // program: '/preview/p', // {programId}/{moduleIndex?}/{taskIndex?}\n // module: '/preview/m', // {moduleId}/{taskIndex?}\n // task: '/preview/t', // {taskId}\n },\n singlepage: '/pre',\n outsideProgram: {\n home: '/prg',\n task: '/prg/t',\n program: '/prg/p',\n programSelect: '/prg/s',\n },\n public: {\n home: '/public',\n program: '/public/p',\n module: '/public/m',\n programLink: '/public/link', // page for id lookup and redirect to program or module\n },\n external: {\n home: '/ext',\n consent: '/ext/consent',\n },\n inside: {\n home: '/inside',\n profile: '/inside/profile',\n chat: '/inside/chat',\n videochat: '/inside/call',\n program: '/inside/program',\n programLink: '/inside/link',\n pages: {\n home: '/inside/p/',\n calendar: '/inside/p/calendar',\n videos: '/inside/p/videos',\n favourites: '/inside/p/favourites',\n performance: '/inside/p/performance',\n sleepDiary: '/inside/p/sleep',\n activityDiary: '/inside/p/activity',\n health: {\n health: '/inside/p/health',\n medicine: '/inside/p/health/medicine',\n activity: '/inside/p/health/activity',\n weight: '/inside/p/health/weight',\n diet: '/inside/p/health/diet',\n smoking: '/inside/p/health/smoking',\n bloodSugar: '/inside/p/health/bloodSugar',\n psychosocial: '/inside/p/health/psychosocial',\n goals: '/inside/p/health/goals',\n },\n prints: '/inside/p/prints',\n feedback: '/inside/p/feedback',\n elements: '/inside/p/elements',\n consent: '/inside/p/consent',\n missingGuardianConsent: '/inside/p/missingconsent',\n singlepage: '/inside/p/pre',\n },\n parts: {\n resumeLatest: 'continue',\n },\n },\n};\nexports.default = urls;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getElementLink = exports.getBreadCrumb = void 0;\nvar urls_1 = __importDefault(require(\"../app/urls\"));\nvar constants_1 = require(\"./constants\");\nvar getBreadCrumb = function (currentName, translate, clientConfig, task, trail) {\n var breadCrumb = [];\n breadCrumb.push({\n text: translate('header.home'),\n url: urls_1.default.inside.home,\n });\n if (task) {\n switch (task.elementGroup) {\n case constants_1.patientProgramElementGroups.main: {\n if (task.module) {\n breadCrumb.push({\n text: task.moduleName,\n url: \"\".concat(urls_1.default.inside.program, \"/\").concat(task.elementGroup, \"/\").concat(task.elementIndex),\n });\n }\n break;\n }\n case constants_1.patientProgramElementGroups.appointment:\n case constants_1.patientProgramElementGroups.app: {\n break;\n }\n default: {\n breadCrumb.push({\n text: translate(\"patientProgramElementGroups.\".concat(task.elementGroup), undefined, { onMissingTranslation: function () { return '..'; } }),\n });\n }\n }\n }\n if (trail) {\n for (var i = 0; i < trail.length; i++) {\n breadCrumb.push(trail[i]);\n }\n }\n breadCrumb.push({\n text: currentName,\n });\n return breadCrumb;\n};\nexports.getBreadCrumb = getBreadCrumb;\nvar getElementLink = function (element) { return \"\".concat(urls_1.default.inside.program, \"/\").concat(element.elementGroup, \"/\").concat(element.indexInGroup); };\nexports.getElementLink = getElementLink;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport { withStyles } from '@material-ui/core/styles';\nimport classnames from 'classnames';\n\nimport {\n Typography, LinearProgress, IconButton,\n} from '@material-ui/core';\n\nimport TrackedLink from './TrackedLink';\nimport { activityLabels } from '../constants';\nimport {\n PrintIcon, ListIcon,\n} from '../icons';\nimport { hasValue } from '../../youwell-common/objectUtils';\nimport apiUrls from '../../youwell-common/apiUrls';\nimport Favourite from './Favourite';\n\nconst styles = theme => ({\n root: {\n width: '100%',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'space-between',\n },\n links: {\n display: 'flex',\n flexWrap: 'wrap',\n flexGrow: 1,\n alignItems: 'center',\n [theme.breakpoints.up('sm')]: {\n marginBottom: theme.spacing(1),\n },\n },\n linkContainer: {\n display: 'flex',\n alignItems: 'center',\n },\n linkItem: {\n borderColor: theme.palette.text.secondary,\n fontWeight: theme.typography.fontWeightMedium,\n },\n separatorIcon: {\n margin: theme.spacing(0, 0.5),\n color: theme.palette.text.secondary,\n },\n flex: {\n flex: '1 1 auto',\n },\n progressContainer: {\n display: 'flex',\n flexWrap: 'wrap',\n flexGrow: 2,\n alignItems: 'center',\n justifyContent: 'space-between',\n\n '@media print': {\n display: 'none',\n },\n },\n progressBar: {\n height: 12,\n maxWidth: 200,\n minWidth: 120,\n flexGrow: 1,\n },\n progressBarRounded: {\n // background: theme.palette.primary.main,\n borderRadius: theme.youwell.shapes.borderRadius,\n // border: '2px solid',\n },\n progressBarFill: {\n background: theme.youwell.colors.highlight,\n borderRadius: theme.youwell.shapes.borderRadius,\n },\n progressText: {\n fontWeight: theme.typography.fontWeightMedium,\n marginLeft: theme.spacing(1),\n },\n actionsContainer: {\n display: 'flex',\n flexGrow: 1,\n justifyContent: 'flex-end',\n alignItems: 'center',\n },\n action: {\n padding: theme.spacing(0.5),\n marginLeft: theme.spacing(1),\n },\n actionIcon: {\n fontSize: 'inherit',\n },\n hideOnDesktop: {\n [theme.breakpoints.up('md')]: {\n display: 'none',\n },\n },\n});\n\nclass BreadCrumb extends React.Component {\n renderActions() {\n const {\n classes, task, openSideMenu, translate,\n } = this.props;\n\n return (\n <>\n {task?.printFileId && (\n \n \n \n )}\n {task?.showFavourite && (\n \n )}\n {openSideMenu && (\n \n \n \n )}\n \n );\n }\n\n render() {\n const {\n classes, translate, levels, progress, className, isActiveProgram,\n } = this.props;\n\n const showProgress = isActiveProgram && hasValue(progress);\n\n return (\n
\n
\n {levels && levels.map((l, i) => (\n // eslint-disable-next-line react/no-array-index-key\n
\n \n \n {l.text}\n \n \n\n {i < (levels.length - 1) && (\n /\n )}\n
\n ))}\n {!showProgress && (\n <>\n
\n
\n {this.renderActions()}\n
\n \n )}\n
\n\n\n
\n {showProgress && (\n <>\n \n \n {translate('common.progressCompleted', { progress: Math.round(progress * 100) })}\n \n
\n {this.renderActions()}\n
\n \n )}\n
\n
\n );\n }\n}\n\nBreadCrumb.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n levels: PropTypes.array,\n progress: PropTypes.number,\n className: PropTypes.string,\n task: PropTypes.object,\n openSideMenu: PropTypes.func,\n isActiveProgram: PropTypes.bool,\n};\n\nBreadCrumb.defaultProps = {\n levels: null,\n progress: null,\n className: null,\n task: null,\n openSideMenu: null,\n isActiveProgram: false,\n};\n\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n clientConfig: state.auth.clientConfig,\n isActiveProgram: state.programStore.currentProgram?.isActiveProgram,\n});\n\nexport default connect(mapStateToProps)(withStyles(styles)(BreadCrumb));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { Checkbox as CheckboxControl, FormControlLabel } from '@material-ui/core';\n\n\nconst styles = theme => ({\n\n checkbox: {\n margin: 0,\n marginTop: theme.spacing(1),\n },\n checkboxInput: {\n width: 'auto',\n marginRight: theme.spacing(1),\n },\n});\n\nclass Checkbox extends React.Component {\n render() {\n const {\n classes, checked, onChange, label,\n } = this.props;\n\n return (\n \n )}\n label={label}\n />\n );\n }\n}\n\nCheckbox.propTypes = {\n classes: PropTypes.object.isRequired,\n checked: PropTypes.bool.isRequired,\n onChange: PropTypes.func.isRequired,\n label: PropTypes.string,\n};\n\nCheckbox.defaultProps = {\n label: null,\n};\n\n\nexport default withStyles(styles)(Checkbox);\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport { withStyles } from '@material-ui/core/styles';\nimport { Link } from 'react-router-dom';\n\nimport {\n Dialog, DialogTitle, DialogContent, DialogContentText, DialogActions, Button,\n} from '@material-ui/core';\n\nconst styles = theme => ({\n actions: {\n padding: theme.spacing(3),\n },\n primaryButton: {\n marginLeft: theme.spacing(2),\n },\n});\n\nclass ChoiceNavigationDialog extends React.Component {\n render() {\n const {\n classes, open, onCancel, title, description, primaryLink, primaryText, secondaryLink, secondaryText,\n } = this.props;\n\n return (\n \n {title}\n \n \n {description}\n \n \n \n \n \n \n \n );\n }\n}\n\nChoiceNavigationDialog.propTypes = {\n classes: PropTypes.object.isRequired,\n open: PropTypes.bool.isRequired,\n onCancel: PropTypes.func.isRequired,\n title: PropTypes.string.isRequired,\n description: PropTypes.string.isRequired,\n primaryText: PropTypes.string,\n primaryLink: PropTypes.string,\n secondaryText: PropTypes.string,\n secondaryLink: PropTypes.string,\n};\n\nChoiceNavigationDialog.defaultProps = {\n primaryText: null,\n primaryLink: null,\n secondaryText: null,\n secondaryLink: null,\n};\n\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n});\n\nexport default connect(mapStateToProps)(withStyles(styles)(ChoiceNavigationDialog));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\n\nimport {\n Button, Typography, IconButton, Dialog, DialogTitle, DialogContent, DialogActions, makeStyles,\n} from '@material-ui/core';\nimport { useSelector } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\n\n\nconst useStyles = makeStyles(theme => ({\n title: {\n\n },\n dialogContent: {\n '&$danger': {\n borderTop: theme.youwell.borders.normal,\n borderColor: theme.palette.error.main,\n paddingTop: theme.spacing(2),\n },\n },\n description: {\n\n },\n okButton: {\n\n },\n cancelButton: {\n\n },\n danger: {\n color: theme.palette.error.main,\n },\n}));\n\nconst ConfirmDialog = ({\n onClose, dialogTitle, children, open, danger, color,\n}) => {\n const translate = useSelector(state => getTranslate(state.localize));\n const classes = useStyles();\n\n return (\n \n {dialogTitle && (\n \n {dialogTitle}\n \n )}\n \n {children}\n \n \n \n \n \n \n );\n};\n\nConfirmDialog.propTypes = {\n onClose: PropTypes.func.isRequired,\n open: PropTypes.bool.isRequired,\n dialogTitle: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node,\n ]),\n color: PropTypes.oneOf(['default', 'inherit', 'primary', 'secondary']),\n danger: PropTypes.bool,\n};\n\nConfirmDialog.defaultProps = {\n dialogTitle: null,\n children: null,\n danger: false,\n color: 'primary',\n};\n\nconst ConfirmButton = ({\n buttonClassName, variant, confirmText, confirmTitle, children, disabled, color, ButtonProps, danger, onClick,\n}) => {\n const classes = useStyles();\n const [dialogOpen, setDialogOpen] = React.useState(false);\n\n const openDialog = () => {\n setDialogOpen(true);\n };\n\n const closeDialog = (confirmed) => {\n setDialogOpen(false);\n\n if (confirmed) {\n onClick();\n }\n };\n\n return (\n <>\n {variant === 'button' && (\n \n )}\n {variant === 'iconbutton' && (\n \n {children}\n \n )}\n\n \n \n {confirmText}\n \n \n \n );\n};\n\n\nConfirmButton.propTypes = {\n onClick: PropTypes.func.isRequired,\n confirmText: PropTypes.string.isRequired,\n confirmTitle: PropTypes.string,\n buttonClassName: PropTypes.string,\n disabled: PropTypes.bool,\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node,\n ]).isRequired,\n variant: PropTypes.oneOf(['button', 'iconbutton']),\n color: PropTypes.oneOf(['default', 'inherit', 'primary', 'secondary']),\n ButtonProps: PropTypes.object,\n danger: PropTypes.bool,\n};\n\nConfirmButton.defaultProps = {\n variant: 'button',\n buttonClassName: null,\n disabled: false,\n color: 'default',\n ButtonProps: null,\n danger: false,\n confirmTitle: '',\n};\n\nexport default ConfirmButton;\n","import React, { useCallback, useEffect, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport { bindActionCreators } from 'redux';\nimport classnames from 'classnames';\n\nimport {\n Typography, TextField, Button, IconButton,\n} from '@material-ui/core';\n\nimport * as PreviewStore from '../../app/store/PreviewStore';\nimport { timestamp } from '../../youwell-common/dateUtils';\nimport { getElementTitle } from '../../youwell-common/contentUtils';\nimport { ClearIcon } from '../icons';\nimport useForm from '../../youwell-common/useForm';\nimport { validateRequired } from '../../youwell-common/validationUtils';\nimport { contentElemenIdPrefix } from '../../youwell-common/constants';\n\nconst styles = theme => ({\n root: {\n background: theme.palette.common.white,\n borderLeft: theme.youwell.borders.dim,\n padding: theme.spacing(2),\n\n [theme.breakpoints.down('xs')]: {\n padding: theme.spacing(1),\n },\n },\n description: {\n marginTop: theme.spacing(8),\n\n [theme.breakpoints.down('xs')]: {\n display: 'none', // not possible to select element on small screen so description is not relevant..\n },\n },\n commentInputFields: {\n margin: theme.spacing(2, 0),\n padding: theme.spacing(2),\n background: theme.palette.grey[50],\n display: 'flex',\n flexDirection: 'column',\n\n [theme.breakpoints.down('xs')]: {\n padding: theme.spacing(1),\n },\n },\n commentElement: {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n borderBottom: theme.youwell.borders.primary,\n },\n commentInput: {\n marginTop: theme.spacing(1),\n },\n sendButton: {\n marginTop: theme.spacing(1),\n alignSelf: 'flex-end',\n },\n comment: {\n marginBottom: theme.spacing(2),\n },\n commentHead: {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n borderBottom: theme.youwell.borders.dim,\n },\n lineWrapper: {\n position: 'fixed',\n top: 0,\n left: 0,\n height: '100vh',\n width: '100vw',\n pointerEvents: 'none',\n color: theme.palette.primary.main,\n },\n});\n\n\nconst calculate = (from, to) => {\n const fromEl = document.getElementById(from);\n const toEl = document.getElementById(to);\n\n if (!fromEl || !toEl) {\n return '';\n }\n\n const fromPosRect = fromEl.getBoundingClientRect();\n const toPosRect = toEl.getBoundingClientRect();\n\n const fromPos = {\n x: fromPosRect.left - 8,\n y: fromPosRect.top + fromEl.offsetHeight / 2,\n };\n const toPos = {\n x: toPosRect.right + 8,\n y: toPosRect.top + toEl.offsetHeight / 2,\n };\n\n return `M${fromPos.x},${fromPos.y} `\n+ `C${fromPos.x - 80},${fromPos.y} ${toPos.x + 80},${toPos.y} ${\n toPos.x},${toPos.y}`;\n};\n\nconst Line = ({\n from, to, classes,\n}) => {\n const lineEl = useRef(null);\n\n\n const update = useCallback(() => {\n if (lineEl.current) {\n lineEl.current.setAttribute('d', calculate(from, to));\n }\n }, [from, to]);\n\n useEffect(() => {\n update();\n }, [update]);\n\n useEffect(() => {\n window.addEventListener('scroll', update);\n\n return () => {\n window.removeEventListener('scroll', update);\n };\n }, [update]);\n\n return (\n
\n \n \n \n \n \n \n \n \n \n \n
\n );\n};\n\nLine.propTypes = {\n from: PropTypes.string.isRequired,\n to: PropTypes.string.isRequired,\n classes: PropTypes.object.isRequired,\n};\n\nconst ContentCommenting = ({\n classes, className, translate, task, commentElementId, saveTaskComment, clearCommentElement, getTaskComments, comments,\n}) => {\n const send = ({ formValues }) => {\n saveTaskComment({\n taskId: task.id, elementId: commentElementId, comment: formValues.comment, name: formValues.name,\n }, {\n // callback: () => setValues({ name: formValues.name }),\n });\n };\n\n const {\n formValues,\n validationErrors,\n handleChange,\n handleSubmit,\n } = useForm(send, {\n name: validateRequired,\n comment: validateRequired,\n }, {});\n\n useEffect(\n () => getTaskComments(task.id, { reducerParams: { taskId: task.id } }),\n [getTaskComments, task.id],\n );\n\n const elementTitles = task.contentElements?.reduce((prev, curr) => (\n curr ? { ...prev, [curr.id]: getElementTitle(curr) } : prev\n ), {});\n\n return (\n
\n \n {translate('taskCommenting.description')}\n \n\n
\n
\n {commentElementId && (\n
\n \n \n {`${translate('taskCommenting.element')}: ${elementTitles[commentElementId]}`}\n \n \n
\n )}\n \n \n \n
\n
\n\n {comments?.map(c => (\n
\n
\n \n {timestamp(c.created)}\n \n {c.elementId && (\n \n {elementTitles[c.elementId]}\n \n )}\n
\n \n {c.comment}\n \n \n {c.name}\n \n
\n ))}\n
\n );\n};\n\nContentCommenting.propTypes = {\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n translate: PropTypes.func.isRequired,\n task: PropTypes.object.isRequired,\n comments: PropTypes.array,\n saveTaskComment: PropTypes.func.isRequired,\n getTaskComments: PropTypes.func.isRequired,\n clearCommentElement: PropTypes.func.isRequired,\n commentElementId: PropTypes.number,\n};\n\nContentCommenting.defaultProps = {\n className: null,\n commentElementId: null,\n comments: null,\n};\n\nconst mapStateToProps = (state, ownProps) => ({\n translate: getTranslate(state.localize),\n comments: state.previewStore.comments[ownProps.task.id],\n commentElementId: state.previewStore.commentElementId,\n});\n\nconst mapDispatchToProps = dispatch => ({\n ...bindActionCreators(PreviewStore.actionCreators, dispatch),\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(withStyles(styles)(ContentCommenting));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { isBrowser } from '../../youwell-common/browserUtils';\nimport { datestamp, getAge } from '../../youwell-common/dateUtils';\n\nconst valueFromCommonVariables = (key, patientData, patientProgram) => {\n switch (key) {\n case 'patient_name': return patientData?.name;\n case 'patient_age': return getAge(patientData?.birthDate);\n case 'program_name': return patientProgram?.program?.name;\n case 'program_start': return datestamp(patientProgram?.startDate);\n default: return null;\n }\n}\n\nclass ContentVariableLoader extends React.Component {\n componentDidMount() {\n if (isBrowser) {\n // eslint-disable-next-line no-underscore-dangle\n window.__getYouwellVariable = this.getYouwellVariable;\n }\n }\n\n componentWillUnmount() {\n if (isBrowser) {\n // eslint-disable-next-line no-underscore-dangle\n window.__getYouwellVariable = null;\n }\n }\n\n getYouwellVariable = (variableName) => {\n const { currentProgram, patientData, showVariableNameIfNull, customVariables } = this.props;\n\n let value = customVariables?.[variableName];\n\n if (!value) {\n value = valueFromCommonVariables(variableName, patientData, currentProgram);\n }\n\n if (!value) {\n value = currentProgram?.settings?.keyValues?.[variableName];\n }\n\n if (!value) {\n value = showVariableNameIfNull ? `[${variableName}]` : '';\n }\n\n return value;\n }\n\n render() {\n return null;\n }\n}\n\nContentVariableLoader.propTypes = {\n patientData: PropTypes.object,\n currentProgram: PropTypes.object,\n showVariableNameIfNull: PropTypes.bool,\n customVariables: PropTypes.object,\n};\n\nContentVariableLoader.defaultProps = {\n patientData: null,\n currentProgram: null,\n showVariableNameIfNull: false,\n customVariables: null,\n};\n\nexport default ContentVariableLoader;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\n\nimport {\n Button,\n createStyles,\n makeStyles,\n Typography,\n} from '@material-ui/core';\n\nexport const styles = theme => createStyles({\n root: {\n display: 'flex',\n alignItems: 'center',\n },\n button: {\n fontSize: theme.typography.h4.fontSize,\n background: theme.palette.common.white,\n width: 60,\n height: 60,\n borderRadius: '50%',\n },\n display: {\n margin: theme.spacing(2),\n fontSize: theme.typography.h4.fontSize,\n },\n});\n\nconst useStyles = makeStyles(theme => styles(theme), { name: 'Counter' });\n\nconst Counter = ({ onChange, value, ...rest }) => {\n const classes = useStyles();\n const onClick = increase => () => {\n onChange({ target: { value: value + increase } });\n };\n\n return (\n \n \n \n {value}\n \n \n
\n );\n};\n\nCounter.propTypes = {\n onChange: PropTypes.func.isRequired,\n value: PropTypes.number,\n};\n\nCounter.defaultProps = {\n value: 0,\n};\n\nexport default Counter;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar core_1 = require(\"@material-ui/core\");\nvar React = __importStar(require(\"react\"));\nvar dateUtils_1 = require(\"../../youwell-common/dateUtils\");\nvar icons_1 = require(\"../icons\");\nvar store_1 = require(\"../../app/store\");\nvar styles = function (theme) { return (0, core_1.createStyles)({\n root: {\n display: 'flex',\n alignItems: 'center',\n },\n iconButton: {},\n label: {\n margin: theme.spacing(0, 1),\n padding: theme.spacing(0, 4),\n textTransform: 'capitalize',\n },\n description: {\n color: theme.youwell.colors.secondary,\n },\n}); };\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return styles(theme); }, { name: 'DaySelector' });\nvar DaySelector = function (_a) {\n var onChange = _a.onChange, selectedDate = _a.selectedDate, allowOutOfProgramDays = _a.allowOutOfProgramDays;\n var classes = useStyles();\n var programStartDate = (0, store_1.useYouwellSelector)(function (state) { var _a; return (_a = state.programStore.currentProgram) === null || _a === void 0 ? void 0 : _a.startDate; });\n var setDate = function (date) {\n if (onChange) {\n onChange(date);\n }\n };\n var next = function () {\n setDate((0, dateUtils_1.addDays)(selectedDate, 1));\n };\n var prev = function () {\n setDate((0, dateUtils_1.addDays)(selectedDate, -1));\n };\n return (React.createElement(\"div\", { className: classes.root },\n React.createElement(core_1.IconButton, { color: \"secondary\", onClick: prev, className: classes.iconButton, disabled: (!allowOutOfProgramDays && programStartDate) ? new Date(programStartDate) > selectedDate : false },\n React.createElement(icons_1.PrevIcon, null)),\n React.createElement(\"div\", { className: classes.label },\n React.createElement(core_1.Typography, { variant: \"h6\", color: \"primary\", align: \"center\" }, (0, dateUtils_1.shortDate)(selectedDate))),\n React.createElement(core_1.IconButton, { color: \"secondary\", onClick: next, className: classes.iconButton, disabled: selectedDate > new Date() },\n React.createElement(icons_1.NextIcon, null))));\n};\nDaySelector.defaultProps = {\n allowOutOfProgramDays: false,\n};\nexports.default = DaySelector;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport { withStyles } from '@material-ui/core/styles';\nimport { bindActionCreators } from 'redux';\n\nimport {\n IconButton,\n} from '@material-ui/core';\n\nimport * as ProgramStore from '../../app/store/ProgramStore';\nimport {\n FavouritesIcon, FavouritesUncheckedIcon,\n} from '../icons';\n\nconst styles = theme => ({\n icon: {\n fontSize: 'inherit',\n },\n iconChecked: {\n fontSize: 'inherit',\n color: theme.palette.primary.main,\n },\n});\n\nclass Favourite extends React.Component {\n toggleFavourite = (taskId, patientProgramElementId, isFav) => () => {\n const data = {\n taskId,\n patientProgramElementId,\n patientProgramId: this.props.programDetails.id,\n on: !isFav,\n };\n\n this.props.toggleFavourite(data, { reducerParams: { patientProgramId: data.patientProgramId } });\n }\n\n render() {\n const {\n classes, className, taskId, patientProgramElementId, programDetails, clientConfig, translate,\n } = this.props;\n\n if (!clientConfig.appSetup.features.favourites || !taskId || !programDetails) {\n return null;\n }\n\n const isFav = programDetails.favourites[taskId];\n\n return (\n \n {isFav ? () : ()}\n \n );\n }\n}\n\nFavourite.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n toggleFavourite: PropTypes.func.isRequired,\n clientConfig: PropTypes.object.isRequired,\n className: PropTypes.string,\n programDetails: PropTypes.object,\n taskId: PropTypes.string,\n patientProgramElementId: PropTypes.string,\n};\n\nFavourite.defaultProps = {\n className: null,\n programDetails: null,\n taskId: null,\n patientProgramElementId: null,\n};\n\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n programDetails: state.programStore.currentProgram,\n clientConfig: state.auth.clientConfig,\n});\n\nconst mapDispatchToProps = dispatch => ({\n ...bindActionCreators(ProgramStore.actionCreators, dispatch),\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(withStyles(styles)(Favourite));\n","import React, { useEffect, useState, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport { useDispatch, connect, useSelector } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport { Typography, Button, TextField } from '@material-ui/core';\n\nimport { makeStyles } from '@material-ui/core/styles';\nimport * as PublicStore from '../../app/store/PublicStore';\nimport { validateAllFields, validateEmail, validateRequired } from '../../youwell-common/validationUtils';\n\nconst useStyles = makeStyles(theme => ({\n nameAndEmail: {\n display: 'flex',\n flexDirection: 'row',\n '& > div': {\n margin: theme.spacing(1),\n },\n },\n submitButtonWrapper: {\n marginTop: theme.spacing(2),\n display: 'flex',\n alignItems: 'flex-end',\n flexDirection: 'column',\n },\n submitButton: {\n margin: theme.spacing(1),\n width: 240,\n },\n header: {\n margin: theme.spacing(1, 0),\n },\n description: {\n margin: theme.spacing(1, 0, 4),\n },\n form: {\n display: 'flex',\n flexDirection: 'column',\n },\n responseMsg: {\n margin: theme.spacing(1),\n },\n}));\n\nconst validators = {\n email: validateEmail,\n description: validateRequired,\n};\n\nconst initalFormState = () => ({\n name: '', email: '', description: '',\n});\n\nconst FeedbackForm = ({\n translate,\n}) => {\n const dispatch = useDispatch();\n const classes = useStyles();\n const formRef = useRef();\n\n const appConfig = useSelector(state => state.pageSettings.appConfig);\n const profileData = useSelector(state => state.auth.profileData);\n const [formState, setFormState] = useState(initalFormState());\n\n const [isEmailValid, setIsEmailValid] = useState(true);\n const [isFormValid, setIsFormValid] = useState(true);\n const [feedbackFormSent, setFeedbackFormSent] = useState(false);\n\n const handleFormChange = name => (e) => {\n setFormState({ ...formState, [name]: e.target.value });\n };\n\n useEffect(() => {\n if (formState.name || formState.email || formState.description) {\n setFeedbackFormSent(false);\n }\n const validationErrors = validateAllFields(formState, validators);\n setIsEmailValid(!validationErrors.email);\n setIsFormValid(!validationErrors.description);\n }, [formState]);\n\n const handleSubmitForm = (e) => {\n e.preventDefault();\n const feedbackData = {\n ...formState,\n organizationId: appConfig?.orgId || profileData?.organization?.id,\n app: appConfig?.appName,\n };\n dispatch(PublicStore.actionCreators.sendFeedbackFromForm(feedbackData, { callback: () => {\n setFormState(initalFormState());\n formRef.current.reset();\n setFeedbackFormSent(true);\n } }));\n };\n\n const includeNameAndEmail = false;\n\n return (\n
\n
\n \n {translate('feedback.title')}\n \n\n \n {translate('feedback.description')}\n \n\n {includeNameAndEmail && (\n
\n \n \n
\n )}\n\n \n\n
\n \n {feedbackFormSent && translate('feedback.messageSubmitted')}\n
\n
\n
\n );\n};\n\nFeedbackForm.propTypes = {\n translate: PropTypes.func.isRequired,\n};\n\nFeedbackForm.defaultProps = {};\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n});\n\nexport default connect(mapStateToProps)(FeedbackForm);\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar core_1 = require(\"@material-ui/core\");\nvar mediaUpload_1 = require(\"../../youwell-common/mediaUpload\");\nvar errorUtils_1 = require(\"../../youwell-common/errorUtils\");\nvar constants_1 = require(\"../../youwell-common/constants\");\nvar store_1 = require(\"../../app/store\");\nvar translate_1 = __importDefault(require(\"../../app/localization/translate\"));\nvar icons_1 = require(\"../../youwell-common/icons\");\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return ({\n root: {},\n input: {\n display: 'none',\n },\n error: {\n marginTop: theme.spacing(1),\n },\n selectedFile: {\n display: 'inline-flex',\n alignItems: 'center',\n padding: theme.spacing(1),\n },\n attachedCaption: {\n marginRight: theme.spacing(1),\n },\n clearIcon: {\n marginLeft: theme.spacing(1),\n height: 40,\n width: 40,\n },\n}); }, { name: 'FileUpload' });\nvar getErrorMessage = function (errorMessageOrCode) {\n var errorCode = Number(errorMessageOrCode);\n if (errorCode === 1110) {\n return 'fileUpload.invalidFiletypes';\n }\n if (Number.isNaN(errorCode)) {\n return 'uploadFailed';\n }\n return \"errors.\".concat(errorMessageOrCode);\n};\nvar FileUpload = function (_a) {\n var className = _a.className, onSelected = _a.onSelected, filetypes = _a.filetypes;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var appConfig = (0, store_1.useYouwellSelector)(function (state) { return state.pageSettings.appConfig; });\n var _b = React.useState(false), isUploading = _b[0], setIsUploading = _b[1];\n var _c = React.useState(''), errorMessage = _c[0], setErrorMessage = _c[1];\n var _d = React.useState(''), fileName = _d[0], setFileName = _d[1];\n var clearFile = function () {\n onSelected(null);\n setFileName('');\n };\n var handleFileUpload = function (event) {\n var _a;\n var file = (_a = event.target.files) === null || _a === void 0 ? void 0 : _a[0];\n if (file) {\n setIsUploading(true);\n (0, mediaUpload_1.uploadPatientFile)(file)\n .then(function (data) {\n onSelected(data);\n setFileName(data.name);\n setIsUploading(false);\n })\n .catch(function (error) {\n (0, errorUtils_1.sendError)({ sender: 'FileUpload', error: 'Failed to upload file', info: error && error.toString() });\n setIsUploading(false);\n setErrorMessage(getErrorMessage(error.message));\n });\n }\n else {\n clearFile();\n }\n };\n // const url = fileId ? `${apiUrls.baseUrl}/${apiUrls.app.media}/${fileId}` : '';\n var id = \"file_upload_\".concat(Date.now());\n var acceptedTypes = filetypes === null || filetypes === void 0 ? void 0 : filetypes.map(mediaUpload_1.getAccept).join(',');\n return (React.createElement(\"div\", { className: (0, classnames_1.default)(classes.root, className) }, fileName ? (React.createElement(\"div\", { className: classes.selectedFile },\n React.createElement(core_1.Typography, { className: classes.attachedCaption }, \"\".concat(translate('fileUpload.attached'), \": \")),\n React.createElement(core_1.Typography, { color: \"textSecondary\" }, fileName),\n React.createElement(core_1.IconButton, { onClick: clearFile, className: classes.clearIcon, title: translate('fileUpload.removeFile') },\n React.createElement(icons_1.ClearIcon, null)))) : (React.createElement(React.Fragment, null,\n React.createElement(\"input\", { accept: acceptedTypes, className: classes.input, onChange: handleFileUpload, id: id, type: \"file\" }),\n React.createElement(\"label\", { htmlFor: id },\n React.createElement(core_1.Button, { color: \"primary\", component: \"span\", disabled: isUploading }, isUploading ? (React.createElement(core_1.CircularProgress, { size: 20 })) : translate('fileUpload.attachFile'))),\n errorMessage && (React.createElement(\"div\", { className: classes.error },\n React.createElement(core_1.Typography, { color: \"error\" }, translate(errorMessage, { maxUploadSizeMB: appConfig.maxUploadSizeMB }))))))));\n};\nFileUpload.defaultProps = {\n className: null,\n filetypes: [constants_1.fileTypes.image, constants_1.fileTypes.audio, constants_1.fileTypes.document],\n};\nexports.default = FileUpload;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.useStyles = void 0;\nvar React = __importStar(require(\"react\"));\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar core_1 = require(\"@material-ui/core\");\nvar urls_1 = __importDefault(require(\"../../app/urls\"));\nvar store_1 = require(\"../../app/store\");\nvar translate_1 = __importDefault(require(\"../../app/localization/translate\"));\nvar youwell_common_1 = require(\"../../youwell-common\");\nvar Auth_1 = require(\"../../youwell-common/Auth\");\nexports.useStyles = (0, core_1.makeStyles)(function (theme) {\n var _a;\n return ({\n root: (_a = {\n position: 'relative',\n zIndex: theme.zIndex.drawer,\n marginTop: theme.spacing(4),\n borderTop: theme.youwell.borders.dim,\n width: '100%',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n flexWrap: 'wrap',\n background: theme.palette.background.default,\n padding: theme.spacing(2)\n },\n _a[theme.breakpoints.down('xs')] = {\n marginTop: theme.spacing(8),\n padding: theme.spacing(4, 1),\n },\n _a),\n footerLink: {\n margin: theme.spacing(0.5, 4),\n '&:hover': {\n textDecoration: 'underline',\n },\n },\n });\n});\nvar Footer = function () {\n var translate = (0, translate_1.default)();\n var classes = (0, exports.useStyles)();\n // Duplicate entries with some data in different cases.. Should be fixed!\n var configFromAuth = (0, store_1.useYouwellSelector)(function (state) { return state.auth.clientConfig; });\n var configFromSettings = (0, store_1.useYouwellSelector)(function (state) { return state.pageSettings.orgConfig; });\n var clientConfig = (configFromSettings === null || configFromSettings === void 0 ? void 0 : configFromSettings.initializedFromOrgConfig) ? configFromSettings : configFromAuth;\n if (!(clientConfig.z_PrivacyPolicyTaskId || clientConfig.z_UUReportTaskId)) {\n return null;\n }\n var singlePageBase = youwell_common_1.Auth.isUserAuthenticated(Auth_1.authTypes.user) ? urls_1.default.inside.pages.singlepage : urls_1.default.singlepage;\n return (React.createElement(\"div\", { className: classes.root },\n clientConfig.z_PrivacyPolicyTaskId && (React.createElement(react_router_dom_1.Link, { to: \"\".concat(singlePageBase, \"/\").concat(clientConfig.z_PrivacyPolicyTaskId), className: classes.footerLink },\n React.createElement(core_1.Typography, { color: \"primary\" }, translate('footer.privacyPolicy')))),\n clientConfig.z_UUReportTaskId && (React.createElement(React.Fragment, null, clientConfig.z_UUReportTaskId.startsWith('http') ? (React.createElement(core_1.Link, { href: clientConfig.z_UUReportTaskId, className: classes.footerLink, target: \"_blank\" },\n React.createElement(core_1.Typography, { color: \"primary\" }, translate('footer.uuReport')))) : (React.createElement(react_router_dom_1.Link, { to: \"\".concat(singlePageBase, \"/\").concat(clientConfig.z_UUReportTaskId), className: classes.footerLink },\n React.createElement(core_1.Typography, { color: \"primary\" }, translate('footer.uuReport'))))))));\n};\nexports.default = Footer;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.HeaderLink = void 0;\nvar React = __importStar(require(\"react\"));\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar core_1 = require(\"@material-ui/core\");\nvar urls_1 = __importDefault(require(\"../../app/urls\"));\nvar TrackedLink_1 = __importDefault(require(\"./TrackedLink\"));\nvar constants_1 = require(\"../constants\");\nvar icons_1 = require(\"../icons\");\nvar theme_1 = require(\"../../app/style/theme\");\nvar Auth_1 = __importDefault(require(\"../../youwell-common/Auth\"));\nvar appSetup_1 = require(\"../../app/appSetup\");\nvar objectUtils_1 = require(\"../../youwell-common/objectUtils\");\nvar constants_2 = require(\"../../youwell-common/constants\");\nvar ElementIconOrDefault_1 = require(\"../icons/ElementIconOrDefault\");\nvar Logo_1 = __importDefault(require(\"../image/logo/Logo\"));\nvar taskUtils_1 = require(\"../taskUtils\");\nvar store_1 = require(\"../../app/store\");\nvar AuthStore = __importStar(require(\"../../app/store/AuthStore\"));\nvar translate_1 = __importDefault(require(\"../../app/localization/translate\"));\nvar headerLinksBreakWidth = 785;\nvar useStyles = (0, core_1.makeStyles)(function (theme) {\n var _a, _b, _c, _d, _e, _f, _g;\n return ({\n root: (_a = {\n height: theme_1.headerHeight,\n padding: theme.spacing(1, 0),\n background: theme.youwell.colors.lightGreen,\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center'\n },\n _a[theme.breakpoints.down('md')] = {\n padding: theme.spacing(1, 4),\n justifyContent: 'space-between',\n },\n _a[theme.breakpoints.down('sm')] = {\n padding: theme.spacing(1, 3),\n },\n _a[theme.breakpoints.down('xs')] = {\n padding: theme.spacing(1, 2),\n },\n _a['& a, & button'] = {\n boxShadow: 'none',\n fontSize: '0.9em',\n },\n _a),\n leftTitle: {\n display: 'flex',\n alignItems: 'center',\n padding: theme.spacing(0, 1),\n color: theme.palette.primary.main,\n },\n titleText: {\n fontWeight: 500,\n fontSize: '1.25em',\n },\n pageTitle: {\n flex: '1 1 auto',\n },\n flex: (_b = {\n flex: '1 1 auto',\n display: 'flex',\n justifyContent: 'center'\n },\n _b[theme.breakpoints.down('xs')] = {\n display: 'none',\n },\n _b),\n headerLinks: (_c = {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'flex-end'\n },\n _c[theme.breakpoints.down('xs')] = {\n display: 'none',\n },\n _c),\n stayOnSmall: {},\n link: (_d = {\n display: 'flex',\n alignItems: 'center',\n padding: theme.spacing(0.5, 1.75)\n },\n _d[theme.breakpoints.down(headerLinksBreakWidth)] = {\n marginRight: theme.spacing(3),\n },\n _d[theme.breakpoints.down('xs')] = {\n display: 'none',\n '&$stayOnSmall': {\n display: 'flex',\n marginRight: 0,\n },\n },\n _d),\n linkContent: {\n display: 'flex',\n alignItems: 'center',\n color: theme.palette.primary.main,\n },\n linkIcon: (_e = {\n marginRight: theme.spacing(0.5),\n fontSize: theme.typography.body2.fontSize\n },\n _e[theme.breakpoints.down(headerLinksBreakWidth)] = {\n marginRight: 0,\n fontSize: '1.5rem',\n '$stayOnSmall &': {\n marginRight: theme.spacing(0.5),\n },\n },\n _e['$iconOnly &'] = {\n fontSize: 24,\n },\n _e),\n iconOnly: {},\n linkText: (_f = {\n fontWeight: 500,\n fontSize: '1em'\n },\n _f[theme.breakpoints.down(headerLinksBreakWidth)] = {\n display: 'none',\n '$stayOnSmall &': {\n display: 'flex',\n },\n },\n _f),\n menuButton: {\n marginLeft: theme.spacing(3),\n padding: 0,\n color: theme.palette.primary.contrastText,\n },\n menuIcon: (_g = {\n fontSize: '2rem',\n color: theme.palette.primary.main\n },\n _g[theme.breakpoints.down('sm')] = {\n marginRight: theme.spacing(1),\n },\n _g),\n });\n});\nvar HeaderLink = function (_a) {\n var _b;\n var to = _a.to, text = _a.text, label = _a.label, classes = _a.classes, Icon = _a.Icon, unread = _a.unread, iconOnly = _a.iconOnly, stayOnSmall = _a.stayOnSmall, translate = _a.translate;\n return (\n // @ts-ignore -- to and label is not correct props for Button (but forwarded to TrackedLink..)\n React.createElement(core_1.Button, { to: to, label: \"\".concat(constants_1.activityLabels.header, \"/\").concat(label), \"aria-label\": translate ? \"\".concat(text, \" \").concat(unread, \" \").concat(unread === 1 ? translate('header.notification') : translate('header.notifications')) : \"\".concat(text, \" \").concat(unread), component: TrackedLink_1.default, variant: \"text\", className: (0, classnames_1.default)(classes.link, (_b = {}, _b[classes.iconOnly] = iconOnly, _b[classes.stayOnSmall] = stayOnSmall, _b)) },\n React.createElement(core_1.Badge, { badgeContent: unread, className: classes.badge, color: \"secondary\", overlap: \"rectangular\" },\n React.createElement(\"div\", { className: classes.linkContent },\n Icon && React.createElement(Icon, { className: classes.linkIcon }),\n !iconOnly && (React.createElement(core_1.Typography, { variant: \"caption\", color: \"inherit\", className: classes.linkText }, text))))));\n};\nexports.HeaderLink = HeaderLink;\nexports.HeaderLink.defaultProps = {\n unread: 0,\n text: null,\n Icon: null,\n iconOnly: false,\n stayOnSmall: false,\n translate: null,\n};\nvar Header = function (_a) {\n var _b;\n var onOpenMenu = _a.onOpenMenu, hideLinks = _a.hideLinks, hideMenu = _a.hideMenu, pageTitle = _a.pageTitle, hideAppTitle = _a.hideAppTitle, defaultItems = _a.defaultItems, headerActions = _a.headerActions;\n var translate = (0, translate_1.default)();\n var classes = useStyles();\n var dispatch = (0, store_1.useYouwellDispatch)();\n var profileData = (0, store_1.useYouwellSelector)(function (state) { return state.auth.profileData; });\n var clientConfig = (0, store_1.useYouwellSelector)(function (state) { return state.auth.clientConfig; });\n var unreadMessages = (0, store_1.useYouwellSelector)(function (state) { return state.user.unreadMessages; });\n var currentProgram = (0, store_1.useYouwellSelector)(function (state) { return state.programStore.currentProgram; });\n var appConfig = (0, store_1.useYouwellSelector)(function (state) { return state.pageSettings.appConfig; });\n var notifications = 0; // no notifications for menu (chat-ikon has own badge..)\n var appItems = ((_b = currentProgram === null || currentProgram === void 0 ? void 0 : currentProgram.appElements) === null || _b === void 0 ? void 0 : _b.filter(function (d) { return (d.label === constants_1.patientProgramAppElementSettings.trainingPlan || (0, taskUtils_1.hasElementSetting)(d, constants_1.patientProgramAppElementSettings.header, true)) && !d.disabled; })) || [];\n var hasCurrentProgram = (0, objectUtils_1.hasValue)(currentProgram);\n var hasActiveProgram = currentProgram === null || currentProgram === void 0 ? void 0 : currentProgram.isActiveProgram;\n var allowMenu = clientConfig.appSetup.features.menu && !hideMenu;\n var homeLink = hasCurrentProgram ? urls_1.default.inside.home : urls_1.default.home;\n var logoutOrg = function () {\n dispatch(AuthStore.actionCreators.logoutOrg());\n };\n var logoHeight = theme_1.headerHeight - 8;\n var renderItem = function (item) {\n var _a, _b;\n switch (item) {\n case appSetup_1.headerItems.title:\n return !hideAppTitle && (\n // @ts-ignore -- to and label is not correct props for Button (but forwarded to TrackedLink..)\n React.createElement(core_1.Button, { key: appSetup_1.headerItems.title, variant: \"text\", component: TrackedLink_1.default, to: homeLink, label: \"\".concat(constants_1.activityLabels.header, \"/\").concat(appSetup_1.headerItems.title), className: classes.lefxtTitle, title: translate('header.toMainPage') }, !appConfig.titleLogo ? (React.createElement(Logo_1.default, { height: logoHeight })) : (React.createElement(core_1.Typography, { variant: \"subtitle1\", color: \"inherit\", className: classes.titleText }, clientConfig.appName || appConfig.appName || translate('header.title')))));\n case appSetup_1.headerItems.pageTitle:\n return (React.createElement(\"div\", { key: appSetup_1.headerItems.pageTitle, className: classes.pageTitle, \"aria-label\": pageTitle },\n React.createElement(core_1.Typography, { align: \"center\", variant: \"subtitle1\", color: \"textPrimary\", className: classes.titleText }, pageTitle)));\n case appSetup_1.headerItems.flex:\n return (React.createElement(\"div\", { key: appSetup_1.headerItems.flex, className: classes.flex }));\n case appSetup_1.headerItems.org:\n return (profileData === null || profileData === void 0 ? void 0 : profileData.connectedOrganizations) && ((_a = profileData === null || profileData === void 0 ? void 0 : profileData.connectedOrganizations) === null || _a === void 0 ? void 0 : _a.length) > 1 && (React.createElement(core_1.ButtonBase, { key: appSetup_1.headerItems.org, onClick: logoutOrg, className: classes.link },\n React.createElement(\"div\", { className: classes.linkContent },\n React.createElement(icons_1.OrgIcon, { className: classes.linkIcon }),\n React.createElement(core_1.Typography, { variant: \"caption\", color: \"inherit\", className: classes.linkText }, (_b = profileData.organization) === null || _b === void 0 ? void 0 : _b.name))));\n case appSetup_1.headerItems.menu:\n return allowMenu && (React.createElement(core_1.IconButton, { key: appSetup_1.headerItems.menu, color: \"inherit\", \"aria-label\": translate('openMenu'), onClick: onOpenMenu, className: classes.menuButton },\n React.createElement(core_1.Badge, { badgeContent: notifications, color: \"secondary\", overlap: \"rectangular\" },\n React.createElement(icons_1.MenuIcon, { className: classes.menuIcon }))));\n case appSetup_1.headerItems.chat:\n return hasActiveProgram && !hideLinks && clientConfig.appSetup.features.chat && (React.createElement(exports.HeaderLink, { key: appSetup_1.headerItems.chat, label: appSetup_1.headerItems.chat, to: urls_1.default.inside.chat, text: translate('header.messages'), classes: classes, Icon: icons_1.ChatIcon, unread: unreadMessages, iconOnly: true, stayOnSmall: true }));\n case appSetup_1.headerItems.favourites:\n return hasCurrentProgram && !hideLinks && clientConfig.appSetup.features.favourites && (React.createElement(exports.HeaderLink, { key: appSetup_1.headerItems.favourites, label: appSetup_1.headerItems.favourites, to: urls_1.default.inside.pages.favourites, text: translate('header.favourites'), classes: classes, Icon: icons_1.FavouritesIcon, translate: translate }));\n case appSetup_1.headerItems.profile:\n return !hideLinks && clientConfig.appSetup.features.profile && (React.createElement(exports.HeaderLink, { key: appSetup_1.headerItems.profile, label: appSetup_1.headerItems.profile, to: urls_1.default.inside.profile, text: translate('header.myProfile'), classes: classes, Icon: icons_1.PersonIcon, translate: translate }));\n case appSetup_1.headerItems.logout:\n return Auth_1.default.getLoginLevel() > constants_2.loginLevels.key && (React.createElement(exports.HeaderLink, { key: appSetup_1.headerItems.logout, label: appSetup_1.headerItems.logout, to: urls_1.default.logout, text: translate('logout'), classes: classes, Icon: icons_1.LogoutIcon, stayOnSmall: !allowMenu, translate: translate }));\n case appSetup_1.headerItems.login:\n return Auth_1.default.getLoginLevel() < 1 && (React.createElement(exports.HeaderLink, { key: appSetup_1.headerItems.login, label: appSetup_1.headerItems.login, to: urls_1.default.login, text: translate('login.login'), classes: classes, stayOnSmall: !allowMenu }));\n case appSetup_1.headerItems.appItems: {\n return !hideLinks && appItems.map(function (el) { return (React.createElement(exports.HeaderLink, { key: el.id, to: \"\".concat(urls_1.default.inside.program, \"/\").concat(el.elementGroup, \"/\").concat(el.indexInGroup), text: el.name, classes: classes, label: \"app/\".concat(el.name), Icon: (0, ElementIconOrDefault_1.getElementIcon)(el), translate: translate })); });\n }\n case appSetup_1.headerItems.pages: {\n return !hideLinks && hasActiveProgram && clientConfig.appSetup.pages.filter(function (d) { return hasCurrentProgram || !d.hideIfNoProgram; }).map(function (el) { return (React.createElement(exports.HeaderLink, { key: el.key, to: el.url, text: translate(el.nameKey), classes: classes, label: \"page/\".concat(el.key), Icon: el.Icon, translate: translate })); });\n }\n case appSetup_1.headerItems.customActions: {\n return headerActions === null || headerActions === void 0 ? void 0 : headerActions.map(function (action) { return (React.createElement(core_1.Button, { key: action.text, onClick: action.action, color: \"primary\", variant: \"contained\", className: (0, classnames_1.default)(classes.link, classes.stayOnSmall) },\n React.createElement(\"div\", { className: classes.linkContent },\n React.createElement(core_1.Typography, { variant: \"caption\", color: \"inherit\", className: classes.linkText }, action.text)))); });\n }\n default:\n return null;\n }\n };\n var hasMenuInHeader = clientConfig.appSetup.header.findIndex(function (d) { return d === appSetup_1.headerItems.menu; }) > -1;\n var hasLogoutInHeader = clientConfig.appSetup.header.findIndex(function (d) { return d === appSetup_1.headerItems.logout; }) > -1;\n return (React.createElement(\"div\", { className: classes.root }, !hasCurrentProgram ? defaultItems === null || defaultItems === void 0 ? void 0 : defaultItems.map(renderItem) : (React.createElement(React.Fragment, null,\n clientConfig.appSetup.header.map(renderItem),\n allowMenu && !hasMenuInHeader && (React.createElement(core_1.Hidden, { implementation: \"css\", smUp: true }, renderItem(appSetup_1.headerItems.menu))),\n !allowMenu && !hasLogoutInHeader\n && renderItem(appSetup_1.headerItems.logout)))));\n};\nHeader.defaultProps = {\n hideLinks: false,\n hideMenu: false,\n hideAppTitle: false,\n pageTitle: null,\n onOpenMenu: null,\n defaultItems: [appSetup_1.headerItems.title, appSetup_1.headerItems.flex, appSetup_1.headerItems.org, appSetup_1.headerItems.logout],\n headerActions: null,\n};\nexports.default = Header;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport { withStyles } from '@material-ui/core/styles';\n\nimport { Typography } from '@material-ui/core';\n\nconst styles = theme => ({\n root: {\n margin: theme.spacing(8),\n padding: theme.spacing(8),\n border: theme.youwell.borders.dim,\n\n [theme.breakpoints.down('sm')]: {\n margin: theme.spacing(7, 5),\n padding: theme.spacing(7, 5),\n },\n\n [theme.breakpoints.down('xs')]: {\n margin: theme.spacing(6, 2),\n padding: theme.spacing(6, 2),\n },\n },\n text: {\n color: theme.youwell.colors.secondary,\n },\n});\n\nclass InfoMessage extends React.Component {\n render() {\n const {\n classes, translate, message, messageKey,\n } = this.props;\n\n if (!message && !messageKey) {\n return null;\n }\n\n return (\n
\n \n {message}\n {messageKey && translate(messageKey)}\n \n
\n );\n }\n}\n\nInfoMessage.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n messageKey: PropTypes.string,\n message: PropTypes.string,\n};\n\nInfoMessage.defaultProps = {\n message: null,\n messageKey: null,\n};\n\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n});\n\nexport default connect(mapStateToProps)(withStyles(styles)(InfoMessage));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\nimport { isBrowser } from '../../youwell-common/browserUtils';\n\nimport * as ProgramStore from '../../app/store/ProgramStore';\n\nclass InternalLinkLoader extends React.Component {\n componentDidMount() {\n if (isBrowser) {\n // eslint-disable-next-line no-underscore-dangle\n window.__clickInternalLink = this.clickInternalLink;\n }\n }\n\n componentWillUnmount() {\n if (isBrowser) {\n // eslint-disable-next-line no-underscore-dangle\n window.__clickInternalLink = null;\n }\n }\n\n clickInternalLink = (elementId) => {\n const url = this.getLinkUrl({ url: elementId });\n this.props.redirect(url);\n }\n\n getLinkUrl = link => this.props.linkUrlFunction(link)\n\n render() {\n return null;\n }\n}\n\nInternalLinkLoader.propTypes = {\n redirect: PropTypes.func.isRequired,\n linkUrlFunction: PropTypes.func.isRequired,\n};\n\nconst mapStateToProps = state => ({\n clientConfig: state.auth.clientConfig,\n});\n\nconst mapDispatchToProps = dispatch => ({\n ...bindActionCreators(ProgramStore.actionCreators, dispatch),\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(InternalLinkLoader);\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.useStyles = exports.contentWidth = void 0;\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar styles_1 = require(\"@material-ui/core/styles\");\nvar MenuContent_1 = __importDefault(require(\"./MenuContent\"));\nvar Header_1 = __importDefault(require(\"./Header\"));\nvar components_1 = require(\"../../youwell-common/components\");\nvar AuthStore = __importStar(require(\"../../app/store/AuthStore\"));\nvar theme_1 = require(\"../../app/style/theme\");\nvar icons_1 = require(\"../icons\");\nvar store_1 = require(\"../../app/store\");\nvar translate_1 = __importDefault(require(\"../../app/localization/translate\"));\nvar Footer_1 = __importDefault(require(\"./Footer\"));\nexports.contentWidth = 1080;\nexports.useStyles = (0, styles_1.makeStyles)(function (theme) {\n var _a, _b, _c, _d;\n return ({\n root: {\n background: theme.palette.background.default,\n display: 'flex',\n justifyContent: 'center',\n },\n header: (_a = {\n position: 'fixed',\n width: '100vw',\n paddingRight: theme_1.scrollerWidth,\n height: theme_1.headerHeight,\n background: theme.palette.background.default,\n display: 'flex',\n justifyContent: 'center',\n zIndex: 100\n },\n _a[theme.breakpoints.down('xs')] = {\n paddingRight: 0,\n },\n _a['@media print'] = {\n display: 'none',\n },\n _a),\n headerContent: (_b = {\n width: '100%',\n maxWidth: exports.contentWidth\n },\n _b[theme.breakpoints.up('lg')] = {\n width: exports.contentWidth - theme_1.scrollerWidth,\n },\n _b),\n errorMessage: (_c = {\n maxWidth: 720,\n padding: theme.spacing(2, 4, 0)\n },\n _c[theme.breakpoints.down('sm')] = {\n padding: theme.spacing(2, 4.5, 0),\n },\n _c[theme.breakpoints.down('xs')] = {\n padding: theme.spacing(1, 1.5, 0),\n },\n _c),\n content: (_d = {\n marginTop: theme_1.headerHeight,\n width: '100%',\n minHeight: '100vh',\n maxWidth: exports.contentWidth\n },\n _d[theme.breakpoints.up('lg')] = {\n width: exports.contentWidth - theme_1.scrollerWidth,\n },\n _d[theme.breakpoints.down('xs')] = {\n boxShadow: 'none',\n minHeight: 0,\n },\n _d['@media print'] = {\n marginTop: 0,\n minHeight: 0,\n },\n _d),\n mainContent: {},\n closeButton: {\n position: 'absolute',\n right: 8,\n top: 8,\n padding: theme.spacing(1),\n zIndex: 1,\n },\n menu: {\n background: theme.palette.common.white,\n },\n });\n});\nvar Layout = function (_a) {\n var children = _a.children, hideHeaderLinks = _a.hideHeaderLinks, hideMenu = _a.hideMenu, headerPageTitle = _a.headerPageTitle, hideAppTitle = _a.hideAppTitle, muteErrors = _a.muteErrors;\n var dispatch = (0, store_1.useYouwellDispatch)();\n var classes = (0, exports.useStyles)();\n var translate = (0, translate_1.default)();\n var loading = (0, store_1.useYouwellSelector)(function (state) { return state.auth.loading || state.programStore.loading || state.user.loading || state.publicStore.loading || state.previewStore.loading || state.requestStatusStore.loading; });\n var authErrors = (0, store_1.useYouwellSelector)(function (state) { return state.auth.errors; });\n var programErrors = (0, store_1.useYouwellSelector)(function (state) { return state.programStore.errors; });\n var userErrors = (0, store_1.useYouwellSelector)(function (state) { return state.user.errors; });\n var publicStoreErrors = (0, store_1.useYouwellSelector)(function (state) { return state.publicStore.errors; });\n var previewStoreErrors = (0, store_1.useYouwellSelector)(function (state) { return state.previewStore.errors; });\n var requestStatusStoreErrors = (0, store_1.useYouwellSelector)(function (state) { return state.requestStatusStore.errors; });\n var errorMessage = [].concat(authErrors, programErrors, userErrors, publicStoreErrors, previewStoreErrors, requestStatusStoreErrors).filter(function (val) { return val; }).join('
');\n var pageNotFound = (0, store_1.useYouwellSelector)(function (state) { return state.pageSettings.pageNotFound; });\n var _b = React.useState(null), menuAnchorElement = _b[0], setMenuAnchorElement = _b[1];\n var openMenu = function (event) {\n if (event) {\n setMenuAnchorElement(event.currentTarget);\n }\n };\n var closeMenu = function () {\n setMenuAnchorElement(null);\n };\n var clearErrors = function () {\n dispatch(AuthStore.actionCreators.clearError());\n };\n var navigateMenu = function (event) {\n var key = event.key;\n if (key === 'Escape' || key === 'Backspace') {\n closeMenu();\n }\n };\n return (React.createElement(React.Fragment, null,\n React.createElement(\"div\", { className: classes.root },\n React.createElement(components_1.ErrorBoundary, { id: \"Layout_Header\" },\n React.createElement(\"div\", { className: classes.header },\n React.createElement(\"div\", { className: classes.headerContent },\n React.createElement(Header_1.default, { onOpenMenu: openMenu, hideLinks: hideHeaderLinks, hideMenu: hideMenu, hideAppTitle: hideAppTitle, pageTitle: headerPageTitle })))),\n React.createElement(\"div\", { className: classes.content },\n React.createElement(components_1.ErrorBoundary, { id: \"Layout_Content\" }, pageNotFound ? (React.createElement(components_1.PageNotFound, null)) : (React.createElement(React.Fragment, null,\n React.createElement(\"div\", null,\n React.createElement(components_1.ErrorMessage, { className: classes.errorMessage, message: errorMessage, onClear: clearErrors, muteErrors: muteErrors, scrollMarginTop: theme_1.headerHeight })),\n React.createElement(\"div\", { className: classes.mainContent }, children)))))),\n React.createElement(components_1.ErrorBoundary, { id: \"Layout_Footer\" },\n React.createElement(Footer_1.default, null)),\n React.createElement(components_1.ErrorBoundary, { id: \"Layout_Loading\" },\n React.createElement(components_1.Loading, { loading: loading })),\n React.createElement(components_1.ErrorBoundary, { id: \"Layout_SideMenu\" },\n React.createElement(core_1.Hidden, { implementation: \"js\", smUp: true },\n React.createElement(core_1.Drawer, { anchor: \"right\", open: !!menuAnchorElement, onClose: closeMenu },\n React.createElement(\"div\", { tabIndex: 0, role: \"button\", onClick: closeMenu, onKeyDown: navigateMenu, className: classes.menu },\n React.createElement(MenuContent_1.default, null),\n React.createElement(core_1.IconButton, { \"aria-label\": translate('menu.close'), className: classes.closeButton },\n React.createElement(icons_1.CloseIcon, null))))),\n React.createElement(core_1.Hidden, { implementation: \"js\", xsDown: true },\n React.createElement(core_1.Menu, { id: \"app-menu\", classes: { paper: classes.menu }, anchorEl: menuAnchorElement, open: !!menuAnchorElement, onClose: closeMenu, onClick: closeMenu, onKeyDown: navigateMenu, anchorOrigin: {\n vertical: 'bottom',\n horizontal: 'right',\n }, transformOrigin: {\n vertical: 'top',\n horizontal: 'right',\n }, getContentAnchorEl: null, disableAutoFocusItem: true },\n React.createElement(MenuContent_1.default, null),\n React.createElement(core_1.IconButton, { \"aria-label\": translate('menu.close'), className: classes.closeButton },\n React.createElement(icons_1.CloseIcon, null)))))));\n};\nLayout.defaultProps = {\n children: null,\n hideHeaderLinks: false,\n hideMenu: false,\n hideAppTitle: false,\n headerPageTitle: null,\n muteErrors: null,\n};\nexports.default = Layout;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { ListItem, ListItemText, ListItemIcon } from '@material-ui/core';\n\nimport { Link } from 'react-router-dom';\n\nconst styles = () => ({\n\n listItem: {\n borderWidth: '1px 0',\n marginBottom: 10,\n },\n listItemText: {\n paddingLeft: 0,\n },\n inactive: {\n },\n alert: {\n },\n});\n\nclass LinkListItem extends React.Component {\n render() {\n const {\n classes,\n to,\n Icon,\n primary,\n secondary,\n inactive,\n alert,\n } = this.props;\n\n let classname = '';\n if (inactive) {\n classname = classes.inactive;\n } else if (alert) {\n classname = classes.alert;\n }\n\n return (\n \n \n \n {Icon && (\n \n {Icon}\n \n )}\n \n \n );\n }\n}\n\nLinkListItem.propTypes = {\n classes: PropTypes.object.isRequired,\n to: PropTypes.string.isRequired,\n primary: PropTypes.string.isRequired,\n secondary: PropTypes.string,\n Icon: PropTypes.element,\n inactive: PropTypes.bool,\n alert: PropTypes.bool,\n};\n\nLinkListItem.defaultProps = {\n secondary: null,\n Icon: null,\n inactive: false,\n alert: false,\n};\n\nexport default withStyles(styles)(LinkListItem);\n","import * as React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport {\r\n Button, Menu, MenuItem, IconButton,\r\n} from '@material-ui/core';\r\nimport TrackedLink from './TrackedLink';\r\n\r\nconst styles = () => ({\r\n\r\n linkMenu: {\r\n top: 40,\r\n },\r\n});\r\n\r\nclass LinkMenu extends React.Component {\r\n state = {\r\n anchorEl: null,\r\n };\r\n\r\n handleClick = (event) => {\r\n this.setState({ anchorEl: event.currentTarget });\r\n };\r\n\r\n handleClose = () => {\r\n this.setState({ anchorEl: null });\r\n };\r\n\r\n render() {\r\n const {\r\n classes, icon, label, links,\r\n } = this.props;\r\n const { anchorEl } = this.state;\r\n\r\n return (\r\n
\r\n {icon ? (\r\n \r\n {icon}\r\n \r\n ) : (\r\n \r\n {label}\r\n \r\n )}\r\n \r\n {links.map(link => (\r\n \r\n {link.text}\r\n \r\n ))}\r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nLinkMenu.propTypes = {\r\n classes: PropTypes.object.isRequired,\r\n links: PropTypes.array.isRequired,\r\n icon: PropTypes.node,\r\n label: PropTypes.string,\r\n};\r\n\r\nLinkMenu.defaultProps = {\r\n icon: null,\r\n label: null,\r\n};\r\n\r\nconst WithRef = withStyles(styles)(LinkMenu);\r\n\r\nexport default React.forwardRef((props, ref) => );\r\n","import * as React from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\n\nimport * as PageSettingStore from '../../app/store/PageSettingStore';\n\nconst LoadAppContent = () => {\n const dispatch = useDispatch();\n const appContentProgramId = useSelector(state => state.pageSettings.appConfig?.appContentProgramId);\n const appContent = useSelector(state => state.pageSettings.appContent);\n\n React.useEffect(() => {\n if (appContentProgramId && !appContent) {\n dispatch(PageSettingStore.actionCreators.getAppContent(appContentProgramId));\n }\n }, [appContent, appContentProgramId, dispatch]);\n\n return null;\n};\n\nexport default LoadAppContent;\n","import * as React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport * as PageSettingStore from '../../app/store/PageSettingStore';\r\nimport { isEmpty } from '../../youwell-common/objectUtils';\r\nimport { useYouwellDispatch, useYouwellSelector } from '../../app/store';\r\n\r\nconst LoadOrgConfig = ({ orgId }) => {\r\n const dispatch = useYouwellDispatch();\r\n const appConfig = useYouwellSelector(state => state.pageSettings.appConfig);\r\n const orgConfig = useYouwellSelector(state => state.pageSettings.orgConfig);\r\n\r\n const orgIdFromPropOrStore = orgId ?? appConfig?.orgId;\r\n\r\n React.useEffect(() => {\r\n if (orgIdFromPropOrStore && isEmpty(orgConfig)) {\r\n dispatch(PageSettingStore.actionCreators.getOrgConfig(orgIdFromPropOrStore));\r\n }\r\n }, [dispatch, orgConfig, orgIdFromPropOrStore]);\r\n\r\n return null;\r\n}\r\n\r\nLoadOrgConfig.propTypes = {\r\n orgId: PropTypes.string,\r\n};\r\n\r\nLoadOrgConfig.defaultProps = {\r\n orgId: null,\r\n};\r\n\r\nexport default LoadOrgConfig;\r\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar styles_1 = require(\"@material-ui/core/styles\");\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar core_1 = require(\"@material-ui/core\");\nvar icons_1 = require(\"@material-ui/icons\");\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar icons_2 = require(\"../icons\");\nvar image_1 = require(\"../image\");\nvar ElementIconOrDefault_1 = __importDefault(require(\"../icons/ElementIconOrDefault\"));\nvar constants_1 = require(\"../constants\");\nvar urls_1 = __importDefault(require(\"../../app/urls\"));\nvar TrackedLink_1 = __importDefault(require(\"./TrackedLink\"));\nvar components_1 = require(\"../../youwell-common/components\");\nvar objectUtils_1 = require(\"../../youwell-common/objectUtils\");\nvar constants_2 = require(\"../../youwell-common/constants\");\nvar Auth_1 = __importDefault(require(\"../../youwell-common/Auth\"));\nvar taskUtils_1 = require(\"../taskUtils\");\nvar store_1 = require(\"../../app/store\");\nvar AuthStore = __importStar(require(\"../../app/store/AuthStore\"));\nvar translate_1 = __importDefault(require(\"../../app/localization/translate\"));\nvar useStyles = (0, styles_1.makeStyles)(function (theme) { return ({\n root: {\n padding: theme.spacing(1, 2),\n maxWidth: 300,\n },\n profileAvatar: {\n marginLeft: -6,\n marginRight: theme.spacing(3),\n background: theme.palette.primary.main,\n },\n divider: {\n margin: theme.spacing(2, 0),\n },\n noProfilePadding: {\n paddingTop: theme.spacing(6),\n },\n version: {\n marginTop: theme.spacing(2),\n },\n menuItem: {},\n icon: {\n color: theme.palette.primary.main,\n },\n active: {\n background: \"linear-gradient(90deg, \".concat(theme.palette.secondary.main, \" 0%, transparent 100%)\"),\n borderRadius: 25,\n },\n selected: {}, // Needed as ref\n}); });\n// Needed to extend MenuItemProps in custom component because TS does not accept that material ui components uses props from native elements.\nvar CustomMenuItem = function (_a) {\n var children = _a.children, to = _a.to, component = _a.component, label = _a.label, ariaLabel = _a.ariaLabel, onClick = _a.onClick;\n var extendingProps = { to: to, component: component, label: label, onClick: onClick };\n return (React.createElement(core_1.MenuItem, __assign({}, extendingProps, { \"aria-label\": ariaLabel }), children));\n};\nCustomMenuItem.defaultProps = {\n to: undefined,\n component: undefined,\n label: undefined,\n ariaLabel: undefined,\n onClick: undefined,\n};\nvar MenuContent = function (_a) {\n var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;\n var _o, _p, _q, _r;\n var forwardRef = _a.forwardRef;\n var translate = (0, translate_1.default)();\n var classes = useStyles();\n var dispatch = (0, store_1.useYouwellDispatch)();\n var unreadMessages = (0, store_1.useYouwellSelector)(function (state) { return state.user.unreadMessages; });\n var currentProgram = (0, store_1.useYouwellSelector)(function (state) { return state.programStore.currentProgram; });\n var clientConfig = (0, store_1.useYouwellSelector)(function (state) { return state.auth.clientConfig; });\n var appVersion = (0, store_1.useYouwellSelector)(function (state) { return state.pageSettings.version; });\n var profileData = (0, store_1.useYouwellSelector)(function (state) { return state.auth.profileData; });\n var appItems = ((_o = currentProgram === null || currentProgram === void 0 ? void 0 : currentProgram.appElements) === null || _o === void 0 ? void 0 : _o.filter(function (d) { return !(0, taskUtils_1.hasElementSetting)(d, constants_1.patientProgramAppElementSettings.hidden) && !d.disabled; })) || [];\n var hasCurrentProgram = (0, objectUtils_1.hasValue)(currentProgram);\n var hasActiveProgram = currentProgram === null || currentProgram === void 0 ? void 0 : currentProgram.isActiveProgram;\n var hasConsentTasks = profileData && ((_p = profileData.patientConsents) === null || _p === void 0 ? void 0 : _p.length) > 0;\n var location = (0, react_router_dom_1.useLocation)();\n var isActiveMenuElement = function (url) { return location.pathname === url; };\n var logoutOrg = function () {\n dispatch(AuthStore.actionCreators.logoutOrg());\n };\n return (React.createElement(\"div\", { className: classes.root, ref: forwardRef },\n (clientConfig.appSetup.features.profile && profileData) ? (React.createElement(React.Fragment, null,\n React.createElement(CustomMenuItem, { className: (0, classnames_1.default)(classes.menuItem, (_b = {}, _b[classes.active] = isActiveMenuElement(urls_1.default.inside.profile), _b)), component: TrackedLink_1.default, to: urls_1.default.inside.profile, label: constants_1.activityLabels.menu.profile },\n React.createElement(core_1.Avatar, { className: classes.profileAvatar, \"aria-hidden\": true },\n React.createElement(icons_2.PersonIcon, null)),\n React.createElement(core_1.ListItemText, { primary: translate('menu.profile'), secondary: profileData.name })),\n React.createElement(core_1.Divider, { className: classes.divider }))) : (React.createElement(\"div\", { className: classes.noProfilePadding })),\n React.createElement(CustomMenuItem, { className: (0, classnames_1.default)(classes.menuItem, (_c = {}, _c[classes.active] = isActiveMenuElement(urls_1.default.inside.home), _c)), component: TrackedLink_1.default, to: urls_1.default.inside.home, label: constants_1.activityLabels.menu.home },\n React.createElement(core_1.ListItemIcon, null,\n React.createElement(image_1.HomeIcon, { className: classes.icon })),\n React.createElement(core_1.ListItemText, { primary: translate('menu.startPage') })),\n hasCurrentProgram && clientConfig.appSetup.features.favourites && (React.createElement(CustomMenuItem, { className: (0, classnames_1.default)(classes.menuItem, (_d = {}, _d[classes.active] = isActiveMenuElement(urls_1.default.inside.pages.favourites), _d)), component: TrackedLink_1.default, to: urls_1.default.inside.pages.favourites, label: constants_1.activityLabels.menu.favourites },\n React.createElement(core_1.ListItemIcon, null,\n React.createElement(icons_2.FavouritesIcon, { className: classes.icon })),\n React.createElement(core_1.ListItemText, { primary: translate('header.favourites') }))),\n hasCurrentProgram && clientConfig.appSetup.features.videoPage && (React.createElement(CustomMenuItem, { className: (0, classnames_1.default)(classes.menuItem, (_e = {}, _e[classes.active] = isActiveMenuElement(urls_1.default.inside.pages.videos), _e)), component: TrackedLink_1.default, to: urls_1.default.inside.pages.videos, label: constants_1.activityLabels.menu.videos },\n React.createElement(core_1.ListItemIcon, null,\n React.createElement(icons_2.VideoIcon, { className: classes.icon })),\n React.createElement(core_1.ListItemText, { primary: translate('menu.videos') }))),\n hasActiveProgram && clientConfig.appSetup.features.calendar && (React.createElement(CustomMenuItem, { className: (0, classnames_1.default)(classes.menuItem, (_f = {}, _f[classes.active] = isActiveMenuElement(urls_1.default.inside.pages.calendar), _f)), component: TrackedLink_1.default, to: urls_1.default.inside.pages.calendar, label: constants_1.activityLabels.menu.calendar },\n React.createElement(core_1.ListItemIcon, null,\n React.createElement(image_1.CalendarIcon, { className: classes.icon })),\n React.createElement(core_1.ListItemText, { primary: translate('menu.calendar') }))),\n hasActiveProgram && clientConfig.appSetup.pages.filter(function (d) { return hasCurrentProgram || !d.hideIfNoProgram; }).map(function (item) {\n var _a, _b;\n var _c;\n return (React.createElement(CustomMenuItem, { className: (0, classnames_1.default)(classes.menuItem, (_a = {}, _a[classes.active] = isActiveMenuElement(item.url), _a)), component: TrackedLink_1.default, key: item.key, to: item.url, label: \"\".concat(constants_1.activityLabels.menu.page, \"/\").concat(item.key) },\n React.createElement(core_1.ListItemIcon, null,\n React.createElement(ElementIconOrDefault_1.default, { item: item, className: classes.icon })),\n React.createElement(core_1.ListItemText, { primary: translate(item.nameKey), className: (0, classnames_1.default)((_b = {}, _b[classes.selected] = (_c = location.pathname) === null || _c === void 0 ? void 0 : _c.includes(item.url), _b)) })));\n }),\n appItems.map(function (item) {\n var _a, _b;\n var _c;\n return (React.createElement(CustomMenuItem, { className: (0, classnames_1.default)(classes.menuItem, (_a = {}, _a[classes.active] = isActiveMenuElement(\"\".concat(urls_1.default.inside.program, \"/\").concat(item.elementGroup, \"/\").concat(item.indexInGroup)), _a)), component: TrackedLink_1.default, key: item.id, to: \"\".concat(urls_1.default.inside.program, \"/\").concat(item.elementGroup, \"/\").concat(item.indexInGroup), label: \"\".concat(constants_1.activityLabels.menu.appPage, \"/\").concat(item.name) },\n React.createElement(core_1.ListItemIcon, null,\n React.createElement(ElementIconOrDefault_1.default, { item: item, className: classes.icon })),\n React.createElement(core_1.ListItemText, { primary: item.name, className: (0, classnames_1.default)((_b = {}, _b[classes.selected] = (_c = location.pathname) === null || _c === void 0 ? void 0 : _c.includes(\"\".concat(urls_1.default.inside.program, \"/\").concat(item.elementGroup, \"/\").concat(item.indexInGroup)), _b)) })));\n }),\n hasActiveProgram && clientConfig.appSetup.features.chat && (React.createElement(CustomMenuItem, { className: (0, classnames_1.default)(classes.menuItem, (_g = {}, _g[classes.active] = isActiveMenuElement(urls_1.default.inside.chat), _g)), component: TrackedLink_1.default, to: urls_1.default.inside.chat, label: constants_1.activityLabels.menu.chat, ariaLabel: \"\".concat(translate('messages'), \" \").concat(unreadMessages, \" \").concat(unreadMessages === 1 ? translate('header.notification') : translate('header.notifications')) },\n React.createElement(core_1.ListItemIcon, null,\n React.createElement(core_1.Badge, { badgeContent: unreadMessages, color: \"secondary\", overlap: \"rectangular\" },\n React.createElement(icons_2.ChatIcon, { className: classes.icon }))),\n React.createElement(core_1.ListItemText, { primary: translate('messages') }))),\n hasActiveProgram && clientConfig.appSetup.features.videoChat && (React.createElement(CustomMenuItem, { className: (0, classnames_1.default)(classes.menuItem, (_h = {}, _h[classes.active] = isActiveMenuElement(urls_1.default.inside.videochat), _h)), component: TrackedLink_1.default, to: urls_1.default.inside.videochat, label: constants_1.activityLabels.menu.videochat },\n React.createElement(core_1.ListItemIcon, null,\n React.createElement(icons_2.VideoChatIcon, { className: classes.icon })),\n React.createElement(core_1.ListItemText, { primary: translate('videochat') }))),\n hasCurrentProgram && clientConfig.appSetup.features.printsPage && (React.createElement(CustomMenuItem, { className: (0, classnames_1.default)(classes.menuItem, (_j = {}, _j[classes.active] = isActiveMenuElement(urls_1.default.inside.pages.prints), _j)), component: TrackedLink_1.default, to: urls_1.default.inside.pages.prints, label: constants_1.activityLabels.menu.prints },\n React.createElement(core_1.ListItemIcon, null,\n React.createElement(icons_2.PrintIcon, { className: classes.icon })),\n React.createElement(core_1.ListItemText, { primary: translate('menu.printPage') }))),\n hasConsentTasks && (React.createElement(CustomMenuItem, { className: (0, classnames_1.default)(classes.menuItem, (_k = {}, _k[classes.active] = isActiveMenuElement(urls_1.default.inside.pages.consent), _k)), component: TrackedLink_1.default, to: urls_1.default.inside.pages.consent, label: constants_1.activityLabels.menu.consent },\n React.createElement(core_1.ListItemIcon, null,\n React.createElement(icons_1.AssignmentInd, { className: classes.icon })),\n React.createElement(core_1.ListItemText, { primary: translate('menu.consent') }))),\n clientConfig.appSetup.features.feedback && (React.createElement(CustomMenuItem, { className: (0, classnames_1.default)(classes.menuItem, (_l = {}, _l[classes.active] = isActiveMenuElement(urls_1.default.inside.pages.feedback), _l)), component: TrackedLink_1.default, to: urls_1.default.inside.pages.feedback, label: constants_1.activityLabels.menu.feedback },\n React.createElement(core_1.ListItemIcon, null,\n React.createElement(icons_2.FeedbackIcon, { className: classes.icon })),\n React.createElement(core_1.ListItemText, { primary: translate('menu.feedback') }))),\n React.createElement(core_1.Divider, { className: classes.divider }),\n clientConfig.appSetup.features.org && (profileData && ((_q = profileData.connectedOrganizations) === null || _q === void 0 ? void 0 : _q.length) > 1) && (React.createElement(CustomMenuItem, { className: classes.menuItem, onClick: logoutOrg, label: constants_1.activityLabels.menu.org },\n React.createElement(core_1.ListItemIcon, null,\n React.createElement(icons_2.OrgIcon, { className: classes.icon })),\n React.createElement(core_1.ListItemText, { primary: (_r = profileData === null || profileData === void 0 ? void 0 : profileData.organization) === null || _r === void 0 ? void 0 : _r.name }))),\n React.createElement(CustomMenuItem, { className: (0, classnames_1.default)(classes.menuItem, (_m = {}, _m[classes.active] = isActiveMenuElement(urls_1.default.logout), _m)), component: TrackedLink_1.default, to: urls_1.default.logout, label: constants_1.activityLabels.menu.logout },\n React.createElement(core_1.ListItemIcon, null,\n React.createElement(image_1.LogoutIcon, { className: classes.icon })),\n React.createElement(core_1.ListItemText, { primary: Auth_1.default.getLoginLevel() > constants_2.loginLevels.key ? translate('logout') : translate('menu.exit') })),\n React.createElement(core_1.Divider, { className: classes.divider }),\n clientConfig.appSetup.features.languages && (React.createElement(components_1.LanguageToggle, null)),\n React.createElement(\"div\", { className: classes.version },\n React.createElement(core_1.Typography, { variant: \"caption\", align: \"center\", display: \"block\" }, \"ver. \".concat(appVersion)))));\n};\nMenuContent.defaultProps = {\n forwardRef: undefined,\n};\n// MenuContent is child of component Menu which requires a ref to be forwarded to child.\nexports.default = React.forwardRef(function (props, ref) { return React.createElement(MenuContent, __assign({}, props, { forwardRef: ref })); });\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\n\nimport {\n Button, ButtonBase, IconButton, makeStyles, Tooltip,\n} from '@material-ui/core';\n\nimport PortalModal from './PortalModal';\n\nconst useStyles = makeStyles(theme => ({\n buttonIcon: {\n marginRight: theme.spacing(1),\n },\n activeIcon: {\n color: theme.youwell.colors.secondary,\n },\n}));\n\n\nconst ModalAction = ({\n disabled, modalHeading, buttonText, Icon, buttonChildren, children, wideModal, action, buttonProps, active, className, Modal, ModalProps, tooltip,\n}) => {\n const classes = useStyles();\n const [open, setOpen] = React.useState(false);\n\n const openModal = () => {\n setOpen(true);\n };\n\n const closeModal = () => {\n setOpen(false);\n };\n\n const renderAction = () => {\n if (action != null) {\n return action(openModal);\n } if (Icon !== null) {\n return (\n \n \n \n );\n } if (buttonChildren !== null) {\n return (\n \n {buttonChildren}\n \n );\n }\n return (\n \n );\n };\n\n const renderActionWithTooltip = () => (tooltip ? (\n \n {renderAction()}\n \n )\n : renderAction()\n );\n\n return (\n <>\n \n {children}\n {open && Modal && (\n \n )}\n \n\n {renderActionWithTooltip()}\n \n );\n};\n\nModalAction.propTypes = {\n modalHeading: PropTypes.string.isRequired,\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.element),\n PropTypes.element,\n ]),\n buttonText: PropTypes.string,\n Icon: PropTypes.object,\n action: PropTypes.func,\n disabled: PropTypes.bool,\n wideModal: PropTypes.bool,\n buttonProps: PropTypes.object,\n active: PropTypes.bool,\n className: PropTypes.string,\n Modal: PropTypes.oneOfType([\n PropTypes.func,\n PropTypes.object,\n ]),\n ModalProps: PropTypes.object,\n tooltip: PropTypes.string,\n buttonChildren: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.element),\n PropTypes.element,\n PropTypes.string,\n ]),\n};\n\nModalAction.defaultProps = {\n disabled: false,\n buttonText: null,\n Icon: null,\n action: null,\n wideModal: false,\n buttonProps: null,\n active: false,\n className: null,\n children: null,\n Modal: null,\n ModalProps: null,\n tooltip: null,\n buttonChildren: null,\n};\n\nexport default ModalAction;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar core_1 = require(\"@material-ui/core\");\nvar constants_1 = require(\"../constants\");\nvar components_1 = require(\"../../youwell-common/components\");\nvar urls_1 = __importDefault(require(\"../../app/urls\"));\nvar TrackedLink_1 = __importDefault(require(\"./TrackedLink\"));\nvar apiUrls_1 = require(\"../../youwell-common/apiUrls\");\nvar translate_1 = __importDefault(require(\"../../app/localization/translate\"));\nvar store_1 = require(\"../../app/store\");\nvar elementSize = 50;\nvar useStyles = (0, core_1.makeStyles)(function (theme) {\n var _a;\n return ({\n root: (_a = {\n height: 2 * elementSize + 16 + 16,\n background: \"linear-gradient(180deg, \".concat(theme.youwell.colors.secondaryBackground, \" 50%, transparent 50%)\"),\n padding: theme.spacing(1, 4),\n display: 'flex',\n justifyContent: 'space-between',\n overflowY: 'hidden',\n overflowX: 'auto'\n },\n _a[theme.breakpoints.down('sm')] = {\n padding: theme.spacing(1, 1),\n },\n _a),\n module: {\n position: 'relative',\n margin: theme.spacing(0.5, 1),\n '&:first-child': {\n marginLeft: 0,\n },\n '&:last-child': {\n marginRight: 0,\n },\n '&$disabled': {\n opacity: 0.7,\n },\n },\n progress: {\n position: 'absolute',\n zIndex: 1,\n height: elementSize,\n width: elementSize,\n pointerEvents: 'none',\n },\n button: {\n margin: 1,\n borderRadius: '100%',\n border: \"2px dashed \".concat(theme.palette.primary.main),\n overflow: 'hidden',\n height: elementSize - 2,\n width: elementSize - 2,\n '&$current': {\n margin: 4,\n height: 2 * elementSize - 8,\n width: 2 * elementSize - 8,\n },\n },\n image: {\n height: '100%',\n width: '100%',\n objectFit: 'cover',\n },\n avatar: {\n background: theme.palette.common.white,\n color: theme.palette.text.primary,\n },\n completed: {},\n current: {},\n disabled: {},\n });\n}, { name: 'ModuleProgress' });\n// Needed to extend ButtonBaseProps in custom component because TS does not accept that material ui components uses props from native elements.\nvar CustomButton = function (_a) {\n var children = _a.children, to = _a.to, component = _a.component, className = _a.className, label = _a.label, ariaLabel = _a.ariaLabel, focusRipple = _a.focusRipple;\n return (React.createElement(core_1.ButtonBase, { className: className, to: to, component: component, label: label, \"aria-label\": ariaLabel, focusRipple: focusRipple }, children));\n};\nvar ModuleProgress = function (_a) {\n var _b;\n var className = _a.className;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var currentProgram = (0, store_1.useYouwellSelector)(function (state) { return state.programStore.currentProgram; });\n if (!(currentProgram === null || currentProgram === void 0 ? void 0 : currentProgram.groupedElements)) {\n return null;\n }\n var nextElementIndex = (_b = currentProgram.groupedElements[constants_1.patientProgramElementGroups.main]) === null || _b === void 0 ? void 0 : _b.findIndex(function (d) { return !d.completed && !d.disabled; });\n var mainElements = currentProgram.groupedElements[constants_1.patientProgramElementGroups.main] || [];\n return (React.createElement(\"div\", { className: (0, classnames_1.default)(classes.root, className) }, (mainElements === null || mainElements === void 0 ? void 0 : mainElements.length) > 0 && mainElements.map(function (element, i) {\n var _a, _b;\n var _c, _d, _e;\n return (React.createElement(\"div\", { className: (0, classnames_1.default)(classes.module, (_a = {}, _a[classes.disabled] = element.disabled, _a)), key: element.id },\n React.createElement(core_1.CircularProgress, { \"aria-hidden\": true, thickness: 3, size: i === nextElementIndex ? elementSize * 2 : elementSize, className: classes.progress, variant: \"determinate\", value: element.progress * 100, color: \"secondary\" }),\n React.createElement(CustomButton, { className: (0, classnames_1.default)(classes.button, (_b = {}, _b[classes.completed] = element.completed, _b[classes.current] = i === nextElementIndex, _b)), to: \"\".concat(urls_1.default.inside.program, \"/\").concat(element.elementGroup, \"/\").concat(element.indexInGroup, \"/\").concat(urls_1.default.inside.parts.resumeLatest), component: TrackedLink_1.default, label: \"\".concat(constants_1.activityLabels.moduleProgress.link, \"/\").concat(element.indexInGroup), disabled: element.disabled, ariaLabel: \" \".concat(translate('dashboard.module', { index: i + 1 }), \", , \").concat(element.name, \", \").concat(translate('dashboard.progressIndicator'), \" \").concat(Math.round(element.progress * 100), \"% , \").concat(translate('dashboard.goToModule', { i: i + 1 })), focusRipple: true }, ((_c = element.module) === null || _c === void 0 ? void 0 : _c.moduleImageId) ? React.createElement(components_1.Image, { className: classes.image, src: (0, apiUrls_1.getImageUrl)(element.module.moduleImageId), alt: (_d = element.module) === null || _d === void 0 ? void 0 : _d.moduleImageDescription })\n : (React.createElement(core_1.Avatar, { \"aria-hidden\": true, className: (0, classnames_1.default)(classes.image, classes.avatar) }, (_e = element.name) === null || _e === void 0 ? void 0 : _e.charAt(0).toUpperCase())))));\n })));\n};\nModuleProgress.defaultProps = {\n className: null,\n};\nexports.default = ModuleProgress;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport { withStyles } from '@material-ui/core/styles';\n\nimport {\n Dialog, DialogTitle, DialogContent, DialogContentText, DialogActions, Button,\n} from '@material-ui/core';\n\nconst styles = theme => ({\n actions: {\n padding: theme.spacing(3),\n },\n saveButton: {\n marginLeft: theme.spacing(2),\n },\n});\n\nclass NavigateDialog extends React.Component {\n render() {\n const {\n classes, translate, open, onCancel, onDiscard, onSave, saveText,\n } = this.props;\n\n return (\n \n {translate('navigateDialog.title')}\n \n \n {translate('navigateDialog.description')}\n \n \n \n \n \n \n \n \n );\n }\n}\n\nNavigateDialog.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n open: PropTypes.bool.isRequired,\n onCancel: PropTypes.func.isRequired,\n onDiscard: PropTypes.func.isRequired,\n onSave: PropTypes.func.isRequired,\n saveText: PropTypes.string,\n};\n\nNavigateDialog.defaultProps = {\n saveText: null,\n};\n\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n});\n\nexport default connect(mapStateToProps)(withStyles(styles)(NavigateDialog));\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar core_1 = require(\"@material-ui/core\");\nvar theme_1 = require(\"../../app/style/theme\");\nvar useStyles = (0, core_1.makeStyles)(function (theme) {\n var _a;\n return ({\n root: (_a = {\n margin: '0 auto',\n padding: theme.spacing(0, 12),\n overflowY: 'scroll',\n scrollbarWidth: 'none',\n msOverflowStyle: 'none',\n maxWidth: 1080,\n '&::-webkit-scrollbar': {\n width: 0,\n background: 'transparent', // Make scrollbar invisible\n }\n },\n _a[theme.breakpoints.down('xs')] = {\n padding: theme.spacing(0, 2),\n },\n _a),\n wide: {\n maxWidth: 1368,\n },\n modalContainer: {\n minHeight: \"calc(100vh - \".concat(theme_1.headerHeight, \"px)\"),\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n '&:focus': {\n outline: 'none',\n },\n },\n });\n}, { name: 'OverlayModal' });\nvar OverlayModal = function (_a) {\n var _b;\n var open = _a.open, onClose = _a.onClose, children = _a.children, wide = _a.wide;\n var classes = useStyles();\n var theme = (0, core_1.useTheme)();\n return (React.createElement(core_1.Modal, { open: open, onClose: onClose, BackdropProps: { style: { backgroundColor: theme.palette.background.default, opacity: 0.95, top: theme_1.headerHeight } }, style: { top: theme_1.headerHeight }, className: (0, classnames_1.default)(classes.root, (_b = {}, _b[classes.wide] = wide, _b)) },\n React.createElement(\"div\", { className: (0, classnames_1.default)(classes.modalContainer) }, open && children)));\n};\nOverlayModal.defaultProps = {\n wide: false,\n onClose: null,\n};\nexports.default = OverlayModal;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.sideMenuWidth = void 0;\nvar React = __importStar(require(\"react\"));\nvar styles_1 = require(\"@material-ui/core/styles\");\nvar core_1 = require(\"@material-ui/core\");\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar react_1 = require(\"react\");\nvar BreadCrumb_1 = __importDefault(require(\"./BreadCrumb\"));\nvar SideMenu_1 = __importDefault(require(\"./SideMenu\"));\nvar theme_1 = require(\"../../app/style/theme\");\nvar icons_1 = require(\"../icons\");\nvar Layout_1 = require(\"./Layout\");\nvar translate_1 = __importDefault(require(\"../../app/localization/translate\"));\nvar store_1 = require(\"../../app/store\");\nexports.sideMenuWidth = 300;\nvar useStyles = (0, core_1.makeStyles)(function (theme) {\n var _a, _b, _c, _d, _e, _f;\n return ({\n root: (_a = {\n maxWidth: Layout_1.contentWidth,\n margin: theme.spacing(4, 'auto'),\n minHeight: \"calc(100vh - \".concat(theme_1.headerHeight, \"px)\"),\n padding: theme.spacing(0, 12)\n },\n _a[theme.breakpoints.down('sm')] = {\n padding: theme.spacing(0, 4.5),\n },\n _a[theme.breakpoints.down('xs')] = {\n marginTop: 0,\n padding: theme.spacing(0, 1.5),\n },\n _a['@media print'] = {\n minHeight: 0,\n },\n _a),\n withSideMenu: (_b = {\n maxWidth: 650,\n padding: theme.spacing(0, 1)\n },\n _b[theme.breakpoints.up('md')] = {\n marginRight: \"calc((100% - \".concat(theme.breakpoints.values.md - theme_1.scrollerWidth, \"px)/2 + \").concat(exports.sideMenuWidth, \"px + \").concat(theme.spacing(2), \"px)\"),\n },\n _b),\n drawer: {\n '& .MuiDrawer-paperAnchorRight': (_c = {\n top: theme_1.headerHeight,\n height: \"calc(100% - \".concat(theme_1.headerHeight, \")\"),\n minWidth: 280,\n maxWidth: '80%'\n },\n _c[theme.breakpoints.up('md')] = {\n width: \"calc((100% - \".concat(theme.breakpoints.values.md - theme_1.scrollerWidth, \"px)/2 + \").concat(exports.sideMenuWidth, \"px)\"),\n },\n _c),\n '@media print': {\n display: 'none',\n },\n },\n openSideMenuFab: (_d = {\n position: 'fixed',\n right: theme.spacing(2),\n bottom: theme.spacing(2),\n zIndex: 100\n },\n _d[theme.breakpoints.up('md')] = {\n display: 'none',\n },\n _d['@media print'] = {\n display: 'none',\n },\n _d),\n sideMenu: {\n display: 'flex',\n flexDirection: 'column',\n height: \"calc(100% - \".concat(theme_1.headerHeight, \"px)\"),\n background: theme.palette.grey[100],\n },\n sideMenuContent: {\n flex: '1 1 auto',\n },\n actions: {\n padding: theme.spacing(2),\n display: 'flex',\n justifyContent: 'flex-end',\n },\n closeSideMenuFab: {\n marginLeft: theme.spacing(2),\n },\n topPadding: (_e = {\n marginBottom: theme.spacing(2)\n },\n _e[theme.breakpoints.down('xs')] = {\n marginBottom: theme.spacing(1),\n },\n _e),\n breadcrumb: (_f = {\n marginTop: theme.spacing(2)\n },\n _f[theme.breakpoints.down('xs')] = {\n padding: theme.spacing(0, 1),\n },\n _f),\n image: {\n marginBottom: theme.spacing(1),\n },\n title: {\n marginBottom: theme.spacing(1),\n outline: 'none',\n color: theme.palette.primary.main,\n },\n icon: {\n position: 'absolute',\n transition: 'opacity 0.2s ease-in-out',\n opacity: 1,\n },\n hiddenIcon: {\n opacity: 0,\n },\n });\n});\nvar getMaxPageYOffset = function () { return Math.max(document.body.scrollHeight, document.body.offsetHeight, document.documentElement.clientHeight, document.documentElement.scrollHeight, document.documentElement.offsetHeight) - window.innerHeight; };\nvar useIsWidthDown = function (breakpoint) {\n var theme = (0, styles_1.useTheme)();\n return (0, core_1.useMediaQuery)(theme.breakpoints.down(breakpoint));\n};\nvar PageLayout = function (_a) {\n var _b;\n var breadcrumb = _a.breadcrumb, title = _a.title, children = _a.children, progress = _a.progress, sideMenu = _a.sideMenu, task = _a.task, sideContent = _a.sideContent;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var clientConfig = (0, store_1.useYouwellSelector)(function (state) { return state.auth.clientConfig; });\n var _c = (0, react_1.useState)(Infinity), maxPageYOffset = _c[0], setMaxPageYOffset = _c[1];\n var _d = (0, react_1.useState)(window.pageYOffset), pageYOffset = _d[0], setPageYOffset = _d[1];\n var _e = (0, react_1.useState)(false), showSideMenu = _e[0], setShowSideMenu = _e[1];\n var activeSideMenuDivRef = React.useRef(null);\n var titleRef = React.useRef(null);\n var handleResize = function () {\n setMaxPageYOffset(getMaxPageYOffset());\n };\n var handleScroll = function () {\n setMaxPageYOffset(getMaxPageYOffset());\n setPageYOffset(window.pageYOffset);\n };\n (0, react_1.useEffect)(function () {\n if (sideMenu) {\n window.addEventListener('resize', handleResize);\n window.addEventListener('scroll', handleScroll);\n }\n return function () {\n window.removeEventListener('resize', handleResize);\n window.removeEventListener('scroll', handleScroll);\n };\n }, [sideMenu]);\n (0, react_1.useEffect)(function () {\n if (showSideMenu && activeSideMenuDivRef.current) {\n activeSideMenuDivRef.current.children[0].focus();\n }\n else if (titleRef.current) {\n titleRef.current.focus();\n }\n }, [showSideMenu]);\n var closeSideMenu = function () {\n setShowSideMenu(false);\n };\n var openSideMenu = function () {\n setShowSideMenu(true);\n };\n var labelClasses = task && task.taskLabels ? task.taskLabels.map(function (d) { return \"\".concat(classes.root, \"_\").concat(d); }) : [];\n var showSideMenuButton = pageYOffset > 60 && maxPageYOffset - pageYOffset > 100;\n var hasSideMenu = sideMenu || sideContent;\n var isXsDown = useIsWidthDown('xs');\n var isSmDown = useIsWidthDown('sm');\n var isSmallScreen = isXsDown || isSmDown;\n return (React.createElement(React.Fragment, null,\n React.createElement(\"div\", { className: classnames_1.default.apply(void 0, __spreadArray(__spreadArray([classes.root], labelClasses, false), [(_b = {},\n _b[classes.withSideMenu] = hasSideMenu,\n _b)], false)) },\n React.createElement(\"div\", { className: classes.topPadding }, clientConfig.appSetup.features.breadcrumb && breadcrumb && (React.createElement(BreadCrumb_1.default, { levels: breadcrumb, className: classes.breadcrumb, progress: progress, task: task, openSideMenu: hasSideMenu && openSideMenu }))),\n title && (React.createElement(core_1.Typography, { variant: \"h5\", className: classes.title, ref: titleRef, tabIndex: -1 }, title)),\n children),\n hasSideMenu && (React.createElement(React.Fragment, null,\n showSideMenuButton && (React.createElement(core_1.Fab, { className: classes.openSideMenuFab, onClick: openSideMenu, size: \"medium\", \"aria-label\": translate('openMenu'), \"aria-controls\": \"pageIndex-menu\", \"aria-haspopup\": \"true\" },\n React.createElement(icons_1.ListIcon, null))),\n React.createElement(core_1.Drawer, { id: \"pageIndex-menu\", className: classes.drawer, variant: isSmallScreen ? 'temporary' : 'persistent', anchor: \"right\", open: showSideMenu || !isSmallScreen, onClose: closeSideMenu },\n React.createElement(\"div\", { className: classes.sideMenu },\n sideContent && (React.createElement(\"div\", { className: classes.sideMenuContent }, sideContent)),\n sideMenu && (React.createElement(SideMenu_1.default, { className: classes.sideMenuContent, menu: sideMenu, activeSideMenuDivRef: activeSideMenuDivRef })),\n isSmallScreen && (React.createElement(\"div\", { className: classes.actions },\n React.createElement(core_1.Fab, { onClick: closeSideMenu, className: classes.closeSideMenuFab, \"aria-label\": translate('close'), size: \"medium\" },\n React.createElement(icons_1.CloseIcon, null))))))))));\n};\nPageLayout.defaultProps = {\n breadcrumb: null,\n title: null,\n progress: null,\n sideMenu: null,\n task: null,\n sideContent: null,\n};\nexports.default = PageLayout;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\n\nclass PageTitle extends React.Component {\n state = {\n defaultTitle: document?.title,\n }\n\n componentDidMount() {\n document.title = this.props.title || this.state.defaultTitle;\n }\n\n componentDidUpdate() {\n document.title = this.props.title || this.state.defaultTitle;\n }\n\n render() {\n return null;\n }\n}\n\nPageTitle.propTypes = {\n title: PropTypes.string,\n};\n\nPageTitle.defaultProps = {\n title: null,\n};\n\nconst mapStateToProps = state => ({\n currentPath: state.pageSettings.pathname, // Sets this to trigger update on navigation\n});\n\nexport default connect(mapStateToProps)(PageTitle);\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport {\n Typography, Modal, IconButton, makeStyles,\n} from '@material-ui/core';\nimport classnames from 'classnames';\nimport { Fullscreen } from '@material-ui/icons';\n\nimport { Translate } from 'react-localize-redux';\nimport {\n CloseIcon,\n} from '../icons';\n\nimport { isIe } from '../../youwell-common/browserUtils';\n\nconst defaultWidth = 568;\n\nconst useStyles = makeStyles(theme => ({\n root: {\n // z-index is set inline by Modal-component. But must sometimes be overridden by using !important\n },\n modalContainer: {\n position: 'absolute',\n top: '50%',\n left: '50%',\n transform: 'translate(-50%, -50%)',\n minWidth: defaultWidth,\n maxWidth: '100%',\n minHeight: theme.spacing(50),\n maxHeight: '80%',\n background: theme.palette.common.white,\n borderRadius: theme.spacing(1),\n display: 'flex',\n flexDirection: 'column',\n height: isIe ? '100%' : undefined,\n\n [theme.breakpoints.down('xs')]: {\n minWidth: 0,\n width: `calc(100% - ${theme.spacing(4)}px)`,\n },\n },\n wide: {\n minWidth: '80%',\n },\n fullscreen: {\n top: 0,\n left: 0,\n transform: 'none',\n width: '100vw',\n height: '100vh',\n maxHeight: '100%',\n },\n modalHeader: {\n display: 'flex',\n alignItems: 'center',\n padding: theme.spacing(1, 2),\n background: theme.youwell.colors.secondaryBackground,\n },\n modalHeaderText: {\n flex: '1 1 auto',\n },\n headerMessage: {\n marginRight: theme.spacing(1),\n },\n modalContent: {\n flex: '1 1 auto',\n padding: theme.spacing(2),\n overflowY: 'auto',\n\n [theme.breakpoints.down('xs')]: {\n padding: theme.spacing(2, 1),\n },\n },\n}));\n\nconst PortalModal = ({\n heading, children, open, onClose, wide, showUnsavedMessage, allowZoom, fixedWidth, fixedHeight,\n}) => {\n const classes = useStyles();\n const [fullscreen, setFullscreen] = React.useState(false);\n\n const closeModal = () => {\n setFullscreen(false);\n onClose();\n }\n\n return (\n \n
\n {heading && (\n
\n \n {heading}\n \n {showUnsavedMessage && (\n \n \n \n )}\n {allowZoom && (\n setFullscreen(prev => !prev)}>\n \n \n )}\n \n \n \n
\n )}\n
\n {open && children}\n
\n
\n
\n );\n};\n\nPortalModal.propTypes = {\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node,\n ]),\n heading: PropTypes.node,\n onClose: PropTypes.func.isRequired,\n open: PropTypes.bool.isRequired,\n wide: PropTypes.bool,\n showUnsavedMessage: PropTypes.bool,\n allowZoom: PropTypes.bool,\n fixedWidth: PropTypes.number,\n fixedHeight: PropTypes.number,\n};\n\nPortalModal.defaultProps = {\n children: null,\n heading: null,\n wide: false,\n showUnsavedMessage: false,\n allowZoom: false,\n fixedWidth: null,\n fixedHeight: null,\n};\n\nexport default PortalModal;\n","import * as React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport classnames from 'classnames';\r\n\r\n\r\nconst styles = theme => ({\r\n root: {\r\n backgroundColor: theme.youwell.colors.grayLight,\r\n height: 16,\r\n borderRadius: 8,\r\n boxShadow: theme.youwell.shadows.lightgreyShadow,\r\n },\r\n fill: {\r\n backgroundColor: theme.palette.primary.main,\r\n borderRadius: theme.youwell.shapes.borderRadius,\r\n height: '100%',\r\n },\r\n});\r\n\r\nconst ProgressBar = (props) => {\r\n const { classes, className, value } = props;\r\n\r\n return (\r\n
\r\n \r\n
\r\n );\r\n};\r\n\r\nProgressBar.propTypes = {\r\n classes: PropTypes.object.isRequired,\r\n className: PropTypes.string,\r\n value: PropTypes.number,\r\n};\r\n\r\nProgressBar.defaultProps = {\r\n className: null,\r\n value: 0,\r\n};\r\n\r\nexport default withStyles(styles)(ProgressBar);\r\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar core_1 = require(\"@material-ui/core\");\nvar TrackedLink_1 = __importDefault(require(\"./TrackedLink\"));\nvar constants_1 = require(\"../constants\");\nvar theme_1 = require(\"../../app/style/theme\");\nvar stringUtils_1 = require(\"../../youwell-common/stringUtils\");\nvar store_1 = require(\"../../app/store\");\nvar translate_1 = __importDefault(require(\"../../app/localization/translate\"));\nvar useStyles = (0, core_1.makeStyles)(function (theme) {\n var _a;\n return ({\n root: (_a = {\n background: theme.palette.grey[100],\n padding: theme.spacing(4, 2),\n paddingRight: theme.spacing(2) + theme_1.scrollerWidth\n },\n _a[theme.breakpoints.down('sm')] = {\n padding: theme.spacing(4, 0),\n paddingRight: theme_1.scrollerWidth,\n },\n _a['$brightBackground&'] = {\n background: theme.youwell.colors.secondaryBackground,\n },\n _a),\n brightBackground: {},\n menuItem: {\n display: 'flex',\n marginBottom: theme.spacing(1),\n marginLeft: theme.spacing(1),\n paddingLeft: theme.spacing(1),\n borderLeft: theme.youwell.borders.medium,\n borderColor: 'transparent',\n '&$subtask': {\n paddingLeft: theme.spacing(3),\n },\n '&$hiddenSubtask': {\n display: 'none',\n },\n },\n subtask: {},\n hiddenSubtask: {},\n title: {\n color: theme.palette.text.secondary,\n marginBottom: theme.spacing(2),\n fontSize: '1rem',\n '$brightBackground &': {\n color: theme.youwell.colors.primary,\n },\n },\n current: {\n // borderColor: theme.youwell.colors.highlight,\n borderColor: theme.palette.secondary.main,\n '& $text': {\n color: theme.palette.common.black,\n fontWeight: theme.typography.fontWeightMedium,\n '$brightBackground &': {\n color: theme.palette.text.primary,\n },\n },\n },\n text: {\n display: 'flex',\n alignItems: 'center',\n color: theme.youwell.colors.grayLight,\n '$brightBackground &': {\n color: theme.palette.text.primary,\n },\n },\n visited: {\n color: theme.palette.text.primary,\n '$brightBackground &': {\n color: theme.youwell.colors.grayDark,\n },\n },\n notify: {\n width: 8,\n height: 8,\n borderRadius: '100%',\n marginLeft: theme.spacing(1),\n display: 'block',\n background: theme.youwell.colors.highlight,\n },\n });\n}, { name: 'SideMenu' });\nvar SideMenu = function (_a) {\n var _b;\n var menu = _a.menu, className = _a.className, activeSideMenuDivRef = _a.activeSideMenuDivRef;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var clientConfig = (0, store_1.useYouwellSelector)(function (state) { return state.auth.clientConfig; });\n return (React.createElement(\"div\", { className: (0, classnames_1.default)(classes.root, className, (_b = {}, _b[classes.brightBackground] = clientConfig.appSetup.features.useSecondaryBackgroundInSideMenu, _b)), \"aria-label\": translate('sideMenu'), role: \"menu\" },\n React.createElement(core_1.Typography, { variant: \"subtitle2\", className: (0, classnames_1.default)(classes.menuItem, classes.title) }, menu.title),\n menu.menuItems.map(function (item, i) {\n var _a, _b, _c;\n var _d, _e;\n return (React.createElement(\"div\", { key: item.url || item.text, ref: i === menu.currentIndex ? activeSideMenuDivRef : undefined, className: (0, classnames_1.default)(classes.menuItem, (_a = {},\n _a[classes.current] = i === menu.currentIndex,\n _a[classes.subtask] = (0, stringUtils_1.parseBoolString)((_d = item.settings) === null || _d === void 0 ? void 0 : _d.subtask),\n _a[classes.hiddenSubtask] = (0, stringUtils_1.parseBoolString)((_e = item.settings) === null || _e === void 0 ? void 0 : _e.hiddenInMenu),\n _a)) }, item.url ? (React.createElement(TrackedLink_1.default, { to: item.url, label: \"\".concat(constants_1.activityLabels.sidemenu.link, \"/\").concat(i + 1), title: item.notify ? translate('task.unfinishedTask') : undefined, ariaLabel: \"\".concat(item.text, \", \").concat(item.notify ? translate('task.unfinishedTask') : '', \", \").concat(i === menu.currentIndex ? translate('currentPageLocation') : '') },\n React.createElement(core_1.Typography, { \"aria-hidden\": true, variant: \"body2\", className: (0, classnames_1.default)(classes.text, (_b = {}, _b[classes.visited] = item.visited, _b)) },\n item.text,\n item.notify && (React.createElement(\"span\", { className: classes.notify }))))) : (React.createElement(core_1.Typography, { variant: \"body2\", className: (0, classnames_1.default)(classes.text, (_c = {}, _c[classes.visited] = item.visited, _c)) },\n item.text,\n item.notify && (React.createElement(\"span\", { className: classes.notify }))))));\n })));\n};\nSideMenu.defaultProps = {\n activeSideMenuDivRef: undefined,\n};\nexports.default = SideMenu;\n","import { useEffect } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport * as AuthStore from '../../app/store/AuthStore';\nimport useSimpleOffline from '../../youwell-common/useSimpleOffline';\n\nconst StartSession = () => {\n const dispatch = useDispatch();\n const appConfig = useSelector(state => state.pageSettings.appConfig);\n const isOffline = useSimpleOffline();\n\n useEffect(() => {\n if (!isOffline) {\n dispatch(AuthStore.actionCreators.startSession({\n orgId: appConfig.orgId,\n anonymous: appConfig.useAnonymousSessions,\n }, { background: true }));\n }\n }, [appConfig, dispatch, isOffline]);\n\n return null;\n};\n\nexport default StartSession;\n","import * as React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport { Translate } from 'react-localize-redux';\r\nimport classnames from 'classnames';\r\nimport { CKEditor } from '@ckeditor/ckeditor5-react';\r\nimport Editors from '@youwell/ckeditor5-builds-youwell';\r\nimport { connect } from 'react-redux';\r\n\r\nimport { Typography, Input } from '@material-ui/core';\r\n\r\nimport TextEditorUploadAdapterPlugin from './TextEditorUploadAdapterPlugin';\r\nimport { isIe, isBrowser } from '../../youwell-common/browserUtils';\r\nimport { htmlContentClassName } from '../../youwell-common/components/HtmlContent';\r\n\r\nconst editorTextColors = [\r\n {\r\n color: 'hsl(0, 0%, 0%)',\r\n label: 'Black',\r\n },\r\n {\r\n color: 'hsl(0, 0%, 30%)',\r\n label: 'Dim grey',\r\n },\r\n {\r\n color: 'hsl(0, 0%, 60%)',\r\n label: 'Grey',\r\n },\r\n {\r\n color: 'hsl(0, 0%, 90%)',\r\n label: 'Light grey',\r\n },\r\n {\r\n color: 'hsl(0, 0%, 100%)',\r\n label: 'White',\r\n hasBorder: true,\r\n },\r\n {\r\n color: '#B91400', // red\r\n },\r\n {\r\n color: 'hsl(0, 75%, 60%)',\r\n label: 'Red',\r\n },\r\n {\r\n color: 'hsl(30, 75%, 60%)',\r\n label: 'Orange',\r\n },\r\n {\r\n color: 'hsl(60, 75%, 60%)',\r\n label: 'Yellow',\r\n },\r\n // {\r\n // color: palette.yellow,\r\n // },\r\n {\r\n color: 'hsl(90, 75%, 60%)',\r\n label: 'Light green',\r\n },\r\n {\r\n color: 'hsl(120, 75%, 60%)',\r\n label: 'Green',\r\n },\r\n {\r\n color: 'hsl(150, 75%, 60%)',\r\n label: 'Aquamarine',\r\n },\r\n {\r\n color: 'hsl(180, 75%, 60%)',\r\n label: 'Turquoise',\r\n },\r\n {\r\n color: '#007C91', // green\r\n },\r\n // {\r\n // color: palette.blue,\r\n // },\r\n {\r\n color: 'hsl(210, 75%, 60%)',\r\n label: 'Light blue',\r\n },\r\n {\r\n color: 'hsl(240, 75%, 60%)',\r\n label: 'Blue',\r\n },\r\n {\r\n color: 'hsl(270, 75%, 60%)',\r\n label: 'Purple',\r\n },\r\n {\r\n color: '#000179',\r\n },\r\n];\r\n\r\nconst styles = theme => ({\r\n root: {\r\n border: theme.youwell.borders.dim,\r\n\r\n '& a': {\r\n color: theme.youwell.colors.hightScore,\r\n textDecoration: 'underline',\r\n cursor: 'text',\r\n },\r\n\r\n '& .ck-content .image': {\r\n clear: 'none', // override ck-content to allow two images beside each other..\r\n },\r\n\r\n },\r\n toolbar: {\r\n padding: theme.spacing(1),\r\n },\r\n htmlEditor: {\r\n padding: theme.spacing(1),\r\n },\r\n});\r\n\r\n\r\nconst ErrorFallback = ({\r\n classes, className, value, onChange, disabled,\r\n}) => (\r\n
\r\n
\r\n \r\n
\r\n
\r\n);\r\n\r\nErrorFallback.propTypes = {\r\n classes: PropTypes.object.isRequired,\r\n value: PropTypes.string.isRequired,\r\n onChange: PropTypes.func.isRequired,\r\n disabled: PropTypes.bool,\r\n className: PropTypes.string,\r\n};\r\n\r\nErrorFallback.defaultProps = {\r\n disabled: false,\r\n className: null,\r\n};\r\n\r\nclass TextEditor extends React.Component {\r\n state = {\r\n error: false,\r\n };\r\n\r\n linkAdapterRef = React.createRef();\r\n\r\n componentDidCatch = () => {\r\n this.setState({ error: true });\r\n };\r\n\r\n handleEditorChange = (event, editor) => {\r\n const data = editor.getData();\r\n this.props.onChange({ target: { value: data } });\r\n };\r\n\r\n render() {\r\n const {\r\n classes, disabled, value, className, onChange, allowUpload, appId,\r\n } = this.props;\r\n\r\n if (this.state.error || isIe) {\r\n return ();\r\n }\r\n\r\n if (!isBrowser) {\r\n return (\r\n
\r\n );\r\n }\r\n\r\n const config = {\r\n toolbar: ['bold', 'italic', 'underline', 'fontColor',\r\n '|', 'bulletedList', 'numberedList', 'insertTable'],\r\n fontColor: {\r\n colors: editorTextColors,\r\n },\r\n };\r\n\r\n if (allowUpload) {\r\n config.toolbar.push('imageUpload');\r\n config.extraPlugins = [TextEditorUploadAdapterPlugin(appId)]\r\n }\r\n\r\n return (\r\n
\r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nTextEditor.propTypes = {\r\n classes: PropTypes.object.isRequired,\r\n value: PropTypes.string.isRequired,\r\n onChange: PropTypes.func.isRequired,\r\n disabled: PropTypes.bool,\r\n className: PropTypes.string,\r\n allowUpload: PropTypes.bool,\r\n appId: PropTypes.string.isRequired,\r\n};\r\n\r\nTextEditor.defaultProps = {\r\n disabled: false,\r\n className: null,\r\n allowUpload: false,\r\n};\r\n\r\nconst mapStateToProps = state => ({\r\n appId: state.pageSettings.appConfig.appId,\r\n});\r\n\r\nconst EditorComponent = connect(mapStateToProps, null)(withStyles(styles)(TextEditor));\r\n\r\nclass EditorErrorBoundary extends React.Component {\r\n static propTypes = {\r\n classes: PropTypes.object.isRequired,\r\n children: PropTypes.oneOfType([\r\n PropTypes.arrayOf(PropTypes.node),\r\n PropTypes.node,\r\n ]),\r\n className: PropTypes.string,\r\n };\r\n\r\n static defaultProps = {\r\n children: null,\r\n className: null,\r\n };\r\n\r\n state = {\r\n hasError: false,\r\n };\r\n\r\n componentDidCatch = (error, info) => {\r\n this.setState({ hasError: true });\r\n // eslint-disable-next-line no-console\r\n console.warn('Editor-error', { error, info });\r\n };\r\n\r\n render() {\r\n const { classes, className } = this.props;\r\n\r\n if (this.state.hasError) {\r\n return (\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n }\r\n return this.props.children;\r\n }\r\n}\r\n\r\nconst ErrorBoundaryComponent = withStyles(styles)(EditorErrorBoundary);\r\n\r\nexport default React.forwardRef((props, ref) => (\r\n \r\n \r\n \r\n));\r\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar mediaUpload_1 = require(\"../../youwell-common/mediaUpload\");\nvar apiUrls_1 = __importDefault(require(\"../../youwell-common/apiUrls\"));\nvar CkEditorUploadAdapter = /** @class */ (function () {\n function CkEditorUploadAdapter(loader, appId) {\n this.loader = loader;\n this.appId = appId;\n }\n CkEditorUploadAdapter.prototype.upload = function () {\n var _this = this;\n return this.loader.file\n .then(function (file) { return new Promise(function (resolve, reject) {\n if (file) {\n (0, mediaUpload_1.uploadPatientFile)(file)\n .then(function (data) { return resolve({\n urlWithAppId: \"\".concat(apiUrls_1.default.baseUrl, \"/\").concat(apiUrls_1.default.app.media, \"/\").concat(data.id, \"?xAppId=\").concat(_this.appId),\n urls: {\n default: \"\".concat(apiUrls_1.default.baseUrl, \"/\").concat(apiUrls_1.default.app.media, \"/\").concat(data.id),\n },\n }); })\n .catch(function (error) { return reject(new Error(error && Number(error.message) ? \"errors.\".concat(error.message) : 'uploadFailed')); });\n }\n }); });\n };\n CkEditorUploadAdapter.prototype.abort = function () {\n // abort uploading?\n };\n return CkEditorUploadAdapter;\n}());\nvar TextEditorUploadAdapterPlugin = function (appId) { return function (editor) {\n var fileRepo = editor.plugins.get('FileRepository');\n fileRepo.createUploadAdapter = function (loader) { return new CkEditorUploadAdapter(loader, appId); };\n}; };\nexports.default = TextEditorUploadAdapterPlugin;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { KeyboardTimePicker } from '@material-ui/pickers';\nimport classnames from 'classnames';\nimport { makeStyles, Typography } from '@material-ui/core';\nimport { useSelector } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\n\nimport { TimeIcon } from '../icons';\nimport { today } from '../../youwell-common/dateUtils';\n\nconst useStyles = makeStyles(theme => ({\n root: {\n width: 112,\n flexShrink: 0,\n\n '&$error': {\n border: theme.youwell.borders.error,\n },\n },\n error: {\n },\n input: {\n paddingLeft: theme.spacing(1),\n },\n iconButton: {\n padding: theme.spacing(1),\n },\n validationMessage: {\n color: theme.palette.error.main,\n marginTop: theme.spacing(1),\n },\n}), { name: 'TimePicker' });\n\nconst TimePicker = ({\n value, onChange, className, validation, disabled, defaultValue, inputAdornmentBeforeInput, disableUnderline, validateWithoutValueChange, validationMessage,\n}) => {\n const classes = useStyles();\n const translate = useSelector(state => getTranslate(state.localize));\n const [validationError, setValidationError] = React.useState(false);\n const [invalidDate, setInvalidDate] = React.useState(false);\n\n React.useEffect(() => {\n if (validateWithoutValueChange) {\n if (!validation || validation(value)) {\n setValidationError(false);\n } else {\n setValidationError(true);\n }\n }\n }, [validateWithoutValueChange, validation, value, validationMessage]);\n\n const validateAndUpdate = (date) => {\n setInvalidDate(false);\n if (date === null || !validation || validation(date)) {\n setValidationError(false);\n onChange(date);\n } else {\n setValidationError(true);\n onChange(date);\n }\n }\n\n const onValueChange = (d, val) => {\n if (d === null) {\n validateAndUpdate(d);\n } else if (d?.getTime && !Number.isNaN(d.getTime())) {\n validateAndUpdate(d);\n } else if (val === '24:00') {\n const midnight = new Date();\n midnight.setHours(0, 0, 0);\n validateAndUpdate(midnight);\n } else if (val?.[4] !== '_') {\n validateAndUpdate(null);\n setInvalidDate(true);\n }\n };\n\n const initialDate = today();\n if (defaultValue?.length === 5) {\n initialDate.setHours(Number(defaultValue.substr(0, 2)), Number(defaultValue.substr(3, 2)));\n }\n\n return (\n <>\n }\n InputAdornmentProps={{ position: inputAdornmentBeforeInput ? 'start' : 'end' }}\n minutesStep={5}\n KeyboardButtonProps={{\n 'aria-label': translate('time.setTime'),\n className: classes.iconButton,\n }}\n placeholder={defaultValue || '00:00'}\n initialFocusedDate={initialDate}\n InputProps={{ className: classes.input, disableUnderline }}\n invalidDateMessage=\" \" // no message, but show red line\n disabled={disabled}\n clearLabel={translate('clear')}\n cancelLabel={translate('cancel')}\n okLabel={translate('ok')}\n />\n\n {validationError && validationMessage && ({validationMessage})}\n\n \n );\n};\n\nTimePicker.propTypes = {\n onChange: PropTypes.func.isRequired,\n value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.object,\n ]),\n className: PropTypes.string,\n validation: PropTypes.func,\n disabled: PropTypes.bool,\n defaultValue: PropTypes.string,\n inputAdornmentBeforeInput: PropTypes.bool,\n disableUnderline: PropTypes.bool,\n validateWithoutValueChange: PropTypes.bool,\n validationMessage: PropTypes.string,\n};\n\nTimePicker.defaultProps = {\n value: null,\n className: null,\n validation: null,\n validationMessage: null,\n disabled: false,\n defaultValue: null,\n inputAdornmentBeforeInput: false,\n disableUnderline: false,\n validateWithoutValueChange: false,\n};\n\nexport default TimePicker;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\n\nimport * as UserStore from '../../app/store/UserStore';\n\nconst activityProps = ['patientId', 'patientProgramId', 'patientProgramElementId', 'taskId', 'moduleId'];\n\nclass TrackActivity extends React.Component {\n componentDidMount() {\n this.sendActivity();\n }\n\n componentDidUpdate(prevProps) {\n if (activityProps.reduce((prev, curr) => prev || this.props[curr] !== prevProps[curr], false)) {\n this.sendActivity(prevProps.activityId);\n }\n }\n\n componentWillUnmount() {\n this.endActivity(this.props.activityId);\n\n // To end last activity when i.e. navigating away (or refreshing page) we should detext unload, but\n // this is not working. Request is canceled by browser on navigating away\n // window.addEventListener('beforeunload', this.sendActivity);\n // window.removeEventListener('beforeunload', this.sendActivity);\n }\n\n sendActivity = (endId) => {\n if (this.props.patientId) {\n this.props.sendActivity({\n endId,\n pid: this.props.patientId,\n ppid: this.props.patientProgramId,\n ppeid: this.props.patientProgramElementId,\n tid: this.props.taskId,\n mid: this.props.moduleId,\n l: this.props.label,\n start: new Date(),\n });\n }\n }\n\n endActivity = (endId) => {\n if (this.props.patientId) {\n this.props.sendActivity({\n endId,\n pid: this.props.patientId,\n start: new Date(),\n });\n }\n }\n\n render() {\n return null;\n }\n}\n\nTrackActivity.propTypes = {\n sendActivity: PropTypes.func.isRequired,\n activityId: PropTypes.number,\n label: PropTypes.string.isRequired,\n patientId: PropTypes.string,\n patientProgramId: PropTypes.string,\n patientProgramElementId: PropTypes.string,\n taskId: PropTypes.string,\n moduleId: PropTypes.string,\n};\n\nTrackActivity.defaultProps = {\n patientId: null,\n activityId: null,\n patientProgramId: null,\n patientProgramElementId: null,\n taskId: null,\n moduleId: null,\n};\n\nconst mapStateToProps = state => ({\n patientId: state.auth.profileData && state.auth.profileData.id,\n activityId: state.user.activityId,\n});\n\nconst mapDispatchToProps = dispatch => ({\n ...bindActionCreators(UserStore.actionCreators, dispatch),\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(TrackActivity);\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar UserStore = __importStar(require(\"../../app/store/UserStore\"));\nvar Auth_1 = __importStar(require(\"../../youwell-common/Auth\"));\nvar store_1 = require(\"../../app/store\");\nvar TrackedLink = function (_a) {\n var endId = _a.endId, patientProgramId = _a.patientProgramId, patientProgramElementId = _a.patientProgramElementId, taskId = _a.taskId, moduleId = _a.moduleId, label = _a.label, forwardedRef = _a.forwardedRef, ariaLabel = _a.ariaLabel, to = _a.to, rest = __rest(_a, [\"endId\", \"patientProgramId\", \"patientProgramElementId\", \"taskId\", \"moduleId\", \"label\", \"forwardedRef\", \"ariaLabel\", \"to\"]);\n var dispatch = (0, store_1.useYouwellDispatch)();\n var patientId = (0, store_1.useYouwellSelector)(function (state) { var _a; return (_a = state.auth.profileData) === null || _a === void 0 ? void 0 : _a.id; });\n var actualPatientProgramId = (0, store_1.useYouwellSelector)(function (state) { var _a; return patientProgramId || ((_a = state.programStore.currentProgram) === null || _a === void 0 ? void 0 : _a.id); });\n if (!label) {\n return null;\n }\n var sendActivity = function () {\n if (Auth_1.default.isUserAuthenticated(Auth_1.authTypes.user, Auth_1.authTypes.public, Auth_1.authTypes.orgSelect)) {\n dispatch(UserStore.actionCreators.sendActivity({\n endId: endId,\n pid: patientId,\n ppid: actualPatientProgramId,\n ppeid: patientProgramElementId,\n tid: taskId,\n mid: moduleId,\n l: label,\n start: new Date(),\n }));\n }\n };\n if (!to) {\n return (React.createElement(\"div\", { ref: forwardedRef, className: rest.className, \"aria-label\": ariaLabel }, rest.children));\n }\n // Pass all remaining props for material-ui focus effects etc...\n return React.createElement(react_router_dom_1.Link, __assign({ ref: forwardedRef, \"aria-label\": ariaLabel, to: to }, rest, { onClick: sendActivity }));\n};\nTrackedLink.defaultProps = {\n label: null,\n children: null,\n className: null,\n endId: null,\n patientProgramId: null,\n patientProgramElementId: null,\n taskId: null,\n moduleId: null,\n style: null,\n to: null,\n title: null,\n forwardedRef: null,\n ariaLabel: null,\n};\nexports.default = React.forwardRef(function (props, ref) { return React.createElement(TrackedLink, __assign({}, props, { forwardedRef: ref })); });\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar core_1 = require(\"@material-ui/core\");\nvar React = __importStar(require(\"react\"));\nvar dateUtils_1 = require(\"../../youwell-common/dateUtils\");\nvar translate_1 = __importDefault(require(\"../../app/localization/translate\"));\nvar icons_1 = require(\"../icons\");\nvar store_1 = require(\"../../app/store\");\nvar styles = function (theme) { return (0, core_1.createStyles)({\n root: {\n display: 'flex',\n alignItems: 'center',\n },\n iconButton: {},\n label: {\n margin: theme.spacing(0, 1),\n padding: theme.spacing(0, 4),\n textTransform: 'capitalize',\n },\n description: {\n color: theme.youwell.colors.secondary,\n },\n}); };\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return styles(theme); }, { name: 'WeekSelector' });\nvar WeekSelector = function (_a) {\n var onChange = _a.onChange, selectedWeek = _a.selectedWeek, allowOutOfProgramDays = _a.allowOutOfProgramDays;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var programStartDate = (0, store_1.useYouwellSelector)(function (state) { var _a; return (_a = state.programStore.currentProgram) === null || _a === void 0 ? void 0 : _a.startDate; });\n var setWeek = function (week) {\n if (onChange) {\n onChange(week);\n }\n };\n var next = function () {\n setWeek((0, dateUtils_1.getWeek)((0, dateUtils_1.addDays)(selectedWeek.start, 7)));\n };\n var prev = function () {\n setWeek((0, dateUtils_1.getWeek)((0, dateUtils_1.addDays)(selectedWeek.start, -7)));\n };\n return (React.createElement(\"div\", { className: classes.root },\n React.createElement(core_1.IconButton, { color: \"secondary\", onClick: prev, className: classes.iconButton, disabled: (!allowOutOfProgramDays && programStartDate) ? new Date(programStartDate) > selectedWeek.start : false },\n React.createElement(icons_1.PrevIcon, null)),\n React.createElement(\"div\", { className: classes.label },\n React.createElement(core_1.Typography, { variant: \"h6\", color: \"primary\", align: \"center\" }, \"\".concat(translate('time.week'), \" \").concat(selectedWeek.weekNo)),\n React.createElement(core_1.Typography, { className: classes.description }, \"\".concat((0, dateUtils_1.shortDate)(selectedWeek.start), \" - \").concat((0, dateUtils_1.shortDate)(selectedWeek.end)))),\n React.createElement(core_1.IconButton, { color: \"secondary\", onClick: next, className: classes.iconButton, disabled: selectedWeek.end > new Date() },\n React.createElement(icons_1.NextIcon, null))));\n};\nWeekSelector.defaultProps = {\n allowOutOfProgramDays: false,\n};\nexports.default = WeekSelector;\n","import * as React from 'react';\nimport PropTypes, { object } from 'prop-types';\nimport classnames from 'classnames';\n\nimport {\n makeStyles,\n Slider,\n Typography,\n useMediaQuery,\n useTheme,\n} from '@material-ui/core';\n\nimport { hasValue } from '../../youwell-common/objectUtils';\n\nconst useStyles = makeStyles(theme => ({\n root: {\n margin: theme.spacing(0, 4),\n\n [theme.breakpoints.down('xs')]: {\n margin: theme.spacing(0, 1),\n },\n },\n vertical: {\n height: '100%',\n },\n slider: {\n [theme.breakpoints.down('xs')]: {\n paddingBottom: theme.spacing(1),\n },\n },\n rail: {\n height: 4,\n position: 'absolute',\n },\n track: {\n height: 4,\n backgroundColor: theme.palette.secondary.main,\n },\n mark: {\n width: 12,\n height: 12,\n borderRadius: '100%',\n border: theme.youwell.borders.primary,\n backgroundColor: theme.palette.common.white,\n top: 7,\n marginLeft: -7, // NB: needed to position correctly in regards to thumb.\n },\n // TODO: .MuiSlider-root setter på padding... skjer kun ved klikk på select i inspect. Fungerer ikke nå ipad, har det gjort det tidligere? -ja men da har ikke markersene vært synlige\n // Ved klikk på select igjen er stylingen slik den skal...\n markActive: {\n opacity: 1, // needed to override default style set by Slider.\n backgroundColor: theme.palette.secondary.main,\n },\n noUserInteraction: {\n opacity: 1, // needed to override default style set by Slider.\n },\n showThumb: {\n display: 'block',\n width: 15,\n height: 15,\n border: theme.youwell.borders.primary,\n backgroundColor: theme.palette.secondary.main,\n },\n hideThumb: {\n display: 'none',\n width: 15,\n height: 15,\n },\n topLabel: {\n '&:empty:before': {\n content: '\"\\\\200b\"', // unicode zero width space character\n },\n },\n labels: {\n display: 'none',\n justifyContent: 'space-between',\n\n [theme.breakpoints.down('xs')]: {\n display: 'flex',\n },\n },\n}), { name: 'YouwellSlider' });\n\n\nconst YouwellSlider = ({\n value, onChange, topLabelFormat = null, className, marks, orientation = '', showValueLabelDisplay = false, ...rest\n}) => {\n const classes = useStyles();\n const saveTimer = React.useRef();\n const [changeId, setChangeId] = React.useState(null);\n const [sliderValue, setSliderValue] = React.useState();\n const theme = useTheme();\n const isMobile = useMediaQuery(theme.breakpoints.down('xs'));\n\n const handleSliderChange = (event, sValue) => {\n setSliderValue(sValue);\n setChangeId(Date.now());\n };\n\n React.useEffect(() => {\n if (changeId) {\n if (saveTimer.current) {\n clearTimeout(saveTimer.current);\n }\n\n saveTimer.current = setTimeout(() => {\n onChange({ target: { value: sliderValue } }, sliderValue); // match Material Slider onChange = (event, value)\n setChangeId(prevId => (prevId === changeId ? null : prevId));\n }, 200);\n }\n }, [changeId, onChange, sliderValue]); // TODO: onChange-function \"changes\" on each parent-render so this fires a bit to often..\n\n React.useEffect(() => {\n if (!changeId) {\n if (hasValue(value)) {\n setSliderValue(Number(value));\n } else {\n setSliderValue(null);\n }\n }\n }, [changeId, value]);\n\n return (\n
\n {topLabelFormat && (\n \n {topLabelFormat(sliderValue)}\n \n )}\n \n {marks?.length > 1 && (\n
\n {marks[0].label}\n {marks[marks.length - 1].label}\n
\n )}\n
\n );\n};\n\nYouwellSlider.propTypes = {\n value: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n onChange: PropTypes.func.isRequired,\n topLabelFormat: PropTypes.func,\n className: PropTypes.string,\n marks: PropTypes.arrayOf(object), // { value, label }\n orientation: PropTypes.string,\n showValueLabelDisplay: PropTypes.bool,\n};\n\nYouwellSlider.defaultProps = {\n value: null,\n topLabelFormat: null,\n className: null,\n marks: [],\n orientation: null,\n showValueLabelDisplay: false,\n};\n\nexport default YouwellSlider;\n","export { default as Checkbox } from './Checkbox';\nexport { default as InfoMessage } from './InfoMessage';\nexport { default as LinkListItem } from './LinkListItem';\nexport { default as TrackActivity } from './TrackActivity';\nexport { default as LinkMenu } from './LinkMenu';\nexport { default as TrackedLink } from './TrackedLink';\nexport { default as BreadCrumb } from './BreadCrumb';\nexport { default as ProgressBar } from './ProgressBar';\nexport { default as PageTitle } from './PageTitle';\nexport { default as NavigateDialog } from './NavigateDialog';\nexport { default as ChoiceNavigationDialog } from './ChoiceNavigationDialog';\nexport { default as StartSession } from './StartSession';\nexport { default as Layout } from './Layout';\nexport { default as PageLayout } from './PageLayout';\nexport { default as MenuContent } from './MenuContent';\nexport { default as Header } from './Header';\nexport { default as ConfirmButton } from './ConfirmButton';\nexport { default as InternalLinkLoader } from './InternalLinkLoader';\nexport { default as ModalAction } from './ModalAction';\nexport { default as PortalModal } from './PortalModal';\nexport { default as Counter } from './Counter';\nexport { default as YouwellSlider } from './YouwellSlider';\nexport { default as TimePicker } from './TimePicker';\nexport { default as LoadAppContent } from './LoadAppContent';\nexport { default as ModuleProgress } from './ModuleProgress';\nexport { default as FeedbackForm } from './FeedbackForm';\nexport { default as LoadOrgConfig } from './LoadOrgConfig';\nexport { default as OverlayModal } from './OverlayModal';\nexport { default as ContentVariableLoader } from './ContentVariableLoader';\nexport { default as TextEditor } from './TextEditor';\nexport { default as FileUpload } from './FileUpload';\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.activityCategories = exports.hihElementTypes = exports.performanceDetailedPeriods = exports.performanceOverviewPeriods = exports.menuElements = exports.patientProgramTaskLabels = exports.patientProgramAppElementSettings = exports.patientProgramElementGroups = exports.activityLabels = exports.notificationKeys = void 0;\nvar constants_1 = require(\"../youwell-common/constants\");\nexports.notificationKeys = {\n unreadMessages: 'unreadMessages',\n overdueTasks: 'overdueTasks',\n program: 'program',\n};\nexports.activityLabels = {\n header: 'header',\n menu: {\n home: 'menu/home',\n calendar: 'menu/calendar',\n videos: 'menu/videos',\n profile: 'menu/profile',\n chat: 'menu/chat',\n videochat: 'menu/videochat',\n logout: 'menu/logout',\n favourites: 'menu/favourites',\n appPage: 'menu/app',\n activityDiary: 'menu/activityDiary',\n performance: 'menu/performance',\n page: 'menu/page',\n prints: 'menu/prints',\n feedback: 'menu/feedback',\n org: 'menu/org',\n consent: 'menu/consent',\n },\n dashboard: {\n questionnaires: 'dashboard/questionnaires',\n calendar: 'dashboard/calendar',\n module: 'dashboard/module',\n introModule: 'dashboard/introModule',\n currentModule: 'dashboard/currentModule',\n appointment: 'dashboard/appointment',\n exit: 'exit',\n },\n bottomMenu: {\n home: 'bottomMenu/home',\n calendar: 'bottomMenu/calendar',\n activityDiary: 'bottomMenu/activityDiary',\n performance: 'bottomMenu/performance',\n },\n moduleProgress: {\n link: 'moduleProgress',\n },\n breadcrumb: {\n link: 'breadcrumb',\n home: 'breadcrumb/home',\n module: 'breadcrumb/module',\n task: 'breadcrumb/task',\n },\n sidemenu: {\n link: 'sidemenu',\n },\n taskPreview: {\n goToTask: 'taskPreview/goToTask',\n },\n};\nexports.patientProgramElementGroups = __assign(__assign({}, constants_1.systemElementGroups), { personalGoal: 'PersonalGoal', log: 'Log', consent: 'Consent', default: 'Default', appointment: 'Appointment' });\nexports.patientProgramAppElementSettings = {\n header: 'header',\n intro: 'intro',\n dashboardInfo: 'info',\n worksheet: 'worksheet',\n hidden: 'hidden',\n personalGoal: 'PersonalGoal',\n trainingPlan: 'treningsplan',\n};\nexports.patientProgramTaskLabels = {\n gladRygg: 'GladRygg',\n work: 'Work',\n medicine: 'Medicine',\n activity: 'Activity',\n selectSelfTraining: 'SelectSelfTraining',\n selfTraining: 'SelfTraining',\n};\nexports.menuElements = {\n home: 'home',\n calendar: 'calendar',\n activityDiary: 'activityDiary',\n performance: 'performance',\n profile: 'profile',\n chat: 'chat',\n};\nexports.performanceOverviewPeriods = {\n week: 'week',\n month: 'month',\n year: 'year',\n total: 'total',\n};\nexports.performanceDetailedPeriods = {\n month: 'month',\n year: 'year',\n};\nexports.hihElementTypes = {\n Preview: 'Preview',\n};\nexports.activityCategories = {\n physical: 'PhysicalTraining',\n mental: 'MentalTraining',\n dailyRoutine: 'DailyRoutine',\n};\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { Build, Pages } from '@material-ui/icons';\n\nimport { patientProgramAppElementSettings } from '../constants';\nimport {\n FoodIcon, BudskapIcon, TrophyIcon,\n} from './index';\n\nexport const getElementIcon = (item) => {\n if (item) {\n const itemName = item.name?.toLowerCase();\n if (item.Icon) {\n return item.Icon;\n } if (itemName.indexOf('trening') > -1) {\n return TrophyIcon;\n } if (itemName.indexOf('budskap') > -1) {\n return BudskapIcon;\n } if (itemName.indexOf('kjøkken') > -1) {\n return FoodIcon;\n } if (itemName.indexOf('hverdagsmat') > -1) {\n return FoodIcon;\n } if (itemName.indexOf('gla:d') > -1) {\n return TrophyIcon;\n } if (itemName.indexOf('verktøy') > -1) {\n return Build;\n } if (item.label === patientProgramAppElementSettings.trainingPlan) {\n return TrophyIcon;\n }\n }\n return Pages;\n}\n\nconst ElementIconOrDefault = ({ item, ...props }) => {\n const Icon = getElementIcon(item);\n return ();\n};\n\nElementIconOrDefault.propTypes = {\n item: PropTypes.object,\n};\n\nElementIconOrDefault.defaultProps = {\n item: null,\n};\n\nexport default ElementIconOrDefault;\n","export { default as MenuIcon } from '@material-ui/icons/Menu';\nexport { default as MenuUpIcon } from '@material-ui/icons/KeyboardArrowUp';\nexport { default as LogoutIcon } from '@material-ui/icons/LockOpen';\nexport { default as ChatIcon } from '@material-ui/icons/Sms';\nexport { default as VideoChatIcon } from '@material-ui/icons/Videocam';\nexport { default as TasksIcon } from '@material-ui/icons/CheckBox';\nexport { default as HomeIcon } from '@material-ui/icons/HomeOutlined';\nexport { default as MessagesIcon } from '@material-ui/icons/ChatBubbleOutline';\nexport { default as BackIcon } from '@material-ui/icons/ArrowBack';\nexport { default as ExpandIcon } from '@material-ui/icons/ExpandMore';\nexport { default as CollapseIcon } from '@material-ui/icons/ExpandLess';\nexport { default as UncheckedIcon } from '@material-ui/icons/CheckBoxOutlineBlank';\nexport { default as CheckedIcon } from '@material-ui/icons/CheckBox';\nexport { default as SearchIcon } from '@material-ui/icons/Search';\nexport { default as ClearIcon } from '@material-ui/icons/Clear';\nexport { default as FaceIcon } from '@material-ui/icons/Face';\nexport { default as SendIcon } from '@material-ui/icons/Send';\nexport { default as ChatCollapseIcon } from '@material-ui/icons/KeyboardArrowDown';\nexport { default as UnreadIcon } from '@material-ui/icons/Star';\nexport { default as FowardIcon } from '@material-ui/icons/ArrowForwardIosOutlined';\nexport { default as DoneIcon } from '@material-ui/icons/CheckBox';\nexport { default as NotDoneIcon } from '@material-ui/icons/CheckBoxOutlineBlank';\nexport { default as SeparatorIcon } from '@material-ui/icons/KeyboardArrowRight';\nexport { default as OpenInNewWindowIcon } from '@material-ui/icons/OpenInNew';\nexport { default as PrevIcon } from '@material-ui/icons/KeyboardArrowLeft';\nexport { default as NextIcon } from '@material-ui/icons/KeyboardArrowRight';\nexport { default as CompletedIcon } from '@material-ui/icons/Done';\nexport { default as CloseIcon } from '@material-ui/icons/Close';\nexport { default as CorrectIcon } from '@material-ui/icons/Star';\nexport { default as CorrectMarkerIcon } from '@material-ui/icons/StarBorder';\nexport { default as IncorrectIcon } from '@material-ui/icons/Clear';\nexport { default as PersonIcon } from '@material-ui/icons/Person';\nexport { default as ListIcon } from '@material-ui/icons/List';\nexport { default as InfoIcon } from '@material-ui/icons/InfoOutlined';\nexport { default as ContactIcon } from '@material-ui/icons/PermContactCalendar';\nexport { default as QuestionnaireIcon } from '@material-ui/icons/LiveHelp';\nexport { default as CompletedQuestionnaireIcon } from '@material-ui/icons/AssignmentTurnedIn';\nexport { default as PlanIcon } from '@material-ui/icons/Assignment';\nexport { default as EditIcon } from '@material-ui/icons/Edit';\nexport { default as CancelIcon } from '@material-ui/icons/Close';\nexport { default as SaveIcon } from '@material-ui/icons/Save';\nexport { default as ReadIcon } from '@material-ui/icons/LabelOutlined';\nexport { default as ReadUnreadIcon } from '@material-ui/icons/Label';\nexport { default as CalendarIcon } from '@material-ui/icons/DateRange';\nexport { default as TrainingIcon } from '@material-ui/icons/Assignment';\nexport { default as VideoIcon } from '@material-ui/icons/PlayCircleFilled';\nexport { default as UnansweredQuestionnaireIcon } from '@material-ui/icons/AssignmentLate';\nexport { default as PrintIcon } from '@material-ui/icons/Print';\nexport { default as FavouritesIcon } from '@material-ui/icons/Star';\nexport { default as FavouritesUncheckedIcon } from '@material-ui/icons/StarBorder';\nexport { default as NotesIcon } from '@material-ui/icons/Edit';\nexport { default as DeleteIcon } from '@material-ui/icons/Delete';\nexport { default as AddIcon } from '@material-ui/icons/AddCircleOutline';\nexport { default as LogIcon } from '@material-ui/icons/List';\nexport { default as CommentIcon } from '@material-ui/icons/Comment';\nexport { default as TrophyIcon } from '@material-ui/icons/EmojiEvents';\nexport { default as FoodIcon } from '@material-ui/icons/Restaurant';\nexport { default as BudskapIcon } from '@material-ui/icons/Beenhere';\nexport { default as ArticleIcon } from '@material-ui/icons/WebAsset';\nexport { default as RotateIcon } from '@material-ui/icons/Rotate90DegreesCcw';\nexport { default as ZoomInIcon } from '@material-ui/icons/ZoomIn';\nexport { default as ZoomOutIcon } from '@material-ui/icons/ZoomOut';\nexport { default as AddImageIcon } from '@material-ui/icons/AddAPhoto';\nexport { default as HelpIcon } from '@material-ui/icons/Help';\nexport { default as SleepIcon } from '@material-ui/icons/Hotel';\nexport { default as TimeIcon } from '@material-ui/icons/Schedule';\nexport { default as ElementListIcon } from '@material-ui/icons/Dns';\nexport { default as BullsEyeIcon } from '@material-ui/icons/TrackChanges';\nexport { default as CheckMarkIcon } from '@material-ui/icons/Done';\nexport { default as CancelOutlinedIcon } from '@material-ui/icons/CancelOutlined';\nexport { default as NotInterestedIcon } from '@material-ui/icons/NotInterested';\nexport { default as FeedbackIcon } from '@material-ui/icons/Feedback';\nexport { default as ThumbUpIcon } from '@material-ui/icons/ThumbUp';\nexport { default as SunIcon } from '@material-ui/icons/WbSunny';\nexport { default as AnalyticsIcon } from '@material-ui/icons/InsertChart';\nexport { default as AlarmIcon } from '@material-ui/icons/AccessAlarm';\nexport { default as DotIcon } from '@material-ui/icons/Brightness1';\nexport { default as OrgIcon } from '@material-ui/icons/AccountBalance';\nexport { default as DirectionsRunIcon } from '@material-ui/icons/DirectionsRun';\n","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAABHCAYAAABBJcT+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAEnMAABJzAYwiuQcAAAlxSURBVGhD7ZppiF3lHcbv3LkzzupMMksyC0lBG+pSDYkBFWshtFC/uOEnBRFR2g8urSk20bS0KG6oiAuNtLRSoZa69EOnIi6IVQLaNlFxidJOMLM4k6Qms8/c3Jnx99zznmvuve97tnsv9UMf+DPnvmd7nv/2vuecqUs5sLq6Wu9vyurq6vS3ZuB+Phf99S2DNWKnYA2YOOSwLLYicwqoFD4h/qbS6XRi8eY6ae+X50xvM4/6mgjQTbHTFhcXt2Sz2RmG3m1qaprE5LWqQfepiYDl5eX26enpRycnJ687fvz4iUwm896aNWse6+vr+2tzc/MU6Vg1IVUXkMvl6iD+vcOHD/8O7w/yO2UIT7W3t+/t7+9/ZO3atW8xtuidURmqKgCyacifC/k9pM95RMLPXYnIGyKODw4ODnV2du5h+G3GVJSJUSQgn1MJuw3kGyG+HQH3LC0tncNvv4sVcJKI1YGBgXnS6g6Gn2Bs2TsiPiqOgETj6Q7I3wD5H0O+X2lkdpdBAuhKqba2thQixojE9Yy9giVyXCQBrsgY8hsmJibuO3LkyKWQb1HOh0EiZB0dHSlqYgQRNzE8xFjs4k4cAUO+D8//VkVLzjfw2+wNhy+CdEpREzOIuJXhZzBNUpEnzsQC8HQnxPcg4Mq45H2cLIJ0+hgRt/B7v9k9i2XDhBS6RBxAvo2UuRPySpsy8spxF0TYB1HM28zMTGp8fPybzB27GP421oydiXUr0vx1IrYAyLeQ8zdjN0K+uTTnRbChQcuWckhYY2Njqr7+qwbli5idnc2MjIx8Z2pqaifDZ2GaJzZhp7FfayIrYgkw5G/E+ztIm45S8sy4qZaWllR3d3cRSUHkNdbb25sXWCpCUSQSDYjYfuzYsTsZPgObxJqwCznmVKwsGpEFQLaNnP+RUgfPd5WmjcizTMhSkP9gph2GcJE6RQbSq+vXr5/p6en5BBEnbJGQCNLpQkT8it8XsOsLTDdTp9pQKiLNgJaqTugEyHfj+d3k/G7I95R6XkQgL3L7u7q6HoP8HyE8YXYXwLXmIf43jruDSLxni4QMEfWIOIt11G6Gz8fGsX9jv8BOxQpQBE54m+UQeTy9Ea//GruZtFlTSl6p0draqpl1As9+CPEBzruYXT3eEUVQZ3mdOngDEUOkWs4mYmVlJUVB142Ojp5OJHYwdjq7PsLewNbrOB9pbmidPAz5Qbz+G1LnMsi32NJGOc9kNMuy4C9c63GG92oXZotsF6bCzED8Zc77FNHWmpDNzc2licQ2CnsHwwOYBMyzr3CwtQYM+V7I3wv57y4sLJS1SpFnfZ9liXxQq0si8SnD89hS/gA7JGwLpsJ8F+L3Eok3icTnXC9niwTdqYFIbEfELsZ0rohkxFHHlQlgR5o02Qjxu7HLbX1eNxJ5PPgWHrwdz/+Q4aewMewopsJzQT2+F5OIV0mn63DCTxGxD0E5paQPidC9VdiIuAgRv2RsO7tasVPYbigSIPKcsAXPa4a9hrRptRWsSZsPKNidkH8BG8Gm2K0IyI1KFRe0VNBx05wzgQ0j4jlq6Oc4Y9iVTipsRJyNiHsYvgEbxJoLAjgoA/ltEH8a+74mKVva0G2WCPs7kL8Wb/0TAoUaMtvD2Av5ATtexv7DsYWLs52F+F49sdGdVnUfWzohIj02NjZo0ukqdjWqjTZg7ZC9GOKPYpsgrzTyzjbgoiuQH5anCPcl3EAdp2ydwphOfN37ZcXHmK1O1GKHcM4okcjZRMgQUcdk14mIqxnepAich91G23oE8lsoWBv5ecg/T9pcQcE+xIWDclyYNn9tUAqVwURvP+m0h0gcWrdu3bItnRQJulOKdDqDFN8pASq6bUePHj2TZ1ilUf5ggxUucIiCvZ2LXo9n3ud3lDV7u/lrg4rXtUDTG4zfI+J+BLzJ/eZtkRBHRGSIxg8kQDk7hNXjBR3jQ21tHwV7LeSfJDc1CYWCG+gi3/B+WdGCWQWYKGj98wdE3MR9n0bEXGkkBEUCy2oik8tfYy2+KAE6kOJcQPmfSJsryMm/443inAqGnLLO27RCLbTQPEohEZhWoh9BfAciHqBhTIuX4Zb/C7cVHktf9C90kJn0Jbyc5TFviR1/5vetmzdvHoV83GdVXVO93oU+zJVCBSBCT2VzROJhau8JHKmntnwLh5ue4ibYfjAvgANV9bs46EkOvgv7Gd3mWP5K8SFyxfEuRpxoitssIp4iEs9iB+D1OfyO0EzuZ9++Ik+Qv1q/SLm1U0QB12ikuH5y4MCB+2gKZtSbAFWQW7duvY3rP445F5Gl4JpyiBZ0G7EObAT7l65RlIsMLEUlr2I1BVsKXVOF6oLyOzSFTgacVKdaa72CPY/phVjeAUUCosIQX4vZzpe3bEtpH91YLAEChPNvKjAVeaEuEwkAOk+htBW49qnTuLABS3rfMiS6EB5QSINm26DOpQ8WcTubE4kEmBTyrRQiF7TUOIRFmc1DIR6VhFK93iZA0dHyxAXNtNWKQCZQAAq1UnW9k9Ga3iZA3l3wNq3QvjIBJqpxkQuLgPWipgv8Fyta+RloX9BkpXNsEYgtQDwCBXCA5gQbSb+tuXI5KMfVv6uVQuFFbLxdTcRaSoShkiJOiqo65H8hoKr4vwALkrTDRKh0Ivs6YCBQQMLJRdB6p6Yw3OpDI5BQRM0FmPY+HiogwTwgwUHXrWYb/epfAWxIOInpnKA31K7/kUiUrqERSAAtI+a8TSu0L7JjSOGgBWVNupDIBb0E0/snm4CyCJj60xOc/bMnqJUALbVdcL2NcKWQUs71PjW4BhJCAqwrWAPXPldaadnuXN3WQkBYF3J52iVAr3pc++ILiDAvaH+bt2lFi+MaZSRFPKwT1iICei9U9Cm0BHrxG0lAFNRCgDqGPom6IHFhUYyMWgjQMiLozZx6+tdagL7ABAnQ18xE6VIKail8MVeKsKICerHb721aoXdGQQ/9cdBU1QiY7qIOFPRuVBEoQwTH2FCTiUzfGIK+0Fhn1Qjt2YalqgowXgx77xM0S8eC7leLCGi1qc+lkZHQ+3nUQoDIl/2zU61QCwFaSn/ibcZCoigUBKinms1Koacx/T9EXFQmAFTrQVwFnCSFKhYQ6etkBIhIktR0PTYGonAjWlK12psiqe+5pZCDPsNcHz9aSePYIhK3LxtMO9S/RZ6DaU2kOcF3krqTHjUP4qyiR05z3rcwzeL6gB1xqZFKfQmGjmsp3PYHgwAAAABJRU5ErkJggg==\"","export default __webpack_public_path__ + \"26a4dbc05524c2369765489ea25c685c.png\";","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importDefault(require(\"react\"));\nvar BadFaceIcon = function (_a) {\n var color = _a.color;\n return (react_1.default.createElement(\"div\", null,\n react_1.default.createElement(\"svg\", { width: \"33\", height: \"33\", viewBox: \"0 0 33 33\", fill: color, xmlns: \"http://www.w3.org/2000/svg\" },\n react_1.default.createElement(\"path\", { d: \"M16.5517 3.58545C9.19169 3.58545 3.23169 9.55878 3.23169 16.9188C3.23169 24.2788 9.19169 30.2521 16.5517 30.2521C23.925 30.2521 29.8984 24.2788 29.8984 16.9188C29.8984 9.55878 23.925 3.58545 16.5517 3.58545ZM16.565 27.5854C10.6717 27.5854 5.89836 22.8121 5.89836 16.9188C5.89836 11.0254 10.6717 6.25212 16.565 6.25212C22.4584 6.25212 27.2317 11.0254 27.2317 16.9188C27.2317 22.8121 22.4584 27.5854 16.565 27.5854Z\", fill: \"current\" }),\n react_1.default.createElement(\"line\", { x1: \"11.3314\", y1: \"23.6178\", x2: \"21.4139\", y2: \"19.985\", stroke: color, strokeWidth: \"2\" }),\n react_1.default.createElement(\"path\", { d: \"M10.003 16.208L14.4807 13.8919L10.003 11.3829\", stroke: color, strokeWidth: \"2\", strokeLinecap: \"round\", strokeLinejoin: \"round\" }),\n react_1.default.createElement(\"path\", { d: \"M22.9818 11.6009L18.6198 14.1282L23.2122 16.4205\", stroke: color, strokeWidth: \"2\", strokeLinecap: \"round\", strokeLinejoin: \"round\" }))));\n};\nBadFaceIcon.defaultProps = {\n color: 'black',\n};\nexports.default = BadFaceIcon;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importDefault(require(\"react\"));\nvar HappyFaceIcon = function (_a) {\n var color = _a.color, width = _a.width, height = _a.height;\n return (react_1.default.createElement(\"div\", null,\n react_1.default.createElement(\"svg\", { width: width, height: height, viewBox: \"0 0 33 33\", fill: color, xmlns: \"http://www.w3.org/2000/svg\" },\n react_1.default.createElement(\"path\", { d: \"M16.3134 3.58545C8.95341 3.58545 2.99341 9.55878 2.99341 16.9188C2.99341 24.2788 8.95341 30.2521 16.3134 30.2521C23.6867 30.2521 29.6601 24.2788 29.6601 16.9188C29.6601 9.55878 23.6867 3.58545 16.3134 3.58545ZM16.3267 27.5854C10.4334 27.5854 5.66007 22.8121 5.66007 16.9188C5.66007 11.0254 10.4334 6.25212 16.3267 6.25212C22.2201 6.25212 26.9934 11.0254 26.9934 16.9188C26.9934 22.8121 22.2201 27.5854 16.3267 27.5854ZM20.9934 15.5854C22.1001 15.5854 22.9934 14.6921 22.9934 13.5854C22.9934 12.4788 22.1001 11.5854 20.9934 11.5854C19.8867 11.5854 18.9934 12.4788 18.9934 13.5854C18.9934 14.6921 19.8867 15.5854 20.9934 15.5854ZM11.6601 15.5854C12.7667 15.5854 13.6601 14.6921 13.6601 13.5854C13.6601 12.4788 12.7667 11.5854 11.6601 11.5854C10.5534 11.5854 9.66008 12.4788 9.66008 13.5854C9.66008 14.6921 10.5534 15.5854 11.6601 15.5854ZM16.3267 24.2521C19.4334 24.2521 22.0734 22.3055 23.1401 19.5854H9.51341C10.5801 22.3055 13.2201 24.2521 16.3267 24.2521Z\", fill: \"current\" }))));\n};\nHappyFaceIcon.defaultProps = {\n color: 'black',\n width: '33',\n height: '33',\n};\nexports.default = HappyFaceIcon;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importDefault(require(\"react\"));\nvar NoEmotionFaceIcon = function (_a) {\n var color = _a.color;\n return (react_1.default.createElement(\"div\", null,\n react_1.default.createElement(\"svg\", { width: \"41\", height: \"41\", viewBox: \"0 0 41 41\", fill: color, xmlns: \"http://www.w3.org/2000/svg\" },\n react_1.default.createElement(\"path\", { d: \"M14.8145 20.1455C13.4345 20.1455 12.3145 21.2655 12.3145 22.6455C12.3145 24.0255 13.4345 25.1455 14.8145 25.1455C16.1945 25.1455 17.3145 24.0255 17.3145 22.6455C17.3145 21.2655 16.1945 20.1455 14.8145 20.1455ZM26.8145 20.1455C25.4345 20.1455 24.3145 21.2655 24.3145 22.6455C24.3145 24.0255 25.4345 25.1455 26.8145 25.1455C28.1945 25.1455 29.3145 24.0255 29.3145 22.6455C29.3145 21.2655 28.1945 20.1455 26.8145 20.1455ZM20.8145 0.645508C9.77445 0.645508 0.814453 9.60551 0.814453 20.6455C0.814453 31.6855 9.77445 40.6455 20.8145 40.6455C31.8545 40.6455 40.8145 31.6855 40.8145 20.6455C40.8145 9.60551 31.8545 0.645508 20.8145 0.645508ZM20.8145 36.6455C11.9945 36.6455 4.81445 29.4655 4.81445 20.6455C4.81445 20.0655 4.85445 19.4855 4.91445 18.9255C9.63445 16.8255 13.3745 12.9655 15.3345 8.18551C18.9545 13.3055 24.9145 16.6455 31.6545 16.6455C33.2145 16.6455 34.7145 16.4655 36.1545 16.1255C36.5745 17.5455 36.8145 19.0655 36.8145 20.6455C36.8145 29.4655 29.6345 36.6455 20.8145 36.6455Z\", fill: \"current\" }))));\n};\nNoEmotionFaceIcon.defaultProps = {\n color: 'black',\n};\nexports.default = NoEmotionFaceIcon;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importDefault(require(\"react\"));\nvar OkFaceIcon = function (_a) {\n var color = _a.color;\n return (react_1.default.createElement(\"div\", null,\n react_1.default.createElement(\"svg\", { width: \"33\", height: \"33\", viewBox: \"0 0 33 33\", fill: color, xmlns: \"http://www.w3.org/2000/svg\" },\n react_1.default.createElement(\"path\", { d: \"M16.4325 3.58545C9.07255 3.58545 3.11255 9.55878 3.11255 16.9188C3.11255 24.2788 9.07255 30.2521 16.4325 30.2521C23.8059 30.2521 29.7792 24.2788 29.7792 16.9188C29.7792 9.55878 23.8059 3.58545 16.4325 3.58545ZM16.4459 27.5854C10.5525 27.5854 5.77922 22.8121 5.77922 16.9188C5.77922 11.0254 10.5525 6.25212 16.4459 6.25212C22.3392 6.25212 27.1125 11.0254 27.1125 16.9188C27.1125 22.8121 22.3392 27.5854 16.4459 27.5854ZM21.1125 15.5854C22.2192 15.5854 23.1125 14.6921 23.1125 13.5854C23.1125 12.4788 22.2192 11.5854 21.1125 11.5854C20.0059 11.5854 19.1125 12.4788 19.1125 13.5854C19.1125 14.6921 20.0059 15.5854 21.1125 15.5854ZM11.7792 15.5854C12.8859 15.5854 13.7792 14.6921 13.7792 13.5854C13.7792 12.4788 12.8859 11.5854 11.7792 11.5854C10.6725 11.5854 9.77922 12.4788 9.77922 13.5854C9.77922 14.6921 10.6725 15.5854 11.7792 15.5854Z\", fill: \"current\" }),\n react_1.default.createElement(\"rect\", { x: \"11.2422\", y: \"20.7109\", width: \"10.4073\", height: \"2\", rx: \"1\", fill: \"current\" }))));\n};\nOkFaceIcon.defaultProps = {\n color: 'black',\n};\nexports.default = OkFaceIcon;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importDefault(require(\"react\"));\nvar PlayingSoccerIcon = function (_a) {\n var color = _a.color;\n return (react_1.default.createElement(\"div\", null,\n react_1.default.createElement(\"svg\", { width: \"33\", height: \"33\", viewBox: \"0 0 33 33\", fill: color, xmlns: \"http://www.w3.org/2000/svg\" },\n react_1.default.createElement(\"g\", { clipPath: \"url(#clip0_2146_3079)\" },\n react_1.default.createElement(\"path\", { d: \"M19.2636 6.49304C20.8856 6.49304 22.2006 5.17812 22.2006 3.55609C22.2006 1.93406 20.8856 0.619141 19.2636 0.619141C17.6416 0.619141 16.3267 1.93406 16.3267 3.55609C16.3267 5.17812 17.6416 6.49304 19.2636 6.49304Z\", fill: \"current\" }),\n react_1.default.createElement(\"path\", { d: \"M5.62911 25.9272C6.99457 25.9272 8.10149 24.8202 8.10149 23.4548C8.10149 22.0893 6.99457 20.9824 5.62911 20.9824C4.26366 20.9824 3.15674 22.0893 3.15674 23.4548C3.15674 24.8202 4.26366 25.9272 5.62911 25.9272Z\", fill: \"current\" }),\n react_1.default.createElement(\"path\", { d: \"M29.5781 16.9099C28.5563 11.2306 24.2132 7.76858 18.6198 7.13412C18.3628 7.10508 18.1392 7.12979 17.9452 7.19466C17.7642 7.13782 17.5578 7.11311 17.3231 7.13412C14.7723 7.36084 12.5785 9.2735 10.9933 11.1732C9.66441 12.7646 11.9434 15.0702 13.284 13.4639C13.9623 12.6516 14.9922 11.4512 16.0925 10.8099C16.1017 10.8402 16.1067 10.8711 16.1172 10.902C16.8295 13.0148 17.0333 15.098 16.8276 17.3072C16.0313 17.6173 15.2529 17.9861 14.4887 18.3834C13.4663 18.9159 12.2017 19.4651 11.797 20.6136C10.9852 22.9173 10.1728 25.2204 9.36108 27.5235C8.66483 29.4991 11.7958 30.3418 12.4858 28.3859C13.2414 26.2428 13.9963 24.0997 14.7519 21.9585C15.8725 21.2418 17.1205 20.5444 18.4129 20.1138C18.8157 20.3251 19.2598 20.4492 19.6978 20.4579C19.7281 20.4579 19.7559 20.4554 19.7856 20.4542C19.9715 23.9774 20.1155 27.5031 20.2662 31.0263C20.3558 33.1027 23.5967 33.1762 23.5059 31.0844C23.3008 26.2725 23.1068 21.4568 22.8028 16.6492C22.7954 16.5405 22.7787 16.4386 22.7565 16.341C22.8207 14.752 22.6935 13.1501 22.3704 11.5927C24.5197 12.8604 25.9554 15.0028 26.4521 17.7742C26.8234 19.8259 29.9444 18.953 29.5781 16.9099Z\", fill: \"current\" })),\n react_1.default.createElement(\"defs\", null,\n react_1.default.createElement(\"clipPath\", { id: \"clip0_2146_3079\" },\n react_1.default.createElement(\"rect\", { width: \"32\", height: \"32\", fill: \"white\", transform: \"translate(0.382324 0.619141)\" }))))));\n};\nPlayingSoccerIcon.defaultProps = {\n color: 'black',\n};\nexports.default = PlayingSoccerIcon;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importDefault(require(\"react\"));\nvar QuestionFaceIcon = function (_a) {\n var color = _a.color;\n return (react_1.default.createElement(\"div\", null,\n react_1.default.createElement(\"svg\", { width: \"49\", height: \"49\", viewBox: \"0 0 49 49\", fill: color, xmlns: \"http://www.w3.org/2000/svg\" },\n react_1.default.createElement(\"g\", { clipPath: \"url(#clip0_2588_4216)\" },\n react_1.default.createElement(\"path\", { d: \"M11.3777 29.4643C10.2737 29.4643 9.37773 30.3603 9.37773 31.4643C9.37773 32.5683 10.2737 33.4643 11.3777 33.4643C12.4817 33.4643 13.3777 32.5683 13.3777 31.4643C13.3777 30.3603 12.4817 29.4643 11.3777 29.4643ZM20.9777 29.4643C19.8737 29.4643 18.9777 30.3603 18.9777 31.4643C18.9777 32.5683 19.8737 33.4643 20.9777 33.4643C22.0817 33.4643 22.9777 32.5683 22.9777 31.4643C22.9777 30.3603 22.0817 29.4643 20.9777 29.4643ZM16.1777 13.8643C7.34573 13.8643 0.177734 21.0323 0.177734 29.8643C0.177734 38.6963 7.34573 45.8643 16.1777 45.8643C25.0097 45.8643 32.1777 38.6963 32.1777 29.8643C32.1777 21.0323 25.0097 13.8643 16.1777 13.8643ZM16.1777 42.6643C9.12173 42.6643 3.37773 36.9203 3.37773 29.8643C3.37773 29.4003 3.40973 28.9363 3.45773 28.4883C7.23373 26.8083 10.2257 23.7203 11.7937 19.8963C14.6897 23.9923 19.4577 26.6643 24.8497 26.6643C26.0977 26.6643 27.2977 26.5203 28.4497 26.2483C28.7857 27.3843 28.9777 28.6003 28.9777 29.8643C28.9777 36.9203 23.2337 42.6643 16.1777 42.6643Z\", fill: \"current\" }),\n react_1.default.createElement(\"path\", { d: \"M37.7324 25.9131H41.8066V29.8643H37.7324V25.9131ZM32.7422 16.0693C32.8516 13.4717 33.7585 11.6305 35.4629 10.5459C36.5384 9.85319 37.86 9.50684 39.4277 9.50684C41.4876 9.50684 43.1966 9.99902 44.5547 10.9834C45.9219 11.9678 46.6055 13.4261 46.6055 15.3584C46.6055 16.5433 46.3092 17.5413 45.7168 18.3525C45.3704 18.8447 44.7051 19.4736 43.7207 20.2393L42.75 20.9912C42.2214 21.4014 41.8704 21.8799 41.6973 22.4268C41.5879 22.7731 41.5286 23.3109 41.5195 24.04H37.8281C37.8828 22.4997 38.0286 21.4378 38.2656 20.8545C38.5026 20.262 39.1133 19.583 40.0977 18.8174L41.0957 18.0381C41.4238 17.792 41.6882 17.5231 41.8887 17.2314C42.2533 16.7301 42.4355 16.1787 42.4355 15.5771C42.4355 14.8844 42.2305 14.2555 41.8203 13.6904C41.4193 13.1162 40.681 12.8291 39.6055 12.8291C38.5482 12.8291 37.7962 13.18 37.3496 13.8818C36.9121 14.5837 36.6934 15.3128 36.6934 16.0693H32.7422Z\", fill: \"current\" })),\n react_1.default.createElement(\"defs\", null,\n react_1.default.createElement(\"clipPath\", { id: \"clip0_2588_4216\" },\n react_1.default.createElement(\"rect\", { width: \"48\", height: \"48\", fill: \"current\", transform: \"translate(0.177734 0.864258)\" }))))));\n};\nQuestionFaceIcon.defaultProps = {\n color: 'black',\n};\nexports.default = QuestionFaceIcon;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importDefault(require(\"react\"));\nvar WalkingWithDogIcon = function (_a) {\n var color = _a.color;\n return (react_1.default.createElement(\"div\", null,\n react_1.default.createElement(\"svg\", { width: \"33\", height: \"33\", viewBox: \"0 0 33 33\", fill: color, xmlns: \"http://www.w3.org/2000/svg\" },\n react_1.default.createElement(\"g\", { clipPath: \"url(#clip0_2146_3086)\" },\n react_1.default.createElement(\"path\", { d: \"M25.6635 24.8673L26.228 24.3029C24.0362 22.3975 21.2234 19.2364 18.8085 16.8927C19.1065 16.2972 18.9267 15.5598 18.3572 15.181C15.7528 13.4508 14.7666 12.2088 13.6253 10.7703C13.114 10.1258 12.5846 9.45925 11.883 8.69819C11.8185 8.62799 11.7483 8.56706 11.674 8.51438C11.4035 8.26301 11.1026 8.05003 10.792 7.90003C10.792 7.90003 10.459 7.71731 10.0799 7.64492C9.71703 7.57582 9.29589 7.57324 9.29589 7.57324H9.28597C9.24495 7.5744 9.20302 7.58207 9.16232 7.58451C9.13192 7.58587 9.10248 7.582 9.07202 7.58451C9.02237 7.58992 8.972 7.60036 8.92228 7.60738C8.86928 7.61407 8.81782 7.62097 8.76488 7.63037C6.15368 8.03998 3.40556 10.0765 0.375282 13.8542C-0.0875899 14.4312 0.00482985 15.2738 0.581762 15.7364C0.828944 15.9345 1.12501 16.0308 1.41901 16.0308C1.81098 16.0308 2.1994 15.8595 2.46397 15.5298C3.76564 13.9076 4.90559 12.7705 5.89329 11.9726L4.79379 17.1036C4.63613 17.8414 4.84215 18.5216 5.25234 19.0747L4.90617 24.357L2.70465 30.0471C2.36556 30.9247 2.80209 31.9124 3.67928 32.2512C3.8817 32.329 4.08972 32.3664 4.29421 32.3664C4.97734 32.3664 5.62241 31.9523 5.88389 31.2768L8.1788 25.3426C8.24095 25.1814 8.27837 25.0119 8.2899 24.84L8.49155 21.7655L10.5165 24.9645L12.1933 31.1013C12.3964 31.8629 13.0856 32.3663 13.8386 32.3663C13.9839 32.3663 14.1315 32.3479 14.2785 32.3079C15.1876 32.0664 15.7282 31.133 15.4862 30.2231L13.7423 23.835C13.6984 23.6681 13.6282 23.5087 13.5359 23.3631L10.7752 19.0015C10.8632 18.826 10.9377 18.6397 10.9828 18.4295L12.1117 13.1616C13.1685 14.4567 14.3842 15.7562 16.8769 17.4114C17.1046 17.5628 17.3615 17.6355 17.6165 17.6355C17.8755 17.6355 18.1273 17.5521 18.3474 17.4072C20.5808 19.5753 23.3907 22.8876 25.6635 24.8673Z\", fill: \"current\" }),\n react_1.default.createElement(\"path\", { d: \"M11.6197 7.76874C13.5243 7.76874 15.0683 6.22476 15.0683 4.32016C15.0683 2.41556 13.5243 0.871582 11.6197 0.871582C9.71513 0.871582 8.17114 2.41556 8.17114 4.32016C8.17114 6.22476 9.71513 7.76874 11.6197 7.76874Z\", fill: \"current\" }),\n react_1.default.createElement(\"path\", { d: \"M22.1368 25.2633L20.9453 24.3063C20.676 24.0901 20.2822 24.1328 20.0656 24.4022C19.8492 24.6718 19.8922 25.0655 20.1615 25.282L21.3774 26.2585V28.9134C21.3774 28.9281 21.3792 28.9422 21.3815 28.9561L20.3113 31.0129C20.1518 31.3195 20.2709 31.6974 20.5775 31.8569C20.6699 31.9049 20.7686 31.9277 20.8659 31.9277C21.0918 31.9277 21.31 31.805 21.4215 31.5908L22.4983 29.5215L23.7033 31.6141C23.8191 31.8151 24.0295 31.9277 24.2462 31.9277C24.3521 31.9277 24.4595 31.9007 24.5578 31.8441C24.8572 31.6716 24.9603 31.289 24.7878 30.9895L23.7364 29.1638H27.6304V31.3017C27.6304 31.6472 27.9106 31.9275 28.2562 31.9275C28.6018 31.9275 28.882 31.6472 28.882 31.3017V28.9586C28.8846 28.9438 28.8864 28.9288 28.8864 28.9134V26.9345L25.9718 25.2632L22.1368 25.2633Z\", fill: \"current\" }),\n react_1.default.createElement(\"path\", { d: \"M30.5059 23.9915C30.1191 23.6271 29.9894 23.2006 29.5551 22.8914C29.4795 22.8377 29.4031 22.7831 29.3223 22.7374C29.2739 22.7103 29.2582 22.6787 29.2638 22.6261C29.2822 22.4468 29.3005 22.2672 29.3148 22.0875C29.3404 21.7657 29.2477 21.4727 28.9892 21.2829C28.8854 21.2067 28.3734 20.9588 28.1506 21.8071C28.1019 21.9917 28.0363 22.1753 27.9486 22.3436C27.6265 22.9622 27.2182 23.527 26.827 24.1027C26.6485 24.3653 26.4704 24.6275 26.2925 24.8894L29.0289 26.4478C29.0289 26.4478 29.5563 25.8711 29.6304 25.9035C29.7332 25.9488 29.8366 25.9933 29.9394 26.038C30.2408 26.169 30.5549 26.2298 30.8841 26.2104C31.4436 26.1779 32.026 25.8808 32.0794 25.2102C32.1285 24.5947 30.6367 24.1147 30.5059 23.9915Z\", fill: \"current\" })),\n react_1.default.createElement(\"defs\", null,\n react_1.default.createElement(\"clipPath\", { id: \"clip0_2146_3086\" },\n react_1.default.createElement(\"rect\", { width: \"32\", height: \"32\", fill: \"white\", transform: \"translate(0.0805664 0.619141)\" }))))));\n};\nWalkingWithDogIcon.defaultProps = {\n color: 'black',\n};\nexports.default = WalkingWithDogIcon;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importDefault(require(\"react\"));\nvar WorkingWithLaptopIcon = function (_a) {\n var color = _a.color;\n return (react_1.default.createElement(\"div\", null,\n react_1.default.createElement(\"svg\", { width: \"35\", height: \"33\", fill: color, viewBox: \"0 0 35 33\", xmlns: \"http://www.w3.org/2000/svg\" },\n react_1.default.createElement(\"path\", { d: \"M18.0555 13.8506H0.722412V15.6946H2.20431V32.4607H14.4584V15.6946H18.0555V13.8506Z\", fill: \"current\" }),\n react_1.default.createElement(\"path\", { d: \"M27.0188 22.2223C27.022 22.2223 27.0277 22.2243 27.0315 22.2243C29.2919 22.2898 30.5821 21.6199 30.7822 19.8394L31.6991 11.6409C31.8701 10.1134 30.6451 8.94784 29.4213 8.50191L29.4114 8.49875C29.4114 8.49875 28.975 8.35763 28.576 8.30352C28.16 8.24838 27.7506 8.32293 27.7506 8.32293C26.7946 8.43376 25.8502 9.10589 25.8502 9.10589C24.092 10.351 21.3663 10.62 17.7429 9.90454C16.8314 9.72219 15.9452 10.3139 15.7642 11.2198C15.5831 12.126 16.1753 13.0065 17.087 13.1866C18.606 13.4878 20.0188 13.6368 21.3221 13.6368C22.5065 13.6368 23.5705 13.5064 24.5706 13.2584L24.5627 13.374L23.9783 18.5994C20.9175 18.7093 18.9891 19.3363 18.2333 20.4752C17.2111 22.0228 15.5502 28.2621 15.0658 30.1761C14.8155 31.1648 15.4198 32.1681 16.4144 32.4176C16.5657 32.4554 16.7183 32.4743 16.8686 32.4743C17.6997 32.4743 18.4577 31.9152 18.6693 31.0779C19.5229 27.7063 20.7022 24.2117 21.2407 23.1054C21.6869 22.1432 24.6384 22.0919 27.0188 22.2223Z\", fill: \"current\" }),\n react_1.default.createElement(\"path\", { d: \"M28.1311 8.09558C30.2076 8.09558 31.8909 6.42192 31.8909 4.35736C31.8909 2.2928 30.2076 0.619141 28.1311 0.619141C26.0546 0.619141 24.3713 2.2928 24.3713 4.35736C24.3713 6.42192 26.0546 8.09558 28.1311 8.09558Z\", fill: \"current\" }),\n react_1.default.createElement(\"path\", { d: \"M34.2765 18.5962L34.7759 12.1594C34.7772 12.1229 34.7635 12.0875 34.738 12.0612C34.7124 12.0349 34.6773 12.02 34.6406 12.02H32.5858C32.5128 12.02 32.453 12.0774 32.4503 12.15L31.9861 18.5915C31.9249 20.5774 31.3364 23.0199 27.9815 23.0199C27.934 23.0199 24.2716 23.0117 24.2716 23.0117C24.2715 23.0117 24.2715 23.0117 24.2715 23.0117C24.2355 23.0117 24.2012 23.0259 24.1757 23.0511C24.1504 23.0764 24.136 23.1107 24.136 23.1464V25.1368C24.136 25.2112 24.1967 25.2715 24.2715 25.2715L27.6395 25.2714V29.8464H26.582C25.1978 29.8464 24.0283 31.0546 24.0283 32.4846C24.0283 32.559 24.089 32.6192 24.1637 32.6192H25.4976C25.5725 32.6192 25.6331 32.559 25.6331 32.4846C25.6331 31.9585 26.0673 31.5141 26.5815 31.5141H30.9669C31.4813 31.5141 31.9158 31.9585 31.9158 32.4846C31.9158 32.559 31.9765 32.6192 32.0513 32.6192H33.3856C33.4604 32.6192 33.5211 32.559 33.5211 32.4846C33.5211 31.0546 32.3513 29.8464 30.9668 29.8464H29.9103V25.026C33.2173 24.9371 33.9846 21.6788 34.2765 18.5962Z\", fill: \"current\" }),\n react_1.default.createElement(\"path\", { d: \"M14.814 11.8848H8.46403L6.31485 4.05419C6.29969 3.99912 6.24264 3.96656 6.18732 3.98177L5.04135 4.29264C5.01477 4.29987 4.9922 4.31728 4.97856 4.34103C4.96485 4.36485 4.96125 4.393 4.96852 4.41944L7.37726 13.1954C7.38958 13.2403 7.43064 13.2715 7.47744 13.2715H14.8141C14.8715 13.2715 14.9179 13.2253 14.9179 13.1682V11.988C14.9179 11.931 14.8714 11.8848 14.814 11.8848Z\", fill: \"curren\" }))));\n};\nWorkingWithLaptopIcon.defaultProps = {\n color: 'black',\n};\nexports.default = WorkingWithLaptopIcon;\n","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGQ9Ik0xMi4wMzIgMTUuNjY3NkMxNC44OTkgMTcuMTg5MyAxNi4yNDQ0IDIwLjU5MTkgMTUuMjg0MyAyMy43MjAyQzE1LjEwOCAyNC4yODE5IDE0Ljk1MTMgMjQuODYzMSAxNC44MjcyIDI1LjQ0NDRDMTQuMzE3OCAyOC4wNTY4IDE1LjAwMzUgMzEuMzM1MyAxNy44NzcxIDMxLjkxNjVDMTkuMzI3IDMyLjIyMzUgMjAuNzcwMyAzMS42NjE4IDIxLjc4OTEgMzAuNTk3M0MyNC44MjYgMjcuMjk5MiAyMy44OTg2IDE3LjM2NTcgMjMuODcyNSAxNC44Nzc0QzIzLjg3MjUgMTMuNzg2NyAyMy44NDY0IDEyLjY2OTkgMjMuNDE1MyAxMS42NTExQzIyLjQ0ODggOS4zNjUzMSAxOS43MzE5IDguNDUwOTggMTcuMzIyIDcuODE3NDhDMTMuMzY0MyA2LjM3NDE1IDEwLjg2OTUgOC4xOTYyOCAxMC4wMzM1IDkuNTQxNjRDOS4xOTc1NCAxMC44ODcgOC41OTAxNyAxMy44NzgyIDEyLjAzMiAxNS42Njc2WiIgZmlsbD0iIzA1NjgzOSIvPgo8cGF0aCBkPSJNOS4yNjI4NyA1Ljc4NjM4QzEwLjM5OSA1Ljc4NjM4IDExLjMyMDEgNC40OTEwNiAxMS4zMjAxIDIuODkzMTlDMTEuMzIwMSAxLjI5NTMzIDEwLjM5OSAwIDkuMjYyODcgMEM4LjEyNjY4IDAgNy4yMDU2MyAxLjI5NTMzIDcuMjA1NjMgMi44OTMxOUM3LjIwNTYzIDQuNDkxMDYgOC4xMjY2OCA1Ljc4NjM4IDkuMjYyODcgNS43ODYzOFoiIGZpbGw9IiMwNTY4MzkiLz4KPHBhdGggZD0iTTE0LjAxNzQgNS4xMDA2M0MxNC42OTE5IDUuMTAwNjMgMTUuMjM4NiA0LjMyODcgMTUuMjM4NiAzLjM3NjQ3QzE1LjIzODYgMi40MjQyNSAxNC42OTE5IDEuNjUyMzEgMTQuMDE3NCAxLjY1MjMxQzEzLjM0MjkgMS42NTIzMSAxMi43OTYxIDIuNDI0MjUgMTIuNzk2MSAzLjM3NjQ3QzEyLjc5NjEgNC4zMjg3IDEzLjM0MjkgNS4xMDA2MyAxNC4wMTc0IDUuMTAwNjNaIiBmaWxsPSIjMDU2ODM5Ii8+CjxwYXRoIGQ9Ik0xNy44MjQ5IDUuOTYyNzFDMTguNDI3MyA1Ljk2MjcxIDE4LjkxNTYgNS4yODE0MiAxOC45MTU2IDQuNDQxMDFDMTguOTE1NiAzLjYwMDYgMTguNDI3MyAyLjkxOTMxIDE3LjgyNDkgMi45MTkzMUMxNy4yMjI2IDIuOTE5MzEgMTYuNzM0MyAzLjYwMDYgMTYuNzM0MyA0LjQ0MTAxQzE2LjczNDMgNS4yODE0MiAxNy4yMjI2IDUuOTYyNzEgMTcuODI0OSA1Ljk2MjcxWiIgZmlsbD0iIzA1NjgzOSIvPgo8cGF0aCBkPSJNMjEuMjk5MyA2LjY4MTEyQzIxLjgzMzEgNi42ODExMiAyMi4yNjU5IDYuMDc4NzggMjIuMjY1OSA1LjMzNTc1QzIyLjI2NTkgNC41OTI3MyAyMS44MzMxIDMuOTkwMzkgMjEuMjk5MyAzLjk5MDM5QzIwLjc2NTUgMy45OTAzOSAyMC4zMzI3IDQuNTkyNzMgMjAuMzMyNyA1LjMzNTc1QzIwLjMzMjcgNi4wNzg3OCAyMC43NjU1IDYuNjgxMTIgMjEuMjk5MyA2LjY4MTEyWiIgZmlsbD0iIzA1NjgzOSIvPgo8cGF0aCBkPSJNMjMuMDcxOSA2Ljk1OTEyQzIyLjkzODkgNy42MDU2NiAyMy4yMDkyIDguMjA3NTEgMjMuNjc1NiA4LjMwMzRDMjQuMTQxOSA4LjM5OTI5IDI0LjYyNzggNy45NTI5IDI0Ljc2MDcgNy4zMDYzN0MyNC44OTM2IDYuNjU5ODMgMjQuNjIzMyA2LjA1Nzk4IDI0LjE1NyA1Ljk2MjA5QzIzLjY5MDYgNS44NjYyIDIzLjIwNDggNi4zMTI1OSAyMy4wNzE5IDYuOTU5MTJaIiBmaWxsPSIjMDU2ODM5Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cGF0aCBkPSJNMCAwSDMyVjMySDBWMFoiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzQiIGhlaWdodD0iMzQiIHZpZXdCb3g9IjAgMCAzNCAzNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8yMTQ2XzMyMTcpIj4KICAgICAgICA8Y2lyY2xlIGN4PSIxNi43Njc2IiBjeT0iMTYuNzM2NCIgcj0iMTQuNzQ5IiBzdHJva2U9IiMzMzMzMzMiIHN0cm9rZS13aWR0aD0iMi41Ii8+CiAgICAgICAgPGNpcmNsZSBjeD0iMTEuNDgwNiIgY3k9IjE1LjMzMjkiIHI9IjMuNzQ3OTQiIHN0cm9rZT0iIzMzMzMzMyIgc3Ryb2tlLXdpZHRoPSIyIi8+CiAgICAgICAgPGxpbmUgeDE9IjYuMjY4OTUiIHkxPSIxNS4zNTQyIiB4Mj0iMTMuOTk1OSIgeTI9IjE0Ljc3MzYiIHN0cm9rZT0iIzMzMzMzMyIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz4KICAgICAgICA8Y2lyY2xlIGN4PSIxMS42MjIyIiBjeT0iMTYuMDYxMiIgcj0iMS40MTQ2OCIgZmlsbD0iIzMzMzMzMyIvPgogICAgICAgIDxjaXJjbGUgY3g9IjIzLjI1NzkiIGN5PSIxNS41MDQ5IiByPSI0LjEyNTA0IiB0cmFuc2Zvcm09InJvdGF0ZSgtMTY1IDIzLjI1NzkgMTUuNTA0OSkiIHN0cm9rZT0iIzMzMzMzMyIgc3Ryb2tlLXdpZHRoPSIyIi8+CiAgICAgICAgPGxpbmUgeDE9IjI5LjA3MDciIHkxPSIxNS43NDE3IiB4Mj0iMjAuNjk1OSIgeTI9IjE0LjE1ODgiIHN0cm9rZT0iIzMzMzMzMyIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz4KICAgICAgICA8Y2lyY2xlIGN4PSIyMy4yNTc4IiBjeT0iMTYuMjM2NSIgcj0iMS41MjcwNCIgZmlsbD0iIzMzMzMzMyIvPgogICAgICAgIDxwYXRoIGQ9Ik0xNi45ODEgMjMuODU4NEMxNi4wMzk2IDIzLjg1ODQgMTUuMjczNyAyNC42MjQzIDE1LjI3MzcgMjUuNTY1N0MxNS4yNzM3IDI2LjUwNzIgMTYuMDM5NiAyNy4yNzMxIDE2Ljk4MSAyNy4yNzMxQzE3LjkyMjEgMjcuMjczMSAxOC42ODggMjYuNTA3MyAxOC42ODg0IDI1LjU2NTdDMTguNjg4NCAyNC42MjQzIDE3LjkyMjYgMjMuODU4NCAxNi45ODEgMjMuODU4NFoiIGZpbGw9IiMzMzMzMzMiLz4KICAgIDwvZz4KICAgIDxkZWZzPgogICAgICAgIDxjbGlwUGF0aCBpZD0iY2xpcDBfMjE0Nl8zMjE3Ij4KICAgICAgICAgICAgPHJlY3Qgd2lkdGg9IjMzIiBoZWlnaHQ9IjMzIiBmaWxsPSJ3aGl0ZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC43MzgyODEgMC4yMzczMDUpIi8+CiAgICAgICAgPC9jbGlwUGF0aD4KICAgIDwvZGVmcz4KPC9zdmc+Cg==\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPG1hc2sgaWQ9Im1hc2swIiBtYXNrLXR5cGU9ImFscGhhIiBtYXNrVW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4PSIzIiB5PSIyIiB3aWR0aD0iMTkiIGhlaWdodD0iMjEiPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTIwLjY0MjkgMjNIOC40Mjg1N0g1LjcxNDI5QzQuMjIxNDMgMjMgMyAyMS44MTg4IDMgMjAuMzc1VjQuNjI1QzMgMy4xODEyNSA0LjIyMTQzIDIgNS43MTQyOSAySDguNDI4NTdIMTkuMjg1N0gyMC42NDI5QzIxLjM4OTMgMiAyMiAyLjU5MDYyIDIyIDMuMzEyNVY0LjYyNVYxNS4xOTA2VjE3Ljc1VjIwLjM3NVYyMS4wMzEyVjIxLjY4NzVDMjIgMjIuNDA5NCAyMS4zODkzIDIzIDIwLjY0MjkgMjNWMjNWMjNaTTE5LjkyODcgNC43MjQ5MUMxOS45Mjg3IDQuMjc4NjQgMTkuNTczMiAzLjk4MTEzIDE5LjA0IDMuOTgxMTNINi41OTczNUM2LjA2NDEgMy45ODExMyA1LjcwODYgNC4yNzg2NCA1LjcwODYgNC43MjQ5MVYxNS4yMTIyQzUuNzA4NiAxNS42NTg1IDYuMDY0MSAxNS45NTYgNi41OTczNSAxNS45NTZIMTkuMDRDMTkuNTczMiAxNS45NTYgMTkuOTI4NyAxNS42NTg1IDE5LjkyODcgMTUuMjEyMlY0LjcyNDkxVjQuNzI0OTFaTTE5LjkyODcgMTguNzczNkMxOS45Mjg3IDE4LjM1MDkgMTkuNjQ0MyAxOC4wNjkyIDE5LjIxNzcgMTguMDY5Mkg4LjU1MjYySDcuMTMwNjFDNi4zNDg1IDE4LjA2OTIgNS43MDg2IDE4LjcwMzEgNS43MDg2IDE5LjQ3OFYxOS40NzhDNS43MDg2IDIwLjI1MjggNi4zNDg1IDIwLjg4NjggNy4xMzA2MSAyMC44ODY4SDguNTUyNjJIMTkuMjE3N0MxOS42NDQzIDIwLjg4NjggMTkuOTI4NyAyMC42MDUgMTkuOTI4NyAyMC4xODI0VjE4Ljc3MzZWMTguNzczNlpNMTQuNDkyMyA5LjYzNjM3SDEwLjgyMThDMTAuNDU0OCA5LjYzNjM3IDEwLjIxMDEgOS40NDU0NiAxMC4yMTAxIDkuMTU5MDlWOC4yMDQ1NUMxMC4yMTAxIDcuOTE4MTkgMTAuNDU0OCA3LjcyNzI4IDEwLjgyMTggNy43MjcyOEgxNC40OTIzQzE0Ljg1OTMgNy43MjcyOCAxNS4xMDQgNy45MTgxOSAxNS4xMDQgOC4yMDQ1NVY5LjE1OTA5QzE1LjEwNCA5LjQ0NTQ2IDE0Ljg1OTMgOS42MzYzNyAxNC40OTIzIDkuNjM2MzdWOS42MzYzN1Y5LjYzNjM3WiIgZmlsbD0id2hpdGUiLz4KPC9tYXNrPgo8ZyBtYXNrPSJ1cmwoI21hc2swKSI+CjxyZWN0IHg9Ii02ODIiIHk9Ii0yMzMiIHdpZHRoPSI4MDAiIGhlaWdodD0iNjAwIiBmaWxsPSIjMDU2ODM5Ii8+CjwvZz4KPC9zdmc+Cg==\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTMuMzY4NzUgMjIuNEMyLjI4Mjg4IDIyLjQgMS40IDIxLjUxNzEgMS40IDIwLjQzMTNWNS45OTM3NkMxLjQgNC45MDc4OCAyLjI4Mjg4IDQuMDI1MDEgMy4zNjg3NSA0LjAyNTAxSDYuNjVWMi4wNTYyNkM2LjY1IDEuNjk0MDEgNi45NDQgMS40MDAwMSA3LjMwNjI1IDEuNDAwMDFDNy42Njg1IDEuNDAwMDEgNy45NjI1IDEuNjk0MDEgNy45NjI1IDIuMDU2MjZWNC4wMjUwMUgxNS44Mzc1VjIuMDU2MjZDMTUuODM3NSAxLjY5NDAxIDE2LjEzMTUgMS40MDAwMSAxNi40OTM4IDEuNDAwMDFDMTYuODU2IDEuNDAwMDEgMTcuMTUgMS42OTQwMSAxNy4xNSAyLjA1NjI2VjQuMDI1MDFIMjAuNDMxM0MyMS41MTcxIDQuMDI1MDEgMjIuNCA0LjkwNzg4IDIyLjQgNS45OTM3NlYyMC40MzEzQzIyLjQgMjEuNTE3MSAyMS41MTcxIDIyLjQgMjAuNDMxMyAyMi40SDMuMzY4NzVaTTIuNzEyNSAyMC40MzEzQzIuNzEyNSAyMC43OTM1IDMuMDA2NSAyMS4wODc1IDMuMzY4NzUgMjEuMDg3NUgyMC40MzEzQzIwLjc5MzUgMjEuMDg3NSAyMS4wODc1IDIwLjc5MzUgMjEuMDg3NSAyMC40MzEzVjEwLjU4NzVIMi43MTI1VjIwLjQzMTNaTTIxLjA4NzUgOS4yNzUwMVY1Ljk5Mzc2QzIxLjA4NzUgNS42MzE1MSAyMC43OTM1IDUuMzM3NTEgMjAuNDMxMyA1LjMzNzUxSDE3LjE1VjYuNjUwMDFDMTcuMTUgNy4wMTIyNiAxNi44NTYgNy4zMDYyNiAxNi40OTM4IDcuMzA2MjZDMTYuMTMxNSA3LjMwNjI2IDE1LjgzNzUgNy4wMTIyNiAxNS44Mzc1IDYuNjUwMDFWNS4zMzc1MUg3Ljk2MjVWNi42NTAwMUM3Ljk2MjUgNy4wMTIyNiA3LjY2ODUgNy4zMDYyNiA3LjMwNjI1IDcuMzA2MjZDNi45NDQgNy4zMDYyNiA2LjY1IDcuMDEyMjYgNi42NSA2LjY1MDAxVjUuMzM3NTFIMy4zNjg3NUMzLjAwNjUgNS4zMzc1MSAyLjcxMjUgNS42MzE1MSAyLjcxMjUgNS45OTM3NlY5LjI3NTAxSDIxLjA4NzVaIiBmaWxsPSIjMDU2ODM5IiBzdHJva2U9IiMwNTY4MzkiIHN0cm9rZS13aWR0aD0iMC43NSIvPgo8cGF0aCBkPSJNNi4zMjE4OCAxNC41MjVDNi44NjU1MyAxNC41MjUgNy4zMDYyNSAxNC4wODQzIDcuMzA2MjUgMTMuNTQwNkM3LjMwNjI1IDEyLjk5NyA2Ljg2NTUzIDEyLjU1NjIgNi4zMjE4OCAxMi41NTYyQzUuNzc4MjIgMTIuNTU2MiA1LjMzNzUgMTIuOTk3IDUuMzM3NSAxMy41NDA2QzUuMzM3NSAxNC4wODQzIDUuNzc4MjIgMTQuNTI1IDYuMzIxODggMTQuNTI1WiIgZmlsbD0iIzA1NjgzOSIgc3Ryb2tlPSIjMDU2ODM5IiBzdHJva2Utd2lkdGg9IjAuNSIvPgo8cGF0aCBkPSJNNi4zMjE4OCAxOS4xMTg4QzYuODY1NTMgMTkuMTE4OCA3LjMwNjI1IDE4LjY3OCA3LjMwNjI1IDE4LjEzNDRDNy4zMDYyNSAxNy41OTA3IDYuODY1NTMgMTcuMTUgNi4zMjE4OCAxNy4xNUM1Ljc3ODIyIDE3LjE1IDUuMzM3NSAxNy41OTA3IDUuMzM3NSAxOC4xMzQ0QzUuMzM3NSAxOC42NzggNS43NzgyMiAxOS4xMTg4IDYuMzIxODggMTkuMTE4OFoiIGZpbGw9IiMwNTY4MzkiIHN0cm9rZT0iIzA1NjgzOSIgc3Ryb2tlLXdpZHRoPSIwLjUiLz4KPHBhdGggZD0iTTExLjkgMTQuNTI1QzEyLjQ0MzcgMTQuNTI1IDEyLjg4NDQgMTQuMDg0MyAxMi44ODQ0IDEzLjU0MDZDMTIuODg0NCAxMi45OTcgMTIuNDQzNyAxMi41NTYyIDExLjkgMTIuNTU2MkMxMS4zNTYzIDEyLjU1NjIgMTAuOTE1NiAxMi45OTcgMTAuOTE1NiAxMy41NDA2QzEwLjkxNTYgMTQuMDg0MyAxMS4zNTYzIDE0LjUyNSAxMS45IDE0LjUyNVoiIGZpbGw9IiMwNTY4MzkiIHN0cm9rZT0iIzA1NjgzOSIgc3Ryb2tlLXdpZHRoPSIwLjUiLz4KPHBhdGggZD0iTTExLjkgMTkuMTE4OEMxMi40NDM3IDE5LjExODggMTIuODg0NCAxOC42NzggMTIuODg0NCAxOC4xMzQ0QzEyLjg4NDQgMTcuNTkwNyAxMi40NDM3IDE3LjE1IDExLjkgMTcuMTVDMTEuMzU2MyAxNy4xNSAxMC45MTU2IDE3LjU5MDcgMTAuOTE1NiAxOC4xMzQ0QzEwLjkxNTYgMTguNjc4IDExLjM1NjMgMTkuMTE4OCAxMS45IDE5LjExODhaIiBmaWxsPSIjMDU2ODM5IiBzdHJva2U9IiMwNTY4MzkiIHN0cm9rZS13aWR0aD0iMC41Ii8+CjxwYXRoIGQ9Ik0xNy40NzgxIDE0LjUyNUMxOC4wMjE4IDE0LjUyNSAxOC40NjI1IDE0LjA4NDMgMTguNDYyNSAxMy41NDA2QzE4LjQ2MjUgMTIuOTk3IDE4LjAyMTggMTIuNTU2MiAxNy40NzgxIDEyLjU1NjJDMTYuOTM0NSAxMi41NTYyIDE2LjQ5MzggMTIuOTk3IDE2LjQ5MzggMTMuNTQwNkMxNi40OTM4IDE0LjA4NDMgMTYuOTM0NSAxNC41MjUgMTcuNDc4MSAxNC41MjVaIiBmaWxsPSIjMDU2ODM5IiBzdHJva2U9IiMwNTY4MzkiIHN0cm9rZS13aWR0aD0iMC41Ii8+CjxwYXRoIGQ9Ik0xNy40NzgxIDE5LjExODhDMTYuOTM1NiAxOS4xMTg4IDE2LjQ5MzggMTguNjc2OSAxNi40OTM4IDE4LjEzNDRDMTYuNDkzOCAxNy41OTE5IDE2LjkzNTYgMTcuMTUgMTcuNDc4MSAxNy4xNUMxNy40OTA0IDE3LjE1IDE3LjUwNDQgMTcuMTUwOSAxNy41MTg0IDE3LjE1MjZDMTcuNTI3MSAxNy4xNTM1IDE3LjUzNSAxNy4xNTQ0IDE3LjU0MiAxNy4xNTUzQzE4LjA1MjEgMTcuMTgwNiAxOC40NjI1IDE3LjYxMTEgMTguNDYyNSAxOC4xMzUzQzE4LjQ2MjUgMTguNjc2OSAxOC4wMjA2IDE5LjExODggMTcuNDc4MSAxOS4xMTg4WiIgZmlsbD0iIzA1NjgzOSIgc3Ryb2tlPSIjMDU2ODM5IiBzdHJva2Utd2lkdGg9IjAuNSIvPgo8L3N2Zz4K\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDIiIGhlaWdodD0iNDYiIHZpZXdCb3g9IjAgMCA0MiA0NiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiPgogICAgICAgIDxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMSkiPgogICAgICAgICAgICA8cGF0aCBkPSJNNC44MDY5MSAyMC40MDM2TDI1LjY5MDkgMjAuNDAzNkwyNS42OTA5IDIuNDg4MDNMNC44MDY5MSAyLjQ4ODAzTDQuODA2OTEgMjAuNDAzNloiIGZpbGw9IiNGRTY3NjciLz4KICAgICAgICAgICAgPHBhdGggZD0iTTI1LjY5MTIgMjAuNDYxN1Y3LjIxOTczSDM3LjA4NTFMMzEuNzI4NiAxNC45NDkyTDM3LjA4NTEgMjIuNjgwOUgxOS4wNjJWMjAuNDYxN0gyNS42OTEyWiIgZmlsbD0iI0NGNDU0NSIvPgogICAgICAgICAgICA8cGF0aCBkPSJNNC44MDcxMyA0Ni41Nzg2VjQuNDMzNTkiIHN0cm9rZT0iIzNBM0EzOSIgc3Ryb2tlLXdpZHRoPSI0IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KICAgICAgICA8L2c+CiAgICA8L2c+CiAgICA8ZGVmcz4KICAgICAgICA8Y2xpcFBhdGggaWQ9ImNsaXAwIj4KICAgICAgICAgICAgPHJlY3Qgd2lkdGg9IjQxIiBoZWlnaHQ9IjQ1IiBmaWxsPSJ3aGl0ZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC44MDYxNTIgMC44MzY2NykiLz4KICAgICAgICA8L2NsaXBQYXRoPgogICAgICAgIDxjbGlwUGF0aCBpZD0iY2xpcDEiPgogICAgICAgICAgICA8cmVjdCB3aWR0aD0iNDEiIGhlaWdodD0iNDUiIGZpbGw9IndoaXRlIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjgwNjE1MiAwLjgzNjY3KSIvPgogICAgICAgIDwvY2xpcFBhdGg+CiAgICA8L2RlZnM+Cjwvc3ZnPg==\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjUiIGhlaWdodD0iNTciIHZpZXdCb3g9IjAgMCA2NSA1NyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiPgogICAgICAgIDxwYXRoIGQ9Ik0yNS40MzU5IDE4LjU0NjFMNDAuMjA3NSAxOC41NDYxVjUuODA2MjFMMjUuNDM1OSA1LjgwNjIxVjE4LjU0NjFaIiBmaWxsPSIjRkU2NzY3Ii8+CiAgICAgICAgPHBhdGggZD0iTTQwLjIwNzUgMTguNTg3NFY5LjE3MDlINDguMjY2Nkw0NC40Nzc5IDE0LjY2NzRMNDguMjY2NiAyMC4xNjU1SDM1LjUxODZWMTguNTg3NEg0MC4yMDc1WiIgZmlsbD0iI0NGNDU0NSIvPgogICAgICAgIDxwYXRoIGQ9Ik0yNS40MzYgMzcuMTU5NVY3LjE4OTciIHN0cm9rZT0iIzNBM0EzOSIgc3Ryb2tlLXdpZHRoPSI0IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KICAgIDwvZz4KICAgIDxwYXRoIGQ9Ik01MS4xNTA5IDI4LjYzMThINDAuNTQ0NUMzOS44NDEzIDI4LjYzMTggMzkuMTY2OCAyOC45MTEyIDM4LjY2OTUgMjkuNDA4NUMzOC4xNzIzIDI5LjkwNTcgMzcuODkyOSAzMC41ODAyIDM3Ljg5MjkgMzEuMjgzNEMzNy44OTI5IDMxLjk4NjcgMzguMTcyMyAzMi42NjExIDM4LjY2OTUgMzMuMTU4NEMzOS4xNjY4IDMzLjY1NTcgMzkuODQxMyAzMy45MzUxIDQwLjU0NDUgMzMuOTM1MUg0NC43NDk4TDM1LjI0MTMgNDMuNDQzNUwyNi41MDk2IDM0LjcxMTlDMjYuMjYzNSAzNC40NjU2IDI1Ljk3MTIgMzQuMjcwMiAyNS42NDk1IDM0LjEzN0MyNS4zMjc5IDM0LjAwMzcgMjQuOTgzMSAzMy45MzUxIDI0LjYzNDkgMzMuOTM1MUMyNC4yODY3IDMzLjkzNTEgMjMuOTQxOSAzNC4wMDM3IDIzLjYyMDIgMzQuMTM3QzIzLjI5ODUgMzQuMjcwMiAyMy4wMDYzIDM0LjQ2NTYgMjIuNzYwMSAzNC43MTE5TDEyLjE1MzcgNDUuMzE4M0MxMS42NTg3IDQ1LjgxNiAxMS4zODE0IDQ2LjQ4OTcgMTEuMzgyMyA0Ny4xOTE2QzExLjM4MzMgNDcuODkzNSAxMS42NjI2IDQ4LjU2NjMgMTIuMTU4OSA0OS4wNjI2QzEyLjY1NTIgNDkuNTU5IDEzLjMyODEgNDkuODM4MiAxNC4wMyA0OS44MzkyQzE0LjczMTkgNDkuODQwMiAxNS40MDU1IDQ5LjU2MjggMTUuOTAzMiA0OS4wNjc5TDI0LjYzNDkgNDAuMzM2MkwzMy4zNjY1IDQ5LjA2NzlDMzMuNjEyNyA0OS4zMTQxIDMzLjkwNDkgNDkuNTA5NSAzNC4yMjY2IDQ5LjY0MjhDMzQuNTQ4MyA0OS43NzYxIDM0Ljg5MzEgNDkuODQ0NyAzNS4yNDEzIDQ5Ljg0NDdDMzUuNTg5NSA0OS44NDQ3IDM1LjkzNDMgNDkuNzc2MSAzNi4yNTYgNDkuNjQyOEMzNi41Nzc3IDQ5LjUwOTUgMzYuODY5OSA0OS4zMTQxIDM3LjExNjEgNDkuMDY3OUw0OC40OTkzIDM3LjY4NDZWNDEuODg5OUM0OC40OTkzIDQyLjU5MzEgNDguNzc4NyA0My4yNjc2IDQ5LjI3NiA0My43NjQ4QzQ5Ljc3MzIgNDQuMjYyMSA1MC40NDc3IDQ0LjU0MTUgNTEuMTUwOSA0NC41NDE1QzUxLjg1NDIgNDQuNTQxNSA1Mi41Mjg2IDQ0LjI2MjEgNTMuMDI1OSA0My43NjQ4QzUzLjUyMzIgNDMuMjY3NiA1My44MDI1IDQyLjU5MzEgNTMuODAyNSA0MS44ODk5VjMxLjI4MzRDNTMuODAyNyAzMC45MzUyIDUzLjczNDMgMzAuNTkwMyA1My42MDExIDMwLjI2ODVDNTMuNDY3OSAyOS45NDY3IDUzLjI3MjYgMjkuNjU0MyA1My4wMjY0IDI5LjQwOEM1Mi43ODAxIDI5LjE2MTggNTIuNDg3NyAyOC45NjY1IDUyLjE2NTkgMjguODMzM0M1MS44NDQxIDI4LjcwMDEgNTEuNDk5MiAyOC42MzE2IDUxLjE1MDkgMjguNjMxOFoiIGZpbGw9IiM3Nzc3NzciLz4KICAgIDxkZWZzPgogICAgICAgIDxjbGlwUGF0aCBpZD0iY2xpcDAiPgogICAgICAgICAgICA8cmVjdCB3aWR0aD0iMjkiIGhlaWdodD0iMzIiIGZpbGw9IndoaXRlIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgyMi42MDYgNC42MzE4NCkiLz4KICAgICAgICA8L2NsaXBQYXRoPgogICAgPC9kZWZzPgo8L3N2Zz4=\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjUiIGhlaWdodD0iNTciIHZpZXdCb3g9IjAgMCA2NSA1NyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxwYXRoIGQ9Ik0yOC4xNzY4IDE2LjUyMDhIMTEuNjkzNFY0Ni4xMjY5SDMzLjI0ODZWMjEuOTAzN0wyOC4xNzY4IDE2LjUyMDhaIiBmaWxsPSJ3aGl0ZSIvPgogICAgPHBhdGggZD0iTTE2Ljc2NTYgMTEuMTM3OVYxNi41MjA5SDI4LjE3NzJMMzMuMjQ5IDIxLjkwMzhWNDAuNzQ0MUgzOC4zMjA5VjE2LjUyMDlMMzMuMjQ5IDExLjEzNzlIMTYuNzY1NloiIGZpbGw9IiMzRjNGM0YiLz4KICAgIDxwYXRoIGQ9Ik0zOC43NTcxIDE2LjQ4MzhDMzguNzU3MSAxNi40NzM4IDM4Ljc1NzEgMTYuNDYzOSAzOC43NTcxIDE2LjQ1NFYxNi40MzVDMzguNzU3MSAxNi40MjY2IDM4Ljc1NzEgMTYuNDE4MiAzOC43NTI4IDE2LjQwOTFDMzguNzUxOSAxNi40MDI0IDM4Ljc1MDcgMTYuMzk1OCAzOC43NDkyIDE2LjM4OTJDMzguNzQ5MiAxNi4zODE2IDM4Ljc0NTYgMTYuMzczMiAzOC43NDM1IDE2LjM2NTZMMzguNzM3IDE2LjM0NjVDMzguNzM0OCAxNi4zMzg1IDM4LjczMjIgMTYuMzMwNiAzOC43MjkxIDE2LjMyMjlDMzguNzI2OCAxNi4zMTY3IDM4LjcyNDEgMTYuMzEwNiAzOC43MjEyIDE2LjMwNDZDMzguNzE4MyAxNi4yOTcgMzguNzE0OSAxNi4yODk3IDM4LjcxMTEgMTYuMjgyNUwzOC43MDE4IDE2LjI2NUwzOC42ODk2IDE2LjI0MzZMMzguNjc4MSAxNi4yMjYxTDM4LjY2NDUgMTYuMjA3OEwzOC42NTAxIDE2LjE4OTVMMzguNjM4NiAxNi4xNzU4TDMzLjY4MzIgMTAuNzUwMkwzMy42NjgxIDEwLjczNUwzMy42NTE2IDEwLjcxOUwzMy42MzcyIDEwLjcwNzZDMzMuNjMxMSAxMC43MDIgMzMuNjI0NiAxMC42OTcgMzMuNjE3OCAxMC42OTIzTDMzLjU5NjMgMTAuNjc3OEMzMy41OTEyIDEwLjY3NzggMzMuNTg2OSAxMC42NzE3IDMzLjU4MjYgMTAuNjY5NEMzMy41MTkgMTAuNjMyNCAzMy40NDc2IDEwLjYxMyAzMy4zNzUxIDEwLjYxM0gxNi41OTkyQzE2LjQ4NDkgMTAuNjEzIDE2LjM3NTMgMTAuNjYxMiAxNi4yOTQ1IDEwLjc0N0MxNi4yMTM3IDEwLjgzMjggMTYuMTY4MyAxMC45NDkxIDE2LjE2ODMgMTEuMDcwNFYxNS45NDg3SDExLjY4OTdDMTEuNTc1NCAxNS45NDg3IDExLjQ2NTggMTUuOTk2OCAxMS4zODUgMTYuMDgyNkMxMS4zMDQyIDE2LjE2ODQgMTEuMjU4OCAxNi4yODQ3IDExLjI1ODggMTYuNDA2VjQ2LjE5MzNDMTEuMjU4OCA0Ni4zMTQ2IDExLjMwNDIgNDYuNDMwOSAxMS4zODUgNDYuNTE2N0MxMS40NjU4IDQ2LjYwMjQgMTEuNTc1NCA0Ni42NTA2IDExLjY4OTcgNDYuNjUwNkgzMy40MTQ2QzMzLjUyODkgNDYuNjUwNiAzMy42Mzg1IDQ2LjYwMjQgMzMuNzE5MyA0Ni41MTY3QzMzLjgwMDEgNDYuNDMwOSAzMy44NDU1IDQ2LjMxNDYgMzMuODQ1NSA0Ni4xOTMzVjQxLjMxNUgzOC4zMjEyQzM4LjQzNTUgNDEuMzE1IDM4LjU0NTEgNDEuMjY2OCAzOC42MjU5IDQxLjE4MUMzOC43MDY3IDQxLjA5NTMgMzguNzUyMSA0MC45Nzg5IDM4Ljc1MjEgNDAuODU3N1YxNi40OTY3QzM4Ljc1NzggMTYuNDkyMSAzOC43NTcxIDE2LjQ4ODMgMzguNzU3MSAxNi40ODM4Wk0zMy44MDE3IDEyLjIwNTNMMzcuMzAxNCAxNi4wMzYzSDMzLjgwMUwzMy44MDE3IDEyLjIwNTNaTTEyLjEyMjggNDUuNzMzN1YxNi44Njg3SDI4LjAyMzJWMjEuODM0NkMyOC4wMjMyIDIxLjk1NTkgMjguMDY4NiAyMi4wNzIyIDI4LjE0OTQgMjIuMTU4QzI4LjIzMDIgMjIuMjQzOCAyOC4zMzk4IDIyLjI5MiAyOC40NTQxIDIyLjI5MkgzMi45Nzg2VjQwLjg1NTRDMzIuOTc4NiA0MC44NTkyIDMyLjk3ODYgNDAuODYzIDMyLjk3ODYgNDAuODY3NlY0NS43MzM3SDEyLjEyMjhaTTI4Ljg5MDggMTcuNTQzM0wzMi4zOTEyIDIxLjM3NUgyOC44OTA4VjE3LjU0MzNaTTM3Ljg5MSA0MC4zOTU3SDMzLjg0ODRWMjEuODM0NkMzMy44NDg0IDIxLjgzIDMzLjg0ODQgMjEuODI2MiAzMy44NDg0IDIxLjgyMTdDMzMuODQ4NCAyMS44MTcxIDMzLjg0ODQgMjEuODAxOCAzMy44NDg0IDIxLjc5MTlWMjEuNzczNkMzMy44NDczIDIxLjc2NDkgMzMuODQ1OSAyMS43NTYzIDMzLjg0NCAyMS43NDc3QzMzLjg0MzMgMjEuNzQxIDMzLjg0MjEgMjEuNzM0NCAzMy44NDA1IDIxLjcyNzlDMzMuODQwNSAyMS43MTk1IDMzLjgzNjkgMjEuNzExOSAzMy44MzQgMjEuNzAzNUMzMy44MzI0IDIxLjY5NzEgMzMuODMwNSAyMS42OTA3IDMzLjgyODIgMjEuNjg0NUwzMy44MjAzIDIxLjY2MTZDMzMuODE4MiAyMS42NTUzIDMzLjgxNTUgMjEuNjQ5MiAzMy44MTI0IDIxLjY0MzNDMzMuODEyNCAyMS42MzU3IDMzLjgwNiAyMS42MjgxIDMzLjgwMjQgMjEuNjIwNEwzMy43OTMxIDIxLjYwMjlMMzMuNzgwOCAyMS41ODE2TDMzLjc2OTQgMjEuNTY0OEMzMy43NjUyIDIxLjU1ODEgMzMuNzYwNyAyMS41NTE4IDMzLjc1NTcgMjEuNTQ1N0MzMy43NTEzIDIxLjUzOTUgMzMuNzQ2NSAyMS41MzM3IDMzLjc0MTMgMjEuNTI4MkMzMy43Mzc5IDIxLjUyMzMgMzMuNzM0MSAyMS41MTg3IDMzLjcyOTkgMjEuNTE0NUwyOC43NzQ0IDE2LjA4ODlMMjguNzU4NiAxNi4wNzM3TDI4Ljc0MjEgMTYuMDU4NEMyOC43Mzc4IDE2LjA1MzkgMjguNzMyOCAxNi4wNTA4IDI4LjcyODUgMTYuMDQ3TDI4LjcwODQgMTYuMDMxTDI4LjY4NjggMTYuMDE3M0wyOC42NzMyIDE2LjAwODFDMjguNjA5NyAxNS45NzE1IDI4LjUzODYgMTUuOTUyMyAyOC40NjYzIDE1Ljk1MjVIMTcuMDM1MVYxMS41MzE1SDMyLjkzNDFWMTYuNDk2N0MzMi45MzQxIDE2LjYxOCAzMi45Nzk1IDE2LjczNDMgMzMuMDYwMyAxNi44MjAxQzMzLjE0MTEgMTYuOTA1OSAzMy4yNTA3IDE2Ljk1NCAzMy4zNjUgMTYuOTU0SDM3Ljg4OTVMMzcuODkxIDQwLjM5NTdaIiBmaWxsPSIjM0YzRjNGIiBzdHJva2U9IiMzRjNGM0YiIHN0cm9rZS13aWR0aD0iMC43NSIvPgogICAgPHBhdGggZD0iTTI5LjcwOTMgMjQuMjc2NkgxNS4zOTM5QzE1LjI3ODkgMjQuMjc2NiAxNS4xNjg3IDI0LjMyNTEgMTUuMDg3NCAyNC40MTEzQzE1LjAwNjEgMjQuNDk3NiAxNC45NjA0IDI0LjYxNDYgMTQuOTYwNCAyNC43MzY2QzE0Ljk2MDQgMjQuODU4NiAxNS4wMDYxIDI0Ljk3NTYgMTUuMDg3NCAyNS4wNjE5QzE1LjE2ODcgMjUuMTQ4MiAxNS4yNzg5IDI1LjE5NjYgMTUuMzkzOSAyNS4xOTY2SDI5LjcwOTNDMjkuODI0MyAyNS4xOTY2IDI5LjkzNDUgMjUuMTQ4MiAzMC4wMTU4IDI1LjA2MTlDMzAuMDk3MSAyNC45NzU2IDMwLjE0MjcgMjQuODU4NiAzMC4xNDI3IDI0LjczNjZDMzAuMTQyNyAyNC42MTQ2IDMwLjA5NzEgMjQuNDk3NiAzMC4wMTU4IDI0LjQxMTNDMjkuOTM0NSAyNC4zMjUxIDI5LjgyNDMgMjQuMjc2NiAyOS43MDkzIDI0LjI3NjZaIiBmaWxsPSIjM0EzQTM5IiBzdHJva2U9ImJsYWNrIiBzdHJva2Utd2lkdGg9IjAuNSIvPgogICAgPHBhdGggZD0iTTI5LjcwOSAyOC4zODAxSDE1LjM5MzVDMTUuMjc4NyAyOC4zODAxIDE1LjE2ODUgMjguNDI4NiAxNS4wODczIDI4LjUxNDdDMTUuMDA2MSAyOC42MDA5IDE0Ljk2MDQgMjguNzE3OSAxNC45NjA0IDI4LjgzOThDMTQuOTYwNCAyOC45NjE3IDE1LjAwNjEgMjkuMDc4NiAxNS4wODczIDI5LjE2NDhDMTUuMTY4NSAyOS4yNTEgMTUuMjc4NyAyOS4yOTk0IDE1LjM5MzUgMjkuMjk5NEgyOS43MDlDMjkuODIzOCAyOS4yOTk0IDI5LjkzNCAyOS4yNTEgMzAuMDE1MiAyOS4xNjQ4QzMwLjA5NjQgMjkuMDc4NiAzMC4xNDIgMjguOTYxNyAzMC4xNDIgMjguODM5OEMzMC4xNDIgMjguNzE3OSAzMC4wOTY0IDI4LjYwMDkgMzAuMDE1MiAyOC41MTQ3QzI5LjkzNCAyOC40Mjg2IDI5LjgyMzggMjguMzgwMSAyOS43MDkgMjguMzgwMVoiIGZpbGw9IiMzQTNBMzkiIHN0cm9rZT0iYmxhY2siIHN0cm9rZS13aWR0aD0iMC41Ii8+CiAgICA8cGF0aCBkPSJNMjkuNzA5IDMyLjQ4MjJIMTUuMzkzNUMxNS4yNzg3IDMyLjQ4MjIgMTUuMTY4NSAzMi41MzA2IDE1LjA4NzMgMzIuNjE2OEMxNS4wMDYxIDMyLjcwMyAxNC45NjA0IDMyLjgxOTkgMTQuOTYwNCAzMi45NDE4QzE0Ljk2MDQgMzMuMDYzNyAxNS4wMDYxIDMzLjE4MDYgMTUuMDg3MyAzMy4yNjY4QzE1LjE2ODUgMzMuMzUzIDE1LjI3ODcgMzMuNDAxNCAxNS4zOTM1IDMzLjQwMTRIMjkuNzA5QzI5LjgyMzggMzMuNDAxNCAyOS45MzQgMzMuMzUzIDMwLjAxNTIgMzMuMjY2OEMzMC4wOTY0IDMzLjE4MDYgMzAuMTQyIDMzLjA2MzcgMzAuMTQyIDMyLjk0MThDMzAuMTQyIDMyLjgxOTkgMzAuMDk2NCAzMi43MDMgMzAuMDE1MiAzMi42MTY4QzI5LjkzNCAzMi41MzA2IDI5LjgyMzggMzIuNDgyMiAyOS43MDkgMzIuNDgyMloiIGZpbGw9IiMzQTNBMzkiIHN0cm9rZT0iYmxhY2siIHN0cm9rZS13aWR0aD0iMC41Ii8+CiAgICA8cGF0aCBkPSJNMjkuNzA5IDM2LjU4NDVIMTUuMzkzNUMxNS4yNzg3IDM2LjU4NDUgMTUuMTY4NSAzNi42MzI5IDE1LjA4NzMgMzYuNzE5MUMxNS4wMDYxIDM2LjgwNTMgMTQuOTYwNCAzNi45MjIyIDE0Ljk2MDQgMzcuMDQ0MUMxNC45NjA0IDM3LjE2NiAxNS4wMDYxIDM3LjI4MjkgMTUuMDg3MyAzNy4zNjkxQzE1LjE2ODUgMzcuNDU1MyAxNS4yNzg3IDM3LjUwMzcgMTUuMzkzNSAzNy41MDM3SDI5LjcwOUMyOS44MjM4IDM3LjUwMzcgMjkuOTM0IDM3LjQ1NTMgMzAuMDE1MiAzNy4zNjkxQzMwLjA5NjQgMzcuMjgyOSAzMC4xNDIgMzcuMTY2IDMwLjE0MiAzNy4wNDQxQzMwLjE0MiAzNi45MjIyIDMwLjA5NjQgMzYuODA1MyAzMC4wMTUyIDM2LjcxOTFDMjkuOTM0IDM2LjYzMjkgMjkuODIzOCAzNi41ODQ1IDI5LjcwOSAzNi41ODQ1WiIgZmlsbD0iIzNBM0EzOSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIwLjUiLz4KICAgIDxwYXRoIGQ9Ik0zNy4zNTc1IDE2LjAxNjFMMzMuNzY3OSAxMi4xNjg1QzMzLjU4MjEgMTEuOTY5NCAzMy4yNDg1IDEyLjEwMDggMzMuMjQ4NSAxMi4zNzMxVjE2LjIyMDdDMzMuMjQ4NSAxNi4zODY0IDMzLjM4MjkgMTYuNTIwNyAzMy41NDg1IDE2LjUyMDdIMzcuMTM4MUMzNy40MDA0IDE2LjUyMDcgMzcuNTM2NCAxNi4yMDc4IDM3LjM1NzUgMTYuMDE2MVoiIGZpbGw9IiMzQTNBMzkiLz4KICAgIDxwYXRoIGQ9Ik0yNC40NTEyIDQwLjY4N0gxNS4zOTM1QzE1LjI3ODcgNDAuNjg3IDE1LjE2ODUgNDAuNzM1NCAxNS4wODczIDQwLjgyMTZDMTUuMDA2MSA0MC45MDc4IDE0Ljk2MDQgNDEuMDI0NyAxNC45NjA0IDQxLjE0NjZDMTQuOTYwNCA0MS4yNjg1IDE1LjAwNjEgNDEuMzg1NCAxNS4wODczIDQxLjQ3MTZDMTUuMTY4NSA0MS41NTc4IDE1LjI3ODcgNDEuNjA2MyAxNS4zOTM1IDQxLjYwNjNIMjQuNDUxMkMyNC41NjYgNDEuNjA2MyAyNC42NzYyIDQxLjU1NzggMjQuNzU3NCA0MS40NzE2QzI0LjgzODYgNDEuMzg1NCAyNC44ODQyIDQxLjI2ODUgMjQuODg0MiA0MS4xNDY2QzI0Ljg4NDIgNDEuMDI0NyAyNC44Mzg2IDQwLjkwNzggMjQuNzU3NCA0MC44MjE2QzI0LjY3NjIgNDAuNzM1NCAyNC41NjYgNDAuNjg3IDI0LjQ1MTIgNDAuNjg3WiIgZmlsbD0iIzNBM0EzOSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIwLjUiLz4KICAgIDxwYXRoIGQ9Ik0zNy42Njc3IDQ2Ljg3NTRMMzUuNTM4MyA1My45NzgzTDQwLjk2MjMgNDkuNTUwNUw1OC43MTYyIDIzLjczMjFDNTguNzE2MiAyMy43MzIxIDU5LjQyOTMgMjIuNDQxNSA1OC4wODk2IDIwLjkzMzlDNTYuNzUgMTkuNDI2MyA1NS4yOTIyIDE5Ljk3MDYgNTUuMjkyMiAxOS45NzA2TDM3LjY2NzcgNDYuODc1NFoiIGZpbGw9ImJsYWNrIi8+CiAgICA8cGF0aCBkPSJNMzcuNjc3MyA0Ni44MzRDMzcuNjc3MyA0Ni44MzQgMzYuMzI0MyA1MS4zMDUxIDM2LjE4NjcgNTEuODMzNUMzNi4xMDYxIDUyLjE0MyAzNi45OTE2IDUxLjcyODEgMzcuMTc2MiA1MS44MzM0QzM3LjM2MDkgNTEuOTM4NyAzNy4wMjA1IDUyLjcyNDMgMzcuMTc2MyA1Mi42MzQ4QzM4LjEyOSA1Mi4wODc0IDQwLjk3MjUgNDkuNTA5NiA0MC45NzI1IDQ5LjUwOTZDNDAuMDQ1MiA0OS4zMDM5IDM5LjgwODIgNDguNjYxMSAzOS44MDU1IDQ4LjM2NTVMMzkuODE4MiA0Ny42NzUxTDM5LjI5NzQgNDYuNzkwNEwzNy42NzczIDQ2LjgzNFoiIGZpbGw9IiNGMkQyQkMiLz4KICAgIDxwYXRoIGQ9Ik0zOC44Mjc4IDQ2Ljg3NzRDMzguMjM4OSA0Ny4yMzg1IDM3LjY2MTggNDYuODUxMiAzNy42NjE4IDQ2Ljg1MTJDNDIuNjkwOCAzOS4xNjM0IDU0LjEyNzggMjEuMDA4IDU0Ljc1NzUgMjAuMjkzNkM1NS40NzAyIDE5LjQ4NTIgNTYuODMzNiAxOS44OTgzIDU3LjUzOTggMjAuNDI1OEwzOS43OTk1IDQ4LjA2OTRDMzkuNzk5NSA0OC4wNjk0IDM5LjQxNjYgNDYuNTE2NCAzOC44Mjc4IDQ2Ljg3NzRaIiBmaWxsPSIjODk4OTg5Ii8+Cjwvc3ZnPgo=\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzYiIGhlaWdodD0iMjYiIHZpZXdCb3g9IjAgMCAzNiAyNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGQ9Ik0zNC41NTQ1IDIyLjcxOTVIMzQuNTUxMkwzMi44MjQ5IDIyLjcyMzVDMzIuNzI2NSAyMi40NTUgMzIuNTY4NyAyMi4yMDM3IDMyLjM0ODEgMjEuOTkyNkwyMy45ODI5IDEzLjk5NTZDMjMuMzAxOSAxMy4zNDQ3IDIyLjI1MDggMTMuMjc5NiAyMS40OTQ3IDEzLjg0MTNMMTcuMTM4MyAxNy4wNzg0TDE1LjE3NDkgOS41MDE5N0wxOS41MzY2IDIuOTU5NDhDMjAuMTUyNiAyLjAzNTUgMTkuNTQwNCAwLjc5MTU2OCAxOC40Mzc3IDAuNzA5ODM0TDEyLjYyOTkgMC4yNzk2NjNDMTMuMTg3IDAuODY5MjkyIDEzLjU4MzcgMS42MDIzNCAxMy43NjcxIDIuMzk4ODZDMTMuODM0NCAyLjY5MTMzIDEzLjg3MjUgMi45ODU5MyAxMy44ODI2IDMuMjc5NTFMMTUuNzQ3IDMuNDE3NjRMMTMuMTcwNyA3LjI4MjA5TDcuNzIyNTUgOC41ODQ2M0w5LjQ3MDg4IDEwLjIxMzlMNC42MDE2NCA3LjM2NjU2TDUuNjMxNTEgNi4xNTk5MUM1LjI1NTk0IDUuNjU0NTggNC45ODQxMiA1LjA3MzU2IDQuODQxNTYgNC40NTQwN0M0LjcwNTk5IDMuODY1MzggNC42ODgxNiAzLjI2Nzk5IDQuNzgyNDMgMi42ODkxMUwxLjI2ODAzIDYuODA2NjJDMC42ODAyODEgNy40OTUwNCAwLjg2MTgzOCA4LjU0Nzk1IDEuNjQyOTIgOS4wMDEzMkw4LjQ1ODQyIDEyLjk1NjlMNy4wMjg1OCAxMi42NDY3TDkuMzYxMzMgMjIuNzc3NkwxLjQxMDQ3IDIyLjgxMzdDMC42Mjk3MzIgMjIuODE1NiAtMC4wMDE3ODc4NiAyMy40NTAxIDMuODAyOWUtMDYgMjQuMjMwOEMwLjAwMTc5NTQ3IDI1LjAxMDUgMC42MzQ0MjQgMjUuNjQxNCAxLjQxMzcxIDI1LjY0MTRMMzQuNTU3OCAyNS41NDcyQzM1LjMzODUgMjUuNTQ1NCAzNS45NzAxIDI0LjkxMSAzNS45Njg0IDI0LjEzMDJDMzUuOTY2NSAyMy4zNTA0IDM1LjMzMzggMjIuNzE5NSAzNC41NTQ1IDIyLjcxOTVaTTE1Ljk2OTggMjIuNzYyNUwyMi40OTA4IDE3LjkxNjhMMjcuNTMxNyAyMi43MzU4TDE1Ljk2OTggMjIuNzYyNVoiIGZpbGw9IiMwNTY4MzkiLz4KPHBhdGggZD0iTTkuMzA0MjUgNi43ODA3N0MxMS4xNTY2IDYuNzgwNzcgMTIuNjU4MiA1LjI3OTE3IDEyLjY1ODIgMy40MjY4NUMxMi42NTgyIDEuNTc0NTQgMTEuMTU2NiAwLjA3MjkzNyA5LjMwNDI1IDAuMDcyOTM3QzcuNDUxOTMgMC4wNzI5MzcgNS45NTAzMyAxLjU3NDU0IDUuOTUwMzMgMy40MjY4NUM1Ljk1MDMzIDUuMjc5MTcgNy40NTE5MyA2Ljc4MDc3IDkuMzA0MjUgNi43ODA3N1oiIGZpbGw9IiMwNTY4MzkiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMCI+CjxwYXRoIGQ9Ik0wIDBIMzZWMjUuNzE0M0gwVjBaIiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=\"","export default \"data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMjE2LjU2IDYzMS44NCI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNmZmY7fTwvc3R5bGU+PC9kZWZzPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTEwNTAuOSwyMjAuNTlDOTE1LjIyLDE3MC43MSw4MDAuNTQsMTg3LjQ3LDY5MS41NywxMzIsNjIyLjY3LDk3LDU1OC41OSw1MC4xOCw0ODQsMjkuNzQsNDEyLjYsMTAuMTEsMzM1LjY2LDEuODMsMjYxLjc3LDhjLTQ0LDMuNjgtODkuMzQsMjIuNTctMTI1LDQ4Ljg3LTIzLDE3LTUxLjI2LDQ5LjcxLTY1LDc0Ljg2QzI5LjczLDIwOC4zOCw5LjQzLDI4Miw4LjA2LDM2OS4zNCw3LjU4LDM5OS41OCw5Ljg3LDQzMS4wOSwyMy41Myw0NThjMTIuNzMsMjUuMDksMzMuNyw0OSw1NC43Miw2Ny42MiwxMCw4LjksMzAsMTguMzUsNDIuMTcsMjQsMTQuMTIsNi41OSwxMTQuMjEsMjcuMTYsMTI5LjcxLDI4LjgxLDI2NC43OCwyOC4xMywzNDcuNzYtNTEuNTMsNTU2LjU5LTQuMTEsNjkuMjYsMTUuNzQsMTM1Ljg5LDQxLjgyLDIwNS4zNyw1Ni41NywzMyw3LDY4LDExLjI4LDk5Ljg1LDAsMjUuMjctOSw0Ni41Mi0yNy4yNCw2My4xLTQ4LjM5LDQyLjkxLTU0LjQ4LDU3LjA5LTEyOC41OSw0NS44LTE5Ny00LjM4LTI2LjUtMTIuNTUtNTIuOTQtMjguNC03NC41Mi0xMi4xMy0xNi41NS0yOC4yOC0yOS42OC00NC44Ni00MS43Mi0zNC45My0yNS4zNC01NC45LTMxLjE2LTk0LjU4LTQ4WiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTggLTYpIi8+PC9zdmc+\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTMgMjFWMTIuMzg2NkwxMS4yNjAxIDMuMzAwNTRDMTEuNjU2OCAyLjg2NDExIDEyLjM0MzIgMi44NjQxIDEyLjczOTkgMy4zMDA1NEwyMSAxMi4zODY2VjIxQzIxIDIxLjU1MjMgMjAuNTUyMyAyMiAyMCAyMkg0QzMuNDQ3NzIgMjIgMyAyMS41NTIzIDMgMjFaIiBzdHJva2U9IiMwNTY4MzkiIHN0cm9rZS13aWR0aD0iMiIvPgo8L3N2Zz4K\"","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.WakeUpIcon = exports.MoonIcon = exports.MedicineIcon = exports.NoEmotionFaceIcon = exports.QuestionFaceIcon = exports.OkFaceIcon = exports.HappyFaceIcon = exports.BadFaceIcon = exports.PlayingSoccerIcon = exports.WalkingWithDogIcon = exports.WorkingWithLaptopIcon = exports.AwakeSmileyIcon = exports.SleepSmileyIcon = exports.FlagIcon = exports.TrophyIcon = exports.BookIcon = exports.ActivityIcon = exports.WorkIcon = exports.GladRyggIcon = exports.LogoutIcon = exports.CalendarIcon = exports.GreyCloud = exports.Retreat = exports.FollowUpIcon = exports.TrainingIcon = exports.RetreatIcon = exports.PhoneCallIcon = exports.IntroNightIcon = exports.FormIcon = exports.HomeIcon = exports.placeHolderImage = exports.DefaultProgramImage = void 0;\nvar React = __importStar(require(\"react\"));\nvar BG_login_relationship_png_1 = __importDefault(require(\"./BG_login_relationship.png\"));\nvar home_svg_1 = __importDefault(require(\"./home.svg\"));\nvar sleepSmiley_svg_1 = __importDefault(require(\"./sleepSmiley.svg\"));\nvar awakeSmiley_svg_1 = __importDefault(require(\"./awakeSmiley.svg\"));\nvar medicine_svg_1 = __importDefault(require(\"./medicine.svg\"));\nvar moon_svg_1 = __importDefault(require(\"./moon.svg\"));\nvar wakeUp_svg_1 = __importDefault(require(\"./wakeUp.svg\"));\nvar form_svg_1 = __importDefault(require(\"./form.svg\"));\nvar introNight_svg_1 = __importDefault(require(\"./introNight.svg\"));\nvar phoneCall_svg_1 = __importDefault(require(\"./phoneCall.svg\"));\nvar retreat_svg_1 = __importDefault(require(\"./retreat.svg\"));\nvar training_svg_1 = __importDefault(require(\"./training.svg\"));\nvar followUp_svg_1 = __importDefault(require(\"./followUp.svg\"));\nvar retreatIcon_svg_1 = __importDefault(require(\"./retreatIcon.svg\"));\nvar greyCloud_svg_1 = __importDefault(require(\"./greyCloud.svg\"));\nvar calendar_svg_1 = __importDefault(require(\"./calendar.svg\"));\nvar logout_svg_1 = __importDefault(require(\"./logout.svg\"));\nvar gladrygg_svg_1 = __importDefault(require(\"./gladrygg.svg\"));\nvar work_svg_1 = __importDefault(require(\"./work.svg\"));\nvar activity_svg_1 = __importDefault(require(\"./activity.svg\"));\nvar book_svg_1 = __importDefault(require(\"./book.svg\"));\nvar trophy_svg_1 = __importDefault(require(\"./trophy.svg\"));\nvar flag_svg_1 = __importDefault(require(\"./flag.svg\"));\nexports.DefaultProgramImage = React.forwardRef(function (props, ref) { return (React.createElement(\"img\", __assign({ src: BG_login_relationship_png_1.default, ref: ref, alt: \"Program logo\" }, props))); });\nexports.placeHolderImage = 'data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNi4wLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB3aWR0aD0iNDIuNjVweCIgaGVpZ2h0PSIzMnB4IiB2aWV3Qm94PSIwIDAgNDIuNjUgMzIiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDQyLjY1IDMyIiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnPg0KCTxnPg0KCQk8cGF0aCBmaWxsPSIjRDNEM0QzIiBkPSJNMCwwaDQyLjYzN2MwLjAyNCwwLjM1NCwwLjAwNCwwLjcxLDAuMDExLDEuMDY2YzAsMTAuMzEzLDAsMjAuNjI0LDAsMzAuOTM0SDBWMHogTTE1Ljg0OSwxMS41MDINCgkJCWMwLDIuOTYzLTAuMDAyLDUuOTI3LDAuMDAxLDguODkxYzMuNjQ0LDAuMDAzLDcuMjksMC4wMDMsMTAuOTM2LDBjMC4wMDItMi45NjQsMC4wMDItNS45MjcsMC04Ljg5MQ0KCQkJQzIzLjE0MSwxMS40OTgsMTkuNDk1LDExLjQ5OCwxNS44NDksMTEuNTAyeiIvPg0KCTwvZz4NCgk8Zz4NCgkJPHBhdGggZmlsbD0iI0QzRDNEMyIgZD0iTTE2LjUzNywxMi4xODZjMy4xODgsMCw2LjM3NSwwLDkuNTY0LDBjMC4wMDEsMi41MDksMC4wMDEsNS4wMTQtMC4wMDIsNy41MjENCgkJCWMtMy4xODgsMC4wMDMtNi4zNzUsMC4wMDMtOS41NjMsMEMxNi41MzMsMTcuMTk5LDE2LjUzMywxNC42OTQsMTYuNTM3LDEyLjE4NnogTTE3LjIxNSwxMi44N2MwLDIuMDUyLTAuMDAyLDQuMTAzLDAuMDAyLDYuMTU1DQoJCQljMC40NTcsMCwwLjkxNSwwLjAwMywxLjM3My0wLjAwNGMwLjQxLTAuNDA5LDAuODIxLTAuODIxLDEuMjMyLTEuMjMyYzAuMDU2LTAuMDU0LDAuMTA2LTAuMTIxLDAuMTgzLTAuMTQ3DQoJCQljMC42NjUtMC4yMjYsMS4zMzUtMC40NDEsMi0wLjY3MmMwLjIyNi0wLjY4MSwwLjQ1MS0xLjM2MSwwLjY3OS0yLjA0MmMwLjE3OSwwLjM1MiwwLjM1NCwwLjcwNywwLjUzMSwxLjA2MQ0KCQkJYzAuMDY2LDAuMTM1LDAuMTQzLDAuMjY2LDAuMTg4LDAuNDA4YzAuMjA3LDAuNjI2LDAuNDE3LDEuMjUxLDAuNjI1LDEuODc4YzAuMDIxLDAuMDc4LDAuMDg3LDAuMTM0LDAuMTQ1LDAuMTkNCgkJCWMwLjE5LDAuMTg1LDAuMzcxLDAuMzc3LDAuNTY1LDAuNTZjMC4yMjgsMCwwLjQ1MywwLjAwMiwwLjY4MywwYzAuMDAyLTIuMDUyLDAuMDAyLTQuMTAzLDAtNi4xNTUNCgkJCUMyMi42ODYsMTIuODY4LDE5Ljk1LDEyLjg2OCwxNy4yMTUsMTIuODd6Ii8+DQoJPC9nPg0KCTxwYXRoIGZpbGw9IiNEM0QzRDMiIGQ9Ik0xOS4zNzcsMTMuNTgyYzAuNDctMC4xMiwwLjk5NywwLjE0OSwxLjE3NSwwLjU5OWMwLjIwMywwLjQ1NSwwLjAxLDEuMDM2LTAuNDI0LDEuMjc5DQoJCWMtMC40MTgsMC4yNjEtMS4wMTYsMC4xNTEtMS4zMTYtMC4yMzljLTAuMzA0LTAuMzY1LTAuMjk4LTAuOTM5LDAuMDEyLTEuMjk5QzE4Ljk2NSwxMy43NTMsMTkuMTYzLDEzLjYzMiwxOS4zNzcsMTMuNTgyeiIvPg0KPC9nPg0KPC9zdmc+DQo=';\nexports.HomeIcon = React.forwardRef(function (props, ref) { return (React.createElement(\"img\", __assign({ src: home_svg_1.default, ref: ref, alt: \"Home icon\" }, props))); });\nexports.FormIcon = React.forwardRef(function (props, ref) { return (React.createElement(\"img\", __assign({ src: form_svg_1.default, ref: ref, alt: \"form\" }, props))); });\nexports.IntroNightIcon = React.forwardRef(function (props, ref) { return (React.createElement(\"img\", __assign({ src: introNight_svg_1.default, ref: ref, alt: \"intro night\" }, props))); });\nexports.PhoneCallIcon = React.forwardRef(function (props, ref) { return (React.createElement(\"img\", __assign({ src: phoneCall_svg_1.default, ref: ref, alt: \"phone call\" }, props))); });\nexports.RetreatIcon = React.forwardRef(function (props, ref) { return (React.createElement(\"img\", __assign({ src: retreat_svg_1.default, ref: ref, alt: \"retreat\" }, props))); });\nexports.TrainingIcon = React.forwardRef(function (props, ref) { return (React.createElement(\"img\", __assign({ src: training_svg_1.default, ref: ref, alt: \"training\" }, props))); });\nexports.FollowUpIcon = React.forwardRef(function (props, ref) { return (React.createElement(\"img\", __assign({ src: followUp_svg_1.default, ref: ref, alt: \"follow up\" }, props))); });\nexports.Retreat = React.forwardRef(function (props, ref) { return (React.createElement(\"img\", __assign({ src: retreatIcon_svg_1.default, ref: ref, alt: \"retreat\" }, props))); });\nexports.GreyCloud = React.forwardRef(function (props, ref) { return (React.createElement(\"img\", __assign({ src: greyCloud_svg_1.default, ref: ref, alt: \"Background decor\" }, props))); });\nexports.CalendarIcon = React.forwardRef(function (props, ref) { return (React.createElement(\"img\", __assign({ src: calendar_svg_1.default, ref: ref, alt: \"Calendar icon\" }, props))); });\nexports.LogoutIcon = React.forwardRef(function (props, ref) { return (React.createElement(\"img\", __assign({ src: logout_svg_1.default, ref: ref, alt: \"Logout icon\" }, props))); });\nexports.GladRyggIcon = React.forwardRef(function (props, ref) { return (React.createElement(\"img\", __assign({ src: gladrygg_svg_1.default, ref: ref, alt: \"Glad rygg\" }, props))); });\nexports.WorkIcon = React.forwardRef(function (props, ref) { return (React.createElement(\"img\", __assign({ src: work_svg_1.default, ref: ref, alt: \"Work\" }, props))); });\nexports.ActivityIcon = React.forwardRef(function (props, ref) { return (React.createElement(\"img\", __assign({ src: activity_svg_1.default, ref: ref, alt: \"Activity\" }, props))); });\nexports.BookIcon = React.forwardRef(function (props, ref) { return (React.createElement(\"img\", __assign({ src: book_svg_1.default, ref: ref, alt: \"Book\" }, props))); });\nexports.TrophyIcon = React.forwardRef(function (props, ref) { return (React.createElement(\"img\", __assign({ src: trophy_svg_1.default, ref: ref, alt: \"Trophy\" }, props))); });\nexports.FlagIcon = React.forwardRef(function (props, ref) { return (React.createElement(\"img\", __assign({ src: flag_svg_1.default, ref: ref, alt: \"Flag\" }, props))); });\nexports.SleepSmileyIcon = React.forwardRef(function (props, ref) { return (React.createElement(\"img\", __assign({ src: sleepSmiley_svg_1.default, ref: ref, alt: \"Sleep smiley icon\" }, props))); });\nexports.AwakeSmileyIcon = React.forwardRef(function (props, ref) { return (React.createElement(\"img\", __assign({ src: awakeSmiley_svg_1.default, ref: ref, alt: \"Awake smiley icon\" }, props))); });\nvar WorkingWithLaptop_1 = require(\"./WorkingWithLaptop\");\nObject.defineProperty(exports, \"WorkingWithLaptopIcon\", { enumerable: true, get: function () { return __importDefault(WorkingWithLaptop_1).default; } });\nvar WalkingWithDog_1 = require(\"./WalkingWithDog\");\nObject.defineProperty(exports, \"WalkingWithDogIcon\", { enumerable: true, get: function () { return __importDefault(WalkingWithDog_1).default; } });\nvar PlayingSoccer_1 = require(\"./PlayingSoccer\");\nObject.defineProperty(exports, \"PlayingSoccerIcon\", { enumerable: true, get: function () { return __importDefault(PlayingSoccer_1).default; } });\nvar BadFace_1 = require(\"./BadFace\");\nObject.defineProperty(exports, \"BadFaceIcon\", { enumerable: true, get: function () { return __importDefault(BadFace_1).default; } });\nvar HappyFace_1 = require(\"./HappyFace\");\nObject.defineProperty(exports, \"HappyFaceIcon\", { enumerable: true, get: function () { return __importDefault(HappyFace_1).default; } });\nvar OkFace_1 = require(\"./OkFace\");\nObject.defineProperty(exports, \"OkFaceIcon\", { enumerable: true, get: function () { return __importDefault(OkFace_1).default; } });\nvar QuestionFace_1 = require(\"./QuestionFace\");\nObject.defineProperty(exports, \"QuestionFaceIcon\", { enumerable: true, get: function () { return __importDefault(QuestionFace_1).default; } });\nvar NoEmotionFace_1 = require(\"./NoEmotionFace\");\nObject.defineProperty(exports, \"NoEmotionFaceIcon\", { enumerable: true, get: function () { return __importDefault(NoEmotionFace_1).default; } });\nexports.MedicineIcon = React.forwardRef(function (props, ref) { return (React.createElement(\"img\", __assign({ src: medicine_svg_1.default, ref: ref, alt: \"Medicine icon\" }, props))); });\nexports.MoonIcon = React.forwardRef(function (props, ref) { return (React.createElement(\"img\", __assign({ src: moon_svg_1.default, ref: ref, alt: \"Moon icon\" }, props))); });\nexports.WakeUpIcon = React.forwardRef(function (props, ref) { return (React.createElement(\"img\", __assign({ src: wakeUp_svg_1.default, ref: ref, alt: \"Wake up icon\" }, props))); });\n","export default __webpack_public_path__ + \"7bf258243368bcc6bfa5f8f44f782092.svg\";","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar Logo = function (_a) {\n var height = _a.height;\n return (React.createElement(\"svg\", { width: \"130\", height: height, viewBox: \"0 0 130 54\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" },\n React.createElement(\"g\", { clipPath: \"url(#clip0_4552_11495)\" },\n React.createElement(\"g\", { clipPath: \"url(#clip1_4552_11495)\" },\n React.createElement(\"g\", { clipPath: \"url(#clip2_4552_11495)\" },\n React.createElement(\"path\", { d: \"M63.2695 8.90283V10.0873H55.8034V27.1653H52.7321V10.0873H42.9287V8.90283H63.2695Z\", fill: \"#7BA425\" }),\n React.createElement(\"path\", { d: \"M74.9225 8.90283V10.0873H65.2955V16.6155H71.741V17.8H65.2955V26.1158H74.9225V27.1653H62.2242V8.90283H74.9225Z\", fill: \"#7BA425\" }),\n React.createElement(\"path\", { d: \"M45.4376 8.91797V10.1024H27.5147V16.6306H33.9602V17.8151H27.5147V25.996H45.415V27.1805H24.4434V8.91797H45.4376Z\", fill: \"#7BA425\" }),\n React.createElement(\"path\", { d: \"M6.80469 8.91797H8.52627L20.4947 21.9722H20.6324V8.91797H21.9821V27.1805H21.2659L8.3059 12.6728H8.19572V26.7633H6.80469V8.91797Z\", fill: \"#7BA425\" }),\n React.createElement(\"path\", { d: \"M63.6311 26.0186V27.203H55.8059V44.2811H52.7346V27.203H41.5957V26.0186H63.6311Z\", fill: \"url(#paint0_linear_4552_11495)\" }),\n React.createElement(\"path\", { d: \"M83.7878 26.0186L80.0099 27.203H65.2523V33.7312H71.519V34.9157H65.2523V43.0966H80.7257L84.0068 44.2811H62.181V26.0186L83.7878 26.0186Z\", fill: \"url(#paint1_linear_4552_11495)\" }),\n React.createElement(\"path\", { d: \"M84.2926 27.2694C83.2392 27.2694 82.2649 27.4581 81.3695 27.8356C80.483 28.2043 79.7149 28.7397 79.0653 29.442C78.4245 30.1354 77.9242 30.9781 77.5643 31.97C77.2044 32.9531 77.0245 34.0548 77.0245 35.2749C77.0245 36.5038 77.2176 37.6142 77.6038 38.6061C77.9988 39.5892 78.5343 40.4275 79.2102 41.121C79.8948 41.8145 80.698 42.3499 81.6197 42.7274C82.5414 43.096 83.5289 43.2804 84.5823 43.2804C85.3459 43.2804 86.035 43.1794 86.6495 42.9775C87.2639 42.7669 87.8169 42.4684 88.3085 42.0822V35.9596H85.0036V34.9194H91.2447V42.5957C90.7356 42.8678 90.2221 43.1092 89.7042 43.3199C89.1863 43.5305 88.6245 43.7061 88.0188 43.8465C87.4219 43.987 86.7636 44.0923 86.0438 44.1626C85.324 44.2416 84.5076 44.2811 83.5947 44.2811C82.6292 44.2811 81.7119 44.1713 80.8429 43.9519C79.9738 43.7412 79.1663 43.4384 78.4201 43.0434C77.6828 42.6484 77.0157 42.1787 76.4188 41.6345C75.8219 41.0815 75.3128 40.4714 74.8914 39.8043C74.4789 39.1372 74.1585 38.4218 73.9302 37.6581C73.702 36.8944 73.5879 36.1 73.5879 35.2749C73.5879 34.4585 73.6932 33.6641 73.9039 32.8917C74.1233 32.1104 74.435 31.3775 74.8387 30.6928C75.2425 29.9994 75.7341 29.3673 76.3134 28.7968C76.8928 28.2262 77.5467 27.7346 78.2753 27.3221C79.0039 26.9095 79.7983 26.5891 80.6585 26.3609C81.5188 26.1327 82.4317 26.0186 83.3972 26.0186C84.3189 26.0186 85.1704 26.1458 85.9516 26.4004C86.7416 26.6462 87.457 26.9754 88.0978 27.3879C88.7474 27.8005 89.3223 28.2789 89.8227 28.8231C90.323 29.3586 90.7531 29.9203 91.113 30.5085L89.849 31.3512C89.1117 29.9379 88.2909 28.9065 87.3868 28.2569C86.4915 27.5986 85.4601 27.2694 84.2926 27.2694Z\", fill: \"url(#paint2_linear_4552_11495)\" }),\n React.createElement(\"path\", { d: \"M42.0059 43.7015C42.4558 43.7015 42.9011 43.6453 43.3418 43.533C43.7826 43.4121 44.1774 43.2393 44.5263 43.0147C44.8752 42.7815 45.1552 42.5007 45.3664 42.1725C45.5776 41.8356 45.6832 41.4469 45.6832 41.0063C45.6832 40.4794 45.5363 40.0129 45.2425 39.6069C44.9578 39.1923 44.5814 38.8165 44.1131 38.4796C43.6448 38.1341 43.1077 37.8101 42.5017 37.5078C41.9049 37.2054 41.2943 36.9031 40.6699 36.6008C40.0456 36.2984 39.4304 35.9831 38.8244 35.6549C38.2276 35.318 37.6951 34.9465 37.2268 34.5405C36.7585 34.1259 36.3775 33.6681 36.0837 33.167C35.799 32.6574 35.6567 32.0743 35.6567 31.4178C35.6567 30.7613 35.7853 30.1523 36.0423 29.5908C36.3086 29.0293 36.6943 28.5455 37.1992 28.1395C37.7042 27.7249 38.324 27.401 39.0586 27.1677C39.8023 26.9345 40.6516 26.8179 41.6065 26.8179C42.4696 26.8179 43.2408 26.9043 43.9203 27.077C44.5997 27.2498 45.1966 27.5046 45.7107 27.8415C46.2249 28.1784 46.661 28.593 47.0191 29.0854C47.3772 29.5778 47.6664 30.1479 47.8868 30.7958L46.3167 31.4696C46.1331 30.9427 45.899 30.4632 45.6143 30.0313C45.3297 29.5908 44.99 29.215 44.5951 28.904C44.2003 28.593 43.7412 28.3555 43.2179 28.1914C42.7037 28.0186 42.1207 27.9322 41.4688 27.9322C40.8903 27.9322 40.3853 28.01 39.9538 28.1654C39.5222 28.3123 39.1596 28.511 38.8657 28.7615C38.5811 29.0034 38.3653 29.2798 38.2184 29.5908C38.0807 29.8931 38.0118 30.2041 38.0118 30.5237C38.0118 30.9729 38.1587 31.3875 38.4526 31.7676C38.7464 32.1391 39.1366 32.4932 39.6232 32.8301C40.1099 33.1584 40.6608 33.478 41.2759 33.789C41.9003 34.1 42.5338 34.4153 43.1766 34.7349C43.8193 35.0545 44.4482 35.3871 45.0634 35.7326C45.6878 36.0781 46.2433 36.4582 46.7299 36.8729C47.2165 37.2789 47.6068 37.7281 47.9006 38.2204C48.1944 38.7042 48.3413 39.2484 48.3413 39.8531C48.3413 40.5355 48.2036 41.1791 47.9281 41.7838C47.6527 42.3798 47.2395 42.9024 46.6886 43.3516C46.1377 43.7922 45.4536 44.142 44.6365 44.4012C43.8193 44.6603 42.869 44.7899 41.7855 44.7899C40.9041 44.7899 40.119 44.6992 39.4304 44.5178C38.7418 44.3364 38.1312 44.0729 37.5987 43.7274C37.0753 43.3818 36.6254 42.9629 36.2489 42.4705C35.8725 41.9695 35.5649 41.3994 35.3262 40.7601L36.9651 40.1252C37.1579 40.6867 37.415 41.1877 37.7364 41.6283C38.0669 42.0688 38.448 42.4446 38.8795 42.7556C39.3111 43.0579 39.7885 43.2911 40.3119 43.4553C40.8444 43.6194 41.4091 43.7015 42.0059 43.7015Z\", fill: \"url(#paint3_linear_4552_11495)\" }),\n React.createElement(\"path\", { d: \"M42.0049 25.7431C42.4548 25.7431 42.9001 25.6877 43.3409 25.5768C43.7816 25.4574 44.1764 25.2867 44.5253 25.0649C44.8742 24.8346 45.1543 24.5574 45.3654 24.2332C45.5766 23.9005 45.6822 23.5166 45.6822 23.0815C45.6822 22.5612 45.5353 22.1005 45.2415 21.6996C44.9568 21.2901 44.5804 20.919 44.1121 20.5863C43.6439 20.2451 43.1067 19.9252 42.5007 19.6266C41.9039 19.328 41.2933 19.0295 40.669 18.7309C40.0446 18.4323 39.4294 18.1209 38.8234 17.7968C38.2266 17.4641 37.6941 17.0972 37.2258 16.6963C36.7575 16.2868 36.3765 15.8347 36.0827 15.3399C35.7981 14.8366 35.6557 14.2608 35.6557 13.6124C35.6557 12.9641 35.7843 12.3627 36.0414 11.8082C36.3076 11.2537 36.6933 10.776 37.1983 10.375C37.7033 9.96555 38.323 9.64565 39.0576 9.41532C39.8013 9.18499 40.6506 9.06982 41.6055 9.06982C42.4686 9.06982 43.2399 9.15513 43.9193 9.32575C44.5988 9.49636 45.1956 9.74802 45.7098 10.0807C46.2239 10.4134 46.6601 10.8229 47.0182 11.3091C47.3762 11.7954 47.6655 12.3584 47.8858 12.9982L46.3157 13.6636C46.1321 13.1432 45.898 12.6698 45.6133 12.2433C45.3287 11.8082 44.989 11.4371 44.5942 11.13C44.1994 10.8229 43.7403 10.5883 43.2169 10.4262C42.7027 10.2556 42.1197 10.1703 41.4678 10.1703C40.8893 10.1703 40.3843 10.2471 39.9528 10.4006C39.5213 10.5456 39.1586 10.7418 38.8648 10.9892C38.5801 11.2281 38.3644 11.5011 38.2174 11.8082C38.0797 12.1068 38.0109 12.4139 38.0109 12.7295C38.0109 13.1731 38.1578 13.5826 38.4516 13.9579C38.7454 14.3248 39.1356 14.6745 39.6223 15.0072C40.1089 15.3314 40.6598 15.647 41.275 15.9541C41.8993 16.2612 42.5329 16.5726 43.1756 16.8882C43.8183 17.2039 44.4473 17.5323 45.0624 17.8735C45.6868 18.2148 46.2423 18.5901 46.7289 18.9996C47.2156 19.4005 47.6058 19.8441 47.8996 20.3304C48.1934 20.8081 48.3403 21.3455 48.3403 21.9427C48.3403 22.6166 48.2026 23.2522 47.9271 23.8493C47.6517 24.4379 47.2385 24.954 46.6876 25.3976C46.1367 25.8327 45.4527 26.1782 44.6355 26.4341C43.8183 26.69 42.868 26.818 41.7846 26.818C40.9031 26.818 40.1181 26.7284 39.4294 26.5493C38.7408 26.3701 38.1302 26.11 37.5977 25.7687C37.0743 25.4275 36.6244 25.0138 36.248 24.5275C35.8715 24.0327 35.5639 23.4697 35.3252 22.8384L36.9641 22.2114C37.157 22.7659 37.414 23.2607 37.7354 23.6958C38.0659 24.1308 38.447 24.5019 38.8785 24.809C39.3101 25.1076 39.7875 25.3379 40.3109 25.5C40.8434 25.6621 41.4081 25.7431 42.0049 25.7431Z\", fill: \"#7BA425\" }))),\n React.createElement(\"rect\", { x: \"100.502\", y: \"24.2451\", width: \"21.588\", height: \"21.588\", rx: \"10.794\", fill: \"url(#paint4_linear_4552_11495)\" }),\n React.createElement(\"path\", { d: \"M111.412 30.1899C111.397 30.1732 111.378 30.16 111.358 30.1509C111.337 30.1419 111.315 30.1372 111.293 30.1372C111.27 30.1372 111.248 30.1419 111.228 30.1509C111.207 30.16 111.189 30.1732 111.173 30.1899L110.575 30.8092C110.559 30.8253 110.546 30.8445 110.538 30.8658C110.529 30.8871 110.524 30.91 110.524 30.9331C110.524 30.9562 110.529 30.9791 110.538 31.0004C110.546 31.0217 110.559 31.0409 110.575 31.057L111.173 31.6763C111.189 31.693 111.207 31.7062 111.228 31.7153C111.248 31.7243 111.27 31.729 111.293 31.729C111.315 31.729 111.337 31.7243 111.358 31.7153C111.378 31.7062 111.397 31.693 111.412 31.6763L112.01 31.057C112.026 31.0409 112.039 31.0217 112.048 31.0004C112.056 30.9791 112.061 30.9562 112.061 30.9331C112.061 30.91 112.056 30.8871 112.048 30.8658C112.039 30.8445 112.026 30.8253 112.01 30.8092L111.412 30.1899Z\", fill: \"white\" }),\n React.createElement(\"path\", { d: \"M111.412 38.4016C111.397 38.3849 111.378 38.3717 111.358 38.3626C111.337 38.3535 111.315 38.3489 111.293 38.3489C111.27 38.3489 111.248 38.3535 111.228 38.3626C111.207 38.3717 111.189 38.3849 111.173 38.4016L110.575 39.0209C110.559 39.037 110.546 39.0564 110.538 39.0778C110.529 39.0991 110.524 39.1221 110.524 39.1453C110.524 39.1686 110.529 39.1915 110.538 39.2129C110.546 39.2343 110.559 39.2536 110.575 39.2698L111.173 39.888C111.189 39.9048 111.207 39.9182 111.228 39.9273C111.248 39.9365 111.27 39.9412 111.293 39.9412C111.315 39.9412 111.337 39.9365 111.358 39.9273C111.378 39.9182 111.397 39.9048 111.412 39.888L112.01 39.2698C112.026 39.2536 112.039 39.2343 112.048 39.2129C112.056 39.1915 112.061 39.1686 112.061 39.1453C112.061 39.1221 112.056 39.0991 112.048 39.0778C112.039 39.0564 112.026 39.037 112.01 39.0209L111.412 38.4016Z\", fill: \"white\" }),\n React.createElement(\"path\", { d: \"M107.373 34.8129C107.278 34.807 107.186 34.7804 107.102 34.7348C107.018 34.6892 106.945 34.6257 106.886 34.5484C106.013 33.4018 105.218 32.1941 104.505 30.9341C105.747 30.9341 106.989 30.9341 108.23 30.9441C108.327 30.9441 108.438 31.0747 108.516 31.1818C109.335 32.3122 110.314 33.668 111.13 34.804\", fill: \"white\" }),\n React.createElement(\"path\", { d: \"M114.359 39.137C114.265 39.1306 114.173 39.1037 114.089 39.0579C114.005 39.0121 113.931 38.9486 113.873 38.8714C113 37.7248 112.204 36.5171 111.491 35.2571C112.733 35.2571 113.975 35.2571 115.217 35.2671C115.314 35.2671 115.425 35.3977 115.503 35.5048C116.322 36.6352 117.301 37.991 118.116 39.127\", fill: \"white\" }),\n React.createElement(\"path\", { d: \"M115.252 34.8129C115.346 34.807 115.439 34.7804 115.523 34.7348C115.607 34.6892 115.68 34.6257 115.739 34.5484C116.612 33.4018 117.407 32.1941 118.12 30.9341C116.878 30.9341 115.636 30.9341 114.395 30.9441C114.298 30.9441 114.187 31.0747 114.109 31.1818C113.289 32.3122 112.31 33.668 111.495 34.804\", fill: \"white\" }),\n React.createElement(\"path\", { d: \"M108.229 39.137C108.324 39.1306 108.416 39.1037 108.5 39.0579C108.584 39.0121 108.658 38.9486 108.716 38.8714C109.589 37.7248 110.385 36.5171 111.098 35.2571C109.856 35.2571 108.614 35.2571 107.372 35.2671C107.275 35.2671 107.164 35.3977 107.087 35.5048C106.267 36.6352 105.288 37.991 104.473 39.127\", fill: \"white\" })),\n React.createElement(\"defs\", null,\n React.createElement(\"linearGradient\", { id: \"paint0_linear_4552_11495\", x1: \"62.8012\", y1: \"26.0186\", x2: \"62.8012\", y2: \"44.2811\", gradientUnits: \"userSpaceOnUse\" },\n React.createElement(\"stop\", { stopColor: \"#0F5121\" }),\n React.createElement(\"stop\", { offset: \"1\", stopColor: \"#0F3A1B\" })),\n React.createElement(\"linearGradient\", { id: \"paint1_linear_4552_11495\", x1: \"62.8012\", y1: \"26.0186\", x2: \"62.8012\", y2: \"44.2811\", gradientUnits: \"userSpaceOnUse\" },\n React.createElement(\"stop\", { stopColor: \"#0F5121\" }),\n React.createElement(\"stop\", { offset: \"1\", stopColor: \"#0F3A1B\" })),\n React.createElement(\"linearGradient\", { id: \"paint2_linear_4552_11495\", x1: \"82.4163\", y1: \"26.0186\", x2: \"82.4163\", y2: \"44.2811\", gradientUnits: \"userSpaceOnUse\" },\n React.createElement(\"stop\", { stopColor: \"#0F5121\" }),\n React.createElement(\"stop\", { offset: \"1\", stopColor: \"#0F3A1B\" })),\n React.createElement(\"linearGradient\", { id: \"paint3_linear_4552_11495\", x1: \"41.8337\", y1: \"26.8179\", x2: \"41.8337\", y2: \"44.7899\", gradientUnits: \"userSpaceOnUse\" },\n React.createElement(\"stop\", { stopColor: \"#0F5121\" }),\n React.createElement(\"stop\", { offset: \"1\", stopColor: \"#0F3A1B\" })),\n React.createElement(\"linearGradient\", { id: \"paint4_linear_4552_11495\", x1: \"111.296\", y1: \"24.2451\", x2: \"111.296\", y2: \"45.8331\", gradientUnits: \"userSpaceOnUse\" },\n React.createElement(\"stop\", { stopColor: \"#0F5121\" }),\n React.createElement(\"stop\", { offset: \"1\", stopColor: \"#0F3A1B\" })),\n React.createElement(\"clipPath\", { id: \"clip0_4552_11495\" },\n React.createElement(\"rect\", { width: \"129.528\", height: \"52.3509\", fill: \"white\", transform: \"translate(0.258789 0.859863)\" })),\n React.createElement(\"clipPath\", { id: \"clip1_4552_11495\" },\n React.createElement(\"rect\", { width: \"104.432\", height: \"52.3509\", fill: \"white\", transform: \"translate(-5.68262 0.959961)\" })),\n React.createElement(\"clipPath\", { id: \"clip2_4552_11495\" },\n React.createElement(\"rect\", { width: \"104.432\", height: \"39.668\", fill: \"white\", transform: \"translate(-8.08008 8.36963)\" })))));\n};\nLogo.defaultProps = {\n height: 54,\n};\nexports.default = Logo;\n","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGQ9Ik0xOS44Nzk1IDE2LjY2MjVDMTkuNzEyOCAxNi42NjI1IDE5LjU1NTMgMTYuNTkzOSAxOS40Mzc4IDE2LjQ2OUMxOS4xOTQ1IDE2LjIxMjEgMTkuMTk0NSAxNS43OTM1IDE5LjQzNzggMTUuNTM1N0wyMS40OTYgMTMuMzYzMkg5Ljg4MDAyQzkuNTM1MDQgMTMuMzYzMiA5LjI1NTA1IDEzLjA2NzYgOS4yNTUwNSAxMi43MDM1QzkuMjU1MDUgMTIuMzM5MyA5LjUzNTA0IDEyLjA0MzggOS44ODAwMiAxMi4wNDM4SDIxLjQ5NTJMMTkuNDM3IDkuODcxMjRDMTkuMzE4NyA5Ljc0NzIyIDE5LjI1MzcgOS41ODA5OCAxOS4yNTM3IDkuNDA1MDZDMTkuMjUzNyA5LjIyOTE1IDE5LjMxODcgOS4wNjI5MSAxOS40MzcgOC45Mzg4OEMxOS41NTUzIDguODE0ODYgMTkuNzEyIDguNzQ1MzggMTkuODc4NiA4Ljc0NTM4QzIwLjA0NTMgOC43NDUzOCAyMC4yMDI4IDguODEzOTggMjAuMzIwMyA4LjkzODg4TDIzLjQ0NTEgMTIuMjM3M0MyMy40NzQzIDEyLjI2ODEgMjMuNTAwMSAxMi4zMDE1IDIzLjUyMzQgMTIuMzM3NkMyMy41MjkzIDEyLjM0NjQgMjMuNTM1OSAxMi4zNTk2IDIzLjU0MTggMTIuMzcxQzIzLjU1NTkgMTIuMzk1NiAyMy41Njg0IDEyLjQyMTEgMjMuNTc5MyAxMi40NDc1QzIzLjU4NTEgMTIuNDYxNiAyMy41OTI2IDEyLjQ4NzEgMjMuNTk2OCAxMi41MDEyQzIzLjYwMzQgMTIuNTE4OCAyMy42MTA5IDEyLjU0NiAyMy42MTU5IDEyLjU3NTFDMjMuNjIzNCAxMi42MTI5IDIzLjYyODQgMTIuNjU3OCAyMy42Mjg0IDEyLjcwMzVDMjMuNjI4NCAxMi43NDc1IDIzLjYyNDMgMTIuNzkxNSAyMy42MTU5IDEyLjgzMzdDMjMuNjEwOSAxMi44NjAxIDIzLjYwMzQgMTIuODg1NiAyMy41OTUxIDEyLjkxMTFDMjMuNTkxOCAxMi45MjUxIDIzLjU4NTEgMTIuOTQ0NSAyMy41Nzc2IDEyLjk2MjFDMjMuNTcwMSAxMi45ODIzIDIzLjU1NjggMTMuMDA4NyAyMy41NDE4IDEzLjAzNTFDMjMuNTQwOSAxMy4wMzc3IDIzLjUzMzQgMTMuMDUzNiAyMy41MjQzIDEzLjA2NzZDMjMuNTA1OSAxMy4wOTU4IDIzLjQ4OTMgMTMuMTE3OCAyMy40NzA5IDEzLjEzODlDMjMuNDcwMSAxMy4xNDE1IDIzLjQ1ODQgMTMuMTU2NSAyMy40NDUxIDEzLjE2OTdMMjAuMzIwMyAxNi40NjgxQzIwLjIwMjggMTYuNTkzOSAyMC4wNDYxIDE2LjY2MjUgMTkuODc5NSAxNi42NjI1WiIgZmlsbD0iIzA1NjgzOSIgc3Ryb2tlPSIjMDU2ODM5IiBzdHJva2Utd2lkdGg9IjAuNzUiLz4KPHBhdGggZD0iTTUuMzc1MjcgMjIuNTk2MUM0LjM2ODY2IDIyLjU0MjUgMy41ODUzNyAyMS42NDE4IDMuNjMxMiAyMC41ODcyTDMuNjMwMzYgNC43ODQ2MkMzLjU4NDUzIDMuNzUzNzUgNC4zNjAzMiAyLjg1OTIxIDUuMzYwMjcgMi44MDY0NEwxNS42MTggMi44MDU1NkMxNi42NDEzIDIuODU4MzMgMTcuNDIzOCAzLjc1OTkgMTcuMzc4OCA0LjgxNDUyTDE3LjM3OTYgOC43NDI3M0MxNy4zNzk2IDkuMTA2ODggMTcuMDk5NiA5LjQwMjQyIDE2Ljc1NDYgOS40MDI0MkMxNi40MDk3IDkuNDAyNDIgMTYuMTI5NyA5LjEwNjg4IDE2LjEyOTcgOC43NDI3M1Y0Ljc4NDYyQzE2LjE0NDcgNC40MzAxNCAxNS45MDA1IDQuMTQwNzYgMTUuNTg2NCA0LjEyNDA1TDUuMzkxMSA0LjEyNDkzQzUuMTA2OTUgNC4xNDA3NiA0Ljg2NTMgNC40MjkyNiA0Ljg3OTQ2IDQuNzU0NzFMNC44ODAzIDIwLjYxNzFDNC44NjUzIDIwLjk3MTYgNS4xMDk0NSAyMS4yNjA5IDUuNDIyNzcgMjEuMjc3NkwxNS42MTggMjEuMjc2OEMxNS45MDIyIDIxLjI2MDkgMTYuMTQ0NyAyMC45NzI0IDE2LjEzMDUgMjAuNjQ3TDE2LjEyOTcgMTYuNjU5QzE2LjEyOTcgMTYuMjk0OCAxNi40MDk3IDE1Ljk5OTMgMTYuNzU0NiAxNS45OTkzQzE3LjA5OTYgMTUuOTk5MyAxNy4zNzk2IDE2LjI5NDggMTcuMzc5NiAxNi42NTlWMjAuNjE3MUMxNy40MjQ2IDIxLjY0ODggMTYuNjQ4IDIyLjU0MjUgMTUuNjQ4OSAyMi41OTUzTDUuMzkxMSAyMi41OTYxQzUuMzg2MSAyMi41OTYxIDUuMzgwMjcgMjIuNTk2MSA1LjM3NTI3IDIyLjU5NjFaIiBmaWxsPSIjMDU2ODM5IiBzdHJva2U9IiMwNTY4MzkiIHN0cm9rZS13aWR0aD0iMC43NSIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwIj4KPHBhdGggZD0iTTAgMEgyNFYyNEgwVjBaIiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjkiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAyOSAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGQ9Ik0xNi4wMjY2IDkuMjcwMTFDMTYuMDI2NiA4LjQ5NTk3IDE1LjUxNjQgNy45NzA4OSAxNS40OTM1IDcuOTQ4MjFMMTIuNTQxMyA0Ljk5NzJDMTIuOTczIDQuODMwMTMgMTMuMjgwOSA0LjQxMzI4IDEzLjI4MDkgMy45MjMxOFYxLjE1MjcxQzEzLjI4MDkgMC41MTY1NjkgMTIuNzY1MSAwIDEyLjEyODkgMEg0LjI3NDI3QzMuNjM4MzcgMCAzLjEyNzIzIDAuNTE2NTY5IDMuMTI3MjMgMS4xNTI3MVYzLjkyMzE4QzMuMTI3MjMgNC40MDgwOCAzLjQyNTY5IDQuODIyMzMgMy44NTA4MSA0Ljk5MjcxTDAuODk1MzA1IDcuOTQ0OUMwLjg3MzU2NSA3Ljk2NTcgMC4zNTc5NDEgOC40NjMxMiAwLjM1Nzk0MSA5LjI0NDgzVjI3LjkyMzFDMC4zNTc5NDEgMjguODEzOSAxLjA4NTc3IDI5LjUzODUgMS45NzY2NSAyOS41Mzg1SDEwLjI1NjRDMTAuMjU2NCAyOS41Mzg1IDEwLjI1NjQgMjcuMDc2OSAxMi4zMDc3IDI2LjI1NjRDMTMuNTM4NSAyNS43NjQxIDE2LjA1MjMgMjUuODQ2MiAxNi4wNTIzIDI1Ljg0NjJMMTYuMDI2NiA5LjI3MDExWk0xMC4yODEgMjMuNzY5MkgxLjc0MjQ3VjEzLjYxNTNIMTAuMjgxVjIzLjc2OTJaIiBmaWxsPSIjMDU2ODM5Ii8+CjxwYXRoIGQ9Ik0yNy41NjU0IDI1LjEzNTlMMjMuNjMyNiAyMS4yMDI5QzIyLjcxMjUgMjAuMjgyOCAyMS4yMjA4IDIwLjI4MjggMjAuMzAwNyAyMS4yMDI5QzE5LjM4MDYgMjIuMTIzIDE5LjM4MDYgMjMuNjE0NiAyMC4zMDA3IDI0LjUzNDdMMjQuMjMzOCAyOC40Njc3QzI1LjE1MzggMjkuMzg3NyAyNi42NDU0IDI5LjM4NzcgMjcuNTY1NSAyOC40Njc3QzI4LjQ4NTUgMjcuNTQ3NSAyOC40ODU1IDI2LjA1NTggMjcuNTY1NCAyNS4xMzU5WiIgZmlsbD0iIzA1NjgzOSIvPgo8cGF0aCBkPSJNMTkuNDA1MiAyNy4wOTA5TDEzLjg0MzIgMjcuMDkwOUMxMi41NDIgMjcuMDkwOSAxMS40ODcyIDI4LjE0NTcgMTEuNDg3MiAyOS40NDY5QzExLjQ4NzIgMzAuNzQ4IDEyLjU0MiAzMS44MDI4IDEzLjg0MzEgMzEuODAyOEgxOS40MDUyQzIwLjcwNjQgMzEuODAyOCAyMS43NjExIDMwLjc0OCAyMS43NjExIDI5LjQ0NjlDMjEuNzYxMSAyOC4xNDU3IDIwLjcwNjQgMjcuMDkwOSAxOS40MDUyIDI3LjA5MDlaIiBmaWxsPSIjMDU2ODM5Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cGF0aCBkPSJNMCAwSDI4LjcxNzlWMzJIMFYwWiIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAxNiAyMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxwYXRoIGQ9Ik01LjIxMjQgMC45MDc0NzFDMy4zOTI0IDAuOTA3NDcxIDEuNjgyNCAxLjQwNzQ3IDAuMjEyNDAyIDIuMjU3NDdDMy4yMDI0IDMuOTg3NDcgNS4yMTI0IDcuMjA3NDcgNS4yMTI0IDEwLjkwNzVDNS4yMTI0IDE0LjYwNzUgMy4yMDI0IDE3LjgyNzUgMC4yMTI0MDIgMTkuNTU3NUMxLjY4MjQgMjAuNDA3NSAzLjM5MjQgMjAuOTA3NSA1LjIxMjQgMjAuOTA3NUMxMC43MzI0IDIwLjkwNzUgMTUuMjEyNCAxNi40Mjc1IDE1LjIxMjQgMTAuOTA3NUMxNS4yMTI0IDUuMzg3NDcgMTAuNzMyNCAwLjkwNzQ3MSA1LjIxMjQgMC45MDc0NzFaIiBmaWxsPSJibGFjayIvPgo8L3N2Zz4K\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjUiIGhlaWdodD0iNTciIHZpZXdCb3g9IjAgMCA2NSA1NyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxwYXRoIGQ9Ik00MS45NzY1IDE4LjY5NzdMMzUuMDM2MyAyMi4zOTc4QzM0LjUxNDcgMjIuNjUwNSAzMy45MTI3IDIyLjY5NzIgMzMuMzU2NCAyMi41MjgyQzMyLjgwMDIgMjIuMzU5MiAzMi4zMzI4IDIxLjk4NzUgMzIuMDUyNCAyMS40OTExQzMxLjc3MiAyMC45OTQ3IDMxLjcwMDIgMjAuNDEyMSAzMS44NTIyIDE5Ljg2NTRDMzIuMDA0MSAxOS4zMTg4IDMyLjM2NzkgMTguODUwNSAzMi44Njc0IDE4LjU1ODdDMzIuOTYxOSAxOC41MDc0IDMzLjA2MDYgMTguNDYzNyAzMy4xNjI0IDE4LjQyOEw0MC41NzExIDE1LjcyNjdDNDAuOTcwMyAxNS41ODIgNDEuNDEwOSAxNS41ODk0IDQxLjgwNDcgMTUuNzQ3M0M0Mi4xOTg1IDE1LjkwNTIgNDIuNTE2MiAxNi4yMDIgNDIuNjk0MSAxNi41NzgxQzQyLjg3MiAxNi45NTQxIDQyLjg5NjkgMTcuMzgxNyA0Mi43NjM4IDE3Ljc3NDhDNDIuNjMwNyAxOC4xNjggNDIuMzQ5NSAxOC40OTc3IDQxLjk3NjUgMTguNjk3N1oiIGZpbGw9IiNGMkQyQkMiLz4KICAgIDxwYXRoIGQ9Ik00MS41ODM3IDI0Ljc4ODNMMzQuNjczNCAyNi41NjI4QzM0LjA4NTggMjYuNzAyNSAzMy40NjE3IDI2LjYyNTQgMzIuOTM1NSAyNi4zNDgxQzMyLjQwOTMgMjYuMDcwOCAzMi4wMjMgMjUuNjE1NCAzMS44NTk2IDI1LjA3OThDMzEuNjk2MyAyNC41NDQzIDMxLjc2OSAyMy45NzE1IDMyLjA2MiAyMy40ODQ1QzMyLjM1NTEgMjIuOTk3NiAzMi44NDUyIDIyLjYzNTUgMzMuNDI2OCAyMi40NzYxQzMzLjU0MjQgMjIuNDQ3NCAzMy42NjAyIDIyLjQyNjcgMzMuNzc5MSAyMi40MTRMNDAuOTAxNyAyMS42MzY0QzQxLjMzODkgMjEuNTk0MSA0MS43Nzc2IDIxLjcwMyA0Mi4xMzE2IDIxLjk0MTlDNDIuNDg1NiAyMi4xODA3IDQyLjcyOTIgMjIuNTMyMSA0Mi44MTQ3IDIyLjkyNzFDNDIuOTAwMSAyMy4zMjIgNDIuODIxMiAyMy43MzIgNDIuNTkzNCAyNC4wNzY0QzQyLjM2NTcgMjQuNDIwOCA0Mi4wMDU1IDI0LjY3NDcgNDEuNTgzNyAyNC43ODgzWiIgZmlsbD0iI0YyRDJCQyIvPgogICAgPHBhdGggZD0iTTkuNjI1NzMgNDMuMTEyNEwxMS4xMzU4IDM5LjYzOTRDMTEuMTM1OCAzOS42Mzk0IDEzLjIxMjkgMzkuMDY2OSAxOC43MTI3IDQyLjQ3MjRDMjQuMjEyNSA0NS44Nzc5IDI0LjcyNjggNDcuMTQ0NyAyNC43MjY4IDQ3LjE0NDdDMjQuNzI2OCA0Ny4xNDQ3IDIzLjQ1MTcgNTAuNjQ0NiAyMi43OTcyIDUwLjY0NDZDMjEuMDYzMSA1MC43ODMxIDEyLjU0MTQgNDUuMTcxIDkuNjI1NzMgNDMuMTEyNFoiIGZpbGw9IiM1NzU3NTciLz4KICAgIDxwYXRoIGQ9Ik00MC44NTc3IDI5LjE2NzVMMzYuNDIxNCAyOC42MjM2TDM4LjA1ODQgMjguNDA0MUwzNS4zMzQ1IDI5LjQ3ODdDMzQuOTU3NCAyOS42Mjk0IDM0LjUxNzkgMjkuNjcxMyAzNC4xMDE0IDI5LjU5NjNDMzMuNjg0OCAyOS41MjEzIDMzLjMyMDggMjkuMzM0NyAzMy4wNzk5IDI5LjA3MjhDMzIuODM5IDI4LjgxMDggMzIuNzM4NCAyOC40OTIxIDMyLjc5NzYgMjguMTc4NUMzMi44NTY4IDI3Ljg2NDkgMzMuMDcxNiAyNy41Nzg3IDMzLjQwMDMgMjcuMzc1NEwzNS43NDcxIDI1LjkxNzVDMzUuOTU4NSAyNS43ODU0IDM2LjIxMTYgMjUuNjk0OCAzNi40ODMgMjUuNjU0MUMzNi43NTQ0IDI1LjYxMzUgMzcuMDM1NCAyNS42MjQxIDM3LjI5OTggMjUuNjg0OUgzNy4zNjYzTDQxLjY2MDcgMjYuNjg3NEM0Mi4wNzI0IDI2Ljc4NzIgNDIuNDE4MyAyNi45OTc3IDQyLjYyOTUgMjcuMjc3MkM0Mi44NDA3IDI3LjU1NjcgNDIuOTAxOCAyNy44ODQ2IDQyLjgwMDcgMjguMTk1OEM0Mi42OTk1IDI4LjUwNyA0Mi40NDM1IDI4Ljc3ODcgNDIuMDgzNSAyOC45NTY5QzQxLjcyMzUgMjkuMTM1MSA0MS4yODU5IDI5LjIwNjggNDAuODU3NyAyOS4xNTc2VjI5LjE2NzVaIiBmaWxsPSIjRjJEMkJDIi8+CiAgICA8cGF0aCBkPSJNNDEuNDA2MSAzMi45NTY2TDM0LjIwNzQgMzMuNjIyQzMzLjY0NzQgMzMuNjczOCAzMy4wNzg2IDMzLjU3ODkgMzIuNjI2MyAzMy4zNTgzQzMyLjE3MzkgMzMuMTM3NiAzMS44NzUxIDMyLjgwOTMgMzEuNzk1NCAzMi40NDU1QzMxLjcxNTggMzIuMDgxNyAzMS44NjE5IDMxLjcxMjMgMzIuMjAxNSAzMS40MTg1QzMyLjU0MTIgMzEuMTI0NyAzMy4wNDY3IDMwLjkzMDUgMzMuNjA2NyAzMC44Nzg4SDMzLjc5NzZMNDEuMDYxNSAzMC42MzM4QzQxLjUwNzIgMzAuNjM3IDQxLjkzNTMgMzAuNzQ3MSA0Mi4yNjM2IDMwLjk0MjlDNDIuNTkxOSAzMS4xMzg3IDQyLjc5NzIgMzEuNDA2NSA0Mi44Mzk5IDMxLjY5NDdDNDIuODgyNyAzMS45ODI5IDQyLjc1OTkgMzIuMjcxMiA0Mi40OTUyIDMyLjUwNDFDNDIuMjMwNSAzMi43MzcxIDQxLjg0MjYgMzIuODk4MiA0MS40MDYxIDMyLjk1NjZaIiBmaWxsPSIjRjJEMkJDIi8+CiAgICA8cGF0aCBkPSJNMTguODQ4IDIxLjYyNzRDMTguODQ4IDIxLjYyNzQgMTUuMjk4NiAyNC42NjEyIDE0LjA3ODkgMjcuMjQ1OUMxMi44NTkxIDI5LjgzMDcgMTEuNjM5NCA0Ny4wNzY1IDExLjYzOTQgNDcuMDc2NUwyMC43OTk2IDUyLjY0ODhDMjEuNDA3OCA1MC45MDE3IDIyLjIyNzUgNDkuMjQxIDIzLjIzOSA0Ny43MDU5QzI0Ljc3MTggNDUuNDk4OCAyOS4zMzc3IDQzLjk3OTggMzAuNDc2MSA0MS4yNjkxQzMxLjYxNDUgMzguNTU4NSAyOS4wNDUgMjQuNjQ4NiAyOS4wOTc4IDI0LjI0MTZDMjkuMTUwNyAyMy44MzQ2IDE4Ljg0OCAyMS42Mjc0IDE4Ljg0OCAyMS42Mjc0WiIgZmlsbD0iI0YyRDJCQyIvPgogICAgPHBhdGggZD0iTTE5LjQ1OTkgMjQuNjI5NEMxOS40NTk5IDI0LjYyOTQgMTYuNDg2NyAyNy44MTE1IDE2LjY4MjMgMjkuOTU0NUMxNi43OTQ3IDMxLjIyNzggMTcuMTYyOCAzMi40NzM5IDE3Ljc2OTkgMzMuNjM1NkwyMC43IDI4Ljc1NDhMMTkuNDU5OSAyNC42Mjk0WiIgZmlsbD0iI0REQTk5QSIvPgogICAgPHBhdGggZD0iTTIzLjE1NjEgMzQuNjM2NEMyMy4xNTYxIDM0LjYzNjQgMjIuOTM2NCA0MC42NTE0IDIwLjgwNSA0Mi45MTk5QzE3LjMxMjcgNDUuMjA5IDE4LjA1NzYgNDYuMzkzNyAxNS43MzggNDkuMzMyNEwyMS4wMTE2IDUyLjY0ODZDMjEuNjY5IDUwLjcwMTIgMjIuNTU0OSA0OC44NDk5IDIzLjY0ODMgNDcuMTM4OEMyNS44NjQgNDUuMDkwNSAyOS43MTg2IDQzLjkzOTUgMzEuMjQzOSA0MC4xNEMzMS42NTcgMzkuMTExIDMxLjgzNTQgMzYuNDY1MiAzMS41OTM3IDMzLjYzNTVMMjcuNjM4NiAzNC4wMDk3TDIzLjE1NjEgMzQuNjM2NFoiIGZpbGw9IiNEREE5OUEiLz4KICAgIDxwYXRoIGQ9Ik00MC44MzQ3IDM4LjM3OVY2Ljg3NTA3QzQwLjgzNDcgNS4zNTAzMiAzOS41OTc5IDQuMTE0MjYgMzguMDcyMiA0LjExNDI2TDIxLjQ0OSA0LjExNDI2QzE5LjkyMzMgNC4xMTQyNiAxOC42ODY1IDUuMzUwMzIgMTguNjg2NSA2Ljg3NTA3TDE4LjY4NjUgMzguMzc5QzE4LjY4NjUgMzkuOTAzNyAxOS45MjMzIDQxLjEzOTggMjEuNDQ5IDQxLjEzOThIMzguMDcyMkMzOS41OTc5IDQxLjEzOTggNDAuODM0NyAzOS45MDM3IDQwLjgzNDcgMzguMzc5WiIgZmlsbD0iIzBBMTIyOSIvPgogICAgPHBhdGggZD0iTTM4LjgyMSAzNi42MTg4VjcuNjM0NzJDMzguODIxIDYuNzk1OCAzOC4xMjI5IDYuMTE1NzIgMzcuMjYxOCA2LjExNTcyTDIyLjI1OTEgNi4xMTU3MkMyMS4zOTc5IDYuMTE1NzIgMjAuNjk5OCA2Ljc5NTggMjAuNjk5OCA3LjYzNDcyTDIwLjY5OTggMzYuNjE4OEMyMC42OTk4IDM3LjQ1NzcgMjEuMzk3OSAzOC4xMzc4IDIyLjI1OTEgMzguMTM3OEgzNy4yNjE4QzM4LjEyMjkgMzguMTM3OCAzOC44MjEgMzcuNDU3NyAzOC44MjEgMzYuNjE4OFoiIGZpbGw9IndoaXRlIi8+CiAgICA8cGF0aCBkPSJNNi42MDU3MSA0Ni4yMjg1QzYuNjA1NzEgNDYuMjI4NSAxMC42ODc3IDQwLjQ4MyAxMS4xMzYgMzkuNjM5NkMxMS40ODk1IDQwLjczMzQgMTQuMDg0NCA0NC42MTIxIDE3LjExNDYgNDYuMDYxNkMyMC4xNDQ5IDQ3LjUxMTIgMjMuNjkyNCA0OC4xODE1IDI0LjcyNjkgNDcuMTQ0OEwyMS43NDQxIDU1LjY1MDdDMjEuNzQ0MSA1NS42NTA3IDExLjczMDkgNTUuNzAzNCA2LjYwNTcxIDQ2LjIyODVaIiBmaWxsPSIjN0I3QjdCIi8+CiAgICA8cGF0aCBkPSJNMjAuNjk5OSA1MS4xMDE5QzIwLjY3NjcgNTEuNjM0MSAyMC40OTUxIDUyLjEzMyAyMC4xOTQzIDUyLjQ5MDhDMTkuOTE4MyA1Mi43ODA3IDE5LjY5MzEgNTIuNjY0NyAxOS42OTMxIDUyLjIwMDhDMTkuNzE3OCA1MS42NzA0IDE5Ljg5NzMgNTEuMTcyOSAyMC4xOTQzIDUwLjgxMTlDMjAuNDc0NyA1MC41MDc1IDIwLjY5OTkgNTAuNjM4IDIwLjY5OTkgNTEuMTAxOVoiIGZpbGw9IiNFOEU4RTgiLz4KICAgIDxwYXRoIGQ9Ik0zNS43NDM1IDIyLjk0NTVDMzUuNzQzNSAyMi44NDM1IDM1LjU4MSAyMi43NDE1IDM1LjQ3NDEgMjIuNzE2QzM0LjE5NjkgMjIuNDE1NiAzMi45MTQgMjIuMTMyMiAzMS42MjU0IDIxLjg2NThDMzEuNTY1MiAyMS44NjQgMzEuNTA1NSAyMS44NzY1IDMxLjQ1MTEgMjEuOTAyNEMzMS4zOTY4IDIxLjkyODMgMzEuMzQ5NSAyMS45NjY4IDMxLjMxMzMgMjIuMDE0NkMzMS4xODkzIDIyLjIxNDQgMzEuMDgyNCAyMi40Mzk3IDMwLjk3NTQgMjIuNjM1MkMzMC45Mjg0IDIyLjcyODcgMzAuODg1NiAyMi44MjIzIDMwLjg0MjkgMjIuOTE1OEMzMC43MzYgMjMuMTUzOCAzMC42Mzc2IDIzLjEwNzEgMzAuMzU1NCAyMy4xMTEzQzI5LjA0MjYgMjMuMTA3MSAyNS42OTg1IDE5Ljc4NzIgMjUuNzQ1NSAxOC41MTJDMjUuNzQ1NSAxOC4yMzU3IDI1LjcwMjggMTguMTM3OSAyNS45NDIyIDE4LjAzMTdDMjYuMDc0OCAxNy45NzIyIDI2LjIxMTYgMTcuOTA4NCAyNi4zMzk5IDE3Ljg0MDRDMjYuNTExIDE3Ljc1NTQgMjYuNjgyIDE3LjY2MTggMjYuODQ4OCAxNy41NTk4QzI2Ljg5NTYgMTcuNTIzNSAyNi45MzM0IDE3LjQ3NzEgMjYuOTU5MyAxNy40MjRDMjYuOTg1MyAxNy4zNzEgMjYuOTk4NyAxNy4zMTI4IDI2Ljk5ODUgMTcuMjUzOEMyNi43MTM0IDE1Ljk3ODYgMjYuNDI4MyAxNC43MDMzIDI2LjE0MzIgMTMuNDI4MUMyNi4xMjg3IDEzLjM2NzkgMjYuMDk5OCAxMy4zMTIxIDI2LjA1ODggMTMuMjY1NEMyNi4wMTc4IDEzLjIxODggMjUuOTY2MSAxMy4xODI3IDI1LjkwOCAxMy4xNjAzQzI1LjcyODkgMTMuMTI4MyAyNS41NDY4IDEzLjExNTQgMjUuMzY0OSAxMy4xMjIxSDI1LjI3OTRDMjMuOTk2NSAxMy4xOTQzIDIyLjcxMzYgMTQuMTk3NSAyMi43MTM2IDE2Ljc1MjJDMjIuNzEzNiAyMC4zMzU2IDI3Ljc3MjUgMjYuMTI5MyAzMi4xNTE0IDI2LjEyOTNDMzQuNjI3NCAyNi4xMjkzIDM1LjY1MzcgMjQuOTM0OSAzNS43OTA2IDIzLjcxNDlDMzUuODE0MiAyMy40NTc2IDM1Ljc5ODMgMjMuMTk4MSAzNS43NDM1IDIyLjk0NTVaIiBmaWxsPSIjM0EzQTM5Ii8+CiAgICA8cGF0aCBkPSJNMzAuMzA0MSAyOC44MzlMMjguODM1NyAyOS4zMjM3TDI3LjM1OTIgMjkuNzU2NEMyNi4zNjk0IDMwLjA0NjQgMjUuMzc1NiAzMC4zMTQ3IDI0LjM2NTYgMzAuNTY1N0wyNS41MTc2IDMwLjA1OTRDMjQuNDUwNyAzMS4yODg0IDIzLjgxMzkgMzIuODMzNCAyMy4zMzEyIDM0LjY2ODNDMjIuODUzNiAzNi42NzU4IDIyLjQ4MTIgMzguNzEgMjIuMjE1NyA0MC43NjE3QzIyLjAzODIgNDEuOTY1NyAyMS40MTk2IDQzLjA0NTIgMjAuNDk2MSA0My43NjI2QzE5LjU3MjYgNDQuNDgwMSAxOC40MTk4IDQ0Ljc3NjcgMTcuMjkxMiA0NC41ODc0QzE2LjE2MjcgNDQuMzk4IDE1LjE1MDkgNDMuNzM4MSAxNC40Nzg0IDQyLjc1MjhDMTMuODA2IDQxLjc2NzUgMTMuNTI3OSA0MC41Mzc2IDEzLjcwNTQgMzkuMzMzNkMxMy43NzA5IDM4LjkyMTYgMTMuODg1NCAzOC41MjAyIDE0LjA0NjEgMzguMTM5MUMxNC45NTQ1IDM1LjkxMTYgMTUuOTg2NyAzMy43NDM5IDE3LjEzNzEgMzEuNjQ3NkMxNy43ODg5IDMwLjQ4OTQgMTguNTQ1NyAyOS40MDIzIDE5LjM5NjUgMjguNDAxOUMyMC4yODc5IDI3LjM0MiAyMS4zMjI5IDI2LjQzMDMgMjIuNDY3MiAyNS42OTcxTDIyLjk4MjMgMjUuMzcyNUMyMy4xNzU1IDI1LjI1MjIgMjMuMzk1NSAyNS4xODk0IDIzLjYxOTIgMjUuMTkwN0MyNC41NzY1IDI1LjEzNDUgMjUuNTQxOSAyNS4wNTY2IDI2LjUwNzMgMjQuOTYxNEwyNy45NTk1IDI0LjgzMTVMMjkuMzg3MyAyNC42NDk4SDI5LjQ2ODVDMjkuOTc2NyAyNC41NzQ4IDMwLjQ5MjggMjQuNzA4MiAzMC45MTI1IDI1LjAyM0MzMS4zMzIzIDI1LjMzNzkgMzEuNjI0NiAyNS44MTA3IDMxLjczMDYgMjYuMzQ2NEMzMS44MzY2IDI2Ljg4MiAzMS43NDgzIDI3LjQ0MDYgMzEuNDgzNiAyNy45MDk1QzMxLjIxODkgMjguMzc4NSAzMC43OTc0IDI4LjcyMyAzMC4zMDQxIDI4Ljg3MzZWMjguODM5WiIgZmlsbD0iI0YyRDJCQyIvPgogICAgPHBhdGggZD0iTTI5Ljc2MDUgMTUuMTIxOEMzMC44Mjg1IDE1LjEyMTggMzEuODUyOCAxNS41NDM1IDMyLjYwOCAxNi4yOTQyQzMzLjM2MzIgMTcuMDQ0OSAzMy43ODc0IDE4LjA2MyAzMy43ODc0IDE5LjEyNDYiIGZpbGw9IiM3QjdCN0IiLz4KICAgIDxwYXRoIGQ9Ik0yOS43NjA1IDE1LjEyMThDMzAuODI4NSAxNS4xMjE4IDMxLjg1MjggMTUuNTQzNSAzMi42MDggMTYuMjk0MkMzMy4zNjMyIDE3LjA0NDkgMzMuNzg3NCAxOC4wNjMgMzMuNzg3NCAxOS4xMjQ2IiBzdHJva2U9IiM3QjdCN0IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLW1pdGVybGltaXQ9IjEwIi8+CiAgICA8cGF0aCBkPSJNMjkuNzYwNSAxMy4xMjA0QzMwLjU1MzUgMTMuMTE5OCAzMS4zMzg5IDEzLjI3NDYgMzIuMDcxNyAxMy41NzYxQzMyLjgwNDUgMTMuODc3NiAzMy40NzA1IDE0LjMxOTcgMzQuMDMxNCAxNC44NzczQzM0LjU5MjQgMTUuNDM0OSAzNS4wMzc0IDE2LjA5NyAzNS4zNDEgMTYuODI1OEMzNS42NDQ2IDE3LjU1NDUgMzUuODAwOSAxOC4zMzU2IDM1LjgwMDkgMTkuMTI0NSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiLz4KICAgIDxwYXRoIGQ9Ik0zMi4yMzEyIDE4LjYyNDRIMzAuMjYwNVYxNi42NzUxQzMwLjc0NjYgMTYuNzc1IDMxLjE5NTUgMTcuMDEzMSAzMS41NDg2IDE3LjM2NDFDMzEuODk5NiAxNy43MTMgMzIuMTM0NiAxOC4xNTIxIDMyLjIzMTIgMTguNjI0NFoiIGZpbGw9IiNDNUM1QzUiIHN0cm9rZT0iI0M1QzVDNSIvPgo8L3N2Zz4=\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjUiIGhlaWdodD0iNTciIHZpZXdCb3g9IjAgMCA2NSA1NyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiPgogICAgICAgIDxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMjEuNTI0OSA1LjQ0NDc4QzE3LjE4OTUgNS43NTQ3MSAxLjMyNTA4IDMzLjY5NTMgMS4zMjUwOCAzMy42OTUzQy0wLjg3MDY2MyAzNy4zNjYgNS4wOTY5OCAzNS4wMjg4IDcuMTM1NjkgMzguNzA4N0MxMy4wNTM1IDQ4LjE1NzMgMjIuNjEyNiAzOC43MDM1IDI4LjQ2OTggMzguNzA4N0MzNC40NjE5IDM4LjY5NzIgMzQuMjY3NyA0My4zMTc5IDQyLjMyMDQgNDAuMzQxN0M0Ny4zMjIgMzguMTYgNTguMTgyMSAzNy4zNTg1IDU0LjEzMjUgMzAuMzY3NEM1NC4xMzI1IDMwLjM2NzQgNDQuMzE4NyAxNS4yOTggNDEuOTI4OSAxNS4yOThDMzkuNTM5MiAxNS4yOTggMzUuNjU4NiAyMi40NjA2IDM1LjY1ODYgMjIuNDYwNkMzNS42NTg2IDIyLjQ2MDYgMjUuODYwMyA1LjEzNDg2IDIxLjUyNDkgNS40NDQ3OFoiIGZpbGw9IiMwNTY4MzkiLz4KICAgICAgICA8cGF0aCBkPSJNNTQuMzY0MiAzMC4zNDI1QzU4Ljc2MDIgMzYuODMxOSA0Ni40NjI1IDM4Ljk1MjYgNDYuMTk0NCAzOS4wMTY2QzQ1LjkyNjIgMzkuMDgwNyA0NS4zODQ1IDM4LjMzNzQgNDUuMDE4OCAzNy43NzU4QzQ0Ljg3MTEgMzcuNTQ5IDQxLjk5NiAzNS40NzYxIDQwLjE5NDYgMzIuNTI2N0MzOC43OTY2IDMwLjIzNzYgMzkuOTYzMSAyOC44OTI3IDM4LjgxMDYgMjcuMDAzMUMzNy43NzA5IDI1LjI5ODQgMzUuNjU4OSAyMi40NjA1IDM1LjY1ODkgMjIuNDYwNUMzNS42NTg5IDIyLjQ2MDUgMzkuNDk5NCAxNS4yMDg3IDQxLjg4OTIgMTUuMjA4N0M0Mi4yNTEyIDE1LjIwODcgNDIuODA2MSAxNS4xNjUzIDQzLjQ0ODkgMTUuNzUyQzQ3LjA0OTQgMTkuMDM5IDU0LjM2NDIgMzAuMzQyNSA1NC4zNjQyIDMwLjM0MjVaIiBmaWxsPSIjN0JBNDI1Ii8+CiAgICAgICAgPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0yMS45MzkxIDUuMjM5NUMxOC43Njk0IDUuMjM5NSAxNC4yMjM0IDEzLjExOTggMTQuMjIzNCAxMy4xMTk4QzE2LjYzNDMgMTQuODg2NyAxNS44NzA5IDE3LjU2NSAxOS4wMjcgMTYuODk1MkMyMC42NTA4IDE2LjU1MDUgMjEuNTM5MiAxMi40MDIgMjMuMTY3MyAxMi43MDRDMjQuMTg5MSAxMi44OTM1IDI0LjEzMzIgMTQuNzcyNiAyNS4xMjA1IDE1LjE4NjRDMjYuODY2OSAxNS45MTg1IDI5LjAyODEgMTIuMTgxMSAyOS4wMjgxIDEyLjE4MTFDMjkuMDI4MSAxMi4xODExIDI0LjgzNiA1LjIzOTUgMjEuOTM5MSA1LjIzOTVaIiBmaWxsPSIjRTVGMEVCIi8+CiAgICAgICAgPHBhdGggZD0iTTEwLjc5NzYgNDcuNDg5OVYzNC4wNTAyTDI3LjkzNTQgMjYuMzU2NFY1My4xMzg0TDEwLjc5NzYgNDcuNDg5OVoiIGZpbGw9IiM4QjhCOEIiLz4KICAgICAgICA8cGF0aCBkPSJNMjcuOTM1MSA1My4xMzgyVjI2LjM1NjJMNjQuODQ3MSAzMy4wMjgxVjQ1LjE1MDRMMjcuOTM1MSA1My4xMzgyWiIgZmlsbD0iIzhCOEI4QiIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMC43OTc0IDQ2Ljc5NzdWMzMuNzk4MkwyNy45MzUxIDI2LjM1NjRWNTIuMjYxM0wxMC43OTc0IDQ2Ljc5NzdaIiBmaWxsPSIjOEI4QjhCIi8+CiAgICAgICAgPHBhdGggZD0iTTI3LjkzNDggNTIuMjYxMVYyNi4zNTYyTDY0Ljg0NjggMzIuODA5NlY0NC41MzQ5TDI3LjkzNDggNTIuMjYxMVoiIGZpbGw9IndoaXRlIi8+CiAgICAgICAgPHBhdGggZD0iTTIwLjkyMjEgNDAuNzc2MVY0NC4wODk5TDI4LjAxOTkgNDguNjIwMkw2NC4yMzg0IDQxLjg2NjlWMzguNTExMUw2MS40ODA0IDM5LjAxNDRINTcuNjI3NEM1Ni4yNDg0IDM5LjMwOCA1My40NzQzIDM5LjcxOTEgNTMuNDA5NCAzOS4wMTQ0QzUzLjM0NDUgMzguMzA5NyA1Mi41NzEyIDM2LjUzOTYgNTIuMTkyNiAzNS43NDI3TDUxLjA5NzUgMzguNTExMUw0NS45NDY2IDQxLjg2NjlDNDQuNTY3NyA0Mi4xNzQ1IDQxLjY4OCA0Mi42MDUyIDQxLjIwMTMgNDEuODY2OUM0MC43MTQ2IDQxLjEyODYgMzguNjQ2MiAzOS4wMTQ1IDM3LjY3MjggMzguMDQ5N0wzNi40OTY2IDQwLjc3NjFMMzIuNzY1MiA0NC4wODk5TDI4LjkxMjIgNDEuODY2OUwyNC40OTEzIDM3LjA0MjlMMjEuNjExNyAzOC41MTExTDIwLjkyMjEgNDAuNzc2MVoiIGZpbGw9InVybCgjcGFpbnQwX2xpbmVhcikiLz4KICAgICAgICA8cGF0aCBkPSJNMTcuMDgyOCA0MS40Mjc3VjM0LjIwNjlMMjcuODk5OSAyOS4zNzc0TDY0Ljg0MjIgMzUuNTk0NFY0MS40MDU1TDI3Ljg5OTkgNDguMjI1OEwxNy4wODI4IDQxLjQyNzdaIiBmaWxsPSJ1cmwoI3BhaW50MV9saW5lYXIpIi8+CiAgICAgICAgPHJlY3QgeD0iNDUuODg3OSIgeT0iMzIuMjk5NiIgd2lkdGg9IjAuNTAzODI2IiBoZWlnaHQ9IjEyLjY3NjEiIGZpbGw9IiM0NDQ0NDQiLz4KICAgICAgICA8cmVjdCB4PSI1OC4zNzQiIHk9IjM0LjM2MTMiIHdpZHRoPSIwLjUwMzgyNiIgaGVpZ2h0PSI4LjI1NDQzIiBmaWxsPSIjNDQ0NDQ0Ii8+CiAgICAgICAgPHJlY3QgeD0iNjQuMDI1NCIgeT0iMzUuMTgxOSIgd2lkdGg9IjAuNTAzODI2IiBoZWlnaHQ9IjYuNDE5OTUiIGZpbGw9IiM0NDQ0NDQiLz4KICAgIDwvZz4KICAgIDxkZWZzPgogICAgICAgIDxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQwX2xpbmVhciIgeDE9IjQyLjU4MDMiIHkxPSIzNS43NDI3IiB4Mj0iNDIuNTgwMyIgeTI9IjQ4LjYyMDIiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iI0ZGRkVGRCIgc3RvcC1vcGFjaXR5PSIwIi8+CiAgICAgICAgICAgIDxzdG9wIG9mZnNldD0iMC44NjQ1ODMiIHN0b3AtY29sb3I9IiM3MTcxNzEiLz4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgICAgIDxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQxX2xpbmVhciIgeDE9IjQwLjkxMjciIHkxPSIyOS4zNzc0IiB4Mj0iNDAuOTEyNyIgeTI9IjUwLjgxMTgiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iI0U4RThFOCIvPgogICAgICAgICAgICA8c3RvcCBvZmZzZXQ9IjEiIHN0b3Atb3BhY2l0eT0iMC40Ii8+CiAgICAgICAgPC9saW5lYXJHcmFkaWVudD4KICAgICAgICA8Y2xpcFBhdGggaWQ9ImNsaXAwIj4KICAgICAgICAgICAgPHJlY3Qgd2lkdGg9IjY0IiBoZWlnaHQ9IjU2IiBmaWxsPSJ3aGl0ZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC44NDcxNjggMC45MjM1ODQpIi8+CiAgICAgICAgPC9jbGlwUGF0aD4KICAgIDwvZGVmcz4KPC9zdmc+\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIyIiBoZWlnaHQ9IjEwNiIgdmlld0JveD0iMCAwIDEyMiAxMDYiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgICA8ZyBjbGlwLXBhdGg9InVybCgjY2xpcDApIj4KICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTM5Ljc0NTcgOC41NTc4M0MzMS41NDkxIDkuMTQ0NDggMS41NTU0IDYyLjAzMjEgMS41NTU0IDYyLjAzMjFDLTIuNTk1OTIgNjguOTgwMiA4LjY4NjY2IDY0LjU1NjEgMTIuNTQxMSA3MS41MjE3QzIzLjcyOTQgODkuNDA2NSA0MS44MDIxIDcxLjUxMTggNTIuODc1OCA3MS41MjE3QzY0LjIwNDcgNzEuNDk5OCA2My44Mzc1IDgwLjI0NjIgNzkuMDYyMiA3NC42MTI3Qzg4LjUxODMgNzAuNDgzMSAxMDkuMDUxIDY4Ljk2NTkgMTAxLjM5NCA1NS43MzI3QzEwMS4zOTQgNTUuNzMyNyA4Mi44NDAyIDI3LjIwODYgNzguMzIyMSAyNy4yMDg2QzczLjgwMzkgMjcuMjA4NiA2Ni40NjcyIDQwLjc2NjQgNjYuNDY3MiA0MC43NjY0QzY2LjQ2NzIgNDAuNzY2NCA0Ny45NDIyIDcuOTcxMTggMzkuNzQ1NyA4LjU1NzgzWiIgZmlsbD0iIzA1NjgzOSIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMDEuODMzIDU1LjY4NTdDMTEwLjE0NCA2Ny45NjkyIDg2Ljg5MzIgNzEuOTgzNSA4Ni4zODYzIDcyLjEwNDdDODUuODc5NCA3Mi4yMjU5IDg0Ljg1NTIgNzAuODE5IDg0LjE2MzcgNjkuNzU1OUM4My44ODQ1IDY5LjMyNjUgNzguNDQ4OCA2NS40MDMgNzUuMDQzIDU5LjgyMDFDNzIuMzk5OCA1NS40ODczIDc0LjYwNTQgNTIuOTQxNSA3Mi40MjY1IDQ5LjM2NDhDNzAuNDYwNyA0Ni4xMzggNjYuNDY3OCA0MC43NjYyIDY2LjQ2NzggNDAuNzY2MkM2Ni40Njc4IDQwLjc2NjIgNzMuNzI4NyAyNy4wMzk3IDc4LjI0NjggMjcuMDM5N0M3OC45MzEyIDI3LjAzOTcgNzkuOTgwMyAyNi45NTc0IDgxLjE5NTYgMjguMDY4MUM4OC4wMDI5IDM0LjI4OTkgMTAxLjgzMyA1NS42ODU3IDEwMS44MzMgNTUuNjg1N1oiIGZpbGw9IiM3QkE0MjUiLz4KICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTQwLjUyODkgOC4xNjk0M0MzNC41MzYzIDguMTY5NDMgMjUuOTQxNCAyMy4wODU3IDI1Ljk0MTQgMjMuMDg1N0MzMC40OTk1IDI2LjQzMDIgMjkuMDU2MyAzMS40OTk4IDM1LjAyMzIgMzAuMjMxOUMzOC4wOTMyIDI5LjU3OTYgMzkuNzcyOCAyMS43MjcgNDIuODUxIDIyLjI5ODdDNDQuNzgyOCAyMi42NTc0IDQ0LjY3NzIgMjYuMjE0MiA0Ni41NDM4IDI2Ljk5NzZDNDkuODQ1NiAyOC4zODMyIDUzLjkzMTYgMjEuMzA4OCA1My45MzE2IDIxLjMwODhDNTMuOTMxNiAyMS4zMDg4IDQ2LjAwNiA4LjE2OTQzIDQwLjUyODkgOC4xNjk0M1oiIGZpbGw9IndoaXRlIi8+CiAgICAgICAgPHBhdGggZD0iTTE5LjQ2NDQgODguMTQzMlY2Mi43MDM4TDUxLjg2NTUgNDguMTQwNlY5OC44MzUxTDE5LjQ2NDQgODguMTQzMloiIGZpbGw9IiM4QjhCOEIiLz4KICAgICAgICA8cGF0aCBkPSJNNTEuODY0NyA5OC44MzQ2VjQ4LjE0MDFMMTIxLjY1MiA2MC43NjlWODMuNzE1TDUxLjg2NDcgOTguODM0NloiIGZpbGw9IiM4QjhCOEIiLz4KICAgICAgICA8cGF0aCBkPSJNMTkuNDYzOSA4Ni44MzMxVjYyLjIyNjhMNTEuODY0OSA0OC4xNDA2Vjk3LjE3NDhMMTkuNDYzOSA4Ni44MzMxWiIgZmlsbD0iIzhCOEI4QiIvPgogICAgICAgIDxwYXRoIGQ9Ik01MS44NjQzIDk3LjE3NDZWNDguMTQwNEwxMjEuNjUxIDYwLjM1NTdWODIuNTUwMUw1MS44NjQzIDk3LjE3NDZaIiBmaWxsPSJ3aGl0ZSIvPgogICAgICAgIDxwYXRoIGQ9Ik0zOC42MDYgNzUuNDM1MVY4MS43MDc2TDUyLjAyNTIgOTAuMjgyOEwxMjAuNTAxIDc3LjQ5OThWNzEuMTQ3NkwxMTUuMjg3IDcyLjEwMDRIMTA4LjAwMkMxMDUuMzk1IDcyLjY1NjIgMTAwLjE1IDczLjQzNDMgMTAwLjAyNyA3Mi4xMDA0Qzk5LjkwNDUgNzAuNzY2NSA5OC40NDI0IDY3LjQxNiA5Ny43MjY3IDY1LjkwNzVMOTUuNjU2NCA3MS4xNDc2TDg1LjkxOCA3Ny40OTk4QzgzLjMxMDggNzguMDgyIDc3Ljg2NjUgNzguODk3MiA3Ni45NDYzIDc3LjQ5OThDNzYuMDI2MiA3Ni4xMDIzIDcyLjExNTUgNzIuMTAwNiA3MC4yNzUyIDcwLjI3NDRMNjguMDUxNCA3NS40MzUxTDYwLjk5NjggODEuNzA3Nkw1My43MTIyIDc3LjQ5OThMNDUuMzU0IDY4LjM2ODZMMzkuOTA5NyA3MS4xNDc2TDM4LjYwNiA3NS40MzUxWiIgZmlsbD0idXJsKCNwYWludDBfbGluZWFyKSIvPgogICAgICAgIDxwYXRoIGQ9Ik0zMS4zNDcyIDc2LjY2ODZWNjMuMDAwNUw1MS43OTgzIDUzLjg1OTFMMTIxLjY0MiA2NS42MjY5Vjc2LjYyNjZMNTEuNzk4MyA4OS41MzY0TDMxLjM0NzIgNzYuNjY4NloiIGZpbGw9InVybCgjcGFpbnQxX2xpbmVhcikiLz4KICAgICAgICA8cmVjdCB4PSI4NS44MDcxIiB5PSI1OS4zOTA0IiB3aWR0aD0iMC45NTI1NDUiIGhlaWdodD0iMjMuOTk0IiBmaWxsPSIjNDQ0NDQ0Ii8+CiAgICAgICAgPHJlY3QgeD0iMTA5LjQxNCIgeT0iNjMuMjkzMiIgd2lkdGg9IjAuOTUyNTQ1IiBoZWlnaHQ9IjE1LjYyNDUiIGZpbGw9IiM0NDQ0NDQiLz4KICAgICAgICA8cmVjdCB4PSIxMjAuMDk4IiB5PSI2NC44NDU5IiB3aWR0aD0iMC45NTI1NDUiIGhlaWdodD0iMTIuMTUyIiBmaWxsPSIjNDQ0NDQ0Ii8+CiAgICA8L2c+CiAgICA8ZGVmcz4KICAgICAgICA8bGluZWFyR3JhZGllbnQgaWQ9InBhaW50MF9saW5lYXIiIHgxPSI3OS41NTM0IiB5MT0iNjUuOTA3NSIgeDI9Ijc5LjU1MzQiIHkyPSI5MC4yODI4IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiNGRkZFRkQiIHN0b3Atb3BhY2l0eT0iMCIvPgogICAgICAgICAgICA8c3RvcCBvZmZzZXQ9IjAuODY0NTgzIiBzdG9wLWNvbG9yPSIjNzE3MTcxIi8+CiAgICAgICAgPC9saW5lYXJHcmFkaWVudD4KICAgICAgICA8bGluZWFyR3JhZGllbnQgaWQ9InBhaW50MV9saW5lYXIiIHgxPSI3Ni40MDA2IiB5MT0iNTMuODU5MSIgeDI9Ijc2LjQwMDYiIHkyPSI5NC40MzEzIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiNFOEU4RTgiLz4KICAgICAgICAgICAgPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLW9wYWNpdHk9IjAuNCIvPgogICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgPGNsaXBQYXRoIGlkPSJjbGlwMCI+CiAgICAgICAgICAgIDxyZWN0IHdpZHRoPSIxMjEiIGhlaWdodD0iMTA2IiBmaWxsPSJ3aGl0ZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC42NTE4NTUpIi8+CiAgICAgICAgPC9jbGlwUGF0aD4KICAgIDwvZGVmcz4KPC9zdmc+\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzMiIGhlaWdodD0iMzMiIHZpZXdCb3g9IjAgMCAzMyAzMyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8yMTQ2XzMxOTApIj4KICAgICAgICA8cGF0aCBkPSJNMTYuOTUzMSAyMy42NTE5QzE2LjA5MjMgMjMuNjUxOSAxNS4zOTIxIDI0LjM1MjEgMTUuMzkyMSAyNS4yMTI5QzE1LjM5MjEgMjYuMDczNiAxNi4wOTIzIDI2Ljc3MzkgMTYuOTUzMSAyNi43NzM5QzE3LjgxMzUgMjYuNzczOSAxOC41MTM4IDI2LjA3MzcgMTguNTE0MSAyNS4yMTI5QzE4LjUxNDEgMjQuMzUyMSAxNy44MTQgMjMuNjUxOSAxNi45NTMxIDIzLjY1MTlaIiBmaWxsPSJibGFjayIvPgogICAgICAgIDxwYXRoIGQ9Ik0yMC44OTg4IDguNjQxMjlMMjAuMTQ2OCA2LjgyNTY4SDE1LjUzNzlWOC45NTI4NEgxNy41NzkxTDE1LjE0MDQgMTEuMzkxNUwxNS44OTI0IDEzLjIwNzJIMjAuNTAxNFYxMS4wODAxSDE4LjQ2MDJMMjAuODk4OCA4LjY0MTI5WiIgZmlsbD0iYmxhY2siLz4KICAgICAgICA8cGF0aCBkPSJNMjYuOTI2MiA3LjIyMjgzTDI2LjE3NDEgNS40MDcyM0gyMS41NjUyVjcuNTM0MzlIMjMuNjA2NEwyMS4xNjc3IDkuOTczMTZMMjEuOTE5NyAxMS43ODg4SDI2LjUyODZWOS42NjE1NUgyNC40ODc0TDI2LjkyNjIgNy4yMjI4M1oiIGZpbGw9ImJsYWNrIi8+CiAgICAgICAgPHBhdGggZD0iTTMyLjk1MyA1LjgwNDg3TDMyLjIwMSAzLjk4OTI2SDI3LjU5MjFWNi4xMTY0MkgyOS42MzMyTDI3LjE5NDYgOC41NTUxOUwyNy45NDY2IDEwLjM3MDhIMzIuNTU1NVY4LjI0MzY0SDMwLjUxNDRMMzIuOTUzIDUuODA0ODdaIiBmaWxsPSJibGFjayIvPgogICAgICAgIDxwYXRoIGQ9Ik0zMi43MTg4IDEzLjUwNTZIMzAuMzM3QzMwLjUxNjkgMTQuMzg4NiAzMC42MTE2IDE1LjMwMjEgMzAuNjExNiAxNi4yMzczQzMwLjYxMTYgMjMuNzY4NiAyNC40ODQ0IDI5Ljg5NTkgMTYuOTUzMSAyOS44OTU5QzkuNDIxNzUgMjkuODk1OSAzLjI5NDU2IDIzLjc2ODYgMy4yOTQ1NiAxNi4yMzczQzMuMjk0NTYgOC43MDU5OSA5LjQyMTgxIDIuNTc4NzQgMTYuOTUzMSAyLjU3ODc0QzE4LjU0ODEgMi41Nzg3NCAyMC4wNzk3IDIuODU0NDkgMjEuNTAzOCAzLjM1OTI0SDIzLjk3NzVWMS44NjQyNEMyMS44NTU4IDAuODIzMDU1IDE5LjQ3MTcgMC4yMzczMDUgMTYuOTUzMSAwLjIzNzMwNUM4LjEzMDYyIDAuMjM3MzA1IDAuOTUzMTI1IDcuNDE0OTMgMC45NTMxMjUgMTYuMjM3M0MwLjk1MzEyNSAyNS4wNTk3IDguMTMwNjIgMzIuMjM3MyAxNi45NTMxIDMyLjIzNzNDMjUuNzc1NiAzMi4yMzczIDMyLjk1MzEgMjUuMDU5NyAzMi45NTMxIDE2LjIzNzNDMzIuOTUzMSAxNS4zMDYxIDMyLjg3MjMgMTQuMzkzNiAzMi43MTg4IDEzLjUwNTZaIiBmaWxsPSJibGFjayIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMC4wODQzIDE2LjIzNzRDOS45MzMxNSAxNi4yNDAzIDkuNzgxNDkgMTYuMjg2NiA5LjY0ODYxIDE2LjM4MDFDOS4yOTQyNSAxNi42MjkzIDkuMjA4NzEgMTcuMTE4NyA5LjQ1Nzk4IDE3LjQ3MzFDMTAuMTExOSAxOC40MDY0IDExLjE5NTggMTguOTY4IDEyLjMzNDggMTguOTY4QzEzLjM1OTcgMTguOTY4IDE0LjM1MjUgMTguNTA1MyAxNS4wMTIzIDE3LjczMTRDMTUuMjk3OSAxNy40MDg5IDE1LjI3MDMgMTYuOTE1MyAxNC45NDk2IDE2LjYyNjlDMTQuNjI3NiAxNi4zMzczIDE0LjEzMDcgMTYuMzYzNCAxMy44NDExIDE2LjY4NTVMMTMuODM3IDE2LjY5TDEzLjgyMjMgMTYuNzA4OEwxMy44MiAxNi43MTE1TDEzLjgwNzcgMTYuNzI2NkMxMy43NjA1IDE2Ljc4MSAxMy43MDg5IDE2LjgzMjYgMTMuNjU2OCAxNi44ODA3TDEzLjY0MzEgMTYuODk1N0wxMy42MzY3IDE2LjkwMTdDMTMuNTgwMSAxNi45NTMzIDEzLjUyNDcgMTYuOTk3NCAxMy40NzQ0IDE3LjAzNDNMMTMuNDczNSAxNy4wMzMzQzEyLjYwNzEgMTcuNjU4MSAxMS4zNzE3IDE3LjQ2ODUgMTAuNzQxNiAxNi41NzAzQzEwLjU4NTggMTYuMzQ4OCAxMC4zMzYxIDE2LjIzMjcgMTAuMDg0MyAxNi4yMzc0Wk0xOS40NjYyIDE2LjIzNzRDMTkuMzE1MSAxNi4yNDAzIDE5LjE2MyAxNi4yODY2IDE5LjAzMDEgMTYuMzgwMUMxOC42NzU3IDE2LjYyOTMgMTguNTkwNiAxNy4xMTg3IDE4LjgzOTkgMTcuNDczMUMxOS40OTM4IDE4LjQwNjQgMjAuNTc3NyAxOC45NjggMjEuNzE2NyAxOC45NjhDMjIuNzQxNiAxOC45NjggMjMuNzMzOSAxOC41MDUzIDI0LjM5MzcgMTcuNzMxNEMyNC42Nzk0IDE3LjQwODkgMjQuNjUyMiAxNi45MTUzIDI0LjMzMTYgMTYuNjI2OUMyNC4wMDk1IDE2LjMzNzMgMjMuNTEyNyAxNi4zNjM0IDIzLjIyMyAxNi42ODU1TDIzLjIxODkgMTYuNjlMMjMuMjA0MyAxNi43MDg4TDIzLjIwMiAxNi43MTE1TDIzLjE4OTIgMTYuNzI2NkMyMy4xNDIgMTYuNzgxIDIzLjA5MDkgMTYuODMyNiAyMy4wMzg4IDE2Ljg4MDdMMjMuMDI1MSAxNi44OTU3TDIzLjAxODcgMTYuOTAxN0MyMi45NjIxIDE2Ljk1MzMgMjIuOTA2MiAxNi45OTc0IDIyLjg1NTkgMTcuMDM0M0wyMi44NTUgMTcuMDMzM0MyMS45ODg2IDE3LjY1ODEgMjAuNzUzNyAxNy40Njg1IDIwLjEyMzYgMTYuNTcwM0MxOS45Njc4IDE2LjM0ODggMTkuNzE4MSAxNi4yMzI3IDE5LjQ2NjIgMTYuMjM3NFoiIGZpbGw9ImJsYWNrIi8+CiAgICA8L2c+CiAgICA8ZGVmcz4KICAgICAgICA8Y2xpcFBhdGggaWQ9ImNsaXAwXzIxNDZfMzE5MCI+CiAgICAgICAgICAgIDxyZWN0IHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgZmlsbD0id2hpdGUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAuOTUzMTI1IDAuMjM3MzA1KSIvPgogICAgICAgIDwvY2xpcFBhdGg+CiAgICA8L2RlZnM+Cjwvc3ZnPgo=\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjUiIGhlaWdodD0iNTciIHZpZXdCb3g9IjAgMCA2NSA1NyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiPgogICAgICAgIDxwYXRoIGQ9Ik0zMy4yOTI1IDIyLjc2MzJDMzAuNjk0OCAyMC4yMzk3IDI0LjUwNjUgMTYuMzU0OCAyNC41MDY1IDE2LjM1NDhDMjMuOTg4NiAxNC45MjIzIDIzLjM3MzQgMTMuNTI3OSAyMi42NjUzIDEyLjE4MTZWMTguNzQwOEMyNC4yNTcyIDIxLjkwMjggMjguNDY0MyAyNC44MDc2IDI5LjYzMiAyNS40NzI4QzMyLjU1NzQgMjkuMDc4MSAzNi4wNzQxIDMyLjE0NDYgNDAuMDI3NSAzNC41Mzc2TDQ2Ljg4OTMgMzEuNzcwM0M0MS44OTkzIDI2LjMwMjIgMzMuMjkyNSAyMi43NjMyIDMzLjI5MjUgMjIuNzYzMloiIGZpbGw9IiNFMUMyOUEiLz4KICAgICAgICA8cGF0aCBkPSJNNDEuNDg4MSAyNi42ODhMMzUuNzE1MyAzMi4wNTQxTDM5LjAyNiAzNS4zMjdMNDcuNjc2NCAzMS45MDM0TDQxLjQ4ODEgMjYuNjg4WiIgZmlsbD0iIzgwODA4MyIvPgogICAgICAgIDxwYXRoIGQ9Ik0yMi43NTcxIDQyLjgxMzFMMzIuOTA3NyAzOS41NjY4QzMyLjkwNzcgMzkuNTY2OCAzMC4xOTE4IDI3LjQ5MDcgMjkuODgxMyAyNi45MjMxTDI0LjAyMSAxMC4xOTA0TDIwLjIzODEgMTEuNDAxMUMyMC4yMzgxIDExLjQwMTEgMTguODI1NSAyMS42MDEzIDIzLjE1MDcgMjcuNjIzOEMyMy4xNTA3IDI3LjYyMzggMjIuNjI1OSAzMi4wMTQzIDIyLjc1NzEgNDIuODEzMVoiIGZpbGw9IiNEQUJCOTQiLz4KICAgICAgICA8cGF0aCBkPSJNMzAuNTYzNSAzLjk5OTI1TDMxLjAwMDggNS41MDcwOUMzMS4wMDA4IDUuNDQwNTcgMzAuNjI5MSA0Ljk3OTM1IDI1LjU2NDcgNi42MDY5M0wyMS41ODA2IDguMDc5M0MyMS41MjkgOC4wOTg3NiAyMS40ODI4IDguMTMwNzcgMjEuNDQ2MiA4LjE3MjUyQzIxLjQwOTYgOC4yMTQyNyAyMS4zODM3IDguMjY0NDkgMjEuMzcwNyA4LjMxODc4TDIxLjE4MjYgOS4yMDU3NEwxOC42MzMgMTAuMDkyN0wxOC41ODkyIDkuOTcyOTdDMTguMzEwNyA5LjE3MzY1IDE4LjE2NTkgOC4zMzI3NiAxOC4xNjA2IDcuNDg1MDNDMTguMTYwNiA3LjM5NjMzIDIyLjA5NjcgNS42MzU3IDI3LjU4MDggNC4xNDExNkMyNy41ODA4IDQuMTQxMTYgMzAuMDg2OCAzLjM0Mjg5IDMwLjU2MzUgNC4wMDgxMlYzLjk5OTI1WiIgZmlsbD0iIzAwMDYzQyIvPgogICAgICAgIDxwYXRoIGQ9Ik0xOC42MTk5IDEwLjQzNDNDMTguNTUyNSAxMC40MzQyIDE4LjQ4NjggMTAuNDEzNCAxOC40MzEzIDEwLjM3NDZDMTguMzc1OSAxMC4zMzU4IDE4LjMzMzMgMTAuMjgwOCAxOC4zMDk0IDEwLjIxN0wxOC4yNjU3IDEwLjA5NzJDMTcuOTY5NiA5LjI0MjQ4IDE3LjgyMTYgOC4zNDIyMyAxNy44MjgzIDcuNDM2MzFDMTcuODI4MyA3LjI0NTYxIDE3Ljg1NDYgNy4wOTQ4MyAyMC42ODg1IDYuMDA4MjlDMjIuMTc1NSA1LjQ0MDY0IDI0LjU1NDYgNC41OTM1OCAyNy40OTM0IDMuNzkwODhDMjguMTE4OCAzLjU5MTMxIDMwLjI1MyAyLjk4ODE3IDMwLjgyMTYgMy43OTA4OEMzMC44NDU5IDMuODIyNDcgMzAuODYzNyAzLjg1ODY1IDMwLjg3NDEgMy44OTczMUwzMS4zMTE0IDUuNDA1MTZDMzEuMzM0OCA1LjQ4ODA3IDMxLjMyNTUgNS41NzY5NiAzMS4yODU2IDUuNjUzMDhDMzEuMjQ1NiA1LjcyOTIgMzEuMTc4IDUuNzg2NiAzMS4wOTcxIDUuODEzMTZDMzEuMDM5NSA1LjgzMjA2IDMwLjk3NzggNS44MzQxOSAzMC45MTkgNS44MTkyOUMzMC44NjAzIDUuODA0MzkgMzAuODA2OCA1Ljc3MzA4IDMwLjc2NDcgNS43Mjg5QzMwLjU5NDIgNS42ODg5OSAyOS42NzU4IDUuNjE4MDMgMjUuNjU2NiA2LjkwODU3TDIxLjY1OTQgOC4zOTQyNEwyMS40NzEzIDkuMjgxMkMyMS40NiA5LjMzNzkzIDIxLjQzNDMgOS4zOTA2NyAyMS4zOTY3IDkuNDM0MjNDMjEuMzU5MSA5LjQ3Nzc5IDIxLjMxMSA5LjUxMDY0IDIxLjI1NzEgOS41Mjk1NUwxOC43MDc0IDEwLjQxNjVDMTguNjc5MyAxMC40MjY5IDE4LjY0OTggMTAuNDMyOSAxOC42MTk5IDEwLjQzNDNaTTE4LjQ4NDMgNy42NjY5MkMxOC41MDg3IDguMzU3NDMgMTguNjIxOSA5LjA0MTc1IDE4LjgyMTEgOS43MDI1MUwyMC44ODk3IDguOTg4NUwyMS4wMzg0IDguMjc0NUMyMS4wNjMxIDguMTYyMSAyMS4xMTY1IDguMDU4MjcgMjEuMTkzMiA3Ljk3MzQyQzIxLjI3IDcuODg4NTcgMjEuMzY3NCA3LjgyNTY5IDIxLjQ3NTcgNy43OTExTDI1LjQ1OTggNi4zMTQzQzI4LjM3NjkgNS4zNzg1NSAyOS44MzMyIDUuMDk5MTUgMzAuNTQ2MSA1LjA4NTg1TDMwLjI4OCA0LjE5ODg4QzMwLjAzNDQgMy45OTQ4OCAyOC44NDQ4IDQuMTE5MDYgMjcuNjk5IDQuNDgyNzFDMjQuNTQ5NSA1LjI5NjM1IDIxLjQ2ODQgNi4zNjEwNyAxOC40ODQzIDcuNjY2OTJaIiBmaWxsPSIjMDAwNjNDIi8+CiAgICAgICAgPHBhdGggZD0iTTMwLjk5NjUgNS41MTYxOEMzMC45OTY1IDUuNTE2MTggMzEuMTM2NCA1Ljg0NDM2IDMwLjcyOTcgNi4yNjEyM0MzMC42MjkgNi4zNzc2NiAzMC41MTI3IDYuNDc5MTcgMzAuMzg0MiA2LjU2MjhMMzAuMDczNyA2Ljc3MTI0TDI5LjkzMzcgNi44NzMyNEgyOS45MDc1TDI5LjgwNjkgNi45Mzk3NkwyOS42OTc2IDcuMDE5NTlMMjkuNjMyIDcuMDY4MzdMMjkuNTM1OCA3LjEzOTMzTDI5LjQwODkgNy4yMjgwM0wyOS4xNTk3IDcuNDE0MjlMMjkuMDU5MSA3LjQ4OTY4TDI4Ljc3MDQgNy43MDI1NkwyOC43MTM2IDcuNzQ2OUwyOC42NjExIDcuNzg2ODJMMjguNjA0MiA3LjgzMTE3TDI4LjU2OTMgNy44NTc3N0wyOC41MjEyIDcuODkzMjVMMjguNDExOCA3Ljk3NzUySDI4LjM4NTZDMjguMzg1NiA3Ljk3NzUyIDI1LjQ1NTQgMTEuMzE2OSAyNS4xMjMxIDExLjQ4OTlDMjQuNzU2OSAxMS41Mzc1IDI0LjM4NDkgMTEuNDk0OSAyNC4wMzg1IDExLjM2NTdMMjMuODg1NCAxMS4zMzQ3QzIzLjU2MTggMTEuMjU5MyAyMS45NDggMTAuNzEzOCAyMC45NTA5IDEyLjAzMUMyMC44MDUxIDEyLjIzMTUgMjAuNzA3NyAxMi40NjM5IDIwLjY2NjYgMTIuNzA5NUMyMC42MzYgMTIuODYwMyAyMC41NjE3IDEzLjAzMzIgMjAuMzYwNSAxMy4wNTFDMjAuMTU5MyAxMy4wNjg3IDE5Ljc1MjYgMTIuNDMwMSAxOS4zNjc3IDExLjY4OTVMMTkuMzMyNyAxMS42MzE4TDE5LjIyNzggMTEuNDE0NUwxOS4xNzk3IDExLjMyNThDMTkuMTMxNiAxMS4yMjgzIDE5LjA4NzggMTEuMTMwNyAxOS4wNDQxIDExLjAzNzZDMTkuMDIzOSAxMS4wMDIgMTkuMDA2NCAxMC45NjQ5IDE4Ljk5MTYgMTAuOTI2N0MxOC45OTE2IDEwLjkwMDEgMTguOTkxNiAxMC44Nzc5IDE4Ljk1NjYgMTAuODU1N0MxOC44OTU0IDEwLjcyMjcgMTguODQyOSAxMC41OTg1IDE4Ljc5MDUgMTAuNDc0M0MxOC43MzggMTAuMzUwMiAxOC42NzI0IDEwLjE5MDUgMTguNjI0MyAxMC4wNjYzTDIwLjk1MDkgOS4yNjM2MkMyMS4wMTQ2IDkuMjQ0NyAyMS4wNzI3IDkuMjEwMSAyMS4xMiA5LjE2MjlDMjEuMTY3MyA5LjExNTcgMjEuMjAyMyA5LjA1NzM3IDIxLjIyMiA4Ljk5MzA5TDIxLjM1MzIgOC4zNzIyMkMyMS4zNzAzIDguMzAzMjYgMjEuNDAzNCA4LjIzOTQ3IDIxLjQ0OTggOC4xODYyMkMyMS40OTYyIDguMTMyOTYgMjEuNTU0NiA4LjA5MTgxIDIxLjYyIDguMDY2MjFMMjUuNTU2IDYuNjA3MTVDMzAuNjE2IDQuOTg0IDMwLjk3MDIgNS40NDA3OSAzMC45OTIxIDUuNTExNzVMMzAuOTk2NSA1LjUxNjE4WiIgZmlsbD0iIzcwNzA3MCIvPgogICAgICAgIDxwYXRoIGQ9Ik0yOC4zNzY4IDQ4LjYwNTFINDMuNjgzNkM0MC41MTczIDQ2LjU5MTcgMzQuNzMxMyA0Mi4xNDM1IDMyLjU5MjggMzUuMDdDMzIuNTY2NSAzNC45ODU3IDIxLjA5NTIgMzcuNzkzIDIxLjA5NTIgMzcuNzkzQzIxLjA5NTIgMzcuNzkzIDIzLjIwMzIgNDYuMTQzOCAyNy45MDQ1IDUxLjU2NzZDMjguMDQ2NiA1MS43MTU3IDI4LjIxMjEgNTEuODM4NyAyOC4zOTQzIDUxLjkzMTJMMjguMzc2OCA0OC42MDUxWiIgZmlsbD0iIzRENEQ0RCIvPgogICAgICAgIDxwYXRoIGQ9Ik0yMC45NDY0IDQzLjQ2OTNMMzEuMDk2OSA0MC4yMjNDMzEuMDk2OSA0MC4yMjMgMjguMzc2NyAyOC4xNDcgMjguMDcwNSAyNy41NzkzTDIyLjIxMDMgMTAuODQ2N0wxOC40MjczIDEyLjA1NzRDMTguNDI3MyAxMi4wNTc0IDE3LjAxNDcgMjIuMjU3NSAyMS4zNCAyOC4yOEMyMS4zNCAyOC4yOCAyMC44MTUyIDMyLjY3MDUgMjAuOTQ2NCA0My40NjkzWiIgZmlsbD0iI0U4Qzc5QyIvPgogICAgICAgIDxwYXRoIGQ9Ik0zMS4wOTcyIDQwLjIyMzJMMjAuOTQ2NiA0My40Njk1QzIwLjgxOTggMzIuNjcwNyAyMS4zMzU5IDI4LjI4MDIgMjEuMzM1OSAyOC4yODAyQzE3LjAxNSAyMi4yNDg5IDE4LjQyNzYgMTIuMDU3NiAxOC40Mjc2IDEyLjA1NzZMMjAuMTc2OSAxMS40OTQ0QzE5Ljk2MjYgMTMuNTM4OCAxOS4zNTQ3IDIxLjk5MTYgMjMuMTM3NyAyNy4yNjQ3QzIzLjEzNzcgMjcuMjY0NyAyMi42MTcyIDMxLjY1NTEgMjIuNzQ4NCA0Mi40NTRMMzAuOTkyMiAzOS44MTUyQzMxLjA2NjYgNDAuMDc2OSAzMS4wOTcyIDQwLjIyMzIgMzEuMDk3MiA0MC4yMjMyWiIgZmlsbD0iI0QwQUE3OSIvPgogICAgICAgIDxwYXRoIGQ9Ik0yOC43NDg2IDQuNjU1NjZMMjkuMjA3IDUuOTc2NjFDMjkuMTgxMyA2LjE0NjA0IDI4Ljk2OTUgNi40OTI3MiAyOC43Nzk4IDYuNDY5MzFDMjguMzQzNSA2LjQxNTQzIDI3LjI3ODYgNi4xMjg4NSAyMy43NDU1IDcuMjYzMzRMMTkuNzYxNCA4LjczNTcxQzE5LjcxMDIgOC43NTUwOSAxOS42NjQ1IDguNzg3MTUgMTkuNjI4NiA4LjgyODk3QzE5LjU5MjcgOC44NzA4IDE5LjU2NzcgOC45MjEwNiAxOS41NTU5IDguOTc1MTlMMTkuMzY3OCA5Ljg2MjE2TDE2LjgxMzggMTAuNzQ5MUwxNi43NyAxMC42Mjk0QzE2LjQ5NDkgOS44MjM1NyAxNi4zNTU5IDguOTc2NDQgMTYuMzU4OSA4LjEyMzdDMTYuMzU4OSA4LjAzNSAyMC4yOTQ5IDYuMjc0MzcgMjUuNzc5MSA0Ljc3OTgzQzI1Ljc3OTEgNC43Nzk4MyAyOC4yODUxIDMuOTgxNTYgMjguNzU3NCA0LjY0Njc5TDI4Ljc0ODYgNC42NTU2NloiIGZpbGw9IiMyRjNBNUEiLz4KICAgICAgICA8cGF0aCBkPSJNMjguOTQ0NSA1Ljk2NzIxQzI4Ljk0NDUgNS45NjcyMSAyOS4wODIzIDYuMzAzNSAyOC42ODE3IDYuNzMwNjhDMjguNTg0MiA2Ljg1MDA0IDI4LjQ3MTEgNi45NTQxIDI4LjM0NTcgNy4wMzk3TDI4LjAzOTggNy4yNTMyOUwyNy44OTc3IDcuMzU3ODFMMjcuNzk4NiA3LjQzMDUyTDI3LjY5MDkgNy41MDc3OEwyNy42MjYzIDcuNTU3NzdMMjcuNTMxNSA3LjYzMDQ4TDI3LjQwNjYgNy43MjEzN0MyNy4zMjQ3IDcuNzg5NTQgMjcuMjM4NiA3Ljg1MzE2IDI3LjE2MSA3LjkxMjI0TDI3LjA1NzcgNy45ODk0OUwyNi43Nzc3IDguMjEyMTdMMjYuNzIxNyA4LjI1MzA3TDI2LjY3IDguMjkzOTdMMjYuNjE0IDguMzM5NDJMMjYuNTc5NSA4LjM2NjY4TDI2LjUzMjEgOC40MDMwNEwyNi40MjAxIDguNDg5MzhIMjYuMzk4NkMyNi4zOTg2IDguNDg5MzggMjMuNTA4MSAxMS45MTE0IDIzLjE4NSAxMi4wODg2QzIyLjgyNDQgMTIuMTM3NCAyMi40NTc5IDEyLjA5MzcgMjIuMTE2NyAxMS45NjE0TDIxLjk2NTkgMTEuOTg0MUMyMS42NDI4IDExLjkwNjggMjAuMDU3NiAxMS4zNDc4IDE5LjA3NTQgMTIuNjk3NkMxOC45MzIzIDEyLjkwMzggMTguODM1MSAxMy4xNDE1IDE4Ljc5MTEgMTMuMzkyOUMxOC43ODcyIDEzLjQ3ODMgMTguNzU1NSAxMy41NTk3IDE4LjcwMTMgMTMuNjIzNUMxOC42NDcyIDEzLjY4NzIgMTguNTc0IDEzLjcyOTMgMTguNDkzOSAxMy43NDI4QzE4LjI5NTcgMTMuNzQyOCAxNy44OTUxIDEzLjEwNjYgMTcuNTExNyAxMi4zNDc2TDE3LjQ4MTUgMTIuMjg4NkwxNy4zNzM5IDEyLjA2NTlMMTcuMzMwOCAxMS45NzVMMTcuMTkyOSAxMS42Nzk2TDE3LjE0MTIgMTEuNTY2QzE3LjE0MTIgMTEuNTM4NyAxNy4xNDEyIDExLjUxNiAxNy4xMTExIDExLjQ5MzNDMTcuMDUwOCAxMS4zNTY5IDE2Ljk5NDggMTEuMjI5NyAxNi45NDc0IDExLjEwMjRDMTYuOSAxMC45NzUyIDE2LjgzMTEgMTAuODExNiAxNi43ODM3IDEwLjY4ODlMMTkuMDc1NCA5Ljg2NjM2QzE5LjE0MTEgOS44NDAzMSAxOS4xOTk4IDkuNzk3NyAxOS4yNDY0IDkuNzQyMjZDMTkuMjkyOSA5LjY4NjgyIDE5LjMyNTkgOS42MjAyMSAxOS4zNDI1IDkuNTQ4MjRMMTkuNDcxNyA4LjkxMjAyQzE5LjQ4NTYgOC44NDA2OSAxOS41MTY2IDguNzc0MzUgMTkuNTYxOSA4LjcxOTQxQzE5LjYwNzIgOC42NjQ0NyAxOS42NjUyIDguNjIyODEgMTkuNzMwMiA4LjU5ODQ1TDIzLjYwNzIgNy4xMDMzMkMyOC41NzQgNS40NDAwNSAyOC45MTg2IDUuOTA4MTMgMjguOTQ0NSA1Ljk2NzIxWiIgZmlsbD0iIzk4OTg5OCIvPgogICAgICAgIDxwYXRoIGQ9Ik00My42NCAxNi43MDVMNDEuOTY5NCAxOC43MDA3VjE5LjU1MjJDNDEuNDQxNyAxOS45MjIgNDAuOTM1IDIwLjMyMTggNDAuNDUxOCAyMC43NDk2QzM5Ljg2NTggMjEuMzAzOSA0MC4yNjgyIDIxLjYzNjYgNDAuODI3OSAyMi4wMDQ2QzQwLjgyNzkgMjIuMDA0NiA0MC40OTEyIDIyLjc0NTMgNDAuODgwNCAyMy4wNzc5QzQwLjg4MDQgMjMuMDc3OSAzOS44NDgzIDIzLjI1MDggNDAuNTY1NSAyNC4wNThDNDAuNTY1NSAyNC4wNTggNDAuNzE0MiAyNC40NDM4IDQwLjE4MDcgMjQuODIwOEMzOS42NDcxIDI1LjE5NzcgNDAuMDk3NiAyNi4xNTEyIDQxLjEyNTMgMjYuNTk0N0M0MS42NjQgMjYuODMwNSA0Mi4yMTc3IDI3LjAyOSA0Mi43ODI4IDI3LjE4OUw0MS4xMTY2IDMwLjUwNjJMNDguNzc4NyAzMi4yODAyQzQ4Ljc3ODcgMzIuMjgwMiA0OC45NjY3IDI3LjI2ODggNDkuMTUwNCAyNi40NDg0QzQ5LjI3ODEgMjUuNzE4MyA0OS41NzgyIDI1LjAzMDYgNTAuMDI1MSAyNC40NDM4QzUwLjkyNiAyMy40ODE0IDUxLjg1NzUgMjIuMjk3MyA1MS45ODQ0IDIxLjEyMjFDNTIuMTExMiAxOS45NDY5IDUyLjgyNCAxOC45NTM1IDUxLjY4MjYgMTcuMzI1OUM1MC41NDEyIDE1LjY5ODMgNDUuODUyOSAxNS4wMjQyIDQ1LjA3NDUgMTQuNDY5OUM0NC4yOTYgMTMuOTE1NSA0My42NCAxNi43MDUgNDMuNjQgMTYuNzA1WiIgZmlsbD0iI0U4Qzc5QyIvPgogICAgICAgIDxwYXRoIGQ9Ik01MS45OTMgMjEuMTQ0NkM1MS44NjE4IDIyLjMxOTggNTAuOTI1OSAyMy41MDM5IDUwLjAyOTMgMjQuNDYxOUM0OS41ODMxIDI1LjA1MDcgNDkuMjgzMSAyNS43Mzk3IDQ5LjE1NDcgMjYuNDcwOEM0OC45ODQxIDI3LjI5MTMgNDguNzc0MiAzMi4zMjA0IDQ4Ljc3NDIgMzIuMzIwNEw0MS4xMTY1IDMwLjU0NjVMNDEuMzM5NSAzMC4xMDNMNDcuMjg3MiAzMS40OTU1QzQ3LjI4NzIgMzEuNDk1NSA0Ny40Nzk3IDI2LjQ4ODYgNDcuNjYzNCAyNS42NjM3QzQ3Ljc5MSAyNC45MzM3IDQ4LjA5MTEgMjQuMjQ1OSA0OC41MzggMjMuNjU5MkM0OS40MTI3IDIyLjcwMTIgNTAuMzcwNSAyMS41MTI3IDUwLjUwMTcgMjAuMzM3NUM1MC42MzI5IDE5LjE2MjIgNTEuMzM3IDE4LjE2ODggNTAuMTk1NSAxNi41NDEyQzUwLjAzNjIgMTYuMzI0NSA0OS44NDQ0IDE2LjEzNDUgNDkuNjI3IDE1Ljk3OEM1MC41MzIzIDE2LjM0NjEgNTEuMzE5NSAxNi43ODk2IDUxLjcwNDMgMTcuMzM5NUM1Mi44MjM5IDE4Ljk3NiA1Mi4xMTk4IDE5Ljk2OTQgNTEuOTkzIDIxLjE0NDZaIiBmaWxsPSIjRDBBQTc5Ii8+CiAgICAgICAgPHBhdGggZD0iTTQzLjYzOTkgMTYuNzA1QzQzLjYzOTkgMTYuNzA1IDQ0LjQ3MDggMTYuNDUyMiA0NS42NDczIDE3LjQ2NzhDNDYuODIzNyAxOC40ODM0IDQ2Ljk4NTUgMTkuNTMgNDYuNDgyNiAyMC40OTY4QzQ2LjIzMTkgMjAuOTU1NyA0Ni4wMTU2IDIxLjQzMzEgNDUuODM1MyAyMS45MjQ4TDQ2LjUxNzYgMjIuMzAxOEM0Ni41MTc2IDIyLjMwMTggNDcuMzkyMiAyMC45MDkyIDQ4LjI2NjkgMjEuMjU1MkM0OS4xNDE2IDIxLjYwMTEgNDkuMTQxNiAyMi41ODU2IDQ4LjY3OCAyMy43OTYzQzQ4LjIxNDQgMjUuMDA3IDQ3Ljg5OTUgMjUuNjY3OCA0OC43NzQyIDI2LjI3MUM0OC44OTk2IDI2LjM1MTUgNDkuMDMzIDI2LjQxODQgNDkuMTcyMiAyNi40NzA1QzQ5LjI5OTggMjUuNzQwNSA0OS41OTk5IDI1LjA1MjcgNTAuMDQ2OCAyNC40NjZDNTAuOTQ3OCAyMy41MDM2IDUxLjg3OTMgMjIuMzE5NSA1Mi4wMDYxIDIxLjE0NDNDNTIuMTMyOSAxOS45NjkxIDUyLjg0NTggMTguOTc1NyA1MS43MDQzIDE3LjM0ODFDNTAuNTYyOSAxNS43MjA1IDQ1Ljg1MjggMTUuMDI0MiA0NS4wNzQ0IDE0LjQ2OTlDNDQuMjk1OSAxMy45MTU1IDQzLjYzOTkgMTYuNzA1IDQzLjYzOTkgMTYuNzA1WiIgZmlsbD0iIzMzMzYzRCIvPgogICAgICAgIDxwYXRoIGQ9Ik01MS45OTMgMjEuMTQ0NUM1MS44NjE4IDIyLjMxOTggNTAuOTI1OSAyMy41MDM5IDUwLjAyOTMgMjQuNDYxOEM0OS41ODMxIDI1LjA1MDYgNDkuMjgzMSAyNS43Mzk3IDQ5LjE1NDcgMjYuNDcwOEM0OS4wMTM4IDI2LjQyMDggNDguODggMjYuMzUyMiA0OC43NTY3IDI2LjI2NjhDNDguNTc2NiAyNi4xNTg0IDQ4LjQyNjIgMjYuMDA1OSA0OC4zMTk0IDI1LjgyMzNDNDguNDQ0MiAyNS40Mjg1IDQ4LjY0NjUgMjUuMDYzNCA0OC45MTQxIDI0Ljc1QzQ5LjgxNTEgMjMuNzg3NyA1MC43NDY2IDIyLjYwMzYgNTAuODc3OCAyMS40Mjg0QzUxLjAwOSAyMC4yNTMxIDUxLjcxMzEgMTkuMjU5NyA1MC41NzE2IDE3LjYzNjZDNDkuNTQzOSAxNi4xNjg2IDQ1LjYyMSAxNS40NDU4IDQ0LjI5MTUgMTQuOTE4QzQ0LjUxNDUgMTQuNTI3NyA0NC43ODU3IDE0LjI3OTQgNDUuMDcgMTQuNDc0NUM0NS44NTI4IDE1LjAyIDUwLjU0OTggMTUuNzI5NiA1MS42ODY4IDE3LjM1MjdDNTIuODIzOSAxOC45NzU5IDUyLjExOTggMTkuOTY5MyA1MS45OTMgMjEuMTQ0NVoiIGZpbGw9IiMyNzMxNDkiLz4KICAgICAgICA8cGF0aCBkPSJNNDEuOTczNSAyOS45NTY1QzQwLjM3MjkgMzAuNCAzOC41MzE3IDMxLjUwODcgMzYuNzkxMSAzNC4zOTE0QzM2LjEyMDUgMzUuNDg5NCAzNS42MjE5IDM2LjY4NjIgMzUuMzEyOSAzNy45MzkyQzM0LjYzMjYgNDAuODU4NSAzNC4yOTY0IDQzLjg0OTIgMzQuMzExNCA0Ni44NDg4TDMzLjQzNjggNDcuNTk4M0w0My45OTg0IDUwLjUwMzFDNDQuMDY0IDUwLjM1MjQgNDQuMTI5NiA1MC4yMDE2IDQ0LjE4MjEgNTAuMDU5N0M0NC44MjkzIDQ4Ljk2NDIgNDcuNTY3MSA0My40MDc0IDQ4LjcxNzMgMzguNTI5MUM0OS41MTMyIDM1Ljg2ODIgNDkuOTk4NiAzMy4zMTgxIDQ4LjgzMSAzMS40NjQ0TDQxLjk3MzUgMjkuOTU2NVoiIGZpbGw9IiNBQkFCQUIiLz4KICAgICAgICA8cGF0aCBkPSJNNDguNzE3NCAzOC41MjkxQzQ3LjU2NzIgNDMuNDA3NCA0NC44Mjk1IDQ4Ljk1OTggNDQuMTgyMiA1MC4wNTk2QzQ0LjEyOTggNTAuMjE0OSA0NC4wNjQyIDUwLjM2NTYgNDMuOTk0MiA1MC41MDMxTDMzLjQ2NzUgNDcuNTk4M0wzMy45MDQ5IDQ3LjIzNDdMNDAuNjYxNyA0OS4xMTA2QzQwLjcyMjkgNDguOTU1NCA0MC43ODg1IDQ4LjgwNDYgNDAuODQxIDQ4LjY2NzFDNDEuNDkyNiA0Ny41NzE3IDQ0LjIzMDMgNDIuMDE0OSA0NS4zNzYyIDM3LjEzNjVDNDYuMDcxNSAzNC44MDgyIDQ4LjAwMDIgMzMuMDM4NyA0NS44NTcyIDMwLjgxNjlMNDguODcwNSAzMS40ODY2QzQ5Ljk5ODggMzMuMzI3IDQ5LjUxMzQgMzUuODY4MiA0OC43MTc0IDM4LjUyOTFaIiBmaWxsPSIjODA4MDgzIi8+CiAgICAgICAgPHBhdGggZD0iTTE5LjI2MjkgMzguNDQ5MkMxOS4yNjI5IDM4LjQ0OTIgMjEuMzc1MyA0Ni44IDI2LjA3MjIgNTIuMjIzOEMyNy41MjQyIDUzLjg5NTcgNDAuMzk1IDU2LjAwMjMgNDQuMDAzIDUwLjUyMDhDNDQuMTM4NSA1MC40ODUzIDMzLjgxNzQgNDUuNzM1NiAzMC43NjkyIDM1LjcyNjJDMzAuNzM4NiAzNS42NDIgMTkuMjYyOSAzOC40NDkyIDE5LjI2MjkgMzguNDQ5MloiIGZpbGw9IiM2OTY5NjkiLz4KICAgICAgICA8cGF0aCBkPSJNNDMuOTk0MiA1MC41MjUyQzQwLjM5MDYgNTYuMDAyMyAyNy41MjQyIDUzLjg5NTcgMjYuMDYzNSA1Mi4yMTkzQzIxLjM2NjUgNDYuOCAxOS4yNTg1IDM4LjQ0OTIgMTkuMjU4NSAzOC40NDkyTDIxLjY1OTUgMzcuODYzOEMyMi41Nzc5IDQwLjY2NjYgMjQuNTk0IDQ1Ljg3NzUgMjcuODc4NCA0OS42NjA0QzI5LjA4NTUgNTEuMDQ4NSAzOC4xODY0IDUyLjc2NDggNDMuMjkwMSA1MC4xMDM5QzQzLjc0NDkgNTAuMzc0NCA0My45OTQyIDUwLjUwMzEgNDMuOTk0MiA1MC41MjUyWiIgZmlsbD0iIzY5Njk2OSIvPgogICAgICAgIDxwYXRoIGQ9Ik00MS4zMzk2IDM1LjM4MDJDNDEuNzExMyAzNS4xODUxIDQyLjA4NzUgMzUuMDA3NyA0Mi40Njc5IDM0LjgzNDdMNDQuMDczIDMzLjQ3NzZDNDQuNzE1OCAzMi45NDU1IDQ1LjM4NSAzMi40Mzk5IDQ2LjAyNzggMzEuOTEyMUM0Mi44MTYyIDI4LjkzNCAzOS4wMDA5IDI2LjcwNDMgMzQuODQ5NiAyNS4zNzk2QzMyLjE5NDkgMjIuOTI3MiAyNi4xODE2IDE5LjYzNjUgMjYuMTgxNiAxOS42MzY1TDI1LjA4MzkgMTguODQ3MUMyNC41NzY2IDE3Ljg2NyAyMy4yNzMzIDE1LjY0NTIgMjIuMjM2OCAxNi40MzAxQzIyLjA3MDEgMTYuNTk1MiAyMS45Njk0IDE2LjgxNjkgMjEuOTU0IDE3LjA1MjZDMjEuOTM4NyAxNy4yODg0IDIyLjAwOTggMTcuNTIxNiAyMi4xNTM3IDE3LjcwNzRDMjIuNTM0MiAxOC4zNjgyIDIzLjE4NTggMTguMjU3MyAyMy40MDg5IDE5LjAxNTZDMjIuNDQxMyAxOS4yMDQ0IDIxLjQ0MDMgMTkuMDk5NSAyMC41MzEyIDE4LjcxNDFDMTkuODYyOCAxOC40MDQyIDE5LjIyOTQgMTguMDIyMSAxOC42NDE5IDE3LjU3NDNDMTguNTc3MSAxNy41MjA5IDE4LjQ5ODUgMTcuNDg3NSAxOC40MTU1IDE3LjQ3OEMxOC4zMzI1IDE3LjQ2ODQgMTguMjQ4NiAxNy40ODMyIDE4LjE3MzYgMTcuNTIwNUMxOC4wOTg2IDE3LjU1NzggMTguMDM1NyAxNy42MTYxIDE3Ljk5MjQgMTcuNjg4NkMxNy45NDkxIDE3Ljc2MSAxNy45MjcxIDE3Ljg0NDQgMTcuOTI5MSAxNy45MjkxVjIwLjk2MjVDMTcuOTI5MSAyMS4xMzk5IDE4LjExNzEgMjEuMjEwOSAxOC4xOTU5IDIxLjM3NUMxOC40MDE0IDIxLjgxODUgMTkuNzEzNCAyMi44Mzg1IDIxLjMxNCAyMi44MDc0TDI1LjM2MzggMjMuNDAxN0MyNy4wNzA0IDI1LjMwNjkgMjkuMDY4MyAyNi45MjEyIDMxLjI4MDkgMjguMTgyNEMzMy44OTE0IDMxLjIxNTUgMzYuOTE2NCAzMy44NTQzIDQwLjI2MzggMzYuMDE4OEM0MC42Mzk5IDM1Ljc5NzEgNDEuMDE2IDM1LjU1MzEgNDEuMzM5NiAzNS4zODAyWiIgZmlsbD0iI0U4Qzc5QyIvPgogICAgICAgIDxwYXRoIGQ9Ik0yMi4wOTY4IDE3LjU1MjFDMjEuOTk2NyAxNy4zNzM1IDIxLjk1ODMgMTcuMTY2MiAyMS45ODc2IDE2Ljk2MjlDMjIuMDE2OSAxNi43NTk3IDIyLjExMjMgMTYuNTcyMiAyMi4yNTg2IDE2LjQzMDFDMjIuMzYyMSAxNi4zNTIxIDIyLjQ4MTcgMTYuMjk5IDIyLjYwODUgMTYuMjc0OUMyMi45OTc3IDE2Ljg2OTIgMjMuNjE0MyAxNi43ODkzIDIzLjgyNDMgMTcuNTE2N0MyMy4yNTM1IDE3LjYxNjYgMjIuNjcxMSAxNy42Mjg2IDIyLjA5NjggMTcuNTUyMVoiIGZpbGw9IiNFOEM3OUMiLz4KICAgICAgICA8cGF0aCBkPSJNNDYuMDM2NSAzMS45MTIyQzQ1LjM4OTIgMzIuNDQ0NCA0NC43MjQ1IDMyLjk0MTEgNDQuMDgxNiAzMy40ODIxTDQyLjQ3NjYgMzQuODEyNkM0Mi4wOTYxIDM0Ljk5IDQxLjcyIDM1LjE2MjkgNDEuMzQ4MyAzNS4zNTgxQzQwLjk3NjUgMzUuNTUzMiA0MC42MzU0IDM1Ljc3MDUgNDAuMjQxOCAzNS45OTY3QzM2LjkwMzYgMzMuODM3MyAzMy44ODYyIDMxLjIwNjEgMzEuMjgwOCAyOC4xODI1QzI5LjA2ODkgMjYuOTE4MyAyNy4wNzEyIDI1LjMwMjggMjUuMzYzNyAyMy4zOTczTDIxLjMxMzkgMjIuODA3NUMxOS43MTMzIDIyLjgzNDEgMTguNDA1NyAyMS43OTE5IDE4LjE5NTcgMjEuMzY2MkMxOC4xMTcgMjEuMjA2NSAxNy45MjkgMjEuMTM1NSAxNy45MjkgMjAuOTU4MlYxNy45MjAzQzE3LjkyODUgMTcuODA5MyAxNy45NjkxIDE3LjcwMjEgMTguMDQyOCAxNy42MkMxOC4xMTY1IDE3LjUzNzkgMTguMjE3OSAxNy40ODY4IDE4LjMyNjkgMTcuNDc2OFYxOS40NTkyQzE4LjMyNjkgMTkuNjM2NiAxOC41MTA2IDE5LjcxMiAxOC41ODkzIDE5Ljg3MTZDMTguNzk5MyAyMC4zMTUxIDIwLjExMTMgMjEuMzM1MSAyMS43MDc1IDIxLjMwODVMMjUuNzU3MyAyMS44OTgzQzI3LjQ1NzkgMjMuODAzNSAyOS40NDgxIDI1LjQyMDUgMzEuNjUyNSAyNi42ODhDMzQuMjYyMiAyOS43MjU3IDM3LjI4NzEgMzIuMzY5MSA0MC42MzU0IDM0LjUzNzZDNDEuMDMzNCAzNC4zMTE0IDQxLjQxMzkgMzQuMDk0MSA0MS43NDE5IDMzLjg5OUM0Mi4wNjk5IDMzLjcwMzkgNDIuNDg5NyAzMy41MzA5IDQyLjg3MDIgMzMuMzUzNUw0NC40NzUyIDMyLjAyMzFDNDQuNzYzOCAzMS43ODM2IDQ1LjA1NjkgMzEuNTQ4NSA0NS4zNDk5IDMxLjMxNzlDNDUuNTgxNyAzMS40ODY0IDQ1LjgxMzQgMzEuNjk0OSA0Ni4wMzY1IDMxLjkxMjJaIiBmaWxsPSIjRDBBQTc5Ii8+CiAgICAgICAgPHBhdGggZD0iTTQ2LjQ4NyAzMi4xNzRMNDEuNjg5NSAyOC4wNjc0TDM1Ljg0NjcgMzMuNzcwNkwzOS45NDAxIDM3LjQwNzEiIGZpbGw9IiNBQkFCQUIiLz4KICAgIDwvZz4KICAgIDxkZWZzPgogICAgICAgIDxjbGlwUGF0aCBpZD0iY2xpcDAiPgogICAgICAgICAgICA8cmVjdCB3aWR0aD0iNDkiIGhlaWdodD0iNTIiIGZpbGw9IndoaXRlIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg4Ljc0ODc4IDIuNjMxODQpIi8+CiAgICAgICAgPC9jbGlwUGF0aD4KICAgIDwvZGVmcz4KPC9zdmc+Cg==\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPG1hc2sgaWQ9Im1hc2swIiBtYXNrLXR5cGU9ImFscGhhIiBtYXNrVW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4PSIxIiB5PSIyIiB3aWR0aD0iMjIiIGhlaWdodD0iMjEiPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTcgMjNDNyAyMS4zNSA4LjEyNSAyMCA5LjUgMjBIMTAuNzVWMTdIMTJIMTMuMjVWMjBIMTQuNUMxNS44NzUgMjAgMTcgMjEuMzUgMTcgMjNIN1YyM1pNMTguMTExMSAxM0gxNy42MjIyQzE2LjcwNTYgMTUuMTM4OSAxNC41MDU2IDE2LjY2NjcgMTIgMTYuNjY2N0M5LjQ5NDQ0IDE2LjY2NjcgNy4zNTU1NiAxNS4xMzg5IDYuMzc3NzggMTNINS44ODg4OUMyLjI4MzMzIDEzIDEgMTAuMDY2NyAxIDguMTExMTFWNS42NjY2N0MxIDQuOTk0NDQgMS41NSA0LjQ0NDQ0IDIuMjIyMjIgNC40NDQ0NEg1Ljg4ODg5VjMuMjIyMjJDNS44ODg4OSAyLjU1IDYuNDM4ODkgMiA3LjExMTExIDJIMTYuODg4OUMxNy41NjExIDIgMTguMTExMSAyLjU1IDE4LjExMTEgMy4yMjIyMlY0LjQ0NDQ0SDIxLjc3NzhDMjIuNDUgNC40NDQ0NCAyMyA0Ljk5NDQ0IDIzIDUuNjY2NjdWOC4xMTExMUMyMyAxMC4wNjY3IDIxLjcxNjcgMTMgMTguMTExMSAxM1YxM1YxM1pNNS44ODg4OSA2LjI3Nzc3SDIuODMzMzNWNy45MDc0QzIuODMzMzMgOC42NDA3MyAzLjA2MjUgMTEuMTY2NyA1Ljg4ODg5IDExLjE2NjdWNi4yNzc3N1Y2LjI3Nzc3Wk0xNi4yNzc4IDEwLjc1MTZWNi42MDA2MlYzLjgzMzMzSDcuNzIyMjJWNi42MDA2MlYxMC43NTE2VjExLjU4MThMOC4wNzg3IDEyLjM0MjhDOC43OTE2NyAxMy44NjQ4IDEwLjI4ODkgMTQuODMzMyAxMiAxNC44MzMzQzEzLjcxMTEgMTQuODMzMyAxNS4yMDgzIDEzLjg2NDggMTUuOTIxMyAxMi4zNDI4TDE2LjI3NzggMTEuNTgxOFYxMC43NTE2VjEwLjc1MTZaTTIxLjE2NjcgNi4yNzc3N0gxOC4xMTExVjExLjE2NjdDMjEuMDEzOSAxMS4xNjY3IDIxLjE2NjcgOC40Nzc3NyAyMS4xNjY3IDcuOTA3NFY2LjI3Nzc3VjYuMjc3NzdaIiBmaWxsPSJ3aGl0ZSIvPgo8L21hc2s+CjxnIG1hc2s9InVybCgjbWFzazApIj4KPHJlY3QgeD0iLTQ3OSIgeT0iLTMyMSIgd2lkdGg9IjgwMCIgaGVpZ2h0PSI2MDAiIGZpbGw9IiMwNTY4MzkiLz4KPC9nPgo8L3N2Zz4K\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjUiIGhlaWdodD0iMjUiIHZpZXdCb3g9IjAgMCAyNSAyNSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8zMTI1XzIzMjgpIj4KICAgICAgICA8cGF0aCBkPSJNMjMuODQ4MSAxNy4wNzg2SDE4LjgzODlWMjAuOTJIMTkuODFWMjEuMzA5MkMxOS44MSAyMS41NDcgMjAuMDAyOCAyMS43Mzk3IDIwLjI0MDYgMjEuNzM5N0gyMi40MDA0QzIyLjYzODIgMjEuNzM5NyAyMi44MzA5IDIxLjU0NyAyMi44MzA5IDIxLjMwOTJWMjAuOTJIMjMuODQ4MUMyNC4yMTQ4IDIwLjkyIDI0LjUxMjIgMjAuNjIyNiAyNC41MTIyIDIwLjI1NTlWMTcuNzQyN0MyNC41MTIyIDE3LjM3NTkgMjQuMjE0OSAxNy4wNzg2IDIzLjg0ODEgMTcuMDc4NloiIGZpbGw9ImJsYWNrIi8+CiAgICAgICAgPHBhdGggZD0iTTguNzgzMTEgNy42MDYyNUM5LjgyNjE0IDcuNjA2MjUgMTAuNjcxNyA2Ljc2MDcxIDEwLjY3MTcgNS43MTc2OEMxMC42NzE3IDQuNjc0NjUgOS44MjYxNCAzLjgyOTEgOC43ODMxMSAzLjgyOTFDNy43NDAwNyAzLjgyOTEgNi44OTQ1MyA0LjY3NDY1IDYuODk0NTMgNS43MTc2OEM2Ljg5NDUzIDYuNzYwNzEgNy43NDAwNyA3LjYwNjI1IDguNzgzMTEgNy42MDYyNVoiIGZpbGw9ImJsYWNrIi8+CiAgICAgICAgPHBhdGggZD0iTTE2LjkwMzkgMTQuOTg1QzE2Ljc1OTEgMTQuOTU1MyAxNi44MDk1IDE0Ljk2MjcgMTUuMjk5OCAxNC45NjI3QzE1LjQ4OTUgMTUuMjgzNiAxNS41OTg4IDE1LjY1NzMgMTUuNTk4OCAxNi4wNTYyVjIxLjQ4NDNDMTUuNTk4OCAyMi4xMzkxIDE2LjExODcgMjIuNTc3OCAxNi42ODM1IDIyLjU3NzhDMTcuMjg3NSAyMi41Nzc4IDE3Ljc3NyAyMi4wODgyIDE3Ljc3NyAyMS40ODQzVjE2LjA1NjJDMTcuNzc3IDE1LjUyOCAxNy40MDI1IDE1LjA4NyAxNi45MDM5IDE0Ljk4NVoiIGZpbGw9ImJsYWNrIi8+CiAgICAgICAgPHBhdGggZD0iTTEzLjQ0MjUgMTQuOTYyNUMxMy4yODg2IDE0Ljk2MjUgOS45OTY1OSAxNC45NjI0IDkuOTA0NjIgMTQuOTYyOEwxMy4zMjkyIDE0LjEzODZMMTIuMDI3NiA4Ljg0NTk1TDE1Ljc0MzUgMy44MDEzMUMxNi4wNDIgMy4zOTYxNSAxNS45NTU0IDIuODI1NjUgMTUuNTUwMiAyLjUyNzIyQzE1LjE0NSAyLjIyODc0IDE0LjU3NDYgMi4zMTUyOSAxNC4yNzYxIDIuNzIwNUwxMC41MjAyIDcuODE5NjFDMTAuNDY3IDcuODMwMjQgOC4yMzAxNSA4LjM3Mzg1IDguMDk3NjUgOC40MjUxN0wzLjQ5MzM0IDMuNzM3OTJDMy4xNDA2NyAzLjM3ODk4IDIuNTYzNjkgMy4zNzM3OCAyLjIwNDY5IDMuNzI2NDVDMS44NDU3IDQuMDc5MTIgMS44NDA1NSA0LjY1NjEgMi4xOTMyMiA1LjAxNTA5TDcuNDI0NzcgMTAuMzQwOEM3LjU2NDgyIDEwLjkxMDMgOC42NTc3NCAxNS4zNTQ0IDguODE4NCAxNi4wMDc2QzguODE3NzEgMTYuMDIzOCA4Ljk3MDg4IDE2LjY5OTMgOS4yMTM4OSAxNi44OTk5QzkuMzAyNzggMTYuOTczMyA5LjQwMzkzIDE3LjAzMTkgOS41MTMxMSAxNy4wNzQ0QzguODQzNzkgMTcuMDc0NCA4LjQxOTQgMTcuMDc0NCA3Ljc0ODg2IDE3LjA3NDRWMTcuMDc4N0gxLjE3NjgxQzAuODEwMDU4IDE3LjA3ODcgMC41MTI2OTUgMTcuMzc2MSAwLjUxMjY5NSAxNy43NDI4VjIwLjI1NkMwLjUxMjY5NSAyMC42MjI3IDAuODEwMDU4IDIwLjkyMDEgMS4xNzY4MSAyMC45MjAxSDIuMzM0MjdWMjEuMzA5M0MyLjMzNDI3IDIxLjU0NzEgMi41MjcwMyAyMS43Mzk4IDIuNzY0ODMgMjEuNzM5OEg0LjkyNDYzQzUuMTYyNDQgMjEuNzM5OCA1LjM1NTE5IDIxLjU0NzEgNS4zNTUxOSAyMS4zMDkzVjIwLjkyMDFIMTEuMjg2NFYxOC43NzAxSDExLjI5MDhWMTcuMTQ5NkgxMi4zNDlWMjEuNDg0MUMxMi4zNDkgMjIuMDg4IDEyLjgzODYgMjIuNTc3NiAxMy40NDI1IDIyLjU3NzZDMTQuMDQ2NCAyMi41Nzc2IDE0LjUzNiAyMi4wODggMTQuNTM2IDIxLjQ4NDFWMTYuMDU2QzE0LjUzNiAxNS40NTIxIDE0LjA0NjQgMTQuOTYyNSAxMy40NDI1IDE0Ljk2MjVaIiBmaWxsPSJibGFjayIvPgogICAgPC9nPgogICAgPGRlZnM+CiAgICAgICAgPGNsaXBQYXRoIGlkPSJjbGlwMF8zMTI1XzIzMjgiPgogICAgICAgICAgICA8cmVjdCB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9IndoaXRlIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjUxMjY5NSAwLjQ2MzM3OSkiLz4KICAgICAgICA8L2NsaXBQYXRoPgogICAgPC9kZWZzPgo8L3N2Zz4K\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzAiIGhlaWdodD0iMzAiIHZpZXdCb3g9IjAgMCAzMCAzMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEyLjcwNzEgMS4wNTYxOEgxNy4yOTIxQzE4LjcxMjcgMS4wNTYxOCAxOS45MDUxIDIuMDUwOTUgMjAuMjA5NSAzLjM4MDgxSDkuNzg5NjlDMTAuMDkzNSAyLjA1MDg0IDExLjI4NzIgMS4wNTYxOCAxMi43MDcxIDEuMDU2MThaIiBmaWxsPSIjMDU2ODM5Ii8+CjxwYXRoIGQ9Ik0wIDcuNzE1OTRDMCA2LjA1OTA5IDEuMzQzMTUgNC43MTU5NCAzIDQuNzE1OTRIOS4wNDczNEgyMC45NTI3SDI3QzI4LjY1NjkgNC43MTU5NCAzMCA2LjA1OTA5IDMwIDcuNzE1OTRWMTYuMTYyNkgxNy4yMjU0VjE1LjUwNzFDMTcuMjI1NCAxNS4xMzc5IDE2LjkyNyAxNC44Mzk1IDE2LjU1NzggMTQuODM5NUgxMy40NDIyQzEzLjA3MyAxNC44Mzk1IDEyLjc3NDYgMTUuMTM3OSAxMi43NzQ2IDE1LjUwNzFWMTYuMTYyMUgwVjcuNzE1OTRaIiBmaWxsPSIjMDU2ODM5Ii8+CjxwYXRoIGQ9Ik0xNC4xMDk4IDE2LjgyOTZWMTYuMTc0NkgxNS44OTAyVjE2LjgyOTZWMTguNTEzMkgxNC4xMDk4VjE2LjgyOTZaIiBmaWxsPSIjMDU2ODM5Ii8+CjxwYXRoIGQ9Ik0zMCAyOC45NDM5SDBWMTcuNDk3MkgxMi43NzQ2VjE5LjE4MDJDMTIuNzc0NiAxOS41NDk0IDEzLjA3MyAxOS44NDc4IDEzLjQ0MjIgMTkuODQ3OEgxNi41NTc4QzE2LjkyNyAxOS44NDc4IDE3LjIyNTQgMTkuNTQ5NCAxNy4yMjU0IDE5LjE4MDJWMTcuNDk3MkgzMFYyOC45NDM5WiIgZmlsbD0iIzA1NjgzOSIvPgo8L3N2Zz4K\"","\"use strict\";\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.preloadImagesInModule = exports.getImages = exports.getItemFromProgram = exports.getItemPositionInProgram = exports.getItemFromPatientProgram = exports.getItemPositionInPatientProgram = exports.parseInternalLink = void 0;\nvar htmlUtils_1 = require(\"../youwell-common/htmlUtils\");\nvar parseInternalLink = function (link) {\n var hashIndex = link.url.indexOf('#');\n var taskOrModuleId = link.url;\n var hash = '';\n if (hashIndex > -1) {\n taskOrModuleId = link.url.substring(0, hashIndex);\n hash = \"#\".concat(link.url.substring(hashIndex + 1));\n }\n return { taskOrModuleId: taskOrModuleId, hash: hash };\n};\nexports.parseInternalLink = parseInternalLink;\nvar getItemPositionInPatientProgram = function (patientProgram, taskOrModuleId) {\n var elementGroup = '';\n var elementIndex = -1;\n var taskIndex = -1;\n if (patientProgram) {\n var groups = Object.keys(patientProgram.groupedElements);\n for (var elementGroupIndex = 0; elementGroupIndex < groups.length; elementGroupIndex++) {\n var group = patientProgram.groupedElements[groups[elementGroupIndex]];\n for (elementIndex = 0; elementIndex < group.length; elementIndex++) {\n var el = group[elementIndex];\n elementGroup = el.elementGroup;\n if ((el.id === taskOrModuleId)\n || (el.module && el.module.id === taskOrModuleId)\n || (el.task && el.task.id === taskOrModuleId)) {\n return { elementGroup: elementGroup, elementIndex: elementIndex, taskIndex: taskIndex };\n }\n if (el.module && el.module.tasks) {\n for (taskIndex = 0; taskIndex < el.module.tasks.length; taskIndex++) {\n var task = el.module.tasks[taskIndex];\n if (task.id === taskOrModuleId) {\n return { elementGroup: elementGroup, elementIndex: elementIndex, taskIndex: taskIndex };\n }\n }\n }\n }\n }\n }\n return { elementGroup: elementGroup, elementIndex: elementIndex, taskIndex: taskIndex };\n};\nexports.getItemPositionInPatientProgram = getItemPositionInPatientProgram;\nvar getItemFromPatientProgram = function (patientProgram, elementId) {\n if (patientProgram) {\n var groups = Object.keys(patientProgram.groupedElements);\n for (var elementGroupIndex = 0; elementGroupIndex < groups.length; elementGroupIndex++) {\n var group = patientProgram.groupedElements[groups[elementGroupIndex]];\n for (var elementIndex = 0; elementIndex < group.length; elementIndex++) {\n var el = group[elementIndex];\n // if (el.id === elementId) return el;\n // if (el.module && el.module.id === elementId) return el.module;\n if (el.task && el.task.id === elementId)\n return el.task;\n if (el.module && el.module.tasks) {\n for (var taskIndex = 0; taskIndex < el.module.tasks.length; taskIndex++) {\n if (el.module.tasks[taskIndex].id === elementId) {\n return el.module.tasks[taskIndex];\n }\n }\n }\n }\n }\n }\n return null;\n};\nexports.getItemFromPatientProgram = getItemFromPatientProgram;\nvar getItemPositionInProgram = function (program, elementId) {\n var moduleIndex = -1;\n var taskIndex = -1;\n if (program) {\n for (moduleIndex = 0; moduleIndex < program.modules.length; moduleIndex++) {\n var module_1 = program.modules[moduleIndex];\n if (module_1.id === elementId) {\n return { moduleIndex: moduleIndex, taskIndex: taskIndex };\n }\n if (module_1 && module_1.tasks) {\n for (taskIndex = 0; taskIndex < module_1.tasks.length; taskIndex++) {\n var task = module_1.tasks[taskIndex];\n if (task.id === elementId) {\n return { moduleIndex: moduleIndex, taskIndex: taskIndex };\n }\n }\n }\n }\n }\n return { moduleIndex: moduleIndex, taskIndex: taskIndex };\n};\nexports.getItemPositionInProgram = getItemPositionInProgram;\nvar getItemFromProgram = function (program, elementId) {\n var _a;\n if (program) {\n for (var moduleIndex = 0; moduleIndex < program.modules.length; moduleIndex++) {\n var module_2 = program.modules[moduleIndex];\n if ((module_2 === null || module_2 === void 0 ? void 0 : module_2.id) === elementId) {\n return module_2;\n }\n for (var taskIndex = 0; taskIndex < ((_a = module_2 === null || module_2 === void 0 ? void 0 : module_2.tasks) === null || _a === void 0 ? void 0 : _a.length); taskIndex++) {\n var task = module_2.tasks[taskIndex];\n if ((task === null || task === void 0 ? void 0 : task.id) === elementId) {\n return task;\n }\n }\n }\n }\n return null;\n};\nexports.getItemFromProgram = getItemFromProgram;\nvar getImages = function (task) {\n var _a;\n return ((_a = task.contentElements) === null || _a === void 0 ? void 0 : _a.reduce(function (prev, curr) { return __spreadArray(__spreadArray([], prev, true), (0, htmlUtils_1.findImageUrls)(curr.htmlContent), true); }, [])) || [];\n};\nexports.getImages = getImages;\nvar preloadImagesInModule = function (module) {\n var _a;\n return (_a = module === null || module === void 0 ? void 0 : module.tasks) === null || _a === void 0 ? void 0 : _a.map(function (t) { return (0, exports.getImages)(t).map(function (id) {\n var img = new Image();\n img.src = id;\n return id;\n }); });\n};\nexports.preloadImagesInModule = preloadImagesInModule;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getPublicProgramContentLink = exports.getProgramContentLink = exports.getTaskFromElement = exports.getTask = exports.hasElementSetting = void 0;\nvar constants_1 = require(\"./constants\");\nvar stringUtils_1 = require(\"../youwell-common/stringUtils\");\nvar urls_1 = __importDefault(require(\"../app/urls\"));\nvar taskContentUtils_1 = require(\"./taskContentUtils\");\n// Optionally including label search for backward compatibility\nvar hasElementSetting = function (element, requiredSetting, includeLabelSearch) {\n var _a;\n if (includeLabelSearch === void 0) { includeLabelSearch = false; }\n return ((_a = element\n .settings) === null || _a === void 0 ? void 0 : _a.some(function (e) { return e === requiredSetting; }))\n || (includeLabelSearch && element.label === requiredSetting);\n};\nexports.hasElementSetting = hasElementSetting;\nvar getTaskWithDetails = function (element, task, patientProgramId, elementIndex, elementGroupLength, subIndex) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;\n if (elementIndex === void 0) { elementIndex = 0; }\n if (elementGroupLength === void 0) { elementGroupLength = 0; }\n if (subIndex === void 0) { subIndex = 0; }\n var elementGroup = element.elementGroup;\n var listLength = element.module ? element.module.tasks.length : elementGroupLength;\n var isSeparateItemsInModule = (0, stringUtils_1.parseBoolString)((_b = (_a = element.module) === null || _a === void 0 ? void 0 : _a.settings) === null || _b === void 0 ? void 0 : _b['separate-items']);\n var noSideMenu = (0, stringUtils_1.parseBoolString)((_d = (_c = element.module) === null || _c === void 0 ? void 0 : _c.settings) === null || _d === void 0 ? void 0 : _d['no-side-menu']);\n var isWorkSheet = (0, exports.hasElementSetting)(element, constants_1.patientProgramAppElementSettings.worksheet) || (0, stringUtils_1.parseBoolString)((_e = task.settings) === null || _e === void 0 ? void 0 : _e.worksheet);\n var showCompleteButtonForAppItems = (0, stringUtils_1.parseBoolString)((_g = (_f = element.module) === null || _f === void 0 ? void 0 : _f.settings) === null || _g === void 0 ? void 0 : _g['show-complete-button']);\n var isSubmitTask = (0, stringUtils_1.parseBoolString)((_h = task.settings) === null || _h === void 0 ? void 0 : _h.submit); // set if task should send submit=true on \"Next\"/\"Send\" action\n var showNextPrevNavigation = Boolean(element.module && !isSeparateItemsInModule);\n var showHomeNavigation = !isSeparateItemsInModule && listLength === 1;\n var showBackNavigation = isSeparateItemsInModule;\n var showCompleteNavigation = !isSeparateItemsInModule;\n var hidePrevNavigationIfFirstTask = false;\n var saveAndAbortNavigation = false;\n var redirectHomeAfterLastTask = false;\n var showPopupAfterLastTask = false;\n var showSideMenu = !noSideMenu && Boolean((_k = (_j = element.module) === null || _j === void 0 ? void 0 : _j.tasks) === null || _k === void 0 ? void 0 : _k.length);\n var showProgress = false;\n var showFavourite = false;\n if (elementGroup === constants_1.patientProgramElementGroups.main) {\n showPopupAfterLastTask = true;\n showNextPrevNavigation = !isSeparateItemsInModule;\n showProgress = true;\n showFavourite = true;\n }\n else if (elementGroup === constants_1.patientProgramElementGroups.scheduled) {\n showNextPrevNavigation = listLength > 1 && !isSeparateItemsInModule;\n redirectHomeAfterLastTask = true;\n saveAndAbortNavigation = true;\n showSideMenu = false;\n showProgress = true;\n isSubmitTask = ((_l = task.settings) === null || _l === void 0 ? void 0 : _l.submit) !== undefined ? isSubmitTask : !!task.hasQuestions; // use setting if present otherwise always true if has questions\n }\n else if (elementGroup === constants_1.patientProgramElementGroups.app) {\n showHomeNavigation = true;\n showFavourite = true;\n showCompleteNavigation = showCompleteButtonForAppItems || false;\n }\n else if (elementGroup === constants_1.patientProgramElementGroups.consent || elementGroup === constants_1.patientProgramElementGroups.preContent) {\n showNextPrevNavigation = !isSeparateItemsInModule;\n showHomeNavigation = false;\n hidePrevNavigationIfFirstTask = true;\n redirectHomeAfterLastTask = true;\n showSideMenu = false;\n showProgress = true;\n isSubmitTask = ((_m = task.settings) === null || _m === void 0 ? void 0 : _m.submit) !== undefined ? isSubmitTask : !!task.hasQuestions; // use setting if present otherwise always true if has questions\n }\n else if (elementGroup === constants_1.patientProgramElementGroups.default) {\n showFavourite = true;\n }\n else if (elementGroup === constants_1.patientProgramElementGroups.appointment) {\n showHomeNavigation = true;\n redirectHomeAfterLastTask = true;\n }\n return __assign(__assign({}, task), { taskLabels: (0, stringUtils_1.listFromCommaStrings)(task.label), elementId: element.id, taskName: element.task ? element.name : task.name, elementLabel: element.label, moduleName: element.module ? element.name || element.module.name : element.name, module: element.module, patientProgramId: patientProgramId, patientProgramElementId: element.id, elementIndex: elementIndex, elementGroup: elementGroup, currentTaskNr: Number(element.module ? subIndex : elementIndex), listLength: listLength, elementCompleted: element.completed, progress: listLength > 1 ? element.progress : null, showNextPrevNavigation: showNextPrevNavigation, showHomeNavigation: showHomeNavigation, hidePrevNavigationIfFirstTask: hidePrevNavigationIfFirstTask, saveAndAbortNavigation: saveAndAbortNavigation, redirectHomeAfterLastTask: redirectHomeAfterLastTask, showPopupAfterLastTask: showPopupAfterLastTask, showSideMenu: showSideMenu, showProgress: showProgress, showFavourite: showFavourite, showBackNavigation: showBackNavigation, isSeparateItemsInModule: isSeparateItemsInModule, showCompleteNavigation: showCompleteNavigation, isWorkSheet: isWorkSheet, isSubmitTask: isSubmitTask });\n};\nvar getTask = function (programDetails, elementGroup, elementIndex, subIndex) {\n var _a;\n if (subIndex === void 0) { subIndex = 0; }\n if (!programDetails || !programDetails.groupedElements || !programDetails.groupedElements[elementGroup]) {\n return null;\n }\n var elementsInGroup = programDetails.groupedElements[elementGroup];\n var element = elementsInGroup[Number(elementIndex)];\n if (!element) {\n return null;\n }\n var task = ((_a = element.module) === null || _a === void 0 ? void 0 : _a.tasks) ? element.module.tasks[Number(subIndex)] : element.task;\n if (!task) {\n return null;\n }\n return getTaskWithDetails(element, task, programDetails.id, Number(elementIndex), elementsInGroup.length, Number(subIndex));\n};\nexports.getTask = getTask;\nvar getTaskFromElement = function (element, patientProgramId) {\n var _a;\n if (!element) {\n return null;\n }\n var task = ((_a = element.module) === null || _a === void 0 ? void 0 : _a.tasks) ? element.module.tasks[0] : element.task;\n if (!task) {\n return null;\n }\n return getTaskWithDetails(element, task, patientProgramId);\n};\nexports.getTaskFromElement = getTaskFromElement;\nvar getProgramContentLink = function (link, program) {\n if (!link || !program)\n return null;\n var _a = (0, taskContentUtils_1.parseInternalLink)(link), taskOrModuleId = _a.taskOrModuleId, hash = _a.hash;\n var _b = (0, taskContentUtils_1.getItemPositionInPatientProgram)(program, taskOrModuleId), elementGroup = _b.elementGroup, elementIndex = _b.elementIndex, taskIndex = _b.taskIndex;\n if (elementGroup && elementIndex > -1 && taskIndex > -1) {\n return \"\".concat(urls_1.default.inside.program, \"/\").concat(elementGroup, \"/\").concat(elementIndex, \"/\").concat(taskIndex).concat(hash);\n }\n if (elementGroup && elementIndex > -1) {\n return \"\".concat(urls_1.default.inside.program, \"/\").concat(elementGroup, \"/\").concat(elementIndex).concat(hash);\n }\n return \"\".concat(urls_1.default.inside.programLink, \"/\").concat(taskOrModuleId).concat(hash);\n};\nexports.getProgramContentLink = getProgramContentLink;\nvar getPublicProgramContentLink = function (link, program) {\n var _a = (0, taskContentUtils_1.parseInternalLink)(link), taskOrModuleId = _a.taskOrModuleId, hash = _a.hash;\n var _b = (0, taskContentUtils_1.getItemPositionInProgram)(program, taskOrModuleId), moduleIndex = _b.moduleIndex, taskIndex = _b.taskIndex;\n if (moduleIndex > -1 && taskIndex > -1) { // link is to taskId\n return \"\".concat(urls_1.default.public.program, \"/\").concat(program.id, \"/\").concat(moduleIndex, \"/\").concat(taskIndex).concat(hash);\n }\n if (moduleIndex > -1) { // link is to moduleId\n return \"\".concat(urls_1.default.public.program, \"/\").concat(program.id, \"/\").concat(taskOrModuleId).concat(hash);\n }\n return \"\".concat(urls_1.default.public.programLink, \"/\").concat(taskOrModuleId).concat(hash);\n};\nexports.getPublicProgramContentLink = getPublicProgramContentLink;\n","import * as React from 'react';\r\nimport LinkElement from '../youwell-common/components/taskElements/LinkElement';\r\nimport { getVideos } from '../youwell-common/htmlUtils';\r\nimport { linkTypes } from '../youwell-common/constants';\r\n\r\nconst getTaskVideosFromHtmlContent = task => (task && task.contentElements && task.contentElements.reduce((prev, curr) => [...prev, ...getVideos(curr.htmlContent)], [])) || [];\r\nconst getTaskVideosFromLink = task => (task && task.contentElements && task.contentElements.reduce((prev, curr) => (curr.link && (curr.link.linkType === linkTypes.youtube || curr.link.linkType === linkTypes.vimeo || curr.link.linkType === linkTypes.video)\r\n ? [...prev, { Component: }] : prev), [])) || [];\r\n\r\nconst getTaskVideos = (task) => {\r\n const videos = [];\r\n videos.push(...getTaskVideosFromHtmlContent(task).map(html => ({ html })));\r\n videos.push(...getTaskVideosFromLink(task));\r\n return videos;\r\n};\r\n\r\nexport const getVideosForElement = (element) => {\r\n if (!element) {\r\n return [{\r\n none: true,\r\n }];\r\n }\r\n\r\n const videos = [];\r\n if (element.task && element.task.contentElements) {\r\n videos.push(...getTaskVideos(element.task));\r\n }\r\n if (element.module && element.module.tasks) {\r\n videos.push(...element.module.tasks.reduce((prev, curr) => [...prev, ...getTaskVideos(curr)], []));\r\n }\r\n if (videos.length === 0) {\r\n videos.push({\r\n none: true,\r\n });\r\n }\r\n return videos;\r\n};\r\n\r\nexport const countVideos = elementList => (elementList ? elementList.reduce((prev, curr) => prev + getVideosForElement(curr).filter(d => !d.none).length,\r\n 0) : 0);\r\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar urls_1 = __importDefault(require(\"../../app/urls\"));\n// import { PageNotFound } from '../../youwell-common/components';\nvar components_1 = require(\"../../common/components\");\nvar ParentConsent_1 = __importDefault(require(\"./ParentConsent\"));\nvar Index = /** @class */ (function (_super) {\n __extends(Index, _super);\n function Index() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n Index.prototype.render = function () {\n return (React.createElement(components_1.Layout, { hideHeaderLinks: true, hideMenu: true },\n React.createElement(react_router_dom_1.Switch, null,\n React.createElement(react_router_dom_1.Route, { path: \"\".concat(urls_1.default.external.consent, \"/:consentId?/:page?\"), component: ParentConsent_1.default }),\n React.createElement(react_router_dom_1.Route, { component: ParentConsent_1.default }))));\n };\n return Index;\n}(React.Component));\nexports.default = Index;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar react_router_1 = require(\"react-router\");\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar core_1 = require(\"@material-ui/core\");\nvar urls_1 = __importDefault(require(\"../../app/urls\"));\nvar components_1 = require(\"../../common/components\");\nvar translate_1 = __importDefault(require(\"../../app/localization/translate\"));\nvar store_1 = require(\"../../app/store\");\nvar components_2 = require(\"../../youwell-common/components\");\nvar icons_1 = require(\"../../youwell-common/icons\");\nvar externalUserService_1 = require(\"../../app/services/externalUserService\");\nvar dateUtils_1 = require(\"../../youwell-common/dateUtils\");\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return (0, core_1.createStyles)({\n main: {},\n consents: {\n margin: theme.spacing(2, 0),\n },\n consentList: {\n marginTop: theme.spacing(2),\n padding: theme.spacing(2),\n background: theme.palette.common.white,\n },\n greenIcon: {\n color: theme.youwell.colors.green,\n },\n consent: {\n padding: theme.spacing(2),\n background: theme.palette.common.white,\n },\n actions: {\n marginTop: theme.spacing(8),\n borderTop: theme.youwell.borders.dim,\n padding: theme.spacing(4),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'flex-end',\n },\n consentCheckBox: {\n marginRight: theme.spacing(4),\n },\n sendButton: {\n minWidht: 100,\n },\n radioGroup: {},\n radio: {},\n consentReceipt: {\n margin: theme.spacing(2, 0),\n background: theme.palette.grey[100],\n padding: theme.spacing(2),\n },\n}); });\nvar currentConsentUrlId = 'c';\nvar ParentConsent = function () {\n var _a, _b;\n var classes = useStyles();\n var dispatch = (0, store_1.useYouwellDispatch)();\n var _c = (0, react_router_1.useParams)(), consentId = _c.consentId, page = _c.page;\n var translate = (0, translate_1.default)();\n var parentConsents = (0, store_1.useYouwellSelector)(function (state) { return state.externalUserStore.consents; });\n var selectedConsent = consentId && consentId !== currentConsentUrlId ? parentConsents === null || parentConsents === void 0 ? void 0 : parentConsents.find(function (c) { return c.id === Number(consentId); }) : (parentConsents === null || parentConsents === void 0 ? void 0 : parentConsents.length) === 1 ? parentConsents[0] : parentConsents === null || parentConsents === void 0 ? void 0 : parentConsents.find(function (c) { return !c.consentDate; });\n var _d = React.useState(null), consentChecked = _d[0], setConsentChecked = _d[1];\n var hasUnansweredConsents = ((parentConsents === null || parentConsents === void 0 ? void 0 : parentConsents.findIndex(function (c) { return !c.consentDate; })) || -1) > -1;\n var pageIndex = Number(page) || 0;\n var selectedConsentTask = selectedConsent && __assign(__assign({}, (_b = (_a = selectedConsent.consentModule) === null || _a === void 0 ? void 0 : _a.tasks) === null || _b === void 0 ? void 0 : _b[pageIndex]), { moduleName: selectedConsent === null || selectedConsent === void 0 ? void 0 : selectedConsent.consentModule.name, sorting: pageIndex, moduleId: selectedConsent.consentModule.id });\n var sendResponse = function () {\n if (selectedConsent) {\n var response = {\n consentId: selectedConsent.id,\n accept: !!consentChecked,\n // responses: ...\n };\n var redirect = hasUnansweredConsents ? urls_1.default.inside.home : undefined;\n (0, externalUserService_1.submitConsents)(dispatch, response, { callback: function () { return setConsentChecked(null); }, redirect: redirect });\n }\n };\n React.useEffect(function () {\n if (!parentConsents) {\n (0, externalUserService_1.fetchConsents)(dispatch);\n }\n }, [dispatch, parentConsents]);\n if (!parentConsents || parentConsents.length === 0) {\n return (React.createElement(components_1.PageLayout, { title: translate('consentPage.consent') },\n React.createElement(components_1.InfoMessage, { messageKey: \"parentConsent.noContent\" })));\n }\n return (React.createElement(components_1.PageLayout, { title: translate('consentPage.consent') },\n React.createElement(\"div\", { className: classes.main }, parentConsents && parentConsents.length > 1 && (React.createElement(\"div\", { className: classes.consents },\n React.createElement(core_1.Typography, { variant: \"subtitle1\", color: \"primary\" }, translate(hasUnansweredConsents ? 'consentPage.youHaveRequiredConsents' : 'consentPage.yourConsents')),\n React.createElement(core_1.List, { className: classes.consentList }, parentConsents.map(function (c) { return (React.createElement(core_1.ListItem, { key: c.id, button: true, component: react_router_dom_1.Link, to: \"\".concat(urls_1.default.inside.pages.consent, \"/\").concat(c.id), selected: Boolean(selectedConsent && c.id === selectedConsent.id) },\n React.createElement(core_1.ListItemIcon, null, c.consent ? React.createElement(icons_1.CheckedIcon, { className: classes.greenIcon }) : React.createElement(icons_1.UncheckedIcon, null)),\n React.createElement(core_1.ListItemText, { primary: c.consentModule.name }))); }))))),\n React.createElement(React.Fragment, null, selectedConsent && selectedConsentTask && (React.createElement(\"div\", { className: classes.consent },\n React.createElement(components_2.TaskContentDisplay, { task: selectedConsentTask }),\n selectedConsent.consent && selectedConsent.consentDate ? (React.createElement(core_1.Typography, { variant: \"subtitle1\", className: classes.consentReceipt }, translate('consentPage.consentOnDate', { date: (0, dateUtils_1.datestamp)(selectedConsent.consentDate) }))) : (React.createElement(\"div\", { className: classes.actions },\n React.createElement(core_1.RadioGroup, { className: classes.radioGroup, onChange: function (_e, value) { return setConsentChecked(value === 'true'); } },\n React.createElement(core_1.FormControlLabel, { className: classes.radio, value: \"true\", control: React.createElement(core_1.Radio, { checked: consentChecked !== null ? consentChecked : selectedConsent.consentDate ? selectedConsent.consent : undefined }), label: translate('consentPage.yesIConsent') })),\n React.createElement(core_1.Button, { onClick: sendResponse, variant: \"contained\", color: \"primary\", disabled: !!selectedConsent.consentDate && consentChecked === null, className: classes.sendButton }, translate(selectedConsent.consentDate ? 'consentPage.update' : 'consentPage.send')))))))));\n};\nexports.default = ParentConsent;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.hasMissingData = void 0;\nvar react_1 = __importStar(require(\"react\"));\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar core_1 = require(\"@material-ui/core\");\nvar icons_1 = require(\"../../common/icons\");\nvar AuthStore = __importStar(require(\"../../app/store/AuthStore\"));\nvar UserStore = __importStar(require(\"../../app/store/UserStore\"));\nvar constants_1 = require(\"../../youwell-common/constants\");\nvar components_1 = require(\"../../common/components\");\nvar validation_1 = require(\"./components/validation\");\nvar components_2 = require(\"../../youwell-common/components\");\nvar urls_1 = __importDefault(require(\"../../app/urls\"));\nvar arrayUtils_1 = require(\"../../youwell-common/arrayUtils\");\nvar apiUrls_1 = __importDefault(require(\"../../youwell-common/apiUrls\"));\nvar objectUtils_1 = require(\"../../youwell-common/objectUtils\");\nvar useForm_1 = __importDefault(require(\"../../youwell-common/useForm\"));\nvar breadcrumbUtil_1 = require(\"../../common/breadcrumbUtil\");\nvar ProfileImageEditor_1 = __importDefault(require(\"./components/ProfileImageEditor\"));\nvar store_1 = require(\"../../app/store\");\nvar translate_1 = __importDefault(require(\"../../app/localization/translate\"));\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return ({\n root: {\n padding: theme.spacing(1),\n },\n header: {\n marginTop: theme.spacing(2),\n marginBottom: theme.spacing(2),\n },\n profileData: {\n marginTop: theme.spacing(2),\n display: 'flex',\n flexDirection: 'column',\n },\n topItems: {\n display: 'flex',\n },\n topLeft: {\n flex: '1 1 50%',\n display: 'flex',\n flexDirection: 'column',\n },\n profileImage: {\n border: theme.youwell.borders.dim,\n margin: theme.spacing(2),\n width: 200,\n minHeight: 200,\n },\n textField: {\n marginBottom: theme.spacing(3),\n },\n actions: {\n marginTop: theme.spacing(1),\n display: 'flex',\n justifyContent: 'flex-end',\n },\n content: {\n margin: theme.spacing(4, 0),\n borderTop: theme.youwell.borders.dim,\n paddingTop: theme.spacing(4),\n },\n contentActions: {\n marginTop: theme.spacing(1),\n display: 'flex',\n justifyContent: 'space-between',\n },\n patientDataMissing: {\n padding: theme.spacing(2),\n marginBottom: theme.spacing(3),\n borderRadius: theme.youwell.shapes.borderRadius,\n backgroundColor: theme.palette.secondary.light,\n color: theme.palette.secondary.contrastText,\n },\n bottomActions: {\n margin: theme.spacing(8, 0, 4),\n borderTop: theme.youwell.borders.dim,\n paddingTop: theme.spacing(4),\n display: 'flex',\n justifyContent: 'flex-end',\n },\n saveButton: {\n marginLeft: theme.spacing(1),\n },\n buttonIcon: {\n marginRight: theme.spacing(1),\n },\n currentOrg: {\n background: theme.palette.grey[200],\n },\n}); });\nvar hasMissingData = function (profileData, clientConfig) {\n if ((profileData === null || profileData === void 0 ? void 0 : profileData.userLevel) === constants_1.patientUserLevels.person) {\n return !profileData.name || !profileData.phone || !profileData.email;\n }\n if ((profileData === null || profileData === void 0 ? void 0 : profileData.userLevel) === constants_1.patientUserLevels.patient) {\n if (clientConfig.appSetup.features.emailL4) {\n return !profileData.name || !profileData.phone || !profileData.email;\n }\n return !profileData.name || !profileData.phone;\n }\n return false;\n};\nexports.hasMissingData = hasMissingData;\nvar defaultState = {\n userLevel: '',\n username: '',\n email: '',\n phone: '',\n fnr: '',\n name: '',\n sex: '',\n birthDate: '',\n height: '',\n weight: '',\n newPassword: '',\n newPasswordConfirm: '',\n};\nvar stateFromData = function (data) {\n var initialState = __assign({}, defaultState);\n if (!data) {\n return initialState;\n }\n return Object.keys(defaultState).reduce(function (obj, key) {\n var _a;\n return ((0, objectUtils_1.hasValue)(data[key]) ? __assign(__assign({}, obj), (_a = {}, _a[key] = data[key], _a)) : __assign({}, obj));\n }, __assign(__assign({}, initialState), { isInitializedWithData: true }));\n};\nvar Profile = function () {\n var _a, _b, _c, _d;\n var classes = useStyles();\n var dispatch = (0, store_1.useYouwellDispatch)();\n var translate = (0, translate_1.default)();\n var profileData = (0, store_1.useYouwellSelector)(function (state) { return state.auth.profileData; });\n var clientConfig = (0, store_1.useYouwellSelector)(function (state) { return state.auth.clientConfig; });\n var hasActiveProgram = (0, store_1.useYouwellSelector)(function (state) { var _a; return (_a = state.programStore.currentProgram) === null || _a === void 0 ? void 0 : _a.isActiveProgram; });\n var patientDataMissing = clientConfig.appSetup.patient.checkMissingData && (0, exports.hasMissingData)(profileData, clientConfig);\n var _e = (0, react_1.useState)(false), editing = _e[0], setEditing = _e[1];\n var validators = (0, validation_1.getRuleValidators)(profileData === null || profileData === void 0 ? void 0 : profileData.userLevel);\n var send = function (_a) {\n var _b;\n var formValues = _a.formValues;\n if (!profileData)\n return;\n var saveData = Object.keys(formValues).reduce(function (prev, curr) {\n var _a;\n return ((0, objectUtils_1.hasValue)(formValues[curr]) ? __assign(__assign({}, prev), (_a = {}, _a[curr] = formValues[curr], _a)) : prev);\n }, {\n id: profileData.id,\n organizationId: (_b = profileData.organization) === null || _b === void 0 ? void 0 : _b.id,\n userLevel: profileData.userLevel,\n userSettings: profileData.userSettings,\n });\n delete saveData.isInitializedWithData;\n switch (saveData.userLevel) {\n case constants_1.patientUserLevels.none: {\n break;\n }\n case constants_1.patientUserLevels.anonymous: {\n delete saveData.fnr;\n delete saveData.email;\n delete saveData.name;\n delete saveData.phone;\n break;\n }\n case constants_1.patientUserLevels.person: {\n delete saveData.username;\n delete saveData.fnr;\n break;\n }\n case constants_1.patientUserLevels.patient: {\n delete saveData.username;\n delete saveData.newPassword;\n break;\n }\n default: {\n break;\n }\n }\n var callback = function () {\n setEditing(false);\n };\n dispatch(AuthStore.actionCreators.saveUserProfile(saveData, { callback: callback, redirect: patientDataMissing ? urls_1.default.inside.home : undefined }));\n };\n var _f = (0, useForm_1.default)(send, validators, stateFromData(profileData)), handleChange = _f.handleChange, handleSubmit = _f.handleSubmit, formValues = _f.formValues, validationErrors = _f.validationErrors, resetForm = _f.resetForm;\n var handleConfigChange = function (name) { return function (event) {\n var _a;\n var userSettings = __assign(__assign({}, profileData === null || profileData === void 0 ? void 0 : profileData.userSettings), (_a = {}, _a[name] = event.target.checked, _a));\n dispatch(AuthStore.actionCreators.updateUserSettings(userSettings));\n }; };\n var startEdit = function () {\n setEditing(true);\n };\n var cancelEditing = function () {\n setEditing(false);\n resetForm();\n };\n var removeSensor = function (sensor) { return function () {\n dispatch(UserStore.actionCreators.removeSensor(sensor));\n }; };\n var deleteUser = function () {\n if (profileData) {\n dispatch(UserStore.actionCreators.deleteUser(profileData, { redirect: urls_1.default.logout }));\n }\n };\n var saveProfilePicture = function (image, callback) {\n dispatch(UserStore.actionCreators.saveProfilePicture(image, { callback: callback }));\n };\n var deleteProfilePicture = function (callback) {\n dispatch(UserStore.actionCreators.deleteProfilePicture({ callback: callback }));\n };\n var changeOrg = function (orgId) { return function () {\n dispatch(AuthStore.actionCreators.logoutOrg(orgId));\n }; };\n (0, react_1.useEffect)(function () {\n if (profileData && !formValues.isInitializedWithData) {\n resetForm();\n }\n }, [formValues.isInitializedWithData, profileData, resetForm]);\n if (!profileData) {\n return null;\n }\n var sensors = (0, arrayUtils_1.toBoolLookup)(profileData.sensors, 'sensorType');\n var allowIdentifyingInformation = formValues.userLevel !== constants_1.patientUserLevels.anonymous;\n var showPassword = clientConfig.appSetup.patient.useUserNameAndPw || formValues.userLevel === constants_1.patientUserLevels.person;\n var allowEmail = formValues.userLevel !== constants_1.patientUserLevels.patient || clientConfig.appSetup.features.emailL4;\n var isEditing = editing || patientDataMissing;\n return (react_1.default.createElement(components_1.PageLayout, { title: translate('profile.profileHeading'), breadcrumb: (0, breadcrumbUtil_1.getBreadCrumb)(translate('profile.profile'), translate, clientConfig) },\n react_1.default.createElement(\"form\", { onSubmit: handleSubmit },\n react_1.default.createElement(\"div\", { className: classes.profileData },\n patientDataMissing && (react_1.default.createElement(\"div\", { className: classes.patientDataMissing },\n react_1.default.createElement(core_1.Typography, null, translate('profile.patientDataMissing')))),\n react_1.default.createElement(\"div\", { className: classes.topItems },\n react_1.default.createElement(\"div\", { className: classes.topLeft },\n clientConfig.appSetup.patient.useUserNameAndPw && (react_1.default.createElement(core_1.TextField, { variant: \"outlined\", className: classes.textField, label: translate('profile.username'), value: formValues.username, onChange: handleChange('username'), disabled: !isEditing, error: !!validationErrors.username, helperText: validationErrors.username ? translate(validationErrors.username) : null })),\n allowIdentifyingInformation && (react_1.default.createElement(core_1.TextField, { variant: \"outlined\", className: classes.textField, label: translate('profile.name'), value: formValues.name, onChange: handleChange('name'), disabled: !isEditing, error: !!validationErrors.name, helperText: validationErrors.name ? translate(validationErrors.name) : null })),\n allowIdentifyingInformation && clientConfig.appSetup.patient.mailAndPhone && (react_1.default.createElement(react_1.default.Fragment, null,\n allowEmail && (react_1.default.createElement(core_1.TextField, { variant: \"outlined\", className: classes.textField, label: translate('profile.email'), value: formValues.email, onChange: handleChange('email'), disabled: !isEditing, error: !!validationErrors.email, helperText: validationErrors.email ? translate(validationErrors.email) : null })),\n react_1.default.createElement(core_1.TextField, { variant: \"outlined\", className: classes.textField, label: translate('profile.phone'), value: formValues.phone, onChange: handleChange('phone'), disabled: !isEditing, error: !!validationErrors.phone, helperText: validationErrors.phone ? translate(validationErrors.phone) : null })))),\n allowIdentifyingInformation && clientConfig.appSetup.patient.profilePicture && (react_1.default.createElement(\"div\", { className: classes.profileImage },\n react_1.default.createElement(ProfileImageEditor_1.default, { currentImageId: profileData.profileImageId, onSave: saveProfilePicture, onDelete: deleteProfilePicture })))),\n clientConfig.appSetup.features.genderAge && (react_1.default.createElement(react_1.default.Fragment, null,\n react_1.default.createElement(core_1.TextField, { variant: \"outlined\", className: classes.textField, label: translate('profile.sex'), value: formValues.sex, onChange: handleChange('sex'), disabled: !isEditing, select: true },\n react_1.default.createElement(core_1.MenuItem, { value: \"\" }, translate('profile.select_sex')),\n react_1.default.createElement(core_1.MenuItem, { value: \"male\" }, translate('profile.male')),\n react_1.default.createElement(core_1.MenuItem, { value: \"female\" }, translate('profile.female')),\n react_1.default.createElement(core_1.MenuItem, { value: \"other\" }, translate('profile.other'))),\n react_1.default.createElement(core_1.TextField, { variant: \"outlined\", className: classes.textField, type: \"date\", InputLabelProps: { shrink: true }, label: translate('profile.birthDate'), disabled: !isEditing, value: formValues.birthDate, onChange: handleChange('birthDate') }))),\n clientConfig.appSetup.features.heightWeight && (react_1.default.createElement(react_1.default.Fragment, null,\n react_1.default.createElement(core_1.TextField, { variant: \"outlined\", className: classes.textField, type: \"number\", label: translate('profile.heightInCm'), value: formValues.height, onChange: handleChange('height'), disabled: !isEditing, error: !!validationErrors.height, helperText: validationErrors.height ? translate(validationErrors.height) : null }),\n react_1.default.createElement(core_1.TextField, { variant: \"outlined\", className: classes.textField, type: \"number\", label: translate('profile.weightInKg'), value: formValues.weight, onChange: handleChange('weight'), disabled: !isEditing, error: !!validationErrors.weight, helperText: validationErrors.weight ? translate(validationErrors.weight) : null }))),\n showPassword && (react_1.default.createElement(react_1.default.Fragment, null,\n react_1.default.createElement(core_1.TextField, { variant: \"outlined\", type: \"password\", inputProps: { autoComplete: 'off' }, className: classes.textField, label: translate('profile.new_password'), value: formValues.newPassword, disabled: !isEditing, onChange: handleChange('newPassword'), error: !!validationErrors.newPassword, helperText: validationErrors.newPassword ? translate(validationErrors.newPassword) : null }),\n react_1.default.createElement(core_1.TextField, { variant: \"outlined\", type: \"password\", inputProps: { autoComplete: 'off' }, className: classes.textField, label: translate('profile.new_password_confirm'), value: formValues.newPasswordConfirm, disabled: !isEditing, onChange: handleChange('newPasswordConfirm'), error: !!validationErrors.newPasswordConfirm, helperText: validationErrors.newPasswordConfirm ? translate(validationErrors.newPasswordConfirm) : null })))),\n react_1.default.createElement(\"div\", { className: classes.actions }, isEditing ? (react_1.default.createElement(react_1.default.Fragment, null,\n react_1.default.createElement(core_1.Button, { variant: \"outlined\", onClick: cancelEditing, className: classes.saveButton, color: \"secondary\" },\n react_1.default.createElement(icons_1.CancelIcon, null),\n translate('cancel')),\n react_1.default.createElement(core_1.Button, { variant: \"contained\", type: \"submit\", className: classes.saveButton, color: \"primary\", startIcon: react_1.default.createElement(icons_1.SaveIcon, null) }, translate('common.save')))) : (react_1.default.createElement(core_1.Button, { onClick: startEdit, \"aria-label\": translate('edit'), variant: \"outlined\" },\n react_1.default.createElement(icons_1.EditIcon, { className: classes.buttonIcon }),\n translate('profile.change'))))),\n react_1.default.createElement(react_1.default.Fragment, null, hasActiveProgram && clientConfig.appSetup.features.notifications && allowIdentifyingInformation && (react_1.default.createElement(\"div\", { className: classes.content },\n react_1.default.createElement(core_1.Typography, { variant: \"h6\", color: \"primary\", gutterBottom: true }, translate('profile.notifications')),\n react_1.default.createElement(core_1.Typography, { variant: \"caption\", display: \"block\", gutterBottom: true }, translate('profile.notificationsDescription')),\n allowEmail && (react_1.default.createElement(core_1.FormControlLabel, { disabled: !profileData.email, control: (react_1.default.createElement(core_1.Switch, { checked: ((_a = profileData.userSettings) === null || _a === void 0 ? void 0 : _a.allowEmailNotifications) || false, onChange: handleConfigChange('allowEmailNotifications'), value: \"allowEmailNotifications\" })), label: translate('profile.allowEmailNotifications') })),\n react_1.default.createElement(core_1.FormControlLabel, { disabled: !profileData.phone, control: (react_1.default.createElement(core_1.Switch, { checked: ((_b = profileData.userSettings) === null || _b === void 0 ? void 0 : _b.allowSmsNotifications) || false, onChange: handleConfigChange('allowSmsNotifications'), value: \"allowSmsNotifications\" })), label: translate('profile.allowSmsNotifications') })))),\n react_1.default.createElement(react_1.default.Fragment, null, clientConfig.appSetup.features.sensors && (react_1.default.createElement(\"div\", { className: classes.content },\n react_1.default.createElement(core_1.Typography, { variant: \"h6\", color: \"primary\", gutterBottom: true }, translate('profile.mySensors')),\n react_1.default.createElement(core_1.Typography, { variant: \"caption\", display: \"block\", gutterBottom: true }, translate('profile.mySensorsDescription')),\n react_1.default.createElement(core_1.List, null, (_c = profileData.sensors) === null || _c === void 0 ? void 0 : _c.map(function (s) { return (react_1.default.createElement(core_1.ListItem, { key: s.id },\n react_1.default.createElement(core_1.ListItemText, { primary: s.name }),\n react_1.default.createElement(core_1.ListItemSecondaryAction, null,\n react_1.default.createElement(core_1.IconButton, { onClick: removeSensor(s), \"aria-label\": translate('removeSensor') },\n react_1.default.createElement(icons_1.DeleteIcon, null))))); })),\n react_1.default.createElement(\"div\", { className: classes.contentActions }, !sensors[constants_1.sensorTypes.fitbit] && (react_1.default.createElement(components_2.FormLink, { to: \"\".concat(apiUrls_1.default.baseUrl, \"/\").concat(apiUrls_1.default.route.oauth, \"/fitbit\"), buttonText: translate('profile.addFitbit'), params: [\n { key: 'callbackUrl', value: urls_1.default.inside.profile },\n ] })))))),\n react_1.default.createElement(react_1.default.Fragment, null, ((_d = profileData.connectedOrganizations) === null || _d === void 0 ? void 0 : _d.length) > 1 && (react_1.default.createElement(\"div\", { className: classes.content },\n react_1.default.createElement(core_1.Typography, { variant: \"h6\", color: \"primary\", gutterBottom: true }, translate('profile.myPrograms')),\n react_1.default.createElement(core_1.Typography, { variant: \"caption\", display: \"block\", gutterBottom: true }, translate('profile.myProgramsDescription')),\n react_1.default.createElement(core_1.List, { dense: true }, profileData.connectedOrganizations.map(function (org) {\n var _a;\n var _b;\n return (react_1.default.createElement(core_1.ListItem, { key: org.id, onClick: changeOrg(org.id), button: true, className: (0, classnames_1.default)((_a = {}, _a[classes.currentOrg] = org.id === ((_b = profileData.organization) === null || _b === void 0 ? void 0 : _b.id), _a)) },\n react_1.default.createElement(core_1.ListItemText, { primary: org.name })));\n }))))),\n react_1.default.createElement(\"div\", { className: classes.bottomActions }, clientConfig.appSetup.features.selfDelete && (react_1.default.createElement(components_1.ConfirmButton, { confirmTitle: translate('profile.deleteUser'), confirmText: translate('profile.reallyDeleteUser'), onClick: deleteUser, danger: true }, translate('profile.deleteUser'))))));\n};\nexports.default = Profile;\n","import {\n Button, IconButton, makeStyles,\n} from '@material-ui/core';\nimport React, { useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport AvatarEditor from 'react-avatar-editor';\nimport { getTranslate } from 'react-localize-redux';\nimport { useSelector } from 'react-redux';\nimport classnames from 'classnames';\n\nimport {\n AddImageIcon, RotateIcon, ZoomInIcon, ZoomOutIcon,\n} from '../../../common/icons';\nimport apiUrls from '../../../youwell-common/apiUrls';\nimport { Image } from '../../../youwell-common/components';\nimport PortalModal from '../../../common/components/PortalModal';\nimport { youwellFetch } from '../../../youwell-common/fetchUtils';\n\nconst canvasBorder = 50;\nconst useStyles = makeStyles(theme => ({\n root: {\n minHeight: props => props.width + 2 * canvasBorder,\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n },\n upload: {\n display: 'none',\n },\n currentImage: {\n width: props => props.width * 0.7,\n marginBottom: theme.spacing(2),\n },\n uploadButton: {\n marginBottom: theme.spacing(2),\n },\n deleteCurrent: {\n color: theme.palette.error.main,\n },\n editor: {\n border: theme.youwell.borders.dim,\n },\n imageActions: {\n width: props => props.width + 2 * canvasBorder,\n margin: theme.spacing(2, 0),\n display: 'flex',\n },\n flex: {\n flex: '1 1 auto',\n },\n cancelButton: {\n marginRight: theme.spacing(1),\n },\n imageButton: {\n width: '100%',\n },\n noImage: {\n width: '100%',\n height: '100%',\n },\n image: {\n width: '100%',\n },\n addOverlay: {\n position: 'absolute',\n top: 0,\n left: 0,\n width: '100%',\n height: '100%',\n background: theme.palette.grey[100],\n opacity: 0,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n\n '$imageButton:hover &': {\n opacity: 0.7,\n },\n\n '$imageButton$noImage &': {\n opacity: 1,\n },\n },\n addIcon: {\n width: '30%',\n height: '30%',\n },\n}));\n\nconst ProfileImageEditor = ({\n width, onSave, onDelete, currentImageId,\n}) => {\n const classes = useStyles({ width });\n const translate = useSelector(state => getTranslate(state.localize));\n const [image, setImage] = useState(null);\n const [scale, setScale] = useState(1.2);\n const [rotation, setRotation] = useState(0);\n const [modalOpen, setModalOpen] = useState(false);\n const editor = useRef(null);\n\n const openModal = () => {\n setModalOpen(true);\n };\n const closeModal = () => {\n setImage(null);\n setRotation(0);\n setScale(1.2);\n setModalOpen(false);\n };\n\n const handleFileUpload = (event) => {\n const file = event.target.files[0];\n setImage(file);\n };\n\n const rotate = () => {\n setRotation(prev => prev - 90);\n };\n const scaleImage = direction => () => {\n setScale(prev => prev + (direction * 0.2));\n };\n\n const onClickSave = () => {\n if (editor.current) {\n // This returns a HTMLCanvasElement, it can be made into a data URL or a blob,\n // drawn on another canvas, or added to the DOM.\n const canvas = editor.current.getImage();\n\n // If you want the image resized to the canvas size (also a HTMLCanvasElement)\n // const canvas = editor.current.getImageScaledToCanvas();\n\n // console.log('save', { canvas, canvasScaled });\n\n const canvasUrl = canvas.toDataURL();\n youwellFetch(canvasUrl)\n .then(res => res.blob())\n .then(blob => onSave(blob, closeModal));\n }\n };\n\n const cancelEdit = () => {\n setImage(null);\n };\n\n const deleteCurrent = () => {\n onDelete(closeModal);\n };\n\n const imageUrl = currentImageId ? `${apiUrls.baseUrl}/${apiUrls.app.user}/image/${currentImageId}` : '';\n\n return (\n <>\n \n
\n {!image ? (\n <>\n {imageUrl && (\n \"\"\n )}\n \n \n\n {imageUrl && (\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 \n \n );\n};\n\nProfileImageEditor.propTypes = {\n onSave: PropTypes.func.isRequired,\n onDelete: PropTypes.func.isRequired,\n width: PropTypes.number,\n currentImageId: PropTypes.number,\n};\n\nProfileImageEditor.defaultProps = {\n width: 250,\n currentImageId: null,\n};\n\nexport default ProfileImageEditor;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getRuleValidators = exports.defaultValidators = void 0;\nvar validationUtils_1 = require(\"../../../youwell-common/validationUtils\");\nvar constants_1 = require(\"../../../youwell-common/constants\");\nexports.defaultValidators = {\n fnr: validationUtils_1.validateFnr,\n email: validationUtils_1.validateEmail,\n userLevel: validationUtils_1.validateRequired,\n newPassword: validationUtils_1.validatePassword,\n newPasswordConfirm: validationUtils_1.validatePasswordConfirm,\n};\nvar getRuleValidators = function (userLevel) {\n switch (userLevel) {\n case constants_1.patientUserLevels.none: {\n return {\n userLevel: validationUtils_1.validateRequired,\n name: validationUtils_1.validateRequired,\n fnr: validationUtils_1.validateFnr,\n email: validationUtils_1.validateEmail,\n };\n }\n case constants_1.patientUserLevels.anonymous: {\n return {\n userLevel: validationUtils_1.validateRequired,\n username: validationUtils_1.validateRequired,\n newPassword: validationUtils_1.validatePassword,\n newPasswordConfirm: validationUtils_1.validatePasswordConfirm,\n };\n }\n case constants_1.patientUserLevels.person: {\n return {\n userLevel: validationUtils_1.validateRequired,\n name: validationUtils_1.validateRequired,\n email: [validationUtils_1.validateEmail, validationUtils_1.validateRequired],\n newPassword: validationUtils_1.validatePassword,\n newPasswordConfirm: validationUtils_1.validatePasswordConfirm,\n };\n }\n case constants_1.patientUserLevels.patient: {\n return {\n userLevel: validationUtils_1.validateRequired,\n name: validationUtils_1.validateRequired,\n fnr: [validationUtils_1.validateFnr, validationUtils_1.validateRequired],\n email: validationUtils_1.validateEmail,\n };\n }\n default: {\n return exports.defaultValidators;\n }\n }\n};\nexports.getRuleValidators = getRuleValidators;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport classnames from 'classnames';\nimport { Link } from 'react-router-dom';\n\nimport {\n withStyles, Typography, Button, LinearProgress, Card, CardActionArea,\n} from '@material-ui/core';\n\nimport { patientProgramStatus } from '../../youwell-common/constants';\nimport { hasValue } from '../../youwell-common/objectUtils';\nimport { HtmlContent, Image, TaskContentDisplay } from '../../youwell-common/components';\nimport { activityLabels, patientProgramElementGroups, patientProgramAppElementSettings } from '../../common/constants';\nimport { InfoMessage, ModuleProgress, TrackedLink } from '../../common/components';\nimport { getTaskFromElement, hasElementSetting } from '../../common/taskUtils';\nimport { PROGRAM_CURRENTPROGRAM_RECEIVED } from '../../app/store/actions';\nimport UnfinishedTasksBox from './components/UnfinishedTasksBox';\nimport ModuleBoxFlat from './components/ModuleBoxFlat';\nimport CurrentModuleBox from './components/CurrentModuleBox';\nimport ScheduledTasksBox from './components/ScheduledTasksBox';\nimport CalendarBox from './components/CalendarBox';\n\nimport { dashboardItems, dashboardItemsCustom } from '../../app/appSetup';\nimport AppointmentBox from './components/AppointmentBox';\nimport TimelineBox from './components/TimelineBox';\nimport { GreyCloud } from '../../common/image';\nimport urls from '../../app/urls';\nimport { getImageUrl } from '../../youwell-common/apiUrls';\n\nconst styles = theme => ({\n root: {\n },\n welcome: {\n // display: 'flex',\n // alignItems: 'center',\n\n [theme.breakpoints.down('md')]: {\n padding: theme.spacing(3, 3),\n },\n\n [theme.breakpoints.down('xs')]: {\n padding: theme.spacing(1.5),\n },\n },\n welcomeContent: {\n flex: '1 1 auto',\n },\n welcomeTitle: {\n fontWeight: 500,\n outline: 'none',\n borderLeft: theme.youwell.borders.secondary,\n margin: theme.spacing(2, 0),\n padding: theme.spacing(1, 2),\n },\n inactiveMessage: {\n width: '100%',\n marginBottom: theme.spacing(2),\n padding: theme.spacing(2),\n background: theme.youwell.colors.secondaryBackground,\n color: theme.youwell.colors.primary,\n },\n logo: {\n width: 150,\n\n [theme.breakpoints.down('xs')]: {\n width: 50,\n },\n },\n programDescription: {\n marginTop: theme.spacing(1),\n clear: 'both',\n },\n waitMessage: {\n marginBottom: theme.spacing(8),\n },\n content: {\n marginTop: theme.spacing(8),\n },\n contentBox: {\n padding: theme.spacing(4, 10),\n\n [theme.breakpoints.down('md')]: {\n padding: theme.spacing(3, 3),\n },\n\n [theme.breakpoints.down('xs')]: {\n padding: theme.spacing(3, 1.5),\n },\n },\n alternativeContent: {\n background: theme.palette.common.white,\n padding: theme.spacing(2),\n },\n active: {\n // border: theme.youwell.borders.primary,\n },\n mainModules: {\n position: 'relative',\n },\n mainModulesBackgroundImage: {\n position: 'absolute',\n top: 90,\n left: 0,\n width: '100%',\n opacity: 0.6,\n\n [theme.breakpoints.down('md')]: {\n left: 0,\n width: '100%',\n },\n\n [theme.breakpoints.down('sm')]: {\n display: 'none',\n },\n },\n moduleTitle: {\n outline: 'none',\n borderLeft: theme.youwell.borders.secondary,\n padding: theme.spacing(1, 2),\n },\n modules: {\n position: 'relative',\n display: 'flex',\n flexWrap: 'wrap',\n },\n moduleBoxBorder: {\n width: '100%',\n margin: theme.spacing(2, 0),\n borderBottom: theme.youwell.borders.secondary,\n borderBottomWidth: 1,\n\n [theme.breakpoints.down('sm')]: {\n display: 'none',\n },\n },\n\n module: {\n flexBasis: '25%',\n padding: theme.spacing(2),\n\n [theme.breakpoints.down('sm')]: {\n flexBasis: '33%',\n padding: theme.spacing(3, 2),\n },\n\n [theme.breakpoints.down('xs')]: {\n flexBasis: '100%',\n padding: theme.spacing(4, 2),\n },\n },\n exitButtonContainer: {\n display: 'flex',\n justifyContent: 'center',\n marginTop: theme.spacing(8),\n },\n exitButton: {\n minWidth: 300,\n padding: theme.spacing(1),\n },\n infoContent: {\n margin: theme.spacing(2),\n },\n healthTasks: {\n margin: theme.spacing(2, 0),\n },\n healthTasksContent: {\n padding: theme.spacing(3),\n display: 'flex',\n justifyContent: 'space-between',\n },\n progressContainer: {\n display: 'flex',\n flexWrap: 'wrap',\n flexGrow: 2,\n alignItems: 'center',\n justifyContent: 'flex-start',\n\n '@media print': {\n display: 'none',\n },\n },\n programImageContainer: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'flex-end',\n\n },\n programImage: {\n marginLeft: theme.spacing(1),\n height: 90,\n\n [theme.breakpoints.down('xs')]: {\n height: 'auto',\n maxWidth: 80,\n },\n },\n progressBar: {\n height: 12,\n maxWidth: 200,\n minWidth: 120,\n flexGrow: 1,\n },\n progressBarRounded: {\n background: theme.palette.primary.main,\n borderRadius: theme.youwell.shapes.borderRadius,\n border: '2px solid',\n },\n progressBarFill: {\n background: theme.youwell.colors.highlight,\n borderRadius: theme.youwell.shapes.borderRadius,\n },\n progressText: {\n marginLeft: theme.spacing(1),\n },\n});\n\nclass Dashboard extends React.Component {\n componentDidMount() {\n if (this.props.prevPathname?.startsWith('/inside/program')) {\n if (this.modulesRef) this.modulesRef.focus();\n }\n }\n\n componentDidUpdate(prevProps) {\n // Perform update when hasLoaded changes\n if (prevProps.hasLoaded !== this.props.hasLoaded) {\n if (this.titleRef) this.titleRef.focus();\n }\n }\n\n getNextElementIndex = () => this.props.programDetails.groupedElements[patientProgramElementGroups.main]?.findIndex(d => !d.completed && !d.disabled)\n\n getIntroElement = completed => this.props.programDetails?.appElements?.find(d => hasElementSetting(d, patientProgramAppElementSettings.intro, true) && !d.disabled && (completed ? d.completed : !d.completed));\n\n getDashboardInfoElement = () => this.props.programDetails?.appElements?.find(d => hasElementSetting(d, patientProgramAppElementSettings.dashboardInfo) && !d.disabled);\n\n renderItem = (item) => {\n const {\n classes, translate, programDetails, profileData, clientConfig,\n } = this.props;\n\n const mainElements = programDetails.groupedElements[patientProgramElementGroups.main] || [];\n const progress = programDetails.completedModules / programDetails.totalModules;\n const isInActiveProgram = programDetails.status === patientProgramStatus.inactive;\n const availableScheduledTasks = programDetails.scheduledElements.filter(d => !d.completed && !d.disabled);\n\n switch (item) {\n case dashboardItems.welcome: {\n const firstVisit = true; // check to be implemented..\n\n return (\n
\n {isInActiveProgram ? (\n <>\n {availableScheduledTasks.length > 0 ? (\n \n {translate('dashboard.inactiveProgramWithQuestionnaires')}\n \n ) : (\n \n {translate('dashboard.inactiveProgram')}\n \n )}\n \n ) : (\n <>\n
\n {profileData ? (\n { this.titleRef = thisRef; }} tabIndex=\"-1\">\n {translate(firstVisit ? 'dashboard.welcomeUser' : 'dashboard.welcomeBackUser', { name: profileData.name || '' })}\n \n ) : (\n { this.titleRef = thisRef; }} tabIndex=\"-1\">\n {translate('dashboard.welcome')}\n \n )}\n {/* {this.renderItem(dashboardItems.progress)} */}\n
\n {/* {!programDetails.program.description && this.renderItem(dashboardItems.programIcon)} */}\n \n {clientConfig.appSetup.features.timeline && }\n \n )}\n
\n );\n }\n case dashboardItems.programIcon: {\n const programImageUrl = programDetails.program.frontImageId ? getImageUrl(programDetails.program.frontImageId) : null;\n\n if (!programImageUrl) return null;\n\n return (\n
\n \n
\n );\n }\n case dashboardItems.progress: {\n if (!programDetails.isActiveProgram || !hasValue(progress)) return null;\n return (\n
\n \n \n {translate('common.progressCompleted', { progress: Math.round(progress * 100) })}\n \n
\n );\n }\n case dashboardItems.programDescription: {\n return (\n \n );\n }\n case dashboardItems.questionnaires: {\n return (\n \n );\n }\n case dashboardItems.intro: {\n if (!programDetails.isActiveProgram) return null;\n const introElement = this.getIntroElement();\n\n return introElement && (\n \n );\n }\n case dashboardItems.modules: {\n const nextElementIndex = this.getNextElementIndex();\n\n return mainElements?.length > 0 && (\n
\n { this.modulesRef = thisRef; }} tabIndex=\"-1\">\n {translate('dashboard.modules')}\n \n \n\n
\n {mainElements.map((element, i) => (\n \n \n { (i + 1 < mainElements.length) && ((i + 1) % 4 === 0) && (\n
\n )}\n \n ))}\n
\n
\n );\n }\n case dashboardItemsCustom.unfinished: {\n if (!programDetails.isActiveProgram) return null;\n const unfinishedElements = mainElements.reduce((prev, curr) => {\n if (!curr || !curr.module || !curr.module.tasks || curr.totalTasksVisited < 1) {\n return prev;\n }\n\n const current = {\n id: curr.id,\n indexInGroup: curr.indexInGroup,\n moduleName: curr.name,\n tasks: curr.module.tasks.map((t, taskIndex) => ({\n id: t.id, name: t.name, taskIndex, ok: t.completed || !t.visited,\n })).filter(d => !d.ok),\n };\n\n if (current.tasks.length === 0) {\n return prev;\n }\n\n return prev.length > 0 ? [...prev, current] : [current];\n }, []);\n\n return (\n \n );\n }\n case dashboardItemsCustom.progress: {\n if (!programDetails.isActiveProgram) return null;\n const nextElementIndex = this.getNextElementIndex();\n const currentModule = nextElementIndex > -1 && nextElementIndex < mainElements.length ? mainElements[nextElementIndex] : null;\n\n return (\n \n );\n }\n case dashboardItemsCustom.calendar: {\n return (\n \n );\n }\n case dashboardItemsCustom.completedIntro: {\n const introElement = this.getIntroElement(true);\n\n return introElement && (\n \n );\n }\n case dashboardItemsCustom.waitingForScheduled: {\n const hasAvailableScheduledTasks = availableScheduledTasks.length > 0;\n\n return hasAvailableScheduledTasks ? null : (\n \n );\n }\n case dashboardItemsCustom.exit: {\n return (\n
\n \n {translate('dashboard.exit')}\n \n
\n );\n }\n case dashboardItemsCustom.info: {\n const infoElement = this.getDashboardInfoElement();\n const task = getTaskFromElement(infoElement);\n\n return task && (\n
\n \n
\n );\n }\n case dashboardItems.healthTasks: {\n if (!programDetails.isActiveProgram || !clientConfig.appSetup.features.health) return null;\n\n return (\n \n \n \n {translate('health.rememberYourDaily')}\n \n \n \n \n );\n }\n default:\n return null;\n }\n }\n\n render() {\n const {\n classes, programDetails, hasLoaded, clientConfig,\n } = this.props;\n\n if (!clientConfig) {\n return null;\n }\n\n if (!programDetails) {\n if (hasLoaded) {\n return (\n
\n \n
\n );\n }\n return null;\n }\n\n return (\n <>\n {clientConfig.appSetup.features.moduleProgress && }\n\n
\n {clientConfig.appSetup.dashboard.map(item => (\n \n {this.renderItem(item)}\n \n ))}\n
\n \n );\n }\n}\n\nDashboard.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n clientConfig: PropTypes.object,\n programDetails: PropTypes.object,\n hasLoaded: PropTypes.bool,\n prevPathname: PropTypes.string,\n profileData: PropTypes.object,\n};\n\nDashboard.defaultProps = {\n clientConfig: null,\n programDetails: null,\n hasLoaded: false,\n prevPathname: null,\n profileData: null,\n};\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n prevPathname: state.pageSettings.prevPathname,\n profileData: state.auth.profileData,\n clientConfig: state.auth.clientConfig,\n programDetails: state.programStore.currentProgram,\n hasLoaded: Boolean(state.programStore.requests[PROGRAM_CURRENTPROGRAM_RECEIVED]\n && state.programStore.requests[PROGRAM_CURRENTPROGRAM_RECEIVED].completed),\n});\n\nexport default connect(mapStateToProps)(withStyles(styles)(Dashboard));\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar LoadMedicines_1 = __importDefault(require(\"../pages/health/components/LoadMedicines\"));\nvar LoadHealthRegistration_1 = __importDefault(require(\"../pages/health/components/LoadHealthRegistration\"));\nvar youwell_common_1 = require(\"../../youwell-common\");\nvar components_1 = require(\"../../youwell-common/components\");\nvar LoadCurrentProgram_1 = __importDefault(require(\"./components/LoadCurrentProgram\"));\nvar constants_1 = require(\"../../youwell-common/constants\");\nvar UserStore = __importStar(require(\"../../app/store/UserStore\"));\nvar AuthStore = __importStar(require(\"../../app/store/AuthStore\"));\nvar Index_1 = __importDefault(require(\"../pages/Index\"));\nvar Index_2 = __importDefault(require(\"../program/Index\"));\nvar MessageList_1 = __importDefault(require(\"../messages/MessageList\"));\nvar Videochat_1 = __importDefault(require(\"../videochat/Videochat\"));\nvar Profile_1 = __importStar(require(\"../home/Profile\"));\nvar Dashboard_1 = __importDefault(require(\"./Dashboard\"));\nvar Consent_1 = __importDefault(require(\"../pages/Consent\"));\nvar MissingGuardianConsent_1 = __importDefault(require(\"../pages/MissingGuardianConsent\"));\nvar urls_1 = __importDefault(require(\"../../app/urls\"));\nvar LoadCurrentProgramResponses_1 = __importDefault(require(\"./components/LoadCurrentProgramResponses\"));\nvar LoadProfileData_1 = __importDefault(require(\"./components/LoadProfileData\"));\nvar objectUtils_1 = require(\"../../youwell-common/objectUtils\");\nvar constants_2 = require(\"../../common/constants\");\nvar components_2 = require(\"../../common/components\");\nvar taskUtils_1 = require(\"../../common/taskUtils\");\nvar store_1 = require(\"../../app/store\");\nvar USER_IDLE_TIMEOUT_IN_MINUTES = 30;\nvar POLLING_INTERVAL_IN_MINUTES = 5;\nvar Index = function () {\n var _a;\n var dispatch = (0, store_1.useYouwellDispatch)();\n var clientConfig = (0, store_1.useYouwellSelector)(function (state) { return state.auth.clientConfig; });\n var profileData = (0, store_1.useYouwellSelector)(function (state) { return state.auth.profileData; });\n var hasUnansweredConsents = (0, store_1.useYouwellSelector)(function (state) { return state.auth.hasUnansweredConsents; });\n var unAnsweredConsentIndex = (0, store_1.useYouwellSelector)(function (state) { return (state.programStore.currentProgram && (0, objectUtils_1.hasValue)(state.programStore.currentProgram.unAnsweredConsentIndex)\n ? state.programStore.currentProgram.unAnsweredConsentIndex : -1); });\n var unAnsweredPreContentIndex = (0, store_1.useYouwellSelector)(function (state) { return (state.programStore.currentProgram && (0, objectUtils_1.hasValue)(state.programStore.currentProgram.unAnsweredPreContentIndex)\n ? state.programStore.currentProgram.unAnsweredPreContentIndex : -1); });\n var currentProgram = (0, store_1.useYouwellSelector)(function (state) { return state.programStore.currentProgram; });\n var hasMissingGuardianConsents = (0, store_1.useYouwellSelector)(function (state) { return state.auth.hasMissingGuardianConsents; });\n var healthRegistrationEnabled = !!clientConfig.appSetup.features.health;\n var logoutOnIdle = function () {\n dispatch(AuthStore.actionCreators.logout(constants_1.logoutReasons.idleTimeout));\n };\n var getUserState = function () {\n dispatch(UserStore.actionCreators.getUserState());\n };\n var patientDataMissing = clientConfig.appSetup.patient.checkMissingData && (0, Profile_1.hasMissingData)(profileData, clientConfig);\n var showPrePage = patientDataMissing || hasUnansweredConsents || hasMissingGuardianConsents || unAnsweredConsentIndex > -1 || unAnsweredPreContentIndex > -1;\n var sessionLifetime = youwell_common_1.Auth.getSessionLifetime();\n var getInternalLink = function (link) {\n if (!(link === null || link === void 0 ? void 0 : link.url))\n return null;\n if (link.url.startsWith('page:')) {\n var pageId = link.url.substring(5);\n return urls_1.default.inside[pageId] || urls_1.default.inside.pages[pageId];\n }\n return (0, taskUtils_1.getProgramContentLink)(link, currentProgram);\n };\n var renderPrePage = function () {\n if (hasMissingGuardianConsents) {\n return (React.createElement(react_router_dom_1.Switch, null,\n React.createElement(react_router_dom_1.Route, { path: urls_1.default.inside.pages.missingGuardianConsent, component: MissingGuardianConsent_1.default }),\n React.createElement(react_router_dom_1.Route, { render: function () { return (React.createElement(react_router_dom_1.Redirect, { to: { pathname: urls_1.default.inside.pages.missingGuardianConsent } })); } })));\n }\n if (hasUnansweredConsents) {\n return (React.createElement(react_router_dom_1.Switch, null,\n React.createElement(react_router_dom_1.Route, { path: \"\".concat(urls_1.default.inside.pages.consent, \"/:consentId?\"), component: Consent_1.default }),\n React.createElement(react_router_dom_1.Route, { render: function () { return (React.createElement(react_router_dom_1.Redirect, { to: { pathname: urls_1.default.inside.pages.consent } })); } })));\n }\n if (unAnsweredConsentIndex > -1) {\n // backwards compatibility for old consent-group items\n return (React.createElement(react_router_dom_1.Switch, null,\n React.createElement(react_router_dom_1.Route, { path: \"\".concat(urls_1.default.inside.program, \"/\").concat(constants_2.patientProgramElementGroups.consent), component: Index_2.default }),\n React.createElement(react_router_dom_1.Route, { render: function () { return (React.createElement(react_router_dom_1.Redirect, { to: { pathname: \"\".concat(\"\".concat(urls_1.default.inside.program, \"/\").concat(constants_2.patientProgramElementGroups.consent), \"/\").concat(unAnsweredConsentIndex, \"/\").concat(urls_1.default.inside.parts.resumeLatest) } })); } })));\n }\n if (unAnsweredPreContentIndex > -1) {\n return (React.createElement(react_router_dom_1.Switch, null,\n React.createElement(react_router_dom_1.Route, { path: \"\".concat(urls_1.default.inside.program, \"/\").concat(constants_2.patientProgramElementGroups.preContent), component: Index_2.default }),\n React.createElement(react_router_dom_1.Route, { render: function () { return (React.createElement(react_router_dom_1.Redirect, { to: { pathname: \"\".concat(\"\".concat(urls_1.default.inside.program, \"/\").concat(constants_2.patientProgramElementGroups.preContent), \"/\").concat(unAnsweredPreContentIndex, \"/\").concat(urls_1.default.inside.parts.resumeLatest) } })); } })));\n }\n if (patientDataMissing) {\n return (React.createElement(Profile_1.default, null));\n }\n return null;\n };\n return (React.createElement(React.Fragment, null,\n React.createElement(components_1.ErrorBoundary, { id: \"Inside_Top\" },\n React.createElement(components_2.PageTitle, null),\n sessionLifetime > 0 && (React.createElement(components_1.IdleTimer, { timeoutInMinutes: USER_IDLE_TIMEOUT_IN_MINUTES, onIdle: logoutOnIdle, hasInactivityAlert: true })),\n clientConfig.appSetup.patient.pollState && (React.createElement(components_1.PollData, { dataCall: getUserState, pollingIntervalInMinutes: POLLING_INTERVAL_IN_MINUTES }))),\n React.createElement(components_1.ErrorBoundary, { id: \"Inside_Loading\" },\n React.createElement(LoadProfileData_1.default, null),\n React.createElement(LoadCurrentProgram_1.default, null),\n React.createElement(LoadCurrentProgramResponses_1.default, null),\n React.createElement(components_2.InternalLinkLoader, { linkUrlFunction: function (link) { return getInternalLink(link); } }),\n React.createElement(components_2.ContentVariableLoader, { currentProgram: currentProgram, patientData: profileData }),\n healthRegistrationEnabled && React.createElement(LoadHealthRegistration_1.default, null),\n ((_a = clientConfig.appSetup.features.health) === null || _a === void 0 ? void 0 : _a.medicine) && React.createElement(LoadMedicines_1.default, null)),\n React.createElement(components_2.Layout, { hideHeaderLinks: showPrePage, hideMenu: showPrePage }, renderPrePage() || (React.createElement(react_router_dom_1.Switch, null,\n React.createElement(react_router_dom_1.Route, { exact: true, path: urls_1.default.inside.home, component: Dashboard_1.default }),\n React.createElement(react_router_dom_1.Route, { path: urls_1.default.inside.profile, component: Profile_1.default }),\n React.createElement(react_router_dom_1.Route, { path: urls_1.default.inside.chat, component: MessageList_1.default }),\n React.createElement(react_router_dom_1.Route, { path: urls_1.default.inside.videochat, component: Videochat_1.default }),\n React.createElement(react_router_dom_1.Route, { path: urls_1.default.inside.program, component: Index_2.default }),\n React.createElement(react_router_dom_1.Route, { path: urls_1.default.inside.pages.home, component: Index_1.default }),\n React.createElement(react_router_dom_1.Route, { component: Dashboard_1.default }))))));\n};\nexports.default = Index;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\nimport { getTranslate } from 'react-localize-redux';\n\nimport {\n withStyles, Typography,\n} from '@material-ui/core';\n\nimport * as UserStore from '../../../app/store/UserStore';\n\nimport { dateWithOptionalTime, isFuture } from '../../../youwell-common/dateUtils';\nimport { sortByDateAscending } from '../../../youwell-common/arrayUtils';\nimport urls from '../../../app/urls';\nimport { TrackedLink } from '../../../common/components';\nimport { activityLabels } from '../../../common/constants';\n\nconst styles = theme => ({\n root: {\n border: theme.youwell.borders.dim,\n padding: theme.spacing(1),\n background: theme.palette.grey[50],\n },\n header: {\n display: 'flex',\n },\n date: {\n marginRight: theme.spacing(1),\n },\n content: {\n\n },\n mapIFrame: {\n marginTop: theme.spacing(1),\n width: '100%',\n height: '400px',\n },\n});\n\nclass AppointmentBox extends React.Component {\n render() {\n const {\n classes, translate, className, elements,\n } = this.props;\n\n const futureElements = elements?.filter(d => isFuture(d.startTime, true));\n\n if (!futureElements?.length) {\n return null;\n }\n\n const element = sortByDateAscending(futureElements, 'startTime')[0];\n\n return (\n
\n \n\n \n {translate('dashboard.nextAppointment')}\n \n\n
\n \n {dateWithOptionalTime(element.startTime, translate)}\n \n \n {element.name}\n \n
\n
\n
\n );\n }\n}\n\nAppointmentBox.propTypes = {\n classes: PropTypes.object.isRequired,\n // clientConfig: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n elements: PropTypes.array,\n className: PropTypes.string,\n};\n\nAppointmentBox.defaultProps = {\n className: null,\n elements: null,\n};\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n clientConfig: state.auth.clientConfig,\n});\n\nconst mapDispatchToProps = dispatch => ({\n ...bindActionCreators(UserStore.actionCreators, dispatch),\n});\n\n\nexport default connect(mapStateToProps, mapDispatchToProps)(withStyles(styles)(AppointmentBox));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport classnames from 'classnames';\n\nimport {\n withStyles, Typography,\n} from '@material-ui/core';\n\n\nimport Calendar from '../../pages/Calendar/Calendar';\n\nconst styles = theme => ({\n root: {\n background: theme.palette.grey[100],\n padding: theme.spacing(2),\n\n [theme.breakpoints.down('xs')]: {\n padding: theme.spacing(2, 4),\n },\n },\n topContainer: {\n },\n title: {\n marginBottom: theme.spacing(2),\n fontWeight: 500,\n },\n description: {\n marginBottom: theme.spacing(1),\n },\n content: {\n [theme.breakpoints.down('xs')]: {\n background: theme.palette.grey[100],\n },\n },\n});\n\nclass CalendarBox extends React.Component {\n render() {\n const {\n classes, translate, className,\n } = this.props;\n\n return (\n
\n
\n \n {translate('dashboard.calendar')}\n \n \n {translate('dashboard.calendarDescription')}\n \n
\n
\n\n \n
\n
\n );\n }\n}\n\nCalendarBox.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n className: PropTypes.string,\n};\n\nCalendarBox.defaultProps = {\n className: null,\n};\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n});\n\nexport default connect(mapStateToProps)(withStyles(styles)(CalendarBox));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport { connect } from 'react-redux';\nimport { Translate, getTranslate } from 'react-localize-redux';\nimport { bindActionCreators } from 'redux';\n\nimport {\n withStyles, Typography, Button,\n} from '@material-ui/core';\n\nimport * as ProgramStore from '../../../app/store/ProgramStore';\n\nimport urls from '../../../app/urls';\nimport { getImageUrl } from '../../../youwell-common/apiUrls';\nimport { Image, HtmlContent } from '../../../youwell-common/components';\nimport { TrackedLink, ProgressBar } from '../../../common/components';\nimport MyTaskContent from '../../program/components/MyTaskContent';\n\nconst styles = theme => ({\n root: {\n background: theme.youwell.colors.lightGreen,\n display: 'flex',\n flexWrap: 'wrap',\n\n [theme.breakpoints.down('sm')]: {\n flexDirection: 'column',\n },\n },\n topContainer: {\n flex: '0 0 100%',\n },\n title: {\n margin: theme.spacing(2, 0),\n padding: theme.spacing(1, 2),\n borderLeft: theme.youwell.borders.secondary,\n },\n contentAndImageWrap: {\n display: 'flex',\n width: '100%',\n background: theme.youwell.colors.white,\n borderRadius: 10,\n padding: theme.spacing(4),\n [theme.breakpoints.down('xs')]: {\n flexDirection: 'column',\n },\n },\n imageContainer: {\n width: '34%',\n [theme.breakpoints.down('sm')]: {\n width: '75%',\n },\n\n [theme.breakpoints.down('xs')]: {\n width: '100%',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n },\n },\n image: {\n width: '100%',\n\n [theme.breakpoints.down('xs')]: {\n height: 'auto', // for safari mobile.. check what is neccesary\n width: '50%',\n alignSelf: 'center', // for safari mobile.. check what is neccesary\n justifySelf: 'center', // for safari mobile.. check what is neccesary\n },\n },\n content: {\n flex: '1 1 50%',\n paddingLeft: theme.spacing(6),\n display: 'flex',\n flexDirection: 'column',\n\n [theme.breakpoints.down('sm')]: {\n flex: '1 1 100%',\n paddingLeft: 0,\n },\n },\n moduleTitle: {\n margin: theme.spacing(6, 1, 1, 1),\n fontSize: '1.14rem',\n color: theme.youwell.colors.green,\n },\n progressContainer: {\n margin: theme.spacing(1),\n },\n progress: {\n width: '100%',\n },\n description: {\n margin: theme.spacing(1),\n },\n actions: {\n flex: '1 1 auto',\n marginTop: theme.spacing(2),\n display: 'flex',\n justifyContent: 'flex-end',\n alignItems: 'flex-end',\n },\n startButton: {\n padding: theme.spacing(0.5, 2),\n width: 170,\n height: 40,\n\n [theme.breakpoints.down('xs')]: {\n width: '100%',\n },\n },\n});\n\nclass CurrentModuleBox extends React.Component {\n renderModule = (module) => {\n const {\n classes, element, index, trackLabel, currentProgram, hideProgress, translate,\n } = this.props;\n\n const progress = Math.min(currentProgram.completedModules / currentProgram.totalModules, 1) || 0;\n\n return (\n <>\n
\n
\n {module.moduleImageId && (\n \n )}\n
\n\n
\n \n {element.name || ()}\n \n\n {!hideProgress && (\n
\n \n \n \n \n
\n )}\n\n \n\n
\n \n {element.completed ? () : (\n <>\n {element.totalTasksVisited > 0 ? (\n \n ) : (\n \n )}\n \n )}\n \n
\n
\n
\n \n );\n }\n\n completeTask = (elementId, taskId, programId) => () => {\n this.props.visitTask({\n ppeId: elementId,\n id: taskId,\n }, { reducerParams: { patientProgramId: programId, taskId } });\n }\n\n render() {\n const {\n classes, element, className, title, currentProgram,\n } = this.props;\n\n if (!element?.module && !element?.task) {\n return null;\n }\n\n return (\n
\n
\n \n {title}\n \n
\n {element.module\n ? this.renderModule(element.module)\n : (\n
\n \n
\n \n \n \n
\n\n
\n )}\n
\n );\n }\n}\n\nCurrentModuleBox.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n visitTask: PropTypes.func.isRequired,\n element: PropTypes.object,\n // clientConfig: PropTypes.object.isRequired,\n index: PropTypes.number.isRequired,\n className: PropTypes.string,\n title: PropTypes.string,\n trackLabel: PropTypes.string.isRequired,\n currentProgram: PropTypes.object.isRequired,\n hideProgress: PropTypes.bool,\n};\n\nCurrentModuleBox.defaultProps = {\n className: null,\n title: null,\n element: null,\n hideProgress: false,\n};\n\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n clientConfig: state.auth.clientConfig,\n currentProgram: state.programStore.currentProgram,\n});\n\nconst mapDispatchToProps = dispatch => ({\n ...bindActionCreators(ProgramStore.actionCreators, dispatch),\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(withStyles(styles)(CurrentModuleBox));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\nimport * as ProgramStore from '../../../app/store/ProgramStore';\n\nclass LoadCurrentProgram extends React.Component {\n componentDidMount() {\n if (!this.props.currentProgram) {\n this.props.getCurrentProgram();\n }\n }\n\n render() {\n return null;\n }\n}\n\nLoadCurrentProgram.propTypes = {\n getCurrentProgram: PropTypes.func.isRequired,\n currentProgram: PropTypes.object,\n};\n\nLoadCurrentProgram.defaultProps = {\n currentProgram: null,\n};\n\nconst mapStateToProps = state => ({\n currentProgram: state.programStore.currentProgram,\n});\n\nconst mapDispatchToProps = dispatch => ({\n ...bindActionCreators(ProgramStore.actionCreators, dispatch),\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(LoadCurrentProgram);\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\nimport * as ProgramStore from '../../../app/store/ProgramStore';\nimport { PROGRAM_RESPONSES_RECEIVED } from '../../../app/store/actions';\n\nclass LoadCurrentProgramResponses extends React.Component {\n componentDidMount() {\n const { currentProgramId, currentProgramResponsesLoaded } = this.props;\n\n if (currentProgramId && !currentProgramResponsesLoaded) {\n this.loadResponses(currentProgramId);\n }\n }\n\n componentDidUpdate(prevProps) {\n const { currentProgramId, currentProgramResponsesLoaded } = this.props;\n\n if (currentProgramId && currentProgramId !== prevProps.currentProgramId && !currentProgramResponsesLoaded) {\n this.loadResponses(currentProgramId);\n }\n }\n\n loadResponses(patientProgramId) {\n this.props.getProgramResponses(patientProgramId,\n {\n reducerParams: {\n patientProgramId,\n },\n });\n }\n\n render() {\n return null;\n }\n}\n\nLoadCurrentProgramResponses.propTypes = {\n getProgramResponses: PropTypes.func.isRequired,\n currentProgramResponsesLoaded: PropTypes.bool,\n currentProgramId: PropTypes.string,\n};\n\nLoadCurrentProgramResponses.defaultProps = {\n currentProgramResponsesLoaded: false,\n currentProgramId: null,\n};\n\nconst mapStateToProps = state => ({\n currentProgramId: state.programStore.currentProgram ? state.programStore.currentProgram.id : null,\n currentProgramResponsesLoaded: Boolean(state.programStore.requests[PROGRAM_RESPONSES_RECEIVED]\n && state.programStore.requests[PROGRAM_RESPONSES_RECEIVED].completed),\n});\n\nconst mapDispatchToProps = dispatch => ({\n ...bindActionCreators(ProgramStore.actionCreators, dispatch),\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(LoadCurrentProgramResponses);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\nimport * as AuthStore from '../../../app/store/AuthStore';\nimport Auth, { authTypes } from '../../../youwell-common/Auth';\n\nclass LoadProfileData extends React.Component {\n componentDidMount() {\n if (Auth.isUserAuthenticated(authTypes.user, authTypes.orgSelect) && !this.props.profileData) {\n this.props.getUserProfile();\n }\n }\n\n render() {\n return null;\n }\n}\n\nLoadProfileData.propTypes = {\n getUserProfile: PropTypes.func.isRequired,\n profileData: PropTypes.object,\n};\n\nLoadProfileData.defaultProps = {\n profileData: null,\n};\n\nconst mapStateToProps = state => ({\n profileData: state.auth.profileData,\n});\n\nconst mapDispatchToProps = dispatch => ({\n getUserProfile: bindActionCreators(AuthStore.actionCreators, dispatch).getUserProfile,\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(LoadProfileData);\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport { useDispatch } from 'react-redux';\nimport { Translate } from 'react-localize-redux';\nimport { Link } from 'react-router-dom';\n\nimport {\n Typography, Button, makeStyles,\n} from '@material-ui/core';\n\nimport * as UserStore from '../../../app/store/UserStore';\n\nimport urls from '../../../app/urls';\nimport { getImageUrl } from '../../../youwell-common/apiUrls';\nimport { HtmlContent, Image } from '../../../youwell-common/components';\nimport { activityLabels } from '../../../common/constants';\nimport { useYouwellSelector } from '../../../app/store';\nimport useYouwellTranslate from '../../../app/localization/translate';\nimport { getElementActionText } from './ModuleBoxWithOverlay';\n\nconst styles = theme => ({\n root: {\n display: 'flex',\n flexDirection: 'column',\n padding: theme.spacing(2),\n },\n imageContainer: {\n width: '100%',\n\n [theme.breakpoints.down('xs')]: {\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n },\n },\n image: {\n width: '100%',\n paddingTop: theme.spacing(1),\n\n [theme.breakpoints.down('xs')]: {\n heigth: 'auto', // for safari mobile.. check what is neccesary\n width: '50%',\n alignSelf: 'center', // for safari mobile.. check what is neccesary\n justifySelf: 'center', // for safari mobile.. check what is neccesary\n },\n },\n moduleTitle: {\n margin: theme.spacing(1),\n textAlign: 'center',\n color: theme.youwell.colors.green,\n },\n description: {\n margin: theme.spacing(1),\n },\n actions: {\n flex: '1 1 auto',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'flex-end',\n },\n startButton: {\n width: '75%',\n },\n completed: {\n background: theme.palette.primary.light,\n color: `${theme.youwell.colors.black}d9`,\n },\n});\n\n\nconst useStyles = makeStyles(styles, { name: 'ModuleBoxFlat' });\n\nconst ModuleBoxFlat = ({\n element, index, className, isCurrent, programId,\n}) => {\n const dispatch = useDispatch();\n const classes = useStyles();\n const translate = useYouwellTranslate();\n const patientId = useYouwellSelector(state => state.auth.profileData.id);\n const isActiveProgram = useYouwellSelector(state => state.programStore.currentProgram?.isActiveProgram);\n\n const clickElement = label => (e) => {\n if (element.disabled) {\n e.preventDefault();\n } else {\n dispatch(UserStore.actionCreators.sendActivity({\n pid: patientId,\n ppid: programId,\n l: label,\n start: new Date(),\n }));\n }\n }\n\n if (!element || !element.module) {\n return null;\n }\n\n const isCompletedElement = isActiveProgram && element.completed;\n const isCurrentElement = isActiveProgram && isCurrent;\n\n const module = element.module;\n\n return (\n
\n {module.moduleImageId && (\n
\n \n
\n )}\n \n \n {element.name || ()}\n \n
\n \n {getElementActionText(element, translate, isCurrentElement, isActiveProgram)}\n \n
\n
\n );\n}\n\nModuleBoxFlat.propTypes = {\n programId: PropTypes.string.isRequired,\n element: PropTypes.object.isRequired,\n index: PropTypes.number.isRequired,\n isCurrent: PropTypes.bool,\n className: PropTypes.string,\n};\n\nModuleBoxFlat.defaultProps = {\n className: null,\n isCurrent: false,\n};\n\nexport default ModuleBoxFlat;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getElementActionText = exports.moduleBoxStyles = void 0;\nvar React = __importStar(require(\"react\"));\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar react_redux_1 = require(\"react-redux\");\nvar react_localize_redux_1 = require(\"react-localize-redux\");\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar core_1 = require(\"@material-ui/core\");\nvar UserStore = __importStar(require(\"../../../app/store/UserStore\"));\nvar apiUrls_1 = require(\"../../../youwell-common/apiUrls\");\nvar components_1 = require(\"../../../youwell-common/components\");\nvar constants_1 = require(\"../../../common/constants\");\nvar dateUtils_1 = require(\"../../../youwell-common/dateUtils\");\nvar store_1 = require(\"../../../app/store\");\nvar translate_1 = __importDefault(require(\"../../../app/localization/translate\"));\nvar icons_1 = require(\"../../../common/icons\");\nvar youwell_common_1 = require(\"../../../youwell-common\");\nvar backgroundColorStop = 180;\nvar progressSize = 38;\nvar imageHeight = 180;\nvar moduleBoxStyles = function (theme) { return (0, core_1.createStyles)({\n root: {\n borderRadius: theme.youwell.shapes.borderRadius,\n display: 'flex',\n flexDirection: 'column',\n position: 'relative',\n boxShadow: theme.youwell.shadows.default,\n minHeight: 400,\n backgroundSize: 'contain',\n backgroundRepeat: 'no-repeat',\n },\n colorCard: {\n height: imageHeight,\n borderTopLeftRadius: theme.youwell.shapes.borderRadius,\n borderTopRightRadius: theme.youwell.shapes.borderRadius,\n },\n card: {\n marginTop: -20,\n backgroundColor: theme.palette.common.white,\n width: '90%',\n },\n imageWrapper: {\n height: imageHeight,\n overflow: 'hidden',\n },\n image: {\n maxWidth: '100%',\n borderTopLeftRadius: theme.youwell.shapes.borderRadius,\n borderTopRightRadius: theme.youwell.shapes.borderRadius,\n },\n moduleTitle: {\n margin: theme.spacing(1),\n },\n description: {\n margin: theme.spacing(1),\n },\n actions: {\n flex: '1 1 auto',\n marginTop: theme.spacing(2),\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'flex-end',\n },\n startButton: {\n width: '60%',\n margin: theme.spacing(1),\n position: 'relative',\n textAlign: 'center',\n '&$completed': {\n color: theme.youwell.colors.white,\n },\n },\n completed: {},\n active: {},\n circleProgress: {\n backgroundColor: theme.palette.secondary.main,\n color: theme.youwell.colors.highlight,\n borderRadius: theme.youwell.shapes.borderRadiusRounder,\n position: 'absolute',\n left: -2,\n },\n completeProgress: {\n color: theme.palette.secondary.main,\n },\n checkIcon: {\n color: theme.youwell.colors.white,\n position: 'absolute',\n left: 2,\n zIndex: 1,\n },\n shiftedModuleName: {\n marginLeft: progressSize / 2,\n },\n}); };\nexports.moduleBoxStyles = moduleBoxStyles;\nvar useStyles = (0, core_1.makeStyles)(exports.moduleBoxStyles, { name: 'ModuleBoxWithOverlay' });\nvar getElementActionText = function (el, translate, isCurrent, isActiveProgram) {\n if (!isActiveProgram) {\n return translate('dashboard.open');\n }\n if (el.completed) {\n return translate('dashboard.completed');\n }\n if (el.isNotStarted) {\n return translate('dashboard.moduleOpens', { date: (0, dateUtils_1.datestamp)(el.startTime) });\n }\n if (el.isEnded) {\n return translate('dashboard.moduleEnded');\n }\n if (el.prereqNotCompleted) {\n return translate('dashboard.notAvailableYet');\n }\n return isCurrent ? translate('dashboard.continue') : translate('dashboard.start');\n};\nexports.getElementActionText = getElementActionText;\nvar ModuleBoxWithOverlay = function (_a) {\n var _b;\n var _c;\n var element = _a.element, index = _a.index, className = _a.className, isCurrent = _a.isCurrent, programId = _a.programId, to = _a.to;\n var dispatch = (0, react_redux_1.useDispatch)();\n var classes = useStyles();\n var theme = (0, core_1.useTheme)();\n var translate = (0, translate_1.default)();\n var patientId = (0, store_1.useYouwellSelector)(function (state) { var _a; return (_a = state.auth.profileData) === null || _a === void 0 ? void 0 : _a.id; });\n var isActiveProgram = (0, store_1.useYouwellSelector)(function (state) { var _a; return (_a = state.programStore.currentProgram) === null || _a === void 0 ? void 0 : _a.isActiveProgram; });\n var clickElement = function (label) { return function (e) {\n if (youwell_common_1.Auth.isUserAuthenticated()) {\n if (element.disabled) {\n e.preventDefault();\n }\n else {\n dispatch(UserStore.actionCreators.sendActivity({\n pid: patientId,\n ppid: programId,\n l: label,\n start: new Date(),\n }));\n }\n }\n }; };\n if (!element || !element.module) {\n return null;\n }\n var isCompletedElement = isActiveProgram && element.completed;\n var isCurrentElement = isActiveProgram && isCurrent;\n var module = element.module;\n var cardColors = [theme.youwell.colors.grayDark, theme.youwell.colors.grayMiddle, theme.youwell.colors.grayLight];\n var backgroundImageColor = cardColors[index % cardColors.length];\n var bottomColor = (isCurrentElement || isCompletedElement) ? theme.youwell.colors.primary : theme.youwell.colors.defaultBackground;\n var backgroundImage = \"linear-gradient(to bottom, \".concat(cardColors[index % cardColors.length], \" \").concat(backgroundColorStop, \"px, \").concat(bottomColor, \" \").concat(backgroundColorStop, \"px)\");\n return (React.createElement(\"div\", { className: (0, classnames_1.default)(classes.root, className), style: { backgroundImage: backgroundImage } },\n React.createElement(\"div\", { className: classes.imageWrapper }, module.moduleImageId ? (React.createElement(components_1.Image, { alt: \"\".concat(translate('dashboard.moduleImg'), \" \").concat((_c = module.moduleImageDescription) !== null && _c !== void 0 ? _c : ''), src: (0, apiUrls_1.getImageUrl)(module.moduleImageId), className: classes.image })) : (React.createElement(\"div\", { role: \"img\", \"aria-label\": translate('dashboard.missingModuleImg'), className: classes.colorCard, style: { backgroundColor: backgroundImageColor } }))),\n React.createElement(\"div\", { className: (0, classnames_1.default)(classes.card) },\n React.createElement(core_1.Typography, { variant: \"subtitle2\", className: classes.moduleTitle }, element.name || (React.createElement(react_localize_redux_1.Translate, { id: \"dashboard.module\", data: { index: index + 1 } }))),\n React.createElement(components_1.HtmlContent, { html: module.description, className: classes.description })),\n React.createElement(\"div\", { className: classes.actions },\n React.createElement(core_1.Button, { variant: isCurrentElement ? 'contained' : 'outlined', color: \"secondary\", component: react_router_dom_1.Link, to: to, className: (0, classnames_1.default)(classes.startButton, (_b = {}, _b[classes.completed] = isCompletedElement, _b[classes.active] = isCurrentElement, _b)), size: \"small\", disabled: element.disabled, \"aria-label\": element.disabled ? translate('dashboard.unavailableModuleAria') : isCompletedElement ? \"\".concat(translate('dashboard.progressCompleted', { progress: 100 })) : \"\".concat(translate('dashboard.progressCompleted', { progress: (element === null || element === void 0 ? void 0 : element.progress) ? Math.round(element.progress * 100) : 0 })), onClick: clickElement(\"\".concat(constants_1.activityLabels.dashboard.module, \"/\").concat(index)) },\n React.createElement(React.Fragment, null,\n isCompletedElement ? (React.createElement(React.Fragment, null,\n React.createElement(icons_1.CheckMarkIcon, { className: classes.checkIcon }),\n React.createElement(core_1.CircularProgress, { size: progressSize, className: (0, classnames_1.default)(classes.circleProgress, classes.completeProgress), variant: \"determinate\", value: 100 }))) : isCurrentElement && (React.createElement(core_1.CircularProgress, { size: progressSize, thickness: 5, className: classes.circleProgress, variant: \"determinate\", value: ((element === null || element === void 0 ? void 0 : element.progress) || 0) * 100 })),\n React.createElement(\"span\", { className: isCompletedElement || isCurrentElement ? classes.shiftedModuleName : undefined }, (0, exports.getElementActionText)(element, translate, isCurrentElement, isActiveProgram)))))));\n};\nModuleBoxWithOverlay.defaultProps = {\n className: undefined,\n isCurrent: false,\n};\nexports.default = ModuleBoxWithOverlay;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport classnames from 'classnames';\n\nimport {\n withStyles, Typography, Button,\n} from '@material-ui/core';\n\nimport urls from '../../../app/urls';\nimport { TrackedLink } from '../../../common/components';\nimport { activityLabels } from '../../../common/constants';\n\nconst styles = theme => ({\n root: {\n },\n topContainer: {\n paddingLeft: theme.spacing(2),\n borderLeft: theme.youwell.borders.secondary,\n },\n title: {\n fontWeight: 500,\n },\n description: {\n marginBottom: theme.spacing(3),\n [theme.breakpoints.down('xs')]: {\n fontSize: 16,\n },\n },\n tasks: {\n padding: theme.spacing(2),\n background: theme.palette.grey[100],\n minHeight: 300,\n },\n taskName: {\n paddingBottom: theme.spacing(0.5),\n marginLeft: theme.spacing(2),\n marginBottom: theme.spacing(0.5),\n borderBottom: theme.youwell.borders.dim,\n },\n elements: {\n display: 'flex',\n flexDirection: 'column',\n flexWrap: 'wrap',\n alignItems: 'flex-start',\n maxHeight: 400,\n overflowX: 'auto',\n\n [theme.breakpoints.down('xs')]: {\n flexDirection: 'row',\n maxHeight: 'none !important', // override height calculated from elements.length\n },\n },\n linkButton: {\n padding: `${theme.spacing(0.5)}px ${theme.spacing(2)}px`,\n marginBottom: theme.spacing(1),\n color: theme.youwell.colors.green,\n background: theme.youwell.colors.white,\n maxWidth: '45%',\n marginRight: theme.spacing(1),\n\n '&:hover': {\n background: theme.palette.grey[100],\n },\n\n [theme.breakpoints.down('xs')]: {\n width: '100%',\n maxWidth: 'none',\n marginRight: 0,\n },\n },\n firstButton: {\n color: theme.youwell.colors.white,\n background: theme.youwell.colors.green,\n '&:hover': {\n background: theme.youwell.colors.green,\n },\n },\n});\n\nclass ScheduledTasksBox extends React.Component {\n render() {\n const {\n classes, translate, className, elements,\n } = this.props;\n\n if (!elements || elements.length === 0) {\n return null;\n }\n\n const maxHeight = Math.max(elements.length * 50 / 2, 50); // Minimum 50 px\n\n return (\n
\n
\n \n {translate('dashboard.scheduledTasks')}\n \n \n {translate('dashboard.scheduledTasksDescription')}\n \n
\n
\n {elements.map((element, index) => (\n \n {element.name}\n \n ))}\n
\n
\n );\n }\n}\n\nScheduledTasksBox.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n elements: PropTypes.array.isRequired,\n className: PropTypes.string,\n};\n\nScheduledTasksBox.defaultProps = {\n className: null,\n};\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n});\n\nexport default connect(mapStateToProps)(withStyles(styles)(ScheduledTasksBox));\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { patientProgramTaskLabels } from '../../../common/constants';\nimport {\n GladRyggIcon, WorkIcon, MedicineIcon, ActivityIcon,\n} from '../../../common/image';\n\nfunction TaskLabelIcon(props) {\n const { label } = props;\n\n // TODO: Create orgConfig which controls which labels we will use?\n switch (label) {\n case patientProgramTaskLabels.gladRygg:\n return ;\n case patientProgramTaskLabels.work:\n return ;\n case patientProgramTaskLabels.medicine:\n return ;\n case patientProgramTaskLabels.activity:\n return ;\n default:\n return null;\n }\n}\n\nTaskLabelIcon.propTypes = {\n label: PropTypes.string,\n};\n\nTaskLabelIcon.defaultProps = {\n label: null,\n};\n\nexport default TaskLabelIcon;\n","import * as React from 'react';\nimport classnames from 'classnames';\n\nimport {\n Button, List, ListItem, makeStyles, ListItemText, IconButton, Tooltip, Typography,\n} from '@material-ui/core';\nimport CloseIcon from '@material-ui/icons/Close';\nimport { useState } from 'react';\nimport { useTheme } from '@material-ui/core/styles';\nimport { getTranslate } from 'react-localize-redux';\nimport { useSelector } from 'react-redux';\nimport {\n FormIcon, IntroNightIcon, PhoneCallIcon, RetreatIcon, TrainingIcon, FollowUpIcon, Retreat,\n} from '../../../common/image';\nimport { PortalModal } from '../../../common/components';\nimport { parseBoolString } from '../../../youwell-common/stringUtils';\n\nconst xxsBreakpoint = 330;\n\nconst useStyles = makeStyles(theme => ({\n webTimeline: {\n height: 200,\n background: theme.youwell.colors.white,\n borderRadius: 20,\n margin: theme.spacing(4, 0),\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n\n [theme.breakpoints.down('md')]: {\n display: 'none',\n },\n },\n mobileTimeline: {\n display: 'none',\n [theme.breakpoints.down('md')]: {\n display: 'flex',\n justifyContent: 'center',\n },\n },\n retreatIcon: {\n marginBottom: theme.spacing(1),\n width: 200,\n\n [theme.breakpoints.down('xs')]: {\n width: 150,\n },\n },\n mobileTimelinePhases: {\n display: 'flex',\n },\n mobileTimeLineItems: {\n textTransform: 'capitalize',\n fontWeight: 500,\n padding: theme.spacing(1, 2),\n display: 'flex',\n justifyContent: 'flex-start',\n\n [theme.breakpoints.down(xxsBreakpoint)]: {\n fontSize: 14,\n },\n\n },\n preparationBtn: {\n color: theme.youwell.colors.white,\n background: theme.youwell.colors.mediumGreen,\n paddingRight: theme.spacing(5),\n '&:hover': {\n background: theme.youwell.colors.mediumGreen,\n },\n },\n changeBtn: {\n color: theme.youwell.colors.white,\n background: theme.youwell.colors.green,\n paddingRight: theme.spacing(5),\n marginLeft: theme.spacing(-4),\n '&:hover': {\n background: theme.youwell.colors.green,\n },\n },\n followUpBtn: {\n color: theme.youwell.colors.white,\n background: theme.youwell.colors.blue,\n marginLeft: theme.spacing(-4),\n '&:hover': {\n background: theme.youwell.colors.blue,\n },\n },\n itemGroup: {\n display: 'flex',\n alignItems: 'center',\n\n [theme.breakpoints.down('md')]: {\n flexDirection: 'column',\n },\n\n [theme.breakpoints.down('xs')]: {\n padding: theme.spacing(0),\n },\n },\n item: {\n marginRight: theme.spacing(1),\n },\n itemTimeLinePart: {\n display: 'flex',\n alignItems: 'center',\n marginBottom: theme.spacing(2),\n height: 12,\n },\n itemDot: {\n borderRadius: 50,\n minHeight: 12,\n minWidth: 12,\n marginRight: 4,\n },\n itemLine: {\n height: 2,\n width: '90%',\n },\n itemText: {\n fontSize: 13,\n fontWeight: 500,\n color: theme.youwell.colors.white,\n padding: theme.spacing(1),\n borderRadius: 12,\n },\n blueToolTip: {\n backgroundColor: theme.youwell.colors.blue,\n color: theme.youwell.colors.white,\n borderRadius: 8,\n },\n blueTooltipArrow: {\n color: theme.youwell.colors.blue,\n },\n darkGreenToolTip: {\n backgroundColor: theme.youwell.colors.green,\n color: theme.youwell.colors.white,\n borderRadius: 8,\n },\n darkGreenTooltipArrow: {\n color: theme.youwell.colors.green,\n },\n mediumGreenToolTip: {\n backgroundColor: theme.youwell.colors.mediumGreen,\n color: theme.youwell.colors.white,\n borderRadius: 8,\n },\n mediumGreenTooltipArrow: {\n color: theme.youwell.colors.mediumGreen,\n },\n infoBoxList: {\n marginTop: theme.spacing(1),\n },\n infoBoxListItemText: {\n borderBottom: theme.youwell.borders.normal,\n borderBottomColor: 'inherit',\n marginBottom: theme.spacing(1),\n },\n closeIcon: {\n right: 0,\n top: 0,\n position: 'absolute',\n zIndex: 1,\n },\n}));\n\nconst TimelineBox = () => {\n const [phaseInfo, setPhaseInfo] = useState(null);\n\n const theme = useTheme();\n const classes = useStyles();\n const translate = useSelector(state => getTranslate(state.localize));\n const clientConfig = useSelector(state => state.auth.clientConfig);\n\n const mobileTimelineInfo = {\n preparation: { phases: ['clarification', 'preparation'], color: theme.youwell.colors.mediumGreen },\n change: { phases: ['introNight', 'phoneCall1', 'retreat', 'phoneCall2'], color: theme.youwell.colors.green },\n followUp: { phases: ['digitalFollowup'], color: theme.youwell.colors.blue },\n };\n const tooltipClassNames = {\n blue: { tooltip: classes.blueToolTip, arrow: classes.blueTooltipArrow },\n darkGreen: { tooltip: classes.darkGreenToolTip, arrow: classes.darkGreenTooltipArrow },\n mediumGreen: { tooltip: classes.mediumGreenToolTip, arrow: classes.mediumGreenTooltipArrow },\n };\n\n const webTimelineItems = [\n {\n name: 'clarification', color: theme.youwell.colors.blue, tooltipClasses: tooltipClassNames.blue, icon: ,\n },\n {\n name: 'preparation', color: theme.youwell.colors.blue, tooltipClasses: tooltipClassNames.blue, icon: ,\n },\n {\n name: 'introNight', color: theme.youwell.colors.green, tooltipClasses: tooltipClassNames.darkGreen, icon: ,\n },\n {\n name: 'phoneCall1', color: theme.youwell.colors.green, tooltipClasses: tooltipClassNames.darkGreen, icon: ,\n },\n {\n name: 'retreat', color: theme.youwell.colors.green, tooltipClasses: tooltipClassNames.darkGreen, icon: ,\n },\n {\n name: 'phoneCall2', color: theme.youwell.colors.green, tooltipClasses: tooltipClassNames.darkGreen, icon: ,\n },\n {\n name: 'digitalFollowup', color: theme.youwell.colors.blue, tooltipClasses: tooltipClassNames.blue, icon: ,\n },\n ];\n\n if (parseBoolString(clientConfig.customs?.timeline_rygg)) {\n webTimelineItems.splice(6, 0, {\n id: 'gladRyggTraining', name: 'gladRyggTraining', color: theme.youwell.colors.mediumGreen, tooltipClasses: tooltipClassNames.mediumGreen, icon: ,\n });\n mobileTimelineInfo.followUp.phases = ['gladRyggTraining', 'digitalFollowup'];\n }\n\n if (parseBoolString(clientConfig.customs?.timeline_angst)) {\n // Removing introduction night.\n webTimelineItems.splice(2, 1);\n mobileTimelineInfo.change.phases.splice(0, 1);\n\n // Changing \"Forundersøkelse\" => \"Utredningssamtale\".\n webTimelineItems.splice(1, 1, {\n name: 'examinationInterview', color: theme.youwell.colors.blue, tooltipClasses: tooltipClassNames.blue, icon: ,\n });\n mobileTimelineInfo.examinationInterview = { phases: ['clarification', 'examinationInterview'], color: theme.youwell.colors.mediumGreen }\n delete mobileTimelineInfo.preparation;\n }\n\n return (\n <>\n
\n
\n {webTimelineItems.map(item => (\n \n
\n {item.icon}\n
\n
\n
\n
\n \n {translate(`timeline.${item.name}.shortLabel`)}\n \n
\n \n ))}\n
\n
\n\n
\n
\n \n
\n {mobileTimelineInfo?.preparation && (\n \n )}\n {mobileTimelineInfo?.examinationInterview && (\n \n )}\n \n \n
\n
\n
\n\n 0}\n onClose={() => setPhaseInfo(null)}\n >\n setPhaseInfo(null)} className={classes.closeIcon}>\n \n \n \n {phaseInfo?.phases?.map(phase => (\n \n \n \n ))}\n \n \n \n );\n};\n\nexport default TimelineBox;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport classnames from 'classnames';\n\nimport { Link } from 'react-router-dom';\n\nimport {\n withStyles, Typography,\n} from '@material-ui/core';\n\nimport urls from '../../../app/urls';\nimport { patientProgramElementGroups } from '../../../common/constants';\n\nconst styles = theme => ({\n root: {\n background: theme.palette.grey[100],\n padding: theme.spacing(2),\n },\n topContainer: {\n },\n title: {\n marginBottom: theme.spacing(2),\n fontWeight: 500,\n },\n description: {\n marginBottom: theme.spacing(4),\n },\n content: {\n },\n\n tasks: {\n padding: theme.spacing(2),\n background: theme.palette.grey[100],\n minHeight: 300,\n },\n moduleTitle: {\n marginTop: theme.spacing(2),\n marginBottom: theme.spacing(1),\n borderBottom: theme.youwell.borders.dim,\n fontWeight: 500,\n },\n taskName: {\n paddingBottom: theme.spacing(0.5),\n marginLeft: theme.spacing(2),\n marginBottom: theme.spacing(0.5),\n borderBottom: theme.youwell.borders.dim,\n },\n\n\n});\n\nclass UnfinishedTasksBox extends React.Component {\n render() {\n const {\n classes, translate, className, elements,\n } = this.props;\n\n if (!elements || elements.length === 0) {\n return null;\n }\n\n return (\n
\n
\n \n {translate('dashboard.unfinishedTasks')}\n \n \n {translate('dashboard.unfinishedTasksDescription')}\n \n
\n
\n {elements.map(element => (\n
\n \n \n {`${this.props.translate('favourites.module')}: ${element.moduleName}`}\n \n \n {element.tasks.map(task => (\n \n \n {task.name}\n \n \n ))}\n
\n ))}\n
\n
\n );\n }\n}\n\nUnfinishedTasksBox.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n elements: PropTypes.array.isRequired,\n className: PropTypes.string,\n};\n\nUnfinishedTasksBox.defaultProps = {\n className: null,\n};\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n});\n\nexport default connect(mapStateToProps)(withStyles(styles)(UnfinishedTasksBox));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport { bindActionCreators } from 'redux';\nimport classnames from 'classnames';\n\nimport {\n Button, Link, Typography,\n} from '@material-ui/core';\n\nimport {\n validateRequired, validateAllFields, validateFieldLecagy_TOBEREMOVED, checkHasErrors,\n} from '../../youwell-common/validationUtils';\n\nimport * as UserStore from '../../app/store/UserStore';\nimport { timestamp } from '../../youwell-common/dateUtils';\nimport { HtmlContent, Image, PollData } from '../../youwell-common/components';\nimport { FileUpload, PageLayout, PortalModal, TextEditor } from '../../common/components';\nimport { getBreadCrumb } from '../../common/breadcrumbUtil';\nimport apiUrls from '../../youwell-common/apiUrls';\nimport { fileTypes } from '../../youwell-common/constants';\n\nconst POLLING_INTERVAL_IN_MINUTES = 1;\nconst NUMBER_OF_MESSAGES_TO_LOAD = 20;\n\nconst styles = theme => ({\n root: {\n height: '100%',\n },\n chats: {\n height: '50%',\n overflowY: 'scroll',\n display: 'flex',\n flexDirection: 'column-reverse',\n margin: theme.spacing(1, 1, 0, 0),\n },\n reverseScrollContainer: {\n display: 'flex',\n flexDirection: 'column',\n padding: theme.spacing(2, 1, 2, 2),\n },\n listContainer: {\n display: 'flex',\n flexDirection: 'column-reverse',\n },\n actions: {\n display: 'block',\n marginTop: theme.spacing(2),\n },\n textInput: {\n background: theme.youwell.colors.inputBackground,\n },\n sendLine: {\n marginTop: theme.spacing(1),\n display: 'flex',\n justifyContent: 'flex-end',\n\n [theme.breakpoints.down('xs')]: {\n flexWrap: 'wrap',\n },\n },\n attachFile: {\n marginRight: theme.spacing(2),\n\n [theme.breakpoints.down('xs')]: {\n marginRight: 0,\n marginBottom: theme.spacing(1),\n width: '100%',\n },\n },\n message: {\n marginBottom: theme.spacing(2),\n\n '&$fromOther+&$fromPatient': {\n marginBottom: theme.spacing(3),\n },\n '&$fromPatient+&$fromOther': {\n marginBottom: theme.spacing(3),\n },\n },\n textLine: {\n display: 'flex',\n alignItems: 'center',\n },\n fromPatient: {},\n fromOther: {},\n lineFill: {\n flex: '1 0 20%',\n },\n textBox: {\n padding: theme.spacing(2),\n borderRadius: theme.youwell.shapes.borderRadius,\n\n '$fromPatient &': {\n background: theme.youwell.colors.primary,\n color: theme.youwell.colors.white,\n },\n '$fromOther &': {\n background: theme.youwell.colors.white,\n color: theme.youwell.colors.primary,\n },\n },\n date: {\n marginRight: theme.spacing(1),\n marginLeft: theme.spacing(1),\n },\n image: {\n width: '100%',\n },\n attachedFileButton: {\n textTransform: 'none',\n textDecoration: 'underline',\n borderRadius: 0,\n },\n});\n\nconst defaultState = {\n text: '',\n attachmentFileId: '',\n showAttachedFile: null,\n};\n\nconst validators = {\n text: validateRequired,\n};\n\nconst createInitialState = () => ({\n ...defaultState,\n validationErrors: {},\n});\n\nclass MessageList extends React.Component {\n constructor(props) {\n super(props);\n this.bottomRef = React.createRef();\n }\n\n state = createInitialState();\n\n componentDidMount() {\n this.markAsReadIfAny();\n }\n\n componentDidUpdate(prevProps) {\n if (this.props.messagesTimestamp !== prevProps.messagesTimestamp) {\n this.markAsReadIfAny();\n\n setTimeout(() => {\n document.getElementById('scrollList').scroll({\n top: document.getElementById('scrollList').scrollHeight,\n behavior: 'smooth',\n });\n }, 200);\n }\n }\n\n getMessagesInitial = () => {\n this.props.checkForNewMessages({\n requestParams: {\n count: NUMBER_OF_MESSAGES_TO_LOAD,\n },\n });\n }\n\n checkForMessages = () => {\n this.props.checkForNewMessages({\n background: true,\n requestParams: {\n timeStamp: this.props.messagesTimestamp,\n },\n });\n }\n\n fetchMoreMessages = () => {\n this.props.checkForNewMessages({\n requestParams: {\n start: this.props.messageList.length,\n count: NUMBER_OF_MESSAGES_TO_LOAD,\n },\n });\n }\n\n markAsReadIfAny = () => {\n if (this.props.messageList && this.props.messageList.filter(d => !d.patientReadTime).length > 0) {\n this.props.markMessagesAsRead(this.props.messagesTimestamp, {\n background: true,\n reducerParams: { timestamp: this.props.messagesTimestamp },\n });\n }\n }\n\n handleChange = name => (event) => {\n this.setState({ [name]: event.target.value }, () => {\n if (validators[name]) {\n const validationErrors = validateFieldLecagy_TOBEREMOVED(this.state, validators[name], name); // eslint-disable-line react/no-access-state-in-setstate\n this.setState({ validationErrors });\n }\n });\n }\n\n sendMessage = () => {\n const validationErrors = validateAllFields(this.state, validators);\n\n if (!checkHasErrors(validationErrors)) {\n const data = {\n patientId: this.props.profile.id,\n text: this.state.text,\n attachedFileId: this.state.attachmentFileId,\n checkTimeStamp: this.props.messagesTimestamp,\n };\n\n this.props.insertMessage(data, {\n callback: () => {\n this.setState(createInitialState());\n },\n });\n } else {\n this.setState({ validationErrors });\n }\n }\n\n onSelectFile = (file) => {\n this.setState({ attachmentFileId: file?.id });\n }\n\n showAttachedFile = attachedFile => (event) => {\n if (attachedFile?.type === fileTypes.image) {\n this.setState({ showAttachedFile: attachedFile });\n event.preventDefault();\n } else {\n this.setState({ showAttachedFile: null });\n }\n }\n\n render() {\n const {\n classes, translate, messageList, profile, clientConfig, canLoadMoreMessages, appConfig,\n } = this.props;\n\n const contentHeight = this.bottomRef.current ? this.bottomRef.current?.getBoundingClientRect()?.height : 0;\n\n if (!profile) {\n return null;\n }\n\n return (\n \n
\n \n
\n {/* Include additional div to avoid reversing content inside reverse-scroll container */}\n
\n {canLoadMoreMessages && (\n \n {translate('chat.fetchOlderMessages')}\n \n )}\n\n
\n {messageList?.map(item => (\n
\n {item.attachedFileId && (\n \n {`${translate('chat.attachedFile')}: ${translate(`filetypes.${item.attachedFileType}`)}`}\n \n )}\n\n {!item.senderIsPatient && (\n \n {item.senderName}\n \n )}\n\n
\n {item.senderIsPatient && (\n \n
\n \n {timestamp(item.created)}\n \n \n )}\n \n\n {!item.senderIsPatient && (\n <>\n \n {timestamp(item.created)}\n \n
\n \n )}\n\n
\n
\n ))}\n
\n
\n
\n\n \n {this.state.showAttachedFile && (\n
\n {this.state.showAttachedFile.type === fileTypes.image ? (\n \n ) : (\n \n {translate('chat.downloadFile')}\n \n )}\n
\n )}\n
\n\n
\n \n {translate('chat.sendMessageToTherapist')}\n \n\n \n\n
\n {clientConfig.appSetup.features.allowFileUpload && (\n \n )}\n \n
\n
\n
\n \n );\n }\n}\n\nMessageList.propTypes = {\n classes: PropTypes.object.isRequired,\n clientConfig: PropTypes.object.isRequired,\n profile: PropTypes.object,\n translate: PropTypes.func.isRequired,\n checkForNewMessages: PropTypes.func.isRequired,\n markMessagesAsRead: PropTypes.func.isRequired,\n messageList: PropTypes.array,\n insertMessage: PropTypes.func.isRequired,\n messagesTimestamp: PropTypes.string,\n canLoadMoreMessages: PropTypes.bool.isRequired,\n appConfig: PropTypes.object.isRequired,\n};\n\nMessageList.defaultProps = {\n messageList: null,\n profile: null,\n messagesTimestamp: null,\n};\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n profile: state.auth.profileData,\n messageList: state.user.messageList,\n canLoadMoreMessages: !state.user.allMessagesFetched,\n clientConfig: state.auth.clientConfig,\n messagesTimestamp: state.user.messagesTimestamp,\n appConfig: state.pageSettings.appConfig,\n});\n\nconst mapDispatchToProps = dispatch => ({\n ...bindActionCreators(UserStore.actionCreators, dispatch),\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(withStyles(styles)(MessageList));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport {\n Route, Switch,\n} from 'react-router-dom';\nimport { withStyles } from '@material-ui/core/styles';\nimport { Typography } from '@material-ui/core';\n\nimport Login from './components/Login';\nimport Logout from './components/Logout';\nimport ResetPassword from './components/ResetPassword';\nimport ForgotPassword from './components/ForgotPassword';\nimport urls from '../../app/urls';\nimport { scrollerWidth } from '../../app/style/theme';\nimport { heightBreak } from './components/constants';\nimport { Image, ErrorBoundary } from '../../youwell-common/components';\nimport SelectOrg from './components/SelectOrg';\nimport InsideRedirect from './InsideRedirect';\n\nconst topPadding = 200;\nconst topPaddingHeightBreak = 280;\n\nconst styles = theme => ({\n root: {\n position: 'relative',\n margin: '0 auto',\n height: '100%',\n width: '100%',\n border: theme.youwell.borders.dim,\n background: theme.palette.background.default,\n overflow: 'hidden',\n\n [theme.breakpoints.down('xs')]: {\n border: 'none',\n height: 'auto',\n overflow: 'auto',\n },\n\n [theme.breakpoints.up('lg')]: {\n width: theme.breakpoints.values.lg - scrollerWidth,\n },\n },\n header: {\n height: topPadding,\n background: theme.palette.background.inner,\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'flex-end',\n paddingBottom: theme.spacing(5),\n\n [heightBreak]: {\n height: topPaddingHeightBreak,\n },\n\n [theme.breakpoints.down('xs')]: {\n height: 'auto',\n paddingBottom: 0,\n },\n\n },\n titleLogo: {\n maxHeight: 180,\n maxWidth: 500,\n\n [theme.breakpoints.down('xs')]: {\n marginTop: theme.spacing(4),\n maxHeight: 100,\n maxWidth: '90%',\n },\n },\n appTitle: {\n fontWeight: theme.typography.fontWeightMedium,\n paddingTop: 100,\n color: theme.palette.primary.main,\n\n [theme.breakpoints.down('xs')]: {\n paddingTop: 50,\n },\n },\n content: {\n width: 500,\n position: 'absolute',\n zIndex: 10,\n top: topPadding,\n left: '50%',\n backgroundImage: 'linear-gradient(to bottom, white 30%, rgba(255,255,255,0))',\n background: theme.palette.common.white,\n transform: 'translate(-50%, 0)',\n border: theme.youwell.borders.dim,\n borderRadius: 24,\n padding: theme.spacing(4),\n boxShadow: theme.shadows[5],\n minHeight: 300,\n maxHeight: `calc(100vh - ${topPadding}px - 50px)`,\n overflowY: 'auto',\n\n [heightBreak]: {\n maxHeight: `calc(100vh - ${topPaddingHeightBreak}px - 50px)`,\n top: topPaddingHeightBreak,\n },\n\n [theme.breakpoints.down('xs')]: {\n position: 'relative',\n width: '100%',\n left: 0,\n top: 0,\n transform: 'none',\n border: 0,\n borderRadius: 0,\n padding: theme.spacing(2),\n boxShadow: 'none',\n minHeight: 'auto',\n maxHeight: 'none',\n overflowY: 'inherit',\n },\n },\n});\n\nclass Index extends React.Component {\n render() {\n const { classes, appConfig } = this.props;\n\n return (\n
\n \n
\n {appConfig.titleLogo ? (\n \n ) : (\n \n {appConfig.appName}\n \n )}\n
\n
\n\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n {appConfig.appError}\n \n \n
\n
\n );\n }\n}\n\nIndex.propTypes = {\n classes: PropTypes.object.isRequired,\n appConfig: PropTypes.object.isRequired,\n};\n\nconst mapStateToProps = state => ({\n appConfig: state.pageSettings.appConfig,\n});\n\nexport default connect(mapStateToProps)(withStyles(styles)(Index));\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar urls_1 = __importDefault(require(\"../../app/urls\"));\nvar store_1 = require(\"../../app/store\");\nvar youwell_common_1 = require(\"../../youwell-common\");\nvar Auth_1 = require(\"../../youwell-common/Auth\");\nvar components_1 = require(\"../../youwell-common/components\");\nvar LoadProfileData_1 = __importDefault(require(\"../inside/components/LoadProfileData\"));\nvar InsideRedirect = function () {\n var appConfig = (0, store_1.useYouwellSelector)(function (state) { return state.pageSettings.appConfig; });\n var profileData = (0, store_1.useYouwellSelector)(function (state) { return state.auth.profileData; });\n var hasMoreOrganizations = (profileData === null || profileData === void 0 ? void 0 : profileData.connectedOrganizations) && profileData.connectedOrganizations.length > 1;\n if (!youwell_common_1.Auth.isUserAuthenticated()) {\n return (React.createElement(react_router_dom_1.Redirect, { to: { pathname: urls_1.default.login } }));\n }\n if (hasMoreOrganizations && !(appConfig === null || appConfig === void 0 ? void 0 : appConfig.orgId)) {\n youwell_common_1.Auth.setLoginInfo(youwell_common_1.Auth.getLoginLevel(), youwell_common_1.Auth.getSessionLifetime(), Auth_1.authTypes.orgSelect);\n return (React.createElement(react_router_dom_1.Redirect, { to: \"\".concat(urls_1.default.login, \"/\").concat(urls_1.default.loginParts.selectOrg, \"/first\") }));\n }\n if (profileData) {\n return (React.createElement(react_router_dom_1.Redirect, { to: urls_1.default.inside.home }));\n }\n if (!profileData) {\n return (React.createElement(LoadProfileData_1.default, null));\n }\n return React.createElement(components_1.Loading, null);\n};\nexports.default = InsideRedirect;\n","import React, { useState, useEffect } from 'react';\r\nimport { connect } from 'react-redux';\r\nimport { withRouter, Link } from 'react-router-dom';\r\nimport PropTypes from 'prop-types';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport {\r\n Button, Typography, TextField, InputAdornment, CircularProgress,\r\n} from '@material-ui/core';\r\nimport { bindActionCreators } from 'redux';\r\nimport { getTranslate } from 'react-localize-redux';\r\nimport * as AuthStore from '../../../app/store/AuthStore';\r\nimport urls from '../../../app/urls';\r\nimport { checkHasErrors, validateAllFields, validateEmail, validateRequired } from '../../../youwell-common/validationUtils';\r\n\r\nconst styles = theme => ({\r\n login_container: {\r\n padding: theme.spacing(4),\r\n\r\n [theme.breakpoints.down('xs')]: {\r\n padding: theme.spacing(2),\r\n },\r\n },\r\n\r\n loginHeader: {\r\n },\r\n\r\n loginBox: {\r\n margin: theme.spacing(2, 0),\r\n position: 'relative',\r\n },\r\n\r\n loginDescription: {\r\n marginTop: theme.spacing(3),\r\n marginBottom: theme.spacing(3),\r\n },\r\n\r\n textField: {\r\n marginBottom: theme.spacing(3),\r\n background: theme.palette.grey[50],\r\n },\r\n loading: {\r\n position: 'absolute',\r\n left: '50%',\r\n top: '50%',\r\n transform: 'translate(-50%, 0)',\r\n },\r\n actions: {\r\n marginTop: theme.spacing(4),\r\n display: 'flex',\r\n justifyContent: 'flex-end',\r\n alignItems: 'center',\r\n },\r\n sendButton: {\r\n marginLeft: theme.spacing(3),\r\n width: 200,\r\n padding: theme.spacing(1),\r\n },\r\n infoContainer: {\r\n marginTop: theme.spacing(4),\r\n },\r\n completedMessageContainer: {\r\n marginTop: theme.spacing(2),\r\n marginBottom: theme.spacing(4),\r\n background: theme.palette.grey[100],\r\n color: theme.youwell.colors.secondary,\r\n padding: theme.spacing(2),\r\n borderRadius: theme.youwell.shapes.borderRadius,\r\n border: theme.youwell.borders.dim,\r\n },\r\n homeLink: {\r\n marginTop: theme.spacing(2),\r\n },\r\n});\r\n\r\nconst validators = {\r\n email: [validateEmail, validateRequired],\r\n};\r\n\r\nconst ForgotPassword = ({\r\n translate, forgotPassword, loading, errorMessage, classes,\r\n}) => {\r\n const [{ email, submitted }, setState] = useState({ email: '', submitted: false });\r\n const [validationErrors, setValidation] = useState({});\r\n const [hasClicked, setClicked] = useState(false);\r\n\r\n useEffect(() => {\r\n if (!hasClicked) {\r\n return;\r\n }\r\n\r\n setValidation(validateAllFields({ email }, validators));\r\n }, [email, hasClicked]);\r\n\r\n const handleForgotPassword = (e) => {\r\n e.preventDefault();\r\n setClicked(true);\r\n const errors = validateAllFields({ email }, validators);\r\n\r\n if (!checkHasErrors(errors)) {\r\n setValidation(errors);\r\n forgotPassword(email, {\r\n callback: () => {\r\n setState({\r\n submitted: true,\r\n });\r\n },\r\n });\r\n } else {\r\n setValidation(errors);\r\n }\r\n };\r\n\r\n const completed = submitted && !loading && !errorMessage;\r\n\r\n return (\r\n
\r\n
\r\n {!completed && (\r\n \r\n {translate('login.forgotPassword')}\r\n \r\n )}\r\n\r\n
\r\n\r\n {completed ? (\r\n <>\r\n
\r\n \r\n {translate('login.sentForgotPasswordEmail')}\r\n \r\n
\r\n \r\n \r\n {translate('login.backToFrontPage')}\r\n \r\n \r\n \r\n ) : (\r\n <>\r\n setState({ email: e.target.value })}\r\n variant=\"outlined\"\r\n fullWidth\r\n InputProps={{\r\n startAdornment: {`${translate('email')}: `},\r\n }}\r\n error={!!validationErrors.email}\r\n helperText={validationErrors.email ? translate(validationErrors.email) : null}\r\n />\r\n\r\n {loading && (\r\n
\r\n \r\n
\r\n )}\r\n\r\n\r\n
\r\n \r\n \r\n {translate('cancel')}\r\n \r\n \r\n \r\n
\r\n \r\n )}\r\n\r\n
\r\n {errorMessage && (\r\n \r\n {translate('login.forgotPasswordError')}\r\n \r\n )}\r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nForgotPassword.propTypes = {\r\n classes: PropTypes.object.isRequired,\r\n translate: PropTypes.func.isRequired,\r\n loading: PropTypes.bool.isRequired,\r\n forgotPassword: PropTypes.func.isRequired,\r\n errorMessage: PropTypes.string,\r\n};\r\n\r\nForgotPassword.defaultProps = {\r\n errorMessage: null,\r\n};\r\n\r\nconst mapStateToProps = state => ({\r\n translate: getTranslate(state.localize),\r\n loading: state.auth.loading,\r\n sentForgotPasswordEmail: state.auth.sentForgotPasswordEmail,\r\n errorMessage: [].concat(state.auth.errors).filter(val => val).join('
'),\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n ...bindActionCreators(AuthStore.actionCreators, dispatch),\r\n});\r\n\r\nexport default withRouter(\r\n connect(\r\n mapStateToProps,\r\n mapDispatchToProps,\r\n )(withStyles(styles)(ForgotPassword)),\r\n);\r\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar core_1 = require(\"@material-ui/core\");\nvar AuthStore = __importStar(require(\"../../../app/store/AuthStore\"));\nvar ProgramStore = __importStar(require(\"../../../app/store/ProgramStore\"));\nvar Auth_1 = __importStar(require(\"../../../youwell-common/Auth\"));\nvar urls_1 = __importDefault(require(\"../../../app/urls\"));\nvar apiUrls_1 = __importDefault(require(\"../../../youwell-common/apiUrls\"));\nvar constants_1 = require(\"./constants\");\nvar constants_2 = require(\"../../../youwell-common/constants\");\nvar arrayUtils_1 = require(\"../../../youwell-common/arrayUtils\");\nvar dateUtils_1 = require(\"../../../youwell-common/dateUtils\");\nvar store_1 = require(\"../../../app/store\");\nvar translate_1 = __importDefault(require(\"../../../app/localization/translate\"));\nvar externalUserService_1 = require(\"../../../app/services/externalUserService\");\nvar TABS = __assign(__assign({}, constants_2.loginTypes), { serverLogin: 'serverlogin' });\nvar useStyles = (0, core_1.makeStyles)(function (theme) {\n var _a;\n return ({\n root: {},\n tab: {\n minWidth: 80,\n },\n login_container: (_a = {\n padding: theme.spacing(2, 4, 0)\n },\n _a[constants_1.heightBreak] = {\n padding: theme.spacing(4),\n },\n _a[theme.breakpoints.down('xs')] = {\n padding: theme.spacing(2),\n },\n _a),\n loginHeader: {},\n loginBox: {\n margin: theme.spacing(2, 0),\n position: 'relative',\n },\n loginDescription: {\n color: theme.palette.grey[700],\n marginTop: theme.spacing(3),\n marginBottom: theme.spacing(3),\n },\n textField: {\n marginBottom: theme.spacing(3),\n background: theme.palette.grey[50],\n },\n loginButton: {\n marginTop: theme.spacing(4),\n padding: theme.spacing(1),\n },\n forgotPassword: {\n marginTop: theme.spacing(1),\n marginRight: theme.spacing(1),\n },\n loading: {\n position: 'absolute',\n left: '50%',\n top: '50%',\n transform: 'translate(-50%, 0)',\n },\n infoContainer: {\n marginTop: theme.spacing(4),\n color: theme.youwell.colors.secondary,\n },\n backLinkContainer: {\n marginTop: theme.spacing(6),\n display: 'flex',\n justifyContent: 'flex-end',\n },\n backLink: {\n textDecoration: 'underline',\n },\n });\n}, { name: 'Login' });\nvar Login = function () {\n var _a, _b, _c;\n var classes = useStyles();\n var params = (0, react_router_dom_1.useParams)();\n var dispatch = (0, store_1.useYouwellDispatch)();\n var translate = (0, translate_1.default)();\n var loading = (0, store_1.useYouwellSelector)(function (state) { return state.auth.loading; });\n var errorMessage = (0, store_1.useYouwellSelector)(function (state) { return [].concat(state.auth.errors).filter(function (val) { return val; }).join('
'); });\n var appConfig = (0, store_1.useYouwellSelector)(function (state) { return state.pageSettings.appConfig; });\n var logoutReason = (0, store_1.useYouwellSelector)(function (state) { return state.auth.logoutReason; });\n var redirect = params.redirect ? decodeURIComponent(params.redirect) : urls_1.default.inside.home;\n var redirectLogin = urls_1.default.loginRedirect;\n var externalRouteMatch = (0, react_router_dom_1.useRouteMatch)(\"\".concat(urls_1.default.login, \"/\").concat(urls_1.default.loginParts.external));\n var _d = React.useState(''), email = _d[0], setEmail = _d[1];\n var _e = React.useState(''), password = _e[0], setPassword = _e[1];\n var _f = React.useState((_b = (_a = appConfig === null || appConfig === void 0 ? void 0 : appConfig.allowedLogins) === null || _a === void 0 ? void 0 : _a[0]) !== null && _b !== void 0 ? _b : TABS.password), tab = _f[0], setTab = _f[1];\n var _g = React.useState(false), isLoggingIn = _g[0], setIsLoggingIn = _g[1];\n var login = function () {\n setIsLoggingIn(true);\n dispatch(AuthStore.actionCreators.login({\n email: email,\n password: password,\n orgId: appConfig === null || appConfig === void 0 ? void 0 : appConfig.orgId,\n }, { redirect: redirectLogin }));\n };\n var startNewSession = function () {\n setIsLoggingIn(true);\n dispatch(AuthStore.actionCreators.startNewSession({\n orgId: appConfig.orgId,\n programId: appConfig.startProgramId,\n programStartDate: (0, dateUtils_1.today)(),\n }, { redirect: redirect }));\n };\n var allowedLogins = (0, arrayUtils_1.toBoolLookup)(appConfig.allowedLogins);\n var isLoggedIn = Auth_1.default.isUserAuthenticated();\n React.useEffect(function () {\n Auth_1.default.setStorageProviderByLoginType(tab);\n }, [tab]);\n React.useEffect(function () {\n if (isLoggingIn) {\n return;\n }\n if (params.accessKey) {\n Auth_1.default.setStorageProviderByLoginType(constants_2.loginTypes.password);\n setIsLoggingIn(true);\n dispatch(AuthStore.actionCreators.loginWithAccessKey({\n key: params.accessKey,\n orgId: appConfig === null || appConfig === void 0 ? void 0 : appConfig.orgId,\n }, { redirect: redirectLogin }));\n }\n else if (params.code) {\n Auth_1.default.setStorageProviderByLoginType(constants_2.loginTypes.idPorten);\n setIsLoggingIn(true);\n var loginState = {\n code: params.code,\n provider: params.provider,\n state: params.state,\n orgId: appConfig === null || appConfig === void 0 ? void 0 : appConfig.orgId,\n appParameters: params.appParameters,\n day: (0, dateUtils_1.today)(),\n };\n if (params.appParameters === 'ext') {\n (0, externalUserService_1.loginExternalUser)(dispatch, loginState, { redirect: urls_1.default.external.home });\n }\n else {\n dispatch(AuthStore.actionCreators.loginWithCode(loginState, { redirect: redirectLogin }));\n }\n }\n else if (isLoggedIn) {\n var loggedInType = Auth_1.default.getLoginType();\n switch (loggedInType) {\n case Auth_1.authTypes.user: {\n setIsLoggingIn(true);\n dispatch(AuthStore.actionCreators.getUserProfile({ redirect: redirect }));\n break;\n }\n case Auth_1.authTypes.external: {\n var extRedirect = params.redirect && params.redirect.startsWith(urls_1.default.external.home) ? decodeURIComponent(params.redirect) : urls_1.default.external.home;\n dispatch(ProgramStore.actionCreators.redirect(extRedirect));\n break;\n }\n case Auth_1.authTypes.orgSelect: {\n dispatch(ProgramStore.actionCreators.redirect(\"\".concat(urls_1.default.login, \"/\").concat(urls_1.default.loginParts.selectOrg)));\n break;\n }\n case Auth_1.authTypes.public:\n default: {\n dispatch(AuthStore.actionCreators.logout(constants_2.logoutReasons.invalidState));\n }\n }\n }\n }, [appConfig === null || appConfig === void 0 ? void 0 : appConfig.orgId, dispatch, isLoggedIn, isLoggingIn, params, params.accessKey, params.code, params.provider, params.state, redirect, redirectLogin]);\n var onEnter = function (action) { return function (e) {\n if (e.key === 'Enter' && email && password) {\n action();\n }\n }; };\n var appLoginParameters = externalRouteMatch ? '?appParameters=ext' : '';\n var currentTab = isLoggedIn || params.code || params.accessKey ? TABS.serverLogin : tab;\n var hasMultipleLoginOptions = ((_c = appConfig.allowedLogins) === null || _c === void 0 ? void 0 : _c.length) > 1;\n return (React.createElement(\"div\", { className: classes.root },\n React.createElement(\"div\", { className: classes.login_container },\n hasMultipleLoginOptions && currentTab !== TABS.serverLogin && (React.createElement(core_1.Tabs, { className: classes.tabs, value: currentTab, onChange: function (e, newTab) { return setTab(newTab); }, variant: \"fullWidth\" },\n allowedLogins[constants_2.loginTypes.password] && React.createElement(core_1.Tab, { classes: { root: classes.tab }, label: translate('email'), value: TABS.password }),\n allowedLogins[constants_2.loginTypes.idPorten] && React.createElement(core_1.Tab, { classes: { root: classes.tab }, label: \"IDPorten\", value: TABS.idPorten }),\n allowedLogins[constants_2.loginTypes.selfStart] && React.createElement(core_1.Tab, { classes: { root: classes.tab }, label: translate('start'), value: TABS.selfStart }))),\n React.createElement(\"div\", { className: classes.loginBox },\n loading && (React.createElement(\"div\", { className: classes.loading },\n React.createElement(core_1.CircularProgress, null))),\n currentTab === TABS.password && (React.createElement(React.Fragment, null,\n React.createElement(core_1.TextField, { id: \"email\", type: \"email\", className: classes.textField, value: email, onChange: function (e) { return setEmail(e.target.value); }, variant: \"outlined\", fullWidth: true, InputProps: {\n onKeyPress: onEnter(login),\n startAdornment: React.createElement(core_1.InputAdornment, { disablePointerEvents: true, position: \"start\" }, \"\".concat(translate('email'), \": \")),\n } }),\n React.createElement(core_1.TextField, { id: \"password\", type: \"password\", className: classes.textField, value: password, onChange: function (e) { return setPassword(e.target.value); }, variant: \"outlined\", fullWidth: true, InputProps: {\n onKeyPress: onEnter(login),\n startAdornment: React.createElement(core_1.InputAdornment, { disablePointerEvents: true, position: \"start\" }, \"\".concat(translate('password'), \": \")),\n } }),\n React.createElement(core_1.Button, { onClick: login, variant: \"contained\", fullWidth: true, color: \"primary\", className: classes.loginButton, disabled: loading }, translate('login.login')),\n React.createElement(react_router_dom_1.Link, { to: \"\".concat(urls_1.default.login, \"/\").concat(urls_1.default.loginParts.forgotPassword) },\n React.createElement(core_1.Typography, { variant: \"body2\", align: \"right\", className: classes.forgotPassword, display: \"block\" }, translate('login.forgotPassword'))))),\n currentTab === TABS.idPorten && (React.createElement(React.Fragment, null,\n React.createElement(core_1.Typography, { color: \"inherit\", className: classes.loginDescription }, translate('login.idportenDescription', { appname: appConfig.appName })),\n React.createElement(core_1.Button, { variant: \"contained\", fullWidth: true, color: \"primary\", className: classes.loginButton, href: \"\".concat(apiUrls_1.default.baseUrl, \"/\").concat(apiUrls_1.default.route.oauth, \"/login/\").concat(constants_2.IdProviders.idPorten, \"/\").concat(appLoginParameters), disabled: loading }, translate('login.loginWithIdporten')))),\n currentTab === TABS.selfStart && (React.createElement(React.Fragment, null,\n React.createElement(core_1.Typography, { color: \"inherit\", className: classes.loginDescription }, translate('login.selfStartDescription', { appname: appConfig.appName })),\n React.createElement(core_1.Button, { onClick: startNewSession, variant: \"contained\", fullWidth: true, color: \"primary\", className: classes.loginButton, disabled: loading }, translate('login.start')))),\n currentTab === TABS.serverLogin && (React.createElement(React.Fragment, null,\n React.createElement(core_1.Typography, { color: \"inherit\", className: classes.loginDescription }, translate('login.loginInProgress')))),\n React.createElement(\"div\", { className: classes.infoContainer },\n logoutReason && (React.createElement(core_1.Typography, { color: \"inherit\", gutterBottom: true }, translate(\"errors.\".concat(logoutReason), undefined, { onMissingTranslation: function () { return translate('login.youHaveBeenLoggedOut'); } }))),\n errorMessage && (React.createElement(React.Fragment, null,\n React.createElement(core_1.Typography, { color: \"error\", align: \"center\", display: \"block\" }, errorMessage === '1065' && currentTab === TABS.serverLogin\n ? translate('login.serverLoginFailed')\n : translate(\"errors.\".concat(errorMessage), undefined, { onMissingTranslation: function () { return \"System error (\".concat(errorMessage, \")\"); } })))),\n currentTab === TABS.serverLogin && (React.createElement(\"div\", { className: classes.backLinkContainer },\n React.createElement(\"a\", { href: urls_1.default.logout, className: classes.backLink }, translate('login.backToFrontPage')))))))));\n};\nexports.default = Login;\n","import * as React from 'react';\nimport { connect } from 'react-redux';\nimport { withRouter } from 'react-router-dom';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { bindActionCreators } from 'redux';\nimport { getTranslate } from 'react-localize-redux';\n\nimport Loading from '../../../youwell-common/components/Loading';\nimport * as AuthStore from '../../../app/store/AuthStore';\n\nconst styles = () => ({\n root: {\n minHeight: 300,\n },\n});\n\nclass Logout extends React.Component {\n componentDidMount() {\n this.props.logout(this.props.match.params.reason);\n }\n\n render() {\n const { classes, translate } = this.props;\n\n return (\n
\n \n
\n );\n }\n}\n\nLogout.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n logout: PropTypes.func.isRequired,\n match: PropTypes.shape({\n params: PropTypes.shape({\n reason: PropTypes.string,\n }),\n }).isRequired,\n};\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n});\n\nconst mapDispatchToProps = dispatch => ({\n ...bindActionCreators(AuthStore.actionCreators, dispatch),\n});\n\nexport default withRouter(connect(mapStateToProps, mapDispatchToProps)(withStyles(styles)(Logout)));\n","import React, { useState } from 'react';\r\nimport { connect } from 'react-redux';\r\nimport { withRouter, Link } from 'react-router-dom';\r\nimport PropTypes from 'prop-types';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport { bindActionCreators } from 'redux';\r\nimport { getTranslate } from 'react-localize-redux';\r\nimport {\r\n Button, Typography, CircularProgress, TextField, InputAdornment,\r\n} from '@material-ui/core';\r\nimport * as AuthStore from '../../../app/store/AuthStore';\r\nimport urls from '../../../app/urls';\r\nimport { validatePassword, validateRequired, validateAllFields, checkHasErrors } from '../../../youwell-common/validationUtils';\r\n\r\nconst styles = theme => ({\r\n login_container: {\r\n padding: theme.spacing(4),\r\n\r\n [theme.breakpoints.down('xs')]: {\r\n padding: theme.spacing(2),\r\n },\r\n },\r\n\r\n loginHeader: {\r\n },\r\n\r\n loginLink: {\r\n margin: theme.spacing(3),\r\n display: 'flex',\r\n alignItems: 'center',\r\n },\r\n loginBox: {\r\n margin: theme.spacing(2, 0),\r\n position: 'relative',\r\n },\r\n\r\n loginDescription: {\r\n marginTop: theme.spacing(3),\r\n marginBottom: theme.spacing(3),\r\n },\r\n\r\n textField: {\r\n marginBottom: theme.spacing(3),\r\n background: theme.palette.grey[50],\r\n },\r\n loading: {\r\n position: 'absolute',\r\n left: '50%',\r\n top: '50%',\r\n transform: 'translate(-50%, 0)',\r\n },\r\n actions: {\r\n marginTop: theme.spacing(4),\r\n display: 'flex',\r\n justifyContent: 'flex-end',\r\n alignItems: 'center',\r\n },\r\n sendButton: {\r\n marginLeft: theme.spacing(1),\r\n width: 200,\r\n padding: theme.spacing(1),\r\n },\r\n infoContainer: {\r\n marginTop: theme.spacing(4),\r\n },\r\n completedMessageContainer: {\r\n marginTop: theme.spacing(2),\r\n marginBottom: theme.spacing(4),\r\n background: theme.palette.grey[100],\r\n color: theme.youwell.colors.secondary,\r\n padding: theme.spacing(2),\r\n borderRadius: theme.youwell.shapes.borderRadius,\r\n border: theme.youwell.borders.dim,\r\n },\r\n homeLink: {\r\n marginTop: theme.spacing(2),\r\n },\r\n});\r\n\r\nconst ResetPassword = ({\r\n match, translate, loading, resetPassword, errorMessage, classes,\r\n}) => {\r\n const [{ password, submitted }, setState] = useState({\r\n password: '',\r\n submitted: false,\r\n });\r\n\r\n const [validationErrors, setValidation] = useState({});\r\n\r\n const handleResetPassword = (e) => {\r\n e.preventDefault();\r\n\r\n if (!loading) {\r\n const errors = validateAllFields({ password }, { password: [validatePassword, validateRequired] });\r\n\r\n if (!checkHasErrors(errors)) {\r\n setValidation(errors);\r\n resetPassword({\r\n newPassword: password,\r\n token: match.params.token,\r\n }, {\r\n callback: () => {\r\n setState({\r\n submitted: true,\r\n });\r\n },\r\n });\r\n } else {\r\n setValidation(errors);\r\n }\r\n }\r\n };\r\n\r\n const completed = submitted && !loading && !errorMessage;\r\n\r\n return (\r\n
\r\n
\r\n \r\n {translate('login.resetPassword')}\r\n \r\n\r\n\r\n
\r\n {completed ? (\r\n <>\r\n
\r\n \r\n {translate('login.resetPasswordSubmitted')}\r\n \r\n
\r\n \r\n \r\n {translate('login.backToFrontPage')}\r\n \r\n \r\n \r\n ) : (\r\n <>\r\n \r\n {translate('login.resetPasswordDescription')}\r\n \r\n\r\n setState({ password: e.target.value })}\r\n variant=\"outlined\"\r\n fullWidth\r\n InputProps={{\r\n startAdornment: {`${translate('password')}: `},\r\n }}\r\n error={!!validationErrors.password}\r\n helperText={validationErrors.password ? translate(validationErrors.password) : null}\r\n />\r\n {loading && (\r\n
\r\n \r\n
\r\n )}\r\n\r\n
\r\n \r\n \r\n {translate('cancel')}\r\n \r\n \r\n \r\n
\r\n\r\n \r\n )}\r\n
\r\n {errorMessage && (\r\n \r\n {translate(`errors.${errorMessage}`, null, { onMissingTranslation: () => translate('login.resetPasswordError') })}\r\n \r\n )}\r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nResetPassword.propTypes = {\r\n classes: PropTypes.object.isRequired,\r\n match: PropTypes.object.isRequired,\r\n translate: PropTypes.func.isRequired,\r\n loading: PropTypes.bool.isRequired,\r\n resetPassword: PropTypes.func.isRequired,\r\n errorMessage: PropTypes.string,\r\n};\r\n\r\nResetPassword.defaultProps = {\r\n errorMessage: null,\r\n};\r\n\r\nconst mapStateToProps = state => ({\r\n translate: getTranslate(state.localize),\r\n loading: state.auth.loading,\r\n errorMessage: [].concat(state.auth.errors).filter(val => val).join('
'),\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n ...bindActionCreators(AuthStore.actionCreators, dispatch),\r\n});\r\n\r\nexport default withRouter(\r\n connect(\r\n mapStateToProps,\r\n mapDispatchToProps,\r\n )(withStyles(styles)(ResetPassword)),\r\n);\r\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar core_1 = require(\"@material-ui/core\");\nvar styles_1 = require(\"@material-ui/core/styles\");\nvar LoadProfileData_1 = __importDefault(require(\"../../inside/components/LoadProfileData\"));\nvar urls_1 = __importDefault(require(\"../../../app/urls\"));\nvar index_1 = require(\"../../../common/icons/index\");\nvar arrayUtils_1 = require(\"../../../youwell-common/arrayUtils\");\nvar translate_1 = __importDefault(require(\"../../../app/localization/translate\"));\nvar store_1 = require(\"../../../app/store\");\nvar AuthStore = __importStar(require(\"../../../app/store/AuthStore\"));\nvar Auth_1 = __importStar(require(\"../../../youwell-common/Auth\"));\nvar useStyles = (0, styles_1.makeStyles)(function (theme) { return ({\n root: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n firstLoginInfo: {\n marginBottom: theme.spacing(1),\n },\n loginHeader: {\n marginBottom: theme.spacing(1),\n },\n content: {},\n progress: {\n marginTop: theme.spacing(1),\n },\n error: {\n marginTop: theme.spacing(1),\n },\n}); });\nvar SelectOrg = function () {\n var translate = (0, translate_1.default)();\n var classes = useStyles();\n var dispatch = (0, store_1.useYouwellDispatch)();\n var orgId = (0, react_router_dom_1.useParams)().orgId;\n var loading = (0, store_1.useYouwellSelector)(function (state) { return state.auth.loading; });\n var errors = (0, store_1.useYouwellSelector)(function (state) { return state.auth.errors; });\n var errorMessage = Array.prototype.concat(errors).filter(function (val) { return val; }).join('
');\n var profileData = (0, store_1.useYouwellSelector)(function (state) { return state.auth.profileData; });\n var connectedOrganizations = profileData === null || profileData === void 0 ? void 0 : profileData.connectedOrganizations;\n var sortedOrganizations = (0, arrayUtils_1.sortByString)(connectedOrganizations, 'name');\n if (!Auth_1.default.isUserAuthenticated(Auth_1.authTypes.orgSelect)) {\n return (React.createElement(react_router_dom_1.Redirect, { to: { pathname: urls_1.default.login } }));\n }\n if (!profileData) {\n return (React.createElement(LoadProfileData_1.default, null));\n }\n if (profileData && (!connectedOrganizations || connectedOrganizations.length === 0)) {\n return (React.createElement(react_router_dom_1.Redirect, { to: { pathname: urls_1.default.login } }));\n }\n var onSelect = function (selectedOrgId) { return function () {\n dispatch(AuthStore.actionCreators.selectOrg(selectedOrgId, { redirect: urls_1.default.home }));\n }; };\n var isFirstLogin = orgId === 'first';\n // Todo:\n // if (!isFirstLogin && orgId) {\n // onSelect(orgId as Guid)();\n // }\n return (React.createElement(\"div\", { className: classes.root },\n React.createElement(\"div\", { className: classes.content },\n isFirstLogin ? (React.createElement(React.Fragment, null,\n React.createElement(core_1.Typography, { variant: \"h6\", className: classes.loginHeader }, translate('hi')),\n React.createElement(core_1.Typography, { className: classes.firstLoginInfo }, translate('login.firstLoginSelectOrg')))) : (React.createElement(core_1.Typography, { variant: \"subtitle2\", className: classes.loginHeader }, translate('profile.selectProgram'))),\n React.createElement(core_1.List, { component: \"nav\" }, sortedOrganizations === null || sortedOrganizations === void 0 ? void 0 : sortedOrganizations.map(function (org) { return (React.createElement(core_1.ListItem, { key: org.id, button: true, onClick: onSelect(org.id) },\n React.createElement(core_1.ListItemIcon, null,\n React.createElement(index_1.OrgIcon, null)),\n React.createElement(core_1.ListItemText, { primary: org.name }))); })),\n loading\n && React.createElement(core_1.CircularProgress, { className: classes.progress }),\n errorMessage && (React.createElement(core_1.Typography, { className: classes.error, color: \"secondary\" }, errorMessage)))));\n};\nexports.default = SelectOrg;\n","export const tmp = null;\r\nexport const heightBreak = '@media screen and (min-height: 800px)';\r\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.contentWidth = void 0;\nvar React = __importStar(require(\"react\"));\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar core_1 = require(\"@material-ui/core\");\nvar translate_1 = __importDefault(require(\"../../app/localization/translate\"));\nvar TaskPage_1 = __importDefault(require(\"./TaskPage\"));\nvar components_1 = require(\"../../youwell-common/components\");\nvar store_1 = require(\"../../app/store\");\nvar urls_1 = __importDefault(require(\"../../app/urls\"));\nvar ProgramPage_1 = __importDefault(require(\"./ProgramPage\"));\nvar components_2 = require(\"../../common/components\");\nvar theme_1 = require(\"../../app/style/theme\");\nvar appSetup_1 = require(\"../../app/appSetup\");\nvar Login_1 = __importDefault(require(\"../outside/components/Login\"));\nvar ProgramSelect_1 = __importDefault(require(\"./ProgramSelect\"));\nvar Footer_1 = __importDefault(require(\"../../common/components/Footer\"));\nexports.contentWidth = 1080;\nvar useStyles = (0, core_1.makeStyles)(function (theme) {\n var _a, _b, _c;\n return (0, core_1.createStyles)({\n root: {\n background: theme.palette.background.default,\n display: 'flex',\n flexWrap: 'wrap',\n justifyContent: 'center',\n },\n header: (_a = {\n position: 'fixed',\n width: '100vw',\n paddingRight: theme_1.scrollerWidth,\n height: theme_1.headerHeight,\n background: theme.palette.primary.main,\n display: 'flex',\n justifyContent: 'center',\n zIndex: 100\n },\n _a[theme.breakpoints.down('xs')] = {\n paddingRight: 0,\n },\n _a['@media print'] = {\n display: 'none',\n },\n _a),\n headerContent: (_b = {\n width: '100%',\n maxWidth: exports.contentWidth\n },\n _b[theme.breakpoints.up('lg')] = {\n width: exports.contentWidth - theme_1.scrollerWidth,\n },\n _b),\n content: (_c = {\n marginTop: theme_1.headerHeight,\n width: '100%',\n minHeight: '100vh',\n maxWidth: exports.contentWidth\n },\n // background: theme.palette.common.white,\n // boxShadow: theme.shadows[1],\n _c[theme.breakpoints.up('lg')] = {\n width: exports.contentWidth - theme_1.scrollerWidth,\n },\n _c[theme.breakpoints.down('xs')] = {\n boxShadow: 'none',\n minHeight: 0,\n },\n _c['@media print'] = {\n marginTop: 0,\n minHeight: 0,\n },\n _c),\n mainContent: {},\n });\n});\nvar Index = function () {\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var pageNotFound = (0, store_1.useYouwellSelector)(function (state) { return state.pageSettings.pageNotFound; });\n var _a = React.useState(false), showLoginBox = _a[0], setShowLoginBox = _a[1];\n var currentOrgId = (0, store_1.useYouwellSelector)(function (state) { return state.outsideStore.currentOrgId; });\n return (React.createElement(\"div\", { className: classes.root },\n currentOrgId && React.createElement(components_2.LoadOrgConfig, { orgId: currentOrgId }),\n React.createElement(components_1.ErrorBoundary, { id: \"OutsideLayout_Header\" },\n React.createElement(\"div\", { className: classes.header },\n React.createElement(\"div\", { className: classes.headerContent },\n React.createElement(components_2.Header, { hideMenu: true, hideLinks: true, defaultItems: [appSetup_1.headerItems.title, appSetup_1.headerItems.flex, appSetup_1.headerItems.customActions], headerActions: [{ text: translate('login.login'), action: function () { return setShowLoginBox(true); } }] })))),\n React.createElement(\"div\", { className: classes.content },\n React.createElement(components_1.ErrorBoundary, { id: \"OutsideLayout_Content\" }, pageNotFound ? (React.createElement(components_1.PageNotFound, null)) : (React.createElement(React.Fragment, null,\n React.createElement(\"div\", { className: classes.mainContent },\n React.createElement(react_router_dom_1.Switch, null,\n React.createElement(react_router_dom_1.Route, { path: \"\".concat(urls_1.default.outsideProgram.task, \"/:programId/:moduleIndex/:taskIndex\"), component: TaskPage_1.default }),\n React.createElement(react_router_dom_1.Route, { path: \"\".concat(urls_1.default.outsideProgram.program, \"/:programId?\"), component: ProgramPage_1.default }),\n React.createElement(react_router_dom_1.Route, { path: urls_1.default.outsideProgram.programSelect, component: ProgramSelect_1.default }),\n React.createElement(react_router_dom_1.Route, { component: ProgramSelect_1.default }))))))),\n React.createElement(Footer_1.default, null),\n React.createElement(components_1.ErrorBoundary, { id: \"OutsideLayout_Login\" },\n React.createElement(components_2.PortalModal, { open: showLoginBox, onClose: function () { return setShowLoginBox(false); }, heading: translate('login.login') },\n React.createElement(Login_1.default, null)))));\n};\nexports.default = Index;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar react_router_1 = require(\"react-router\");\nvar components_1 = require(\"../../youwell-common/components\");\nvar urls_1 = __importDefault(require(\"../../app/urls\"));\nvar outsideService_1 = require(\"../../app/services/outsideService\");\nvar store_1 = require(\"../../app/store\");\nvar ModuleBoxWithOverlay_1 = __importDefault(require(\"../inside/components/ModuleBoxWithOverlay\"));\nvar components_2 = require(\"../../common/components\");\nvar useStyles = (0, core_1.makeStyles)(function (theme) {\n var _a, _b, _c, _d;\n return (0, core_1.createStyles)({\n root: (_a = {\n padding: theme.spacing(6, 12)\n },\n _a[theme.breakpoints.down('sm')] = {\n padding: theme.spacing(3, 4.5),\n },\n _a[theme.breakpoints.down('xs')] = {\n padding: theme.spacing(1.5),\n },\n _a),\n content: {\n marginTop: theme.spacing(8),\n },\n programDescription: {\n margin: theme.spacing(2, 0, 4),\n },\n modules: {\n display: 'flex',\n flexWrap: 'wrap',\n clear: 'both', // to avoid overflowing image from description\n },\n moduleTitle: {\n borderLeft: theme.youwell.borders.secondary,\n borderLeftWidth: 4,\n paddingLeft: theme.spacing(2),\n marginBottom: theme.spacing(2),\n outline: 'none',\n },\n module: (_b = {\n flexBasis: \"calc(-\".concat(theme.spacing(4), \"px + 33.3333%)\"),\n marginBottom: theme.spacing(4),\n '&:nth-child(3n+2)': (_c = {},\n _c[theme.breakpoints.up('md')] = {\n marginLeft: theme.spacing(6),\n marginRight: theme.spacing(6),\n },\n _c)\n },\n _b[theme.breakpoints.down('sm')] = {\n flexBasis: \"calc(-\".concat(theme.spacing(2), \"px + 50%)\"), // IE calc. Renders wrong for `calc((100% - ${theme.spacing(4)}px) / 2)`\n },\n _b['&:nth-child(2n + 1)'] = (_d = {},\n _d[theme.breakpoints.down('sm')] = {\n marginRight: theme.spacing(4),\n },\n _d[theme.breakpoints.down('xs')] = {\n marginRight: 0,\n },\n _d),\n _b[theme.breakpoints.down('xs')] = {\n flexBasis: '100%',\n justifyContent: 'center',\n },\n _b),\n });\n});\nvar ProgramPage = function () {\n var classes = useStyles();\n var dispatch = (0, store_1.useYouwellDispatch)();\n var programIdFromParams = (0, react_router_1.useParams)().programId;\n var publicProgramId = (0, store_1.useYouwellSelector)(function (state) { var _a; return (_a = state.pageSettings.appConfig) === null || _a === void 0 ? void 0 : _a.publicProgramId; });\n var programId = programIdFromParams !== null && programIdFromParams !== void 0 ? programIdFromParams : publicProgramId;\n var program = (0, store_1.useYouwellSelector)(function (state) { return state.outsideStore.programDetails[programId]; });\n var loading = (0, store_1.useYouwellSelector)(function (state) { return state.requestStatusStore.loading; });\n (0, react_1.useEffect)(function () {\n if (!program && programId) {\n (0, outsideService_1.fetchOutsideProgram)(dispatch, programId);\n }\n }, [dispatch, program, programId]);\n if (!programId) {\n return (react_1.default.createElement(react_router_1.Redirect, { to: urls_1.default.home }));\n }\n return (react_1.default.createElement(\"div\", { className: classes.root },\n react_1.default.createElement(components_1.Loading, { loading: loading }),\n react_1.default.createElement(\"div\", { className: classes.content },\n react_1.default.createElement(core_1.Typography, { variant: \"h6\", className: classes.moduleTitle, tabIndex: -1 }, program === null || program === void 0 ? void 0 : program.name),\n !loading && !program && (react_1.default.createElement(components_2.InfoMessage, { messageKey: \"noContent\" })),\n react_1.default.createElement(components_1.HtmlContent, { html: program === null || program === void 0 ? void 0 : program.description, className: classes.programDescription }),\n react_1.default.createElement(\"div\", { className: classes.modules }, program === null || program === void 0 ? void 0 : program.modules.map(function (module, i) { return (react_1.default.createElement(ModuleBoxWithOverlay_1.default, { key: module.id, programId: program.id, element: {\n module: module,\n name: module.name,\n }, index: i, className: classes.module, to: \"\".concat(urls_1.default.outsideProgram.task, \"/\").concat(programId, \"/\").concat(i, \"/0\") })); })))));\n};\nexports.default = ProgramPage;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importDefault(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar react_router_1 = require(\"react-router\");\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar urls_1 = __importDefault(require(\"../../app/urls\"));\nvar store_1 = require(\"../../app/store\");\nvar components_1 = require(\"../../common/components\");\nvar heightBreak = '@media screen and (min-height: 800px)';\nvar topPadding = 200;\nvar topPaddingHeightBreak = 280;\nvar useStyles = (0, core_1.makeStyles)(function (theme) {\n var _a, _b;\n return (0, core_1.createStyles)({\n root: (_a = {\n padding: theme.spacing(6, 12)\n },\n _a[theme.breakpoints.down('sm')] = {\n padding: theme.spacing(3, 4.5),\n },\n _a[theme.breakpoints.down('xs')] = {\n padding: theme.spacing(1.5),\n },\n _a),\n content: (_b = {\n width: 500,\n position: 'absolute',\n zIndex: 10,\n top: topPadding,\n left: '50%',\n backgroundImage: 'linear-gradient(to bottom, white 30%, rgba(255,255,255,0))',\n background: theme.palette.common.white,\n transform: 'translate(-50%, 0)',\n border: theme.youwell.borders.dim,\n borderRadius: 24,\n padding: theme.spacing(4),\n boxShadow: theme.shadows[5],\n minHeight: 300,\n maxHeight: \"calc(100vh - \".concat(topPadding, \"px - 50px)\"),\n overflowY: 'auto'\n },\n _b[heightBreak] = {\n maxHeight: \"calc(100vh - \".concat(topPaddingHeightBreak, \"px - 50px)\"),\n top: topPaddingHeightBreak,\n },\n _b[theme.breakpoints.down('xs')] = {\n position: 'relative',\n width: '100%',\n left: 0,\n top: 0,\n transform: 'none',\n border: 0,\n borderRadius: 0,\n padding: theme.spacing(2),\n boxShadow: 'none',\n minHeight: 'auto',\n maxHeight: 'none',\n overflowY: 'inherit',\n },\n _b),\n programs: {\n padding: theme.spacing(4),\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n flexWrap: 'wrap',\n },\n program: {\n flex: '1 1 auto',\n background: theme.youwell.colors.secondaryBackground,\n borderRadius: theme.shape.borderRadius,\n padding: theme.spacing(4),\n margin: theme.spacing(2),\n },\n });\n});\nvar ProgramSelect = function () {\n var classes = useStyles();\n var programs = (0, store_1.useYouwellSelector)(function (state) { var _a; return (_a = state.pageSettings.appConfig) === null || _a === void 0 ? void 0 : _a.publicPrograms; });\n var singlePublicProgram = (0, store_1.useYouwellSelector)(function (state) { var _a; return (_a = state.pageSettings.appConfig) === null || _a === void 0 ? void 0 : _a.publicProgramId; });\n if (!programs || programs.length === 0) {\n if (singlePublicProgram) {\n return (react_1.default.createElement(react_router_1.Redirect, { to: urls_1.default.outsideProgram.program }));\n }\n return (react_1.default.createElement(react_router_1.Redirect, { to: urls_1.default.home }));\n }\n if (programs.length === 1) {\n return (react_1.default.createElement(react_router_1.Redirect, { to: urls_1.default.outsideProgram.program }));\n }\n return (react_1.default.createElement(\"div\", { className: classes.root },\n react_1.default.createElement(\"div\", { className: classes.content },\n programs.length < 2 && (react_1.default.createElement(components_1.InfoMessage, { messageKey: \"noContent\" })),\n react_1.default.createElement(\"div\", { className: classes.programs }, programs.map(function (program) { return (react_1.default.createElement(react_router_dom_1.Link, { key: program.id, className: classes.program, to: \"\".concat(urls_1.default.outsideProgram.program, \"/\").concat(program.id) },\n react_1.default.createElement(core_1.Typography, { variant: \"button\", noWrap: true, align: \"center\", display: \"block\" }, program.name))); })))));\n};\nexports.default = ProgramSelect;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importStar(require(\"react\"));\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar urls_1 = __importDefault(require(\"../../app/urls\"));\nvar components_1 = require(\"../../common/components\");\nvar TaskNavigation_1 = __importDefault(require(\"./components/TaskNavigation\"));\nvar store_1 = require(\"../../app/store\");\nvar translate_1 = __importDefault(require(\"../../app/localization/translate\"));\nvar OutsideTaskContent_1 = __importDefault(require(\"./components/OutsideTaskContent\"));\nvar outsideService_1 = require(\"../../app/services/outsideService\");\nvar Task = function () {\n var _a, _b;\n var translate = (0, translate_1.default)();\n var dispatch = (0, store_1.useYouwellDispatch)();\n var _c = (0, react_router_dom_1.useParams)(), programId = _c.programId, moduleIndex = _c.moduleIndex, taskIndex = _c.taskIndex;\n var program = (0, store_1.useYouwellSelector)(function (state) { return state.outsideStore.programDetails[programId]; });\n var loadingProgram = (0, store_1.useYouwellSelector)(function (state) { return state.requestStatusStore.loading; });\n var module = (_a = program === null || program === void 0 ? void 0 : program.modules) === null || _a === void 0 ? void 0 : _a[Number(moduleIndex)];\n var task = (_b = module === null || module === void 0 ? void 0 : module.tasks) === null || _b === void 0 ? void 0 : _b[Number(taskIndex) || 0];\n (0, react_1.useEffect)(function () {\n if (!program && programId) {\n (0, outsideService_1.fetchOutsideProgram)(dispatch, programId);\n }\n }, [dispatch, program, programId]);\n if (!task || !module) {\n return loadingProgram ? null : react_1.default.createElement(components_1.InfoMessage, { messageKey: \"noTask\" });\n }\n var sideMenu = {\n currentIndex: Number(taskIndex) || 0,\n title: task.moduleName,\n menuItems: module.tasks.map(function (t, i) { return ({\n text: t.name,\n url: \"\".concat(urls_1.default.outsideProgram.task, \"/\").concat(programId, \"/\").concat(moduleIndex, \"/\").concat(i),\n }); }),\n };\n return (react_1.default.createElement(components_1.PageLayout, { title: task.name, task: task, sideMenu: sideMenu, key: task.id },\n react_1.default.createElement(components_1.PageTitle, { title: \"\".concat(translate('header.title'), \" - \").concat(task.moduleName) }),\n react_1.default.createElement(OutsideTaskContent_1.default, { task: task }),\n react_1.default.createElement(TaskNavigation_1.default, { task: __assign(__assign({}, task), { elementIndex: Number(moduleIndex), currentTaskNr: Number(taskIndex), listLength: module.tasks.length, programId: programId }) })));\n};\nexports.default = Task;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar prop_types_1 = __importDefault(require(\"prop-types\"));\nvar styles_1 = require(\"@material-ui/core/styles\");\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar core_1 = require(\"@material-ui/core\");\nvar PreviewStore = __importStar(require(\"../../../app/store/PreviewStore\"));\nvar components_1 = require(\"../../../youwell-common/components\");\nvar urls_1 = __importDefault(require(\"../../../app/urls\"));\nvar taskContentUtils_1 = require(\"../../../common/taskContentUtils\");\nvar responseUtils_1 = require(\"../../../youwell-common/responseUtils\");\nvar store_1 = require(\"../../../app/store\");\nvar useStyles = (0, styles_1.makeStyles)(function () { return (0, core_1.createStyles)({\n root: {\n // Flex-display with wrap needed for card-layout on page\n display: 'flex',\n flexWrap: 'wrap',\n justifyContent: 'space-between',\n '@media print': {\n display: 'block',\n },\n },\n}); });\nvar OutsideTaskContent = function (_a) {\n var _b;\n var forwardedRef = _a.forwardedRef, task = _a.task;\n var classes = useStyles();\n var dispatch = (0, store_1.useYouwellDispatch)();\n var allTaskResponses = (0, store_1.useYouwellSelector)(function (state) { return state.previewStore.responses; });\n var allTasksDetails = (0, store_1.useYouwellSelector)(function (state) { return state.previewStore.details; });\n // hack because task.patientProgramElementId is \"undefined\".. but this works.. Should maybe make more robust?\n var responsesForCurrentTask = (_b = allTaskResponses === null || allTaskResponses === void 0 ? void 0 : allTaskResponses[undefined]) === null || _b === void 0 ? void 0 : _b[task.id];\n var updateResponse = function (responses) {\n var responseData = {\n taskId: task.id,\n taskVersion: task.version,\n responses: responses,\n };\n dispatch(PreviewStore.actionCreators.updateResponse(responseData));\n };\n var saveChanges = function (callback) {\n if (callback) {\n callback();\n }\n };\n var getLinkUrl = function (link) {\n var _a = (0, taskContentUtils_1.parseInternalLink)(link), taskOrModuleId = _a.taskOrModuleId, hash = _a.hash;\n return \"\".concat(urls_1.default.preview.home, \"/\").concat(taskOrModuleId).concat(hash);\n };\n var getProgramItem = function (id) { return (allTasksDetails && id ? allTasksDetails[id] : null); };\n return (React.createElement(components_1.TaskContent, { ref: forwardedRef, className: (0, classnames_1.default)(classes.root), LinkElementProps: {\n getLinkUrl: getLinkUrl,\n autoplayVideos: false, // clientConfig.appSetup.features.autoplayVideos,\n }, task: task, taskResponses: responsesForCurrentTask, getProgramItem: getProgramItem, getResponses: (0, responseUtils_1.getGetResponseFunc)(allTaskResponses, responsesForCurrentTask), onResponse: updateResponse, onSaveChanges: saveChanges }));\n};\nOutsideTaskContent.propTypes = {\n forwardedRef: prop_types_1.default.object,\n task: prop_types_1.default.object.isRequired,\n};\nOutsideTaskContent.defaultProps = {\n forwardedRef: null,\n};\nvar WithRef = React.forwardRef(function (props, ref) { return React.createElement(OutsideTaskContent, __assign({}, props, { forwardedRef: ref })); });\nexports.default = WithRef;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importDefault(require(\"react\"));\nvar styles_1 = require(\"@material-ui/core/styles\");\nvar redux_1 = require(\"redux\");\nvar core_1 = require(\"@material-ui/core\");\nvar translate_1 = __importDefault(require(\"../../../app/localization/translate\"));\nvar store_1 = require(\"../../../app/store\");\nvar ProgramStore_1 = require(\"../../../app/store/ProgramStore\");\nvar urls_1 = __importDefault(require(\"../../../app/urls\"));\nvar useStyles = (0, styles_1.makeStyles)(function (theme) { return (0, styles_1.createStyles)({\n navActions: {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n margin: theme.spacing(8, 0),\n '@media print': {\n display: 'none',\n },\n },\n appActions: {\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n margin: theme.spacing(4, 0),\n '@media print': {\n display: 'none',\n },\n },\n navButton: {\n margin: theme.spacing(0, 6),\n },\n navIconLeft: {\n marginRight: theme.spacing(1),\n },\n navIconRight: {\n marginLeft: theme.spacing(1),\n },\n}); });\nvar TaskNavigation = function (_a) {\n var task = _a.task;\n var classes = useStyles();\n var dispatch = (0, store_1.useYouwellDispatch)();\n var translate = (0, translate_1.default)();\n var redirect = (0, redux_1.bindActionCreators)(ProgramStore_1.actionCreators, dispatch).redirect;\n var elementIndex = task.elementIndex, currentTaskNr = task.currentTaskNr, programId = task.programId;\n var isLastTask = currentTaskNr === task.listLength - 1;\n var isFirstTask = currentTaskNr === 0;\n var clickNext = function (nextDirection) {\n var nextTaskNr = currentTaskNr + nextDirection;\n var redirectUrl = '';\n if (isLastTask && nextDirection > 0) {\n redirectUrl = \"\".concat(urls_1.default.outsideProgram.program, \"/\").concat(programId);\n }\n else if (isFirstTask && nextDirection < 0) {\n redirectUrl = \"\".concat(urls_1.default.outsideProgram.program, \"/\").concat(programId);\n }\n else {\n redirectUrl = \"\".concat(urls_1.default.outsideProgram.task, \"/\").concat(programId, \"/\").concat(elementIndex, \"/\").concat(nextTaskNr);\n }\n redirect(redirectUrl);\n };\n return (react_1.default.createElement(\"div\", { className: classes.navActions },\n react_1.default.createElement(core_1.Button, { variant: \"outlined\", color: \"secondary\", onClick: function () { return clickNext(-1); } }, translate(isFirstTask ? 'cancel' : 'task.goBack')),\n react_1.default.createElement(core_1.Button, { color: \"secondary\", variant: \"contained\", onClick: function () { return clickNext(1); } }, translate(isLastTask ? 'task.completeTask' : 'task.goForward'))));\n};\nexports.default = TaskNavigation;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport classnames from 'classnames';\nimport { bindActionCreators } from 'redux';\n\nimport { Link } from 'react-router-dom';\nimport {\n Typography, IconButton,\n} from '@material-ui/core';\n\nimport urls from '../../../app/urls';\nimport {\n datestamp, isSameDate, getWeekStartDate, addDays, timeOnly, hasTime, isToday, today, msInOneWeek, getWeekNumberFromDate,\n} from '../../../youwell-common/dateUtils';\n\nimport * as PageSettingStore from '../../../app/store/PageSettingStore';\n\nimport { PrevIcon, NextIcon, AddIcon } from '../../../common/icons';\nimport { sortByDateAscending } from '../../../youwell-common/arrayUtils';\nimport EditTask from './components/EditTask';\nimport { isTouchDevice } from '../../../youwell-common/browserUtils';\nimport AddCustomTask from './components/AddCustomTask';\nimport { patientProgramElementGroups } from '../../../common/constants';\nimport { ModalAction } from '../../../common/components';\n\nconst styles = theme => ({\n root: {\n },\n header: {\n display: 'flex',\n alignItems: 'center',\n },\n noTasksInWeek: {\n margin: theme.spacing(4, 2),\n padding: theme.spacing(1),\n background: theme.palette.primary.light,\n textAlign: 'center',\n fontSize: theme.typography.body2.fontSize,\n\n [theme.breakpoints.up('sm')]: {\n display: 'none',\n },\n [theme.breakpoints.down('xs')]: {\n margin: theme.spacing(1, 0),\n },\n },\n weekTitle: {\n flex: '1 1 auto',\n },\n calendar: {\n padding: theme.spacing(1),\n border: theme.youwell.borders.normal,\n borderTopColor: theme.palette.primary.main,\n borderTopWidth: 4,\n backgroundColor: theme.palette.common.white,\n\n [theme.breakpoints.down('xs')]: {\n padding: theme.spacing(0),\n border: 0,\n backgroundColor: 'transparent',\n },\n },\n week: {\n display: 'flex',\n flexWrap: 'wrap',\n\n [theme.breakpoints.down('xs')]: {\n flexDirection: 'column',\n\n '$noTasksInWeek + &': {\n display: 'none',\n },\n },\n },\n day: {\n flex: 1,\n padding: theme.spacing(0.5),\n display: 'flex',\n flexDirection: 'column',\n minHeight: 150,\n overflow: 'hidden',\n\n [theme.breakpoints.down('xs')]: {\n padding: 0,\n minHeight: 0,\n },\n },\n outOfDate: {\n [theme.breakpoints.down('xs')]: {\n opacity: 0.5,\n },\n },\n borderLeft: {\n borderLeft: theme.youwell.borders.dim,\n [theme.breakpoints.down('xs')]: {\n borderLeft: 0,\n },\n },\n dayHeader: {\n textTransform: 'uppercase',\n padding: theme.spacing(0, 0.5),\n\n [theme.breakpoints.down('xs')]: {\n padding: theme.spacing(0.5),\n background: theme.palette.primary.light,\n marginTop: theme.spacing(1),\n display: 'flex',\n alignItems: 'center',\n },\n },\n mobileFlex: {\n [theme.breakpoints.down('xs')]: {\n flex: '1 1 auto',\n },\n },\n mobileDate: {\n marginRight: theme.spacing(1),\n [theme.breakpoints.up('sm')]: {\n display: 'none',\n },\n },\n mobileAddTask: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n marginTop: theme.spacing(4),\n\n [theme.breakpoints.up('sm')]: {\n display: 'none',\n },\n },\n dayHeaderDate: {\n padding: theme.spacing(0, 0.5),\n borderBottom: theme.youwell.borders.dim,\n marginBottom: theme.spacing(0.5),\n\n [theme.breakpoints.down('xs')]: {\n display: 'none',\n },\n },\n taskList: {\n flex: 1,\n display: 'flex',\n flexDirection: 'column',\n },\n current: {\n backgroundColor: theme.palette.grey[300],\n [theme.breakpoints.down('xs')]: {\n backgroundColor: 'transparent',\n },\n },\n task: {\n position: 'relative',\n userSelect: 'none',\n maxWidth: 150,\n border: theme.youwell.borders.dim,\n padding: theme.spacing(1),\n margin: theme.spacing(0.5),\n backgroundColor: theme.palette.grey[50],\n\n [theme.breakpoints.down('xs')]: {\n maxWidth: '100%',\n margin: theme.spacing(0, 0, 1),\n border: 'none',\n },\n },\n taskTopLine: {\n display: 'flex',\n justifyContent: 'flex-end',\n borderBottom: theme.youwell.borders.dim,\n },\n taskTime: {\n },\n taskName: {\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n },\n editIcon: {\n position: 'absolute',\n bottom: 2,\n right: 2,\n padding: 4,\n display: 'none',\n color: theme.palette.primary.main,\n\n '$task:hover &': {\n display: 'inline',\n },\n },\n noContent: {\n [theme.breakpoints.down('xs')]: {\n display: 'none',\n },\n },\n addIcon: {\n color: 'transparent',\n alignSelf: 'center',\n\n '&:focus, &:hover, $day:hover &': {\n color: theme.palette.primary.main,\n transition: theme.transitions.create('color', { duration: 200 }),\n },\n\n '$day$touchDevice &': {\n color: theme.palette.primary.main,\n opacity: 0.7,\n },\n '$day$touchDevice:active &, $day$touchDevice:focus &, $day$touchDevice:focus-within &': {\n opacity: 1,\n },\n\n [theme.breakpoints.down('xs')]: {\n display: 'none',\n },\n },\n touchDevice: {\n },\n});\n\n\nclass Calendar extends React.Component {\n state = {\n editItem: null,\n }\n\n setWeek = add => () => {\n const newDate = new Date(this.props.calendarDate.getTime() + (add * msInOneWeek));\n this.props.setCalendarDate(newDate);\n }\n\n clickTask = element => (event) => {\n if (element.createdByPatient) {\n this.setState({ editItem: element });\n event.preventDefault();\n }\n }\n\n closeEditElement = () => {\n this.setState({ editItem: null });\n }\n\n render() {\n const {\n classes, translate, currentProgram, calendarDate,\n } = this.props;\n\n if (!currentProgram) {\n return null;\n }\n\n const elements = currentProgram.groupedElements\n ? [].concat(currentProgram.groupedElements[patientProgramElementGroups.default] || [],\n currentProgram.groupedElements[patientProgramElementGroups.appointment] || [])\n : [];\n\n const currentWeek = getWeekNumberFromDate(calendarDate);\n const weekStartDate = getWeekStartDate(currentWeek);\n const week = [\n { key: '1', elements: [], date: weekStartDate },\n { key: '2', elements: [], date: addDays(weekStartDate, 1) },\n { key: '3', elements: [], date: addDays(weekStartDate, 2) },\n { key: '4', elements: [], date: addDays(weekStartDate, 3) },\n { key: '5', elements: [], date: addDays(weekStartDate, 4) },\n { key: '6', elements: [], date: addDays(weekStartDate, 5) },\n { key: '0', elements: [], date: addDays(weekStartDate, 6) },\n ];\n\n if (elements) {\n for (let i = 0; i < elements.length; i++) {\n if (elements[i].startDay > 0 && elements[i].startDay < 7) {\n week[elements[i].startDay - 1].elements.push(elements[i]);\n } else if (elements[i].startDay === 0) {\n week[6].elements.push(elements[i]);\n } else if (elements[i].startTime) {\n for (let j = 0; j < week.length; j++) {\n if (isSameDate(elements[i].startTime, week[j].date)) {\n week[j].elements.push(elements[i]);\n }\n }\n }\n }\n }\n\n const todayDate = today();\n const noElementsInWeek = week.reduce((prev, curr) => prev + curr.elements.length, 0) < 1;\n\n return (\n
\n
\n \n \n {translate('calendar.weekNr', { weekNr: currentWeek })}\n \n \n
\n
\n {noElementsInWeek && (\n \n {translate('calendar.noElementsInWeek')}\n \n )}\n
\n {week.map((day, dayIndex) => (\n 0,\n [classes.noContent]: day.elements.length < 1,\n [classes.current]: isToday(day.date),\n [classes.outOfDate]: day.date < todayDate,\n [classes.touchDevice]: isTouchDevice,\n })}\n >\n \n {translate(`time.weekdays.${day.key}`)}\n \n \n {datestamp(day.date)}\n \n \n \n {datestamp(day.date)}\n \n
\n {sortByDateAscending(day.elements, 'startTime').map(element => (\n \n {hasTime(element.startTime) && (\n
\n \n {timeOnly(element.startTime, translate)}\n \n
\n )}\n \n {element.name}\n \n \n ))}\n \n
\n
\n ))}\n
\n
\n \n
\n
\n\n {this.state.editItem && (\n \n )}\n
\n );\n }\n}\n\nCalendar.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n currentProgram: PropTypes.object,\n calendarDate: PropTypes.object.isRequired,\n setCalendarDate: PropTypes.func.isRequired,\n};\n\nCalendar.defaultProps = {\n currentProgram: null,\n};\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n currentProgram: state.programStore.currentProgram,\n calendarDate: state.pageSettings.calendarDate,\n});\n\n\nconst mapDispatchToProps = dispatch => ({\n ...bindActionCreators(PageSettingStore.actionCreators, dispatch),\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(withStyles(styles)(Calendar));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\n\nimport { CalendarIcon } from '../../../common/icons';\nimport { PageLayout } from '../../../common/components';\nimport Calendar from './Calendar';\nimport { getBreadCrumb } from '../../../common/breadcrumbUtil';\n\nconst styles = theme => ({\n root: {\n },\n week: {\n minHeight: 400,\n\n [theme.breakpoints.down('xs')]: {\n minHeight: 0,\n },\n },\n});\n\n\nclass Index extends React.Component {\n render() {\n const {\n classes, translate, clientConfig,\n } = this.props;\n\n return (\n \n \n \n );\n }\n}\n\nIndex.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n clientConfig: PropTypes.object.isRequired,\n};\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n clientConfig: state.auth.clientConfig,\n});\n\n\nexport default connect(mapStateToProps)(withStyles(styles)(Index));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport { withStyles } from '@material-ui/core/styles';\nimport { bindActionCreators } from 'redux';\n\nimport {\n TextField, Button,\n} from '@material-ui/core';\n\nimport * as ProgramStore from '../../../../app/store/ProgramStore';\n\nconst styles = theme => ({\n content: {\n padding: theme.spacing(2),\n overflowY: 'auto',\n display: 'flex',\n flexDirection: 'column',\n\n [theme.breakpoints.down('xs')]: {\n overflowY: 'initial',\n },\n },\n actions: {\n display: 'flex',\n justifyContent: 'flex-end',\n },\n taskField: {\n marginBottom: theme.spacing(3),\n },\n addCustomButton: {\n marginLeft: theme.spacing(2),\n },\n});\n\nclass AddCustomTask extends React.Component {\n state = {\n validationError: false,\n time: '12:00',\n name: '',\n description: '',\n }\n\n handleChange = name => (event) => {\n this.setState({ [name]: event.target.value });\n }\n\n save = () => {\n if (this.state.name) {\n const startTime = this.props.date;\n startTime.setHours(this.state.time.slice(0, 2), this.state.time.slice(3, 5), 0, 0);\n\n const elementToAdd = {\n patientProgramId: this.props.currentProgram.id,\n displayName: this.state.name,\n properties: {\n description: this.state.description,\n },\n startTime,\n };\n\n this.props.insertPatientElement(elementToAdd, {\n callback: this.props.onClose,\n reducerParams: { patientProgramId: elementToAdd.patientProgramId },\n });\n } else {\n this.setState({ validationError: true });\n }\n }\n\n render() {\n const {\n classes, translate, disabled,\n } = this.props;\n\n return (\n
\n
\n \n\n \n\n \n
\n\n
\n \n
\n
\n );\n }\n}\n\nAddCustomTask.propTypes = {\n translate: PropTypes.func.isRequired,\n classes: PropTypes.object.isRequired,\n insertPatientElement: PropTypes.func.isRequired,\n currentProgram: PropTypes.object.isRequired,\n date: PropTypes.instanceOf(Date),\n disabled: PropTypes.bool,\n onClose: PropTypes.func,\n};\n\nAddCustomTask.defaultProps = {\n disabled: false,\n date: null,\n onClose: null,\n};\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n currentProgram: state.programStore.currentProgram,\n});\n\nconst mapDispatchToProps = dispatch => ({\n ...bindActionCreators(ProgramStore.actionCreators, dispatch),\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(withStyles(styles)(AddCustomTask));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport { withStyles } from '@material-ui/core/styles';\nimport { bindActionCreators } from 'redux';\n\nimport {\n Button, TextField,\n} from '@material-ui/core';\n\nimport * as ProgramStore from '../../../../app/store/ProgramStore';\nimport {\n datestamp, getLocalDate, pad2,\n} from '../../../../youwell-common/dateUtils';\nimport { PortalModal } from '../../../../common/components';\n\nconst styles = theme => ({\n content: {\n padding: theme.spacing(2),\n overflowY: 'auto',\n display: 'flex',\n flexDirection: 'column',\n\n [theme.breakpoints.down('xs')]: {\n overflowY: 'initial',\n },\n },\n taskField: {\n marginBottom: theme.spacing(3),\n },\n actions: {\n marginTop: theme.spacing(2),\n display: 'flex',\n justifyContent: 'space-between',\n },\n});\n\nconst getTimeText = (date) => {\n const startTime = getLocalDate(date);\n return `${pad2(startTime.getHours())}:${pad2(startTime.getMinutes())}`;\n};\n\nclass EditTask extends React.Component {\n state = {\n time: getTimeText(this.props.element.startTime),\n name: this.props.element.name,\n description: this.props.element.properties?.description || '',\n }\n\n closeDialog = () => {\n this.props.onClose();\n }\n\n handleChange = name => (event) => {\n this.setState({ [name]: event.target.value });\n }\n\n update = () => {\n const startTime = getLocalDate(this.props.element.startTime);\n startTime.setHours(this.state.time.slice(0, 2), this.state.time.slice(3, 5), 0, 0);\n\n const elementToUpdate = {\n ...this.props.element,\n displayName: this.state.name,\n properties: {\n description: this.state.description,\n },\n startTime,\n };\n\n this.props.updatePatientElement(elementToUpdate, {\n callback: this.closeDialog,\n reducerParams: { patientProgramId: this.props.currentProgram.id },\n });\n }\n\n delete = () => {\n this.props.deletePatientElement(this.props.element, {\n callback: this.closeDialog,\n reducerParams: { patientProgramId: this.props.currentProgram.id },\n });\n }\n\n render() {\n const {\n classes, translate, disabled, element,\n } = this.props;\n\n return (\n \n
\n \n\n \n\n \n
\n\n
\n \n \n
\n \n );\n }\n}\n\nEditTask.propTypes = {\n translate: PropTypes.func.isRequired,\n classes: PropTypes.object.isRequired,\n updatePatientElement: PropTypes.func.isRequired,\n deletePatientElement: PropTypes.func.isRequired,\n element: PropTypes.object.isRequired,\n onClose: PropTypes.func.isRequired,\n currentProgram: PropTypes.object.isRequired,\n disabled: PropTypes.bool,\n};\n\nEditTask.defaultProps = {\n disabled: false,\n};\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n currentProgram: state.programStore.currentProgram,\n});\n\nconst mapDispatchToProps = dispatch => ({\n ...bindActionCreators(ProgramStore.actionCreators, dispatch),\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(withStyles(styles)(EditTask));\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar react_router_1 = require(\"react-router\");\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar core_1 = require(\"@material-ui/core\");\nvar urls_1 = __importDefault(require(\"../../app/urls\"));\nvar patientConsentService_1 = require(\"../../app/services/patientConsentService\");\nvar components_1 = require(\"../../common/components\");\nvar breadcrumbUtil_1 = require(\"../../common/breadcrumbUtil\");\nvar translate_1 = __importDefault(require(\"../../app/localization/translate\"));\nvar store_1 = require(\"../../app/store\");\nvar components_2 = require(\"../../youwell-common/components\");\nvar icons_1 = require(\"../../youwell-common/icons\");\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return (0, core_1.createStyles)({\n main: {},\n consents: {\n margin: theme.spacing(2, 0),\n },\n consentList: {\n marginTop: theme.spacing(2),\n padding: theme.spacing(2),\n background: theme.palette.common.white,\n },\n greenIcon: {\n color: theme.youwell.colors.green,\n },\n consent: {\n padding: theme.spacing(2),\n background: theme.palette.common.white,\n },\n actions: {\n marginTop: theme.spacing(8),\n borderTop: theme.youwell.borders.dim,\n padding: theme.spacing(4),\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'flex-end',\n },\n consentCheckBox: {\n marginRight: theme.spacing(4),\n },\n sendButton: {\n minWidht: 100,\n },\n radioGroup: {},\n radio: {},\n}); });\nvar Consent = function () {\n var classes = useStyles();\n var dispatch = (0, store_1.useYouwellDispatch)();\n var consentId = (0, react_router_1.useParams)().consentId;\n var translate = (0, translate_1.default)();\n var clientConfig = (0, store_1.useYouwellSelector)(function (state) { return state.auth.clientConfig; });\n var patientConsents = (0, store_1.useYouwellSelector)(function (state) { var _a; return (_a = state.auth.profileData) === null || _a === void 0 ? void 0 : _a.patientConsents; });\n var selectedConsent = consentId ? patientConsents === null || patientConsents === void 0 ? void 0 : patientConsents.find(function (c) { return c.id === Number(consentId); }) : (patientConsents === null || patientConsents === void 0 ? void 0 : patientConsents.length) === 1 ? patientConsents[0] : patientConsents === null || patientConsents === void 0 ? void 0 : patientConsents.find(function (c) { return !c.consentDate; });\n var selectedConsentTask = (0, store_1.useYouwellSelector)(function (state) { var _a; return (selectedConsent ? (_a = state.patientConsentStore.taskDetails) === null || _a === void 0 ? void 0 : _a[selectedConsent.consentTaskId] : null); });\n var _a = React.useState(null), consentChecked = _a[0], setConsentChecked = _a[1];\n var hasUnansweredConsents = (0, store_1.useYouwellSelector)(function (state) { return state.auth.hasUnansweredConsents; });\n var sendResponse = function () {\n if (selectedConsent) {\n var response = {\n consentId: selectedConsent.id,\n consentTaskVersion: selectedConsentTask === null || selectedConsentTask === void 0 ? void 0 : selectedConsentTask.version,\n accept: !!consentChecked,\n };\n var redirect = hasUnansweredConsents ? urls_1.default.inside.home : undefined;\n (0, patientConsentService_1.submitConsents)(dispatch, response, { callback: function () { return setConsentChecked(null); }, redirect: redirect });\n }\n };\n React.useEffect(function () {\n if (selectedConsent && !selectedConsentTask) {\n (0, patientConsentService_1.fetchConsentTaskDetails)(dispatch, selectedConsent.consentTaskId);\n }\n }, [dispatch, selectedConsent, selectedConsentTask]);\n return (React.createElement(components_1.PageLayout\n // title={translate('consentPage.consent')}\n , { \n // title={translate('consentPage.consent')}\n breadcrumb: (0, breadcrumbUtil_1.getBreadCrumb)(translate('consentPage.consent'), translate, clientConfig) },\n React.createElement(\"div\", { className: classes.main }, patientConsents && patientConsents.length > 1 && (React.createElement(\"div\", { className: classes.consents },\n React.createElement(core_1.Typography, { variant: \"subtitle1\", color: \"primary\" }, translate(hasUnansweredConsents ? 'consentPage.youHaveRequiredConsents' : 'consentPage.yourConsents')),\n React.createElement(core_1.List, { className: classes.consentList }, patientConsents.map(function (c) { return (React.createElement(core_1.ListItem, { key: c.id, button: true, component: react_router_dom_1.Link, to: \"\".concat(urls_1.default.inside.pages.consent, \"/\").concat(c.id), selected: Boolean(selectedConsent && c.id === selectedConsent.id) },\n React.createElement(core_1.ListItemIcon, null, c.consent ? React.createElement(icons_1.CheckedIcon, { className: classes.greenIcon }) : React.createElement(icons_1.UncheckedIcon, null)),\n React.createElement(core_1.ListItemText, { primary: c.consentName }))); }))))),\n React.createElement(React.Fragment, null, selectedConsent && selectedConsentTask && (React.createElement(\"div\", { className: classes.consent },\n React.createElement(components_2.TaskContentDisplay, { task: selectedConsentTask }),\n React.createElement(\"div\", { className: classes.actions },\n React.createElement(core_1.RadioGroup, { className: classes.radioGroup, onChange: function (_e, value) { return setConsentChecked(value === 'true'); } },\n React.createElement(core_1.FormControlLabel, { className: classes.radio, value: \"true\", control: React.createElement(core_1.Radio, { checked: consentChecked === null ? selectedConsent.consent : consentChecked }), label: translate('consentPage.yesIConsent') }),\n React.createElement(core_1.FormControlLabel, { className: classes.radio, value: \"false\", control: React.createElement(core_1.Radio, { checked: !(consentChecked === null ? selectedConsent.consent : consentChecked) }), label: translate('consentPage.noIDontConsent') })),\n React.createElement(core_1.Button, { onClick: sendResponse, variant: \"contained\", color: \"primary\", disabled: selectedConsent.consentDate && consentChecked === null, className: classes.sendButton }, translate(selectedConsent.consentDate ? 'consentPage.update' : 'consentPage.send'))))))));\n};\nexports.default = Consent;\n","import * as React from 'react';\nimport { useSelector } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\n\nimport {\n makeStyles,\n Typography,\n} from '@material-ui/core';\n\nimport { useParams } from 'react-router';\nimport classnames from 'classnames';\nimport { contentWidth } from '../../common/components/Layout';\nimport { PageLayout } from '../../common/components';\nimport { getBreadCrumb } from '../../common/breadcrumbUtil';\nimport { patientProgramElementGroups } from '../../common/constants';\nimport TaskElement from '../../youwell-common/components/taskElements/TaskElement';\n\nconst useStyles = makeStyles(theme => ({\n root: {\n marginTop: theme.spacing(4),\n },\n element: {\n marginBottom: theme.spacing(4),\n },\n elementHeading: {\n borderBottom: theme.youwell.borders.normal,\n borderBottomColor: theme.palette.secondary.main,\n borderBottomWidth: 4,\n display: 'flex',\n alignItems: 'center',\n },\n elementHeadingTitle: {\n flex: '1 1 auto',\n },\n items: {\n display: 'flex',\n flexDirection: 'column',\n\n '&.et_BullsEye': {\n flexDirection: 'row',\n justifyContent: 'space-between',\n flexWrap: 'wrap',\n maxWidth: contentWidth,\n\n [theme.breakpoints.down('sm')]: {\n justifyContent: 'space-evenly',\n },\n [theme.breakpoints.down('xs')]: {\n justifyContent: 'center',\n },\n },\n },\n item: {\n margin: theme.spacing(2, 0),\n },\n elementTaskTitle: {\n marginBottom: theme.spacing(1),\n },\n noElements: {\n margin: theme.spacing(2, 0),\n },\n}), { name: 'ElementSummary' });\n\nconst getItems = (task, elementType) => task.contentElements\n ?.filter(d => (elementType ? d.elementType === elementType : d.questions?.length))\n .map(d => ({ key: `${task.id}-${d.id}`, element: d, task })) || [];\n\nconst getElements = (element, elementType) => {\n if (element) {\n if (element.task) {\n return getItems(element.task, elementType);\n }\n if (element.module?.tasks) {\n return element.module.tasks.reduce((prev, curr) => [\n ...prev, ...getItems(curr, elementType)], []);\n }\n }\n return [];\n};\n\nconst renderElements = (element, elementType, classes, translate, allTaskResponsesForElement) => {\n const list = getElements(element, elementType);\n\n if (!list.length) {\n return (\n \n {translate('elementsPage.noItems')}\n \n );\n }\n\n return list.map((item, i) => (\n
\n \n {item.task.name}\n \n\n {}}\n getResponses={() => {}}\n element={item.element}\n taskResponses={allTaskResponsesForElement[item.task.id]}\n TaskFormProps={{ readOnly: true, small: true }}\n // LinkElementProps={LinkElementProps}\n elementIndex={i}\n onResponse={() => {}}\n />\n
\n ));\n};\n\nconst ElementSummary = () => {\n const classes = useStyles();\n const { elementType } = useParams();\n const translate = useSelector(state => getTranslate(state.localize));\n const clientConfig = useSelector(state => state.auth.clientConfig);\n const currentProgram = useSelector(state => state.programStore.currentProgram);\n const allTaskResponses = useSelector(state => state.programStore.currentProgramTaskResponses || {});\n\n if (!currentProgram) {\n return null;\n }\n\n const mainElements = (currentProgram.groupedElements && currentProgram.groupedElements[patientProgramElementGroups.main]) || [];\n\n return (\n \n
\n {mainElements.map(element => (\n
\n\n
\n \n {element.name}\n \n
\n\n
\n {renderElements(element, elementType, classes, translate, allTaskResponses[element.id] || {})}\n
\n
\n ))}\n
\n \n );\n};\n\nexport default ElementSummary;\n","import * as React from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\n\nimport { Link } from 'react-router-dom';\nimport {\n createStyles,\n IconButton,\n makeStyles,\n Typography,\n} from '@material-ui/core';\n\nimport urls from '../../app/urls';\nimport { InfoMessage, PageLayout } from '../../common/components';\nimport { getBreadCrumb } from '../../common/breadcrumbUtil';\nimport { getImageUrl } from '../../youwell-common/apiUrls';\nimport { DeleteIcon } from '../../common/icons';\nimport * as ProgramStore from '../../app/store/ProgramStore';\nimport { Image } from '../../youwell-common/components';\nimport { sortByMany, toLookup } from '../../youwell-common/arrayUtils';\n\nconst useStyles = makeStyles(theme => createStyles({\n main: {\n },\n tasks: {\n paddingTop: theme.spacing(2),\n minHeight: 300,\n },\n task: {\n marginTop: theme.spacing(2),\n background: theme.youwell.colors.inputBackground,\n minHeight: theme.spacing(15),\n wordBreak: 'break-word',\n },\n moduleTitle: {\n paddingTop: theme.spacing(4),\n marginLeft: theme.spacing(20),\n fontWeight: 500,\n\n [theme.breakpoints.down('xs')]: {\n paddingTop: theme.spacing(2),\n marginLeft: theme.spacing(2),\n },\n },\n taskDescription: {\n marginLeft: theme.spacing(20),\n textDecoration: 'underline',\n\n [theme.breakpoints.down('xs')]: {\n marginLeft: theme.spacing(2),\n },\n },\n imageDisplay: {\n margin: theme.spacing(2.5),\n width: 120,\n height: 80,\n objectFit: 'contain',\n float: 'left',\n\n [theme.breakpoints.down('xs')]: {\n width: 60,\n height: 40,\n margin: theme.spacing(2.5, 1),\n },\n },\n deleteButton: {\n float: 'right',\n },\n}));\n\nconst buildFavouriteViewModel = (favTask, elementLookup, groupedElements) => {\n let el = elementLookup[favTask.patientProgramElementId];\n if (!el) {\n return null;\n }\n\n const elementGroup = el.elementGroup;\n el = groupedElements[elementGroup].find(d => d.id === el.id);\n\n let task;\n let elementName;\n let elementSubIndex;\n\n if (el.task && el.task.id === favTask.taskId) {\n task = el.task;\n elementName = el.name || el.task.name;\n } else if (el.module && el.module.tasks) {\n elementSubIndex = el.module.tasks.findIndex(d => d.id === favTask.taskId);\n task = el.module.tasks[elementSubIndex];\n elementName = task?.name;\n }\n\n return {\n task,\n elementName,\n elementGroup,\n indexInGroup: el.indexInGroup,\n elementSubIndex,\n patientProgramElementId: el.id,\n moduleName: el.module?.name,\n moduleImageId: el.module?.moduleImageId,\n };\n};\n\nconst Favourites = () => {\n const classes = useStyles();\n const dispatch = useDispatch();\n const translate = useSelector(state => getTranslate(state.localize));\n const clientConfig = useSelector(state => state.auth.clientConfig);\n const currentProgram = useSelector(state => state.programStore.currentProgram);\n\n const deleteFavourite = favToDelete => () => {\n const data = {\n taskId: favToDelete.task.id,\n patientProgramElementId: favToDelete.patientProgramElementId,\n patientProgramId: currentProgram.id,\n };\n\n dispatch(ProgramStore.actionCreators.toggleFavourite(data, { reducerParams: { patientProgramId: data.patientProgramId } }));\n };\n\n if (!currentProgram) {\n return null;\n }\n\n const elementLookup = toLookup(currentProgram.elements);\n const favouriteList = sortByMany(\n currentProgram.favouriteTasks\n .map(t => buildFavouriteViewModel(t, elementLookup, currentProgram.groupedElements))\n .filter(d => d),\n 'elementGroup', 'indexInGroup', 'elementSubIndex',\n ) || [];\n\n return (\n \n
\n {!favouriteList.length && (\n \n )}\n
\n {favouriteList.map(fav => (\n
\n \n \n \n \n {fav.moduleImageId && (\n \n ) }\n {fav.moduleName && (\n \n {`${translate('favourites.module')}: ${fav.moduleName}`}\n \n ) }\n \n {fav.elementName}\n \n \n
\n ))}\n
\n
\n \n );\n};\n\nexport default Favourites;\n","import * as React from 'react';\nimport { useSelector } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\n\nimport {\n createStyles,\n makeStyles,\n} from '@material-ui/core';\n\nimport { FeedbackForm, PageLayout } from '../../common/components';\nimport { getBreadCrumb } from '../../common/breadcrumbUtil';\n\nconst useStyles = makeStyles(() => createStyles({\n main: {\n },\n}));\n\nconst Feedback = () => {\n const classes = useStyles();\n const translate = useSelector(state => getTranslate(state.localize));\n const clientConfig = useSelector(state => state.auth.clientConfig);\n\n return (\n \n
\n \n
\n \n );\n};\n\nexport default Feedback;\n","import * as React from 'react';\nimport { Route, Switch } from 'react-router-dom';\n\nimport { PageNotFound } from '../../youwell-common/components';\nimport urls from '../../app/urls';\nimport Favourites from './Favourites';\nimport Videos from './Videos';\nimport Calendar from './Calendar/Index';\nimport ActivityDiary from './activityDiary/ActivityDiary';\nimport Performance from './Performance';\nimport SleepDiary from './sleepDiary/Index';\nimport PrintFiles from './PrintFiles';\nimport ElementSummary from './ElementSummary';\nimport Feedback from './Feedback';\nimport Consent from './Consent';\nimport SingleTaskPage from '../singlepage/SingleTaskPage';\nimport MissingGuardianConsent from './MissingGuardianConsent';\nimport Health from './health/Index';\n\nconst Index = () => (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n);\n\nexport default Index;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar components_1 = require(\"../../common/components\");\nvar translate_1 = __importDefault(require(\"../../app/localization/translate\"));\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return (0, core_1.createStyles)({\n root: {\n padding: theme.spacing(2),\n },\n description: {\n border: theme.youwell.borders.dim,\n padding: theme.spacing(2),\n },\n}); });\nvar MissingGuardianConsent = function () {\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n return (React.createElement(components_1.PageLayout, null,\n React.createElement(\"div\", { className: classes.root },\n React.createElement(core_1.Typography, { variant: \"subtitle1\", className: classes.description }, translate('missingGuardianConsent.description')))));\n};\nexports.default = MissingGuardianConsent;\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport PropTypes from 'prop-types';\nimport {\n withStyles, Typography,\n} from '@material-ui/core';\nimport { getBreadCrumb } from '../../common/breadcrumbUtil';\nimport { InfoMessage, PageLayout } from '../../common/components';\nimport OverviewPerformanceChart from './components/OverviewPerformanceChart';\nimport DetailedPerformanceChart from './components/DetailedPerformanceChart';\nimport { PROGRAM_CURRENTPROGRAM_RECEIVED } from '../../app/store/actions';\n\nconst styles = theme => ({\n root: {\n margin: theme.spacing(6, 12),\n\n [theme.breakpoints.down('sm')]: {\n margin: theme.spacing(3, 5),\n },\n\n [theme.breakpoints.down('xs')]: {\n margin: theme.spacing(1.5, 2),\n },\n },\n baselineChartContainer: {\n marginTop: theme.spacing(2),\n },\n detailsChartContainer: {\n marginTop: theme.spacing(7),\n },\n});\n\nfunction Performance(props) {\n const {\n classes, translate, clientConfig, programDetails, hasLoaded,\n } = props;\n\n if (!programDetails) {\n if (hasLoaded) {\n return (\n
\n \n
\n );\n }\n return null;\n }\n\n return (\n \n \n {translate('performance.header')}\n \n\n
\n \n
\n\n
\n \n
\n \n );\n}\n\nPerformance.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n clientConfig: PropTypes.object.isRequired,\n programDetails: PropTypes.object,\n hasLoaded: PropTypes.bool,\n};\n\nPerformance.defaultProps = {\n programDetails: null,\n hasLoaded: false,\n};\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n clientConfig: state.auth.clientConfig,\n programDetails: state.programStore.currentProgram,\n hasLoaded: Boolean(state.programStore.requests[PROGRAM_CURRENTPROGRAM_RECEIVED]\n && state.programStore.requests[PROGRAM_CURRENTPROGRAM_RECEIVED].completed),\n});\n\nexport default connect(mapStateToProps)(withStyles(styles)(Performance));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\n\nimport {\n Typography,\n} from '@material-ui/core';\n\nimport { PageLayout } from '../../common/components';\nimport { getBreadCrumb } from '../../common/breadcrumbUtil';\nimport { patientProgramElementGroups } from '../../common/constants';\nimport apiUrls from '../../youwell-common/apiUrls';\n\nconst styles = theme => ({\n root: {\n marginTop: theme.spacing(4),\n },\n element: {\n marginBottom: theme.spacing(4),\n },\n elementHeading: {\n marginBottom: theme.spacing(2),\n borderBottom: theme.youwell.borders.normal,\n borderBottomColor: theme.palette.secondary.main,\n borderBottomWidth: 4,\n display: 'flex',\n alignItems: 'center',\n },\n elementHeadingTitle: {\n flex: '1 1 auto',\n },\n elementContent: {\n padding: theme.spacing(1, 2),\n },\n print: {\n marginBottom: theme.spacing(2),\n display: 'block',\n },\n underline: {\n color: theme.youwell.colors.secondary,\n borderBottom: theme.youwell.borders.normal,\n borderBottomColor: theme.youwell.colors.secondary,\n },\n noPrints: {\n margin: theme.spacing(2, 0),\n },\n});\n\n\nclass PrintFiles extends React.Component {\n render() {\n const {\n classes, translate, currentProgram, clientConfig,\n } = this.props;\n\n if (!currentProgram) {\n return null;\n }\n\n const printModules = ((currentProgram.groupedElements && currentProgram.groupedElements[patientProgramElementGroups.main]) || [])\n .map((element) => {\n const tasksWithPrint = element.module?.tasks?.filter(d => !!d.printFileId);\n return {\n ...element.module,\n modulePrintFileId: element.module?.printFileId,\n tasksWithPrint,\n noPrints: !element.module?.printFileId && !tasksWithPrint?.length,\n };\n });\n // .filter(d => d.modulePrintFileId);\n\n const hasPrints = printModules.some(d => d.modulePrintFileId);\n\n return (\n \n
\n {hasPrints ? printModules.map(module => (\n
\n\n
\n \n {module.name}\n \n
\n\n
\n {module.noPrints && (\n \n {translate('printFiles.noPrintFileForModule')}\n \n )}\n {module.modulePrintFileId && (\n \n \n {translate('printFiles.downloadPdfForModule')}\n \n \n )}\n\n {module.tasksWithPrint?.length > 0 && (\n
\n {/* \n {translate('printFiles.pagesInModule')}\n */}\n {module.tasksWithPrint.map(task => (\n \n \n {task.name}\n \n \n ))}\n
\n )}\n
\n
\n )) : (\n \n {translate('printFiles.noPrintFilesAvailable')}\n \n )}\n
\n \n );\n }\n}\n\nPrintFiles.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n clientConfig: PropTypes.object.isRequired,\n currentProgram: PropTypes.object,\n};\n\nPrintFiles.defaultProps = {\n currentProgram: null,\n};\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n clientConfig: state.auth.clientConfig,\n currentProgram: state.programStore.currentProgram,\n});\n\n\nexport default connect(mapStateToProps)(withStyles(styles)(PrintFiles));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\n\nimport {\n Typography,\n} from '@material-ui/core';\n\nimport { PageLayout } from '../../common/components';\nimport { getVideosForElement } from '../../common/videoUtil';\nimport { getBreadCrumb } from '../../common/breadcrumbUtil';\nimport { patientProgramElementGroups } from '../../common/constants';\n\nconst styles = theme => ({\n root: {\n marginTop: theme.spacing(4),\n },\n element: {\n marginBottom: theme.spacing(4),\n },\n elementHeading: {\n borderBottom: theme.youwell.borders.normal,\n borderBottomColor: theme.palette.secondary.main,\n borderBottomWidth: 4,\n display: 'flex',\n alignItems: 'center',\n },\n elementHeadingTitle: {\n flex: '1 1 auto',\n },\n videos: {\n display: 'flex',\n },\n video: {\n flex: '0 1 50%',\n padding: theme.spacing(2),\n },\n noVideos: {\n margin: theme.spacing(2),\n },\n});\n\n\nclass Videos extends React.Component {\n render() {\n const {\n classes, translate, currentProgram, clientConfig,\n } = this.props;\n\n if (!currentProgram) {\n return null;\n }\n\n const mainElements = (currentProgram.groupedElements && currentProgram.groupedElements[patientProgramElementGroups.main]) || [];\n\n return (\n \n
\n {mainElements.map(element => (\n
\n\n
\n \n {element.name}\n \n
\n\n
\n {getVideosForElement(element).map((video, cI) => (\n // eslint-disable-next-line react/no-array-index-key\n \n {video.html && (\n /* eslint-disable react/no-danger */\n
\n /* eslint-enable react/no-danger */\n )}\n {video.Component && (\n
\n {video.Component}\n
\n )}\n {video.none && (\n \n {translate('videos.noVideosForModule')}\n \n )}\n \n ))}\n
\n
\n ))}\n
\n \n );\n }\n}\n\nVideos.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n clientConfig: PropTypes.object.isRequired,\n currentProgram: PropTypes.object,\n};\n\nVideos.defaultProps = {\n currentProgram: null,\n};\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n clientConfig: state.auth.clientConfig,\n currentProgram: state.programStore.currentProgram,\n});\n\n\nexport default connect(mapStateToProps)(withStyles(styles)(Videos));\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar react_redux_1 = require(\"react-redux\");\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar core_1 = require(\"@material-ui/core\");\nvar pickers_1 = require(\"@material-ui/pickers\");\nvar react_1 = require(\"react\");\nvar components_1 = require(\"../../../common/components\");\nvar breadcrumbUtil_1 = require(\"../../../common/breadcrumbUtil\");\nvar dateUtils_1 = require(\"../../../youwell-common/dateUtils\");\nvar image_1 = require(\"../../../common/image\");\nvar ActivityTable_1 = __importDefault(require(\"./components/ActivityTable\"));\nvar AddEditActivityDialog_1 = __importDefault(require(\"./components/AddEditActivityDialog\"));\nvar DateDetails_1 = __importDefault(require(\"./components/DateDetails\"));\nvar objectUtils_1 = require(\"../../../youwell-common/objectUtils\");\nvar ActivityList_1 = __importDefault(require(\"./components/ActivityList\"));\nvar arrayUtils_1 = require(\"../../../youwell-common/arrayUtils\");\nvar constants_1 = require(\"../../../common/constants\");\nvar activityService_1 = require(\"../../../app/services/activityService\");\nvar translate_1 = __importDefault(require(\"../../../app/localization/translate\"));\nvar store_1 = require(\"../../../app/store\");\nvar useStyles = (0, core_1.makeStyles)(function (theme) {\n var _a, _b, _c, _d, _e, _f;\n return (0, core_1.createStyles)({\n top: (_a = {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'flex-start',\n marginBottom: theme.spacing(4)\n },\n _a[theme.breakpoints.down('md')] = {\n padding: theme.spacing(3, 3),\n },\n _a[theme.breakpoints.down('xs')] = {\n padding: theme.spacing(1, 0),\n },\n _a),\n sectionTitle: {\n borderLeft: theme.youwell.borders.secondary,\n marginBottom: theme.spacing(3),\n padding: theme.spacing(1, 2),\n },\n tabs: {\n padding: theme.spacing(1, 2),\n },\n followUpActivitiesTableContainer: (_b = {\n backgroundColor: theme.youwell.colors.secondaryBackground,\n padding: theme.spacing(5, 4),\n borderRadius: theme.youwell.shapes.borderRadiusRounder,\n width: '100%'\n },\n _b[theme.breakpoints.down('sm')] = {\n padding: theme.spacing(2, 2),\n },\n _b[theme.breakpoints.down('xs')] = {\n padding: theme.spacing(2, 1),\n },\n _b),\n flexContainer: {\n display: 'flex',\n alignItems: 'flex-start',\n },\n followUpActivitiesTable: {\n flex: '1 1 auto',\n },\n effortDescription: {\n display: 'flex',\n alignItems: 'center',\n },\n flagIcon: (_c = {\n margin: theme.spacing(4, 5, 0, 5)\n },\n _c[theme.breakpoints.down('sm')] = {\n display: 'none',\n },\n _c),\n flagIconSmall: (_d = {\n margin: theme.spacing(0, 1)\n },\n _d[theme.breakpoints.up('md')] = {\n display: 'none',\n },\n _d),\n content: (_e = {\n padding: theme.spacing(4, 10),\n marginBottom: theme.spacing(4),\n '&:last-child': {\n marginBottom: theme.spacing(12),\n }\n },\n _e[theme.breakpoints.down('md')] = {\n padding: theme.spacing(3, 3),\n },\n _e[theme.breakpoints.down('xs')] = {\n padding: theme.spacing(1, 0),\n },\n _e),\n calendar: {\n background: theme.palette.common.white,\n borderRadius: theme.youwell.shapes.borderRadiusRounder,\n width: '100%',\n minHeight: 340,\n overflowX: 'hidden',\n },\n day: {\n width: 36,\n height: 36,\n margin: 2,\n fontSize: theme.typography.caption.fontSize,\n borderRadius: theme.youwell.shapes.borderRadius,\n color: 'inherit',\n '&:hover': {\n color: theme.palette.common.white,\n background: theme.palette.primary.light,\n },\n },\n notCompleted: {\n background: 'url(\"data:image/svg+xml;utf8,\")',\n backgroundColor: \"\".concat(theme.palette.secondary.main, \"aa\"),\n color: theme.palette.common.white,\n },\n notRegistered: {\n background: theme.palette.grey[200],\n },\n completed: {\n background: theme.palette.secondary.main,\n color: theme.palette.common.white,\n },\n today: {\n fontWeight: theme.typography.fontWeightBold,\n border: theme.youwell.borders.primary,\n },\n futurePlans: {\n background: theme.palette.secondary.dark,\n color: theme.palette.common.white,\n },\n nonCurrentMonthDay: {\n background: theme.palette.common.white,\n color: theme.palette.text.disabled,\n },\n noActivityRegistered: (_f = {\n padding: theme.spacing(3),\n textAlign: 'center'\n },\n _f[theme.breakpoints.down('xs')] = {\n padding: theme.spacing(2),\n },\n _f),\n addActivityModal: {\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n },\n });\n}, { name: 'ActivityDiary' });\nvar getActivityLookup = function (activities) { return (activities === null || activities === void 0 ? void 0 : activities.reduce(function (prev, activity) {\n var _a;\n var future = (0, dateUtils_1.isFuture)(activity.date);\n return __assign(__assign({}, prev), (_a = {}, _a[(0, dateUtils_1.isoDate)(activity.date)] = {\n entry: activity,\n future: future,\n notCompleted: activity.effortRating === -1,\n notRegistered: !activity.effortRating,\n completed: activity.effortRating && activity.effortRating > 0,\n }, _a));\n}, {})) || {}; };\nvar ActivityDiary = function () {\n var classes = useStyles();\n var dispatch = (0, react_redux_1.useDispatch)();\n var translate = (0, translate_1.default)();\n var clientConfig = (0, store_1.useYouwellSelector)(function (state) { return state.auth.clientConfig; });\n var patientId = (0, store_1.useYouwellSelector)(function (state) { return state.auth.profileData && state.auth.profileData.id; });\n var activities = (0, store_1.useYouwellSelector)(function (state) { return state.activityDataStore.activities; }); // TODO: add || [] in the end? does not work... entries will not load then..\n var activitiesLoadedFrom = (0, store_1.useYouwellSelector)(function (state) { return state.activityDataStore.activitiesLoadedFrom; });\n var _a = React.useState(null), activitiesToFollowUp = _a[0], setActivitiesToFolluwUp = _a[1];\n var _b = React.useState({}), followupHashset = _b[0], setFollowupHashset = _b[1];\n var _c = React.useState(true), showUpcoming = _c[0], setShowUpcoming = _c[1];\n var _d = React.useState(null), addEditActivity = _d[0], setAddEditActivity = _d[1];\n var _e = React.useState(null), selectedDate = _e[0], setSelectedDate = _e[1];\n (0, react_1.useEffect)(function () {\n if (!activities && patientId) {\n (0, activityService_1.fetchActivitiesData)(dispatch);\n }\n }, [dispatch, patientId, activities]);\n var todayDate = React.useMemo(function () { return (0, dateUtils_1.today)(); }, []);\n (0, react_1.useEffect)(function () {\n // Using hashset to set isRated on elements. For fade out visualization after registration of effort\n if (activities && activities.length > 0) {\n var newActivitiesToFollowUp = activities === null || activities === void 0 ? void 0 : activities.filter(function (d) {\n var ld = (0, dateUtils_1.getLocalDate)(d.date);\n return ld !== null && todayDate >= ld && (!d.effortRating || (followupHashset && d.id && followupHashset[d.id]));\n }).map(function (d) { return (__assign(__assign({}, d), { isRated: (0, objectUtils_1.hasValue)(d.effortRating) && (followupHashset && d.id && followupHashset[d.id]) })); });\n var newLookup = newActivitiesToFollowUp.reduce(function (prev, curr) {\n var _a;\n return (curr.id ? __assign(__assign({}, prev), (_a = {}, _a[curr.id.toString()] = true, _a)) : __assign({}, prev));\n }, followupHashset);\n setActivitiesToFolluwUp(newActivitiesToFollowUp);\n setFollowupHashset(newLookup);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [activities, todayDate]); // dont depend on followupHashset-changes.\n var dateLookup = React.useMemo(function () { return (activities && activities.length > 0 ? getActivityLookup(activities) : {}); }, [activities]);\n var upcomingActivities = React.useMemo(function () { return (activities && activities.length > 0 ? activities.filter(function (activity) { var _a; return dateLookup && ((_a = dateLookup[(0, dateUtils_1.isoDate)(activity.date)]) === null || _a === void 0 ? void 0 : _a.future); }) : []); }, [activities, dateLookup]);\n var pastActivities = React.useMemo(function () { return (activities && activities.length > 0 ? activities.filter(function (activity) { var _a; return dateLookup && !((_a = dateLookup[(0, dateUtils_1.isoDate)(activity.date)]) === null || _a === void 0 ? void 0 : _a.future); }) : []); }, [activities, dateLookup]);\n var onClickDate = function (date) {\n if (!date) {\n return;\n }\n var dateWithoutTime = new Date(date);\n dateWithoutTime.setHours(0, 0, 0, 0);\n var activitiesOnSelectedDate = activities === null || activities === void 0 ? void 0 : activities.filter(function (a) { return (0, dateUtils_1.isSameDate)(a.date, dateWithoutTime); });\n if (activitiesOnSelectedDate && activitiesOnSelectedDate.length > 0) {\n setSelectedDate(dateWithoutTime);\n }\n else {\n setAddEditActivity({ date: dateWithoutTime, category: constants_1.activityCategories.physical });\n }\n };\n var renderCalendarDay = function (date, _selected, dayInCurrentMonth) {\n var _a;\n var dayClassName;\n if (dateLookup) {\n var d = dateLookup[(0, dateUtils_1.isoDate)(date)] || {};\n dayClassName = (0, classnames_1.default)(classes.day, (_a = {},\n _a[classes.today] = (0, dateUtils_1.isSameDate)(date, todayDate),\n _a[classes.nonCurrentMonthDay] = !dayInCurrentMonth,\n _a[classes.notCompleted] = !d.future && d.notCompleted,\n _a[classes.notRegistered] = !d.future && d.notRegistered,\n _a[classes.completed] = d.completed,\n _a[classes.futurePlans] = d.future,\n _a));\n }\n return (React.createElement(core_1.ButtonBase, { className: dayClassName, disabled: !dayInCurrentMonth },\n React.createElement(\"span\", null, dayInCurrentMonth && date ? date.getDate() : '')));\n };\n var loadMonth = function (date) {\n var d = (0, dateUtils_1.getLocalDate)(activitiesLoadedFrom);\n if (d !== null && date !== null && date < d) {\n (0, activityService_1.fetchActivitiesData)(dispatch, {\n start: (0, dateUtils_1.addDays)(date, -30),\n end: activitiesLoadedFrom,\n });\n }\n };\n var hasActivitiesToFollowUp = Boolean((activitiesToFollowUp === null || activitiesToFollowUp === void 0 ? void 0 : activitiesToFollowUp.length) && activitiesToFollowUp.length > 0);\n return (React.createElement(components_1.PageLayout, { breadcrumb: (0, breadcrumbUtil_1.getBreadCrumb)(translate('activityDiary.header'), translate, clientConfig) },\n React.createElement(React.Fragment, null, hasActivitiesToFollowUp && (React.createElement(\"div\", { className: classes.top },\n React.createElement(\"div\", { className: classes.sectionTitle },\n React.createElement(core_1.Typography, { variant: \"h6\" }, translate('activityDiary.activities'))),\n React.createElement(\"div\", { className: classes.followUpActivitiesTableContainer },\n React.createElement(core_1.Typography, { variant: \"subtitle1\", className: classes.effortDescription },\n React.createElement(\"div\", { className: classes.flagIconSmall },\n React.createElement(image_1.FlagIcon, null)),\n translate('activityDiary.registerYourEffort')),\n React.createElement(\"div\", { className: classes.flexContainer },\n React.createElement(\"div\", { className: classes.flagIcon },\n React.createElement(image_1.FlagIcon, null)),\n React.createElement(\"div\", { className: classes.followUpActivitiesTable },\n React.createElement(ActivityTable_1.default, { data: activitiesToFollowUp, onEditClick: function (activity) { return setAddEditActivity(activity); }, showRating: true }))))))),\n React.createElement(\"div\", { className: classes.content },\n React.createElement(\"div\", { className: classes.sectionTitle },\n React.createElement(core_1.Typography, { variant: \"h6\" }, translate('activityDiary.calendar')),\n React.createElement(core_1.Typography, { variant: \"subtitle1\" }, translate('activityDiary.calendarInfo'))),\n React.createElement(\"div\", { className: classes.calendar },\n React.createElement(pickers_1.Calendar, { onMonthChange: loadMonth, date: todayDate, onChange: onClickDate, renderDay: renderCalendarDay, allowKeyboardControl: false }))),\n React.createElement(core_1.Tabs, { className: classes.tabs, value: showUpcoming ? 0 : 1, onChange: function (event, value) { return setShowUpcoming(value === 0); }, variant: \"fullWidth\" },\n React.createElement(core_1.Tab, { label: translate('activityDiary.upcoming'), value: 0 }),\n React.createElement(core_1.Tab, { label: translate('activityDiary.pastActivities'), value: 1 })),\n showUpcoming ? (React.createElement(\"div\", { className: classes.content }, upcomingActivities && upcomingActivities.length > 0 ? (React.createElement(ActivityList_1.default, { data: upcomingActivities, onEditClick: function (activity) { return setAddEditActivity(activity); } }))\n : (React.createElement(core_1.Typography, { className: classes.noActivityRegistered, variant: \"subtitle1\", color: \"textSecondary\" }, translate('activityDiary.noActivitiesRegistered'))))) : (React.createElement(\"div\", { className: classes.content }, pastActivities && pastActivities.length > 0 ? (React.createElement(ActivityList_1.default, { data: (0, arrayUtils_1.reverse)(pastActivities), onEditClick: function (activity) { return setAddEditActivity(activity); }, showRating: true }))\n : (React.createElement(core_1.Typography, { className: classes.noActivityRegistered, variant: \"subtitle1\", color: \"textSecondary\" }, translate('activityDiary.noActivitiesRegistered'))))),\n React.createElement(DateDetails_1.default, { open: Boolean(selectedDate), onClose: function () { return setSelectedDate(null); }, onAddClick: function (date) { return setAddEditActivity({ date: date }); }, onEditClick: function (activity) { return setAddEditActivity(activity); }, date: selectedDate }),\n React.createElement(core_1.Modal, { open: Boolean(addEditActivity), onClose: function () { return setAddEditActivity(null); }, className: classes.addActivityModal },\n React.createElement(\"div\", null, addEditActivity && (React.createElement(AddEditActivityDialog_1.default, { onClose: function () { return setAddEditActivity(null); }, activity: addEditActivity }))))));\n};\nexports.default = ActivityDiary;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar core_1 = require(\"@material-ui/core\");\nvar Rating_1 = __importDefault(require(\"@material-ui/lab/Rating\"));\nvar React = __importStar(require(\"react\"));\nvar icons_1 = require(\"../../../../common/icons\");\nvar dateUtils_1 = require(\"../../../../youwell-common/dateUtils\");\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar useStyles = (0, core_1.makeStyles)(function (theme) {\n var _a;\n return (0, core_1.createStyles)({\n root: {},\n dateCell: (_a = {\n flex: '0 0 100px'\n },\n _a[theme.breakpoints.down('xs')] = {\n flex: '0 0 68px',\n },\n _a),\n item: {\n display: 'flex',\n width: '100%',\n textAlign: 'left',\n justifyContent: 'flex-start',\n background: theme.palette.common.white,\n marginBottom: theme.spacing(1),\n padding: theme.spacing(0.5, 1),\n },\n itemContent: {\n flex: '1 1 auto',\n },\n activityText: {},\n activitySubText: {\n display: 'flex',\n justifyContent: 'space-between',\n },\n loadMore: {\n marginTop: theme.spacing(4),\n display: 'flex',\n justifyContent: 'flex-end',\n },\n });\n}, { name: 'ActivityList' });\nvar defaultShowCount = 10;\nvar ActivityList = function (_a) {\n var data = _a.data, onEditClick = _a.onEditClick, showRating = _a.showRating;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var _b = React.useState(defaultShowCount), showCount = _b[0], setShowCount = _b[1];\n if (!data) {\n return null;\n }\n var editActivity = function (activity) { return function () {\n if (onEditClick) {\n onEditClick(activity);\n }\n }; };\n return (React.createElement(\"div\", { className: classes.root }, data === null || data === void 0 ? void 0 :\n data.map(function (activity, i) { return (i < showCount ? (React.createElement(core_1.ButtonBase, { onClick: editActivity(activity), key: activity.id, className: classes.item },\n React.createElement(core_1.Typography, { variant: \"caption\", className: classes.dateCell }, (0, dateUtils_1.shortDate)(activity.date, translate)),\n React.createElement(\"div\", { className: classes.itemContent },\n React.createElement(core_1.Typography, { variant: \"subtitle2\" }, activity.activity),\n React.createElement(\"div\", { className: classes.activitySubText },\n React.createElement(core_1.Typography, { variant: \"body2\", color: \"textSecondary\" }, (0, dateUtils_1.hourCount)(activity.durationInMinutes, translate)),\n showRating && (React.createElement(\"div\", null, activity.effortRating === -1 ? (React.createElement(core_1.Tooltip, { title: translate('activityDiary.notCompleted'), placement: \"top\" },\n React.createElement(icons_1.NotInterestedIcon, { color: \"disabled\" }))) : (React.createElement(Rating_1.default, { size: \"small\", name: \"effortRating-\".concat(activity.id), value: activity.effortRating || 0, color: \"primary\", disabled: true })))))))) : null); }),\n data.length > showCount && (React.createElement(\"div\", { className: classes.loadMore },\n React.createElement(core_1.Button, { size: \"small\", onClick: function () { return setShowCount(function (prev) { return prev + defaultShowCount; }); } }, translate('activityDiary.loadMore'))))));\n};\nActivityList.defaultProps = {\n data: null,\n onEditClick: null,\n showRating: false,\n};\nexports.default = ActivityList;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar core_1 = require(\"@material-ui/core\");\nvar Rating_1 = __importDefault(require(\"@material-ui/lab/Rating\"));\nvar React = __importStar(require(\"react\"));\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar react_redux_1 = require(\"react-redux\");\nvar icons_1 = require(\"../../../../common/icons\");\nvar dateUtils_1 = require(\"../../../../youwell-common/dateUtils\");\nvar activityService_1 = require(\"../../../../app/services/activityService\");\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar useStyles = (0, core_1.makeStyles)(function (theme) {\n var _a;\n return (0, core_1.createStyles)({\n root: {\n margin: theme.spacing(1, 0),\n },\n item: {\n maxHeight: 1000,\n marginBottom: theme.spacing(2),\n padding: theme.spacing(1),\n '$white &': {\n marginBottom: theme.spacing(3),\n padding: 0,\n },\n },\n hiddenWhenRated: {\n opacity: 0,\n margin: 0,\n padding: 0,\n maxHeight: 0,\n transition: 'all 0.5s linear',\n },\n itemContent: {\n display: 'flex',\n alignItems: 'center',\n backgroundColor: theme.palette.grey[100],\n padding: theme.spacing(1),\n minHeight: 50,\n '$white &': {\n backgroundColor: theme.palette.common.white,\n },\n },\n dateLabel: {\n display: 'block',\n marginBottom: theme.spacing(0.5),\n '&:first-letter': {\n textTransform: 'capitalize',\n },\n },\n white: {},\n notCompletedIcon: {\n color: theme.palette.error.main,\n },\n activityText: {\n flex: '1 1 auto',\n },\n editIcon: {\n marginLeft: theme.spacing(1),\n },\n actions: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'flex-end',\n border: theme.youwell.borders.primary,\n borderStyle: 'dotted',\n padding: theme.spacing(0, 1),\n },\n registerLabel: (_a = {\n marginRight: theme.spacing(1)\n },\n _a[theme.breakpoints.down('xs')] = {\n display: 'none',\n },\n _a),\n ratingEffortTitle: {\n padding: theme.spacing(1),\n fontSize: 18,\n },\n });\n}, { name: 'ActivityTable' });\nvar ActivityTable = function (_a) {\n var _b;\n var data = _a.data, onEditClick = _a.onEditClick, white = _a.white, showRating = _a.showRating;\n var dispatch = (0, react_redux_1.useDispatch)();\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n if (!data) {\n return null;\n }\n var editActivity = function (activity) { return function () {\n if (onEditClick) {\n onEditClick(activity);\n }\n }; };\n var handleRatingChange = function (activity, rating) {\n if (rating === null) {\n return;\n }\n var updatedActivity = __assign(__assign({}, activity), { effortRating: rating });\n (0, activityService_1.updateActivitiesData)(dispatch, updatedActivity);\n };\n return (React.createElement(\"div\", { className: (0, classnames_1.default)(classes.root, (_b = {}, _b[classes.white] = white, _b)) }, data.map(function (activity) {\n var _a;\n return (React.createElement(\"div\", { key: activity.id, className: (0, classnames_1.default)(classes.item, (_a = {}, _a[classes.hiddenWhenRated] = activity.isRated, _a)) },\n React.createElement(core_1.Typography, { color: \"primary\", variant: \"caption\", className: classes.dateLabel }, (0, dateUtils_1.shortDate)(activity.date, translate, false, true)),\n React.createElement(\"div\", { className: classes.itemContent },\n React.createElement(\"div\", { className: classes.activityText },\n React.createElement(core_1.Typography, { variant: \"subtitle2\" }, activity.activity),\n React.createElement(core_1.Typography, { variant: \"body2\", color: \"textSecondary\" }, (0, dateUtils_1.hourCount)(activity.durationInMinutes, translate))),\n React.createElement(core_1.IconButton, { className: classes.editIcon, onClick: editActivity(activity) },\n React.createElement(icons_1.EditIcon, null))),\n showRating && (React.createElement(\"div\", { className: classes.actions },\n React.createElement(core_1.Typography, { variant: \"caption\", color: \"primary\", className: classes.registerLabel }, \"\".concat(translate('activityDiary.effort'), \": \")),\n React.createElement(core_1.Tooltip, { title: translate('activityDiary.notCompleted'), placement: \"top\" },\n React.createElement(core_1.IconButton, { className: classes.notCompletedIcon, onClick: function () { return handleRatingChange(activity, -1); } },\n React.createElement(icons_1.NotInterestedIcon, null))),\n React.createElement(Rating_1.default, { name: \"effortRating-\".concat(activity.id), onChange: function (e, r) { return handleRatingChange(activity, r); }, value: activity.effortRating || 0, color: \"primary\" })))));\n })));\n};\nActivityTable.defaultProps = {\n data: null,\n onEditClick: null,\n white: false,\n showRating: false,\n};\nexports.default = ActivityTable;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar Rating_1 = __importDefault(require(\"@material-ui/lab/Rating\"));\nvar styles_1 = require(\"@material-ui/core/styles\");\nvar react_redux_1 = require(\"react-redux\");\nvar icons_1 = require(\"../../../../common/icons\");\nvar dateUtils_1 = require(\"../../../../youwell-common/dateUtils\");\nvar constants_1 = require(\"../../../../common/constants\");\nvar activityService_1 = require(\"../../../../app/services/activityService\");\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar store_1 = require(\"../../../../app/store\");\nvar useStyles = (0, styles_1.makeStyles)(function (theme) {\n var _a, _b;\n return (0, core_1.createStyles)({\n root: (_a = {\n margin: theme.spacing(1),\n backgroundColor: theme.palette.background.default,\n borderRadius: theme.youwell.shapes.borderRadiusRounder,\n padding: theme.spacing(5, 6)\n },\n _a[theme.breakpoints.down('sm')] = {\n padding: theme.spacing(3),\n },\n _a[theme.breakpoints.down('xs')] = {\n padding: theme.spacing(2, 1),\n },\n _a),\n heading: (_b = {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n margin: theme.spacing(0, 0, 4, 0)\n },\n _b[theme.breakpoints.down('sm')] = {\n marginBottom: theme.spacing(3),\n },\n _b),\n title: {\n borderLeft: theme.youwell.borders.secondary,\n padding: theme.spacing(1, 2),\n },\n formInput: {\n margin: theme.spacing(0.5),\n },\n durationTableCell: {\n paddingRight: theme.spacing(1),\n width: 120,\n },\n selectCategory: {\n minWidth: 160,\n '& :focus': {\n backgroundColor: theme.palette.background.default,\n },\n },\n activityActions: {\n display: 'flex',\n justifyContent: 'flex-end',\n marginTop: theme.spacing(6),\n },\n cancelBtn: {\n marginRight: theme.spacing(1),\n },\n form: {\n margin: theme.spacing(1),\n },\n textField: {\n marginBottom: theme.spacing(3),\n },\n durationAdornment: {\n marginLeft: theme.spacing(1),\n },\n effortValues: {\n display: 'flex',\n alignItems: 'center',\n },\n });\n}, { name: 'AddEditActivityDialog' });\nvar AddEditActivityDialog = function (_a) {\n var activity = _a.activity, onClose = _a.onClose;\n var classes = useStyles();\n var dispatch = (0, react_redux_1.useDispatch)();\n var translate = (0, translate_1.default)();\n var patientId = (0, store_1.useYouwellSelector)(function (state) { var _a; return (_a = state.auth.profileData) === null || _a === void 0 ? void 0 : _a.id; });\n var _b = React.useState(__assign({}, activity)), activityData = _b[0], setActivityData = _b[1];\n if (!activity || !patientId) {\n return null;\n }\n var addActivity = function () {\n var newActivity = {\n patientId: patientId,\n category: activityData.category,\n activity: activityData.activity,\n date: activityData.date,\n durationInMinutes: Number(activityData.durationInMinutes) || 0,\n effortRating: activityData.effortRating,\n };\n (0, activityService_1.insertActivityData)(dispatch, newActivity, { callback: onClose });\n };\n var updateActivity = function () {\n var updatedActivity = {\n id: activity.id,\n category: activityData.category,\n activity: activityData.activity,\n date: activityData.date,\n durationInMinutes: Number(activityData.durationInMinutes) || 0,\n effortRating: activityData.effortRating,\n };\n (0, activityService_1.updateActivitiesData)(dispatch, updatedActivity, { callback: onClose });\n };\n var addOrUpdate = function () {\n if (activity.id) {\n updateActivity();\n }\n else {\n addActivity();\n }\n };\n var onEnter = function (e) {\n if (e.key === 'Enter' && activityData.category && activityData.activity && activityData.durationInMinutes) {\n addOrUpdate();\n }\n };\n var today = new Date();\n var todayIso = (0, dateUtils_1.isoDateWithoutTimezone)(today);\n var isPastDate = todayIso >= (0, dateUtils_1.isoDate)(activity.date);\n return (React.createElement(\"div\", { className: classes.root },\n React.createElement(\"div\", { className: classes.heading },\n React.createElement(core_1.Typography, { className: classes.title, variant: \"subtitle2\" }, \"\".concat(translate('activityDiary.addActivity'), \" | \").concat((0, dateUtils_1.datestamp)(activity.date))),\n React.createElement(core_1.IconButton, { onClick: onClose },\n React.createElement(icons_1.CancelOutlinedIcon, null))),\n React.createElement(\"div\", { className: classes.form },\n React.createElement(core_1.TextField, { className: classes.textField, variant: \"outlined\", value: activityData.category || '', onChange: function (e) { return setActivityData(__assign(__assign({}, activityData), { category: e.target.value })); }, select: true, label: translate('activityDiary.category'), InputLabelProps: { shrink: true }, fullWidth: true }, Object.keys(constants_1.activityCategories).map(function (categoryKey) { return (React.createElement(core_1.MenuItem, { key: categoryKey, value: constants_1.activityCategories[categoryKey] }, translate(\"activityDiary.categories.\".concat(constants_1.activityCategories[categoryKey])))); })),\n React.createElement(core_1.TextField, { className: classes.textField, variant: \"outlined\", label: translate('activityDiary.activity'), value: activityData.activity || '', onChange: function (e) { return setActivityData(__assign(__assign({}, activityData), { activity: e.target.value })); }, placeholder: translate('activityDiary.activityPlaceholder'), InputLabelProps: { shrink: true }, fullWidth: true }),\n React.createElement(core_1.TextField, { className: classes.textField, variant: \"outlined\", label: translate('activityDiary.duration'), type: \"number\", value: activityData.durationInMinutes || '', onChange: function (e) { return setActivityData(__assign(__assign({}, activityData), { durationInMinutes: Math.abs(Number(e.target.value)) })); }, placeholder: translate('activityDiary.durationPlaceholder'), onKeyPress: onEnter, InputProps: { endAdornment: React.createElement(\"span\", { className: classes.durationAdornment }, translate('time.minutes')) }, InputLabelProps: { shrink: true }, fullWidth: true }),\n isPastDate && activityData.id && (React.createElement(React.Fragment, null,\n React.createElement(core_1.Typography, { variant: \"caption\" }, \"\".concat(translate('activityDiary.effort'), \": \")),\n React.createElement(\"div\", { className: classes.effortValues },\n React.createElement(core_1.IconButton, { color: activityData.effortRating === -1 ? 'primary' : 'default', onClick: function () { return setActivityData(__assign(__assign({}, activityData), { effortRating: -1 })); } },\n React.createElement(icons_1.NotInterestedIcon, null)),\n React.createElement(Rating_1.default, { name: \"effortRating-edit\", onChange: function (e, r) { return setActivityData(r !== null ? __assign(__assign({}, activityData), { effortRating: r }) : __assign(__assign({}, activityData), { effortRating: undefined })); }, color: \"primary\", value: activityData.effortRating }))))),\n React.createElement(\"div\", { className: classes.activityActions },\n React.createElement(core_1.Button, { className: classes.cancelBtn, variant: \"outlined\", color: \"primary\", onClick: onClose }, translate('activityDiary.cancel')),\n React.createElement(core_1.Button, { disabled: !(activityData.category && activityData.activity), variant: \"contained\", color: \"primary\", onClick: addOrUpdate }, translate('activityDiary.save')))));\n};\nexports.default = AddEditActivityDialog;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar react_redux_1 = require(\"react-redux\");\nvar Rating_1 = __importDefault(require(\"@material-ui/lab/Rating\"));\nvar icons_1 = require(\"../../../../common/icons\");\nvar dateUtils_1 = require(\"../../../../youwell-common/dateUtils\");\nvar activityService_1 = require(\"../../../../app/services/activityService\");\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar store_1 = require(\"../../../../app/store\");\nvar useStyles = (0, core_1.makeStyles)(function (theme) {\n var _a, _b;\n return (0, core_1.createStyles)({\n editActivityModal: {\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n },\n content: (_a = {\n margin: theme.spacing(1),\n backgroundColor: theme.palette.background.default,\n borderRadius: theme.youwell.shapes.borderRadiusRounder,\n padding: theme.spacing(5)\n },\n _a[theme.breakpoints.down('sm')] = {\n padding: theme.spacing(3),\n },\n _a[theme.breakpoints.down('xs')] = {\n padding: theme.spacing(2),\n },\n _a),\n header: (_b = {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n marginBottom: theme.spacing(4)\n },\n _b[theme.breakpoints.down('sm')] = {\n marginBottom: theme.spacing(3),\n },\n _b),\n editActivityModalTitle: {\n borderLeft: theme.youwell.borders.secondary,\n padding: theme.spacing(1, 2),\n },\n cancelIcon: {},\n item: {\n marginBottom: theme.spacing(3),\n },\n itemTop: {\n display: 'flex',\n justifyContent: 'space-between',\n },\n itemContent: {\n display: 'flex',\n alignItems: 'center',\n backgroundColor: theme.palette.common.white,\n paddingLeft: theme.spacing(1),\n },\n activityText: {\n flex: '1 1 auto',\n },\n actions: {\n marginTop: theme.spacing(6),\n display: 'flex',\n justifyContent: 'center',\n },\n });\n}, { name: 'DateDetails' });\nvar DateDetails = function (_a) {\n var open = _a.open, onClose = _a.onClose, date = _a.date, onAddClick = _a.onAddClick, onEditClick = _a.onEditClick;\n var classes = useStyles();\n var dispatch = (0, react_redux_1.useDispatch)();\n var translate = (0, translate_1.default)();\n var allActivities = (0, store_1.useYouwellSelector)(function (state) { return state.activityDataStore.activities; });\n if (!date) {\n return null;\n }\n var activitiesOnSelectedDate = allActivities === null || allActivities === void 0 ? void 0 : allActivities.filter(function (a) { return (0, dateUtils_1.isSameDate)(a.date, date); });\n var addNew = function () {\n onAddClick(date);\n };\n var editActivity = function (activity) { return function () {\n onEditClick(activity);\n }; };\n var deleteActivity = function (activity) { return function () {\n (0, activityService_1.deleteActivityData)(dispatch, activity, { callback: onClose });\n }; };\n return (React.createElement(core_1.Modal, { open: open, onClose: onClose, className: classes.editActivityModal },\n React.createElement(\"div\", { className: classes.content },\n React.createElement(\"div\", { className: classes.header },\n React.createElement(core_1.Typography, { className: classes.editActivityModalTitle, variant: \"subtitle2\" }, \"\".concat(translate('activityDiary.plannedActivities'), \" | \").concat((0, dateUtils_1.datestamp)(date))),\n React.createElement(core_1.IconButton, { onClick: onClose },\n React.createElement(icons_1.CancelOutlinedIcon, { className: classes.cancelIcon }))),\n React.createElement(\"div\", null, activitiesOnSelectedDate && activitiesOnSelectedDate.map(function (activity) { return (React.createElement(\"div\", { key: activity.id, className: classes.item },\n React.createElement(\"div\", { className: classes.itemTop },\n activity.category && (React.createElement(core_1.Typography, { variant: \"body2\" }, translate(\"activityDiary.categories.\".concat(activity.category)))),\n React.createElement(core_1.Typography, { variant: \"body2\" }, (0, dateUtils_1.hourCount)(activity.durationInMinutes, translate))),\n React.createElement(\"div\", { className: classes.itemContent },\n React.createElement(\"div\", { className: classes.activityText },\n React.createElement(core_1.Typography, null, activity.activity),\n activity.effortRating && activity.effortRating > 0 ? (React.createElement(Rating_1.default, { size: \"small\", name: \"effortRating-\".concat(activity.id), value: activity.effortRating, color: \"primary\" })) : activity.effortRating === -1 ? (React.createElement(core_1.Typography, { variant: \"caption\" }, translate('activityDiary.notCompleted'))) : (React.createElement(core_1.Typography, { variant: \"caption\" }, translate('activityDiary.effortNotRegistered')))),\n React.createElement(core_1.IconButton, { onClick: deleteActivity(activity) },\n React.createElement(icons_1.DeleteIcon, null)),\n React.createElement(core_1.IconButton, { onClick: editActivity(activity) },\n React.createElement(icons_1.EditIcon, null))))); })),\n React.createElement(\"div\", { className: classes.actions },\n React.createElement(core_1.Button, { onClick: addNew, color: \"primary\" }, translate('activityDiary.addNewActivity'))))));\n};\nDateDetails.defaultProps = {\n date: null,\n};\nexports.default = DateDetails;\n","import React, { useState } from 'react';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport PropTypes from 'prop-types';\nimport {\n ResponsiveContainer, LineChart, Line, YAxis, XAxis, Tooltip,\n} from 'recharts';\nimport {\n withStyles, Typography, Tabs, Tab, IconButton,\n} from '@material-ui/core';\nimport { today, addMonths } from '../../../youwell-common/dateUtils';\nimport { patientProgramTaskLabels, performanceDetailedPeriods } from '../../../common/constants';\nimport TaskLabelIcon from '../../inside/components/TaskLabelIcon';\nimport { PrevIcon, NextIcon } from '../../../common/icons';\nimport { moduloBase1 } from '../../../youwell-common/numberUtils';\nimport { getDetailedCompleteRateForPeriod } from './utils';\n\nconst styles = theme => ({\n root: {\n },\n tabsContainer: {\n boxShadow: '0px -5px 10px rgba(0, 0, 0, 0.1)',\n borderRadius: '10px 10px 0px 0px',\n },\n chartNavigationButtons: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n periodTitle: {\n flex: '1 1 auto',\n },\n chartContainer: {\n marginTop: theme.spacing(2),\n },\n chartHeader: {\n marginBottom: theme.spacing(1),\n },\n chart: {\n marginLeft: theme.spacing(-2),\n },\n});\n\nfunction DetailedPerformanceChart(props) {\n const {\n classes, translate, tasksToDisplay, theme,\n } = props;\n\n // TODO: Get this list from some config setting?\n const taskLabelsForPerformance = [\n patientProgramTaskLabels.gladRygg,\n patientProgramTaskLabels.work,\n patientProgramTaskLabels.medicine,\n patientProgramTaskLabels.activity,\n ];\n\n const [period, setPeriod] = useState(performanceDetailedPeriods.month);\n const [periodOffset, setPeriodOffset] = useState(0);\n const [currentLabel, setCurrentLabel] = useState(taskLabelsForPerformance[0]);\n\n const detailedCompleteRate = getDetailedCompleteRateForPeriod(\n tasksToDisplay,\n currentLabel,\n period,\n periodOffset,\n );\n const chartData = detailedCompleteRate.map((element, index) => ({\n index: (index + 1).toString(),\n value: element,\n }));\n\n const currentMonth = moduloBase1(today().getMonth() + 1 + periodOffset, 12);\n\n // Get year user is viewing based on the offset for current period\n const currentYear = period === performanceDetailedPeriods.month\n ? addMonths(today(), periodOffset).getFullYear()\n : today().getFullYear() + periodOffset;\n\n return (\n <>\n
\n {\n setCurrentLabel(value);\n setPeriodOffset(0);\n }}\n variant=\"fullWidth\"\n >\n {taskLabelsForPerformance\n && taskLabelsForPerformance.map(label => (\n }\n aria-label={translate(`taskLabels.${label}`)}\n value={label}\n key={`taskLabel-${label}`}\n />\n ))\n }\n \n
\n\n
\n setPeriodOffset(periodOffset - 1)}\n aria-label={translate('performance.previous')}\n >\n \n \n {period === performanceDetailedPeriods.month\n && (\n \n {translate(`calendar.month${currentMonth}`)}\n {' '}\n {currentYear}\n \n )}\n {period === performanceDetailedPeriods.year\n && (\n \n {currentYear}\n \n )}\n setPeriodOffset(periodOffset + 1)}\n aria-label={translate('performance.next')}\n >\n \n \n
\n\n
\n {\n setPeriod(value);\n setPeriodOffset(0);\n }}\n centered\n >\n \n \n \n
\n\n
\n
\n \n {translate('performance.detailedChartHeader', { label: translate(`taskLabels.${currentLabel}`) })}\n \n \n {translate('performance.detailedChartSubtitle')}\n \n
\n\n
\n \n \n \n \n \n \n \n \n \n \n data.value === 100) ? theme.palette.primary.main : 'url(#colorValue)'}\n strokeWidth={5}\n dot={false}\n />\n \n \n \n
\n
\n \n );\n}\n\nDetailedPerformanceChart.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n theme: PropTypes.object.isRequired,\n tasksToDisplay: PropTypes.array,\n};\n\nDetailedPerformanceChart.defaultProps = {\n tasksToDisplay: [],\n};\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n tasksToDisplay: state.programStore.tasksToDisplay,\n});\n\nexport default connect(mapStateToProps)(withStyles(styles, { withTheme: true })(DetailedPerformanceChart));\n","import React, { useState } from 'react';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport PropTypes from 'prop-types';\nimport {\n ResponsiveContainer, BarChart, Bar, Cell, YAxis, XAxis, Tooltip,\n} from 'recharts';\nimport classnames from 'classnames';\nimport {\n withStyles, Tabs, Tab, IconButton, Typography,\n} from '@material-ui/core';\nimport {\n getWeekNumberFromDate, today, addDays, addMonths,\n} from '../../../youwell-common/dateUtils';\nimport { patientProgramTaskLabels, performanceOverviewPeriods } from '../../../common/constants';\nimport { moduloBase1 } from '../../../youwell-common/numberUtils';\nimport { PrevIcon, NextIcon } from '../../../common/icons';\nimport { getCompleteRateForPeriod } from './utils';\n\nconst styles = theme => ({\n root: {\n },\n tabsContainer: {\n boxShadow: '0px -5px 10px rgba(0, 0, 0, 0.1)',\n borderRadius: '10px 10px 0px 0px',\n },\n chartNavigationButtons: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n hidden: {\n visibility: 'hidden',\n },\n periodTitle: {\n flex: '1 1 auto',\n },\n chartHeader: {\n marginBottom: theme.spacing(1),\n },\n chart: {\n marginLeft: theme.spacing(-2),\n },\n});\n\nfunction OverviewPerformanceChart(props) {\n const {\n classes, translate, tasksToDisplay, theme,\n } = props;\n\n // TODO: Get this list from some config setting?\n const taskLabelsForPerformance = [\n patientProgramTaskLabels.gladRygg,\n patientProgramTaskLabels.work,\n patientProgramTaskLabels.medicine,\n patientProgramTaskLabels.activity,\n ];\n\n const [period, setPeriod] = useState(performanceOverviewPeriods.week);\n const [periodOffset, setPeriodOffset] = useState(0);\n\n const currentWeek = moduloBase1(getWeekNumberFromDate() + periodOffset, 52);\n const currentMonth = moduloBase1(today().getMonth() + 1 + periodOffset, 12);\n\n // Get year user is viewing based on the offset for current period\n const currentYear = period === performanceOverviewPeriods.month\n ? addMonths(today(), periodOffset).getFullYear()\n : period === performanceOverviewPeriods.week\n ? addDays(today(), periodOffset * 7).getFullYear()\n : today().getFullYear() + periodOffset;\n\n const chartData = taskLabelsForPerformance.map(label => ({\n name: translate(`taskLabels.${label}`),\n value: getCompleteRateForPeriod(tasksToDisplay, label, period, periodOffset),\n }));\n\n return (\n <>\n
\n {\n setPeriod(value);\n setPeriodOffset(0);\n }}\n variant=\"fullWidth\"\n >\n \n \n \n \n \n
\n\n
\n setPeriodOffset(periodOffset - 1)}\n aria-label={translate('performance.previous')}\n >\n \n \n {period === performanceOverviewPeriods.week\n && (\n \n {translate('calendar.weekNr', { weekNr: currentWeek })}\n {' '}\n {currentYear}\n \n )}\n {period === performanceOverviewPeriods.month\n && (\n \n {translate(`calendar.month${currentMonth}`)}\n {' '}\n {currentYear}\n \n )}\n {period === performanceOverviewPeriods.year\n && (\n \n {currentYear}\n \n )}\n setPeriodOffset(periodOffset + 1)}\n aria-label={translate('performance.next')}\n >\n \n \n
\n\n
\n \n {translate('performance.overviewChartHeader')}\n \n \n {translate('performance.overviewChartSubtitle')}\n \n
\n\n
\n \n \n \n \n \n {chartData.map(entry => (\n \n ))}\n \n \n \n \n
\n \n );\n}\n\nOverviewPerformanceChart.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n theme: PropTypes.object.isRequired,\n tasksToDisplay: PropTypes.array,\n};\n\nOverviewPerformanceChart.defaultProps = {\n tasksToDisplay: [],\n};\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n tasksToDisplay: state.programStore.tasksToDisplay,\n});\n\nexport default connect(mapStateToProps)(withStyles(styles, { withTheme: true })(OverviewPerformanceChart));\n","import urls from '../../../app/urls';\r\nimport { patientProgramElementGroups, performanceDetailedPeriods, performanceOverviewPeriods } from '../../../common/constants';\r\nimport {\r\n getLocalDate, tomorrow, addDays, addMonths, getWeekStartDate, getWeekNumberFromDate, today,\r\n} from '../../../youwell-common/dateUtils';\r\n\r\nconst getAllTasksFromElementGroup = (programDetails, elementGroup) => {\r\n const elements = (programDetails && programDetails.groupedElements && programDetails.groupedElements[elementGroup]) || [];\r\n\r\n return elements.reduce((tasks, element, elementIndex) => {\r\n if (!element || !element.module || !element.module.tasks || element.module.tasks.length < 1) {\r\n if (element && element.task) {\r\n const taskWithStartTime = {\r\n ...element.task,\r\n startTime: element.startTime != null ? element.startTime : element.created,\r\n elementGroup,\r\n taskIndex: elementIndex,\r\n elementId: element.id,\r\n urlToTask: `${urls.inside.program}/${elementGroup}/${elementIndex}`,\r\n };\r\n return tasks.length > 0 ? tasks.concat(taskWithStartTime) : [taskWithStartTime];\r\n }\r\n return tasks;\r\n }\r\n\r\n const tasksWithStartTime = [];\r\n element.module.tasks.forEach((task, taskIndex) => {\r\n tasksWithStartTime.push({\r\n ...task,\r\n startTime: element.startTime != null ? element.startTime : element.created,\r\n elementGroup,\r\n moduleIndex: elementIndex,\r\n moduleName: element.module.name,\r\n taskIndex,\r\n elementId: element.id,\r\n urlToTask: `${urls.inside.program}/${elementGroup}/${elementIndex}/${taskIndex}`,\r\n });\r\n });\r\n\r\n if (tasksWithStartTime.length === 0) {\r\n return tasks;\r\n }\r\n\r\n return tasks.length > 0 ? tasks.concat(tasksWithStartTime) : tasksWithStartTime;\r\n }, []);\r\n};\r\n\r\nexport const getAllTasksToDisplay = (programDetails) => {\r\n // TODO: Which tasks should we display and calculate \"complete rates\"/performace for?\r\n // const mainTasks = getAllTasksFromElementGroup(programDetails, patientProgramElementGroups.main);\r\n const calendarTasks = getAllTasksFromElementGroup(programDetails, patientProgramElementGroups.calendar);\r\n const defaultTasks = getAllTasksFromElementGroup(programDetails, patientProgramElementGroups.default);\r\n\r\n return [].concat(calendarTasks, defaultTasks);\r\n};\r\n\r\nconst getCompleteRateForTasks = tasks => (tasks.length ? (tasks.filter(task => task.completed).length / tasks.length) * 100 : 100);\r\n\r\nconst getFromAndToDateForPeriod = (period, offset) => {\r\n let fromDate = null;\r\n let toDate = null;\r\n\r\n if (period === performanceOverviewPeriods.week) {\r\n // First and last date in week\r\n fromDate = getWeekStartDate(getWeekNumberFromDate() + offset);\r\n toDate = addDays(fromDate, 6);\r\n }\r\n if (period === performanceOverviewPeriods.month\r\n || period === performanceDetailedPeriods.month) {\r\n // First and last date in month\r\n fromDate = new Date(today().getFullYear(), today().getMonth() + offset, 1);\r\n toDate = new Date(today().getFullYear(), today().getMonth() + (offset + 1), 0);\r\n }\r\n if (period === performanceDetailedPeriods.year) {\r\n // First and last date in year\r\n fromDate = new Date(today().getFullYear() + offset, 0, 1);\r\n toDate = new Date(today().getFullYear() + offset, 11, 31);\r\n }\r\n if (period === performanceOverviewPeriods.total) {\r\n // Min and max dates\r\n fromDate = new Date(-8640000000000000);\r\n toDate = new Date(8640000000000000);\r\n }\r\n\r\n return [fromDate, toDate];\r\n};\r\n\r\nconst getTasksPastDueDateWithLabelForPeriod = (tasks, label, period, offset) => {\r\n const [fromDate, toDate] = getFromAndToDateForPeriod(period, offset);\r\n\r\n return tasks.filter(\r\n task => task.label === label\r\n && getLocalDate(task.startTime) >= fromDate\r\n && getLocalDate(task.startTime) <= toDate\r\n && getLocalDate(task.startTime) <= tomorrow(),\r\n );\r\n};\r\n\r\nexport const getCompleteRateForPeriod = (tasks, label, period, offset) => {\r\n const tasksPastDueDateWithLabelForPeriod = getTasksPastDueDateWithLabelForPeriod(tasks, label, period, offset);\r\n return getCompleteRateForTasks(tasksPastDueDateWithLabelForPeriod);\r\n};\r\n\r\nexport const getDetailedCompleteRateForPeriod = (tasks, label, period, offset) => {\r\n const completeRateParts = [];\r\n const tasksPastDueDateWithLabelForPeriod = getTasksPastDueDateWithLabelForPeriod(tasks, label, period, offset);\r\n const [fromDate] = getFromAndToDateForPeriod(period, offset);\r\n\r\n if (period === performanceDetailedPeriods.month) {\r\n // Dividing the month into 6 parts\r\n for (let i = 0; i < 6; i++) {\r\n const tasksForPeriod = tasksPastDueDateWithLabelForPeriod.filter(\r\n task => getLocalDate(task.startTime) >= addDays(fromDate, 5 * i)\r\n && getLocalDate(task.startTime) <= addDays(fromDate, 5 * (i + 1)),\r\n );\r\n\r\n // Calculate complete rate for tasks in current part of period (100% if no tasks)\r\n completeRateParts.push(getCompleteRateForTasks(tasksForPeriod));\r\n }\r\n }\r\n\r\n if (period === performanceDetailedPeriods.year) {\r\n // Dividing the year into 12 parts\r\n for (let i = 0; i < 12; i++) {\r\n const tasksForPeriod = tasksPastDueDateWithLabelForPeriod.filter(\r\n task => getLocalDate(task.startTime) >= addMonths(fromDate, i)\r\n && getLocalDate(task.startTime) <= addMonths(fromDate, i + 1),\r\n );\r\n\r\n // Calculate complete rate for tasks in current part of period (100% if no tasks)\r\n completeRateParts.push(getCompleteRateForTasks(tasksForPeriod));\r\n }\r\n }\r\n\r\n return completeRateParts;\r\n};\r\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nvar _a;\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar translate_1 = __importDefault(require(\"../../../app/localization/translate\"));\nvar store_1 = require(\"../../../app/store\");\nvar healthUtils_1 = require(\"./utils/healthUtils\");\nvar HealthGraph_1 = __importDefault(require(\"./components/HealthGraph\"));\nvar HealthTable_1 = __importDefault(require(\"./components/HealthTable\"));\nvar healthConstants_1 = require(\"./utils/healthConstants\");\nvar HealthPageWrapper_1 = __importDefault(require(\"./components/HealthPageWrapper\"));\nvar dateUtils_1 = require(\"../../../youwell-common/dateUtils\");\nvar WeekSelectorCard_1 = __importDefault(require(\"./components/WeekSelectorCard\"));\nvar HealthRegistrationGoalsCard_1 = __importDefault(require(\"./components/HealthRegistrationGoalsCard\"));\nvar HealthRegistrationTaskLogging_1 = __importDefault(require(\"./components/HealthRegistrationTaskLogging\"));\nvar healthRegistration_1 = require(\"../../../app/store/types/healthRegistration\");\n// Scaleren vilker feil, du må velge et tall mellom 7-13 (0.5 pt), 14-15 (1pt), 17-20 (2pt).\n// Talle er ikke skalet rett ettersom de starter feil på skalen i forhold til en linjer funksjon.\n// Det er også 0.5 mellom 0.5 og 1, men 1 mellom 1 og 2, som gir en større spreding over mindre avstand.\n// Hvis du vil gi en score mellom 0-6 hvordan gjøres dette? Hvorfor starte på 7???\nvar weeklyValueModifications = (_a = {},\n _a[healthConstants_1.ActivityPropKeys.Score] = healthConstants_1.WeeklyValueModification.Add,\n _a[healthConstants_1.ActivityPropKeys.ScoreWeeklyGoal] = healthConstants_1.WeeklyValueModification.Keep,\n _a[healthConstants_1.ActivityPropKeys.Minutes] = healthConstants_1.WeeklyValueModification.Add,\n _a);\nvar dailyMinutesMaxValue = 999;\nvar getActivitySetup = function (translate) { return ({\n type: healthRegistration_1.HealthRegistrationType.Activity,\n registrationInterval: healthConstants_1.RegistrationInterval.Daily,\n tasks: [\n {\n key: healthConstants_1.ActivityPropKeys.Category,\n longLabel: 'activity.category',\n shortLabel: 'activity.categoryShort',\n type: healthConstants_1.TaskOrGoalInputType.Dropdown,\n dropdownItems: (0, healthUtils_1.generateDropdownItemData)(3, 'activity.dropdownItemsCategory'),\n placeHolder: 'activity.categoryShort',\n visualizationProps: {\n valueTypeTranslateKey: 'activity.dropdownItemsCategory',\n },\n },\n {\n key: healthConstants_1.ActivityPropKeys.Name,\n longLabel: 'activity.name',\n shortLabel: 'activity.nameShort',\n type: healthConstants_1.TaskOrGoalInputType.Text,\n placeHolderTranslateKey: 'activity.nameExample',\n },\n {\n key: healthConstants_1.ActivityPropKeys.Minutes,\n longLabel: 'activity.minutes',\n shortLabel: 'activity.minutesShort',\n type: healthConstants_1.TaskOrGoalInputType.Number,\n maxValue: dailyMinutesMaxValue,\n placeHolder: 30,\n },\n {\n key: healthConstants_1.ActivityPropKeys.Intensity,\n longLabel: 'activity.intensity',\n shortLabel: 'activity.intensityShort',\n type: healthConstants_1.TaskOrGoalInputType.Dropdown,\n dropdownItems: [\n {\n key: '0.5',\n value: translate('activity.dropdownItemsIntensity.0.5'),\n },\n {\n key: '1',\n value: translate('activity.dropdownItemsIntensity.1'),\n },\n {\n key: '2',\n value: translate('activity.dropdownItemsIntensity.2'),\n },\n ],\n visualizationProps: {\n valueTypeTranslateKey: 'activity.dropdownItemsIntensity',\n },\n },\n ],\n goals: [\n {\n key: healthConstants_1.ActivityPropKeys.MinutesDailyGoal,\n longLabel: 'activity.minutesDailyGoal',\n shortLabel: 'activity.minutesShort',\n type: healthConstants_1.TaskOrGoalInputType.Number,\n maxValue: dailyMinutesMaxValue,\n placeHolder: 30,\n },\n {\n key: healthConstants_1.ActivityPropKeys.ScoreWeeklyGoal,\n longLabel: 'activity.scoreGoal',\n shortLabel: 'activity.scoreShort',\n type: healthConstants_1.TaskOrGoalInputType.Number,\n maxValue: 9999,\n placeHolder: 150,\n },\n ],\n}); };\nvar Activity = function () {\n var _a, _b;\n var translate = (0, translate_1.default)();\n var _c = React.useState((0, dateUtils_1.getWeek)()), selectedWeek = _c[0], setSelectedWeek = _c[1];\n var healthRegistrations = (0, store_1.useYouwellSelector)(function (state) { return state.healthRegistrationStore.healthRegistrations; });\n var activitySetup = getActivitySetup(translate);\n var healthRegistrationLogs = (_a = healthRegistrations === null || healthRegistrations === void 0 ? void 0 : healthRegistrations.find(function (d) { return d.type === activitySetup.type; })) === null || _a === void 0 ? void 0 : _a.healthRegistrationLogs;\n var healthRegistrationLogsFiltredByDate = (0, healthUtils_1.filterHealthRegistrationLogsByDate)(healthRegistrationLogs, selectedWeek.start, selectedWeek.end);\n var dailyVisualizationData = (0, healthUtils_1.generateVisualizationData)(healthRegistrationLogsFiltredByDate, translate);\n var weeklyVisualizationData = (0, healthUtils_1.generateVisualizationData)(healthRegistrationLogs, translate, true, weeklyValueModifications);\n var cellValueTranslateKeys = (0, healthUtils_1.generateCellValueTranslateKeys)(activitySetup.tasks);\n return (React.createElement(HealthPageWrapper_1.default, { title: translate('healthPage.activity') },\n React.createElement(HealthRegistrationTaskLogging_1.default, { setup: activitySetup }),\n React.createElement(HealthRegistrationGoalsCard_1.default, { healthRegistrationSetup: activitySetup }),\n React.createElement(WeekSelectorCard_1.default, { selectedWeek: selectedWeek, onChange: setSelectedWeek }),\n React.createElement(HealthTable_1.default, { header: translate('health.activityHistoryDaily'), data: dailyVisualizationData, headerTranslateKeys: __spreadArray(__spreadArray([], activitySetup.tasks.map(function (d) { return d.shortLabel; }), true), ['activity.scoreShort'], false), cellValueTranslateKeys: cellValueTranslateKeys, dataKeys: __spreadArray(__spreadArray([], (_b = activitySetup.tasks) === null || _b === void 0 ? void 0 : _b.map(function (d) { return d.key; }), true), [healthConstants_1.ActivityPropKeys.Score], false) }),\n React.createElement(HealthGraph_1.default, { measuringUnit: \"activity.scoreShort\", title: translate('activity.weeklyActivityPoints'), data: weeklyVisualizationData, dataKeys: {\n valueKey: healthConstants_1.ActivityPropKeys.Score,\n minGoalKey: healthConstants_1.ActivityPropKeys.ScoreWeeklyGoal,\n } }),\n React.createElement(HealthTable_1.default, { header: translate('health.activityHistoryWeekly'), data: weeklyVisualizationData, headerTranslateKeys: ['activity.scoreShort', 'activity.scoreGoalLabel', 'activity.minutesLabel'], cellValueTranslateKeys: cellValueTranslateKeys, dataKeys: [healthConstants_1.ActivityPropKeys.Score, healthConstants_1.ActivityPropKeys.ScoreWeeklyGoal, healthConstants_1.ActivityPropKeys.Minutes] })));\n};\nexports.default = Activity;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar translate_1 = __importDefault(require(\"../../../app/localization/translate\"));\nvar store_1 = require(\"../../../app/store\");\nvar healthUtils_1 = require(\"./utils/healthUtils\");\nvar HealthGraph_1 = __importDefault(require(\"./components/HealthGraph\"));\nvar HealthTable_1 = __importDefault(require(\"./components/HealthTable\"));\nvar healthConstants_1 = require(\"./utils/healthConstants\");\nvar HealthPageWrapper_1 = __importDefault(require(\"./components/HealthPageWrapper\"));\nvar dateUtils_1 = require(\"../../../youwell-common/dateUtils\");\nvar WeekSelectorCard_1 = __importDefault(require(\"./components/WeekSelectorCard\"));\nvar HealthRegistrationGoalsCard_1 = __importDefault(require(\"./components/HealthRegistrationGoalsCard\"));\nvar HealthRegistrationTasksCard_1 = __importDefault(require(\"./components/HealthRegistrationTasksCard\"));\nvar healthRegistration_1 = require(\"../../../app/store/types/healthRegistration\");\nvar bloodSugarMaxValue = 20;\nvar bloodSugarSetup = {\n type: healthRegistration_1.HealthRegistrationType.BloodSugar,\n registrationInterval: healthConstants_1.RegistrationInterval.Daily,\n tasks: [\n {\n key: healthConstants_1.BloodSugarPropKeys.BloodSugarScore,\n shortLabel: 'bloodSugar.millimolPerLiter',\n longLabel: 'bloodSugar.bloodSugarToday',\n type: healthConstants_1.TaskOrGoalInputType.Number,\n maxValue: bloodSugarMaxValue,\n placeHolder: 5,\n },\n ],\n goals: [\n {\n key: healthConstants_1.BloodSugarPropKeys.BloodSugarMaxGoal,\n shortLabel: 'bloodSugar.millimolPerLiter',\n longLabel: 'bloodSugar.bloodSugarMaxGoal',\n type: healthConstants_1.TaskOrGoalInputType.Number,\n maxValue: bloodSugarMaxValue,\n placeHolder: 5.4,\n },\n {\n key: healthConstants_1.BloodSugarPropKeys.BloodSugarMinGoal,\n shortLabel: 'bloodSugar.millimolPerLiter',\n longLabel: 'bloodSugar.bloodSugarMinGoal',\n type: healthConstants_1.TaskOrGoalInputType.Number,\n maxValue: bloodSugarMaxValue,\n placeHolder: 4,\n },\n ],\n};\nvar BloodSugar = function () {\n var _a;\n var translate = (0, translate_1.default)();\n var _b = React.useState((0, dateUtils_1.getWeek)()), selectedWeek = _b[0], setSelectedWeek = _b[1];\n var healthRegistrations = (0, store_1.useYouwellSelector)(function (state) { return state.healthRegistrationStore.healthRegistrations; });\n var healthRegistrationLogs = (_a = healthRegistrations === null || healthRegistrations === void 0 ? void 0 : healthRegistrations.find(function (d) { return d.type === bloodSugarSetup.type; })) === null || _a === void 0 ? void 0 : _a.healthRegistrationLogs;\n var healthRegistrationLogsFiltredByDate = (0, healthUtils_1.filterHealthRegistrationLogsByDate)(healthRegistrationLogs, selectedWeek.start, selectedWeek.end);\n var visualizationData = (0, healthUtils_1.generateVisualizationData)(healthRegistrationLogsFiltredByDate, translate);\n var currentTasksAndGoals = __spreadArray(__spreadArray([], bloodSugarSetup.tasks, true), bloodSugarSetup.goals, true);\n return (React.createElement(HealthPageWrapper_1.default, { title: translate('healthPage.bloodSugar') },\n React.createElement(HealthRegistrationTasksCard_1.default, { healthRegistrationSetup: bloodSugarSetup }),\n React.createElement(HealthRegistrationGoalsCard_1.default, { healthRegistrationSetup: bloodSugarSetup }),\n React.createElement(WeekSelectorCard_1.default, { selectedWeek: selectedWeek, onChange: setSelectedWeek }),\n React.createElement(HealthTable_1.default, { headerTranslateKeys: currentTasksAndGoals.map(function (d) { return d.longLabel; }), dataKeys: currentTasksAndGoals.map(function (d) { return d.key; }), data: visualizationData }),\n React.createElement(HealthGraph_1.default, { measuringUnit: \"bloodSugar.millimolPerLiter\", title: translate('bloodSugar.bloodSugarMillimolPerLiter'), data: visualizationData, dataKeys: {\n valueKey: healthConstants_1.BloodSugarPropKeys.BloodSugarScore,\n maxGoalKey: healthConstants_1.BloodSugarPropKeys.BloodSugarMaxGoal,\n minGoalKey: healthConstants_1.BloodSugarPropKeys.BloodSugarMinGoal,\n } })));\n};\nexports.default = BloodSugar;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar icons_1 = require(\"@material-ui/icons\");\nvar core_1 = require(\"@material-ui/core\");\nvar stringUtils_1 = require(\"../../../youwell-common/stringUtils\");\nvar store_1 = require(\"../../../app/store\");\nvar translate_1 = __importDefault(require(\"../../../app/localization/translate\"));\nvar HealthPageWrapper_1 = __importDefault(require(\"./components/HealthPageWrapper\"));\nvar healthConstants_1 = require(\"./utils/healthConstants\");\nvar healthUtils_1 = require(\"./utils/healthUtils\");\nvar WeekSelectorCard_1 = __importDefault(require(\"./components/WeekSelectorCard\"));\nvar dateUtils_1 = require(\"../../../youwell-common/dateUtils\");\nvar healthRegistration_1 = require(\"../../../app/store/types/healthRegistration\");\nvar HealthRegistrationGoalLogging_1 = __importDefault(require(\"./components/HealthRegistrationGoalLogging\"));\nvar HealthRegistrationGoalsEditing_1 = __importDefault(require(\"./components/HealthRegistrationGoalsEditing\"));\nvar arrayUtils_1 = require(\"../../../youwell-common/arrayUtils\");\nvar HealthTable_1 = __importDefault(require(\"./components/HealthTable\"));\nvar getDietSetup = function (translate) { return ({\n type: healthRegistration_1.HealthRegistrationType.Diet,\n registrationInterval: healthConstants_1.RegistrationInterval.Daily,\n tasks: [\n {\n key: healthConstants_1.DietPropKeys.Completed,\n shortLabel: 'diet.completed',\n longLabel: 'diet.completed',\n type: healthConstants_1.TaskOrGoalInputType.Checkbox,\n },\n ],\n goals: [\n {\n key: healthConstants_1.DietPropKeys.Name,\n shortLabel: 'diet.nameShort',\n longLabel: 'diet.name',\n type: healthConstants_1.TaskOrGoalInputType.Text,\n placeHolder: translate('diet.namePlaceholder'),\n },\n ],\n}); };\nvar getChartData = function (theme, translate, programStartDate, healthRegistrationLogs, selectedWeek) {\n var _a;\n var loggedTasks = healthRegistrationLogs === null || healthRegistrationLogs === void 0 ? void 0 : healthRegistrationLogs.filter(function (d) { return d.type === healthRegistration_1.HealthRegistrationLogType.Task; });\n var healthRegistrationLogsFiltredByDate = (_a = (0, healthUtils_1.filterHealthRegistrationLogsByDate)(loggedTasks, selectedWeek.start, selectedWeek.end)) !== null && _a !== void 0 ? _a : [];\n var dailyVisualizationDataWeek = (0, healthUtils_1.generateVisualizationData)(healthRegistrationLogsFiltredByDate, translate, true);\n var dailyVisualizationDataAllDays = (0, healthUtils_1.generateVisualizationData)(loggedTasks, translate);\n var CheckedRegistrationWeek = (0, healthUtils_1.sumObjectValue)(dailyVisualizationDataWeek, healthConstants_1.VisualizationPropsKeys.RegisteredCount);\n var uncheckedRegistrationWeek = (0, healthUtils_1.sumObjectValue)(dailyVisualizationDataWeek, healthConstants_1.VisualizationPropsKeys.UnregisteredCount);\n var forgotRegistrationWeek = (dailyVisualizationDataWeek === null || dailyVisualizationDataWeek === void 0 ? void 0 : dailyVisualizationDataWeek.length) ? 0 : 1;\n var fullRegistrationsAllDays = (0, healthUtils_1.sumObjectValue)(dailyVisualizationDataAllDays, healthConstants_1.VisualizationPropsKeys.FullRegistration);\n var partialRegistrationsAllDays = (0, healthUtils_1.sumObjectValue)(dailyVisualizationDataAllDays, healthConstants_1.VisualizationPropsKeys.PartialRegistration);\n var noRegistrationsAllDays = (0, healthUtils_1.sumObjectValue)(dailyVisualizationDataAllDays, healthConstants_1.VisualizationPropsKeys.NoRegistration);\n var forgotRegistrationAllDays = programStartDate && dailyVisualizationDataAllDays ? Math.max((0, dateUtils_1.getNumberOfDays)(new Date(programStartDate), new Date()) - ((dailyVisualizationDataAllDays === null || dailyVisualizationDataAllDays === void 0 ? void 0 : dailyVisualizationDataAllDays.length) * 7), 0) : 1;\n var historyTableRecord = healthRegistrationLogsFiltredByDate.reduce(function (prev, curr) {\n var _a;\n var _b, _c;\n return (__assign(__assign({}, prev), (_a = {}, _a[(0, dateUtils_1.getTextfieldDateString)(curr.date)] = __spreadArray(__spreadArray(__spreadArray([], (_b = prev[(0, dateUtils_1.getTextfieldDateString)(curr.date)]) !== null && _b !== void 0 ? _b : [], true), (_c = prev[(0, dateUtils_1.getTextfieldDateString)(curr.date)]) !== null && _c !== void 0 ? _c : [], true), [curr], false), _a)));\n }, {});\n var historyTableData = (0, arrayUtils_1.sortByDateAscending)(Object.entries(historyTableRecord)\n .map(function (_a, i) {\n var _b;\n var key = _a[0], values = _a[1];\n var date = new Date(key);\n var dayNumber = date && new Date(date).getDay();\n var dayName = (0, stringUtils_1.firstLetterUp)(translate(\"time.weekdays_short.\".concat(dayNumber)));\n var week = date && (0, dateUtils_1.getWeekNumberFromDate)(date).toString();\n var weekName = \"\".concat((0, stringUtils_1.firstLetterUp)(translate('time.week')), \" \").concat(week);\n var weekAndYearKey = (0, dateUtils_1.generateWeekAndYearKey)(date) || '';\n return _b = {\n date: date.toISOString(),\n weekAndYearKey: weekAndYearKey,\n healthRegistrationId: i,\n dayName: dayName,\n weekName: weekName,\n timePeriod: dayName\n },\n _b[healthConstants_1.VisualizationPropsKeys.FullRegistration] = values.every(function (v) { var _a; return (_a = v.properties) === null || _a === void 0 ? void 0 : _a.checked; }) ? '✔️👍' : '❌',\n _b[healthConstants_1.VisualizationPropsKeys.NoRegistration] = values.filter(function (v) { var _a; return !((_a = v.properties) === null || _a === void 0 ? void 0 : _a.checked); }).length,\n _b;\n }), 'date');\n var pieChart1Data = [\n {\n name: translate('diet.checked'),\n value: CheckedRegistrationWeek,\n color: theme === null || theme === void 0 ? void 0 : theme.youwell.colors.green,\n icon: icons_1.ThumbUp,\n iconColor: theme === null || theme === void 0 ? void 0 : theme.palette.common.white,\n },\n {\n name: translate('diet.unchecked'),\n value: uncheckedRegistrationWeek,\n color: theme === null || theme === void 0 ? void 0 : theme.youwell.colors.red,\n icon: icons_1.Close,\n iconColor: theme === null || theme === void 0 ? void 0 : theme.palette.common.white,\n },\n {\n name: translate('diet.unregistred'),\n value: forgotRegistrationWeek,\n color: theme === null || theme === void 0 ? void 0 : theme.youwell.colors.grayDark,\n icon: icons_1.HelpOutline,\n iconColor: theme === null || theme === void 0 ? void 0 : theme.palette.common.white,\n },\n ];\n var pieChart2Data = [\n {\n name: translate('diet.all'),\n value: fullRegistrationsAllDays,\n color: theme === null || theme === void 0 ? void 0 : theme.youwell.colors.green,\n icon: icons_1.ThumbUp,\n iconColor: theme === null || theme === void 0 ? void 0 : theme.palette.common.white,\n },\n {\n name: translate('diet.some'),\n value: partialRegistrationsAllDays,\n color: theme === null || theme === void 0 ? void 0 : theme.youwell.colors.yellow,\n icon: icons_1.Remove,\n iconColor: theme === null || theme === void 0 ? void 0 : theme.palette.common.white,\n },\n {\n name: translate('diet.none'),\n value: noRegistrationsAllDays,\n color: theme === null || theme === void 0 ? void 0 : theme.youwell.colors.red,\n icon: icons_1.Close,\n iconColor: theme === null || theme === void 0 ? void 0 : theme.palette.common.white,\n },\n {\n name: translate('diet.unregistred'),\n value: forgotRegistrationAllDays,\n color: theme === null || theme === void 0 ? void 0 : theme.youwell.colors.grayDark,\n icon: icons_1.HelpOutline,\n iconColor: theme === null || theme === void 0 ? void 0 : theme.palette.common.white,\n },\n ];\n return {\n pieChart1Data: pieChart1Data,\n pieChart2Data: pieChart2Data,\n healthRegistrationLogsFiltredByDate: healthRegistrationLogsFiltredByDate,\n historyTableData: historyTableData,\n };\n};\nvar Diet = function () {\n var _a;\n var theme = (0, core_1.useTheme)();\n var translate = (0, translate_1.default)();\n var programStartDate = (0, store_1.useYouwellSelector)(function (state) { var _a; return (_a = state.programStore.currentProgram) === null || _a === void 0 ? void 0 : _a.startDate; });\n var healthRegistrations = (0, store_1.useYouwellSelector)(function (state) { return state.healthRegistrationStore.healthRegistrations; });\n var _b = React.useState((0, dateUtils_1.getWeek)()), selectedWeek = _b[0], setSelectedWeek = _b[1];\n var dietSetup = getDietSetup(translate);\n var healthRegistrationLogs = (_a = healthRegistrations === null || healthRegistrations === void 0 ? void 0 : healthRegistrations.find(function (d) { return d.type === dietSetup.type; })) === null || _a === void 0 ? void 0 : _a.healthRegistrationLogs;\n var chartData = getChartData(theme, translate, programStartDate, healthRegistrationLogs, selectedWeek);\n return (React.createElement(HealthPageWrapper_1.default, { title: translate('healthPage.diet') },\n React.createElement(HealthRegistrationGoalLogging_1.default, { setup: dietSetup }),\n React.createElement(HealthRegistrationGoalsEditing_1.default, { setup: dietSetup }),\n React.createElement(WeekSelectorCard_1.default, { selectedWeek: selectedWeek, onChange: setSelectedWeek }),\n React.createElement(HealthTable_1.default, { data: chartData.historyTableData, headerTranslateKeys: [\n 'diet.completed',\n ], dataKeys: [\n healthConstants_1.VisualizationPropsKeys.FullRegistration,\n ] })));\n};\nexports.default = Diet;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar makeStyles_1 = __importDefault(require(\"@material-ui/core/styles/makeStyles\"));\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar healthRegistrationService_1 = require(\"../../../app/services/healthRegistrationService\");\nvar translate_1 = __importDefault(require(\"../../../app/localization/translate\"));\nvar store_1 = require(\"../../../app/store\");\nvar QuestionAndInput_1 = __importDefault(require(\"./components/QuestionAndInput\"));\nvar healthConstants_1 = require(\"./utils/healthConstants\");\nvar HealthPageWrapper_1 = __importDefault(require(\"./components/HealthPageWrapper\"));\nvar healthRegistration_1 = require(\"../../../app/store/types/healthRegistration\");\nvar useStyles = (0, makeStyles_1.default)(function (theme) { return ({\n actions: {\n display: 'flex',\n justifyContent: 'flex-end',\n gap: theme.spacing(1),\n },\n}); });\nvar goalsAndBarriersSetup = {\n type: healthRegistration_1.HealthRegistrationType.Goals,\n registrationInterval: healthConstants_1.RegistrationInterval.Once,\n tasks: [],\n goals: [\n {\n key: 'purpose',\n longLabel: 'goalsAndBarriers.treatmentPurpose',\n shortLabel: '',\n type: healthConstants_1.TaskOrGoalInputType.Text,\n },\n {\n key: 'subtasks',\n longLabel: 'goalsAndBarriers.subtasks',\n shortLabel: '',\n type: healthConstants_1.TaskOrGoalInputType.Text,\n },\n {\n key: 'obstacles',\n longLabel: 'goalsAndBarriers.obstacles',\n shortLabel: '',\n type: healthConstants_1.TaskOrGoalInputType.Text,\n },\n {\n key: 'responsibility',\n longLabel: 'goalsAndBarriers.responsibility',\n shortLabel: '',\n type: healthConstants_1.TaskOrGoalInputType.Text,\n },\n ],\n};\nvar GoalsAndBarriers = function () {\n var _a;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var dispatch = (0, store_1.useYouwellDispatch)();\n var healthRegistrations = (0, store_1.useYouwellSelector)(function (state) { return state.healthRegistrationStore.healthRegistrations; });\n var _b = React.useState({}), updatedAnswers = _b[0], setUpdatedAnswers = _b[1];\n var _c = React.useState(false), hasUnsavedChanges = _c[0], setHasUnsavedChanges = _c[1];\n var goalsRegistration = healthRegistrations === null || healthRegistrations === void 0 ? void 0 : healthRegistrations.find(function (d) { return d.type === healthRegistration_1.HealthRegistrationType.Goals; });\n var lastResponse = (_a = goalsRegistration === null || goalsRegistration === void 0 ? void 0 : goalsRegistration.healthRegistrationLogs) === null || _a === void 0 ? void 0 : _a.at(-1);\n var hasAnsweredPreviously = goalsAndBarriersSetup.goals.some(function (q) { var _a; return Boolean((_a = lastResponse === null || lastResponse === void 0 ? void 0 : lastResponse.properties) === null || _a === void 0 ? void 0 : _a[q.key]); });\n var questionsWithAnswers = goalsAndBarriersSetup.goals.map(function (d) {\n var _a, _b;\n return ({\n key: d.key,\n question: translate(d.longLabel),\n answer: (_a = updatedAnswers[d.key]) !== null && _a !== void 0 ? _a : (_b = lastResponse === null || lastResponse === void 0 ? void 0 : lastResponse.properties) === null || _b === void 0 ? void 0 : _b[d.key],\n });\n });\n var handleQuestionResponseChange = function (name) { return function (text) {\n setUpdatedAnswers(function (prevState) {\n var _a;\n return (__assign(__assign({}, prevState), (_a = {}, _a[name] = text, _a)));\n });\n setHasUnsavedChanges(true);\n }; };\n var clearChanges = function () {\n setUpdatedAnswers({});\n setHasUnsavedChanges(false);\n };\n var handleSaveResponse = function () {\n var answerProps = questionsWithAnswers.reduce(function (prev, curr) {\n var _a;\n return (__assign(__assign({}, prev), (_a = {}, _a[curr.key] = curr.answer, _a)));\n }, {});\n var callback = function () { return clearChanges(); };\n if (goalsRegistration === null || goalsRegistration === void 0 ? void 0 : goalsRegistration.id) {\n var healthRegistrationLog = {\n id: 0,\n type: healthRegistration_1.HealthRegistrationLogType.Task,\n date: new Date().toISOString(),\n healthRegistrationId: goalsRegistration === null || goalsRegistration === void 0 ? void 0 : goalsRegistration.id,\n properties: answerProps,\n };\n (0, healthRegistrationService_1.insertHealthRegistrationLogsData)(dispatch, healthRegistrationLog, { callback: callback });\n }\n else {\n var healthRegistration = {\n type: healthRegistration_1.HealthRegistrationType.Goals,\n healthRegistrationLogs: [{\n id: 0,\n date: new Date(),\n type: healthRegistration_1.HealthRegistrationLogType.Task,\n properties: answerProps,\n }],\n };\n (0, healthRegistrationService_1.insertHealthRegistrationsData)(dispatch, healthRegistration, { callback: callback });\n }\n };\n return (React.createElement(HealthPageWrapper_1.default, { title: translate('healthPage.goalsAndBarriers') },\n React.createElement(React.Fragment, null,\n questionsWithAnswers.map(function (question) { return (React.createElement(QuestionAndInput_1.default, { key: question.key, label: question.question, onChange: handleQuestionResponseChange(question.key), value: question.answer })); }),\n React.createElement(\"div\", { className: classes.actions },\n hasUnsavedChanges && (React.createElement(core_1.Button, { onClick: clearChanges }, translate('cancel'))),\n (!hasAnsweredPreviously || hasUnsavedChanges) && (React.createElement(core_1.Button, { disabled: !hasUnsavedChanges, variant: \"contained\", color: \"secondary\", onClick: handleSaveResponse }, translate(hasAnsweredPreviously ? 'update' : 'save')))))));\n};\nexports.default = GoalsAndBarriers;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.useStyles = void 0;\nvar makeStyles_1 = __importDefault(require(\"@material-ui/core/styles/makeStyles\"));\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar icons_1 = require(\"@material-ui/icons\");\nvar urls_1 = __importDefault(require(\"../../../app/urls\"));\nvar translate_1 = __importDefault(require(\"../../../app/localization/translate\"));\nvar store_1 = require(\"../../../app/store\");\nvar breadcrumbUtil_1 = require(\"../../../common/breadcrumbUtil\");\nvar components_1 = require(\"../../../common/components\");\nvar VerticalLineheader_1 = __importDefault(require(\"./components/VerticalLineheader\"));\nvar TitleButtonCard_1 = __importDefault(require(\"./components/TitleButtonCard\"));\nvar HealthProgressCard_1 = __importDefault(require(\"./components/HealthProgressCard\"));\nexports.useStyles = (0, makeStyles_1.default)(function (theme) { return ({\n root: {\n display: 'flex',\n flexDirection: 'column',\n gap: theme.spacing(2),\n },\n goalsCard: {\n display: 'flex',\n padding: theme.spacing(3),\n justifyContent: 'space-between',\n },\n healthProgressCardActionAeria: {\n padding: theme.spacing(3),\n height: '100%',\n },\n healthProgressCard: {\n height: '100%',\n },\n}); });\nvar Health = function () {\n var _a;\n var classes = (0, exports.useStyles)();\n var translate = (0, translate_1.default)();\n var clientConfig = (0, store_1.useYouwellSelector)(function (state) { return state.auth.clientConfig; });\n var healthPagesData = [\n {\n key: 'medicine',\n icon: React.createElement(icons_1.LocalHospital, { color: \"primary\" }),\n titleTranslateKey: 'healthPage.medicine',\n descriptionTranslateKey: 'healthPage.medicineDescription',\n url: urls_1.default.inside.pages.health.medicine,\n },\n {\n key: 'activity',\n icon: React.createElement(icons_1.DirectionsRun, { color: \"primary\" }),\n titleTranslateKey: 'healthPage.activity',\n descriptionTranslateKey: 'healthPage.activityDescription',\n url: urls_1.default.inside.pages.health.activity,\n },\n {\n key: 'weight',\n icon: React.createElement(icons_1.Assessment, { color: \"primary\" }),\n titleTranslateKey: 'healthPage.weight',\n descriptionTranslateKey: 'healthPage.weightDescription',\n url: urls_1.default.inside.pages.health.weight,\n },\n {\n key: 'diet',\n icon: React.createElement(icons_1.EmojiFoodBeverage, { color: \"primary\" }),\n titleTranslateKey: 'healthPage.diet',\n descriptionTranslateKey: 'healthPage.dietDescription',\n url: urls_1.default.inside.pages.health.diet,\n },\n {\n key: 'smoking',\n icon: React.createElement(icons_1.SmokeFree, { color: \"primary\" }),\n titleTranslateKey: 'healthPage.smoking',\n descriptionTranslateKey: 'healthPage.smokingDescription',\n url: urls_1.default.inside.pages.health.smoking,\n },\n {\n key: 'bloodSugar',\n icon: React.createElement(icons_1.Favorite, { color: \"primary\" }),\n titleTranslateKey: 'healthPage.bloodSugar',\n descriptionTranslateKey: 'healthPage.bloodSugarDescription',\n url: urls_1.default.inside.pages.health.bloodSugar,\n },\n {\n key: 'psychosocial',\n icon: React.createElement(icons_1.EmojiPeople, { color: \"primary\" }),\n titleTranslateKey: 'healthPage.psychosocial',\n descriptionTranslateKey: 'healthPage.psychosocialDescription',\n url: urls_1.default.inside.pages.health.psychosocial,\n },\n ];\n return (React.createElement(components_1.PageLayout, { breadcrumb: (0, breadcrumbUtil_1.getBreadCrumb)(translate('healthPage.header'), translate, clientConfig, undefined, []) },\n React.createElement(\"div\", { className: classes.root },\n React.createElement(VerticalLineheader_1.default, { title: translate('healthPage.header'), icon: React.createElement(icons_1.DirectionsRun, null) }),\n ((_a = clientConfig.appSetup.features.health) === null || _a === void 0 ? void 0 : _a.goals) && (React.createElement(TitleButtonCard_1.default, { title: translate('healthPage.goalsAndBarriers'), buttonText: translate('goalsAndBarriers.open'), buttonUrl: urls_1.default.inside.pages.health.goals })),\n React.createElement(core_1.Grid, { container: true, spacing: 2 }, healthPagesData.filter(function (element) { var _a; return (_a = clientConfig.appSetup.features.health) === null || _a === void 0 ? void 0 : _a[element.key]; }).map(function (element) { return (React.createElement(HealthProgressCard_1.default, { key: element.key, element: element })); })))));\n};\nexports.default = Health;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar urls_1 = __importDefault(require(\"../../../app/urls\"));\nvar Health_1 = __importDefault(require(\"./Health\"));\nvar Activity_1 = __importDefault(require(\"./Activity\"));\nvar BloodSugar_1 = __importDefault(require(\"./BloodSugar\"));\nvar Diet_1 = __importDefault(require(\"./Diet\"));\nvar Medicine_1 = __importDefault(require(\"./Medicine\"));\nvar Psychosocial_1 = __importDefault(require(\"./Psychosocial\"));\nvar Smoking_1 = __importDefault(require(\"./Smoking\"));\nvar Weight_1 = __importDefault(require(\"./Weight\"));\nvar GoalsAndBarriers_1 = __importDefault(require(\"./GoalsAndBarriers\"));\nvar Index = function () { return (React.createElement(react_router_dom_1.Switch, null,\n React.createElement(react_router_dom_1.Route, { path: urls_1.default.inside.pages.health.medicine, component: Medicine_1.default }),\n React.createElement(react_router_dom_1.Route, { path: urls_1.default.inside.pages.health.activity, component: Activity_1.default }),\n React.createElement(react_router_dom_1.Route, { path: urls_1.default.inside.pages.health.weight, component: Weight_1.default }),\n React.createElement(react_router_dom_1.Route, { path: urls_1.default.inside.pages.health.diet, component: Diet_1.default }),\n React.createElement(react_router_dom_1.Route, { path: urls_1.default.inside.pages.health.smoking, component: Smoking_1.default }),\n React.createElement(react_router_dom_1.Route, { path: urls_1.default.inside.pages.health.bloodSugar, component: BloodSugar_1.default }),\n React.createElement(react_router_dom_1.Route, { path: urls_1.default.inside.pages.health.psychosocial, component: Psychosocial_1.default }),\n React.createElement(react_router_dom_1.Route, { path: urls_1.default.inside.pages.health.goals, component: GoalsAndBarriers_1.default }),\n React.createElement(react_router_dom_1.Route, { component: Health_1.default }))); };\nexports.default = Index;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar icons_1 = require(\"@material-ui/icons\");\nvar core_1 = require(\"@material-ui/core\");\nvar stringUtils_1 = require(\"../../../youwell-common/stringUtils\");\nvar store_1 = require(\"../../../app/store\");\nvar translate_1 = __importDefault(require(\"../../../app/localization/translate\"));\nvar HealthPageWrapper_1 = __importDefault(require(\"./components/HealthPageWrapper\"));\nvar healthConstants_1 = require(\"./utils/healthConstants\");\nvar healthUtils_1 = require(\"./utils/healthUtils\");\nvar WeekSelectorCard_1 = __importDefault(require(\"./components/WeekSelectorCard\"));\nvar dateUtils_1 = require(\"../../../youwell-common/dateUtils\");\nvar HealthTable_1 = __importDefault(require(\"./components/HealthTable\"));\nvar healthRegistration_1 = require(\"../../../app/store/types/healthRegistration\");\nvar MyMedications_1 = __importDefault(require(\"./components/MyMedications\"));\nvar MedicationLogging_1 = __importDefault(require(\"./components/MedicationLogging\"));\nvar medicineService_1 = require(\"../../../app/services/medicineService\");\nvar arrayUtils_1 = require(\"../../../youwell-common/arrayUtils\");\nvar getMedicineSetup = function (translate) { return ([\n {\n key: 'name',\n shortLabel: 'medicine.nameShort',\n longLabel: 'medicine.name',\n type: healthConstants_1.TaskOrGoalInputType.Text,\n placeHolder: translate('medicine.namePlaceholder'),\n },\n {\n key: 'dosage',\n shortLabel: 'medicine.dosageShort',\n longLabel: 'medicine.dosage',\n type: healthConstants_1.TaskOrGoalInputType.Text,\n placeHolder: '200 mg',\n },\n {\n key: 'administrationTime',\n shortLabel: 'medicine.timeofDay',\n longLabel: 'medicine.timeOfDayShort',\n type: healthConstants_1.TaskOrGoalInputType.MultipleSelect,\n dropdownItems: [\n {\n key: 'medicine.morning',\n value: translate('medicine.morning'),\n },\n {\n key: 'medicine.evening',\n value: translate('medicine.evening'),\n },\n ],\n },\n]); };\nvar getChartData = function (theme, translate, selectedWeek, programStartDate, medicationLogs) {\n var healthRegistrationLogs = Object.values(medicationLogs !== null && medicationLogs !== void 0 ? medicationLogs : {}).reduce(function (prev, curr) { return (__spreadArray(__spreadArray([], prev, true), Object.values(curr !== null && curr !== void 0 ? curr : {}).reduce(function (p, c) { return (__spreadArray(__spreadArray([], p, true), [{\n id: c.id,\n type: healthRegistration_1.HealthRegistrationLogType.Task,\n healthRegistrationId: c.medicationId,\n date: c.date,\n properties: {},\n }], false)); }, []), true)); }, []);\n var healthRegistrationLogsFiltredByDate = (0, healthUtils_1.filterHealthRegistrationLogsByDate)(healthRegistrationLogs, selectedWeek.start, selectedWeek.end);\n var dailyVisualizationDataWeek = (0, healthUtils_1.generateVisualizationData)(healthRegistrationLogsFiltredByDate, translate);\n var dailyVisualizationDataAllDays = (0, healthUtils_1.generateVisualizationData)(healthRegistrationLogs, translate);\n var fullRegistrationWeek = (0, healthUtils_1.sumObjectValue)(dailyVisualizationDataWeek, healthConstants_1.VisualizationPropsKeys.FullRegistration);\n var partialRegistrationWeek = (0, healthUtils_1.sumObjectValue)(dailyVisualizationDataWeek, healthConstants_1.VisualizationPropsKeys.PartialRegistration);\n var noRegistrationWeek = (0, healthUtils_1.sumObjectValue)(dailyVisualizationDataWeek, healthConstants_1.VisualizationPropsKeys.NoRegistration);\n var forgotRegistrationWeek = 7 - ((dailyVisualizationDataWeek === null || dailyVisualizationDataWeek === void 0 ? void 0 : dailyVisualizationDataWeek.length) || 0);\n var fullRegistrationsAllDays = (0, healthUtils_1.sumObjectValue)(dailyVisualizationDataAllDays, healthConstants_1.VisualizationPropsKeys.FullRegistration);\n var partialRegistrationsAllDays = (0, healthUtils_1.sumObjectValue)(dailyVisualizationDataAllDays, healthConstants_1.VisualizationPropsKeys.PartialRegistration);\n var noRegistrationsAllDays = (0, healthUtils_1.sumObjectValue)(dailyVisualizationDataAllDays, healthConstants_1.VisualizationPropsKeys.NoRegistration);\n var forgotRegistrationAllDays = programStartDate && dailyVisualizationDataAllDays ? Math.max((0, dateUtils_1.getNumberOfDays)(new Date(programStartDate), new Date()) - (dailyVisualizationDataAllDays === null || dailyVisualizationDataAllDays === void 0 ? void 0 : dailyVisualizationDataAllDays.length), 0) : 1;\n var historyTableRecord = Object.values(medicationLogs !== null && medicationLogs !== void 0 ? medicationLogs : {}).reduce(function (prev, curr) { return (__assign({}, Object.values(curr !== null && curr !== void 0 ? curr : {}).reduce(function (p, c) {\n var _a;\n var _b, _c;\n return (__assign(__assign({}, p), (_a = {}, _a[(0, dateUtils_1.getTextfieldDateString)(c.date)] = __spreadArray(__spreadArray(__spreadArray([], (_b = p[(0, dateUtils_1.getTextfieldDateString)(c.date)]) !== null && _b !== void 0 ? _b : [], true), (_c = prev[(0, dateUtils_1.getTextfieldDateString)(c.date)]) !== null && _c !== void 0 ? _c : [], true), [c], false), _a)));\n }, {}))); }, {});\n var historyTableData = (0, arrayUtils_1.sortByDateAscending)(Object.entries(historyTableRecord)\n .filter(function (_a) {\n var date = _a[0];\n return (new Date(date) >= selectedWeek.start && new Date(date) <= selectedWeek.end);\n })\n .map(function (_a, i) {\n var _b;\n var key = _a[0], values = _a[1];\n var date = new Date(key);\n var dayNumber = date && new Date(date).getDay();\n var dayName = (0, stringUtils_1.firstLetterUp)(translate(\"time.weekdays_short.\".concat(dayNumber)));\n var week = date && (0, dateUtils_1.getWeekNumberFromDate)(date).toString();\n var weekName = \"\".concat((0, stringUtils_1.firstLetterUp)(translate('time.week')), \" \").concat(week);\n var weekAndYearKey = (0, dateUtils_1.generateWeekAndYearKey)(date) || '';\n return _b = {\n date: date.toISOString(),\n weekAndYearKey: weekAndYearKey,\n healthRegistrationId: i,\n dayName: dayName,\n weekName: weekName,\n timePeriod: dayName\n },\n _b[healthConstants_1.VisualizationPropsKeys.FullRegistration] = values.every(function (v) { return v.medTaken; }) ? '✔️👍' : '❌',\n _b[healthConstants_1.VisualizationPropsKeys.NoRegistration] = values.filter(function (v) { return !v.medTaken; }).length,\n _b;\n }), 'date');\n var pieChart1Data = [\n {\n name: translate('medicine.all'),\n value: fullRegistrationWeek,\n color: theme === null || theme === void 0 ? void 0 : theme.youwell.colors.green,\n icon: icons_1.ThumbUp,\n iconColor: theme === null || theme === void 0 ? void 0 : theme.palette.common.white,\n },\n {\n name: translate('medicine.some'),\n value: partialRegistrationWeek,\n color: theme === null || theme === void 0 ? void 0 : theme.youwell.colors.yellow,\n icon: icons_1.Remove,\n iconColor: theme === null || theme === void 0 ? void 0 : theme.palette.common.white,\n },\n {\n name: translate('medicine.none'),\n value: noRegistrationWeek,\n color: theme === null || theme === void 0 ? void 0 : theme.youwell.colors.red,\n icon: icons_1.Close,\n iconColor: theme === null || theme === void 0 ? void 0 : theme.palette.common.white,\n },\n {\n name: translate('medicine.unregistred'),\n value: forgotRegistrationWeek,\n color: theme === null || theme === void 0 ? void 0 : theme.youwell.colors.grayDark,\n icon: icons_1.HelpOutline,\n iconColor: theme === null || theme === void 0 ? void 0 : theme.palette.common.white,\n },\n ];\n var pieChart2Data = [\n {\n name: translate('medicine.all'),\n value: fullRegistrationsAllDays,\n color: theme === null || theme === void 0 ? void 0 : theme.youwell.colors.green,\n icon: icons_1.ThumbUp,\n iconColor: theme === null || theme === void 0 ? void 0 : theme.palette.common.white,\n },\n {\n name: translate('medicine.some'),\n value: partialRegistrationsAllDays,\n color: theme === null || theme === void 0 ? void 0 : theme.youwell.colors.yellow,\n icon: icons_1.Remove,\n iconColor: theme === null || theme === void 0 ? void 0 : theme.palette.common.white,\n },\n {\n name: translate('medicine.none'),\n value: noRegistrationsAllDays,\n color: theme === null || theme === void 0 ? void 0 : theme.youwell.colors.red,\n icon: icons_1.Close,\n iconColor: theme === null || theme === void 0 ? void 0 : theme.palette.common.white,\n },\n {\n name: translate('medicine.unregistred'),\n value: forgotRegistrationAllDays,\n color: theme === null || theme === void 0 ? void 0 : theme.youwell.colors.grayDark,\n icon: icons_1.HelpOutline,\n iconColor: theme === null || theme === void 0 ? void 0 : theme.palette.common.white,\n },\n ];\n return {\n pieChart1Data: pieChart1Data,\n pieChart2Data: pieChart2Data,\n historyTableData: historyTableData,\n };\n};\nvar Medicine = function () {\n var theme = (0, core_1.useTheme)();\n var translate = (0, translate_1.default)();\n var dispatch = (0, store_1.useYouwellDispatch)();\n var _a = React.useState((0, dateUtils_1.getWeek)()), selectedWeek = _a[0], setSelectedWeek = _a[1];\n var programStartDate = (0, store_1.useYouwellSelector)(function (state) { var _a; return (_a = state.programStore.currentProgram) === null || _a === void 0 ? void 0 : _a.startDate; });\n var medications = (0, store_1.useYouwellSelector)(function (state) { return state.medicationStore.medications; });\n var medicationLogs = (0, store_1.useYouwellSelector)(function (state) { return state.medicationStore.medicationLogs; });\n React.useEffect(function () {\n if (!medicationLogs) {\n (0, medicineService_1.fetchMedicationLogData)(dispatch);\n }\n }, [dispatch, medicationLogs]);\n var chartData = getChartData(theme, translate, selectedWeek, programStartDate, medicationLogs);\n var medicineSetup = getMedicineSetup(translate);\n return (React.createElement(HealthPageWrapper_1.default, { title: translate('healthPage.medicine') },\n React.createElement(MedicationLogging_1.default, { medications: medications, medicationLogs: medicationLogs }),\n React.createElement(MyMedications_1.default, { medications: medications, medicationSetup: medicineSetup }),\n React.createElement(WeekSelectorCard_1.default, { selectedWeek: selectedWeek, onChange: setSelectedWeek }),\n React.createElement(HealthTable_1.default, { data: chartData.historyTableData, headerTranslateKeys: [\n 'medicine.tookAllMedicine',\n 'medicine.didNotTake',\n ], dataKeys: [\n healthConstants_1.VisualizationPropsKeys.FullRegistration,\n healthConstants_1.VisualizationPropsKeys.NoRegistration,\n ] })));\n};\nexports.default = Medicine;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar translate_1 = __importDefault(require(\"../../../app/localization/translate\"));\nvar store_1 = require(\"../../../app/store\");\nvar healthUtils_1 = require(\"./utils/healthUtils\");\nvar HealthGraph_1 = __importDefault(require(\"./components/HealthGraph\"));\nvar healthConstants_1 = require(\"./utils/healthConstants\");\nvar HealthPageWrapper_1 = __importDefault(require(\"./components/HealthPageWrapper\"));\nvar HealthTable_1 = __importDefault(require(\"./components/HealthTable\"));\nvar HealthRegistrationTasksCard_1 = __importDefault(require(\"./components/HealthRegistrationTasksCard\"));\nvar HealthRegistrationGoalsCard_1 = __importDefault(require(\"./components/HealthRegistrationGoalsCard\"));\nvar healthRegistration_1 = require(\"../../../app/store/types/healthRegistration\");\nvar dropdownItems = (0, healthUtils_1.generateDropdownItemData)(4, 'psychosocial.dropdownItems');\nvar getPsychosocialSetup = function (theme) { return ({\n type: healthRegistration_1.HealthRegistrationType.Psychosocial,\n registrationInterval: healthConstants_1.RegistrationInterval.Weekly,\n tasks: [\n {\n key: healthConstants_1.PsychosocialPropKeys.SafeScore,\n shortLabel: 'psychosocial.alternative',\n longLabel: 'psychosocial.safeAndCalm',\n type: healthConstants_1.TaskOrGoalInputType.Dropdown,\n dropdownItems: dropdownItems,\n visualizationProps: {\n topHalfColor: theme.youwell.colors.greenLight,\n bottomHalfColor: theme.youwell.colors.redLight,\n valueTypeTranslateKey: 'psychosocial.dropdownItems',\n },\n },\n {\n key: healthConstants_1.PsychosocialPropKeys.CheerfulScore,\n shortLabel: 'psychosocial.alternative',\n longLabel: 'psychosocial.cheerfulAndOptimistic',\n type: healthConstants_1.TaskOrGoalInputType.Dropdown,\n dropdownItems: dropdownItems,\n visualizationProps: {\n topHalfColor: theme.youwell.colors.greenLight,\n bottomHalfColor: theme.youwell.colors.redLight,\n valueTypeTranslateKey: 'psychosocial.dropdownItems',\n },\n },\n {\n key: healthConstants_1.PsychosocialPropKeys.NervousScore,\n shortLabel: 'psychosocial.alternative',\n longLabel: 'psychosocial.nervous',\n type: healthConstants_1.TaskOrGoalInputType.Dropdown,\n dropdownItems: dropdownItems,\n visualizationProps: {\n topHalfColor: theme.youwell.colors.yellow,\n bottomHalfColor: theme.youwell.colors.greenLight,\n valueTypeTranslateKey: 'psychosocial.dropdownItems',\n },\n },\n {\n key: healthConstants_1.PsychosocialPropKeys.AnxietyScore,\n shortLabel: 'psychosocial.alternative',\n longLabel: 'psychosocial.anxiety',\n type: healthConstants_1.TaskOrGoalInputType.Dropdown,\n dropdownItems: dropdownItems,\n visualizationProps: {\n topHalfColor: theme.youwell.colors.yellow,\n bottomHalfColor: theme.youwell.colors.greenLight,\n valueTypeTranslateKey: 'psychosocial.dropdownItems',\n },\n },\n {\n key: healthConstants_1.PsychosocialPropKeys.IrritableScore,\n shortLabel: 'psychosocial.alternative',\n longLabel: 'psychosocial.irritable',\n type: healthConstants_1.TaskOrGoalInputType.Dropdown,\n dropdownItems: dropdownItems,\n visualizationProps: {\n topHalfColor: theme.youwell.colors.yellow,\n bottomHalfColor: theme.youwell.colors.greenLight,\n valueTypeTranslateKey: 'psychosocial.dropdownItems',\n },\n },\n {\n key: healthConstants_1.PsychosocialPropKeys.DepressedScore,\n shortLabel: 'psychosocial.alternative',\n longLabel: 'psychosocial.depressed',\n type: healthConstants_1.TaskOrGoalInputType.Dropdown,\n dropdownItems: dropdownItems,\n visualizationProps: {\n topHalfColor: theme.youwell.colors.yellow,\n bottomHalfColor: theme.youwell.colors.greenLight,\n valueTypeTranslateKey: 'psychosocial.dropdownItems',\n },\n },\n {\n key: healthConstants_1.PsychosocialPropKeys.LonelyScore,\n shortLabel: 'psychosocial.alternative',\n longLabel: 'psychosocial.lonely',\n type: healthConstants_1.TaskOrGoalInputType.Dropdown,\n dropdownItems: dropdownItems,\n visualizationProps: {\n topHalfColor: theme.youwell.colors.yellow,\n bottomHalfColor: theme.youwell.colors.greenLight,\n valueTypeTranslateKey: 'psychosocial.dropdownItems',\n },\n },\n {\n key: healthConstants_1.PsychosocialPropKeys.TenseScore,\n shortLabel: 'psychosocial.alternative',\n longLabel: 'psychosocial.tense',\n type: healthConstants_1.TaskOrGoalInputType.Dropdown,\n dropdownItems: dropdownItems,\n visualizationProps: {\n topHalfColor: theme.youwell.colors.yellow,\n bottomHalfColor: theme.youwell.colors.greenLight,\n valueTypeTranslateKey: 'psychosocial.dropdownItems',\n },\n },\n {\n key: healthConstants_1.PsychosocialPropKeys.PessimisticScore,\n shortLabel: 'psychosocial.alternative',\n longLabel: 'psychosocial.pessimistic',\n type: healthConstants_1.TaskOrGoalInputType.Dropdown,\n dropdownItems: dropdownItems,\n visualizationProps: {\n topHalfColor: theme.youwell.colors.yellow,\n bottomHalfColor: theme.youwell.colors.greenLight,\n valueTypeTranslateKey: 'psychosocial.dropdownItems',\n },\n },\n {\n key: healthConstants_1.PsychosocialPropKeys.Awake,\n shortLabel: 'psychosocial.alternative',\n longLabel: 'psychosocial.awake',\n type: healthConstants_1.TaskOrGoalInputType.Dropdown,\n dropdownItems: (0, healthUtils_1.generateDropdownItemData)(7, 'psychosocial.dropdownItemsAwake'),\n visualizationProps: {\n topHalfColor: theme.youwell.colors.yellow,\n bottomHalfColor: theme.youwell.colors.greenLight,\n valueTypeTranslateKey: 'psychosocial.dropdownItemsAwake',\n },\n },\n ],\n goals: [],\n}); };\nvar Psychosocial = function () {\n var _a, _b, _c;\n var theme = (0, core_1.useTheme)();\n var translate = (0, translate_1.default)();\n var healthRegistrations = (0, store_1.useYouwellSelector)(function (state) { return state.healthRegistrationStore.healthRegistrations; });\n var psychosocialSetup = getPsychosocialSetup(theme);\n var healthRegistrationLogs = (_a = healthRegistrations === null || healthRegistrations === void 0 ? void 0 : healthRegistrations.find(function (d) { return d.type === psychosocialSetup.type; })) === null || _a === void 0 ? void 0 : _a.healthRegistrationLogs;\n var visualizationData = (0, healthUtils_1.generateVisualizationData)(healthRegistrationLogs, translate, true);\n var cellValueTranslateKeys = (0, healthUtils_1.generateCellValueTranslateKeys)(psychosocialSetup.tasks);\n return (React.createElement(HealthPageWrapper_1.default, { title: translate('healthPage.psychosocial') },\n React.createElement(HealthRegistrationTasksCard_1.default, { healthRegistrationSetup: psychosocialSetup }),\n React.createElement(HealthRegistrationGoalsCard_1.default, { healthRegistrationSetup: psychosocialSetup }),\n React.createElement(HealthTable_1.default, { data: visualizationData, headerTranslateKeys: (_b = psychosocialSetup.tasks) === null || _b === void 0 ? void 0 : _b.map(function (d) { return d.longLabel; }), dataKeys: (_c = psychosocialSetup.tasks) === null || _c === void 0 ? void 0 : _c.map(function (d) { return d.key; }), cellValueTranslateKeys: cellValueTranslateKeys, lineHighlightDirection: healthConstants_1.LineHighlightDirection === null || healthConstants_1.LineHighlightDirection === void 0 ? void 0 : healthConstants_1.LineHighlightDirection.Vertical }),\n React.createElement(React.Fragment, null, psychosocialSetup.tasks.map(function (task) {\n var _a, _b, _c;\n return (React.createElement(HealthGraph_1.default, { key: task.key, title: translate(task.longLabel), data: visualizationData, dataKeys: { valueKey: task.key }, valueTypeTranslateKey: (_a = task.visualizationProps) === null || _a === void 0 ? void 0 : _a.valueTypeTranslateKey, topHalfColor: (_b = task.visualizationProps) === null || _b === void 0 ? void 0 : _b.topHalfColor, bottomHalfColor: (_c = task.visualizationProps) === null || _c === void 0 ? void 0 : _c.bottomHalfColor, noFill: true, hideYAxisLabels: true }));\n }))));\n};\nexports.default = Psychosocial;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar translate_1 = __importDefault(require(\"../../../app/localization/translate\"));\nvar store_1 = require(\"../../../app/store\");\nvar healthUtils_1 = require(\"./utils/healthUtils\");\nvar HealthGraph_1 = __importDefault(require(\"./components/HealthGraph\"));\nvar HealthTable_1 = __importDefault(require(\"./components/HealthTable\"));\nvar healthConstants_1 = require(\"./utils/healthConstants\");\nvar HealthPageWrapper_1 = __importDefault(require(\"./components/HealthPageWrapper\"));\nvar dateUtils_1 = require(\"../../../youwell-common/dateUtils\");\nvar WeekSelectorCard_1 = __importDefault(require(\"./components/WeekSelectorCard\"));\nvar HealthRegistrationTasksCard_1 = __importDefault(require(\"./components/HealthRegistrationTasksCard\"));\nvar HealthRegistrationGoalsCard_1 = __importDefault(require(\"./components/HealthRegistrationGoalsCard\"));\nvar healthRegistration_1 = require(\"../../../app/store/types/healthRegistration\");\nvar nicotineMaxValue = 99;\nvar nicotineSetup = {\n type: healthRegistration_1.HealthRegistrationType.SmokeStop,\n registrationInterval: healthConstants_1.RegistrationInterval.Daily,\n tasks: [\n {\n key: healthConstants_1.SmokingPropKeys.CigarettesScore,\n shortLabel: 'smoking.count',\n longLabel: 'smoking.cigarettesSmokedToday',\n type: healthConstants_1.TaskOrGoalInputType.Number,\n maxValue: nicotineMaxValue,\n placeHolder: 30,\n },\n {\n key: healthConstants_1.SmokingPropKeys.SnusScore,\n shortLabel: 'smoking.count',\n longLabel: 'smoking.snusTakenToday',\n type: healthConstants_1.TaskOrGoalInputType.Number,\n maxValue: nicotineMaxValue,\n placeHolder: 20,\n },\n ],\n goals: [\n {\n key: healthConstants_1.SmokingPropKeys.CigarettesGoal,\n shortLabel: 'smoking.count',\n longLabel: 'smoking.cigarettesDaylyGoal',\n type: healthConstants_1.TaskOrGoalInputType.Number,\n maxValue: nicotineMaxValue,\n placeHolder: 25,\n },\n {\n key: healthConstants_1.SmokingPropKeys.SnusGoal,\n shortLabel: 'smoking.count',\n longLabel: 'smoking.snusDailyGoal',\n type: healthConstants_1.TaskOrGoalInputType.Number,\n maxValue: nicotineMaxValue,\n placeHolder: 15,\n },\n ],\n};\nvar Smoking = function () {\n var _a;\n var translate = (0, translate_1.default)();\n var _b = React.useState((0, dateUtils_1.getWeek)()), selectedWeek = _b[0], setSelectedWeek = _b[1];\n var healthRegistrations = (0, store_1.useYouwellSelector)(function (state) { return state.healthRegistrationStore.healthRegistrations; });\n var healthRegistrationLogs = (_a = healthRegistrations === null || healthRegistrations === void 0 ? void 0 : healthRegistrations.find(function (d) { return d.type === nicotineSetup.type; })) === null || _a === void 0 ? void 0 : _a.healthRegistrationLogs;\n var healthRegistrationLogsFiltredByDate = (0, healthUtils_1.filterHealthRegistrationLogsByDate)(healthRegistrationLogs, selectedWeek.start, selectedWeek.end);\n var visualizationData = (0, healthUtils_1.generateVisualizationData)(healthRegistrationLogsFiltredByDate, translate);\n var currentTasksAndGoals = __spreadArray(__spreadArray([], nicotineSetup.tasks, true), nicotineSetup.goals, true);\n return (React.createElement(HealthPageWrapper_1.default, { title: translate('healthPage.smoking') },\n React.createElement(HealthRegistrationTasksCard_1.default, { healthRegistrationSetup: nicotineSetup }),\n React.createElement(HealthRegistrationGoalsCard_1.default, { healthRegistrationSetup: nicotineSetup }),\n React.createElement(WeekSelectorCard_1.default, { selectedWeek: selectedWeek, onChange: setSelectedWeek }),\n React.createElement(HealthTable_1.default, { headerTranslateKeys: currentTasksAndGoals.map(function (d) { return d.longLabel; }), dataKeys: currentTasksAndGoals.map(function (d) { return d.key; }), data: visualizationData }),\n React.createElement(HealthGraph_1.default, { measuringUnit: \"smoking.count\", title: translate('smoking.smokedCount'), data: visualizationData, dataKeys: {\n maxGoalKey: healthConstants_1.SmokingPropKeys.CigarettesGoal,\n valueKey: healthConstants_1.SmokingPropKeys.CigarettesScore,\n } }),\n React.createElement(HealthGraph_1.default, { measuringUnit: \"smoking.count\", title: translate('smoking.snusCount'), data: visualizationData, dataKeys: {\n maxGoalKey: healthConstants_1.SmokingPropKeys.SnusGoal,\n valueKey: healthConstants_1.SmokingPropKeys.SnusScore,\n } })));\n};\nexports.default = Smoking;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar translate_1 = __importDefault(require(\"../../../app/localization/translate\"));\nvar store_1 = require(\"../../../app/store\");\nvar healthUtils_1 = require(\"./utils/healthUtils\");\nvar HealthGraph_1 = __importDefault(require(\"./components/HealthGraph\"));\nvar HealthTable_1 = __importDefault(require(\"./components/HealthTable\"));\nvar healthConstants_1 = require(\"./utils/healthConstants\");\nvar HealthPageWrapper_1 = __importDefault(require(\"./components/HealthPageWrapper\"));\nvar HealthRegistrationTasksCard_1 = __importDefault(require(\"./components/HealthRegistrationTasksCard\"));\nvar HealthRegistrationGoalsCard_1 = __importDefault(require(\"./components/HealthRegistrationGoalsCard\"));\nvar healthRegistration_1 = require(\"../../../app/store/types/healthRegistration\");\nvar weightMaxValue = 700;\nvar waistMaxValue = 300;\nvar WeightAndSizePropKeys;\n(function (WeightAndSizePropKeys) {\n WeightAndSizePropKeys[\"KgGoal\"] = \"kgGoal\";\n WeightAndSizePropKeys[\"KgScore\"] = \"kgScore\";\n WeightAndSizePropKeys[\"CmGoal\"] = \"cmGoal\";\n WeightAndSizePropKeys[\"CmScore\"] = \"cmScore\";\n})(WeightAndSizePropKeys || (WeightAndSizePropKeys = {}));\nvar weightAndWaistSetup = {\n type: healthRegistration_1.HealthRegistrationType.WeightAndSize,\n registrationInterval: healthConstants_1.RegistrationInterval.Weekly,\n tasks: [\n {\n key: WeightAndSizePropKeys.KgScore,\n shortLabel: 'weightAndSize.kg',\n longLabel: 'weightAndSize.kgToday',\n type: healthConstants_1.TaskOrGoalInputType.Number,\n maxValue: weightMaxValue,\n placeHolder: 80,\n },\n {\n key: WeightAndSizePropKeys.CmScore,\n shortLabel: 'weightAndSize.cm',\n longLabel: 'weightAndSize.cmToday',\n type: healthConstants_1.TaskOrGoalInputType.Number,\n maxValue: waistMaxValue,\n placeHolder: 100,\n },\n ],\n goals: [\n {\n key: WeightAndSizePropKeys.KgGoal,\n shortLabel: 'weightAndSize.kg',\n longLabel: 'weightAndSize.kgGoalLabel',\n columnHeaderLabel: 'weightAndSize.kgGoal',\n type: healthConstants_1.TaskOrGoalInputType.Number,\n maxValue: weightMaxValue,\n placeHolder: 70,\n },\n {\n key: WeightAndSizePropKeys.CmGoal,\n shortLabel: 'weightAndSize.cm',\n longLabel: 'weightAndSize.cmGoalLabel',\n columnHeaderLabel: 'weightAndSize.cmGoal',\n type: healthConstants_1.TaskOrGoalInputType.Number,\n maxValue: waistMaxValue,\n placeHolder: 80,\n },\n ],\n};\nvar Weight = function () {\n var _a;\n var translate = (0, translate_1.default)();\n var healthRegistrations = (0, store_1.useYouwellSelector)(function (state) { return state.healthRegistrationStore.healthRegistrations; });\n var healthRegistrationLogs = (_a = healthRegistrations === null || healthRegistrations === void 0 ? void 0 : healthRegistrations.find(function (d) { return d.type === weightAndWaistSetup.type; })) === null || _a === void 0 ? void 0 : _a.healthRegistrationLogs;\n var weeklyVisualizationData = (0, healthUtils_1.generateVisualizationData)(healthRegistrationLogs, translate, true);\n var currentTasksAndGoals = __spreadArray(__spreadArray([], weightAndWaistSetup.tasks, true), weightAndWaistSetup.goals, true);\n return (React.createElement(HealthPageWrapper_1.default, { title: translate('healthPage.weight') },\n React.createElement(HealthRegistrationTasksCard_1.default, { healthRegistrationSetup: weightAndWaistSetup }),\n React.createElement(HealthRegistrationGoalsCard_1.default, { healthRegistrationSetup: weightAndWaistSetup }),\n React.createElement(HealthTable_1.default, { data: weeklyVisualizationData, headerTranslateKeys: currentTasksAndGoals.map(function (d) { var _a; return (_a = d.columnHeaderLabel) !== null && _a !== void 0 ? _a : d.longLabel; }), dataKeys: currentTasksAndGoals.map(function (d) { return d.key; }) }),\n React.createElement(HealthGraph_1.default, { data: weeklyVisualizationData, measuringUnit: \"weightAndSize.kg\", title: translate('weightAndSize.weight'), dataKeys: {\n maxGoalKey: WeightAndSizePropKeys.KgGoal,\n valueKey: WeightAndSizePropKeys.KgScore,\n } }),\n React.createElement(HealthGraph_1.default, { data: weeklyVisualizationData, measuringUnit: \"weightAndSize.cm\", title: translate('weightAndSize.size'), dataKeys: {\n maxGoalKey: WeightAndSizePropKeys.CmGoal,\n valueKey: WeightAndSizePropKeys.CmScore,\n } })));\n};\nexports.default = Weight;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.useStyles = void 0;\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar recharts_1 = require(\"recharts\");\nvar icons_1 = require(\"@material-ui/icons\");\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar VerticalLineheader_1 = __importDefault(require(\"./VerticalLineheader\"));\nexports.useStyles = (0, core_1.makeStyles)(function (theme) {\n var _a;\n return ({\n root: {\n padding: theme.spacing(3, 0),\n position: 'relative',\n },\n leftLable: (_a = {\n backgroundColor: theme.palette.primary.main,\n padding: theme.spacing(0.5, 2.5, 0.5, 4),\n position: 'absolute',\n top: 'calc(60px + 18%)',\n left: theme.spacing(-1),\n borderTopRightRadius: theme.youwell.shapes.borderRadiusRound,\n borderBottomRightRadius: theme.youwell.shapes.borderRadiusRound\n },\n _a[theme.breakpoints.down('xs')] = {\n display: 'none',\n },\n _a),\n leftLableTitle: {\n color: theme.palette.common.white,\n },\n customToolTip: {\n padding: theme.spacing(2),\n display: 'flex',\n gap: theme.spacing(0.5),\n flexDirection: 'column',\n },\n tableHeaderContainer: {\n padding: theme.spacing(2, 4),\n },\n customToolTipTitle: {\n fontWeight: theme.typography.fontWeightMedium,\n },\n composedChartContainer: {\n // Reset auto left margin from rechart to center graph\n marginLeft: -20,\n },\n });\n});\nvar ICON_SIZE = 32;\nvar TABLE_MIN_WIDTH = 300;\nvar TABLE_ASPECT_RADIO = 16 / 9;\nvar DOMAIN_MULTIPLIER = 1.15;\nvar CustomDots = function (_a) {\n var payload = _a.payload, cx = _a.cx, cy = _a.cy, dataKeys = _a.dataKeys;\n var minGoalKey = dataKeys === null || dataKeys === void 0 ? void 0 : dataKeys.minGoalKey;\n var minGoal = minGoalKey ? payload === null || payload === void 0 ? void 0 : payload[minGoalKey] : undefined;\n var maxGoalKey = dataKeys === null || dataKeys === void 0 ? void 0 : dataKeys.maxGoalKey;\n var maxGoal = maxGoalKey ? payload === null || payload === void 0 ? void 0 : payload[maxGoalKey] : undefined;\n var valueKey = dataKeys === null || dataKeys === void 0 ? void 0 : dataKeys.valueKey;\n var value = valueKey ? payload === null || payload === void 0 ? void 0 : payload[valueKey] : undefined;\n var goalSatisfied = (((minGoal && maxGoal && value) && (value >= minGoal && value <= maxGoal))\n || ((minGoal && !maxGoal && value) && value >= minGoal)\n || ((maxGoal && !minGoal && value) && value <= maxGoal));\n if (goalSatisfied) {\n return (React.createElement(core_1.Hidden, { xsDown: true },\n React.createElement(icons_1.EmojiEmotions, { width: ICON_SIZE, height: ICON_SIZE, x: cx - (ICON_SIZE / 2), y: cy - (ICON_SIZE * 1.4), color: \"secondary\", fill: \"white\", colorProfile: \"white\", colorRendering: \"white\" })));\n }\n return null;\n};\nvar CustomToolTip = function (_a) {\n var _b, _c;\n var tooltipProps = _a.tooltipProps, measuringUnit = _a.measuringUnit, dataKeys = _a.dataKeys, valueTypeTranslateKey = _a.valueTypeTranslateKey;\n var classes = (0, exports.useStyles)();\n var translate = (0, translate_1.default)();\n var data = (_c = (_b = tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.payload) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.payload;\n var momentText = data === null || data === void 0 ? void 0 : data.timePeriod;\n var measuringUnitText = measuringUnit && translate(measuringUnit).toLowerCase();\n var valueKey = dataKeys === null || dataKeys === void 0 ? void 0 : dataKeys.valueKey;\n var value = valueKey && (data === null || data === void 0 ? void 0 : data[valueKey]);\n var measurmentText = measuringUnit && \"\".concat(translate('healthGraph.now'), \": \").concat(value, \" \").concat(measuringUnitText);\n var valueTypeText = valueTypeTranslateKey && translate(\"\".concat(valueTypeTranslateKey, \".\").concat(value));\n var valueText = value && (measurmentText || valueTypeText);\n var minGoalKey = dataKeys === null || dataKeys === void 0 ? void 0 : dataKeys.minGoalKey;\n var minGoal = minGoalKey ? data === null || data === void 0 ? void 0 : data[minGoalKey] : minGoalKey;\n var minGoalText = \"\".concat(translate('healthGraph.minGoal'), \": \").concat(minGoal, \" \").concat(measuringUnitText);\n var maxGoalKey = dataKeys === null || dataKeys === void 0 ? void 0 : dataKeys.maxGoalKey;\n var maxGoal = maxGoalKey && (data === null || data === void 0 ? void 0 : data[maxGoalKey]);\n var maxGoalText = \"\".concat(translate('healthGraph.maxGoal'), \": \").concat(maxGoal, \" \").concat(measuringUnitText);\n return (React.createElement(core_1.Card, { className: classes.customToolTip },\n React.createElement(core_1.Typography, { variant: \"body2\", className: classes.customToolTipTitle }, momentText),\n valueText && (React.createElement(core_1.Typography, { variant: \"body2\" }, valueText)),\n maxGoal && (React.createElement(core_1.Typography, { variant: \"body2\" }, maxGoalText)),\n minGoal && (React.createElement(core_1.Typography, { variant: \"body2\" }, minGoalText))));\n};\nvar getHighestNumber = function (data, dataKeys) {\n var highestNumber = (data === null || data === void 0 ? void 0 : data.reduce(function (prev, curr) {\n var valueKey = dataKeys === null || dataKeys === void 0 ? void 0 : dataKeys.valueKey;\n var value = valueKey ? Number(curr === null || curr === void 0 ? void 0 : curr[valueKey]) : 0;\n var minGoalKey = dataKeys === null || dataKeys === void 0 ? void 0 : dataKeys.minGoalKey;\n var minGoal = minGoalKey ? Number(curr === null || curr === void 0 ? void 0 : curr[minGoalKey]) : 0;\n var maxGoalKey = dataKeys === null || dataKeys === void 0 ? void 0 : dataKeys.maxGoalKey;\n var maxGoal = maxGoalKey ? Number(curr === null || curr === void 0 ? void 0 : curr[maxGoalKey]) : 0;\n var largestCurrNumber = Math.max(value, minGoal, maxGoal);\n if (largestCurrNumber > prev) {\n return largestCurrNumber;\n }\n return prev;\n }, 0)) || 0;\n return highestNumber;\n};\nvar HealthGraph = function (_a) {\n var data = _a.data, title = _a.title, dataKeys = _a.dataKeys, measuringUnit = _a.measuringUnit, valueTypeTranslateKey = _a.valueTypeTranslateKey, noFill = _a.noFill, topHalfColor = _a.topHalfColor, bottomHalfColor = _a.bottomHalfColor, hideYAxisLabels = _a.hideYAxisLabels;\n var classes = (0, exports.useStyles)();\n var theme = (0, core_1.useTheme)();\n var scaledTableMargins = ICON_SIZE / 2;\n var highestNumber = getHighestNumber(data, dataKeys) + 1;\n var halfHighestNumber = highestNumber / 2;\n var topDomain = topHalfColor && bottomHalfColor ? highestNumber : highestNumber * DOMAIN_MULTIPLIER;\n var domain = [0, topDomain];\n var translate = (0, translate_1.default)();\n if (!data || data.length < 2) {\n return null;\n }\n return (React.createElement(core_1.Card, { className: classes.root },\n React.createElement(\"div\", { className: classes.tableHeaderContainer },\n React.createElement(VerticalLineheader_1.default, { title: title })),\n React.createElement(recharts_1.ResponsiveContainer, { width: \"100%\", aspect: TABLE_ASPECT_RADIO, minWidth: TABLE_MIN_WIDTH },\n React.createElement(recharts_1.ComposedChart, { data: data || undefined, className: classes.composedChartContainer, margin: {\n top: scaledTableMargins,\n right: scaledTableMargins,\n left: scaledTableMargins,\n bottom: scaledTableMargins,\n } },\n topHalfColor && (React.createElement(recharts_1.ReferenceArea, { y1: halfHighestNumber, y2: highestNumber, fill: topHalfColor })),\n bottomHalfColor && (React.createElement(recharts_1.ReferenceArea, { y1: 0, y2: halfHighestNumber, fill: bottomHalfColor })),\n React.createElement(recharts_1.XAxis, { allowDataOverflow: true, dataKey: \"timePeriod\", padding: { left: scaledTableMargins, right: scaledTableMargins } }),\n React.createElement(recharts_1.YAxis, { type: \"number\", allowDataOverflow: true, domain: domain, axisLine: false, tickFormatter: function (tick) { return (hideYAxisLabels ? '' : Math.round(tick).toString()); } }),\n React.createElement(recharts_1.Tooltip, { wrapperStyle: { zIndex: theme.zIndex.modal }, content: function (tooltipProps) { return (React.createElement(CustomToolTip, { tooltipProps: tooltipProps, measuringUnit: measuringUnit, valueTypeTranslateKey: valueTypeTranslateKey, dataKeys: dataKeys })); } }),\n React.createElement(recharts_1.Area\n // Labels sometimes disappear recharts bug\n // https://github.com/recharts/recharts/issues/829\n , { \n // Labels sometimes disappear recharts bug\n // https://github.com/recharts/recharts/issues/829\n isAnimationActive: false, type: \"monotone\", dataKey: (dataKeys === null || dataKeys === void 0 ? void 0 : dataKeys.valueKey) || '', fill: theme.palette.secondary.light, fillOpacity: noFill ? 0 : undefined, strokeWidth: 4, stroke: theme.palette.secondary.main, dot: function (_a) {\n var payload = _a.payload, cx = _a.cx, cy = _a.cy, index = _a.index;\n return (React.createElement(CustomDots, { key: index, payload: payload, dataKeys: dataKeys, cx: cx, cy: cy }));\n } }),\n React.createElement(recharts_1.Line\n // Labels sometimes disappear recharts bug\n // https://github.com/recharts/recharts/issues/829\n , { \n // Labels sometimes disappear recharts bug\n // https://github.com/recharts/recharts/issues/829\n isAnimationActive: false, type: \"monotone\", dataKey: dataKeys === null || dataKeys === void 0 ? void 0 : dataKeys.minGoalKey, stroke: theme.palette.primary.light, strokeWidth: 4, strokeDasharray: \"16 8 16 8\", dot: false }),\n React.createElement(recharts_1.Line\n // Labels sometimes disappear recharts bug\n // https://github.com/recharts/recharts/issues/829\n , { \n // Labels sometimes disappear recharts bug\n // https://github.com/recharts/recharts/issues/829\n isAnimationActive: false, type: \"monotone\", dataKey: dataKeys === null || dataKeys === void 0 ? void 0 : dataKeys.maxGoalKey, stroke: theme.palette.primary.light, strokeWidth: 4, strokeDasharray: \"16 8 16 8\", dot: false }))),\n measuringUnit && (React.createElement(\"div\", { className: classes.leftLable },\n React.createElement(core_1.Typography, { className: classes.leftLableTitle, variant: \"body1\" }, translate(measuringUnit))))));\n};\nHealthGraph.defaultProps = {\n measuringUnit: undefined,\n valueTypeTranslateKey: undefined,\n noFill: false,\n topHalfColor: undefined,\n bottomHalfColor: undefined,\n hideYAxisLabels: false,\n};\nexports.default = HealthGraph;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar translate_1 = __importStar(require(\"../../../../app/localization/translate\"));\nvar healthConstants_1 = require(\"../utils/healthConstants\");\nvar useStyles = (0, core_1.makeStyles)(function () { return ({\n root: {},\n select: {\n minWidth: 200,\n },\n text: {\n flex: '1 1 auto',\n },\n number: {},\n}); });\nvar HealthInput = function (_a) {\n var _b;\n var _c, _d, _e;\n var healthFieldSetup = _a.healthFieldSetup, value = _a.value, onChange = _a.onChange, disabled = _a.disabled, required = _a.required;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var handleMultipleSelectChange = function (event) {\n var _a;\n // On autofill we might get a stringified value.\n var arrayValue = typeof event.target.value === 'string' ? event.target.value.split(',') : event.target.value;\n // Remove empty entries and join to commaseparated string\n var val = (_a = arrayValue === null || arrayValue === void 0 ? void 0 : arrayValue.filter(function (d) { return d; }).join(',')) !== null && _a !== void 0 ? _a : '';\n onChange(val);\n };\n var handleChange = function (event) {\n onChange(event.target.value);\n };\n switch (healthFieldSetup.type) {\n case healthConstants_1.TaskOrGoalInputType.Dropdown: {\n return (React.createElement(core_1.FormControl, { disabled: disabled, required: required, variant: \"outlined\", className: (0, classnames_1.default)(classes.root, classes.select) },\n React.createElement(core_1.InputLabel, { disabled: disabled, required: required }, translate(healthFieldSetup.shortLabel)),\n React.createElement(core_1.Select, { disabled: disabled, required: required, value: value, onChange: handleChange, label: translate(healthFieldSetup.shortLabel) }, (_c = healthFieldSetup === null || healthFieldSetup === void 0 ? void 0 : healthFieldSetup.dropdownItems) === null || _c === void 0 ? void 0 : _c.map(function (element) { return (React.createElement(core_1.MenuItem, { key: element.key, value: element.key }, element.value)); }))));\n }\n case healthConstants_1.TaskOrGoalInputType.MultipleSelect: {\n var arrayValue_1 = Array.isArray(value) ? value : value ? value === null || value === void 0 ? void 0 : value.split(',') : [];\n var dropdownItems_1 = (_d = healthFieldSetup.dropdownItems) !== null && _d !== void 0 ? _d : [];\n var itemsNotIncludedInDropdown = arrayValue_1.filter(function (d) { return !dropdownItems_1.some(function (item) { return item.key === d; }); }).map(function (d) { return ({ key: d, value: d }); });\n return (React.createElement(core_1.FormControl, { disabled: disabled, required: required, variant: \"outlined\", className: (0, classnames_1.default)(classes.root, classes.select) },\n React.createElement(core_1.InputLabel, { disabled: disabled, required: required }, translate(healthFieldSetup.shortLabel)),\n React.createElement(core_1.Select, { multiple: true, disabled: disabled, required: required, value: arrayValue_1, renderValue: function (selected) { return (typeof selected === 'string' ? selected : selected.map(function (d) { return (0, translate_1.translateWithDefault)(translate, d); }).join(', ')); }, onChange: handleMultipleSelectChange, label: translate(healthFieldSetup.shortLabel) }, __spreadArray(__spreadArray([], itemsNotIncludedInDropdown, true), dropdownItems_1, true).map(function (element) { return (React.createElement(core_1.MenuItem, { key: element.key, value: element.key },\n React.createElement(core_1.Checkbox, { checked: arrayValue_1.indexOf(element.key) > -1 }),\n React.createElement(core_1.ListItemText, { primary: element.value }))); }))));\n }\n case healthConstants_1.TaskOrGoalInputType.Text:\n case healthConstants_1.TaskOrGoalInputType.Number:\n default: {\n return (React.createElement(core_1.TextField, { className: (0, classnames_1.default)(classes.root, (_b = {}, _b[classes.text] = healthFieldSetup.type === healthConstants_1.TaskOrGoalInputType.Text, _b[classes.number] = healthFieldSetup.type === healthConstants_1.TaskOrGoalInputType.Number, _b)), label: translate(healthFieldSetup.shortLabel), type: healthFieldSetup.type, variant: \"outlined\", placeholder: ((_e = healthFieldSetup === null || healthFieldSetup === void 0 ? void 0 : healthFieldSetup.placeHolder) === null || _e === void 0 ? void 0 : _e.toString()) || ((healthFieldSetup === null || healthFieldSetup === void 0 ? void 0 : healthFieldSetup.placeHolderTranslateKey) ? translate(healthFieldSetup.placeHolderTranslateKey) : ''), InputLabelProps: { shrink: true }, value: value, onChange: handleChange, disabled: disabled, required: required, onKeyPress: healthFieldSetup.type === healthConstants_1.TaskOrGoalInputType.Number ? function (event) {\n if ((event === null || event === void 0 ? void 0 : event.key) === '-' || (event === null || event === void 0 ? void 0 : event.key) === '+') {\n event.preventDefault();\n }\n } : undefined }));\n }\n }\n};\nHealthInput.defaultProps = {\n disabled: false,\n required: false,\n};\nexports.default = HealthInput;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar styles_1 = require(\"@material-ui/core/styles\");\nvar core_1 = require(\"@material-ui/core\");\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar urls_1 = __importDefault(require(\"../../../../app/urls\"));\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar breadcrumbUtil_1 = require(\"../../../../common/breadcrumbUtil\");\nvar components_1 = require(\"../../../../common/components\");\nvar store_1 = require(\"../../../../app/store\");\nvar VerticalLineheader_1 = __importDefault(require(\"./VerticalLineheader\"));\nvar icons_1 = require(\"../../../../youwell-common/icons\");\nvar useStyles = (0, styles_1.makeStyles)(function (theme) { return ({\n root: {\n display: 'flex',\n gap: theme.spacing(3, 0),\n flexDirection: 'column',\n },\n bottomActions: {\n marginTop: theme.spacing(8),\n display: 'flex',\n justifyContent: 'center',\n },\n}); });\nvar HealthPageWrapper = function (_a) {\n var title = _a.title, children = _a.children;\n var translate = (0, translate_1.default)();\n var classes = useStyles();\n var clientConfig = (0, store_1.useYouwellSelector)(function (state) { return state.auth.clientConfig; });\n return (React.createElement(components_1.PageLayout, { breadcrumb: (0, breadcrumbUtil_1.getBreadCrumb)(title, translate, clientConfig, undefined, [\n {\n text: translate('healthPage.header'),\n url: \"\".concat(urls_1.default.inside.pages.health.health),\n },\n ]) },\n React.createElement(\"div\", { className: classes.root },\n React.createElement(VerticalLineheader_1.default, { title: title }),\n children,\n React.createElement(\"div\", { className: classes.bottomActions },\n React.createElement(core_1.Button, { component: react_router_dom_1.Link, to: urls_1.default.inside.pages.health.health, startIcon: React.createElement(icons_1.BackIcon, null) }, translate('healthPage.backToMyHealth'))))));\n};\nexports.default = HealthPageWrapper;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.useStyles = void 0;\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nexports.useStyles = (0, core_1.makeStyles)(function (theme) { return ({\n healthProgressCardActionAeria: {\n padding: theme.spacing(3),\n height: '100%',\n },\n healthProgressCard: {\n height: '100%',\n },\n header: {\n fontWeight: theme.typography.fontWeightBold,\n },\n}); });\nvar HealthProgressCard = function (_a) {\n var element = _a.element;\n var translate = (0, translate_1.default)();\n var classes = (0, exports.useStyles)();\n return (React.createElement(core_1.Grid, { item: true, xs: 12, sm: 6, md: 4 },\n React.createElement(core_1.Card, { className: classes.healthProgressCard },\n React.createElement(core_1.CardActionArea, { className: classes.healthProgressCardActionAeria, component: react_router_dom_1.Link, to: element.url },\n element.icon,\n React.createElement(core_1.Grid, { item: true },\n React.createElement(core_1.Typography, { className: classes.header, variant: \"body1\" }, translate(element.titleTranslateKey))),\n React.createElement(core_1.Grid, { item: true },\n React.createElement(core_1.Typography, { variant: \"body2\" }, translate(element.descriptionTranslateKey)))))));\n};\nexports.default = HealthProgressCard;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar react_redux_1 = require(\"react-redux\");\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar icons_1 = require(\"../../../../common/icons\");\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar VerticalLineheader_1 = __importDefault(require(\"./VerticalLineheader\"));\nvar healthRegistration_1 = require(\"../../../../app/store/types/healthRegistration\");\nvar DaySelector_1 = __importDefault(require(\"../../../../common/components/DaySelector\"));\nvar store_1 = require(\"../../../../app/store\");\nvar dateUtils_1 = require(\"../../../../youwell-common/dateUtils\");\nvar healthRegistrationService_1 = require(\"../../../../app/services/healthRegistrationService\");\nvar arrayUtils_1 = require(\"../../../../youwell-common/arrayUtils\");\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return ({\n root: {\n padding: theme.spacing(4),\n display: 'flex',\n gap: theme.spacing(2),\n flexDirection: 'column',\n },\n headerContainer: {\n marginBottom: theme.spacing(2),\n },\n daySelector: {\n display: 'flex',\n justifyContent: 'center',\n },\n items: {\n marginBottom: theme.spacing(1),\n },\n item: {\n display: 'flex',\n alignItems: 'center',\n gap: theme.spacing(1),\n marginBottom: theme.spacing(0.5),\n borderBottom: theme.youwell.borders.dim,\n '&:hover': {\n background: theme.youwell.colors.defaultBackground,\n },\n },\n itemName: {\n flex: '1 1 auto',\n },\n itemInfo: {\n width: 200,\n },\n green: {\n color: theme.youwell.colors.green,\n },\n red: {\n color: theme.youwell.colors.red,\n },\n dimmed: {\n opacity: 0.3,\n },\n actions: {\n display: 'flex',\n gap: theme.spacing(1),\n justifyContent: 'flex-end',\n },\n deleteIcon: {\n marginLeft: 59,\n color: theme.youwell.colors.red,\n },\n}); });\nvar HealthRegistrationTaskLogging = function (_a) {\n var setup = _a.setup;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var dispatch = (0, react_redux_1.useDispatch)();\n var healthRegistrationLogs = (0, store_1.useYouwellSelector)(function (state) { var _a, _b, _c; return (_c = (_b = (_a = state.healthRegistrationStore.healthRegistrations) === null || _a === void 0 ? void 0 : _a.find(function (d) { return d.type === setup.type; })) === null || _b === void 0 ? void 0 : _b.healthRegistrationLogs) !== null && _c !== void 0 ? _c : []; });\n var goalsToLog = healthRegistrationLogs.filter(function (d) { return d.type === healthRegistration_1.HealthRegistrationLogType.Goal; });\n var _b = React.useState(new Date()), selectedDate = _b[0], setSelectedDate = _b[1];\n if (goalsToLog.length === 0)\n return null;\n var todaysRegistrations = (0, arrayUtils_1.toLookup)(healthRegistrationLogs\n .filter(function (d) { return d.type === healthRegistration_1.HealthRegistrationLogType.Task && (0, dateUtils_1.isSameDate)(selectedDate, d.date); }), 'properties.goalId');\n var getLogValue = function (goalItem) { var _a, _b; return (_b = (_a = todaysRegistrations[goalItem.id]) === null || _a === void 0 ? void 0 : _a.properties) === null || _b === void 0 ? void 0 : _b.checked; };\n var updateItem = function (goalItem, checked) { return function () {\n var _a;\n var currentValue = todaysRegistrations[goalItem.id];\n var saveData = {\n id: (_a = currentValue === null || currentValue === void 0 ? void 0 : currentValue.id) !== null && _a !== void 0 ? _a : 0,\n type: healthRegistration_1.HealthRegistrationLogType.Task,\n date: selectedDate,\n healthRegistrationId: goalItem.healthRegistrationId,\n properties: {\n goalId: goalItem.id,\n checked: checked,\n },\n };\n if (saveData.id) {\n (0, healthRegistrationService_1.updateHealthRegistrationLogsData)(dispatch, saveData);\n }\n else {\n (0, healthRegistrationService_1.insertHealthRegistrationLogsData)(dispatch, saveData);\n }\n }; };\n return (React.createElement(core_1.Card, { className: classes.root },\n React.createElement(\"div\", { className: classes.headerContainer },\n React.createElement(VerticalLineheader_1.default, { title: translate('health.dailyTask') })),\n React.createElement(\"div\", { className: classes.daySelector },\n React.createElement(DaySelector_1.default, { onChange: setSelectedDate, selectedDate: selectedDate })),\n React.createElement(\"div\", { className: classes.items }, goalsToLog.map(function (goal) {\n var _a, _b;\n return (React.createElement(\"div\", { key: goal.id, className: classes.item },\n setup.goals.map(function (field) {\n var _a;\n return (React.createElement(core_1.Typography, { key: field.key, className: classes.itemName }, (_a = goal.properties) === null || _a === void 0 ? void 0 : _a[field.key]));\n }),\n React.createElement(core_1.IconButton, { onClick: updateItem(goal, false) },\n React.createElement(icons_1.CloseIcon, { className: (0, classnames_1.default)((_a = {}, _a[classes.red] = getLogValue(goal) === false, _a[classes.dimmed] = getLogValue(goal) === true, _a)) })),\n React.createElement(core_1.IconButton, { onClick: updateItem(goal, true) },\n React.createElement(icons_1.CheckMarkIcon, { className: (0, classnames_1.default)((_b = {}, _b[classes.green] = getLogValue(goal) === true, _b[classes.dimmed] = getLogValue(goal) === false, _b)) }))));\n }))));\n};\nexports.default = HealthRegistrationTaskLogging;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar store_1 = require(\"../../../../app/store\");\nvar healthRegistrationService_1 = require(\"../../../../app/services/healthRegistrationService\");\nvar VerticalLineheader_1 = __importDefault(require(\"./VerticalLineheader\"));\nvar healthUtils_1 = require(\"../utils/healthUtils\");\nvar healthConstants_1 = require(\"../utils/healthConstants\");\nvar healthRegistration_1 = require(\"../../../../app/store/types/healthRegistration\");\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return ({\n card: {\n display: 'flex',\n flexDirection: 'column',\n padding: theme.spacing(4),\n gap: theme.spacing(3, 0),\n },\n goalStartDescription: {\n marginBottom: theme.spacing(2),\n },\n inputFieldSection: {\n display: 'flex',\n alignItems: 'center',\n paddingBottom: theme.spacing(1),\n borderBottom: theme.youwell.borders.dim,\n },\n input: {\n width: 200,\n padding: 16,\n },\n inputLabel: {\n marginLeft: theme.spacing(2),\n },\n action: {\n display: 'flex',\n gap: theme.spacing(1),\n justifyContent: 'flex-end',\n },\n}); });\nvar HealthRegistrationGoalsCard = function (_a) {\n var healthRegistrationSetup = _a.healthRegistrationSetup;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var dispatch = (0, store_1.useYouwellDispatch)();\n var healthRegistrations = (0, store_1.useYouwellSelector)(function (state) { return state.healthRegistrationStore.healthRegistrations; });\n var _b = React.useState([]), updatedGoals = _b[0], setUpdatedGoals = _b[1];\n var _c = React.useState({}), errors = _c[0], setErrors = _c[1];\n if (healthRegistrationSetup.goals.length < 1)\n return null;\n var latestHealthReg = (0, healthUtils_1.findLatestHealthReg)(healthRegistrationSetup.type, healthRegistrations);\n var latestGoal = latestHealthReg === null || latestHealthReg === void 0 ? void 0 : latestHealthReg.properties;\n var updateInputErrors = function (input, value) {\n setErrors(function (prevState) {\n var _a;\n return (__assign(__assign({}, prevState), (_a = {}, _a[input.key] = !value, _a)));\n });\n };\n var handleChange = function (event, fieldSetup) {\n var _a, _b;\n var indexToReplace = updatedGoals.findIndex(function (t) { return t[fieldSetup.key]; });\n var value = fieldSetup.type === healthConstants_1.TaskOrGoalInputType.Number ? Number(event.target.value) : event.target.value;\n if (fieldSetup.maxValue ? value >= 0 && value <= fieldSetup.maxValue : true) {\n if (indexToReplace !== -1) {\n var prevGoalArr = __spreadArray([], updatedGoals, true);\n prevGoalArr.splice(indexToReplace, 1, (_a = {}, _a[fieldSetup.key] = value, _a));\n setUpdatedGoals(__spreadArray([], prevGoalArr, true));\n }\n else\n setUpdatedGoals(__spreadArray(__spreadArray([], updatedGoals, true), [(_b = {}, _b[fieldSetup.key] = value, _b)], false));\n }\n updateInputErrors(fieldSetup, value);\n };\n var submitGoal = function () {\n var _a, _b;\n var submitErrors = healthRegistrationSetup.tasks.reduce(function (prev, currentTask) {\n var _a;\n var index = updatedGoals.findIndex(function (g) { return g[currentTask.key]; });\n return __assign(__assign({}, prev), (_a = {}, _a[currentTask.key] = !updatedGoals[index], _a));\n }, {});\n var saveData = {\n type: healthRegistrationSetup.type,\n properties: {},\n healthRegistrationLogs: [],\n };\n var newGoal = {};\n healthRegistrationSetup.goals.forEach(function (goalItem) {\n var _a, _b;\n var index = updatedGoals.findIndex(function (g) { return g[goalItem.key]; });\n newGoal[goalItem.key] = (_b = (_a = updatedGoals[index]) === null || _a === void 0 ? void 0 : _a[goalItem.key]) !== null && _b !== void 0 ? _b : latestGoal === null || latestGoal === void 0 ? void 0 : latestGoal[goalItem.key];\n if (healthRegistrations && healthRegistrations.length > 0 && latestHealthReg) {\n saveData.id = latestHealthReg.id;\n }\n });\n saveData.properties = newGoal;\n var newLog = {\n id: 0,\n date: new Date().toISOString(),\n type: healthRegistration_1.HealthRegistrationLogType.Goal,\n properties: {},\n };\n newLog.healthRegistrationId = latestHealthReg === null || latestHealthReg === void 0 ? void 0 : latestHealthReg.id;\n newLog.properties = __assign(__assign({}, newLog.properties), newGoal);\n // Finds current logs for health registration and add them to the list\n if (latestHealthReg === null || latestHealthReg === void 0 ? void 0 : latestHealthReg.healthRegistrationLogs) {\n (_a = saveData.healthRegistrationLogs) === null || _a === void 0 ? void 0 : _a.push.apply(_a, latestHealthReg === null || latestHealthReg === void 0 ? void 0 : latestHealthReg.healthRegistrationLogs);\n }\n // Adds new log for health registration\n (_b = saveData.healthRegistrationLogs) === null || _b === void 0 ? void 0 : _b.push(newLog);\n var callback = function () {\n setUpdatedGoals([]);\n };\n if (latestHealthReg) {\n (0, healthRegistrationService_1.updateHealthRegistrationsData)(dispatch, saveData, { callback: callback });\n }\n else {\n // Makes sure user has entered all updatedGoals on insert of first healthRegistration.\n var inputGoalKeys = healthRegistrationSetup.goals.map(function (input) { return input.key; });\n var allGoalsHaveResponse = inputGoalKeys === null || inputGoalKeys === void 0 ? void 0 : inputGoalKeys.every(function (key) {\n var updatedGoalsHasKey = updatedGoals.some(function (goal) { return goal[key]; });\n var keyHasError = !!submitErrors[key];\n return updatedGoalsHasKey && !keyHasError;\n });\n if (allGoalsHaveResponse) {\n (0, healthRegistrationService_1.insertHealthRegistrationsData)(dispatch, saveData, { callback: callback });\n }\n else {\n setErrors(submitErrors);\n }\n }\n };\n var currentGoalValue = function (currentGoal) { var _a; return ((_a = latestGoal === null || latestGoal === void 0 ? void 0 : latestGoal[currentGoal.key]) !== null && _a !== void 0 ? _a : null); };\n var hasCreatedGoals = healthRegistrationSetup.goals.every(function (g) { return currentGoalValue(g); });\n return (React.createElement(core_1.Card, { className: classes.card },\n React.createElement(VerticalLineheader_1.default, { title: translate('health.myGoal') }),\n !hasCreatedGoals && (React.createElement(core_1.Typography, { className: classes.goalStartDescription }, translate('health.goalStartDescription'))),\n healthRegistrationSetup.goals.map(function (goalItem) {\n var _a, _b, _c, _d;\n return (React.createElement(\"div\", { key: goalItem.key, className: classes.inputFieldSection },\n React.createElement(core_1.TextField, { label: translate(goalItem.shortLabel), type: goalItem.type, value: (_c = (_a = (0, healthUtils_1.objKeyInArray)(goalItem.key, updatedGoals)) !== null && _a !== void 0 ? _a : (_b = currentGoalValue(goalItem)) === null || _b === void 0 ? void 0 : _b.toString()) !== null && _c !== void 0 ? _c : '', variant: \"outlined\", size: \"small\", placeholder: ((_d = goalItem === null || goalItem === void 0 ? void 0 : goalItem.placeHolder) === null || _d === void 0 ? void 0 : _d.toString()) || ((goalItem === null || goalItem === void 0 ? void 0 : goalItem.placeHolderTranslateKey) ? translate(goalItem.placeHolderTranslateKey) : ''), InputProps: { classes: { input: classes.input }, inputProps: { min: 0, max: goalItem.maxValue } }, InputLabelProps: { shrink: true }, onChange: function (e) { return handleChange(e, goalItem); }, required: true, helperText: errors[goalItem.key] && !currentGoalValue(goalItem) ? translate('health.mandatoryQuestion') : '', error: errors[goalItem.key] && !currentGoalValue(goalItem), onKeyPress: goalItem.type === healthConstants_1.TaskOrGoalInputType.Number ? function (event) {\n if ((event === null || event === void 0 ? void 0 : event.key) === '-' || (event === null || event === void 0 ? void 0 : event.key) === '+') {\n event.preventDefault();\n }\n } : undefined }),\n React.createElement(core_1.Typography, { className: classes.inputLabel }, translate(\"\".concat(goalItem.longLabel)))));\n }),\n React.createElement(\"div\", { className: classes.action },\n hasCreatedGoals && updatedGoals.length > 0 && (React.createElement(core_1.Button, { onClick: function () { return setUpdatedGoals([]); } }, translate('cancel'))),\n React.createElement(core_1.Button, { variant: \"contained\", color: \"primary\", onClick: submitGoal, disabled: updatedGoals.length < 1 }, translate(hasCreatedGoals ? 'update' : 'save')))));\n};\nexports.default = HealthRegistrationGoalsCard;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar react_redux_1 = require(\"react-redux\");\nvar icons_1 = require(\"../../../../common/icons\");\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar VerticalLineheader_1 = __importDefault(require(\"./VerticalLineheader\"));\nvar healthRegistration_1 = require(\"../../../../app/store/types/healthRegistration\");\nvar store_1 = require(\"../../../../app/store\");\nvar HealthInput_1 = __importDefault(require(\"./HealthInput\"));\nvar components_1 = require(\"../../../../common/components\");\nvar healthUtils_1 = require(\"../utils/healthUtils\");\nvar healthRegistrationService_1 = require(\"../../../../app/services/healthRegistrationService\");\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return ({\n root: {\n padding: theme.spacing(4),\n display: 'flex',\n gap: theme.spacing(2),\n flexDirection: 'column',\n },\n headerContainer: {\n marginBottom: theme.spacing(2),\n },\n daySelector: {\n display: 'flex',\n justifyContent: 'center',\n },\n items: {\n marginBottom: theme.spacing(1),\n },\n item: {\n display: 'flex',\n alignItems: 'center',\n gap: theme.spacing(1),\n marginBottom: theme.spacing(2),\n '&:hover': {\n background: theme.youwell.colors.defaultBackground,\n },\n },\n actions: {\n display: 'flex',\n gap: theme.spacing(1),\n justifyContent: 'flex-end',\n },\n deleteIcon: {\n marginLeft: 59,\n color: theme.youwell.colors.red,\n },\n}); });\nvar HealthRegistrationGoalsEditing = function (_a) {\n var _b, _c;\n var setup = _a.setup;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var dispatch = (0, react_redux_1.useDispatch)();\n var healthRegistrations = (0, store_1.useYouwellSelector)(function (state) { return state.healthRegistrationStore.healthRegistrations; });\n var healthRegistrationLogs = (_c = (_b = healthRegistrations === null || healthRegistrations === void 0 ? void 0 : healthRegistrations.find(function (d) { return d.type === setup.type; })) === null || _b === void 0 ? void 0 : _b.healthRegistrationLogs) !== null && _c !== void 0 ? _c : [];\n var currentHealthReg = (0, healthUtils_1.findLatestHealthReg)(setup.type, healthRegistrations);\n var _d = React.useState({}), updatedValues = _d[0], setUpdatedValues = _d[1];\n var _e = React.useState(null), editingItem = _e[0], setEditingItem = _e[1];\n var cancelEdit = function () {\n setUpdatedValues({});\n setEditingItem(null);\n };\n var onAddItem = function () {\n setEditingItem({\n id: 0,\n type: healthRegistration_1.HealthRegistrationLogType.Goal,\n date: new Date(),\n healthRegistrationId: currentHealthReg === null || currentHealthReg === void 0 ? void 0 : currentHealthReg.id,\n properties: {},\n });\n };\n var saveChanges = function () {\n if (editingItem) {\n var saveData = __assign(__assign({}, editingItem), { properties: __assign(__assign({}, editingItem.properties), updatedValues) });\n var callback = function () { return cancelEdit(); };\n if (saveData.id) {\n (0, healthRegistrationService_1.updateHealthRegistrationLogsData)(dispatch, saveData, { callback: callback });\n }\n else if (saveData.healthRegistrationId) {\n (0, healthRegistrationService_1.insertHealthRegistrationLogsData)(dispatch, saveData, { callback: callback });\n }\n else {\n var newHealthReg = {\n type: setup.type,\n healthRegistrationLogs: [\n saveData,\n ],\n };\n (0, healthRegistrationService_1.insertHealthRegistrationsData)(dispatch, newHealthReg, { callback: callback });\n }\n }\n };\n var deleteItem = function (registration) { return function () {\n (0, healthRegistrationService_1.deleteHealthRegistrationLogsData)(dispatch, registration);\n }; };\n var handleFieldChange = function (registration, fieldKey) { return function (value) {\n if (editingItem == null)\n setEditingItem(registration);\n setUpdatedValues(function (prev) {\n var _a;\n return (__assign(__assign({}, prev), (_a = {}, _a[fieldKey] = value, _a)));\n });\n }; };\n var getValue = function (registration, key) {\n var _a, _b, _c, _d, _e;\n if ((editingItem === null || editingItem === void 0 ? void 0 : editingItem.id) === registration.id) {\n return (_c = (_a = updatedValues[key]) !== null && _a !== void 0 ? _a : (_b = registration.properties) === null || _b === void 0 ? void 0 : _b[key]) !== null && _c !== void 0 ? _c : '';\n }\n return (_e = (_d = registration.properties) === null || _d === void 0 ? void 0 : _d[key]) !== null && _e !== void 0 ? _e : '';\n };\n var currentGoals = healthRegistrationLogs.filter(function (d) { return d.type === healthRegistration_1.HealthRegistrationLogType.Goal; });\n var registrationsList = (editingItem === null || editingItem === void 0 ? void 0 : editingItem.id) === 0 ? __spreadArray(__spreadArray([], currentGoals, true), [editingItem], false) : currentGoals;\n return (React.createElement(core_1.Card, { className: classes.root },\n React.createElement(\"div\", { className: classes.headerContainer },\n React.createElement(VerticalLineheader_1.default, { title: translate('health.myGoals') })),\n React.createElement(\"div\", { className: classes.items },\n registrationsList.map(function (registration) { return (React.createElement(\"div\", { key: registration.id, className: classes.item },\n setup.goals.map(function (field) { return (React.createElement(HealthInput_1.default, { disabled: Boolean(editingItem && editingItem.id !== registration.id), key: field.key, value: getValue(registration, field.key), healthFieldSetup: field, onChange: handleFieldChange(registration, field.key) })); }),\n (editingItem === null || editingItem === void 0 ? void 0 : editingItem.id) === registration.id ? (React.createElement(React.Fragment, null,\n React.createElement(core_1.IconButton, { onClick: cancelEdit },\n React.createElement(icons_1.CancelIcon, null)),\n React.createElement(core_1.IconButton, { onClick: saveChanges },\n React.createElement(icons_1.SaveIcon, { color: \"primary\" })))) : (React.createElement(components_1.ConfirmButton, { buttonClassName: classes.deleteIcon, variant: \"iconbutton\", confirmText: translate('health.deleteGoalConfirm'), onClick: deleteItem(registration) },\n React.createElement(icons_1.DeleteIcon, null))))); }),\n registrationsList.length === 0 && (React.createElement(core_1.Typography, null, translate('health.noGoalsRegistered')))),\n editingItem === null && (React.createElement(\"div\", { className: classes.actions },\n React.createElement(core_1.Button, { variant: \"contained\", color: \"secondary\", onClick: onAddItem, disabled: false }, translate('health.add'))))));\n};\nexports.default = HealthRegistrationGoalsEditing;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar react_redux_1 = require(\"react-redux\");\nvar icons_1 = require(\"../../../../common/icons\");\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar VerticalLineheader_1 = __importDefault(require(\"./VerticalLineheader\"));\nvar healthRegistration_1 = require(\"../../../../app/store/types/healthRegistration\");\nvar DaySelector_1 = __importDefault(require(\"../../../../common/components/DaySelector\"));\nvar store_1 = require(\"../../../../app/store\");\nvar HealthInput_1 = __importDefault(require(\"./HealthInput\"));\nvar components_1 = require(\"../../../../common/components\");\nvar dateUtils_1 = require(\"../../../../youwell-common/dateUtils\");\nvar healthRegistrationService_1 = require(\"../../../../app/services/healthRegistrationService\");\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return ({\n root: {\n padding: theme.spacing(4),\n display: 'flex',\n gap: theme.spacing(2),\n flexDirection: 'column',\n },\n headerContainer: {\n marginBottom: theme.spacing(2),\n },\n daySelector: {\n display: 'flex',\n justifyContent: 'center',\n },\n items: {\n marginBottom: theme.spacing(1),\n },\n item: {\n display: 'flex',\n alignItems: 'center',\n gap: theme.spacing(1),\n marginBottom: theme.spacing(2),\n '&:hover': {\n background: theme.youwell.colors.defaultBackground,\n },\n },\n actions: {\n display: 'flex',\n gap: theme.spacing(1),\n justifyContent: 'flex-end',\n },\n deleteIcon: {\n marginLeft: 59,\n color: theme.youwell.colors.red,\n },\n}); });\nvar HealthRegistrationTaskLogging = function (_a) {\n var setup = _a.setup;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var dispatch = (0, react_redux_1.useDispatch)();\n var healthRegistrationLogs = (0, store_1.useYouwellSelector)(function (state) { var _a, _b, _c; return (_c = (_b = (_a = state.healthRegistrationStore.healthRegistrations) === null || _a === void 0 ? void 0 : _a.find(function (d) { return d.type === setup.type; })) === null || _b === void 0 ? void 0 : _b.healthRegistrationLogs) !== null && _c !== void 0 ? _c : []; });\n var currentGoal = healthRegistrationLogs.filter(function (d) { return d.type === healthRegistration_1.HealthRegistrationLogType.Goal; }).at(-1);\n var _b = React.useState({}), updatedValues = _b[0], setUpdatedValues = _b[1];\n var _c = React.useState(null), editingItem = _c[0], setEditingItem = _c[1];\n var _d = React.useState(new Date()), selectedDate = _d[0], setSelectedDate = _d[1];\n if (!currentGoal)\n return null;\n var cancelEdit = function () {\n setUpdatedValues({});\n setEditingItem(null);\n };\n var onAddItem = function () {\n setEditingItem({\n id: 0,\n type: healthRegistration_1.HealthRegistrationLogType.Task,\n date: selectedDate,\n healthRegistrationId: currentGoal.healthRegistrationId,\n properties: __assign({}, currentGoal.properties),\n });\n };\n var saveChanges = function () {\n if (editingItem) {\n var saveData = __assign(__assign({}, editingItem), { properties: __assign(__assign({}, editingItem.properties), updatedValues) });\n var callback = function () { return cancelEdit(); };\n if (saveData.id) {\n (0, healthRegistrationService_1.updateHealthRegistrationLogsData)(dispatch, saveData, { callback: callback });\n }\n else {\n (0, healthRegistrationService_1.insertHealthRegistrationLogsData)(dispatch, saveData, { callback: callback });\n }\n }\n };\n var deleteItem = function (registration) { return function () {\n (0, healthRegistrationService_1.deleteHealthRegistrationLogsData)(dispatch, registration);\n }; };\n var handleFieldChange = function (registration, fieldKey) { return function (value) {\n if (editingItem == null)\n setEditingItem(registration);\n setUpdatedValues(function (prev) {\n var _a;\n return (__assign(__assign({}, prev), (_a = {}, _a[fieldKey] = value, _a)));\n });\n }; };\n var getValue = function (logItem, key) {\n var _a, _b, _c, _d, _e;\n if ((editingItem === null || editingItem === void 0 ? void 0 : editingItem.id) === logItem.id) {\n return (_c = (_a = updatedValues[key]) !== null && _a !== void 0 ? _a : (_b = logItem.properties) === null || _b === void 0 ? void 0 : _b[key]) !== null && _c !== void 0 ? _c : '';\n }\n return (_e = (_d = logItem.properties) === null || _d === void 0 ? void 0 : _d[key]) !== null && _e !== void 0 ? _e : '';\n };\n var todaysRegistrations = healthRegistrationLogs.filter(function (d) { return d.type === healthRegistration_1.HealthRegistrationLogType.Task && (0, dateUtils_1.isSameDate)(selectedDate, d.date); });\n var registrationsList = (editingItem === null || editingItem === void 0 ? void 0 : editingItem.id) === 0 ? __spreadArray(__spreadArray([], todaysRegistrations, true), [editingItem], false) : todaysRegistrations;\n return (React.createElement(core_1.Card, { className: classes.root },\n React.createElement(\"div\", { className: classes.headerContainer },\n React.createElement(VerticalLineheader_1.default, { title: translate('health.dailyTask') })),\n React.createElement(\"div\", { className: classes.daySelector },\n React.createElement(DaySelector_1.default, { onChange: setSelectedDate, selectedDate: selectedDate })),\n React.createElement(\"div\", { className: classes.items },\n registrationsList.map(function (registration) { return (React.createElement(\"div\", { key: registration.id, className: classes.item },\n setup.tasks.map(function (field) { return (React.createElement(HealthInput_1.default, { disabled: Boolean(editingItem && editingItem.id !== registration.id), key: field.key, value: getValue(registration, field.key), healthFieldSetup: field, onChange: handleFieldChange(registration, field.key) })); }),\n (editingItem === null || editingItem === void 0 ? void 0 : editingItem.id) === registration.id ? (React.createElement(React.Fragment, null,\n React.createElement(core_1.IconButton, { onClick: cancelEdit },\n React.createElement(icons_1.CancelIcon, null)),\n React.createElement(core_1.IconButton, { onClick: saveChanges },\n React.createElement(icons_1.SaveIcon, { color: \"primary\" })))) : (React.createElement(components_1.ConfirmButton, { buttonClassName: classes.deleteIcon, variant: \"iconbutton\", confirmText: translate('activity.deleteConfirm'), onClick: deleteItem(registration) },\n React.createElement(icons_1.DeleteIcon, null))))); }),\n todaysRegistrations.length === 0 && (React.createElement(core_1.Typography, null, translate('activity.noRegistrationsToday')))),\n editingItem === null && (React.createElement(\"div\", { className: classes.actions },\n React.createElement(core_1.Button, { variant: \"contained\", color: \"secondary\", onClick: onAddItem, disabled: false }, translate('health.add'))))));\n};\nexports.default = HealthRegistrationTaskLogging;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getRegistrationHeading = void 0;\nvar core_1 = require(\"@material-ui/core\");\nvar React = __importStar(require(\"react\"));\nvar pickers_1 = require(\"@material-ui/pickers\");\nvar lodash_1 = require(\"lodash\");\nvar InputLabel_1 = __importDefault(require(\"@material-ui/core/InputLabel\"));\nvar MenuItem_1 = __importDefault(require(\"@material-ui/core/MenuItem\"));\nvar FormControl_1 = __importDefault(require(\"@material-ui/core/FormControl\"));\nvar Select_1 = __importDefault(require(\"@material-ui/core/Select\"));\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar store_1 = require(\"../../../../app/store\");\nvar healthRegistrationService_1 = require(\"../../../../app/services/healthRegistrationService\");\nvar healthUtils_1 = require(\"../utils/healthUtils\");\nvar VerticalLineheader_1 = __importDefault(require(\"./VerticalLineheader\"));\nvar healthConstants_1 = require(\"../utils/healthConstants\");\nvar dateUtils_1 = require(\"../../../../youwell-common/dateUtils\");\nvar healthRegistration_1 = require(\"../../../../app/store/types/healthRegistration\");\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return ({\n card: {\n display: 'flex',\n flexDirection: 'column',\n padding: theme.spacing(4),\n gap: theme.spacing(3, 0),\n },\n inputFieldSection: {\n display: 'flex',\n alignItems: 'center',\n paddingBottom: theme.spacing(1),\n borderBottom: theme.youwell.borders.dim,\n },\n input: {\n width: 200,\n padding: 16,\n },\n inputLabel: {\n marginLeft: theme.spacing(2),\n },\n dateLabel: {\n marginRight: theme.spacing(2),\n },\n regDateInput: {\n width: 120,\n },\n error: {\n color: theme.youwell.colors.red,\n },\n errorLabel: {\n marginBottom: theme.spacing(1),\n },\n action: {\n display: 'flex',\n justifyContent: 'flex-end',\n alignItems: 'center',\n },\n}); });\nvar getRegistrationHeading = function (registrationInterval, translate) {\n switch (registrationInterval) {\n case healthConstants_1.RegistrationInterval.Weekly:\n return translate('health.weeklyTask');\n case healthConstants_1.RegistrationInterval.Daily:\n default:\n return translate('health.dailyTask');\n }\n};\nexports.getRegistrationHeading = getRegistrationHeading;\nvar HealthRegistrationTasksCard = function (_a) {\n var _b, _c;\n var healthRegistrationSetup = _a.healthRegistrationSetup, allowMultipleLogsPrPeriod = _a.allowMultipleLogsPrPeriod;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var dispatch = (0, store_1.useYouwellDispatch)();\n var programStartDate = (0, store_1.useYouwellSelector)(function (state) { var _a; return (_a = state.programStore.currentProgram) === null || _a === void 0 ? void 0 : _a.startDate; });\n var healthRegistrations = (0, store_1.useYouwellSelector)(function (state) { return state.healthRegistrationStore.healthRegistrations; });\n var healthRegistrationLogs = (_b = healthRegistrations === null || healthRegistrations === void 0 ? void 0 : healthRegistrations.find(function (d) { return d.type === healthRegistrationSetup.type; })) === null || _b === void 0 ? void 0 : _b.healthRegistrationLogs;\n var _d = React.useState(new Date()), registrationDate = _d[0], setRegistrationDate = _d[1];\n var _e = React.useState([]), updatedTasks = _e[0], setUpdatedTasks = _e[1];\n var _f = React.useState({}), errors = _f[0], setErrors = _f[1];\n var _g = React.useState(false), hasLoggedThisPeriod = _g[0], setHasLoggedThisPeriod = _g[1];\n if (healthRegistrationSetup.tasks.length < 1)\n return null;\n var currentHealthReg = (0, healthUtils_1.findLatestHealthReg)(healthRegistrationSetup.type, healthRegistrations);\n var latestGoal = currentHealthReg === null || currentHealthReg === void 0 ? void 0 : currentHealthReg.properties;\n var hasCreatedGoals = healthRegistrationSetup.goals.every(function (g) { return latestGoal === null || latestGoal === void 0 ? void 0 : latestGoal[g.key]; });\n if (!hasCreatedGoals)\n return null; // Must define a goal before starting to register activities (if goals are defined..).\n var getHasLoggedThisPeriod = function (date) {\n var _a, _b;\n if (allowMultipleLogsPrPeriod)\n return false;\n var loggedDates = healthRegistrationLogs === null || healthRegistrationLogs === void 0 ? void 0 : healthRegistrationLogs.map(function (d) { return d.date && d.type === healthRegistration_1.HealthRegistrationLogType.Task && (0, dateUtils_1.datestamp)(d.date); }).filter(Boolean);\n var loggedWeeks = (0, lodash_1.uniq)(healthRegistrationLogs === null || healthRegistrationLogs === void 0 ? void 0 : healthRegistrationLogs.map(function (d) { return d.date && d.type === healthRegistration_1.HealthRegistrationLogType.Task && (0, dateUtils_1.generateWeekAndYearKey)(new Date(d.date)); })).filter(Boolean);\n switch (healthRegistrationSetup.registrationInterval) {\n case healthConstants_1.RegistrationInterval.Weekly:\n return (_a = loggedWeeks === null || loggedWeeks === void 0 ? void 0 : loggedWeeks.includes((0, dateUtils_1.generateWeekAndYearKey)(date))) !== null && _a !== void 0 ? _a : false;\n case healthConstants_1.RegistrationInterval.Daily:\n default:\n return (_b = loggedDates === null || loggedDates === void 0 ? void 0 : loggedDates.includes((0, dateUtils_1.datestamp)(date))) !== null && _b !== void 0 ? _b : false;\n }\n };\n var updateInputErrors = function (taskOrGoal, updatedValue) {\n setErrors(function (prevState) {\n var _a;\n return (__assign(__assign({}, prevState), (_a = {}, _a[taskOrGoal.key] = !updatedValue, _a)));\n });\n setHasLoggedThisPeriod(getHasLoggedThisPeriod(registrationDate));\n };\n var handleRegistrationDateChange = function (date) {\n var newDate = date !== null && date !== void 0 ? date : new Date();\n setRegistrationDate(newDate);\n setHasLoggedThisPeriod(getHasLoggedThisPeriod(newDate));\n };\n var handleChange = function (event, taskOrGoal) {\n var _a, _b;\n var indexToReplace = updatedTasks.findIndex(function (t) { return t[taskOrGoal.key]; });\n var value = taskOrGoal.type === healthConstants_1.TaskOrGoalInputType.Number ? Number(event.target.value) : event.target.value;\n if (taskOrGoal.maxValue ? value <= taskOrGoal.maxValue : true) {\n if (indexToReplace !== -1) {\n var prevTaskArr = __spreadArray([], updatedTasks, true);\n prevTaskArr.splice(indexToReplace, 1, (_a = {}, _a[taskOrGoal.key] = value, _a));\n setUpdatedTasks(__spreadArray([], prevTaskArr, true));\n }\n else\n setUpdatedTasks(__spreadArray(__spreadArray([], updatedTasks, true), [(_b = {}, _b[taskOrGoal.key] = value, _b)], false));\n }\n updateInputErrors(taskOrGoal, value);\n };\n var submitTask = function () {\n var submitErrors = healthRegistrationSetup.tasks.reduce(function (prev, currentTask) {\n var _a;\n var index = updatedTasks.findIndex(function (g) { return g[currentTask.key]; });\n return __assign(__assign({}, prev), (_a = {}, _a[currentTask.key] = !updatedTasks[index], _a));\n }, {});\n var saveData = {\n id: 0,\n date: registrationDate.toISOString(),\n type: healthRegistration_1.HealthRegistrationLogType.Task,\n properties: {},\n };\n var newLogObj = {};\n healthRegistrationSetup.tasks.forEach(function (currentTask) {\n // Adds new score to propObject (e.g. 'cm_score')\n var index = updatedTasks.findIndex(function (task) { return task[currentTask.key]; });\n if (updatedTasks[index]) {\n newLogObj[currentTask.key] = updatedTasks[index][currentTask.key];\n // Adds current goal for latest health reg. to propObject (e.g. 'cm_goal')\n // Adds healthRegistrationId on healthRegistrationLog\n if (latestGoal) {\n newLogObj = __assign(__assign({}, newLogObj), latestGoal);\n saveData.healthRegistrationId = currentHealthReg === null || currentHealthReg === void 0 ? void 0 : currentHealthReg.id;\n }\n }\n });\n // Makes sure user has entered values for all tasks\n var inputGoalKeys = healthRegistrationSetup.tasks.map(function (input) { return input.key; });\n var allTasksHaveResponse = inputGoalKeys === null || inputGoalKeys === void 0 ? void 0 : inputGoalKeys.every(function (key) {\n var _a;\n var updatedTasksHasKey = updatedTasks.some(function (task) { return task[key]; });\n var keyHasError = (_a = submitErrors[key]) !== null && _a !== void 0 ? _a : false;\n return updatedTasksHasKey && !keyHasError;\n });\n saveData.properties = __assign(__assign({}, saveData.properties), newLogObj);\n var callback = function () {\n setUpdatedTasks([]);\n };\n if (allTasksHaveResponse) {\n if (currentHealthReg) {\n (0, healthRegistrationService_1.insertHealthRegistrationLogsData)(dispatch, saveData, { callback: callback });\n }\n else {\n var healthRegistration = {\n type: healthRegistrationSetup.type,\n properties: {},\n healthRegistrationLogs: [saveData],\n };\n (0, healthRegistrationService_1.insertHealthRegistrationsData)(dispatch, healthRegistration, { callback: callback });\n }\n }\n else {\n setErrors(submitErrors);\n }\n };\n var currentTaskValue = function (currentTask) { var _a; return ((_a = latestGoal === null || latestGoal === void 0 ? void 0 : latestGoal[currentTask.key]) !== null && _a !== void 0 ? _a : null); };\n var registrationStartDate = (_c = (0, dateUtils_1.getLocalDate)(programStartDate)) !== null && _c !== void 0 ? _c : (0, dateUtils_1.addDays)(null, -30);\n return (React.createElement(core_1.Card, { className: classes.card },\n React.createElement(VerticalLineheader_1.default, { title: (0, exports.getRegistrationHeading)(healthRegistrationSetup.registrationInterval, translate) }),\n healthRegistrationSetup.tasks.map(function (input) {\n var _a, _b, _c, _d;\n return (React.createElement(\"div\", { key: input.key, className: classes.inputFieldSection },\n input.type === healthConstants_1.TaskOrGoalInputType.Dropdown && (React.createElement(FormControl_1.default, { variant: \"outlined\", style: { width: 230 }, error: errors[input.key] && !currentTaskValue(input), required: true },\n React.createElement(InputLabel_1.default, null, translate(input.shortLabel)),\n React.createElement(Select_1.default, { value: (0, healthUtils_1.objKeyInArray)(input.key, updatedTasks) || '', onChange: function (event) { return handleChange(event, input); }, label: translate(input.shortLabel) }, (_a = input.dropdownItems) === null || _a === void 0 ? void 0 : _a.map(function (element) { return (React.createElement(MenuItem_1.default, { key: element.key, value: element.key }, element.value)); })))),\n (input.type === healthConstants_1.TaskOrGoalInputType.Text || input.type === healthConstants_1.TaskOrGoalInputType.Number) && (React.createElement(core_1.TextField, { label: translate(input.shortLabel), type: input.type, value: (_b = (0, healthUtils_1.objKeyInArray)(input.key, updatedTasks)) !== null && _b !== void 0 ? _b : '', variant: \"outlined\", size: \"small\", placeholder: ((_c = currentTaskValue(input)) === null || _c === void 0 ? void 0 : _c.toString()) || ((_d = input === null || input === void 0 ? void 0 : input.placeHolder) === null || _d === void 0 ? void 0 : _d.toString()) || ((input === null || input === void 0 ? void 0 : input.placeHolderTranslateKey) ? translate(input.placeHolderTranslateKey) : ''), InputProps: { classes: { input: classes.input }, inputProps: { min: 0, max: input.maxValue } }, InputLabelProps: { shrink: true }, onChange: function (event) { return handleChange(event, input); }, required: true, helperText: errors[input.key] && !currentTaskValue(input) ? translate('health.mandatoryQuestion') : '', error: errors[input.key] && !currentTaskValue(input), onKeyPress: input.type === healthConstants_1.TaskOrGoalInputType.Number ? function (event) {\n if ((event === null || event === void 0 ? void 0 : event.key) === '-' || (event === null || event === void 0 ? void 0 : event.key) === '+') {\n event.preventDefault();\n }\n } : undefined })),\n React.createElement(core_1.Typography, { className: classes.inputLabel }, translate(input.longLabel))));\n }),\n React.createElement(\"div\", { className: classes.action },\n React.createElement(core_1.Typography, { variant: \"caption\", className: classes.dateLabel }, \"\".concat(translate('health.registrationDate'), \":\")),\n React.createElement(pickers_1.DatePicker, { value: registrationDate, InputProps: { disableUnderline: true, classes: { error: classes.error, input: classes.regDateInput }, error: hasLoggedThisPeriod }, format: \"dd.MM.yyyy\", onChange: handleRegistrationDateChange, disableFuture: true, disableToolbar: true, autoOk: true, minDate: registrationStartDate }),\n React.createElement(core_1.Button, { variant: \"contained\", color: \"primary\", onClick: submitTask, disabled: updatedTasks.length < 1 || hasLoggedThisPeriod }, translate('health.register'))),\n hasLoggedThisPeriod && (React.createElement(core_1.Typography, { variant: \"body2\", color: \"error\", className: classes.errorLabel }, translate('health.alreadyLoggedThisPeriod')))));\n};\nHealthRegistrationTasksCard.defaultProps = {\n allowMultipleLogsPrPeriod: false,\n};\nexports.default = HealthRegistrationTasksCard;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.useStyles = void 0;\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar VerticalLineheader_1 = __importDefault(require(\"./VerticalLineheader\"));\nvar healthConstants_1 = require(\"../utils/healthConstants\");\nexports.useStyles = (0, core_1.makeStyles)(function (theme) { return ({\n tableTitle: {\n padding: theme.spacing(6, 4, 2, 4),\n },\n darkTableRow: {\n backgroundColor: theme.youwell.colors.defaultBackground,\n },\n cellHeader: {\n fontWeight: theme.typography.fontWeightBold,\n },\n cell: {\n whiteSpace: 'nowrap',\n },\n}); });\nvar highlightTablePart = function (direction, lineHighlightDirection, index, classes) { return ((((index + 1) % 2\n && lineHighlightDirection\n && lineHighlightDirection === direction\n && (0, classnames_1.default)(classes.cell, classes.darkTableRow))\n || classes.cell)); };\nvar HealthTable = function (_a) {\n var headerTranslateKeys = _a.headerTranslateKeys, data = _a.data, dataKeys = _a.dataKeys, cellValueTranslateKeys = _a.cellValueTranslateKeys, lineHighlightDirection = _a.lineHighlightDirection, header = _a.header;\n var classes = (0, exports.useStyles)();\n var translate = (0, translate_1.default)();\n var cellHeaderClass = (0, classnames_1.default)(classes.cell, classes.cellHeader);\n if (!(data === null || data === void 0 ? void 0 : data.length) || 0) {\n return null;\n }\n return (React.createElement(core_1.Card, null,\n React.createElement(\"div\", { className: classes.tableTitle },\n React.createElement(VerticalLineheader_1.default, { title: header !== null && header !== void 0 ? header : translate('health.history') })),\n React.createElement(core_1.TableContainer, null,\n React.createElement(core_1.Table, null,\n React.createElement(core_1.TableHead, null,\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: cellHeaderClass }, translate('health.timePeriod')), headerTranslateKeys === null || headerTranslateKeys === void 0 ? void 0 :\n headerTranslateKeys.map(function (headerTranslateKey) { return (React.createElement(core_1.TableCell, { key: headerTranslateKey, className: cellHeaderClass }, translate(headerTranslateKey))); }))),\n React.createElement(core_1.TableBody, null, data === null || data === void 0 ? void 0 : data.map(function (row, rowIndex) { return (React.createElement(core_1.TableRow\n // eslint-disable-next-line react/no-array-index-key\n , { \n // eslint-disable-next-line react/no-array-index-key\n key: rowIndex, className: highlightTablePart(healthConstants_1.LineHighlightDirection.Horizontal, lineHighlightDirection, rowIndex, classes) },\n React.createElement(core_1.TableCell, null, row === null || row === void 0 ? void 0 : row.timePeriod), dataKeys === null || dataKeys === void 0 ? void 0 :\n dataKeys.map(function (dataKey, index) {\n var valueTypeTranslateKey = cellValueTranslateKeys === null || cellValueTranslateKeys === void 0 ? void 0 : cellValueTranslateKeys[dataKey];\n var cellValue = row === null || row === void 0 ? void 0 : row[dataKey];\n var valueTypeTranslated = translate(\"\".concat(valueTypeTranslateKey, \".\").concat(cellValue), undefined, { onMissingTranslation: function () { var _a; return (_a = cellValue === null || cellValue === void 0 ? void 0 : cellValue.toString()) !== null && _a !== void 0 ? _a : ''; } });\n var cell = valueTypeTranslateKey ? valueTypeTranslated : cellValue;\n return (React.createElement(core_1.TableCell\n // eslint-disable-next-line react/no-array-index-key\n , { \n // eslint-disable-next-line react/no-array-index-key\n key: index, className: highlightTablePart(healthConstants_1.LineHighlightDirection.Vertical, lineHighlightDirection, index, classes) }, cell));\n }))); }))))));\n};\nHealthTable.defaultProps = {\n header: null,\n cellValueTranslateKeys: undefined,\n lineHighlightDirection: healthConstants_1.LineHighlightDirection.Horizontal,\n};\nexports.default = HealthTable;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar healthRegistrationService_1 = require(\"../../../../app/services/healthRegistrationService\");\nvar store_1 = require(\"../../../../app/store\");\nvar LoadHealthRegistration = function () {\n var healthRegistrations = (0, store_1.useYouwellSelector)(function (state) { return state.healthRegistrationStore.healthRegistrations; });\n var dispatch = (0, store_1.useYouwellDispatch)();\n var notLoadedHealthRegistration = !(healthRegistrations === null || healthRegistrations === void 0 ? void 0 : healthRegistrations.length);\n React.useEffect(function () {\n if (notLoadedHealthRegistration) {\n (0, healthRegistrationService_1.fetchHealthRegistrationData)(dispatch);\n }\n }, [dispatch, notLoadedHealthRegistration]);\n return null;\n};\nexports.default = LoadHealthRegistration;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar store_1 = require(\"../../../../app/store\");\nvar medicineService_1 = require(\"../../../../app/services/medicineService\");\nvar LoadMedicines = function () {\n var medicines = (0, store_1.useYouwellSelector)(function (state) { return state.medicationStore.medications; });\n var dispatch = (0, store_1.useYouwellDispatch)();\n var hasLoaded = medicines !== null;\n React.useEffect(function () {\n if (!hasLoaded) {\n (0, medicineService_1.fetchMedicationData)(dispatch);\n }\n }, [dispatch, hasLoaded]);\n return null;\n};\nexports.default = LoadMedicines;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar react_redux_1 = require(\"react-redux\");\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar icons_1 = require(\"../../../../common/icons\");\nvar translate_1 = __importStar(require(\"../../../../app/localization/translate\"));\nvar VerticalLineheader_1 = __importDefault(require(\"./VerticalLineheader\"));\nvar medicineService_1 = require(\"../../../../app/services/medicineService\");\nvar dateUtils_1 = require(\"../../../../youwell-common/dateUtils\");\nvar DaySelector_1 = __importDefault(require(\"../../../../common/components/DaySelector\"));\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return ({\n root: {\n padding: theme.spacing(4),\n display: 'flex',\n gap: theme.spacing(2),\n flexDirection: 'column',\n },\n headerContainer: {\n marginBottom: theme.spacing(2),\n },\n daySelector: {\n display: 'flex',\n justifyContent: 'center',\n },\n medicines: {\n marginBottom: theme.spacing(1),\n },\n medication: {\n display: 'flex',\n alignItems: 'center',\n gap: theme.spacing(1),\n marginBottom: theme.spacing(0.5),\n borderBottom: theme.youwell.borders.dim,\n '&:hover': {\n background: theme.youwell.colors.defaultBackground,\n },\n },\n medicationName: {\n flex: '1 1 auto',\n },\n medicationTime: {\n width: 200,\n },\n green: {\n color: theme.youwell.colors.green,\n },\n red: {\n color: theme.youwell.colors.redLight,\n },\n dimmed: {\n opacity: 0.3,\n },\n}); });\nvar MedicationLogging = function (_a) {\n var medications = _a.medications, medicationLogs = _a.medicationLogs;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var dispatch = (0, react_redux_1.useDispatch)();\n var _b = React.useState(new Date()), selectedDate = _b[0], setSelectedDate = _b[1];\n var selectedDateTextString = (0, dateUtils_1.getTextfieldDateString)(selectedDate);\n var getLogValue = function (medication) { var _a; return (_a = medicationLogs === null || medicationLogs === void 0 ? void 0 : medicationLogs[medication.id]) === null || _a === void 0 ? void 0 : _a[selectedDateTextString]; };\n var hasCurrentAdministrationTime = function (medication, currTime) {\n var med = getLogValue(medication);\n if (!med)\n return undefined;\n if (!currTime)\n return true;\n if (med.administrationTime === null || med.administrationTime === undefined)\n return true;\n return med.administrationTime.split(',').includes(currTime);\n };\n var updateMedication = function (medication, medTaken) { return function () {\n var _a, _b, _c;\n var currentLog = getLogValue(medication);\n var administrationTime;\n if (medication.administrationTime) {\n var currentAdmTimes = (_b = (_a = currentLog === null || currentLog === void 0 ? void 0 : currentLog.administrationTime) === null || _a === void 0 ? void 0 : _a.split(',')) !== null && _b !== void 0 ? _b : [];\n if (medTaken)\n currentAdmTimes.push(medication.administrationTime);\n else {\n currentAdmTimes = currentAdmTimes.filter(function (d) { return d !== medication.administrationTime; });\n }\n administrationTime = currentAdmTimes.join(',');\n }\n var saveData = {\n id: (_c = currentLog === null || currentLog === void 0 ? void 0 : currentLog.id) !== null && _c !== void 0 ? _c : 0,\n date: selectedDate,\n medicationId: medication.id,\n administrationTime: administrationTime,\n medTaken: medTaken || !!administrationTime,\n };\n if (saveData.id) {\n (0, medicineService_1.updateMedicationLogData)(dispatch, saveData);\n }\n else {\n (0, medicineService_1.insertMedicationLogData)(dispatch, saveData);\n }\n }; };\n if (!medications || medications.length === 0)\n return null;\n var unwrappedMedications = medications.reduce(function (prev, curr) {\n var _a, _b;\n var times = (_b = (_a = curr.administrationTime) === null || _a === void 0 ? void 0 : _a.split(',')) !== null && _b !== void 0 ? _b : [];\n if (times.length < 2)\n return __spreadArray(__spreadArray([], prev, true), [curr], false);\n return __spreadArray(__spreadArray([], prev, true), times.map(function (t) { return (__assign(__assign({}, curr), { administrationTime: t })); }), true);\n }, [])\n .map(function (med) { return (__assign(__assign({}, med), { checked: hasCurrentAdministrationTime(med, med.administrationTime) })); });\n return (React.createElement(core_1.Card, { className: classes.root },\n React.createElement(\"div\", { className: classes.headerContainer },\n React.createElement(VerticalLineheader_1.default, { title: translate('medicine.dailyRegistration') })),\n React.createElement(\"div\", { className: classes.daySelector },\n React.createElement(DaySelector_1.default, { onChange: setSelectedDate, selectedDate: selectedDate })),\n React.createElement(\"div\", { className: classes.medicines }, unwrappedMedications.map(function (medication) {\n var _a, _b;\n return (React.createElement(\"div\", { key: \"\".concat(medication.id, \"-\").concat(medication.administrationTime), className: classes.medication },\n React.createElement(core_1.Typography, { className: classes.medicationName }, \"\".concat(medication.name, \" (\").concat(medication.dosage, \")\")),\n React.createElement(core_1.Typography, { className: classes.medicationTime }, (0, translate_1.translateWithDefault)(translate, medication.administrationTime)),\n React.createElement(core_1.IconButton, { onClick: updateMedication(medication, false) },\n React.createElement(icons_1.CloseIcon, { className: (0, classnames_1.default)((_a = {}, _a[classes.red] = medication.checked === false, _a[classes.dimmed] = medication.checked === true, _a)) })),\n React.createElement(core_1.IconButton, { onClick: updateMedication(medication, true) },\n React.createElement(icons_1.CheckMarkIcon, { className: (0, classnames_1.default)((_b = {}, _b[classes.green] = medication.checked === true, _b[classes.dimmed] = medication.checked === false, _b)) }))));\n }))));\n};\nexports.default = MedicationLogging;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar react_redux_1 = require(\"react-redux\");\nvar icons_1 = require(\"../../../../common/icons\");\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar VerticalLineheader_1 = __importDefault(require(\"./VerticalLineheader\"));\nvar medicineService_1 = require(\"../../../../app/services/medicineService\");\nvar HealthInput_1 = __importDefault(require(\"./HealthInput\"));\nvar components_1 = require(\"../../../../common/components\");\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return ({\n root: {\n padding: theme.spacing(4),\n display: 'flex',\n gap: theme.spacing(2),\n flexDirection: 'column',\n },\n headerContainer: {\n marginBottom: theme.spacing(2),\n },\n medicines: {\n marginBottom: theme.spacing(1),\n },\n medication: {\n display: 'flex',\n alignItems: 'center',\n gap: theme.spacing(1),\n marginBottom: theme.spacing(2),\n },\n actions: {\n display: 'flex',\n gap: theme.spacing(1),\n justifyContent: 'flex-end',\n },\n deleteIcon: {\n marginLeft: 59,\n color: theme.youwell.colors.red,\n },\n}); });\nvar MyMedications = function (_a) {\n var medications = _a.medications, medicationSetup = _a.medicationSetup;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var dispatch = (0, react_redux_1.useDispatch)();\n var _b = React.useState({}), updatedValues = _b[0], setUpdatedValues = _b[1];\n var _c = React.useState(null), editingItem = _c[0], setEditingItem = _c[1];\n var cancelEdit = function () {\n setUpdatedValues({});\n setEditingItem(null);\n };\n var onAddMedicine = function () {\n setEditingItem({\n id: 0,\n name: '',\n dosage: '',\n administrationTime: '',\n });\n };\n var saveChanges = function () {\n if (editingItem) {\n var saveData = __assign(__assign({}, editingItem), updatedValues);\n var callback = function () { return cancelEdit(); };\n if (saveData.id) {\n (0, medicineService_1.updateMedicationData)(dispatch, saveData, { callback: callback });\n }\n else {\n (0, medicineService_1.insertMedicationData)(dispatch, saveData, { callback: callback });\n }\n }\n };\n var deleteMedicine = function (medication) { return function () {\n (0, medicineService_1.deleteMedicationData)(dispatch, medication);\n }; };\n var handleFieldChange = function (medication, fieldKey) { return function (value) {\n if (editingItem == null)\n setEditingItem(medication);\n setUpdatedValues(function (prev) {\n var _a;\n return (__assign(__assign({}, prev), (_a = {}, _a[fieldKey] = value, _a)));\n });\n }; };\n var getValue = function (medication, key) {\n var _a, _b, _c;\n if ((editingItem === null || editingItem === void 0 ? void 0 : editingItem.id) === medication.id) {\n return (_b = (_a = updatedValues[key]) !== null && _a !== void 0 ? _a : medication[key]) !== null && _b !== void 0 ? _b : '';\n }\n return (_c = medication[key]) !== null && _c !== void 0 ? _c : '';\n };\n var medicationList = (editingItem === null || editingItem === void 0 ? void 0 : editingItem.id) === 0 ? __spreadArray(__spreadArray([], medications !== null && medications !== void 0 ? medications : [], true), [editingItem], false) : medications !== null && medications !== void 0 ? medications : [];\n return (React.createElement(core_1.Card, { className: classes.root },\n React.createElement(\"div\", { className: classes.headerContainer },\n React.createElement(VerticalLineheader_1.default, { title: translate('medicine.myMedicines') })),\n React.createElement(\"div\", { className: classes.medicines },\n medicationList.map(function (medication) { return (React.createElement(\"div\", { key: medication.id, className: classes.medication },\n medicationSetup.map(function (field) { return (React.createElement(HealthInput_1.default, { disabled: Boolean(editingItem && editingItem.id !== medication.id), key: field.key, value: getValue(medication, field.key), healthFieldSetup: field, onChange: handleFieldChange(medication, field.key) })); }),\n (editingItem === null || editingItem === void 0 ? void 0 : editingItem.id) === medication.id ? (React.createElement(React.Fragment, null,\n React.createElement(core_1.IconButton, { onClick: cancelEdit },\n React.createElement(icons_1.CancelIcon, null)),\n React.createElement(core_1.IconButton, { onClick: saveChanges },\n React.createElement(icons_1.SaveIcon, { color: \"primary\" })))) : (React.createElement(components_1.ConfirmButton, { buttonClassName: classes.deleteIcon, variant: \"iconbutton\", confirmText: translate('medicine.deleteMedicineConfirm'), onClick: deleteMedicine(medication) },\n React.createElement(icons_1.DeleteIcon, null))))); }),\n (!medications || medications.length === 0) && (React.createElement(core_1.Typography, null, translate('medicine.noMedications')))),\n editingItem === null && (React.createElement(\"div\", { className: classes.actions },\n React.createElement(core_1.Button, { variant: \"contained\", color: \"secondary\", onClick: onAddMedicine, disabled: false }, translate('health.add'))))));\n};\nexports.default = MyMedications;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.useStyles = void 0;\nvar core_1 = require(\"@material-ui/core\");\nvar icons_1 = require(\"@material-ui/icons\");\nvar React = __importStar(require(\"react\"));\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nexports.useStyles = (0, core_1.makeStyles)(function (theme) { return ({\n inputTitleText: {\n fontWeight: theme.typography.fontWeightMedium,\n paddingBottom: theme.spacing(1),\n },\n input: {\n backgroundColor: theme.palette.background.paper,\n },\n}); });\nvar QuestionAndInput = function (_a) {\n var label = _a.label, onChange = _a.onChange, value = _a.value;\n var classes = (0, exports.useStyles)();\n var translate = (0, translate_1.default)();\n var _b = React.useState(false), editing = _b[0], setEditing = _b[1];\n var handleChange = function (event) {\n onChange(event.target.value);\n };\n return (React.createElement(\"div\", null,\n React.createElement(core_1.Typography, { className: classes.inputTitleText, variant: \"body1\" }, label),\n React.createElement(core_1.TextField, { value: value, onChange: handleChange, className: classes.input, onFocus: function () { return setEditing(true); }, onBlur: function () { return setEditing(false); }, fullWidth: true, multiline: true, variant: \"outlined\", placeholder: translate('goalsAndBarriers.yourAnswerHere'), InputProps: {\n startAdornment: (React.createElement(core_1.InputAdornment, { position: \"start\" },\n React.createElement(icons_1.Edit, { color: editing ? 'primary' : 'disabled' }))),\n } })));\n};\nexports.default = QuestionAndInput;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.useStyles = void 0;\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar react_router_dom_1 = require(\"react-router-dom\");\nexports.useStyles = (0, core_1.makeStyles)(function (theme) { return ({\n root: {},\n actionArea: {\n padding: theme.spacing(3),\n display: 'flex',\n justifyContent: 'space-between',\n },\n header: {\n fontWeight: theme.typography.fontWeightBold,\n },\n}); });\nvar TitleButtonCard = function (_a) {\n var title = _a.title, buttonText = _a.buttonText, buttonUrl = _a.buttonUrl;\n var classes = (0, exports.useStyles)();\n return (React.createElement(core_1.Card, { className: classes.root },\n React.createElement(core_1.CardActionArea, { component: react_router_dom_1.Link, to: buttonUrl, className: classes.actionArea },\n React.createElement(core_1.Typography, { className: classes.header, variant: \"h6\" }, title),\n React.createElement(core_1.Button, { variant: \"contained\", color: \"secondary\" }, buttonText))));\n};\nexports.default = TitleButtonCard;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.useStyles = void 0;\nvar makeStyles_1 = __importDefault(require(\"@material-ui/core/styles/makeStyles\"));\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nexports.useStyles = (0, makeStyles_1.default)(function (theme) { return ({\n root: {\n display: 'flex',\n },\n header: {\n fontWeight: theme.typography.fontWeightBold,\n },\n headerDevider: {\n backgroundColor: theme.palette.primary.main,\n width: theme.spacing(0.5),\n marginRight: theme.spacing(1),\n },\n icon: {\n alignSelf: 'center',\n display: 'flex',\n padding: theme.spacing(0, 1),\n },\n}); });\nvar VerticalLineHeader = function (_a) {\n var title = _a.title, icon = _a.icon;\n var classes = (0, exports.useStyles)();\n return (React.createElement(\"div\", { className: classes.root },\n React.createElement(core_1.Divider, { orientation: \"vertical\", flexItem: true, className: classes.headerDevider }),\n React.createElement(core_1.Typography, { className: classes.header, variant: \"h5\" }, title),\n React.createElement(\"div\", { className: classes.icon }, icon)));\n};\nVerticalLineHeader.defaultProps = {\n icon: null,\n};\nexports.default = VerticalLineHeader;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.useStyles = void 0;\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar WeekSelector_1 = __importDefault(require(\"../../../../common/components/WeekSelector\"));\nexports.useStyles = (0, core_1.makeStyles)(function (theme) { return ({\n root: {\n padding: theme.spacing(2),\n display: 'flex',\n justifyContent: 'center',\n },\n}); });\nvar WeekSelectorCard = function (_a) {\n var onChange = _a.onChange, selectedWeek = _a.selectedWeek;\n var classes = (0, exports.useStyles)();\n return (React.createElement(core_1.Card, { className: classes.root },\n React.createElement(WeekSelector_1.default, { onChange: onChange, selectedWeek: selectedWeek })));\n};\nexports.default = WeekSelectorCard;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.VisualizationPropsKeys = exports.WeeklyValueModification = exports.LineHighlightDirection = exports.TaskOrGoalInputType = exports.DietPropKeys = exports.PsychosocialPropKeys = exports.ActivityPropKeys = exports.RegistrationInterval = exports.BloodSugarPropKeys = exports.SmokingPropKeys = void 0;\nvar SmokingPropKeys;\n(function (SmokingPropKeys) {\n SmokingPropKeys[\"CigarettesGoal\"] = \"cigarettesGoal\";\n SmokingPropKeys[\"CigarettesScore\"] = \"cigarettesScore\";\n SmokingPropKeys[\"SnusScore\"] = \"snusScore\";\n SmokingPropKeys[\"SnusGoal\"] = \"snusGoal\";\n})(SmokingPropKeys = exports.SmokingPropKeys || (exports.SmokingPropKeys = {}));\nvar BloodSugarPropKeys;\n(function (BloodSugarPropKeys) {\n BloodSugarPropKeys[\"BloodSugarMaxGoal\"] = \"bloodSugarMaxGoal\";\n BloodSugarPropKeys[\"BloodSugarMinGoal\"] = \"bloodSugarMinGoal\";\n BloodSugarPropKeys[\"BloodSugarScore\"] = \"bloodSugarScore\";\n})(BloodSugarPropKeys = exports.BloodSugarPropKeys || (exports.BloodSugarPropKeys = {}));\nvar RegistrationInterval;\n(function (RegistrationInterval) {\n RegistrationInterval[RegistrationInterval[\"Daily\"] = 0] = \"Daily\";\n RegistrationInterval[RegistrationInterval[\"Weekly\"] = 1] = \"Weekly\";\n RegistrationInterval[RegistrationInterval[\"Once\"] = 2] = \"Once\";\n})(RegistrationInterval = exports.RegistrationInterval || (exports.RegistrationInterval = {}));\nvar ActivityPropKeys;\n(function (ActivityPropKeys) {\n ActivityPropKeys[\"Category\"] = \"category\";\n ActivityPropKeys[\"Name\"] = \"navn\";\n ActivityPropKeys[\"Minutes\"] = \"minutes\";\n ActivityPropKeys[\"Intensity\"] = \"intensity\";\n ActivityPropKeys[\"Score\"] = \"score\";\n ActivityPropKeys[\"MinutesDailyGoal\"] = \"minutesDailyGoal\";\n ActivityPropKeys[\"ScoreWeeklyGoal\"] = \"scoreWeeklyGoal\";\n})(ActivityPropKeys = exports.ActivityPropKeys || (exports.ActivityPropKeys = {}));\nvar PsychosocialPropKeys;\n(function (PsychosocialPropKeys) {\n PsychosocialPropKeys[\"SafeScore\"] = \"safeScore\";\n PsychosocialPropKeys[\"CheerfulScore\"] = \"cheerfulScore\";\n PsychosocialPropKeys[\"NervousScore\"] = \"nervousScore\";\n PsychosocialPropKeys[\"AnxietyScore\"] = \"anxietyScore\";\n PsychosocialPropKeys[\"IrritableScore\"] = \"irritableScore\";\n PsychosocialPropKeys[\"DepressedScore\"] = \"depressedScore\";\n PsychosocialPropKeys[\"LonelyScore\"] = \"lonelyScore\";\n PsychosocialPropKeys[\"TenseScore\"] = \"tenseScore\";\n PsychosocialPropKeys[\"PessimisticScore\"] = \"pessimisticScore\";\n PsychosocialPropKeys[\"Awake\"] = \"awake\";\n})(PsychosocialPropKeys = exports.PsychosocialPropKeys || (exports.PsychosocialPropKeys = {}));\nvar DietPropKeys;\n(function (DietPropKeys) {\n DietPropKeys[\"Name\"] = \"name\";\n DietPropKeys[\"Completed\"] = \"completed\";\n})(DietPropKeys = exports.DietPropKeys || (exports.DietPropKeys = {}));\nvar TaskOrGoalInputType;\n(function (TaskOrGoalInputType) {\n TaskOrGoalInputType[\"Text\"] = \"text\";\n TaskOrGoalInputType[\"Number\"] = \"number\";\n TaskOrGoalInputType[\"Dropdown\"] = \"dropdown\";\n TaskOrGoalInputType[\"Checkbox\"] = \"checkbox\";\n TaskOrGoalInputType[\"MultipleSelect\"] = \"multiple-select\";\n})(TaskOrGoalInputType = exports.TaskOrGoalInputType || (exports.TaskOrGoalInputType = {}));\nvar LineHighlightDirection;\n(function (LineHighlightDirection) {\n LineHighlightDirection[\"Vertical\"] = \"vertical\";\n LineHighlightDirection[\"Horizontal\"] = \"horizontal\";\n})(LineHighlightDirection = exports.LineHighlightDirection || (exports.LineHighlightDirection = {}));\nvar WeeklyValueModification;\n(function (WeeklyValueModification) {\n WeeklyValueModification[WeeklyValueModification[\"Add\"] = 0] = \"Add\";\n WeeklyValueModification[WeeklyValueModification[\"Keep\"] = 1] = \"Keep\";\n WeeklyValueModification[WeeklyValueModification[\"Average\"] = 2] = \"Average\";\n})(WeeklyValueModification = exports.WeeklyValueModification || (exports.WeeklyValueModification = {}));\nvar VisualizationPropsKeys;\n(function (VisualizationPropsKeys) {\n VisualizationPropsKeys[\"FullRegistration\"] = \"fullRegistration\";\n VisualizationPropsKeys[\"PartialRegistration\"] = \"partialRegistration\";\n VisualizationPropsKeys[\"NoRegistration\"] = \"noRegistration\";\n VisualizationPropsKeys[\"RegistrationIcon\"] = \"registrationIcon\";\n VisualizationPropsKeys[\"RegistrationLeftOutKeys\"] = \"registrationLeftOutKeys\";\n VisualizationPropsKeys[\"RegisteredCount\"] = \"registeredCount\";\n VisualizationPropsKeys[\"UnregisteredCount\"] = \"unregisteredCount\";\n})(VisualizationPropsKeys = exports.VisualizationPropsKeys || (exports.VisualizationPropsKeys = {}));\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.sumObjectValue = exports.generateCellValueTranslateKeys = exports.generateDropdownItemData = exports.filterHealthRegistrationLogsByDate = exports.checkHasHealthRehistrationLog = exports.generateVisualizationData = exports.findLatestHealthReg = exports.objKeyInArray = void 0;\nvar lodash_1 = require(\"lodash\");\nvar dateUtils_1 = require(\"../../../../youwell-common/dateUtils\");\nvar stringUtils_1 = require(\"../../../../youwell-common/stringUtils\");\nvar arrayUtils_1 = require(\"../../../../youwell-common/arrayUtils\");\nvar healthConstants_1 = require(\"./healthConstants\");\nvar healthRegistration_1 = require(\"../../../../app/store/types/healthRegistration\");\nvar objKeyInArray = function (key, array) {\n var _a, _b;\n if ((array === null || array === void 0 ? void 0 : array.length) > 0) {\n var index = array === null || array === void 0 ? void 0 : array.findIndex(function (t) { return t === null || t === void 0 ? void 0 : t[key]; });\n return (_b = ((array === null || array === void 0 ? void 0 : array[index]) && ((_a = array === null || array === void 0 ? void 0 : array[index]) === null || _a === void 0 ? void 0 : _a[key]))) !== null && _b !== void 0 ? _b : null;\n }\n return null;\n};\nexports.objKeyInArray = objKeyInArray;\n// Finds the latest health registration of a certain type (e.g. 'WeightAndSize')\nvar findLatestHealthReg = function (type, healthRegistrations) {\n var currentTypeHealthReg = healthRegistrations && (healthRegistrations === null || healthRegistrations === void 0 ? void 0 : healthRegistrations.filter(function (h) { return h.type === type; }));\n return currentTypeHealthReg === null || currentTypeHealthReg === void 0 ? void 0 : currentTypeHealthReg[(currentTypeHealthReg === null || currentTypeHealthReg === void 0 ? void 0 : currentTypeHealthReg.length) - 1];\n};\nexports.findLatestHealthReg = findLatestHealthReg;\nvar generateVisualizationData = function (healthRegistrationLogs, translate, weekly, weeklyValueModifications) {\n if (weekly === void 0) { weekly = false; }\n var dailyData = healthRegistrationLogs === null || healthRegistrationLogs === void 0 ? void 0 : healthRegistrationLogs.reduce(function (prevHealthRegistrations, currHealthRegistration) {\n var _a;\n var _b, _c;\n if ((currHealthRegistration === null || currHealthRegistration === void 0 ? void 0 : currHealthRegistration.type) === healthRegistration_1.HealthRegistrationLogType.Task) {\n var date = currHealthRegistration.date ? new Date(currHealthRegistration.date) : undefined;\n var healthRegistrationId = currHealthRegistration === null || currHealthRegistration === void 0 ? void 0 : currHealthRegistration.healthRegistrationId;\n var dayNumber = date && new Date(date).getDay();\n var dayName = (0, stringUtils_1.firstLetterUp)(translate(\"time.weekdays_short.\".concat(dayNumber)));\n var week = date && (0, dateUtils_1.getWeekNumberFromDate)(date).toString();\n var weekName = \"\".concat((0, stringUtils_1.firstLetterUp)(translate('time.week')), \" \").concat(week);\n var weekAndYearKey = (0, dateUtils_1.generateWeekAndYearKey)(date) || '';\n var properties_1 = currHealthRegistration === null || currHealthRegistration === void 0 ? void 0 : currHealthRegistration.properties;\n var intensity = properties_1 === null || properties_1 === void 0 ? void 0 : properties_1[healthConstants_1.ActivityPropKeys.Intensity];\n var minutes = properties_1 === null || properties_1 === void 0 ? void 0 : properties_1[healthConstants_1.ActivityPropKeys.Minutes];\n var scoreCalc = Number(minutes) * Number(intensity);\n var score = Number.isNaN(scoreCalc) ? undefined : scoreCalc;\n var propertyValues = Object.values(properties_1 || {});\n var propertyKeys = Object.keys(properties_1 || {});\n var fullRegistration = (propertyValues === null || propertyValues === void 0 ? void 0 : propertyValues.every(function (d) { return d === true; })) ? 1 : 0;\n var partialRegistration = (propertyValues === null || propertyValues === void 0 ? void 0 : propertyValues.some(function (d) { return d === true; })) && !fullRegistration ? 1 : 0;\n var noRegistration = (propertyValues === null || propertyValues === void 0 ? void 0 : propertyValues.every(function (d) { return d === false; })) ? 1 : 0;\n var registeredCount = (_b = propertyValues === null || propertyValues === void 0 ? void 0 : propertyValues.filter(function (d) { return d === true; })) === null || _b === void 0 ? void 0 : _b.length;\n var unregisteredCount = (_c = propertyValues === null || propertyValues === void 0 ? void 0 : propertyValues.filter(function (d) { return d === false; })) === null || _c === void 0 ? void 0 : _c.length;\n var fullRegistrationIcon = fullRegistration ? '✔️👍' : '❌';\n var registrationLeftOutKeys = (propertyKeys === null || propertyKeys === void 0 ? void 0 : propertyKeys.map(function (key) { return ((properties_1 === null || properties_1 === void 0 ? void 0 : properties_1[key]) === false && key); }).filter(Boolean)).join(', ');\n var newDailyData = __assign(__assign({}, properties_1), (_a = { date: date === null || date === void 0 ? void 0 : date.toISOString(), weekAndYearKey: weekAndYearKey, healthRegistrationId: healthRegistrationId, dayName: dayName, weekName: weekName, timePeriod: dayName }, _a[healthConstants_1.ActivityPropKeys.Score] = score, _a[healthConstants_1.VisualizationPropsKeys.FullRegistration] = fullRegistration, _a[healthConstants_1.VisualizationPropsKeys.PartialRegistration] = partialRegistration, _a[healthConstants_1.VisualizationPropsKeys.NoRegistration] = noRegistration, _a[healthConstants_1.VisualizationPropsKeys.RegistrationIcon] = fullRegistrationIcon, _a[healthConstants_1.VisualizationPropsKeys.RegistrationLeftOutKeys] = registrationLeftOutKeys, _a[healthConstants_1.VisualizationPropsKeys.RegisteredCount] = registeredCount, _a[healthConstants_1.VisualizationPropsKeys.UnregisteredCount] = unregisteredCount, _a));\n return __spreadArray(__spreadArray([], prevHealthRegistrations, true), [newDailyData], false);\n }\n return prevHealthRegistrations;\n }, []);\n if (weekly) {\n var weeklyData = dailyData === null || dailyData === void 0 ? void 0 : dailyData.reduce(function (prevDataPoints, currDataPoint) {\n var weekAdded = prevDataPoints === null || prevDataPoints === void 0 ? void 0 : prevDataPoints.find(function (element) { return (element === null || element === void 0 ? void 0 : element.weekAndYearKey) === (currDataPoint === null || currDataPoint === void 0 ? void 0 : currDataPoint.weekAndYearKey); });\n if (weekAdded) {\n var currentWeekKeys = Object.keys(weekAdded || {});\n var averageWeek_1 = currentWeekKeys.reduce(function (prevKeys, currKey) {\n var _a, _b;\n var weekAddedCurrValue = weekAdded === null || weekAdded === void 0 ? void 0 : weekAdded[currKey];\n var weekAddedCurrValueNumber = Number(weekAddedCurrValue);\n var weekAddedCurrValueIsNumber = !Number.isNaN(weekAddedCurrValueNumber);\n var currDataPointCurrValue = currDataPoint === null || currDataPoint === void 0 ? void 0 : currDataPoint[currKey];\n var currDataPointCurrValueNumber = Number(currDataPointCurrValue);\n var currDataPointCurrValueIsNumber = !Number.isNaN(currDataPointCurrValueNumber);\n if (weekAddedCurrValueIsNumber && currDataPointCurrValueIsNumber) {\n var value = 0;\n switch (weeklyValueModifications === null || weeklyValueModifications === void 0 ? void 0 : weeklyValueModifications[currKey]) {\n case healthConstants_1.WeeklyValueModification.Add:\n value = weekAddedCurrValueNumber + currDataPointCurrValueNumber;\n break;\n case healthConstants_1.WeeklyValueModification.Keep:\n value = weekAddedCurrValueNumber;\n break;\n default:\n value = (weekAddedCurrValueNumber + currDataPointCurrValueNumber) / 2;\n }\n return __assign(__assign({}, prevKeys), (_a = {}, _a[currKey] = Math.round(value), _a));\n }\n return __assign(__assign({}, prevKeys), (_b = {}, _b[currKey] = currDataPoint === null || currDataPoint === void 0 ? void 0 : currDataPoint[currKey], _b));\n }, {});\n var removeOldWeekAverage = prevDataPoints === null || prevDataPoints === void 0 ? void 0 : prevDataPoints.filter(function (d) { return d.weekAndYearKey !== (averageWeek_1 === null || averageWeek_1 === void 0 ? void 0 : averageWeek_1.weekAndYearKey); });\n var averageWeekWithTimePeriod = __assign(__assign(__assign({}, currDataPoint), averageWeek_1), { timePeriod: averageWeek_1 === null || averageWeek_1 === void 0 ? void 0 : averageWeek_1.weekName });\n return __spreadArray(__spreadArray([], (removeOldWeekAverage || []), true), [averageWeekWithTimePeriod], false);\n }\n var currDataPointWithTimePeriod = __assign(__assign({}, currDataPoint), { timePeriod: currDataPoint === null || currDataPoint === void 0 ? void 0 : currDataPoint.weekName });\n return __spreadArray(__spreadArray([], prevDataPoints, true), [currDataPointWithTimePeriod], false);\n }, []);\n var sortedWeeklyData = (0, arrayUtils_1.sortByString)(weeklyData, 'date');\n return sortedWeeklyData;\n }\n var stortedDailyData = (0, arrayUtils_1.sortByString)(dailyData, 'date');\n return stortedDailyData;\n};\nexports.generateVisualizationData = generateVisualizationData;\nvar checkHasHealthRehistrationLog = function (healthRegistrationLogs, propertyKeys) { return Boolean(healthRegistrationLogs === null || healthRegistrationLogs === void 0 ? void 0 : healthRegistrationLogs.find(function (d) { return propertyKeys.every(function (a) { return Object.keys((d === null || d === void 0 ? void 0 : d.properties) || {}).includes(a); }); })); };\nexports.checkHasHealthRehistrationLog = checkHasHealthRehistrationLog;\nvar filterHealthRegistrationLogsByDate = function (healthRegistrationLogs, start, end) { return ((0, arrayUtils_1.sortByString)(healthRegistrationLogs === null || healthRegistrationLogs === void 0 ? void 0 : healthRegistrationLogs.filter(function (log) { return log.date && new Date(log.date) >= start && new Date(log.date) <= end; }), 'date')); };\nexports.filterHealthRegistrationLogsByDate = filterHealthRegistrationLogsByDate;\nvar generateDropdownItemData = function (maxValue, partialTranslateKey) {\n var dropdownItemData = Array.from(Array(maxValue).keys()).map(function (index) {\n var value = index + 1;\n return {\n key: value.toString(),\n value: \"\".concat(partialTranslateKey, \".\").concat(value),\n };\n });\n return dropdownItemData;\n};\nexports.generateDropdownItemData = generateDropdownItemData;\nvar generateCellValueTranslateKeys = function (currentTaskOrGaol) { return currentTaskOrGaol === null || currentTaskOrGaol === void 0 ? void 0 : currentTaskOrGaol.reduce(function (prev, curr) {\n var _a;\n var _b;\n return ((curr === null || curr === void 0 ? void 0 : curr.type) === healthConstants_1.TaskOrGoalInputType.Dropdown\n ? __assign(__assign({}, prev), (_a = {}, _a[curr === null || curr === void 0 ? void 0 : curr.key] = (_b = curr === null || curr === void 0 ? void 0 : curr.visualizationProps) === null || _b === void 0 ? void 0 : _b.valueTypeTranslateKey, _a)) : prev);\n}, {}); };\nexports.generateCellValueTranslateKeys = generateCellValueTranslateKeys;\nvar sumObjectValue = function (data, valueKey) { return ((0, lodash_1.sum)(data === null || data === void 0 ? void 0 : data.map(function (element) { return element === null || element === void 0 ? void 0 : element[valueKey]; }))); };\nexports.sumObjectValue = sumObjectValue;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar store_1 = require(\"../../../app/store\");\nvar sleepService_1 = require(\"../../../app/services/sleepService\");\nvar components_1 = require(\"../../../youwell-common/components\");\nvar urls_1 = __importDefault(require(\"../../../app/urls\"));\nvar SleepDiary_1 = __importDefault(require(\"./SleepDiary\"));\nvar LogDay_1 = __importDefault(require(\"./LogDay\"));\nvar Index = function () {\n var dispatch = (0, store_1.useYouwellDispatch)();\n var sleepEntries = (0, store_1.useYouwellSelector)(function (state) { return state.sleepDataStore.entries; });\n React.useEffect(function () {\n if (!sleepEntries) {\n var startDate = new Date();\n startDate.setMonth(startDate.getMonth() - 1);\n (0, sleepService_1.fetchEntriesData)(dispatch, { startDate: startDate });\n }\n }, [dispatch, sleepEntries]);\n if (!sleepEntries) {\n return null;\n }\n return (React.createElement(react_router_dom_1.Switch, null,\n React.createElement(react_router_dom_1.Route, { path: \"\".concat(urls_1.default.inside.pages.sleepDiary, \"/log/:date\"), component: LogDay_1.default }),\n React.createElement(react_router_dom_1.Route, { path: \"\".concat(urls_1.default.inside.pages.sleepDiary) },\n React.createElement(SleepDiary_1.default, null)),\n React.createElement(react_router_dom_1.Route, { component: components_1.PageNotFound })));\n};\nexports.default = Index;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar core_1 = require(\"@material-ui/core\");\nvar react_router_1 = require(\"react-router\");\nvar colors_1 = require(\"@material-ui/core/colors\");\nvar sleepService_1 = require(\"../../../app/services/sleepService\");\nvar translate_1 = __importDefault(require(\"../../../app/localization/translate\"));\nvar components_1 = require(\"../../../common/components\");\nvar breadcrumbUtil_1 = require(\"../../../common/breadcrumbUtil\");\nvar dateUtils_1 = require(\"../../../youwell-common/dateUtils\");\nvar urls_1 = __importDefault(require(\"../../../app/urls\"));\nvar useAutosaveForm_1 = __importDefault(require(\"../../../youwell-common/useAutosaveForm\"));\nvar constants_1 = require(\"./constants\");\nvar icons_1 = require(\"../../../common/icons\");\nvar validationUtils_1 = require(\"../../../youwell-common/validationUtils\");\nvar utils_1 = require(\"./utils\");\nvar store_1 = require(\"../../../app/store\");\nvar image_1 = require(\"../../../common/image\");\nvar LogWakeups_1 = __importDefault(require(\"./components/LogWakeups\"));\nvar LogNaps_1 = __importDefault(require(\"./components/LogNaps\"));\nvar DayView_1 = __importDefault(require(\"./components/DayView\"));\nvar styles = function (theme) {\n var _a, _b, _c, _d, _e;\n return (0, core_1.createStyles)({\n top: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n marginBottom: theme.spacing(2),\n },\n futureWarning: {\n border: theme.youwell.borders.dim,\n background: theme.palette.grey[100],\n padding: theme.spacing(4, 2),\n margin: theme.spacing(4, 0),\n },\n content: {\n marginTop: theme.spacing(4),\n '&$disabled': {\n opacity: 0.6,\n },\n },\n disabled: {},\n box: (_a = {\n marginBottom: theme.spacing(4),\n boxShadow: theme.shadows[2],\n backgroundColor: colors_1.grey[100],\n borderRadius: theme.youwell.shapes.borderRadius\n },\n _a[theme.breakpoints.down('xs')] = {\n padding: theme.spacing(2),\n },\n _a),\n entry: {\n '&+&': {\n marginTop: theme.spacing(6),\n },\n },\n inline: {\n display: 'flex',\n flexDirection: 'column',\n },\n entryLabelFlexWrapper: (_b = {\n marginBottom: theme.spacing(1),\n display: 'flex'\n },\n _b[theme.breakpoints.down('xs')] = {\n flexDirection: 'column',\n },\n _b),\n textAndIconWrapper: {\n display: 'flex',\n },\n entryLabel: {\n marginRight: theme.spacing(2),\n },\n entryTitle: {},\n timeInput: {\n width: '100%',\n border: theme.youwell.borders.dim,\n padding: theme.spacing(1),\n },\n emptyInput: {\n backgroundColor: theme.palette.common.white,\n },\n filledInInput: {\n background: theme.youwell.colors.inputBackground,\n },\n errorInput: {\n border: theme.youwell.borders.error,\n },\n textInput: {\n border: theme.youwell.borders.dim,\n padding: theme.spacing(1, 3),\n },\n slider: {\n marginTop: theme.spacing(2),\n },\n entryDescription: {\n marginBottom: theme.spacing(1),\n },\n bottom: (_c = {\n margin: theme.spacing(6, 0, 12),\n display: 'flex',\n justifyContent: 'flex-end',\n alignItems: 'center'\n },\n _c[theme.breakpoints.down('xs')] = {\n justifyContent: 'center',\n },\n _c),\n bottomValidation: {\n marginRight: theme.spacing(2),\n },\n doneBtn: {\n padding: theme.spacing(1, 10),\n margin: theme.spacing(2, 0, 2, 1),\n },\n alwaysPresentContent: {\n backgroundColor: theme.palette.background.default,\n padding: theme.spacing(4),\n borderRadius: theme.youwell.shapes.borderRadius,\n },\n ratingSliderIconSection: {\n display: 'flex',\n justifyContent: 'space-between',\n margin: theme.spacing(0, 2),\n },\n remindUserToAnswerText: (_d = {\n color: theme.palette.error.main,\n marginLeft: theme.spacing(1)\n },\n _d[theme.breakpoints.down('xs')] = {\n marginLeft: 0,\n },\n _d),\n remindUserToAnswerTextNextLine: {\n color: theme.palette.error.main,\n },\n skipAnsweringText: (_e = {\n color: theme.palette.error.main,\n textDecoration: 'underline',\n marginLeft: theme.spacing(1),\n '&:hover': {\n cursor: 'pointer',\n }\n },\n _e[theme.breakpoints.down('xs')] = {\n marginLeft: 0,\n },\n _e),\n requiredMessage: {\n marginTop: theme.spacing(1),\n },\n });\n};\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return styles(theme); }, { name: 'LogDay' });\nvar validators = {\n bedTime: validationUtils_1.validateRequired,\n sleepAtemptTime: validationUtils_1.validateRequired,\n sleepTime: validationUtils_1.validateRequired,\n wakeTime: validationUtils_1.validateRequired,\n outOfBedTime: validationUtils_1.validateRequired,\n};\nvar LogDay = function () {\n var _a, _b, _c, _d, _e, _f;\n var _g, _h;\n var classes = useStyles();\n var dispatch = (0, store_1.useYouwellDispatch)();\n var translate = (0, translate_1.default)();\n var theme = (0, core_1.useTheme)();\n var dateString = (0, react_router_1.useParams)().date;\n var clientConfig = (0, store_1.useYouwellSelector)(function (state) { return state.auth.clientConfig; });\n var sleepEntries = (0, store_1.useYouwellSelector)(function (state) { return state.sleepDataStore.entries; });\n var date = React.useMemo(function () { return (0, dateUtils_1.getLocalDate)(dateString); }, [dateString]);\n var currentValues = React.useMemo(function () { return sleepEntries === null || sleepEntries === void 0 ? void 0 : sleepEntries.find(function (d) { return (0, dateUtils_1.isSameDate)(d.date, date); }); }, [date, sleepEntries]);\n var _j = React.useState(false), showDayView = _j[0], setShowDayView = _j[1];\n var _k = React.useState(false), shouldValidate = _k[0], setShouldValidate = _k[1];\n var _l = React.useState({ hasErrors: false }), validationErrors = _l[0], setValidationErrors = _l[1];\n // reset internal state on date change\n React.useEffect(function () {\n setValidationErrors({ hasErrors: false });\n setShowDayView(false);\n setShouldValidate(false);\n }, [dateString]);\n var saveData = React.useCallback(function (updatedValues, callback, background) {\n var _a, _b, _c, _d, _e;\n var lastNightWakeupHasNoWakeTime = (_c = (_a = updatedValues.nightWakeups) === null || _a === void 0 ? void 0 : _a[((_b = updatedValues.nightWakeups) === null || _b === void 0 ? void 0 : _b.length) - 1]) === null || _c === void 0 ? void 0 : _c.wakeTime;\n var nightWakeupsWithWaketime = (_d = updatedValues.nightWakeups) === null || _d === void 0 ? void 0 : _d.filter(function (d) { return d.wakeTime; });\n var allNightWakeupsHaveWakeTime = (nightWakeupsWithWaketime === null || nightWakeupsWithWaketime === void 0 ? void 0 : nightWakeupsWithWaketime.length) === ((_e = updatedValues.nightWakeups) === null || _e === void 0 ? void 0 : _e.length);\n if (allNightWakeupsHaveWakeTime || lastNightWakeupHasNoWakeTime) {\n var sleepData = {\n entry: __assign(__assign({}, updatedValues), { date: date, nightWakeups: lastNightWakeupHasNoWakeTime ? nightWakeupsWithWaketime : updatedValues.nightWakeups }),\n };\n (0, sleepService_1.updateSleepEntry)(dispatch, sleepData, { background: background, callback: callback });\n }\n }, [date, dispatch]);\n var _m = (0, useAutosaveForm_1.default)(saveData, { date: date }, currentValues), values = _m.values, handleSliderChange = _m.handleSliderChange, handleValueChange = _m.handleValueChange, ensureSaved = _m.ensureSaved;\n React.useEffect(function () {\n if (shouldValidate) {\n var allValidationErrors = (0, validationUtils_1.validateAllFields)(values, validators);\n setValidationErrors(allValidationErrors);\n }\n }, [shouldValidate, values]);\n var handleSubPropertyChange = function (name) { return function (event) {\n var _a;\n var updated = __assign(__assign({}, values.sleepProperties), (_a = {}, _a[name] = event.target.value, _a));\n handleValueChange('sleepProperties')(updated);\n }; };\n var handleTimeChange = function (name) { return function (value) {\n var timeWithCorrectDate = (0, utils_1.getTimeWithCorrectDate)(value, date, utils_1.SleepLoggingType.dayLogging);\n handleValueChange(name)(timeWithCorrectDate);\n }; };\n var handleChange = function (name) { return function (value) {\n handleTimeChange(name)(value);\n }; };\n var clickDone = function () {\n var allValidationErrors = (0, validationUtils_1.validateAllFields)(values, validators);\n if (!(0, validationUtils_1.checkHasErrors)(allValidationErrors)) {\n ensureSaved(function () {\n setShowDayView(true);\n });\n }\n else {\n setShouldValidate(true);\n setValidationErrors(allValidationErrors);\n }\n };\n var dateIsFuture = (0, dateUtils_1.isFuture)(date);\n return (React.createElement(components_1.PageLayout, { title: translate('sleepDiary.header'), breadcrumb: (0, breadcrumbUtil_1.getBreadCrumb)(translate('sleepDiary.logNight'), translate, clientConfig, undefined, [{ text: translate('sleepDiary.header'), url: urls_1.default.inside.pages.sleepDiary }]) },\n React.createElement(\"div\", { className: classes.top },\n React.createElement(core_1.Typography, { variant: \"h6\" }, translate('sleepDiary.registrationForDescription', { dateStart: (0, dateUtils_1.longDate)((0, dateUtils_1.addDays)(date, -1), translate), dateEnd: (0, dateUtils_1.longDate)(date, translate) }))),\n React.createElement(React.Fragment, null, dateIsFuture && (React.createElement(core_1.Typography, { className: classes.futureWarning, color: \"primary\" }, translate('sleepDiary.cannotRegisterInFuture')))),\n React.createElement(\"div\", { className: (0, classnames_1.default)(classes.content, (_a = {}, _a[classes.disabled] = dateIsFuture, _a)) },\n React.createElement(\"div\", { className: classes.box },\n React.createElement(\"div\", { className: classes.alwaysPresentContent },\n React.createElement(\"div\", { className: classes.entry },\n React.createElement(core_1.Typography, { variant: \"subtitle2\", className: classes.entryTitle }, translate('sleepDiary.activityRatingTitle')),\n React.createElement(core_1.Typography, { variant: \"body2\", className: classes.entryDescription }, translate('sleepDiary.activityRatingDescription')),\n React.createElement(components_1.YouwellSlider, { disabled: dateIsFuture, className: classes.slider, value: values.daytimeActivityRating, onChange: handleSliderChange('daytimeActivityRating'), min: 1, max: 5, marks: constants_1.daytimeActivityRatings.map(function (d) { return ({ value: d.id, label: translate(d.label) }); }) }),\n React.createElement(\"div\", { className: classes.ratingSliderIconSection },\n React.createElement(image_1.WorkingWithLaptopIcon, { color: theme.palette.primary.main }),\n React.createElement(image_1.WalkingWithDogIcon, { color: theme.palette.primary.main }),\n React.createElement(image_1.PlayingSoccerIcon, { color: theme.palette.primary.main }))),\n React.createElement(\"div\", { className: classes.entry },\n React.createElement(core_1.Typography, { variant: \"subtitle2\", className: classes.entryTitle }, translate('sleepDiary.drugsOrAlcoholUse')),\n React.createElement(core_1.Typography, { variant: \"body2\", className: classes.entryDescription }, translate('sleepDiary.drugsOrAlcoholUseDescription')),\n React.createElement(\"div\", null,\n React.createElement(core_1.Input, { id: \"sleepMedication\", className: (0, classnames_1.default)(classes.textInput, ((_g = values.sleepProperties) === null || _g === void 0 ? void 0 : _g.sleepMedication) ? classes.filledInInput : classes.emptyInput), value: ((_h = values.sleepProperties) === null || _h === void 0 ? void 0 : _h.sleepMedication) || '', placeholder: translate('sleepDiary.drugsOrAlcoholInputPlaceHolder'), onChange: handleSubPropertyChange('sleepMedication'), fullWidth: true, disabled: dateIsFuture, disableUnderline: true, required: true })))),\n React.createElement(LogNaps_1.default, { values: values, date: date, disabled: dateIsFuture, handleValueChange: handleValueChange })),\n React.createElement(\"div\", { className: classes.box },\n React.createElement(\"div\", { className: classes.alwaysPresentContent },\n React.createElement(\"div\", { className: classes.entry },\n React.createElement(\"div\", { className: classes.inline },\n React.createElement(\"div\", { className: classes.entryLabelFlexWrapper },\n React.createElement(\"div\", { className: classes.textAndIconWrapper },\n React.createElement(core_1.Typography, { variant: \"subtitle2\", className: classes.entryLabel }, translate('sleepDiary.whenDidYouGoToSleep')),\n React.createElement(icons_1.SleepIcon, null))),\n React.createElement(components_1.TimePicker, { className: (0, classnames_1.default)(classes.timeInput, values.bedTime ? classes.filledInInput : classes.emptyInput, (_b = {}, _b[classes.errorInput] = !!validationErrors.bedTime, _b)), value: values.bedTime, onChange: handleChange('bedTime'), validation: (0, utils_1.validateTimeBeforeThan)(values.sleepAtemptTime, date, utils_1.SleepLoggingType.nightLogging), validationMessage: \"\".concat(translate('sleepDiary.inCorrectSleepDataInputOrder')), disabled: dateIsFuture, defaultValue: constants_1.defaultSleepTime, disableUnderline: true, inputAdornmentBeforeInput: true }),\n !!validationErrors.bedTime && (React.createElement(core_1.Typography, { variant: \"caption\", color: \"error\", className: classes.requiredMessage }, translate('sleepDiary.rememberToFillOut'))))),\n React.createElement(\"div\", { className: classes.entry },\n React.createElement(\"div\", { className: classes.inline },\n React.createElement(core_1.Typography, { variant: \"subtitle2\", className: classes.entryLabel }, translate('sleepDiary.whenDidYouTryToSleep')),\n React.createElement(components_1.TimePicker, { className: (0, classnames_1.default)(classes.timeInput, values.sleepAtemptTime ? classes.filledInInput : classes.emptyInput, (_c = {}, _c[classes.errorInput] = !!validationErrors.sleepAtemptTime, _c)), value: values.sleepAtemptTime, onChange: handleChange('sleepAtemptTime'), validation: (0, utils_1.validateTimeLaterThan)(values.bedTime, date, utils_1.SleepLoggingType.nightLogging), validationMessage: \"\".concat(translate('sleepDiary.inCorrectSleepDataInputOrder')), disabled: dateIsFuture, defaultValue: constants_1.defaultSleepTime, disableUnderline: true, inputAdornmentBeforeInput: true }),\n !!validationErrors.sleepAtemptTime && (React.createElement(core_1.Typography, { variant: \"caption\", color: \"error\", className: classes.requiredMessage }, translate('sleepDiary.rememberToFillOut'))))),\n React.createElement(\"div\", { className: classes.entry },\n React.createElement(\"div\", { className: classes.inline },\n React.createElement(\"div\", { className: classes.entryLabelFlexWrapper },\n React.createElement(\"div\", { className: classes.textAndIconWrapper },\n React.createElement(core_1.Typography, { variant: \"subtitle2\", className: classes.entryLabel }, translate('sleepDiary.whenDidYouSleep')),\n React.createElement(image_1.SleepSmileyIcon, null))),\n React.createElement(components_1.TimePicker, { className: (0, classnames_1.default)(classes.timeInput, values.sleepTime ? classes.filledInInput : classes.emptyInput, (_d = {}, _d[classes.errorInput] = !!validationErrors.sleepTime, _d)), value: values.sleepTime, onChange: handleChange('sleepTime'), validation: (0, utils_1.validateTimeLaterThan)(values.sleepAtemptTime, date, utils_1.SleepLoggingType.nightLogging), validationMessage: \"\".concat(translate('sleepDiary.inCorrectSleepDataInputOrder')), disabled: dateIsFuture, defaultValue: constants_1.defaultSleepTime, disableUnderline: true, inputAdornmentBeforeInput: true }),\n !!validationErrors.sleepTime && (React.createElement(core_1.Typography, { variant: \"caption\", color: \"error\", className: classes.requiredMessage }, translate('sleepDiary.rememberToFillOut'))))))),\n React.createElement(LogWakeups_1.default, { values: values, handleValueChange: handleValueChange, disabled: dateIsFuture }),\n React.createElement(\"div\", { className: classes.box },\n React.createElement(\"div\", { className: classes.alwaysPresentContent },\n React.createElement(\"div\", { className: classes.entry },\n React.createElement(\"div\", { className: classes.inline },\n React.createElement(core_1.Typography, { variant: \"subtitle2\", className: classes.entryLabel }, translate('sleepDiary.whenDidYouWakeUp')),\n React.createElement(components_1.TimePicker, { className: (0, classnames_1.default)(classes.timeInput, values.wakeTime ? classes.filledInInput : classes.emptyInput, (_e = {}, _e[classes.errorInput] = !!validationErrors.wakeTime, _e)), value: values.wakeTime, onChange: handleTimeChange('wakeTime'), validation: (0, utils_1.validateTimeBeforeThan)(values.outOfBedTime, date, utils_1.SleepLoggingType.dayLogging), validationMessage: \"\".concat(translate('sleepDiary.inCorrectSleepDataInputOrder')), disabled: dateIsFuture, defaultValue: constants_1.defaultWakeTime, disableUnderline: true, inputAdornmentBeforeInput: true }),\n !!validationErrors.wakeTime && (React.createElement(core_1.Typography, { variant: \"caption\", color: \"error\", className: classes.requiredMessage }, translate('sleepDiary.rememberToFillOut'))))),\n React.createElement(\"div\", { className: classes.entry },\n React.createElement(\"div\", { className: classes.inline },\n React.createElement(core_1.Typography, { variant: \"subtitle2\", className: classes.entryLabel }, translate('sleepDiary.whenDidYouGetOutOfBed')),\n React.createElement(components_1.TimePicker, { className: (0, classnames_1.default)(classes.timeInput, values.outOfBedTime ? classes.filledInInput : classes.emptyInput, (_f = {}, _f[classes.errorInput] = !!validationErrors.outOfBedTime, _f)), value: values.outOfBedTime, onChange: handleTimeChange('outOfBedTime'), validation: (0, utils_1.validateTimeLaterThan)(values.wakeTime, date, utils_1.SleepLoggingType.dayLogging), validationMessage: \"\".concat(translate('sleepDiary.inCorrectSleepDataInputOrder')), disabled: dateIsFuture, defaultValue: constants_1.defaultWakeTime, disableUnderline: true, inputAdornmentBeforeInput: true }),\n !!validationErrors.outOfBedTime && (React.createElement(core_1.Typography, { variant: \"caption\", color: \"error\", className: classes.requiredMessage }, translate('sleepDiary.rememberToFillOut'))))),\n React.createElement(\"div\", { className: classes.entry },\n React.createElement(core_1.Typography, { variant: \"subtitle2\", className: classes.entryTitle }, translate('sleepDiary.sleepRating')),\n React.createElement(components_1.YouwellSlider, { className: classes.slider, value: values.sleepRating, onChange: handleSliderChange('sleepRating'), min: 1, max: 5, marks: constants_1.sleepRatings.map(function (d) { return ({ value: d.id, label: translate(d.label) }); }), disabled: dateIsFuture }),\n React.createElement(\"div\", { className: classes.ratingSliderIconSection },\n React.createElement(image_1.BadFaceIcon, { color: theme.palette.primary.main }),\n React.createElement(image_1.OkFaceIcon, { color: theme.palette.primary.main }),\n React.createElement(image_1.HappyFaceIcon, { color: theme.palette.primary.main })))))),\n React.createElement(\"div\", { className: classes.bottom },\n validationErrors.hasErrors && (React.createElement(core_1.Typography, { variant: \"subtitle2\", color: \"error\", className: classes.bottomValidation }, translate('sleepDiary.pleaseFillOutAllFields'))),\n React.createElement(core_1.Button, { className: classes.doneBtn, variant: \"contained\", color: \"secondary\", onClick: clickDone, disabled: dateIsFuture }, translate('sleepDiary.done'))),\n React.createElement(DayView_1.default, { date: date, open: showDayView, onClose: function () { return setShowDayView(false); } })));\n};\nexports.default = LogDay;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar recharts_1 = require(\"recharts\");\nvar core_1 = require(\"@material-ui/core\");\nvar icons_1 = require(\"../../../common/icons\");\nvar image_1 = require(\"../../../common/image\");\nvar sleepService_1 = require(\"../../../app/services/sleepService\");\nvar translate_1 = __importDefault(require(\"../../../app/localization/translate\"));\nvar components_1 = require(\"../../../common/components\");\nvar breadcrumbUtil_1 = require(\"../../../common/breadcrumbUtil\");\nvar store_1 = require(\"../../../app/store\");\nvar dateUtils_1 = require(\"../../../youwell-common/dateUtils\");\nvar arrayUtils_1 = require(\"../../../youwell-common/arrayUtils\");\nvar browserUtils_1 = require(\"../../../youwell-common/browserUtils\");\nvar RegisterSleepMenu_1 = __importDefault(require(\"./components/RegisterSleepMenu\"));\nvar InfoBox_1 = __importDefault(require(\"./components/InfoBox\"));\nvar utils_1 = require(\"./utils\");\nvar WeekAverageDetails_1 = __importDefault(require(\"./components/WeekAverageDetails\"));\nvar EditBedtimePlan_1 = __importDefault(require(\"./components/EditBedtimePlan\"));\nvar constants_1 = require(\"../../../youwell-common/constants\");\nvar constants_2 = require(\"./constants\");\nvar SleepDetailsTable_1 = __importDefault(require(\"./components/SleepDetailsTable\"));\nvar WeekSelector_1 = __importDefault(require(\"../../../common/components/WeekSelector\"));\nvar SleepDataStore_1 = require(\"../../../app/store/SleepDataStore\");\nvar useStyles = (0, core_1.makeStyles)(function (theme) {\n var _a, _b, _c;\n return (0, core_1.createStyles)({\n top: (_a = {\n marginBottom: theme.spacing(4)\n },\n _a[theme.breakpoints.down('xs')] = {\n marginBottom: theme.spacing(4),\n },\n _a),\n mainHeading: {\n textTransform: 'uppercase',\n marginBottom: theme.spacing(2),\n },\n content: {\n marginBottom: theme.spacing(8),\n '&:last-child': {\n marginBottom: theme.spacing(12),\n },\n },\n infoBoxes: (_b = {\n display: 'flex',\n margin: theme.spacing(4, 0, 8)\n },\n _b[theme.breakpoints.down('xs')] = {\n flexWrap: 'wrap',\n },\n _b),\n chartContent: (_c = {\n boxShadow: theme.shadows[2],\n background: theme.palette.common.white,\n paddingTop: theme.spacing(2)\n },\n _c[theme.breakpoints.down('xs')] = {\n overflowX: 'auto',\n overflowY: 'hidden',\n width: '100%',\n },\n _c),\n chartScrollContainer: {},\n chartTitle: {\n margin: theme.spacing(2),\n },\n chartDetails: {\n marginTop: theme.spacing(2),\n },\n weekSelection: {\n margin: theme.spacing(2, 0),\n display: 'flex',\n justifyContent: 'center',\n },\n infoLine: {\n display: 'flex',\n alignItems: 'center',\n },\n infoIcon: {\n width: 40,\n height: 40,\n marginRight: theme.spacing(2),\n color: theme.palette.secondary.main,\n },\n bedPlanLine: {\n display: 'flex',\n alignItems: 'center',\n marginBottom: theme.spacing(2),\n },\n bedPlanIcon: {\n width: 30,\n height: 30,\n marginRight: theme.spacing(2),\n },\n ratingDescription: {\n marginTop: theme.spacing(4),\n },\n noRegistrations: {\n background: theme.youwell.colors.secondaryBackground,\n padding: theme.spacing(2),\n },\n customTooltip: {\n backgroundColor: theme.youwell.colors.secondaryBackground,\n padding: theme.spacing(2),\n borderRadius: theme.youwell.shapes.borderRadius,\n },\n });\n}, { name: 'SleepDiary' });\nvar SleepDiary = function () {\n var _a;\n var classes = useStyles();\n var dispatch = (0, store_1.useYouwellDispatch)();\n var translate = (0, translate_1.default)();\n var clientConfig = (0, store_1.useYouwellSelector)(function (state) { return state.auth.clientConfig; });\n var sleepEntries = (0, store_1.useYouwellSelector)(function (state) { return (0, arrayUtils_1.sortByDateAscending)(state.sleepDataStore.entries, 'date') || []; });\n var sleepEntriesLoadedFrom = (0, store_1.useYouwellSelector)(function (state) { return state.sleepDataStore.sleepEntriesLoadedFrom; });\n var selectedWeek = (0, store_1.useYouwellSelector)(function (state) { return state.sleepDataStore.selectedWeek; });\n var userData = (0, store_1.useYouwellSelector)(function (state) { var _a; return (_a = state.auth.profileData) === null || _a === void 0 ? void 0 : _a.extendedProperties; });\n var theme = (0, core_1.useTheme)();\n var isMobile = (0, core_1.useMediaQuery)(theme.breakpoints.down('xs'));\n var sleepLookup = React.useMemo(function () { return (0, utils_1.getSleepLookup)(sleepEntries); }, [sleepEntries]);\n var selectedWeekEntries = (0, utils_1.getRegistrationsForWeek)(sleepLookup, selectedWeek);\n var weekAverage = React.useMemo(function () { return (0, utils_1.getWeekAverage)(selectedWeekEntries); }, [selectedWeekEntries]);\n var hasRegistrationsForWeek = weekAverage.count > 0;\n var onWeekSelectionChange = function (week) {\n dispatch((0, SleepDataStore_1.setSelectedWeek)(week));\n var localDate = (0, dateUtils_1.getLocalDate)(sleepEntriesLoadedFrom);\n if (sleepEntriesLoadedFrom && localDate && week.start < localDate) {\n localDate.setMonth(localDate.getMonth() - 1);\n (0, sleepService_1.fetchEntriesData)(dispatch, { startDate: localDate, endDate: sleepEntriesLoadedFrom });\n }\n };\n var _b = (0, browserUtils_1.useElementSize)(), contentRef = _b.elementRef, contentSize = _b.elementSize;\n var chartWidth = isMobile ? selectedWeekEntries.length * 80 : contentSize.width;\n var bedtimePlan = {\n bedTime: (userData === null || userData === void 0 ? void 0 : userData[constants_1.userDataProperties.bedtimePlan.bedTime]) || '',\n wakeTime: (userData === null || userData === void 0 ? void 0 : userData[constants_1.userDataProperties.bedtimePlan.wakeTime]) || '',\n };\n var hasBedtimePlan = Boolean(bedtimePlan.bedTime && bedtimePlan.wakeTime);\n var HistoryGraphTooltip = function (_a) {\n var _b, _c, _d, _e, _f, _g, _h, _j, _k;\n var active = _a.active, payload = _a.payload;\n if (active && payload && payload.length) {\n return (React.createElement(\"div\", { className: classes.customTooltip },\n React.createElement(core_1.Typography, { variant: \"subtitle2\" }, (0, dateUtils_1.shortDate)((_c = (_b = payload[0]) === null || _b === void 0 ? void 0 : _b.payload) === null || _c === void 0 ? void 0 : _c.x, translate, false, false, true)),\n React.createElement(core_1.Typography, { variant: \"body2\", color: \"primary\" }, \"\".concat(translate('sleepDiary.totalSleep'), \": \").concat((0, dateUtils_1.hourCount)((_d = payload[0].payload) === null || _d === void 0 ? void 0 : _d.totalSleepMinutes, translate))),\n React.createElement(core_1.Typography, { variant: \"body2\", color: \"primary\" }, \"\".concat(translate('sleepDiary.sleepOnset'), \": \").concat((0, dateUtils_1.hourCount)((0, dateUtils_1.getNumberOfMinutes)((_f = (_e = payload[0]) === null || _e === void 0 ? void 0 : _e.payload) === null || _f === void 0 ? void 0 : _f.sleepTime, (_h = (_g = payload[0]) === null || _g === void 0 ? void 0 : _g.payload) === null || _h === void 0 ? void 0 : _h.sleepAtemptTime), translate))),\n React.createElement(core_1.Typography, { variant: \"body2\", color: \"primary\" }, \"\".concat(translate('sleepDiary.sleepEfficiency'), \": \").concat((_k = (_j = payload[0]) === null || _j === void 0 ? void 0 : _j.payload) === null || _k === void 0 ? void 0 : _k.y, \"%\"))));\n }\n return null;\n };\n return (React.createElement(React.Fragment, null,\n React.createElement(components_1.PageLayout, { breadcrumb: (0, breadcrumbUtil_1.getBreadCrumb)(translate('sleepDiary.header'), translate, clientConfig) },\n React.createElement(\"div\", { className: classes.top },\n React.createElement(core_1.Typography, { variant: \"h4\", className: classes.mainHeading }, translate('sleepDiary.header')),\n React.createElement(RegisterSleepMenu_1.default, { isModal: true, numberOfNightCards: 4 })),\n React.createElement(\"div\", { className: classes.weekSelection, ref: contentRef },\n React.createElement(WeekSelector_1.default, { onChange: onWeekSelectionChange, selectedWeek: selectedWeek })),\n React.createElement(\"div\", { className: classes.infoBoxes },\n React.createElement(InfoBox_1.default, { heading: translate('sleepDiary.sleepEfficiency'), subHeading: translate('sleepDiary.average'), Icon: icons_1.AnalyticsIcon, ActionPopup: hasRegistrationsForWeek ? WeekAverageDetails_1.default : null, ActionPopupProps: { weekAverage: weekAverage }, actionText: translate('sleepDiary.moreInformation'), actionPopupHeading: translate('sleepDiary.weekAverage') },\n React.createElement(\"div\", { className: classes.infoLine }, hasRegistrationsForWeek ? (React.createElement(React.Fragment, null,\n React.createElement(icons_1.DotIcon, { className: classes.infoIcon }),\n React.createElement(core_1.Typography, { variant: \"h6\" }, \"\".concat(Math.round(weekAverage.sleepQuality / weekAverage.count), \" %\")))) : (React.createElement(core_1.Typography, { variant: \"caption\" }, translate('sleepDiary.noEntriesForThisWeek'))))),\n React.createElement(InfoBox_1.default, { heading: translate('sleepDiary.qualityOfSleep'), subHeading: translate('sleepDiary.average'), Icon: icons_1.AnalyticsIcon },\n React.createElement(\"div\", { className: classes.infoLine }, hasRegistrationsForWeek ? (React.createElement(\"div\", null,\n React.createElement(core_1.Typography, { variant: \"h6\", align: \"center\" }, translate(((_a = constants_2.sleepRatings.find(function (d) { return Math.round(weekAverage.sleepRating / weekAverage.count) === d.id; })) === null || _a === void 0 ? void 0 : _a.label) || '', undefined, { onMissingTranslation: function () { return ''; } })),\n React.createElement(core_1.Typography, { variant: \"body1\", align: \"center\" }, \"\".concat((weekAverage.sleepRating / weekAverage.count).toFixed(1))),\n React.createElement(core_1.Typography, { variant: \"caption\", display: \"block\", className: classes.ratingDescription }, translate('sleepDiary.sleepRatingDescription')))) : (React.createElement(core_1.Typography, { variant: \"caption\" }, translate('sleepDiary.noEntriesForThisWeek'))))),\n React.createElement(InfoBox_1.default, { heading: translate('sleepDiary.bedtimePlan'), Icon: icons_1.AlarmIcon, ActionPopup: EditBedtimePlan_1.default, ActionPopupProps: { bedtimePlan: bedtimePlan }, actionText: translate('sleepDiary.editSleepPlan'), actionPopupHeading: translate('sleepDiary.bedtimePlan') }, hasBedtimePlan ? (React.createElement(React.Fragment, null,\n React.createElement(\"div\", { className: classes.bedPlanLine },\n React.createElement(image_1.MoonIcon, { className: classes.bedPlanIcon }),\n React.createElement(core_1.Typography, null, bedtimePlan.bedTime)),\n React.createElement(\"div\", { className: classes.bedPlanLine },\n React.createElement(icons_1.SunIcon, { className: classes.bedPlanIcon }),\n React.createElement(core_1.Typography, null, bedtimePlan.wakeTime)))) : (React.createElement(core_1.Typography, { variant: \"caption\" }, translate('sleepDiary.noSleepPlanCreated'))))),\n React.createElement(\"div\", { className: (0, classnames_1.default)(classes.content, classes.chartContent) },\n React.createElement(core_1.Typography, { variant: \"h5\", className: classes.chartTitle, gutterBottom: true }, translate('sleepDiary.history')),\n React.createElement(\"div\", { className: classes.chartScrollContainer, style: { width: chartWidth } },\n hasRegistrationsForWeek ? (React.createElement(recharts_1.LineChart, { width: chartWidth, height: 300, data: selectedWeekEntries.map(function (d) {\n var _a, _b, _c, _d;\n return ({\n x: d.isoDateString, y: (_a = d.entry) === null || _a === void 0 ? void 0 : _a.sleepQuality, sleepAtemptTime: (_b = d.entry) === null || _b === void 0 ? void 0 : _b.sleepAtemptTime, sleepTime: (_c = d.entry) === null || _c === void 0 ? void 0 : _c.sleepTime, totalSleepMinutes: (_d = d.entry) === null || _d === void 0 ? void 0 : _d.totalSleepMinutes,\n });\n }), margin: { top: 0, right: 16, bottom: 0, left: 160 } },\n React.createElement(recharts_1.YAxis, { domain: [50, 100], ticks: [50, 60, 70, 80, 90, 100], tickFormatter: function (t) { return \"\".concat(t, \" %\"); } }),\n React.createElement(recharts_1.Line, { dataKey: \"y\", strokeWidth: 4, stroke: theme.palette.secondary.main, dot: { stroke: theme.palette.primary.main, fill: theme.palette.primary.main, r: 8 } }),\n React.createElement(recharts_1.CartesianGrid, { vertical: false }),\n React.createElement(recharts_1.Tooltip, { content: React.createElement(HistoryGraphTooltip, null) }))) : (React.createElement(core_1.Typography, { variant: \"body2\", align: \"center\", className: classes.noRegistrations }, \"\".concat(translate('sleepDiary.noEntriesForThisWeek'), \". \").concat(translate('sleepDiary.clickDateToRegister')))),\n React.createElement(SleepDetailsTable_1.default, { data: selectedWeekEntries, hasRegistrations: hasRegistrationsForWeek }))))));\n};\nexports.default = SleepDiary;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar dateUtils_1 = require(\"../../../../youwell-common/dateUtils\");\nvar constants_1 = require(\"../constants\");\nvar icons_1 = require(\"../../../../common/icons\");\nvar image_1 = require(\"../../../../common/image\");\nvar useStyles = (0, core_1.makeStyles)(function (theme) {\n var _a;\n return ({\n root: {\n boxShadow: theme.shadows[2],\n background: theme.palette.common.white,\n },\n labelSection: {\n borderRight: theme.youwell.borders.dim,\n textAlign: 'right',\n fontWeight: 500,\n minWidth: 200,\n },\n valueSection: (_a = {\n textAlign: 'center',\n minWidth: 200\n },\n _a[theme.breakpoints.down('xs')] = {\n minWidth: 100,\n },\n _a),\n labelWrapper: {\n display: 'flex',\n justifyContent: 'end',\n alignItems: 'center',\n },\n sleepEfficiency: {\n borderRadius: theme.youwell.shapes.borderRadiusFlatter,\n color: theme.palette.common.white,\n padding: theme.spacing(2, 4),\n },\n goodSleep: {\n backgroundColor: theme.palette.secondary.main,\n },\n badSleep: {\n backgroundColor: theme.palette.error.main,\n },\n divider: {\n borderBottom: theme.youwell.borders.normal,\n },\n icons: {\n marginLeft: theme.spacing(2),\n verticalAlign: 'middle',\n },\n });\n}, { name: 'DaySummaryTable' });\nvar DaySummaryTable = function (_a) {\n var _b, _c, _d, _e, _f, _g, _h, _j;\n var day = _a.day;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var sleepEfficiency = (day.totalSleepMinutes && day.totalBedMinutes) ? Number(((day.totalSleepMinutes / day.totalBedMinutes)) * 100).toFixed(0) : 0;\n return (React.createElement(core_1.Table, { className: classes.root },\n React.createElement(core_1.TableBody, null,\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.labelSection }, translate('sleepDiary.sleepQuality')),\n React.createElement(core_1.TableCell, { className: classes.valueSection }, day.totalSleepMinutes && day.totalBedMinutes ? (React.createElement(\"span\", { className: (0, classnames_1.default)(classes.sleepEfficiency, sleepEfficiency < 70 ? classes.badSleep : classes.goodSleep) }, \"\".concat(sleepEfficiency, \"%\"))) : translate('sleepDiary.registrationMissing'))),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.labelSection }, translate('sleepDiary.totalSleepMinutes')),\n React.createElement(core_1.TableCell, { className: classes.valueSection }, day.totalSleepMinutes ? ((0, dateUtils_1.hourCount)(day.totalSleepMinutes, translate)) : translate('sleepDiary.registrationMissing'))),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: (0, classnames_1.default)(classes.labelSection, classes.divider) },\n React.createElement(\"div\", { className: classes.labelWrapper },\n translate('sleepDiary.totalBedMinutes'),\n React.createElement(\"span\", { className: classes.icons },\n React.createElement(icons_1.SleepIcon, { className: classes.icons })))),\n React.createElement(core_1.TableCell, { className: (0, classnames_1.default)(classes.valueSection, classes.divider) }, day.totalBedMinutes ? (0, dateUtils_1.hourCount)(day.totalBedMinutes, translate) : (translate('sleepDiary.registrationMissing')))),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.labelSection }, translate('sleepDiary.dayView.daytimeActivityRatings')),\n React.createElement(core_1.TableCell, { className: classes.valueSection }, constants_1.daytimeActivityRatings.find(function (d) { return d.id === day.daytimeActivityRating; }) ? (translate(\"\".concat((_b = constants_1.daytimeActivityRatings.find(function (d) { return d.id === day.daytimeActivityRating; })) === null || _b === void 0 ? void 0 : _b.label))) : (translate('sleepDiary.registrationMissing')))),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.labelSection },\n React.createElement(\"div\", { className: classes.labelWrapper },\n React.createElement(\"div\", null, translate('sleepDiary.dayView.dayTimeNaps')),\n React.createElement(\"span\", { className: classes.icons },\n React.createElement(image_1.SleepSmileyIcon, null)))),\n React.createElement(core_1.TableCell, { className: classes.valueSection }, day.daytimeNaps && day.daytimeNaps.length > 0 ? day.daytimeNaps.map(function (nap) {\n var _a;\n return (React.createElement(\"div\", { key: (_a = nap.sleepTime) === null || _a === void 0 ? void 0 : _a.toString() }, nap.wakeTime && nap.sleepTime\n ? (React.createElement(React.Fragment, null,\n React.createElement(\"span\", null, \"\".concat((0, dateUtils_1.hourCount)((0, dateUtils_1.getNumberOfMinutes)(nap.sleepTime, nap.wakeTime), translate), \" \")),\n React.createElement(\"span\", null, \"\".concat(translate('sleepDiary.dayView.at'), \" \").concat((0, dateUtils_1.getTimePartForInput)(nap.sleepTime))))) : (React.createElement(\"span\", null, \" - \".concat(translate('sleepDiary.dayView.at'), \" \").concat((0, dateUtils_1.getTimePartForInput)(nap.sleepTime))))));\n }) : ((_c = day.sleepProperties) === null || _c === void 0 ? void 0 : _c.hasDaytimeNaps) === false ? translate('sleepDiary.none') : translate('sleepDiary.registrationMissing'))),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: (0, classnames_1.default)(classes.labelSection, classes.divider) },\n React.createElement(\"div\", { className: classes.labelWrapper },\n React.createElement(\"div\", null,\n React.createElement(\"div\", null, translate('sleepDiary.dayView.sleepMedication')),\n React.createElement(\"div\", null, translate('sleepDiary.dayView.alcohol'))),\n React.createElement(\"span\", { className: classes.icons },\n React.createElement(image_1.MedicineIcon, null)))),\n React.createElement(core_1.TableCell, { className: (0, classnames_1.default)(classes.valueSection, classes.divider) }, ((_d = day.sleepProperties) === null || _d === void 0 ? void 0 : _d.sleepMedication) ? (day.sleepProperties.sleepMedication) : translate('sleepDiary.none'))),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.labelSection },\n React.createElement(\"div\", { className: classes.labelWrapper },\n React.createElement(\"div\", null, translate('sleepDiary.dayView.gotToBed')),\n React.createElement(\"span\", { className: classes.icons },\n React.createElement(image_1.MoonIcon, null)))),\n React.createElement(core_1.TableCell, { className: classes.valueSection }, day.bedTime ? (0, dateUtils_1.getTimePartForInput)(day.bedTime) : (translate('sleepDiary.registrationMissing')))),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.labelSection },\n React.createElement(\"div\", { className: classes.labelWrapper },\n React.createElement(\"div\", null, translate('sleepDiary.dayView.tiredToSleep')),\n React.createElement(\"span\", { className: classes.icons },\n React.createElement(image_1.SleepSmileyIcon, null)))),\n React.createElement(core_1.TableCell, { className: classes.valueSection }, day.sleepAtemptTime ? (0, dateUtils_1.getTimePartForInput)(day.sleepAtemptTime) : (translate('sleepDiary.registrationMissing')))),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.labelSection },\n React.createElement(\"div\", { className: classes.labelWrapper },\n React.createElement(\"div\", null, translate('sleepDiary.dayView.fellAsleep')),\n React.createElement(\"span\", { className: classes.icons },\n React.createElement(image_1.SleepSmileyIcon, null)))),\n React.createElement(core_1.TableCell, { className: classes.valueSection }, day.sleepTime ? (0, dateUtils_1.getTimePartForInput)(day.sleepTime) : translate('sleepDiary.registrationMissing'))),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.labelSection },\n React.createElement(\"div\", { className: classes.labelWrapper },\n React.createElement(\"div\", null, translate('sleepDiary.dayView.awake')),\n React.createElement(\"span\", { className: classes.icons },\n React.createElement(image_1.AwakeSmileyIcon, null)))),\n React.createElement(core_1.TableCell, { className: classes.valueSection }, ((_e = day.sleepProperties) === null || _e === void 0 ? void 0 : _e.numberOfNightWakeups) ? (\"\".concat((_f = day.sleepProperties) === null || _f === void 0 ? void 0 : _f.numberOfNightWakeups, \" \").concat(translate('sleepDiary.dayView.times'))) : ((_g = day.sleepProperties) === null || _g === void 0 ? void 0 : _g.numberOfNightWakeups) === 0 ? '-' : translate('sleepDiary.registrationMissing'))),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: (0, classnames_1.default)(classes.labelSection, classes.divider) },\n React.createElement(\"div\", { className: classes.labelWrapper },\n React.createElement(\"div\", null, translate('sleepDiary.nightWakeupsTotalMinutes')),\n React.createElement(\"span\", { className: classes.icons },\n React.createElement(image_1.AwakeSmileyIcon, null)))),\n React.createElement(core_1.TableCell, { className: (0, classnames_1.default)(classes.valueSection, classes.divider) }, ((_h = day.sleepProperties) === null || _h === void 0 ? void 0 : _h.nightWakeupsTotalMinutes) ? (\"\".concat(day.sleepProperties.nightWakeupsTotalMinutes, \" \").concat(translate('sleepDiary.dayView.min'))) : ('-'))),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.labelSection },\n React.createElement(\"div\", { className: classes.labelWrapper },\n React.createElement(\"div\", null, translate('sleepDiary.dayView.youWokeUp')),\n React.createElement(\"span\", { className: classes.icons },\n React.createElement(icons_1.SunIcon, null)))),\n React.createElement(core_1.TableCell, { className: classes.valueSection }, day.wakeTime ? ((0, dateUtils_1.getTimePartForInput)(day.wakeTime)) : (translate('sleepDiary.registrationMissing')))),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { align: \"center\", className: classes.labelSection },\n React.createElement(\"div\", { className: classes.labelWrapper },\n React.createElement(\"div\", null, translate('sleepDiary.dayView.youGotOutOfBed')),\n React.createElement(\"span\", { className: classes.icons },\n React.createElement(image_1.WakeUpIcon, null)))),\n React.createElement(core_1.TableCell, { className: classes.valueSection }, day.outOfBedTime ? ((0, dateUtils_1.getTimePartForInput)(day.outOfBedTime)) : (translate('sleepDiary.registrationMissing')))),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.labelSection }, translate('sleepDiary.yourSleepRating')),\n React.createElement(core_1.TableCell, { className: classes.valueSection }, day.sleepRating ? (translate(((_j = constants_1.sleepRatings.find(function (d) { return day.sleepRating === d.id; })) === null || _j === void 0 ? void 0 : _j.label) || '', undefined, { onMissingTranslation: function () { var _a; return ((_a = day.sleepRating) === null || _a === void 0 ? void 0 : _a.toString()) || ''; } })) : (translate('sleepDiary.registrationMissing')))))));\n};\nexports.default = DaySummaryTable;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar connected_react_router_1 = require(\"connected-react-router\");\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar store_1 = require(\"../../../../app/store\");\nvar dateUtils_1 = require(\"../../../../youwell-common/dateUtils\");\nvar urls_1 = __importDefault(require(\"../../../../app/urls\"));\nvar icons_1 = require(\"../../../../common/icons\");\nvar arrayUtils_1 = require(\"../../../../youwell-common/arrayUtils\");\nvar utils_1 = require(\"../utils\");\nvar RegisterSleepMenu_1 = __importDefault(require(\"./RegisterSleepMenu\"));\nvar components_1 = require(\"../../../../common/components\");\nvar sleepService_1 = require(\"../../../../app/services/sleepService\");\nvar DaySummaryTable_1 = __importDefault(require(\"./DaySummaryTable\"));\nvar useStyles = (0, core_1.makeStyles)(function (theme) {\n var _a, _b, _c, _d, _e;\n return ({\n modalContentAndActionsWrapper: (_a = {\n display: 'flex',\n alignItems: 'center'\n },\n _a[theme.breakpoints.down('sm')] = {\n flexDirection: 'column',\n },\n _a),\n modalContent: {\n display: 'flex',\n flexDirection: 'column',\n margin: theme.spacing(1),\n '&:focus': {\n outline: 'none',\n },\n },\n top: (_b = {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n margin: theme.spacing(12, 0, 2, 0)\n },\n _b[theme.breakpoints.down('md')] = {\n margin: theme.spacing(2, 0, 2, 0),\n },\n _b),\n modalActions: (_c = {\n margin: theme.spacing(2)\n },\n _c[theme.breakpoints.down('sm')] = {\n margin: theme.spacing(0, 2, 2, 2),\n width: '75%',\n },\n _c[theme.breakpoints.down('xs')] = {\n width: '100%',\n },\n _c),\n modalActionText: {\n margin: theme.spacing(2, 0, 3, 2),\n },\n modalActionButton: (_d = {\n padding: theme.spacing(1, 4),\n marginLeft: theme.spacing(2)\n },\n _d[theme.breakpoints.down('xs')] = {\n padding: theme.spacing(1, 2),\n },\n _d),\n registerItems: (_e = {\n display: 'inline-block'\n },\n _e[theme.breakpoints.down('xs')] = {\n display: 'block',\n paddingBottom: theme.spacing(5),\n },\n _e),\n btnSection: {\n display: 'flex',\n justifyContent: 'flex-end',\n padding: theme.spacing(2, 1),\n },\n wellDoneTextAndIconWrapper: {\n display: 'flex',\n },\n thumbsUpIcon: {\n color: theme.palette.secondary.main,\n marginRight: theme.spacing(1),\n },\n wellDoneText: {\n fontWeight: 500,\n },\n fillOutMissingNightsText: {\n fontWeight: 500,\n },\n reminderInfo: {\n margin: theme.spacing(2),\n },\n });\n}, { name: 'DayView' });\nvar DayView = function (_a) {\n var dateString = _a.date, open = _a.open, onClose = _a.onClose;\n var classes = useStyles();\n var dispatch = (0, store_1.useYouwellDispatch)();\n var translate = (0, translate_1.default)();\n var _b = React.useState(false), showReminderText = _b[0], setShowReminderText = _b[1];\n var sleepEntries = (0, store_1.useYouwellSelector)(function (state) { return (0, arrayUtils_1.sortByDateAscending)(state.sleepDataStore.entries, 'date') || []; });\n var date = React.useMemo(function () { return (0, dateUtils_1.getLocalDate)(dateString); }, [dateString]);\n var day = sleepEntries.find(function (d) { return (0, dateUtils_1.isSameDate)(d.date, date); }) || { date: date };\n var sleepLookup = (0, utils_1.getSleepLookup)(sleepEntries);\n var missingNights = (0, utils_1.missingRegistrationsLastWeek)(sleepLookup);\n var skipAllMissingNights = function () {\n missingNights.forEach(function (missingNight) {\n var sleepData = {\n entry: {\n date: missingNight,\n sleepProperties: {\n userSkippedRegistering: true,\n },\n },\n };\n (0, sleepService_1.updateSleepEntry)(dispatch, sleepData);\n });\n dispatch((0, connected_react_router_1.push)(urls_1.default.inside.pages.sleepDiary));\n };\n var edit = function () {\n onClose();\n dispatch((0, connected_react_router_1.push)(\"\".concat(urls_1.default.inside.pages.sleepDiary, \"/log/\").concat((0, dateUtils_1.isoDate)(date))));\n };\n var notNow = function () {\n setShowReminderText(false);\n dispatch((0, connected_react_router_1.push)(urls_1.default.inside.pages.sleepDiary));\n };\n return (React.createElement(components_1.OverlayModal, { open: open, \n // onClose={close} // should not be closed by clicking outside\n wide: true },\n React.createElement(\"div\", { className: classes.modalContentAndActionsWrapper },\n React.createElement(\"div\", { className: classes.modalContent },\n React.createElement(\"div\", { className: classes.top },\n React.createElement(\"div\", null,\n React.createElement(core_1.Typography, { variant: \"h6\" }, translate('sleepDiary.registration')),\n React.createElement(core_1.Typography, { variant: \"h6\" }, (0, dateUtils_1.isToday)(date) ? \"\".concat(translate('sleepDiary.lastNight'), \" \").concat((0, dateUtils_1.longDate)(date, translate)) : (0, dateUtils_1.longDate)(date, translate))),\n React.createElement(core_1.Button, { onClick: edit }, translate('sleepDiary.change'))),\n React.createElement(DaySummaryTable_1.default, { day: day })),\n React.createElement(\"div\", { className: classes.modalActions }, (missingNights === null || missingNights === void 0 ? void 0 : missingNights.length) > 0 ? (React.createElement(React.Fragment, null,\n React.createElement(\"div\", { className: classes.modalActionText }, day.totalSleepMinutes ? (React.createElement(\"div\", { className: classes.wellDoneTextAndIconWrapper },\n React.createElement(icons_1.ThumbUpIcon, { className: classes.thumbsUpIcon }),\n React.createElement(core_1.Typography, { className: classes.wellDoneText }, missingNights.length === 1 ? translate('sleepDiary.dayView.wellDoneOneNightMissing') : translate('sleepDiary.dayView.wellDoneMultipleNightsMissing')))) : (React.createElement(core_1.Typography, { className: classes.fillOutMissingNightsText }, translate('sleepDiary.dayView.fillOutMissingNights')))),\n React.createElement(\"div\", { className: classes.registerItems },\n React.createElement(RegisterSleepMenu_1.default, { onClick: onClose, numberOfNightCards: 3 }),\n showReminderText ? (React.createElement(React.Fragment, null,\n React.createElement(\"div\", { className: classes.reminderInfo },\n React.createElement(core_1.Typography, null, translate('sleepDiary.easyToForgetDetails'))),\n React.createElement(\"div\", { className: classes.btnSection },\n React.createElement(core_1.Button, { className: classes.modalActionButton, variant: \"outlined\", color: \"secondary\", onClick: skipAllMissingNights }, translate('sleepDiary.dayView.dontAskMeAgain')),\n React.createElement(core_1.Button, { className: classes.modalActionButton, variant: \"contained\", color: \"secondary\", onClick: notNow }, translate('sleepDiary.dayView.registerLater'))))) : (React.createElement(\"div\", { className: classes.btnSection },\n React.createElement(core_1.Button, { className: classes.modalActionButton, variant: \"outlined\", color: \"secondary\", onClick: function () { return setShowReminderText(true); } }, translate('sleepDiary.dayView.notNow'))))))) : (React.createElement(React.Fragment, null,\n React.createElement(\"div\", { className: classes.modalActionText },\n React.createElement(icons_1.ThumbUpIcon, { className: classes.thumbsUpIcon }),\n React.createElement(core_1.Typography, null, translate('sleepDiary.dayView.wellDone'))),\n React.createElement(core_1.Button, { className: classes.modalActionButton, variant: \"contained\", color: \"primary\", component: react_router_dom_1.Link, to: urls_1.default.inside.pages.sleepDiary }, translate('sleepDiary.dayView.close'))))))));\n};\nexports.default = DayView;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar icons_1 = require(\"../../../../common/icons\");\nvar components_1 = require(\"../../../../common/components\");\nvar utils_1 = require(\"../utils\");\nvar constants_1 = require(\"../constants\");\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar useStyles = (0, core_1.makeStyles)(function (theme) {\n var _a, _b, _c;\n return ({\n root: (_a = {\n background: theme.palette.common.white,\n color: theme.palette.common.black,\n borderRadius: theme.youwell.shapes.borderRadiusFlatter,\n marginTop: theme.spacing(1),\n padding: theme.spacing(1.5),\n display: 'flex',\n alignItems: 'center',\n width: '100%'\n },\n _a[theme.breakpoints.down('xs')] = {\n flexDirection: 'column',\n justifyContent: 'space-between',\n alignItems: 'flex-end',\n },\n _a),\n entry: (_b = {\n marginRight: theme.spacing(8),\n display: 'flex',\n alignItems: 'center'\n },\n _b[theme.breakpoints.down('xs')] = {\n width: '100%',\n marginRight: theme.spacing(0),\n marginBottom: theme.spacing(1),\n },\n _b),\n entryLabel: (_c = {\n marginRight: theme.spacing(2)\n },\n _c[theme.breakpoints.down('xs')] = {\n flex: '1 1 auto',\n },\n _c),\n flex: {\n flex: '1 1 auto',\n },\n deleteIcon: {\n color: theme.palette.secondary.main,\n },\n notValidInput: {\n color: theme.palette.error.main,\n marginTop: theme.spacing(1),\n },\n });\n}, { name: 'DaytimeNaps' });\nvar DaytimeNap = function (_a) {\n var value = _a.value, onChange = _a.onChange, onDelete = _a.onDelete, date = _a.date, daytimeNaps = _a.daytimeNaps, listIndex = _a.listIndex, validationItem = _a.validationItem;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var validateInput = function (name, changedValue) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;\n if (!daytimeNaps)\n return true;\n var currWakeTime = (_b = (_a = daytimeNaps[listIndex]) === null || _a === void 0 ? void 0 : _a.wakeTime) !== null && _b !== void 0 ? _b : null;\n var prevWakeTime = (_d = (_c = daytimeNaps[listIndex - 1]) === null || _c === void 0 ? void 0 : _c.wakeTime) !== null && _d !== void 0 ? _d : null;\n var currSleepTime = (_f = (_e = daytimeNaps[listIndex]) === null || _e === void 0 ? void 0 : _e.sleepTime) !== null && _f !== void 0 ? _f : null;\n var nextSleepTime = (_h = (_g = daytimeNaps[listIndex + 1]) === null || _g === void 0 ? void 0 : _g.sleepTime) !== null && _h !== void 0 ? _h : null;\n var prevSleepTime = (_k = (_j = daytimeNaps[listIndex - 1]) === null || _j === void 0 ? void 0 : _j.sleepTime) !== null && _k !== void 0 ? _k : null;\n var validation = true;\n if (name === utils_1.sleepLoggingItemNames.sleepTime) {\n if (currSleepTime) {\n var isLaterThanPrevWakeTimeOrPrevSleepTime = prevWakeTime ? (0, utils_1.validateTimeLaterThanWithActualDate)(prevWakeTime, date, utils_1.SleepLoggingType.dayLogging)(changedValue) : prevSleepTime ? (0, utils_1.validateTimeLaterThanWithActualDate)(prevSleepTime, date, utils_1.SleepLoggingType.dayLogging)(changedValue) : true;\n var isLaterThanCurrWakeTimeOrNextSleepTime = currWakeTime ? (0, utils_1.validateTimeLaterThanWithActualDate)(currWakeTime, date, utils_1.SleepLoggingType.dayLogging)(changedValue) : nextSleepTime ? (0, utils_1.validateTimeLaterThanWithActualDate)(nextSleepTime, date, utils_1.SleepLoggingType.dayLogging)(changedValue) : false;\n validation = isLaterThanPrevWakeTimeOrPrevSleepTime && !isLaterThanCurrWakeTimeOrNextSleepTime;\n }\n }\n if (name === utils_1.sleepLoggingItemNames.wakeTime) {\n if (currWakeTime) {\n var isLaterThanNextSleepTime = nextSleepTime ? (0, utils_1.validateTimeLaterThanWithActualDate)(nextSleepTime, date, utils_1.SleepLoggingType.dayLogging)(changedValue) : false;\n var isLaterThanCurrSleepTime = currSleepTime ? (0, utils_1.validateTimeLaterThanWithActualDate)(currSleepTime, date, utils_1.SleepLoggingType.dayLogging)(changedValue) : true;\n validation = isLaterThanCurrSleepTime && !isLaterThanNextSleepTime;\n }\n }\n return validation;\n };\n var handleChange = function (name) { return function (changedValue) {\n var _a;\n onChange(__assign(__assign({}, value), (_a = {}, _a[name] = (0, utils_1.getTimeWithActualDate)(changedValue, date), _a)));\n }; };\n var validation = function (name, newValue) {\n var _a, _b;\n if ((validationItem === null || validationItem === void 0 ? void 0 : validationItem.length) > 0) {\n if (name === utils_1.sleepLoggingItemNames.sleepTime && ((_a = validationItem[0]) === null || _a === void 0 ? void 0 : _a.validation.sleep) === false) {\n return validateInput(utils_1.sleepLoggingItemNames.sleepTime, value.sleepTime);\n }\n if (name === utils_1.sleepLoggingItemNames.wakeTime && ((_b = validationItem[0]) === null || _b === void 0 ? void 0 : _b.validation.wake) === false) {\n return validateInput(utils_1.sleepLoggingItemNames.wakeTime, value.wakeTime);\n }\n }\n return validateInput(name, newValue);\n };\n return (React.createElement(React.Fragment, null,\n value.wakeTime && !value.sleepTime && (React.createElement(core_1.Typography, { className: classes.notValidInput }, translate('sleepDiary.mustApplySleepTime'))),\n React.createElement(\"div\", { className: classes.root },\n React.createElement(\"div\", { className: classes.entry },\n React.createElement(core_1.Typography, { variant: \"subtitle1\", className: classes.entryLabel }, translate('sleepDiary.fellAsleep')),\n React.createElement(components_1.TimePicker, { value: value.sleepTime, onChange: handleChange(utils_1.sleepLoggingItemNames.sleepTime), validation: function (d) { return validation(utils_1.sleepLoggingItemNames.sleepTime, d); }, defaultValue: constants_1.defaultDaytimeSleepTime, validateWithoutValueChange: true })),\n React.createElement(\"div\", { className: classes.entry },\n React.createElement(core_1.Typography, { variant: \"subtitle1\", className: classes.entryLabel }, translate('sleepDiary.wokeUp')),\n React.createElement(components_1.TimePicker, { value: value.wakeTime, onChange: handleChange(utils_1.sleepLoggingItemNames.wakeTime), validation: function (d) { return validation(utils_1.sleepLoggingItemNames.wakeTime, d); }, defaultValue: constants_1.defaultDaytimeWakeTime, validateWithoutValueChange: true })),\n React.createElement(\"div\", { className: classes.flex }),\n React.createElement(core_1.IconButton, { onClick: onDelete, size: \"small\" },\n React.createElement(icons_1.DeleteIcon, { className: classes.deleteIcon })))));\n};\nDaytimeNap.defaultProps = {\n daytimeNaps: null,\n};\nexports.default = DaytimeNap;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar store_1 = require(\"../../../../app/store\");\nvar AuthStore = __importStar(require(\"../../../../app/store/AuthStore\"));\nvar constants_1 = require(\"../../../../youwell-common/constants\");\nvar components_1 = require(\"../../../../common/components\");\nvar constants_2 = require(\"../constants\");\nvar dateUtils_1 = require(\"../../../../youwell-common/dateUtils\");\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return (0, core_1.createStyles)({\n root: {},\n table: {\n margin: theme.spacing(8, 0),\n },\n timePicker: {\n marginBottom: -38, // removes unused space for validation-message..\n },\n actions: {\n marginTop: theme.spacing(15),\n display: 'flex',\n justifyContent: 'flex-end',\n },\n}); }, { name: 'EditBedtimePlan' });\nvar EditBedtimePlan = function (_a) {\n var bedtimePlan = _a.bedtimePlan, onClose = _a.onClose;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var dispatch = (0, store_1.useYouwellDispatch)();\n var profileData = (0, store_1.useYouwellSelector)(function (state) { return state.auth.profileData; });\n var _b = React.useState({ bedTime: null, wakeTime: null }), planDetails = _b[0], setPlanDetails = _b[1];\n var _c = React.useState(false), hasChanged = _c[0], setHasChanged = _c[1];\n var handleChange = function (name) { return function (date) {\n setPlanDetails(function (prev) {\n var _a;\n return (__assign(__assign({}, prev), (_a = {}, _a[name] = date, _a)));\n });\n setHasChanged(true);\n }; };\n React.useEffect(function () {\n if (bedtimePlan) {\n setPlanDetails({\n bedTime: (0, dateUtils_1.getLocalDate)(bedtimePlan.bedTime, false),\n wakeTime: (0, dateUtils_1.getLocalDate)(bedtimePlan.wakeTime, false),\n });\n }\n }, [bedtimePlan]);\n var save = function () {\n var _a;\n var userData = __assign(__assign({}, profileData === null || profileData === void 0 ? void 0 : profileData.extendedProperties), (_a = {}, _a[constants_1.userDataProperties.bedtimePlan.bedTime] = (0, dateUtils_1.timeOnly)(planDetails.bedTime), _a[constants_1.userDataProperties.bedtimePlan.wakeTime] = (0, dateUtils_1.timeOnly)(planDetails.wakeTime), _a));\n dispatch(AuthStore.actionCreators.updateUserData(userData, { callback: onClose }));\n };\n return (React.createElement(\"div\", { className: classes.root },\n React.createElement(core_1.Table, { className: classes.table },\n React.createElement(core_1.TableBody, null,\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, null, translate('sleepDiary.plannedBedTime')),\n React.createElement(core_1.TableCell, { align: \"right\" },\n React.createElement(components_1.TimePicker, { className: classes.timePicker, value: planDetails.bedTime, onChange: handleChange('bedTime'), defaultValue: constants_2.defaultSleepTime, disableUnderline: true, inputAdornmentBeforeInput: true }))),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, null, translate('sleepDiary.plannedWakeTime')),\n React.createElement(core_1.TableCell, { align: \"right\" },\n React.createElement(components_1.TimePicker, { className: classes.timePicker, value: planDetails.wakeTime, onChange: handleChange('wakeTime'), defaultValue: constants_2.defaultWakeTime, disableUnderline: true, inputAdornmentBeforeInput: true }))))),\n React.createElement(\"div\", { className: classes.actions },\n React.createElement(core_1.Button, { onClick: save, disabled: !hasChanged }, translate('common.save')))));\n};\nEditBedtimePlan.defaultProps = {\n onClose: null,\n};\nexports.default = EditBedtimePlan;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar components_1 = require(\"../../../../common/components\");\nvar useStyles = (0, core_1.makeStyles)(function (theme) {\n var _a;\n return (0, core_1.createStyles)({\n root: (_a = {\n flex: '1 1 30%',\n background: theme.youwell.colors.defaultBackground,\n borderRadius: theme.youwell.shapes.borderRadius,\n boxShadow: theme.shadows[3],\n padding: theme.spacing(2, 4),\n display: 'flex',\n flexDirection: 'column',\n '&:nth-child(2)': {\n margin: theme.spacing(0, 2),\n }\n },\n _a[theme.breakpoints.down('xs')] = {\n flexBasis: '80%',\n margin: theme.spacing(2),\n },\n _a),\n icon: {\n margin: theme.spacing(1, 0),\n },\n heading: {},\n subHeading: {},\n content: {\n flex: '1 1 auto',\n marginTop: theme.spacing(2),\n },\n actionButton: {\n marginTop: theme.spacing(2),\n },\n });\n}, { name: 'InfoBox' });\nvar InfoBox = function (_a) {\n var heading = _a.heading, subHeading = _a.subHeading, Icon = _a.Icon, children = _a.children, ActionPopup = _a.ActionPopup, ActionPopupProps = _a.ActionPopupProps, actionText = _a.actionText, actionPopupHeading = _a.actionPopupHeading, backgroundColor = _a.backgroundColor;\n var classes = useStyles();\n return (React.createElement(\"div\", { className: classes.root, style: { background: backgroundColor } },\n Icon && React.createElement(Icon, { className: classes.icon }),\n React.createElement(core_1.Typography, { variant: \"h6\", className: classes.heading }, heading),\n subHeading && (React.createElement(core_1.Typography, { className: classes.subHeading }, subHeading)),\n React.createElement(\"div\", { className: classes.content }, children),\n ActionPopup && (React.createElement(components_1.ModalAction, { modalHeading: actionPopupHeading || '', buttonProps: { className: classes.actionButton, variant: 'contained', color: 'secondary' }, buttonText: actionText, Modal: ActionPopup, ModalProps: ActionPopupProps }))));\n};\nInfoBox.defaultProps = {\n Icon: null,\n subHeading: null,\n ActionPopup: null,\n ActionPopupProps: null,\n actionText: null,\n actionPopupHeading: null,\n backgroundColor: null,\n};\nexports.default = InfoBox;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar core_1 = require(\"@material-ui/core\");\nvar React = __importStar(require(\"react\"));\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar DaytimeNap_1 = __importDefault(require(\"./DaytimeNap\"));\nvar utils_1 = require(\"../utils\");\nvar icons_1 = require(\"../../../../common/icons\");\nvar styles = function (theme) {\n var _a, _b, _c;\n return (0, core_1.createStyles)({\n root: {\n backgroundColor: theme.palette.background.default,\n },\n box: (_a = {\n backgroundColor: theme.palette.background.default,\n marginBottom: theme.spacing(4),\n boxShadow: theme.shadows[2],\n borderRadius: theme.youwell.shapes.borderRadius\n },\n _a[theme.breakpoints.down('xs')] = {\n padding: theme.spacing(2),\n },\n _a),\n entry: {\n '&+&': {\n marginTop: theme.spacing(6),\n },\n },\n entryTitle: {},\n dayTimeNapWrapper: (_b = {},\n _b[theme.breakpoints.down('xs')] = {\n display: 'flex',\n flexDirection: 'column',\n },\n _b),\n yesNoRadioBtns: {\n border: theme.youwell.borders.secondary,\n margin: theme.spacing(2, 2, 2, 0),\n padding: theme.spacing(1, 16, 1, 1),\n },\n input: {\n backgroundColor: theme.palette.common.white,\n },\n alwaysPresentContent: {\n padding: theme.spacing(4),\n borderRadius: theme.youwell.shapes.borderRadius,\n },\n toggleableContent: (_c = {\n backgroundColor: \"\".concat(theme.palette.secondary.main, \"20\"),\n padding: theme.spacing(5),\n margin: '0 auto'\n },\n _c[theme.breakpoints.down('xs')] = {\n maxWidth: '100%',\n padding: theme.spacing(2, 1),\n },\n _c),\n radioGroup: {\n display: 'flex',\n flexDirection: 'row',\n padding: theme.spacing(1, 0, 3, 0),\n },\n addDayTimeNapsBtnSection: {\n display: 'flex',\n justifyContent: 'flex-end',\n marginTop: theme.spacing(2),\n },\n notValidTimeInputOrder: {\n color: theme.palette.error.main,\n marginTop: theme.spacing(1),\n },\n });\n};\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return styles(theme); }, { name: 'LogNaps' });\nvar LogNaps = function (_a) {\n var _b, _c, _d;\n var values = _a.values, date = _a.date, disabled = _a.disabled, handleValueChange = _a.handleValueChange;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var addDaytimeNap = function () {\n var updated = __spreadArray(__spreadArray([], values.daytimeNaps || [], true), [{\n wakeTime: undefined,\n sleepTime: undefined,\n }], false);\n handleValueChange('daytimeNaps')(updated);\n };\n var removeDaytimeNap = function (indexToRemove) { return function () {\n var _a;\n var updated = (_a = values.daytimeNaps) === null || _a === void 0 ? void 0 : _a.filter(function (d, i) { return i !== indexToRemove; });\n handleValueChange('daytimeNaps')(updated);\n }; };\n var handleWakeupValueChange = function (wakeUpIndex) { return function (updatedValue) {\n var updated = values.daytimeNaps && values.daytimeNaps.map(function (d, i) { return (i === wakeUpIndex ? updatedValue : d); });\n handleValueChange('daytimeNaps')(updated);\n }; };\n var handleDayTimeNapChange = function (event) {\n var hasDaytimeNaps = event.target.value === 'true';\n var updated = __assign(__assign({}, values.sleepProperties), { hasDaytimeNaps: hasDaytimeNaps });\n handleValueChange('sleepProperties')(updated);\n if (hasDaytimeNaps) {\n addDaytimeNap();\n }\n else {\n handleValueChange('daytimeNaps')([]);\n }\n };\n var unValidDaytimeNaps = (0, utils_1.dayTimeNapsUnValidItems)(date, values.daytimeNaps);\n var hasDaytimeNaps = !!((_b = values.sleepProperties) === null || _b === void 0 ? void 0 : _b.hasDaytimeNaps);\n var hasNoDaytimeNaps = ((_c = values.sleepProperties) === null || _c === void 0 ? void 0 : _c.hasDaytimeNaps) !== undefined && !values.sleepProperties.hasDaytimeNaps;\n return (React.createElement(\"div\", { className: classes.root },\n React.createElement(\"div\", { className: classes.alwaysPresentContent },\n React.createElement(\"div\", { className: classes.entry },\n React.createElement(core_1.Typography, { variant: \"subtitle2\", className: classes.entryTitle }, translate('sleepDiary.dayTimeNaps')),\n React.createElement(core_1.RadioGroup, { className: classes.radioGroup, onChange: handleDayTimeNapChange },\n React.createElement(core_1.FormControlLabel, { disabled: disabled, className: (0, classnames_1.default)(classes.yesNoRadioBtns, classes.input), value: \"false\", control: React.createElement(core_1.Radio, { checked: hasNoDaytimeNaps }), label: translate('sleepDiary.no') }),\n React.createElement(core_1.FormControlLabel, { disabled: disabled, className: (0, classnames_1.default)(classes.yesNoRadioBtns, classes.input), value: \"true\", control: React.createElement(core_1.Radio, { checked: hasDaytimeNaps }), label: translate('sleepDiary.yes') })))),\n hasDaytimeNaps && (React.createElement(\"div\", { className: classes.toggleableContent },\n React.createElement(core_1.Typography, { variant: \"subtitle2\", className: classes.entryTitle }, translate('sleepDiary.dayTimeNapsDescription')),\n unValidDaytimeNaps.length > 0 && (React.createElement(core_1.Typography, { className: classes.notValidTimeInputOrder }, translate('sleepDiary.inCorrectSleepDataInputOrder'))),\n React.createElement(\"div\", { className: classes.dayTimeNapWrapper }, (_d = values.daytimeNaps) === null || _d === void 0 ? void 0 :\n _d.map(function (item, i) { return (React.createElement(DaytimeNap_1.default\n // eslint-disable-next-line react/no-array-index-key\n , { \n // eslint-disable-next-line react/no-array-index-key\n key: i, value: item, date: date, onChange: handleWakeupValueChange(i), onDelete: removeDaytimeNap(i), daytimeNaps: values.daytimeNaps, listIndex: i, validationItem: unValidDaytimeNaps === null || unValidDaytimeNaps === void 0 ? void 0 : unValidDaytimeNaps.filter(function (d) { return d.index === i; }) })); }),\n React.createElement(\"div\", { className: classes.addDayTimeNapsBtnSection },\n React.createElement(core_1.Button, { variant: \"contained\", color: \"secondary\", onClick: addDaytimeNap, startIcon: React.createElement(icons_1.AddIcon, null), disabled: disabled }, translate('sleepDiary.addSleepTime'))))))));\n};\nexports.default = LogNaps;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar core_1 = require(\"@material-ui/core\");\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar React = __importStar(require(\"react\"));\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar dateUtils_1 = require(\"../../../../youwell-common/dateUtils\");\nvar image_1 = require(\"../../../../common/image\");\nvar styles = function (theme) {\n var _a, _b, _c;\n return (0, core_1.createStyles)({\n box: (_a = {\n marginBottom: theme.spacing(4),\n boxShadow: theme.shadows[2],\n backgroundColor: theme.palette.background.default,\n borderRadius: theme.youwell.shapes.borderRadius\n },\n _a[theme.breakpoints.down('xs')] = {\n padding: theme.spacing(2),\n },\n _a),\n entry: {\n '&+&': {\n marginTop: theme.spacing(6),\n },\n },\n entryLabelFlexWrapper: (_b = {\n marginBottom: theme.spacing(1),\n display: 'flex'\n },\n _b[theme.breakpoints.down('xs')] = {\n flexDirection: 'column',\n },\n _b),\n textAndIconWrapper: {\n display: 'flex',\n },\n entryLabel: {\n marginRight: theme.spacing(2),\n },\n entryTitle: {},\n input: {\n backgroundColor: theme.palette.common.white,\n },\n selectInput: {\n border: theme.youwell.borders.dim,\n width: 200,\n height: 50,\n textAlign: 'center',\n margin: theme.spacing(1, 2, 1, 0),\n '& .MuiSelect-selectMenu': {\n display: 'flex',\n justifyContent: 'center',\n },\n },\n selectInputMenuItem: {\n display: 'flex',\n justifyContent: 'center',\n },\n yesNoRadioBtns: {\n border: theme.youwell.borders.secondary,\n margin: theme.spacing(2, 2, 2, 0),\n padding: theme.spacing(1, 16, 1, 1),\n },\n alwaysPresentContent: {\n padding: theme.spacing(4),\n borderRadius: theme.youwell.shapes.borderRadius,\n },\n toggleableContent: (_c = {\n backgroundColor: \"\".concat(theme.palette.secondary.main, \"20\"),\n padding: theme.spacing(5),\n margin: '0 auto'\n },\n _c[theme.breakpoints.down('xs')] = {\n maxWidth: '100%',\n padding: theme.spacing(2, 1),\n },\n _c),\n radioGroup: {\n display: 'flex',\n padding: theme.spacing(1, 0, 3, 0),\n },\n rowContainer: {\n flexDirection: 'row',\n },\n hoursAndMinutesInput: {\n display: 'flex',\n alignItems: 'center',\n },\n hoursAndMinutesInputHelperText: {\n padding: theme.spacing(0, 2, 0, 1),\n },\n numberOfWakeups: {\n backgroundColor: theme.palette.common.white,\n marginLeft: theme.spacing(1),\n },\n });\n};\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return styles(theme); }, { name: 'LogWakeups' });\nvar numberOfWakeups = [1, 2, 3, 4, 5];\nvar hours = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];\nvar minutes = [0, 10, 20, 30, 40, 50];\nvar LogWakeups = function (_a) {\n var _b, _c, _d, _e;\n var values = _a.values, handleValueChange = _a.handleValueChange, disabled = _a.disabled;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var timeValues = (0, dateUtils_1.getTimeValues)((_c = (_b = values.sleepProperties) === null || _b === void 0 ? void 0 : _b.nightWakeupsTotalMinutes) !== null && _c !== void 0 ? _c : 0);\n var handleNumberOfWakeupsChange = function (event) {\n var _a;\n var val = Number(event.target.value) || 0;\n var updated = __assign(__assign({}, values.sleepProperties), { numberOfNightWakeups: val, nightWakeupsTotalMinutes: val === 0 ? 0 : (_a = values.sleepProperties) === null || _a === void 0 ? void 0 : _a.nightWakeupsTotalMinutes });\n handleValueChange('sleepProperties')(updated);\n };\n var handleHoursChange = function (event) {\n var val = Number(event.target.value) || 0;\n var updated = __assign(__assign({}, values.sleepProperties), { nightWakeupsTotalMinutes: val * 60 + timeValues.minutes });\n handleValueChange('sleepProperties')(updated);\n };\n var handleMinutesChange = function (event) {\n var val = Number(event.target.value) || 0;\n var updated = __assign(__assign({}, values.sleepProperties), { nightWakeupsTotalMinutes: timeValues.hours * 60 + val });\n handleValueChange('sleepProperties')(updated);\n };\n var hasNighWakeups = ((_d = values.sleepProperties) === null || _d === void 0 ? void 0 : _d.numberOfNightWakeups) !== undefined && values.sleepProperties.numberOfNightWakeups > 0;\n var hasNoNighWakeups = ((_e = values.sleepProperties) === null || _e === void 0 ? void 0 : _e.numberOfNightWakeups) !== undefined && values.sleepProperties.numberOfNightWakeups === 0;\n return (React.createElement(\"div\", { className: classes.box },\n React.createElement(\"div\", { className: classes.alwaysPresentContent },\n React.createElement(\"div\", { className: classes.entry },\n React.createElement(\"div\", { className: classes.entryLabelFlexWrapper },\n React.createElement(\"div\", { className: classes.textAndIconWrapper },\n React.createElement(core_1.Typography, { variant: \"subtitle2\", className: classes.entryLabel }, translate('sleepDiary.nightWakeups')),\n React.createElement(image_1.AwakeSmileyIcon, null))),\n React.createElement(core_1.RadioGroup, { className: (0, classnames_1.default)(classes.radioGroup, classes.rowContainer), onChange: handleNumberOfWakeupsChange },\n React.createElement(core_1.FormControlLabel, { className: (0, classnames_1.default)(classes.yesNoRadioBtns, classes.input), value: 0, control: React.createElement(core_1.Radio, { checked: hasNoNighWakeups }), label: translate('sleepDiary.no'), disabled: disabled }),\n React.createElement(core_1.FormControlLabel, { className: (0, classnames_1.default)(classes.yesNoRadioBtns, classes.input), value: 1, control: React.createElement(core_1.Radio, { checked: hasNighWakeups }), label: translate('sleepDiary.yes'), disabled: disabled })))),\n hasNighWakeups && (React.createElement(\"div\", { className: classes.toggleableContent },\n React.createElement(core_1.Typography, { variant: \"subtitle2\", className: classes.entryTitle }, translate('sleepDiary.howManyTimesAwakeAtNight')),\n React.createElement(core_1.RadioGroup, { className: classes.radioGroup, onChange: handleNumberOfWakeupsChange }, numberOfWakeups.map(function (value) {\n var _a;\n return (React.createElement(core_1.FormControlLabel, { className: classes.numberOfWakeups, disabled: disabled, key: value, value: value, control: React.createElement(core_1.Radio, { checked: ((_a = values.sleepProperties) === null || _a === void 0 ? void 0 : _a.numberOfNightWakeups) === value }), label: translate(\"sleepDiary.howOftenAwake.\".concat(value)) }));\n })),\n React.createElement(core_1.Typography, { variant: \"subtitle2\", className: classes.entryTitle }, translate('sleepDiary.howLongAwakeAtNight')),\n React.createElement(\"div\", { className: classes.hoursAndMinutesInput },\n React.createElement(core_1.Select, { type: \"number\", className: (0, classnames_1.default)(classes.selectInput, classes.input), value: timeValues.hours, onChange: handleHoursChange, disabled: disabled, disableUnderline: true, MenuProps: {\n anchorOrigin: {\n vertical: 'bottom',\n horizontal: 'left',\n },\n transformOrigin: {\n vertical: 'top',\n horizontal: 'left',\n },\n getContentAnchorEl: null,\n } }, hours === null || hours === void 0 ? void 0 : hours.map(function (item) { return (React.createElement(core_1.MenuItem, { className: classes.selectInputMenuItem, key: item, value: item },\n item,\n item === 1 ? (React.createElement(core_1.Typography, { className: classes.hoursAndMinutesInputHelperText, variant: \"body2\" }, translate('time.hour')))\n : (React.createElement(core_1.Typography, { className: classes.hoursAndMinutesInputHelperText, variant: \"body2\" }, translate('time.hours'))))); })),\n React.createElement(core_1.Select, { type: \"number\", className: (0, classnames_1.default)(classes.selectInput, classes.input), value: timeValues.minutes, onChange: handleMinutesChange, disabled: disabled, disableUnderline: true, MenuProps: {\n anchorOrigin: {\n vertical: 'bottom',\n horizontal: 'left',\n },\n transformOrigin: {\n vertical: 'top',\n horizontal: 'left',\n },\n getContentAnchorEl: null,\n } }, minutes === null || minutes === void 0 ? void 0 : minutes.map(function (item) { return (React.createElement(core_1.MenuItem, { className: classes.selectInputMenuItem, key: item, value: item },\n item,\n item === 1 ? (React.createElement(core_1.Typography, { className: classes.hoursAndMinutesInputHelperText, variant: \"body2\" }, translate('time.minute')))\n : (React.createElement(core_1.Typography, { className: classes.hoursAndMinutesInputHelperText, variant: \"body2\" }, translate('time.minutes'))))); })))))));\n};\nexports.default = LogWakeups;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar connected_react_router_1 = require(\"connected-react-router\");\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar icons_1 = require(\"../../../../common/icons\");\nvar urls_1 = __importDefault(require(\"../../../../app/urls\"));\nvar dateUtils_1 = require(\"../../../../youwell-common/dateUtils\");\nvar store_1 = require(\"../../../../app/store\");\nvar arrayUtils_1 = require(\"../../../../youwell-common/arrayUtils\");\nvar utils_1 = require(\"../utils\");\nvar components_1 = require(\"../../../../common/components\");\nvar useStyles = (0, core_1.makeStyles)(function (theme) {\n var _a, _b, _c, _d, _e, _f;\n return ({\n modalContent: (_a = {},\n _a[theme.breakpoints.down('xs')] = {\n margin: theme.spacing(2, 1),\n },\n _a),\n header: {\n borderLeft: theme.youwell.borders.secondary,\n borderLeftWidth: 4,\n paddingLeft: theme.spacing(2),\n },\n headerTitle: {\n fontWeight: 500,\n },\n infoSection: (_b = {\n marginBottom: theme.spacing(2)\n },\n _b[theme.breakpoints.down('xs')] = {\n marginBottom: theme.spacing(0),\n },\n _b),\n infoSectionText: {\n margin: theme.spacing(0, 0, 2, 2),\n },\n infoSectionTextCaption: {\n fontWeight: 500,\n },\n importanceOfRegistrationInfoText: {\n marginTop: theme.spacing(2),\n },\n standaloneButtons: {\n display: 'flex',\n flexWrap: 'wrap',\n },\n registerButtons: (_c = {\n display: 'inline-block',\n marginTop: theme.spacing(2)\n },\n _c[theme.breakpoints.down('xs')] = {\n width: '100%',\n },\n _c),\n registerButtonsWrapper: (_d = {\n display: 'flex',\n flexWrap: 'wrap'\n },\n _d[theme.breakpoints.down('xs')] = {\n justifyContent: 'center',\n },\n _d),\n missingNightCard: (_e = {\n padding: theme.spacing(3, 2),\n margin: theme.spacing(1),\n width: 200,\n borderRadius: theme.youwell.shapes.borderRadiusFlatter\n },\n _e[theme.breakpoints.down('sm')] = {\n width: 180,\n },\n _e[theme.breakpoints.down('xs')] = {\n width: 260,\n },\n _e),\n lastCard: {\n WebkitMaskImage: '-webkit-gradient(linear, left top, right top, from(rgba(0,0,0,1)), to(rgba(0,0,0,0.3)))',\n },\n missingCardFlexWrapper: {\n display: 'flex',\n },\n missingCardTextFlexWrapper: {\n display: 'flex',\n flexDirection: 'column',\n textTransform: 'capitalize',\n },\n nightText: {\n textTransform: 'capitalize',\n },\n btnSection: (_f = {\n display: 'flex',\n justifyContent: 'flex-end',\n marginTop: theme.spacing(1),\n padding: theme.spacing(1)\n },\n _f[theme.breakpoints.down('xs')] = {\n justifyContent: 'center',\n },\n _f),\n notNowBtn: {\n padding: theme.spacing(2, 6),\n minWidth: 196,\n borderRadius: 40,\n background: theme.palette.common.white,\n '&:hover': {\n background: theme.palette.common.white,\n },\n },\n addIcons: {\n fontSize: 40,\n marginRight: theme.spacing(2),\n },\n registerSleep: {\n width: '100%',\n padding: theme.spacing(6),\n },\n registerSleepFlexWrapper: {\n display: 'flex',\n },\n registerSleepBtnText: {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'flex-start',\n marginLeft: theme.spacing(2),\n },\n registerSleepBtnCaption: {\n textTransform: 'initial',\n textAlign: 'left',\n },\n });\n}, { name: 'RegisterSleepMenu' });\nvar RegisterSleepMenu = function (_a) {\n var isModal = _a.isModal, onClick = _a.onClick, numberOfNightCards = _a.numberOfNightCards;\n var translate = (0, translate_1.default)();\n var classes = useStyles();\n var dispatch = (0, store_1.useYouwellDispatch)();\n var _b = React.useState(false), showSleepMenu = _b[0], setShowSleepMenu = _b[1];\n var sleepEntries = (0, store_1.useYouwellSelector)(function (state) { return (0, arrayUtils_1.sortByDateAscending)(state.sleepDataStore.entries, 'date') || []; });\n var sleepLookup = (0, utils_1.getSleepLookup)(sleepEntries);\n var missingNights = (0, utils_1.missingRegistrationsLastWeek)(sleepLookup);\n var goToLogDay = function (night) {\n if (onClick) {\n onClick();\n }\n dispatch((0, connected_react_router_1.push)(\"\".concat(urls_1.default.inside.pages.sleepDiary, \"/log/\").concat(night)));\n };\n var closeMenu = function () {\n setShowSleepMenu(false);\n };\n return (React.createElement(React.Fragment, null, isModal ? (React.createElement(React.Fragment, null,\n (missingNights === null || missingNights === void 0 ? void 0 : missingNights.length) > 0 && (React.createElement(core_1.Button, { className: classes.registerSleep, variant: \"contained\", color: \"primary\", onClick: function () { return setShowSleepMenu(true); } },\n React.createElement(\"div\", { className: classes.registerSleepFlexWrapper },\n React.createElement(icons_1.AddIcon, { className: classes.addIcons }),\n React.createElement(\"div\", { className: classes.registerSleepBtnText },\n React.createElement(core_1.Typography, { variant: \"h6\" }, translate('sleepDiary.registerSleep')),\n React.createElement(core_1.Typography, { className: classes.registerSleepBtnCaption, variant: \"body2\" }, (missingNights === null || missingNights === void 0 ? void 0 : missingNights.length) > 1\n ? \"\".concat(missingNights === null || missingNights === void 0 ? void 0 : missingNights.length, \" \").concat(translate('sleepDiary.missingRegistrations'), \" \")\n : \"\".concat(translate('sleepDiary.missingRegistration'))))))),\n React.createElement(components_1.OverlayModal, { open: showSleepMenu && (missingNights === null || missingNights === void 0 ? void 0 : missingNights.length) > 0, onClose: closeMenu },\n React.createElement(\"div\", { className: classes.modalContent },\n React.createElement(\"div\", { className: classes.header },\n React.createElement(core_1.Typography, { variant: \"h5\", className: classes.headerTitle }, translate('sleepDiary.registerSleep')),\n React.createElement(core_1.Typography, { className: classes.infoSectionTextCaption, variant: \"body1\" }, (missingNights === null || missingNights === void 0 ? void 0 : missingNights.length) > 1\n ? \"\".concat(missingNights.length, \" \").concat(translate('sleepDiary.missingRegistrations'), \" \")\n : \"\".concat(translate('sleepDiary.missingRegistration'), \" \"))),\n React.createElement(\"div\", { className: classes.infoSection },\n React.createElement(\"div\", { className: classes.infoSectionText },\n React.createElement(core_1.Typography, { className: classes.importanceOfRegistrationInfoText }, translate('sleepDiary.yourRegistrationIsImportantToUs')),\n missingNights && missingNights.length === 1 ? (React.createElement(core_1.Typography, null, translate('sleepDiary.easyToForgetDetailsOneNight'))) : (React.createElement(core_1.Typography, null, translate('sleepDiary.easyToForgetDetails'))))),\n React.createElement(\"div\", { className: classes.registerButtons },\n React.createElement(\"div\", { className: classes.registerButtonsWrapper }, missingNights === null || missingNights === void 0 ? void 0 : missingNights.slice(0, numberOfNightCards).map(function (night, i) {\n var _a;\n var _b;\n return (React.createElement(core_1.Button, { key: night, className: (0, classnames_1.default)(classes.missingNightCard, (_a = {}, _a[classes.lastCard] = i === numberOfNightCards - 1, _a)), variant: \"contained\", color: i ? 'primary' : 'secondary', component: react_router_dom_1.Link, to: \"\".concat(urls_1.default.inside.pages.sleepDiary, \"/log/\").concat(night) },\n React.createElement(\"div\", { className: classes.missingCardFlexWrapper },\n React.createElement(icons_1.AddIcon, { className: classes.addIcons }),\n React.createElement(\"div\", { className: classes.missingCardTextFlexWrapper },\n React.createElement(core_1.Typography, { variant: \"h6\" }, (0, dateUtils_1.datestamp)(night)),\n React.createElement(core_1.Typography, { variant: \"body1\", color: i ? 'secondary' : 'primary', className: classes.nightText }, \"\".concat(translate(\"time.weekdays_short.\".concat((_b = (0, dateUtils_1.getLocalDate)(night)) === null || _b === void 0 ? void 0 : _b.getDay())), \".\"))))));\n })),\n React.createElement(\"div\", { className: classes.btnSection },\n React.createElement(core_1.Button, { className: classes.notNowBtn, variant: \"outlined\", color: \"secondary\", onClick: closeMenu }, translate('sleepDiary.notNow')))))))) : (React.createElement(\"div\", { className: classes.standaloneButtons }, missingNights === null || missingNights === void 0 ? void 0 : missingNights.slice(0, numberOfNightCards).map(function (night, i) {\n var _a;\n var _b;\n return (React.createElement(core_1.Button, { key: night, className: (0, classnames_1.default)(classes.missingNightCard, (_a = {}, _a[classes.lastCard] = i === numberOfNightCards - 1, _a)), variant: \"contained\", color: \"primary\", onClick: function () { return goToLogDay(night); } },\n React.createElement(\"div\", { className: classes.missingCardFlexWrapper },\n React.createElement(icons_1.AddIcon, { className: classes.addIcons }),\n React.createElement(\"div\", { className: classes.missingCardTextFlexWrapper },\n React.createElement(core_1.Typography, { variant: \"h6\" }, (0, dateUtils_1.datestamp)(night)),\n React.createElement(core_1.Typography, { variant: \"body1\", color: i ? 'secondary' : 'primary', className: classes.nightText }, \"\".concat(translate(\"time.weekdays_short.\".concat((_b = (0, dateUtils_1.getLocalDate)(night)) === null || _b === void 0 ? void 0 : _b.getDay())), \".\"))))));\n })))));\n};\nRegisterSleepMenu.defaultProps = {\n isModal: false,\n onClick: null,\n};\nexports.default = RegisterSleepMenu;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar core_1 = require(\"@material-ui/core\");\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar dateUtils_1 = require(\"../../../../youwell-common/dateUtils\");\nvar constants_1 = require(\"../constants\");\nvar icons_1 = require(\"../../../../common/icons\");\nvar image_1 = require(\"../../../../common/image\");\nvar urls_1 = __importDefault(require(\"../../../../app/urls\"));\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return ({\n root: {\n marginTop: theme.spacing(2),\n },\n headerCell: {\n color: theme.palette.primary.main,\n padding: 0,\n },\n padCell: {\n minWidth: 30,\n height: theme.spacing(3),\n },\n noRegistrationsHeader: {\n border: 'none',\n },\n dateLink: {\n display: 'inline-block',\n textAlign: 'left',\n padding: theme.spacing(0.5, 1),\n width: '100%',\n borderRadius: theme.youwell.shapes.borderRadiusFlatter,\n '&:hover': {\n background: theme.youwell.colors.secondaryBackground,\n boxShadow: theme.shadows[2],\n },\n },\n headerDay: {\n textTransform: 'capitalize',\n },\n labelSection: {\n textAlign: 'center',\n fontWeight: 500,\n width: 200,\n },\n valueSection: {\n textAlign: 'center',\n borderLeft: theme.youwell.borders.dim,\n },\n noPadding: {\n padding: 0,\n },\n labelWrapper: {\n display: 'flex',\n justifyContent: 'end',\n alignItems: 'center',\n },\n sleepEfficiency: {\n width: 'calc(100% - 16px)',\n display: 'inline-block',\n borderRadius: theme.youwell.shapes.borderRadiusFlatter,\n color: theme.palette.common.white,\n margin: theme.spacing(1),\n padding: theme.spacing(1, 0),\n '&$high': {\n background: theme.youwell.colors.highScore,\n },\n '&$mid': {\n background: theme.youwell.colors.midScore,\n },\n '&$low': {\n background: theme.youwell.colors.lowScore,\n },\n },\n high: {},\n mid: {},\n low: {},\n divider: {\n borderBottom: theme.youwell.borders.normal,\n },\n icons: {\n marginLeft: theme.spacing(2),\n verticalAlign: 'middle',\n },\n actionRow: {\n cursor: 'pointer',\n background: theme.youwell.colors.defaultBackground,\n '&:hover': {\n background: theme.youwell.colors.secondaryBackground,\n },\n },\n}); }, { name: 'SleepDetailsTable' });\nvar SleepDetailsTable = function (_a) {\n var data = _a.data, hasRegistrations = _a.hasRegistrations;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var _b = React.useState(false), showFullDetails = _b[0], setShowFullDetails = _b[1];\n var getQualityScore = function (day) {\n var score = Number((day.totalSleepMinutes || 0) / (day.totalBedMinutes || 1));\n if (score >= 0.85)\n return classes.high;\n if (score >= 0.80)\n return classes.mid;\n return classes.low;\n };\n return (React.createElement(core_1.Table, { className: classes.root },\n React.createElement(core_1.TableHead, null,\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.headerCell }),\n data.map(function (day) {\n var _a;\n var _b;\n return (React.createElement(core_1.TableCell, { key: day.isoDateString, className: (0, classnames_1.default)(classes.labelSection, classes.headerCell, (_a = {}, _a[classes.noRegistrationsHeader] = !hasRegistrations, _a)) },\n React.createElement(core_1.ButtonBase, { className: classes.dateLink, component: react_router_dom_1.Link, to: \"\".concat(urls_1.default.inside.pages.sleepDiary, \"/log/\").concat(day.isoDateString), title: translate('sleepDiary.editDetailsFor', { date: (0, dateUtils_1.longDate)(day.isoDateString, translate) }) },\n React.createElement(core_1.Typography, { variant: \"body2\", color: \"inherit\", className: classes.headerDay }, translate(\"time.weekdays_short.\".concat((_b = (0, dateUtils_1.getLocalDate)(day.isoDateString)) === null || _b === void 0 ? void 0 : _b.getDay()))),\n React.createElement(core_1.Typography, { variant: \"body2\", color: \"inherit\" }, (0, dateUtils_1.shortDate)(day.isoDateString, translate, false, false, true)))));\n }))),\n React.createElement(core_1.TableBody, null, !hasRegistrations ? (React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.padCell }),\n React.createElement(core_1.TableCell, { colSpan: data.length }),\n React.createElement(core_1.TableCell, { className: classes.padCell }))) : (React.createElement(React.Fragment, null,\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.labelSection }, translate('sleepDiary.sleepQuality')),\n data.map(function (day) {\n var _a, _b;\n return (React.createElement(core_1.TableCell, { key: day.isoDateString, className: (0, classnames_1.default)(classes.valueSection, classes.noPadding) }, ((_a = day.entry) === null || _a === void 0 ? void 0 : _a.totalSleepMinutes) && ((_b = day.entry) === null || _b === void 0 ? void 0 : _b.totalBedMinutes) ? (React.createElement(\"span\", { className: (0, classnames_1.default)(classes.sleepEfficiency, getQualityScore(day.entry)) }, \"\".concat(Number(((day.entry.totalSleepMinutes / day.entry.totalBedMinutes)) * 100).toFixed(0), \"%\"))) : '-'));\n })),\n showFullDetails ? (React.createElement(React.Fragment, null,\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.labelSection }, translate('sleepDiary.totalSleepMinutes')),\n data.map(function (day) {\n var _a;\n return (React.createElement(core_1.TableCell, { key: day.isoDateString, className: classes.valueSection }, ((_a = day.entry) === null || _a === void 0 ? void 0 : _a.totalSleepMinutes) ? ((0, dateUtils_1.hourCount)(day.entry.totalSleepMinutes, translate)) : '-'));\n })),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: (0, classnames_1.default)(classes.labelSection, classes.divider) },\n React.createElement(\"div\", { className: classes.labelWrapper },\n translate('sleepDiary.totalBedMinutes'),\n React.createElement(\"span\", { className: classes.icons },\n React.createElement(icons_1.SleepIcon, { className: classes.icons })))),\n data.map(function (day) {\n var _a;\n return (React.createElement(core_1.TableCell, { key: day.isoDateString, className: (0, classnames_1.default)(classes.valueSection, classes.divider) }, ((_a = day.entry) === null || _a === void 0 ? void 0 : _a.totalBedMinutes) ? (0, dateUtils_1.hourCount)(day.entry.totalBedMinutes, translate) : ('-')));\n })),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.labelSection }, translate('sleepDiary.dayView.daytimeActivityRatings')),\n data.map(function (day) {\n var _a, _b;\n return (React.createElement(core_1.TableCell, { key: day.isoDateString, className: classes.valueSection }, ((_a = day.entry) === null || _a === void 0 ? void 0 : _a.daytimeActivityRating) ? (translate(\"\".concat((_b = constants_1.daytimeActivityRatings.find(function (d) { var _a; return d.id === ((_a = day.entry) === null || _a === void 0 ? void 0 : _a.daytimeActivityRating); })) === null || _b === void 0 ? void 0 : _b.label))) : ('-')));\n })),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.labelSection },\n React.createElement(\"div\", { className: classes.labelWrapper },\n React.createElement(\"div\", null, translate('sleepDiary.dayView.dayTimeNaps')),\n React.createElement(\"span\", { className: classes.icons },\n React.createElement(image_1.SleepSmileyIcon, null)))),\n data.map(function (day) {\n var _a, _b, _c;\n return (React.createElement(core_1.TableCell, { key: day.isoDateString, className: classes.valueSection }, ((_a = day.entry) === null || _a === void 0 ? void 0 : _a.daytimeNaps) && day.entry.daytimeNaps.length > 0 ? day.entry.daytimeNaps.map(function (nap) {\n var _a;\n return (React.createElement(\"div\", { key: (_a = nap.sleepTime) === null || _a === void 0 ? void 0 : _a.toString() }, nap.wakeTime && nap.sleepTime\n ? (React.createElement(React.Fragment, null,\n React.createElement(\"span\", null, \"\".concat((0, dateUtils_1.hourCount)((0, dateUtils_1.getNumberOfMinutes)(nap.sleepTime, nap.wakeTime), translate), \" \")),\n React.createElement(\"span\", null, \"\".concat(translate('sleepDiary.dayView.at'), \" \").concat((0, dateUtils_1.getTimePartForInput)(nap.sleepTime))))) : (React.createElement(\"span\", null, \" - \".concat(translate('sleepDiary.dayView.at'), \" \").concat((0, dateUtils_1.getTimePartForInput)(nap.sleepTime))))));\n }) : ((_c = (_b = day.entry) === null || _b === void 0 ? void 0 : _b.sleepProperties) === null || _c === void 0 ? void 0 : _c.hasDaytimeNaps) === false ? translate('sleepDiary.none') : '-'));\n })),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: (0, classnames_1.default)(classes.labelSection, classes.divider) },\n React.createElement(\"div\", { className: classes.labelWrapper },\n React.createElement(\"div\", null,\n React.createElement(\"div\", null, translate('sleepDiary.dayView.sleepMedication')),\n React.createElement(\"div\", null, translate('sleepDiary.dayView.alcohol'))),\n React.createElement(\"span\", { className: classes.icons },\n React.createElement(image_1.MedicineIcon, null)))),\n data.map(function (day) {\n var _a, _b;\n return (React.createElement(core_1.TableCell, { key: day.isoDateString, className: (0, classnames_1.default)(classes.valueSection, classes.divider) }, ((_b = (_a = day.entry) === null || _a === void 0 ? void 0 : _a.sleepProperties) === null || _b === void 0 ? void 0 : _b.sleepMedication) ? (day.entry.sleepProperties.sleepMedication) : ('-')));\n })),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.labelSection },\n React.createElement(\"div\", { className: classes.labelWrapper },\n React.createElement(\"div\", null, translate('sleepDiary.dayView.gotToBed')),\n React.createElement(\"span\", { className: classes.icons },\n React.createElement(image_1.MoonIcon, null)))),\n data.map(function (day) {\n var _a;\n return (React.createElement(core_1.TableCell, { key: day.isoDateString, className: (0, classnames_1.default)(classes.valueSection) }, ((_a = day.entry) === null || _a === void 0 ? void 0 : _a.bedTime) ? (0, dateUtils_1.getTimePartForInput)(day.entry.bedTime) : ('-')));\n })),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.labelSection },\n React.createElement(\"div\", { className: classes.labelWrapper },\n React.createElement(\"div\", null, translate('sleepDiary.dayView.tiredToSleep')),\n React.createElement(\"span\", { className: classes.icons },\n React.createElement(image_1.SleepSmileyIcon, null)))),\n data.map(function (day) {\n var _a;\n return (React.createElement(core_1.TableCell, { key: day.isoDateString, className: (0, classnames_1.default)(classes.valueSection) }, ((_a = day.entry) === null || _a === void 0 ? void 0 : _a.sleepAtemptTime) ? (0, dateUtils_1.getTimePartForInput)(day.entry.sleepAtemptTime) : ('-')));\n })),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.labelSection },\n React.createElement(\"div\", { className: classes.labelWrapper },\n React.createElement(\"div\", null, translate('sleepDiary.dayView.fellAsleep')),\n React.createElement(\"span\", { className: classes.icons },\n React.createElement(image_1.SleepSmileyIcon, null)))),\n data.map(function (day) {\n var _a;\n return (React.createElement(core_1.TableCell, { key: day.isoDateString, className: (0, classnames_1.default)(classes.valueSection) }, ((_a = day.entry) === null || _a === void 0 ? void 0 : _a.sleepTime) ? (0, dateUtils_1.getTimePartForInput)(day.entry.sleepTime) : '-'));\n })),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.labelSection },\n React.createElement(\"div\", { className: classes.labelWrapper },\n React.createElement(\"div\", null, translate('sleepDiary.dayView.awake')),\n React.createElement(\"span\", { className: classes.icons },\n React.createElement(image_1.AwakeSmileyIcon, null)))),\n data.map(function (day) {\n var _a, _b, _c;\n return (React.createElement(core_1.TableCell, { key: day.isoDateString, className: (0, classnames_1.default)(classes.valueSection) }, ((_b = (_a = day.entry) === null || _a === void 0 ? void 0 : _a.sleepProperties) === null || _b === void 0 ? void 0 : _b.numberOfNightWakeups) ? (\"\".concat((_c = day.entry.sleepProperties) === null || _c === void 0 ? void 0 : _c.numberOfNightWakeups, \" \").concat(translate('sleepDiary.dayView.times'))) : '-'));\n })),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: (0, classnames_1.default)(classes.labelSection, classes.divider) },\n React.createElement(\"div\", { className: classes.labelWrapper },\n React.createElement(\"div\", null, translate('sleepDiary.nightWakeupsTotalMinutes')),\n React.createElement(\"span\", { className: classes.icons },\n React.createElement(image_1.AwakeSmileyIcon, null)))),\n data.map(function (day) {\n var _a, _b;\n return (React.createElement(core_1.TableCell, { key: day.isoDateString, className: (0, classnames_1.default)(classes.valueSection, classes.divider) }, ((_b = (_a = day.entry) === null || _a === void 0 ? void 0 : _a.sleepProperties) === null || _b === void 0 ? void 0 : _b.nightWakeupsTotalMinutes) ? (\"\".concat(day.entry.sleepProperties.nightWakeupsTotalMinutes, \" \").concat(translate('sleepDiary.dayView.min'))) : ('-')));\n })),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.labelSection },\n React.createElement(\"div\", { className: classes.labelWrapper },\n React.createElement(\"div\", null, translate('sleepDiary.dayView.youWokeUp')),\n React.createElement(\"span\", { className: classes.icons },\n React.createElement(icons_1.SunIcon, null)))),\n data.map(function (day) {\n var _a;\n return (React.createElement(core_1.TableCell, { key: day.isoDateString, className: (0, classnames_1.default)(classes.valueSection) }, ((_a = day.entry) === null || _a === void 0 ? void 0 : _a.wakeTime) ? ((0, dateUtils_1.getTimePartForInput)(day.entry.wakeTime)) : ('-')));\n })),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { align: \"center\", className: classes.labelSection },\n React.createElement(\"div\", { className: classes.labelWrapper },\n React.createElement(\"div\", null, translate('sleepDiary.dayView.youGotOutOfBed')),\n React.createElement(\"span\", { className: classes.icons },\n React.createElement(image_1.WakeUpIcon, null)))),\n data.map(function (day) {\n var _a;\n return (React.createElement(core_1.TableCell, { key: day.isoDateString, className: (0, classnames_1.default)(classes.valueSection) }, ((_a = day.entry) === null || _a === void 0 ? void 0 : _a.outOfBedTime) ? ((0, dateUtils_1.getTimePartForInput)(day.entry.outOfBedTime)) : ('-')));\n })),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.labelSection }, translate('sleepDiary.yourSleepRating')),\n data.map(function (day) {\n var _a, _b;\n return (React.createElement(core_1.TableCell, { key: day.isoDateString, className: (0, classnames_1.default)(classes.valueSection) }, ((_a = day.entry) === null || _a === void 0 ? void 0 : _a.sleepRating) ? (translate(((_b = constants_1.sleepRatings.find(function (d) { var _a; return ((_a = day.entry) === null || _a === void 0 ? void 0 : _a.sleepRating) === d.id; })) === null || _b === void 0 ? void 0 : _b.label) || '', undefined, { onMissingTranslation: function () { var _a, _b; return ((_b = (_a = day.entry) === null || _a === void 0 ? void 0 : _a.sleepRating) === null || _b === void 0 ? void 0 : _b.toString()) || ''; } })) : ('-')));\n })),\n React.createElement(core_1.TableRow, { className: classes.actionRow },\n React.createElement(core_1.TableCell, { colSpan: data.length + 1, onClick: function () { return setShowFullDetails(false); }, align: \"center\" },\n React.createElement(core_1.Typography, { variant: \"button\" }, translate('sleepDiary.hideDetails')))))) : (React.createElement(core_1.TableRow, { className: classes.actionRow },\n React.createElement(core_1.TableCell, { colSpan: data.length + 1, onClick: function () { return setShowFullDetails(true); }, align: \"center\" },\n React.createElement(core_1.Typography, { variant: \"button\" }, translate('sleepDiary.showFullDetails'))))))))));\n};\nexports.default = SleepDetailsTable;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar recharts_1 = require(\"recharts\");\nvar date_fns_1 = require(\"date-fns\");\nvar lodash_1 = require(\"lodash\");\nvar browserUtils_1 = require(\"../../../../youwell-common/browserUtils\");\nvar arrayUtils_1 = require(\"../../../../youwell-common/arrayUtils\");\nvar store_1 = require(\"../../../../app/store\");\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar dateUtils_1 = require(\"../../../../youwell-common/dateUtils\");\nvar utils_1 = require(\"../utils\");\nvar useStyles = (0, core_1.makeStyles)(function (theme) {\n var _a;\n return (0, core_1.createStyles)({\n detailTable: {\n marginBottom: theme.spacing(4),\n },\n detailTableHeaderCell: {},\n chartTitle: {\n marginBottom: theme.spacing(2),\n },\n chart: (_a = {\n margin: theme.spacing(4)\n },\n _a[theme.breakpoints.down('xs')] = {\n margin: theme.spacing(2, 0),\n },\n _a),\n customTooltip: {\n backgroundColor: theme.youwell.colors.secondaryBackground,\n padding: theme.spacing(2),\n borderRadius: theme.youwell.shapes.borderRadius,\n },\n tooltipHeader: {\n textTransform: 'capitalize',\n },\n chartDescription: {\n margin: theme.spacing(2, 2, 4),\n },\n });\n}, { name: 'WeekAverageDetails' });\nvar generateWeeklySummaryGraphData = function (sleepEntries) {\n var sleepLookup = (0, utils_1.getSleepLookup)(sleepEntries);\n var summary = sleepEntries === null || sleepEntries === void 0 ? void 0 : sleepEntries.reduce(function (prev, sleepEntry) {\n var _a;\n var weekNumber = (0, dateUtils_1.getWeekNumberFromDate)(new Date(sleepEntry.date));\n var yearWeek = \"\".concat(weekNumber, \" - \").concat((0, date_fns_1.getYear)(new Date(sleepEntry.date)));\n var selectedWeek = { weekNo: weekNumber, start: (0, date_fns_1.startOfISOWeek)(new Date(sleepEntry.date)), end: (0, date_fns_1.endOfISOWeek)(new Date(sleepEntry.date)) };\n var selectedWeekEntries = (0, utils_1.getRegistrationsForWeek)(sleepLookup, selectedWeek);\n var currentWeekAverage = (0, utils_1.getWeekAverage)(selectedWeekEntries);\n if (currentWeekAverage.totalSleepMinutes && currentWeekAverage.sleepQuality && currentWeekAverage.sleepRating) {\n currentWeekAverage.tick = new Date(sleepEntry.date).getTime();\n currentWeekAverage.week = weekNumber;\n return __assign(__assign({}, prev), (_a = {}, _a[yearWeek] = currentWeekAverage, _a));\n }\n return prev;\n }, {});\n var sortedSummary = (0, lodash_1.sortBy)(Object.values(summary || []), 'tick');\n var graphData = sortedSummary.map(function (d) { return ({\n week: d.week,\n totalSleepMinutes: (d.totalSleepMinutes / d.count) / 60,\n sleepQuality: ((d.sleepRating / d.count) / 5) * 100,\n sleepEfficiency: d.sleepQuality / d.count,\n }); });\n return graphData;\n};\nvar WeekAverageDetails = function (_a) {\n var weekAverage = _a.weekAverage;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var theme = (0, core_1.useTheme)();\n var sleepEntries = (0, store_1.useYouwellSelector)(function (state) { return (0, arrayUtils_1.sortByDateAscending)(state.sleepDataStore.entries, 'date') || []; });\n var width = (0, browserUtils_1.useWindowSize)().width;\n var weeklySleepSummary = generateWeeklySummaryGraphData(sleepEntries);\n var WeekAverageGraphTooltip = function (_a) {\n var _b, _c, _d, _e, _f, _g;\n var active = _a.active, payload = _a.payload;\n if (active && payload && payload.length) {\n return (React.createElement(\"div\", { className: classes.customTooltip },\n React.createElement(core_1.Typography, { variant: \"subtitle2\", className: classes.tooltipHeader }, \"\".concat(translate('time.week'), \" \").concat((_c = (_b = payload[0]) === null || _b === void 0 ? void 0 : _b.payload) === null || _c === void 0 ? void 0 : _c.week)),\n React.createElement(core_1.Typography, { variant: \"body2\", color: \"primary\" }, \"\".concat(translate('sleepDiary.totalSleepMinutes'), \": \").concat((0, dateUtils_1.hourCount)(((_d = payload[0].payload) === null || _d === void 0 ? void 0 : _d.totalSleepMinutes) * 60, translate, true))),\n React.createElement(core_1.Typography, { variant: \"body2\", color: \"primary\" }, \"\".concat(translate('sleepDiary.yourSleepRating'), \": \").concat(Math.round(5 * ((_e = payload[0].payload) === null || _e === void 0 ? void 0 : _e.sleepQuality) / 10) / 10)),\n React.createElement(core_1.Typography, { variant: \"body2\", color: \"primary\" }, \"\".concat(translate('sleepDiary.sleepEfficiency'), \": \").concat(Math.round((_g = (_f = payload[0]) === null || _f === void 0 ? void 0 : _f.payload) === null || _g === void 0 ? void 0 : _g.sleepEfficiency), \"%\"))));\n }\n return null;\n };\n return (React.createElement(\"div\", null,\n React.createElement(core_1.Table, { className: classes.detailTable },\n React.createElement(core_1.TableBody, null,\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.detailTableHeaderCell }, translate('sleepDiary.totalSleepMinutes')),\n React.createElement(core_1.TableCell, { align: \"right\" }, (0, dateUtils_1.hourCount)(weekAverage.totalSleepMinutes / weekAverage.count, translate))),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.detailTableHeaderCell }, translate('sleepDiary.awakeBedMinutes')),\n React.createElement(core_1.TableCell, { align: \"right\" }, (0, dateUtils_1.hourCount)(weekAverage.awakeBedMinutes / weekAverage.count, translate))),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.detailTableHeaderCell }, translate('sleepDiary.totalBedMinutes')),\n React.createElement(core_1.TableCell, { align: \"right\" }, (0, dateUtils_1.hourCount)(weekAverage.totalBedMinutes / weekAverage.count, translate))),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.detailTableHeaderCell }, translate('sleepDiary.sleepQuality')),\n React.createElement(core_1.TableCell, { align: \"right\" }, \"\".concat(Math.round(weekAverage.sleepQuality / weekAverage.count), \" %\"))),\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.detailTableHeaderCell },\n translate('sleepDiary.yourSleepRating'),\n React.createElement(\"br\", null),\n React.createElement(core_1.Typography, { variant: \"caption\" }, translate('sleepDiary.sleepRatingDescription'))),\n React.createElement(core_1.TableCell, { align: \"right\" }, \"\".concat((weekAverage.sleepRating / weekAverage.count).toFixed(1)))))),\n React.createElement(core_1.Typography, { variant: \"h6\", className: classes.chartTitle }, translate('sleepDiary.weeklyProgression')),\n React.createElement(\"div\", { className: classes.chart },\n React.createElement(recharts_1.ComposedChart, { width: (width && width * 0.7) || 600, height: 300, data: weeklySleepSummary, margin: {\n top: 5,\n bottom: 5,\n } },\n React.createElement(recharts_1.CartesianGrid, { vertical: false }),\n React.createElement(recharts_1.XAxis, { dataKey: \"week\", tickFormatter: function (weekNumber) { return \"\".concat(translate('time.week'), \" \").concat(weekNumber); }, tickMargin: 8 }),\n React.createElement(recharts_1.YAxis, { yAxisId: \"left\", orientation: \"left\", tickFormatter: function (decimal) { return \"\".concat(Math.round(decimal), \"%\"); } }),\n React.createElement(recharts_1.Tooltip, { content: React.createElement(WeekAverageGraphTooltip, null) }),\n React.createElement(recharts_1.Line, { strokeWidth: 4, stroke: theme.youwell.colors.primary, dot: { fill: theme.youwell.colors.primary, r: 5 }, yAxisId: \"left\", type: \"monotone\", dataKey: \"sleepEfficiency\", name: translate('sleepDiary.sleepQuality') }),\n React.createElement(recharts_1.Legend, { verticalAlign: \"top\", wrapperStyle: { top: -20 } }))),\n React.createElement(core_1.Typography, { variant: \"body2\", color: \"textSecondary\", className: classes.chartDescription }, translate('sleepDiary.hooverToSeeDetails'))));\n};\nexports.default = WeekAverageDetails;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.defaultDaytimeWakeTime = exports.defaultDaytimeSleepTime = exports.defaultWakeTime = exports.defaultSleepTime = exports.daytimeActivityRatings = exports.sleepRatings = void 0;\nexports.sleepRatings = [\n { id: 1, label: 'sleepDiary.rating.1' },\n { id: 2, label: 'sleepDiary.rating.2' },\n { id: 3, label: 'sleepDiary.rating.3' },\n { id: 4, label: 'sleepDiary.rating.4' },\n { id: 5, label: 'sleepDiary.rating.5' },\n];\nexports.daytimeActivityRatings = [\n { id: 1, label: 'sleepDiary.activityRating.veryLow' },\n { id: 2, label: 'sleepDiary.activityRating.low' },\n { id: 3, label: 'sleepDiary.activityRating.medium' },\n { id: 4, label: 'sleepDiary.activityRating.some' },\n { id: 5, label: 'sleepDiary.activityRating.very' },\n];\nexports.defaultSleepTime = '22:00';\nexports.defaultWakeTime = '07:00';\nexports.defaultDaytimeSleepTime = '13:00';\nexports.defaultDaytimeWakeTime = '13:30';\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getWeekAverage = exports.getSleepLookup = exports.getRegistrationsForWeek = exports.missingRegistrationsLastWeek = exports.dayTimeNapsUnValidItems = exports.validateDayTimeNapInputs = exports.validateTimeLaterThanWithActualDate = exports.getTimeWithActualDate = exports.validateTimeBeforeThan = exports.validateTimeLaterThan = exports.getTimeWithCorrectDate = exports.sleepLoggingItemNames = exports.SleepLoggingType = void 0;\nvar objectUtils_1 = require(\"../../../youwell-common/objectUtils\");\nvar arrayUtils_1 = require(\"../../../youwell-common/arrayUtils\");\nvar dateUtils_1 = require(\"../../../youwell-common/dateUtils\");\nvar SleepLoggingType;\n(function (SleepLoggingType) {\n SleepLoggingType[SleepLoggingType[\"dayLogging\"] = 0] = \"dayLogging\";\n SleepLoggingType[SleepLoggingType[\"nightLogging\"] = 1] = \"nightLogging\";\n})(SleepLoggingType = exports.SleepLoggingType || (exports.SleepLoggingType = {}));\nexports.sleepLoggingItemNames = {\n sleepTime: 'sleepTime',\n wakeTime: 'wakeTime',\n};\nvar getTimeWithCorrectDate = function (time, date, loggingType) {\n var timeString = (0, dateUtils_1.getTimePartForInput)(time);\n if (!timeString) {\n return timeString;\n }\n if (!date) {\n return timeString;\n }\n var isoDateString = (0, dateUtils_1.isoDate)(date);\n if (Number(timeString.substring(0, 2)) >= 17) { // Evening (day before) for hours after 17:00\n isoDateString = (0, dateUtils_1.isoDate)((0, dateUtils_1.addDays)(date, -1));\n }\n if (loggingType === SleepLoggingType.nightLogging && Number(timeString.substring(0, 2)) >= 15) { // Hours from 15:00-23:00 set to be the day before\n isoDateString = (0, dateUtils_1.isoDate)((0, dateUtils_1.addDays)(date, -1));\n }\n return \"\".concat(isoDateString, \"T\").concat(timeString);\n};\nexports.getTimeWithCorrectDate = getTimeWithCorrectDate;\nvar validateTimeLaterThan = function (valueToCompare, date, loggingType) { return function (value) {\n if (valueToCompare) {\n return new Date((0, exports.getTimeWithCorrectDate)(value, date, loggingType)) >= new Date((0, exports.getTimeWithCorrectDate)(valueToCompare, date, loggingType));\n }\n return true;\n}; };\nexports.validateTimeLaterThan = validateTimeLaterThan;\nvar validateTimeBeforeThan = function (valueToCompare, date, loggingType) { return function (value) {\n if (valueToCompare) {\n return new Date((0, exports.getTimeWithCorrectDate)(value, date, loggingType)) <= new Date((0, exports.getTimeWithCorrectDate)(valueToCompare, date, loggingType));\n }\n return true;\n}; };\nexports.validateTimeBeforeThan = validateTimeBeforeThan;\nvar getTimeWithActualDate = function (time, date) {\n var timeString = (0, dateUtils_1.getTimePartForInput)(time);\n if (!timeString) {\n return '';\n }\n if (!date) {\n return timeString;\n }\n return \"\".concat((0, dateUtils_1.isoDate)(date), \"T\").concat(timeString);\n};\nexports.getTimeWithActualDate = getTimeWithActualDate;\n// eslint-disable-next-line arrow-body-style\nvar validateTimeLaterThanWithActualDate = function (valueToCompare, date, loggingType) { return function (value) {\n return new Date((0, exports.getTimeWithActualDate)(value, date)) >= new Date((0, exports.getTimeWithCorrectDate)(valueToCompare, date, loggingType));\n}; };\nexports.validateTimeLaterThanWithActualDate = validateTimeLaterThanWithActualDate;\nvar validateDayTimeNapInputs = function (i, date, daytimeNaps) {\n var _a, _b, _c, _d, _e, _f, _g, _h;\n var validation = { sleep: true, wake: true };\n if (!daytimeNaps) {\n return validation;\n }\n var sleepTime = (_b = (_a = daytimeNaps[i]) === null || _a === void 0 ? void 0 : _a.sleepTime) !== null && _b !== void 0 ? _b : null;\n var nextSleepTime = (_d = (_c = daytimeNaps[i + 1]) === null || _c === void 0 ? void 0 : _c.sleepTime) !== null && _d !== void 0 ? _d : null;\n var wakeTime = (_f = (_e = daytimeNaps[i]) === null || _e === void 0 ? void 0 : _e.wakeTime) !== null && _f !== void 0 ? _f : null;\n var prevWakeTime = (_h = (_g = daytimeNaps[i - 1]) === null || _g === void 0 ? void 0 : _g.wakeTime) !== null && _h !== void 0 ? _h : null;\n if (sleepTime) {\n var isLaterThanPrevDaytimeNapWakeTime = prevWakeTime ? (0, exports.validateTimeLaterThan)(prevWakeTime, date, SleepLoggingType.dayLogging)(sleepTime) : true;\n var isLaterThanCurrWakeTime = wakeTime ? (0, exports.validateTimeLaterThan)(wakeTime, date, SleepLoggingType.dayLogging)(sleepTime) : false;\n validation.sleep = isLaterThanPrevDaytimeNapWakeTime && !isLaterThanCurrWakeTime;\n }\n if (wakeTime) {\n var isLaterThanNextDaytimeNapSleepTime = nextSleepTime ? (0, exports.validateTimeLaterThan)(nextSleepTime, date, SleepLoggingType.dayLogging)(wakeTime) : false;\n var isLaterThanCurrDaytimeNapSleepTime = sleepTime ? (0, exports.validateTimeLaterThan)(sleepTime, date, SleepLoggingType.dayLogging)(wakeTime) : true;\n validation.wake = isLaterThanCurrDaytimeNapSleepTime && !isLaterThanNextDaytimeNapSleepTime;\n }\n return validation;\n};\nexports.validateDayTimeNapInputs = validateDayTimeNapInputs;\nvar dayTimeNapsUnValidItems = function (date, daytimeNaps) {\n var _a;\n var validationList = daytimeNaps === null || daytimeNaps === void 0 ? void 0 : daytimeNaps.map(function (dayTimeNap, index) { return ({ index: index, validation: (0, exports.validateDayTimeNapInputs)(index, date, daytimeNaps) }); });\n return (_a = validationList === null || validationList === void 0 ? void 0 : validationList.filter(function (d) { return !d.validation.sleep || !d.validation.wake; })) !== null && _a !== void 0 ? _a : [];\n};\nexports.dayTimeNapsUnValidItems = dayTimeNapsUnValidItems;\nvar missingRegistrationsLastWeek = function (sleepLookup) {\n var currentDate = (0, dateUtils_1.addDays)(null, -6);\n var missingEntries = [];\n while (currentDate <= (0, dateUtils_1.tomorrow)()) {\n var d = (0, dateUtils_1.isoDate)(currentDate);\n if (!sleepLookup[d] || !(sleepLookup[d].skipped || sleepLookup[d].completed)) {\n missingEntries.push(d);\n }\n currentDate = (0, dateUtils_1.addDays)(currentDate, 1);\n }\n return (0, arrayUtils_1.reverse)(missingEntries);\n};\nexports.missingRegistrationsLastWeek = missingRegistrationsLastWeek;\nvar getRegistrationsForWeek = function (sleepLookup, week) {\n var currentDate = week.start;\n var entries = [];\n while (currentDate < week.end) {\n var d = (0, dateUtils_1.isoDateWithoutTimezone)(currentDate);\n if (sleepLookup[d]) {\n entries.push(sleepLookup[d]);\n }\n else {\n entries.push({\n isoDateString: d,\n completed: false,\n partial: false,\n skipped: false,\n evening: false,\n night: false,\n });\n }\n currentDate = (0, dateUtils_1.addDays)(currentDate, 1);\n }\n return entries;\n};\nexports.getRegistrationsForWeek = getRegistrationsForWeek;\nvar getSleepLookup = function (sleepEntries) { return sleepEntries.reduce(function (prev, curr) {\n var _a;\n var _b, _c, _d;\n return (__assign(__assign({}, prev), (_a = {}, _a[(0, dateUtils_1.isoDate)(curr.date)] = {\n isoDateString: (0, dateUtils_1.isoDate)(curr.date),\n entry: curr,\n completed: curr.totalBedMinutes && curr.totalSleepMinutes,\n partial: !(curr.daytimeActivityRating && (0, objectUtils_1.hasValue)((_b = curr.sleepProperties) === null || _b === void 0 ? void 0 : _b.hasDaytimeNaps) && curr.bedTime && curr.sleepAtemptTime && curr.sleepTime && (0, objectUtils_1.hasValue)((_c = curr.sleepProperties) === null || _c === void 0 ? void 0 : _c.numberOfNightWakeups) && curr.outOfBedTime && curr.wakeTime && curr.sleepRating),\n skipped: !!((_d = curr.sleepProperties) === null || _d === void 0 ? void 0 : _d.userSkippedRegistering),\n evening: curr.bedTime || curr.sleepAtemptTime || curr.sleepTime,\n night: curr.outOfBedTime || curr.wakeTime,\n }, _a)));\n}, {}) || {}; };\nexports.getSleepLookup = getSleepLookup;\nvar getWeekAverage = function (sleepEntries) { return sleepEntries.reduce(function (prev, curr) {\n var _a, _b, _c, _d, _e;\n if (curr.entry && curr.completed) {\n return {\n start: prev.start || curr.isoDateString,\n end: curr.isoDateString,\n count: prev.count + 1,\n totalSleepMinutes: prev.totalSleepMinutes + ((_a = curr.entry.totalSleepMinutes) !== null && _a !== void 0 ? _a : 0),\n totalBedMinutes: prev.totalBedMinutes + ((_b = curr.entry.totalBedMinutes) !== null && _b !== void 0 ? _b : 0),\n awakeBedMinutes: prev.awakeBedMinutes + ((_c = curr.entry.awakeBedMinutes) !== null && _c !== void 0 ? _c : 0),\n sleepQuality: prev.sleepQuality + ((_d = curr.entry.sleepQuality) !== null && _d !== void 0 ? _d : 0),\n sleepRating: prev.sleepRating + ((_e = curr.entry.sleepRating) !== null && _e !== void 0 ? _e : 0),\n };\n }\n return __assign(__assign({}, prev), { start: prev.start || curr.isoDateString, end: curr.isoDateString });\n}, {\n count: 0,\n totalSleepMinutes: 0,\n totalBedMinutes: 0,\n awakeBedMinutes: 0,\n sleepQuality: 0,\n sleepRating: 0,\n}); };\nexports.getWeekAverage = getWeekAverage;\n","import * as React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { connect } from 'react-redux';\r\nimport { getTranslate } from 'react-localize-redux';\r\nimport {\r\n Route, Switch,\r\n} from 'react-router-dom';\r\n\r\nimport urls from '../../app/urls';\r\nimport { PageNotFound } from '../../youwell-common/components';\r\n\r\nimport PreviewTask from './PreviewTask';\r\nimport LoadPreviewTask from './components/LoadPreviewTask';\r\nimport { InternalLinkLoader, Layout } from '../../common/components';\r\nimport { parseInternalLink } from '../../common/taskContentUtils';\r\n\r\nclass Index extends React.Component {\r\n getLinkUrl = (link) => {\r\n const { taskOrModuleId, hash } = parseInternalLink(link);\r\n return `${urls.preview.home}/${taskOrModuleId}${hash}`;\r\n }\r\n\r\n render() {\r\n return (\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nIndex.propTypes = {\r\n translate: PropTypes.func.isRequired,\r\n};\r\n\r\nconst mapStateToProps = state => ({\r\n translate: getTranslate(state.localize),\r\n});\r\n\r\nexport default connect(mapStateToProps)(Index);\r\n","import * as React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport { connect } from 'react-redux';\r\nimport { getTranslate } from 'react-localize-redux';\r\nimport { bindActionCreators } from 'redux';\r\nimport { Visibility } from '@material-ui/icons';\r\n\r\nimport { Fab } from '@material-ui/core';\r\n\r\nimport ContentCommenting from '../../common/components/ContentCommenting';\r\nimport * as PreviewStore from '../../app/store/PreviewStore';\r\nimport { InfoMessage, PageLayout } from '../../common/components';\r\nimport PreviewTaskContent from './components/PreviewTaskContent';\r\nimport { PREVIEW_TASK_RECEIVED } from '../../app/store/actions';\r\nimport { CommentIcon, PrintIcon } from '../../common/icons';\r\n\r\nconst styles = theme => ({\r\n root: {\r\n },\r\n actions: {\r\n display: 'flex',\r\n padding: theme.spacing(2),\r\n },\r\n fab: {\r\n marginRight: theme.spacing(2),\r\n },\r\n comments: {\r\n marginTop: theme.spacing(2),\r\n },\r\n});\r\n\r\nclass PreviewTask extends React.Component {\r\n state = {\r\n noHiddenStateValue: false,\r\n }\r\n\r\n showPrint = () => {\r\n window.print();\r\n }\r\n\r\n toggleHiddenStates = () => {\r\n this.setState(prevState => ({\r\n noHiddenStateValue: !prevState.noHiddenStateValue,\r\n }));\r\n };\r\n\r\n render() {\r\n const {\r\n classes, translate, taskDetails, hasLoaded, showComments, toggleComments,\r\n } = this.props;\r\n\r\n const task = taskDetails;\r\n\r\n if (!task) {\r\n return hasLoaded ? () : null;\r\n }\r\n\r\n return (\r\n \r\n
\r\n {task.contentElements?.some(e => e.elementStates) && (\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n {showComments && (\r\n \r\n\r\n )}\r\n \r\n )}\r\n >\r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nPreviewTask.propTypes = {\r\n classes: PropTypes.object.isRequired,\r\n translate: PropTypes.func.isRequired,\r\n hasLoaded: PropTypes.bool.isRequired,\r\n toggleComments: PropTypes.func.isRequired,\r\n showComments: PropTypes.bool.isRequired,\r\n taskDetails: PropTypes.object,\r\n};\r\n\r\nPreviewTask.defaultProps = {\r\n taskDetails: null,\r\n};\r\n\r\nconst mapStateToProps = (state, ownProps) => {\r\n const taskId = ownProps?.match?.params?.taskId;\r\n\r\n return {\r\n translate: getTranslate(state.localize),\r\n taskDetails: state.previewStore.details && state.previewStore.details[taskId],\r\n clientConfig: state.auth.clientConfig,\r\n hasLoaded: Boolean(state.previewStore.requests[`${PREVIEW_TASK_RECEIVED}/${taskId}`]\r\n && state.previewStore.requests[`${PREVIEW_TASK_RECEIVED}/${taskId}`].completed),\r\n showComments: state.previewStore.showComments,\r\n };\r\n};\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n ...bindActionCreators(PreviewStore.actionCreators, dispatch),\r\n});\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(withStyles(styles)(PreviewTask));\r\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport { withStyles } from '@material-ui/core/styles';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport { bindActionCreators } from 'redux';\n\nimport { ButtonBase, Typography } from '@material-ui/core';\n\nimport * as PreviewStore from '../../../app/store/PreviewStore';\nimport { CommentIcon } from '../../../common/icons';\n\n\nconst styles = theme => ({\n root: {\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n width: '100%',\n zIndex: 101,\n background: `${theme.palette.grey[300]}aa`,\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n },\n});\n\nfunction AddCommentOverlay({\n classes, translate, className, taskId, elementId, startComment, enableComments,\n}) {\n if (!enableComments) {\n return null;\n }\n const onClick = () => {\n startComment({ taskId, elementId });\n };\n\n return (\n \n \n \n {translate('taskCommenting.addComment')}\n \n \n );\n}\n\nAddCommentOverlay.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n taskId: PropTypes.string.isRequired,\n elementId: PropTypes.number.isRequired,\n className: PropTypes.string.isRequired,\n startComment: PropTypes.func.isRequired,\n enableComments: PropTypes.bool.isRequired,\n};\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n enableComments: state.previewStore.showComments,\n});\n\nconst mapDispatchToProps = dispatch => ({\n ...bindActionCreators(PreviewStore.actionCreators, dispatch),\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(withStyles(styles)(AddCommentOverlay));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\n\nimport * as PreviewStore from '../../../app/store/PreviewStore';\n\nclass LoadPreviewTask extends React.Component {\n componentDidMount() {\n if (!this.props.taskDetails) {\n this.getElement();\n }\n }\n\n componentDidUpdate(prevProps) {\n const { taskId, taskDetails } = this.props;\n\n if (taskId !== prevProps.taskId && !taskDetails) {\n this.getElement();\n }\n }\n\n getElement = () => {\n this.props.getElement(this.props.taskId, {\n requestParams: { ver: this.props.version },\n });\n }\n\n render() {\n return null;\n }\n}\n\nLoadPreviewTask.propTypes = {\n getElement: PropTypes.func.isRequired,\n taskId: PropTypes.string.isRequired,\n version: PropTypes.string,\n taskDetails: PropTypes.object,\n};\n\nLoadPreviewTask.defaultProps = {\n taskDetails: null,\n version: null,\n};\n\nconst mapStateToProps = (state, ownProps) => {\n const taskId = ownProps?.match?.params?.taskId;\n\n return {\n taskId,\n version: ownProps?.match?.params?.version,\n taskDetails: state.previewStore.details && state.previewStore.details[taskId],\n clientConfig: state.auth.clientConfig,\n };\n};\n\nconst mapDispatchToProps = dispatch => ({\n ...bindActionCreators(PreviewStore.actionCreators, dispatch),\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(LoadPreviewTask);\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { makeStyles } from '@material-ui/core/styles';\nimport { useDispatch, useSelector } from 'react-redux';\nimport classnames from 'classnames';\n\nimport * as PreviewStore from '../../../app/store/PreviewStore';\n\nimport { TaskContent } from '../../../youwell-common/components';\nimport urls from '../../../app/urls';\nimport { parseInternalLink } from '../../../common/taskContentUtils';\nimport AddCommentOverlay from './AddCommentOverlay';\nimport { getGetResponseFunc } from '../../../youwell-common/responseUtils';\n\nconst styles = () => ({\n root: {\n // Flex-display with wrap needed for card-layout on page\n display: 'flex',\n flexWrap: 'wrap',\n justifyContent: 'space-between',\n\n '@media print': {\n display: 'block',\n },\n },\n});\n\nconst useStyles = makeStyles(theme => styles(theme), { name: 'PreviewTaskContent' });\n\n\nconst PreviewTaskContent = ({ forwardedRef, task, noHiddenStateValue }) => {\n const classes = useStyles();\n const dispatch = useDispatch();\n\n const allTaskResponses = useSelector(state => state.previewStore.responses);\n const allTasksDetails = useSelector(state => state.previewStore.details);\n const commentElementId = useSelector(state => state.previewStore.commentElementId);\n\n // task.patientProgramElementId is \"undefined\" but this works.. Should maybe make more robust?\n const responsesForCurrentTask = allTaskResponses && allTaskResponses[task.patientProgramElementId]\n && allTaskResponses[task.patientProgramElementId][task.id];\n\n const updateResponse = (responses) => {\n const responseData = {\n taskId: task.id,\n taskVersion: task.version,\n responses,\n };\n\n dispatch(PreviewStore.actionCreators.updateResponse(responseData));\n };\n\n const saveChanges = (callback) => {\n if (callback) {\n callback();\n }\n };\n\n const getLinkUrl = (link) => {\n const { taskOrModuleId, hash } = parseInternalLink(link);\n return `${urls.preview.home}/${taskOrModuleId}${hash}`;\n };\n\n const getProgramItem = id => (allTasksDetails ? allTasksDetails[id] : null);\n\n return (\n \n );\n};\n\nPreviewTaskContent.propTypes = {\n forwardedRef: PropTypes.object,\n task: PropTypes.object.isRequired,\n noHiddenStateValue: PropTypes.bool,\n};\n\nPreviewTaskContent.defaultProps = {\n forwardedRef: null,\n noHiddenStateValue: false,\n};\n\nconst WithRef = React.forwardRef((props, ref) => );\nexport default WithRef;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar store_1 = require(\"../../app/store\");\nvar components_1 = require(\"../../youwell-common/components\");\nvar urls_1 = __importDefault(require(\"../../app/urls\"));\nvar ProgramError_1 = __importDefault(require(\"./components/ProgramError\"));\nvar TaskGroup_1 = __importDefault(require(\"./TaskGroup\"));\nvar TaskPage_1 = __importStar(require(\"./TaskPage\"));\nvar Index = function () {\n var currentProgram = (0, store_1.useYouwellSelector)(function (state) { return state.programStore.currentProgram; });\n if (!currentProgram) {\n return React.createElement(ProgramError_1.default, null);\n }\n return (React.createElement(react_router_dom_1.Switch, null,\n React.createElement(react_router_dom_1.Route, { exact: true, path: \"\".concat(urls_1.default.inside.program, \"/:elementGroup\"), component: TaskGroup_1.default }),\n React.createElement(react_router_dom_1.Route, { exact: true, path: \"\".concat(urls_1.default.inside.program, \"/:elementGroup/:elementIndex/\").concat(urls_1.default.inside.parts.resumeLatest), component: TaskPage_1.TaskPageRedirect }),\n React.createElement(react_router_dom_1.Route, { exact: true, path: \"\".concat(urls_1.default.inside.program, \"/:elementGroup/:elementIndex/:subIndex?\"), component: TaskPage_1.default }),\n React.createElement(react_router_dom_1.Route, { component: components_1.PageNotFound })));\n};\nexports.default = Index;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar prop_types_1 = __importDefault(require(\"prop-types\"));\nvar styles_1 = require(\"@material-ui/core/styles\");\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar core_1 = require(\"@material-ui/core\");\nvar dateUtils_1 = require(\"../../youwell-common/dateUtils\");\nvar icons_1 = require(\"../../common/icons\");\nvar components_1 = require(\"../../common/components\");\nvar breadcrumbUtil_1 = require(\"../../common/breadcrumbUtil\");\nvar store_1 = require(\"../../app/store\");\nvar translate_1 = __importDefault(require(\"../../app/localization/translate\"));\nvar useStyles = (0, styles_1.makeStyles)(function (theme) { return ({\n root: {\n boxShadow: theme.shadows[1],\n },\n modules: {\n display: 'flex',\n flexDirection: 'column',\n borderTop: theme.youwell.borders.normal,\n borderTopColor: theme.palette.secondary.main,\n borderTopWidth: 4,\n },\n task: {\n padding: theme.spacing(2, 2),\n display: 'flex',\n alignItems: 'center',\n borderBottom: theme.youwell.borders.normal,\n },\n completed: {},\n unavailable: {},\n name: {\n flex: '1 1 auto',\n '$unavailable &': {\n color: theme.palette.text.secondary,\n },\n },\n moduleDate: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n preIcon: {\n width: 40,\n },\n done: {\n color: theme.youwell.colors.green,\n },\n notDone: {\n color: theme.youwell.colors.red,\n },\n noTasksAssigned: {\n padding: theme.spacing(4),\n margin: theme.spacing(2),\n },\n disabled: {\n pointerEvents: 'none',\n cursor: 'default',\n opacity: 0.7,\n },\n}); });\nvar TaskGroup = function () {\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var elementGroup = (0, react_router_dom_1.useParams)().elementGroup;\n var clientConfig = (0, store_1.useYouwellSelector)(function (state) { return state.auth.clientConfig; });\n var currentProgram = (0, store_1.useYouwellSelector)(function (state) { return state.programStore.currentProgram; });\n var _a = React.useState(false), modalOpen = _a[0], setModalOpen = _a[1];\n var clickElement = function (element) { return function (e) {\n if (element.disabled) {\n e.preventDefault();\n setModalOpen(true);\n }\n }; };\n var closeModal = function () {\n setModalOpen(false);\n };\n return (React.createElement(components_1.PageLayout, { breadcrumb: (0, breadcrumbUtil_1.getBreadCrumb)(translate(\"patientProgramElementGroups.\".concat(elementGroup)), translate, clientConfig) },\n React.createElement(\"div\", { className: classes.root }, currentProgram && currentProgram.groupedElements[elementGroup].length > 0 ? (React.createElement(React.Fragment, null,\n React.createElement(\"div\", { className: classes.modules }, currentProgram.groupedElements[elementGroup].map(function (element) {\n var _a;\n return (React.createElement(react_router_dom_1.Link, { key: element.id, className: (0, classnames_1.default)(classes.task, (_a = {}, _a[classes.completed] = element.completed, _a[classes.unavailable] = element.disabled, _a)), to: (0, breadcrumbUtil_1.getElementLink)(element), onClick: clickElement(element) },\n React.createElement(\"div\", { className: classes.preIcon },\n React.createElement(React.Fragment, null,\n element.completed && React.createElement(icons_1.CompletedIcon, { className: classes.done }),\n !element.completed && new Date(element.startTime) <= new Date() && React.createElement(icons_1.NotDoneIcon, { className: classes.notDone }))),\n React.createElement(core_1.Typography, { className: classes.name }, element.name),\n element.isNotStarted && (React.createElement(core_1.Typography, { variant: \"caption\", color: \"textSecondary\", className: classes.moduleDate }, (0, dateUtils_1.dateWithOptionalTime)(element.startTime)))));\n })))) : (React.createElement(core_1.Typography, { align: \"center\", color: \"textSecondary\", className: classes.noTasksAssigned, display: \"block\" }, translate('noTasksAssigned')))),\n React.createElement(core_1.Modal, { \"aria-labelledby\": \"modal-title\", \"aria-describedby\": \"modal-description\", open: modalOpen, onClose: closeModal },\n React.createElement(\"div\", null,\n React.createElement(core_1.IconButton, { onClick: closeModal, title: translate('close') },\n React.createElement(icons_1.CloseIcon, null)),\n React.createElement(core_1.Typography, { variant: \"subtitle1\", id: \"modal-title\", gutterBottom: true }, translate('scheduledTasks.elementNotAvailable')),\n React.createElement(core_1.Typography, { id: \"modal-description\" }, translate('scheduledTasks.elementNotAvailableDescription'))))));\n};\nTaskGroup.propTypes = {\n match: prop_types_1.default.shape({\n params: prop_types_1.default.shape({\n elementGroup: prop_types_1.default.string.isRequired,\n }).isRequired,\n }).isRequired,\n};\nexports.default = TaskGroup;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TaskPageRedirect = void 0;\nvar React = __importStar(require(\"react\"));\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar ProgramStore = __importStar(require(\"../../app/store/ProgramStore\"));\nvar urls_1 = __importDefault(require(\"../../app/urls\"));\nvar components_1 = require(\"../../common/components\");\nvar components_2 = require(\"../../youwell-common/components\");\nvar MyTaskContent_1 = __importDefault(require(\"./components/MyTaskContent\"));\nvar TaskNavigation_1 = __importDefault(require(\"./components/TaskNavigation\"));\nvar breadcrumbUtil_1 = require(\"../../common/breadcrumbUtil\");\nvar taskUtils_1 = require(\"../../common/taskUtils\");\nvar store_1 = require(\"../../app/store\");\nvar translate_1 = __importDefault(require(\"../../app/localization/translate\"));\nvar constants_1 = require(\"../../youwell-common/constants\");\nvar TaskPageRedirect = function () {\n var _a, _b;\n var _c = (0, react_router_dom_1.useParams)(), elementGroup = _c.elementGroup, elementIndex = _c.elementIndex;\n var currentProgram = (0, store_1.useYouwellSelector)(function (state) { return state.programStore.currentProgram; });\n if (!currentProgram) {\n return null;\n }\n var task = (0, taskUtils_1.getTask)(currentProgram, elementGroup, elementIndex);\n if (!task) {\n return React.createElement(components_1.InfoMessage, { messageKey: \"noTask\" });\n }\n if (currentProgram.isActiveProgram && task.module) {\n var firstNotVisited = (_a = task.module.tasks) === null || _a === void 0 ? void 0 : _a.findIndex(function (d) { return !d.visited; });\n var firstNotCompleted = (_b = task.module.tasks) === null || _b === void 0 ? void 0 : _b.findIndex(function (d) { return !d.completed; });\n var latestIndex = 0;\n if (firstNotCompleted < 0) { // All tasks completed (and then also visited), go to first task\n latestIndex = 0;\n }\n else if (firstNotVisited === firstNotCompleted) { // Last visited page is also completed. Go to that page (visited - 1)\n latestIndex = firstNotVisited - 1;\n }\n else if (firstNotVisited > firstNotCompleted) { // visited many but not completed all along the way, go to first not completed\n latestIndex = firstNotCompleted;\n }\n else if (firstNotVisited < 0) { // all tasks visited, but not all completed, go to first not completed\n latestIndex = firstNotCompleted;\n }\n if (latestIndex < 0) {\n latestIndex = 0;\n }\n return (React.createElement(react_router_dom_1.Redirect, { to: \"\".concat(urls_1.default.inside.program, \"/\").concat(elementGroup, \"/\").concat(elementIndex, \"/\").concat(latestIndex) }));\n }\n return (React.createElement(react_router_dom_1.Redirect, { to: \"\".concat(urls_1.default.inside.program, \"/\").concat(elementGroup, \"/\").concat(elementIndex) }));\n};\nexports.TaskPageRedirect = TaskPageRedirect;\nvar TaskPage = function () {\n var _a, _b;\n var translate = (0, translate_1.default)();\n var dispatch = (0, store_1.useYouwellDispatch)();\n var _c = (0, react_router_dom_1.useParams)(), elementGroup = _c.elementGroup, elementIndex = _c.elementIndex, subIndex = _c.subIndex;\n var clientConfig = (0, store_1.useYouwellSelector)(function (state) { return state.auth.clientConfig; });\n var currentProgram = (0, store_1.useYouwellSelector)(function (state) { return state.programStore.currentProgram; });\n var taskContentRef = React.createRef();\n if (!currentProgram) {\n return null;\n }\n var task = (0, taskUtils_1.getTask)(currentProgram, elementGroup, elementIndex, subIndex);\n if (!task) {\n return React.createElement(components_1.InfoMessage, { messageKey: \"noTask\" });\n }\n var visitTask = function () {\n if (currentProgram.isActiveProgram && !task.visited) {\n dispatch(ProgramStore.actionCreators.visitTask({\n ppeId: task.patientProgramElementId,\n id: task.id,\n }, { reducerParams: { patientProgramId: currentProgram.id, taskId: task.id } }));\n }\n };\n var sidemenu = task.showSideMenu ? {\n currentIndex: task.currentTaskNr,\n title: task.moduleName,\n menuItems: (_b = (_a = task.module) === null || _a === void 0 ? void 0 : _a.tasks.map(function (t, i) { return ({\n text: t.name,\n settings: t.settings,\n url: \"\".concat(urls_1.default.inside.program, \"/\").concat(task.elementGroup, \"/\").concat(task.elementIndex, \"/\").concat(i),\n notify: !task.isSeparateItemsInModule && t.visited && !t.completed && t.hasQuestions,\n visited: t.visited,\n }); })) !== null && _b !== void 0 ? _b : [],\n } : undefined;\n var canAnswer = currentProgram.isActiveProgram\n || (currentProgram.status === constants_1.patientProgramStatus.inactive && task.elementGroup === constants_1.systemElementGroups.scheduled);\n return (React.createElement(components_1.PageLayout, { title: task.taskName, breadcrumb: (0, breadcrumbUtil_1.getBreadCrumb)(task.taskName, translate, clientConfig, task), progress: task.showProgress ? task.progress : null, task: task, sideMenu: sidemenu, key: task.id },\n React.createElement(components_1.PageTitle, { title: \"\".concat(translate('header.title'), \" - \").concat(task.moduleName) }),\n React.createElement(components_1.TrackActivity, { label: \"\".concat(task.elementGroup, \"/task\"), patientProgramId: currentProgram.id, patientProgramElementId: task.patientProgramElementId, taskId: task.id }),\n React.createElement(components_2.DelayedFetch, { dataCall: visitTask, delaySeconds: clientConfig.appSetup.visitTaskDelay }),\n React.createElement(MyTaskContent_1.default, { patientProgramElementId: task.patientProgramElementId, task: task, readOnly: !canAnswer, ref: taskContentRef }),\n React.createElement(TaskNavigation_1.default, { task: task, taskContentRef: taskContentRef, readOnly: !canAnswer })));\n};\nexports.default = TaskPage;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AUTOSAVE_TIMEOUT_INTERVAL = void 0;\nvar React = __importStar(require(\"react\"));\nvar prop_types_1 = __importDefault(require(\"prop-types\"));\nvar styles_1 = require(\"@material-ui/core/styles\");\nvar react_redux_1 = require(\"react-redux\");\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar react_router_1 = require(\"react-router\");\nvar ProgramStore = __importStar(require(\"../../../app/store/ProgramStore\"));\nvar components_1 = require(\"../../../youwell-common/components\");\nvar taskContentUtils_1 = require(\"../../../common/taskContentUtils\");\nvar taskUtils_1 = require(\"../../../common/taskUtils\");\nvar responseUtils_1 = require(\"../../../youwell-common/responseUtils\");\nvar WorkSheet_1 = __importDefault(require(\"./WorkSheet\"));\nvar store_1 = require(\"../../../app/store\");\nvar translate_1 = __importDefault(require(\"../../../app/localization/translate\"));\nvar useStyles = (0, styles_1.makeStyles)(({\n root: {\n // Flex-display with wrap needed for card-layout on page\n display: 'flex',\n flexWrap: 'wrap',\n justifyContent: 'space-between',\n '@media print': {\n display: 'block',\n },\n },\n}), { name: 'MyTaskContent' });\nexports.AUTOSAVE_TIMEOUT_INTERVAL = 1000; // miliseconds\nvar MyTaskContent = function (_a) {\n var _b;\n var task = _a.task, patientProgramElementId = _a.patientProgramElementId, className = _a.className, forwardedRef = _a.forwardedRef, readOnly = _a.readOnly;\n var classes = useStyles();\n var dispatch = (0, react_redux_1.useDispatch)();\n var saveTimer = React.useRef();\n var translate = (0, translate_1.default)();\n var clientConfig = (0, store_1.useYouwellSelector)(function (state) { return state.auth.clientConfig; });\n var currentProgram = (0, store_1.useYouwellSelector)(function (state) { return state.programStore.currentProgram; });\n var allTaskResponses = (0, store_1.useYouwellSelector)(function (state) { return state.programStore.currentProgramTaskResponses; });\n var _c = React.useState(null), changeId = _c[0], setChangeId = _c[1];\n var responsesForCurrentTask = task.patientProgramElementId ? (_b = allTaskResponses === null || allTaskResponses === void 0 ? void 0 : allTaskResponses[task.patientProgramElementId]) === null || _b === void 0 ? void 0 : _b[task.id] : null;\n var formId = responsesForCurrentTask === null || responsesForCurrentTask === void 0 ? void 0 : responsesForCurrentTask.formId;\n var updateResponse = function (responses) {\n var responseData = {\n taskId: task.id,\n taskVersion: task.version,\n patientProgramElementId: patientProgramElementId,\n formId: formId,\n responses: responses,\n };\n setChangeId(Date.now());\n dispatch(ProgramStore.actionCreators.updateResponse(responseData));\n };\n var saveResponses = React.useCallback(function (taskResponses, callback, background, submitForm) {\n var responseData = (changeId || submitForm) && (0, responseUtils_1.getUpdatedResponsesForTask)(taskResponses, patientProgramElementId, task.id, task.version, formId, submitForm);\n if (responseData) {\n dispatch(ProgramStore.actionCreators.saveResponse(responseData, {\n background: background,\n callback: function () {\n setChangeId(function (prevId) { return (prevId === changeId ? null : prevId); });\n if (callback) {\n callback();\n }\n },\n }));\n }\n else if (callback) {\n callback();\n }\n }, [changeId, patientProgramElementId, task.id, task.version, formId, dispatch]);\n var saveChanges = function (callback, submitForm) {\n if (responsesForCurrentTask || submitForm) {\n clearTimeout(saveTimer.current);\n saveResponses(responsesForCurrentTask, callback, false, (submitForm && !(responsesForCurrentTask === null || responsesForCurrentTask === void 0 ? void 0 : responsesForCurrentTask.submitted)));\n }\n else if (callback) {\n callback();\n }\n };\n React.useEffect(function () {\n if (responsesForCurrentTask && changeId) {\n if (saveTimer.current) {\n clearTimeout(saveTimer.current);\n }\n saveTimer.current = setTimeout(function () {\n saveResponses(responsesForCurrentTask, null, true);\n }, exports.AUTOSAVE_TIMEOUT_INTERVAL);\n }\n }, [changeId, responsesForCurrentTask, saveResponses, task.id]);\n var getLinkUrl = function (link) { return (0, taskUtils_1.getProgramContentLink)(link, currentProgram); };\n var getProgramItem = function (id) { return (0, taskContentUtils_1.getItemFromPatientProgram)(currentProgram, id); };\n if (!currentProgram)\n return null;\n return (React.createElement(React.Fragment, null,\n React.createElement(react_router_1.Prompt, { when: !!changeId, message: translate('taskContent.unsavedChangesPrompt') }),\n React.createElement(components_1.TaskContent, { ref: forwardedRef, className: (0, classnames_1.default)(classes.root, className), TaskFormProps: {\n disabled: !!(responsesForCurrentTask === null || responsesForCurrentTask === void 0 ? void 0 : responsesForCurrentTask.submitted),\n readOnly: readOnly,\n }, LinkElementProps: {\n getLinkUrl: getLinkUrl,\n autoplayVideos: clientConfig.appSetup.features.autoplayVideos,\n }, task: task, taskResponses: responsesForCurrentTask, getProgramItem: getProgramItem, getResponses: (0, responseUtils_1.getGetResponseFunc)(allTaskResponses, responsesForCurrentTask, task.patientProgramElementId), onResponse: updateResponse, onSaveChanges: saveChanges, changeId: changeId }),\n task.isWorkSheet && (React.createElement(WorkSheet_1.default, { task: task, currentForm: responsesForCurrentTask, taskContentRef: forwardedRef }))));\n};\nMyTaskContent.propTypes = {\n task: prop_types_1.default.object.isRequired,\n patientProgramElementId: prop_types_1.default.string.isRequired,\n className: prop_types_1.default.string,\n forwardedRef: prop_types_1.default.object,\n readOnly: prop_types_1.default.bool,\n};\nMyTaskContent.defaultProps = {\n className: null,\n forwardedRef: null,\n readOnly: false,\n};\nvar WithRef = React.forwardRef(function (props, ref) { return React.createElement(MyTaskContent, __assign({}, props, { forwardedRef: ref })); });\nexports.default = WithRef;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar styles_1 = require(\"@material-ui/core/styles\");\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar core_1 = require(\"@material-ui/core\");\nvar translate_1 = __importDefault(require(\"../../../app/localization/translate\"));\nvar icons_1 = require(\"../../../common/icons\");\nvar urls_1 = __importDefault(require(\"../../../app/urls\"));\nvar actions_1 = require(\"../../../app/store/actions\");\nvar store_1 = require(\"../../../app/store\");\nvar useStyles = (0, styles_1.makeStyles)(function (theme) { return ({\n root: {\n margin: theme.spacing(4),\n padding: theme.spacing(2),\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n },\n title: {\n marginBottom: theme.spacing(2),\n },\n link: {\n display: 'flex',\n alignItems: 'center',\n },\n icon: {\n marginLeft: theme.spacing(1),\n },\n}); });\nvar ProgramError = function () {\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var hasLoaded = (0, store_1.useYouwellSelector)(function (state) { return Boolean(state.programStore.requests[actions_1.PROGRAM_CURRENTPROGRAM_RECEIVED]\n && state.programStore.requests[actions_1.PROGRAM_CURRENTPROGRAM_RECEIVED].completed); });\n if (!hasLoaded) {\n return null;\n }\n return (React.createElement(core_1.NoSsr, null,\n React.createElement(\"div\", { className: classes.root },\n React.createElement(core_1.Typography, { variant: \"subtitle1\", color: \"error\", className: classes.title }, translate('program.couldNotFindProgram')),\n React.createElement(react_router_dom_1.Link, { to: urls_1.default.inside.home },\n React.createElement(core_1.Typography, { color: \"textSecondary\", className: classes.link },\n translate('program.goToStartPage'),\n React.createElement(icons_1.FowardIcon, { className: classes.icon }))))));\n};\nexports.default = ProgramError;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar core_1 = require(\"@material-ui/core\");\nvar ProgramStore = __importStar(require(\"../../../app/store/ProgramStore\"));\nvar urls_1 = __importDefault(require(\"../../../app/urls\"));\nvar components_1 = require(\"../../../common/components\");\nvar store_1 = require(\"../../../app/store\");\nvar translate_1 = __importDefault(require(\"../../../app/localization/translate\"));\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return ({\n navActions: {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n margin: theme.spacing(8, 0),\n '@media print': {\n display: 'none',\n },\n },\n appActions: {\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n margin: theme.spacing(4, 0),\n '@media print': {\n display: 'none',\n },\n },\n navButton: {\n margin: theme.spacing(0, 6),\n },\n navIconLeft: {\n marginRight: theme.spacing(1),\n },\n navIconRight: {\n marginLeft: theme.spacing(1),\n },\n}); });\nvar TaskNavigation = function (_a) {\n var task = _a.task, taskContentRef = _a.taskContentRef, readOnly = _a.readOnly;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var dispatch = (0, store_1.useYouwellDispatch)();\n var _b = React.useState(0), incompleteTaskIndex = _b[0], setIncompleteTaskIndex = _b[1];\n var _c = React.useState(false), showChoiceNavigateDialog = _c[0], setShowChoiceNavigateDialog = _c[1];\n var goBack = function () {\n window.history.back();\n };\n var clickNext = function (nextDirection) { return function () {\n var currentTaskNr = task.currentTaskNr, elementIndex = task.elementIndex, elementGroup = task.elementGroup;\n var isTaskInModule = !!task.module;\n var nextTaskNr = (currentTaskNr || 0) + nextDirection;\n var isLastTask = !task.listLength || nextTaskNr > task.listLength - 1;\n var isFirstTask = nextTaskNr < 0;\n var next = isTaskInModule ? \"\".concat(elementIndex, \"/\").concat(nextTaskNr) : \"\".concat(nextTaskNr);\n var redirect = '';\n if (task.redirectHomeAfterLastTask && isLastTask) {\n redirect = urls_1.default.inside.home;\n }\n else if (task.saveAndAbortNavigation && (!isTaskInModule || (isFirstTask || isLastTask))) {\n redirect = urls_1.default.inside.home;\n }\n else if (isFirstTask || isLastTask) {\n if (isTaskInModule) {\n redirect = urls_1.default.inside.home;\n }\n else {\n redirect = \"\".concat(urls_1.default.inside.program, \"/\").concat(elementGroup);\n }\n }\n else {\n redirect = \"\".concat(urls_1.default.inside.program, \"/\").concat(elementGroup, \"/\").concat(next);\n }\n var lastTaskCallback = function () {\n var newIincompleteTaskIndex = task.module ? task.module.tasks.findIndex(function (d) { return !d.completed; }) : -1;\n if (newIincompleteTaskIndex > -1) {\n setShowChoiceNavigateDialog(true);\n setIncompleteTaskIndex(newIincompleteTaskIndex);\n }\n else {\n dispatch(ProgramStore.actionCreators.redirect(urls_1.default.inside.home));\n }\n };\n var go = function () {\n if (isLastTask && task.showPopupAfterLastTask) {\n lastTaskCallback();\n }\n else {\n dispatch(ProgramStore.actionCreators.redirect(redirect));\n }\n };\n if (taskContentRef === null || taskContentRef === void 0 ? void 0 : taskContentRef.current) {\n if (readOnly) {\n dispatch(ProgramStore.actionCreators.redirect(redirect));\n }\n else if (nextDirection > 0) {\n taskContentRef.current.validateAndSave(go, task.isSubmitTask);\n }\n else {\n taskContentRef.current.saveWithoutValidation(go);\n }\n }\n }; };\n var cancelNavigate = function () {\n setShowChoiceNavigateDialog(false);\n };\n var elementIndex = task.elementIndex, elementGroup = task.elementGroup;\n var isTaskInModule = !!task.module;\n var isLastTask = !task.listLength || task.currentTaskNr === task.listLength - 1;\n var isFirstTask = task.currentTaskNr === 0;\n var prevText = task.saveAndAbortNavigation && (isFirstTask || !isTaskInModule) ? 'cancel' : 'task.goBack';\n var nextText = task.saveAndAbortNavigation && (isLastTask || !isTaskInModule) ? (task.hasQuestions ? 'send' : 'task.completeTask')\n : isLastTask ? 'task.completeTask' : 'task.goForward';\n var hideCompleteButton = isLastTask && !task.saveAndAbortNavigation && !task.showCompleteNavigation;\n return (React.createElement(React.Fragment, null,\n (task.saveAndAbortNavigation || task.showNextPrevNavigation) && (React.createElement(\"div\", { className: classes.navActions },\n React.createElement(core_1.Button, { variant: \"outlined\", color: \"primary\", style: { visibility: task.hidePrevNavigationIfFirstTask && isFirstTask ? 'hidden' : 'visible' }, onClick: clickNext(-1) }, translate(prevText)),\n !hideCompleteButton && (React.createElement(core_1.Button, { color: \"primary\", variant: \"contained\", onClick: clickNext(1) }, translate(nextText))))),\n React.createElement(\"div\", { className: classes.appActions },\n task.showBackNavigation && (React.createElement(core_1.Button, { onClick: goBack, className: classes.navButton }, translate('task.goBack'))),\n task.showHomeNavigation && !task.saveAndAbortNavigation && (React.createElement(core_1.Button, { component: react_router_dom_1.Link, to: urls_1.default.inside.home, className: classes.navButton }, translate('task.goToHomePage')))),\n React.createElement(components_1.ChoiceNavigationDialog, { open: showChoiceNavigateDialog, onCancel: cancelNavigate, title: translate('task.moduleIncompletedHeader'), description: translate('task.moduleIncompletedDescription'), primaryText: translate('task.goToLastUnfinished'), primaryLink: \"\".concat(urls_1.default.inside.program, \"/\").concat(elementGroup, \"/\").concat(elementIndex, \"/\").concat(incompleteTaskIndex), secondaryText: translate('task.goToOverview'), secondaryLink: urls_1.default.inside.home })));\n};\nTaskNavigation.defaultProps = {\n readOnly: false,\n};\nexports.default = TaskNavigation;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar styles_1 = require(\"@material-ui/core/styles\");\nvar core_1 = require(\"@material-ui/core\");\nvar ProgramStore = __importStar(require(\"../../../app/store/ProgramStore\"));\nvar dateUtils_1 = require(\"../../../youwell-common/dateUtils\");\nvar store_1 = require(\"../../../app/store\");\nvar translate_1 = __importDefault(require(\"../../../app/localization/translate\"));\nvar useStyles = (0, styles_1.makeStyles)(function (theme) { return ({\n root: {\n background: theme.palette.common.white,\n marginTop: theme.spacing(4),\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'flex-start',\n },\n previous: {\n width: '50%',\n padding: theme.spacing(2),\n },\n list: {\n maxHeight: 300,\n overflow: 'auto',\n background: theme.palette.grey[50],\n },\n buttonContainer: {\n width: '50%',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n },\n button: {\n margin: theme.spacing(4, 2),\n minWidth: 120,\n },\n}); }, { name: 'WorkSheet' });\nvar WorkSheet = function (_a) {\n var task = _a.task, currentForm = _a.currentForm, taskContentRef = _a.taskContentRef;\n var classes = useStyles();\n var dispatch = (0, store_1.useYouwellDispatch)();\n var translate = (0, translate_1.default)();\n // const responsesForCurrentTask = useSelector(state => state.programStore.currentProgramTaskResponses?.[task.patientProgramElementId]?.[task.id]);\n var forms = (0, store_1.useYouwellSelector)(function (state) { var _a, _b; return ((_b = (_a = state.programStore.allForms) === null || _a === void 0 ? void 0 : _a[task.patientProgramElementId]) === null || _b === void 0 ? void 0 : _b[task.id]); });\n React.useEffect(function () {\n if (task.isWorkSheet && !forms) {\n dispatch(ProgramStore.actionCreators.getResponseForms({ requestParams: { patientProgramElementId: task.patientProgramElementId, taskId: task.id } }));\n }\n }, [dispatch, forms, task.id, task.isWorkSheet, task.patientProgramElementId]);\n var addNewForm = function () {\n var _a;\n if (currentForm === null || currentForm === void 0 ? void 0 : currentForm.submitted) {\n dispatch(ProgramStore.actionCreators.setCurrentForm(task.patientProgramElementId, task.id, null));\n }\n else {\n var currentSubmittedForm_1 = currentForm ? __assign(__assign({}, currentForm), { submitted: new Date() }) : null;\n (_a = taskContentRef === null || taskContentRef === void 0 ? void 0 : taskContentRef.current) === null || _a === void 0 ? void 0 : _a.submitForm(function () {\n dispatch(ProgramStore.actionCreators.updateAllFormsList(task.patientProgramElementId, task.id, currentSubmittedForm_1));\n dispatch(ProgramStore.actionCreators.setCurrentForm(task.patientProgramElementId, task.id, null));\n });\n }\n };\n var selectForm = function (form) { return function () {\n dispatch(ProgramStore.actionCreators.setCurrentForm(task.patientProgramElementId, task.id, form));\n }; };\n return (React.createElement(\"div\", { className: classes.root },\n forms && forms.length > 0 && (React.createElement(\"div\", { className: classes.previous },\n React.createElement(core_1.Typography, { variant: \"subtitle1\" }, translate('worksheet.previous')),\n React.createElement(core_1.List, { className: classes.list }, forms.map(function (r) { return (React.createElement(core_1.ListItem, { key: r.formId, button: true, onClick: selectForm(r), selected: r.formId === (currentForm === null || currentForm === void 0 ? void 0 : currentForm.formId) },\n React.createElement(core_1.ListItemText, { primary: r.submitted ? (0, dateUtils_1.timestamp)(r.submitted, translate) : translate('worksheet.current') }))); })))),\n React.createElement(\"div\", { className: classes.buttonContainer },\n React.createElement(core_1.Button, { className: classes.button, variant: \"contained\", color: \"primary\", onClick: addNewForm, disabled: !currentForm }, (currentForm === null || currentForm === void 0 ? void 0 : currentForm.submitted) ? translate('worksheet.newForm') : translate('worksheet.send')))));\n};\nWorkSheet.defaultProps = {\n currentForm: null,\n taskContentRef: null,\n};\nexports.default = WorkSheet;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\n\nimport { getImageUrl } from '../../youwell-common/apiUrls';\nimport { DefaultProgramImage } from '../../common/image';\nimport { Image } from '../../youwell-common/components';\n\nconst styles = () => ({\n root: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n image: {\n width: '50%',\n marginTop: '10%',\n },\n});\n\nclass Home extends React.Component {\n render() {\n const {\n classes, currentProgram,\n } = this.props;\n\n const programImageUrl = currentProgram && currentProgram.frontImageId ? getImageUrl(currentProgram.frontImageId) : null;\n\n return (\n
\n {programImageUrl ? (\n \n ) : (\n \n )}\n
\n );\n }\n}\n\nHome.propTypes = {\n classes: PropTypes.object.isRequired,\n // translate: PropTypes.func.isRequired,\n currentProgram: PropTypes.object,\n};\n\nHome.defaultProps = {\n currentProgram: null,\n};\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n currentProgram: state.publicStore.currentProgramId && state.publicStore.details && state.publicStore.details[state.publicStore.currentProgramId],\n});\n\nexport default connect(mapStateToProps)(withStyles(styles)(Home));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport {\n Redirect,\n Route, Switch,\n} from 'react-router-dom';\nimport { connect } from 'react-redux';\nimport { bindActionCreators } from 'redux';\n\nimport { IdleTimer } from '../../youwell-common/components';\nimport { logoutReasons } from '../../youwell-common/constants';\nimport Auth, { authTypes } from '../../youwell-common/Auth';\n\nimport * as AuthStore from '../../app/store/AuthStore';\n\nimport urls from '../../app/urls';\nimport { InternalLinkLoader, Layout } from '../../common/components';\nimport LoadPublicProgram from './components/LoadPublicProgram';\nimport Program from './Program';\nimport Module from './Module';\nimport Task from './Task';\nimport Home from './Home';\nimport { getPublicProgramContentLink } from '../../common/taskUtils';\nimport SessionFooter from './components/SessionFooter';\n\nconst USER_IDLE_TIMEOUT_IN_MINUTES = 30;\n\nclass Index extends React.Component {\n logoutOnIdle = () => {\n if (Auth.isUserAuthenticated(authTypes.public)) {\n this.props.logout(logoutReasons.idleTimeout, urls.public.home);\n }\n }\n\n render() {\n const { program } = this.props;\n\n return (\n <>\n \n\n getPublicProgramContentLink(link, program)} />\n\n \n\n \n \n \n \n \n } />\n \n \n\n \n \n \n );\n }\n}\n\nIndex.propTypes = {\n logout: PropTypes.func.isRequired,\n program: PropTypes.object,\n};\n\nIndex.defaultProps = {\n program: null,\n};\n\nconst mapStateToProps = state => ({\n clientConfig: state.auth.clientConfig,\n program: state.publicStore.details && state.publicStore.currentProgramId && state.publicStore.details[state.publicStore.currentProgramId],\n});\n\nconst mapDispatchToProps = dispatch => ({\n logout: bindActionCreators(AuthStore.actionCreators, dispatch).logout,\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Index);\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport classnames from 'classnames';\n\nimport { Link, Redirect } from 'react-router-dom';\nimport {\n Typography, Hidden,\n} from '@material-ui/core';\n\nimport urls from '../../app/urls';\nimport { getImageUrl } from '../../youwell-common/apiUrls';\nimport { Image, HtmlContent } from '../../youwell-common/components';\nimport { DefaultProgramImage } from '../../common/image';\nimport { elementInfoClasses, tableListClasses, iconClasses } from '../../app/style/sharedClasses';\nimport { InfoMessage, PageLayout } from '../../common/components';\nimport { PUBLIC_PROGRAM_RECEIVED } from '../../app/store/actions';\n\n\nconst styles = theme => ({\n ...elementInfoClasses(theme),\n ...tableListClasses(theme),\n ...iconClasses(theme),\n});\n\nclass Module extends React.Component {\n render() {\n const {\n classes, translate, program, match, hasLoaded,\n } = this.props;\n const { moduleIndex, programId } = match.params;\n\n const module = program && program.modules && program.modules[moduleIndex];\n\n if (!module) {\n return hasLoaded ? () : null;\n }\n\n const isSingleModule = program.modules && program.modules.length === 1;\n\n if (isSingleModule) {\n return (\n \n );\n }\n\n let moduleImage = module.moduleImageId ? getImageUrl(module.moduleImageId) : null;\n if (!moduleImage && !!program.frontImageId) {\n moduleImage = getImageUrl(program.frontImageId);\n }\n\n return (\n \n
\n
\n {moduleImage ? {translate('module.moduleImageAltText')} : (\n \n )}\n
\n\n
\n
\n \n {module.name}\n \n
\n\n \n
\n
\n\n
\n
\n \n \n {translate('content')}\n \n \n {module.name}\n \n \n
\n\n
\n {module.tasks && module.tasks.map((task, i) => (\n \n
\n \n {i + 1}\n \n
\n
\n \n {task.name}\n \n
\n \n ))}\n
\n
\n \n );\n }\n}\n\nModule.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n match: PropTypes.shape({\n params: PropTypes.shape({\n programId: PropTypes.string.isRequired,\n moduleIndex: PropTypes.string.isRequired,\n }).isRequired,\n }).isRequired,\n hasLoaded: PropTypes.bool.isRequired,\n program: PropTypes.object,\n};\n\nModule.defaultProps = {\n program: null,\n};\n\nconst mapStateToProps = (state, ownProps) => ({\n translate: getTranslate(state.localize),\n program: state.publicStore.details && state.publicStore.details[ownProps.match.params.programId],\n hasLoaded: Boolean(state.publicStore.requests[`${PUBLIC_PROGRAM_RECEIVED}/${ownProps.match.params.programId}`]\n && state.publicStore.requests[`${PUBLIC_PROGRAM_RECEIVED}/${ownProps.match.params.programId}`].completed),\n});\n\nexport default connect(mapStateToProps)(withStyles(styles)(Module));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport classnames from 'classnames';\n\nimport { Link, Redirect } from 'react-router-dom';\nimport {\n Typography,\n} from '@material-ui/core';\n\nimport urls from '../../app/urls';\nimport { getImageUrl } from '../../youwell-common/apiUrls';\nimport { Image, HtmlContent } from '../../youwell-common/components';\nimport { DefaultProgramImage } from '../../common/image';\nimport { elementInfoClasses, tableListClasses } from '../../app/style/sharedClasses';\nimport { InfoMessage, PageLayout } from '../../common/components';\nimport { PUBLIC_PROGRAM_RECEIVED } from '../../app/store/actions';\n\nconst styles = theme => ({\n ...tableListClasses(theme),\n ...elementInfoClasses(theme),\n main: {\n display: 'flex',\n flexDirection: 'column',\n\n [theme.breakpoints.down('xs')]: {\n paddingTop: theme.spacing(1),\n },\n },\n programHeader: {\n marginBottom: theme.spacing(8),\n },\n programImage: {\n float: 'left',\n width: '50%',\n marginRight: theme.spacing(2),\n },\n programDescription: {\n\n },\n});\n\nclass Program extends React.Component {\n render() {\n const {\n classes, translate, program, hasLoaded,\n } = this.props;\n\n\n if (!program) {\n return hasLoaded ? () : null;\n }\n\n if (program.keyValues?.publicRedirectModule) {\n const moduleIndex = program.modules?.findIndex(d => d.id === program.keyValues.publicRedirectModule)\n if (moduleIndex > -1) {\n return (\n \n );\n }\n }\n\n const isSingleModule = program.modules && program.modules.length === 1;\n\n if (isSingleModule) {\n return (\n \n );\n }\n\n const programImage = program.frontImageId ? getImageUrl(program.frontImageId) : null;\n\n return (\n \n
\n
\n
\n {programImage ? \"\" : (\n \n )}\n
\n\n
\n
\n \n {program.name}\n \n
\n\n \n
\n
\n\n
\n
\n \n {translate('modules')}\n \n
\n\n
\n {program.modules && program.modules.map((module, i) => (\n \n
\n \n {i + 1}\n \n
\n
\n \n {module.name}\n \n
\n \n ))}\n
\n
\n
\n
\n\n );\n }\n}\n\nProgram.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n program: PropTypes.object,\n hasLoaded: PropTypes.bool.isRequired,\n};\n\nProgram.defaultProps = {\n program: null,\n};\n\nconst mapStateToProps = (state, ownProps) => ({\n translate: getTranslate(state.localize),\n program: state.publicStore.details && state.publicStore.details[ownProps.match.params.programId],\n hasLoaded: Boolean(state.publicStore.requests[`${PUBLIC_PROGRAM_RECEIVED}/${ownProps.match.params.programId}`]\n && state.publicStore.requests[`${PUBLIC_PROGRAM_RECEIVED}/${ownProps.match.params.programId}`].completed),\n});\n\nexport default connect(mapStateToProps)(withStyles(styles)(Program));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport { bindActionCreators } from 'redux';\nimport { Button } from '@material-ui/core';\nimport { Redirect } from 'react-router';\nimport { PrevIcon, NextIcon } from '../../common/icons';\n\nimport * as PublicStore from '../../app/store/PublicStore';\nimport urls from '../../app/urls';\nimport { InfoMessage, PageLayout } from '../../common/components';\nimport PublicTaskContent from './components/PublicTaskContent';\nimport { PUBLIC_PROGRAM_RECEIVED } from '../../app/store/actions';\nimport { DelayedFetch } from '../../youwell-common/components';\nimport { parseBoolString } from '../../youwell-common/stringUtils';\n\nconst styles = theme => ({\n content: {\n border: theme.youwell.borders.dim,\n },\n actions: {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n margin: theme.spacing(4, 0),\n },\n singleactions: {\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n margin: theme.spacing(4, 0),\n },\n navIconLeft: {\n marginRight: theme.spacing(1),\n },\n navIconRight: {\n marginLeft: theme.spacing(1),\n },\n});\n\nclass Task extends React.Component {\n taskContentRef = React.createRef()\n\n clickNext = nextDirection => () => {\n const { program, match } = this.props;\n const { programId, moduleIndex, taskIndex } = match.params;\n\n const module = program && program.modules && program.modules[moduleIndex];\n const task = module && module.tasks && module.tasks[taskIndex];\n\n const currentStep = Number(taskIndex);\n const nextTaskNr = currentStep + nextDirection;\n const isLastTask = nextTaskNr > module.tasks.length - 1;\n const hasExitNodeElement = window.__youwellExitNode === true; // used to define that module should be exited early\n\n let redirect = '';\n if (isLastTask || nextTaskNr < 0) redirect = `${urls.public.home}/${programId}`;\n else redirect = `${urls.public.program}/${programId}/${moduleIndex}/${nextTaskNr}`;\n\n const go = () => {\n if (hasExitNodeElement && nextDirection > 0) {\n this.props.endSession(PublicStore.endSessionReasons.completed, `${urls.public.home}/${programId}`);\n } else {\n this.props.completeTask({ taskId: task.id, stepNr: currentStep }, redirect);\n }\n };\n\n if (this.taskContentRef.current) {\n if (nextDirection > 0) {\n this.taskContentRef.current.validateAndSave(go);\n } else {\n this.taskContentRef.current.saveWithoutValidation(go);\n }\n }\n }\n\n visitTask = () => {\n const { program, match, patientProgramElementId } = this.props;\n const { moduleIndex, taskIndex } = match.params;\n\n const module = program && program.modules && program.modules[moduleIndex];\n const task = module && module.tasks && module.tasks[taskIndex];\n\n if (patientProgramElementId && task) {\n this.props.visitTask({\n ppeId: patientProgramElementId,\n id: task.id,\n });\n }\n }\n\n endSession = () => {\n this.props.endSession(PublicStore.endSessionReasons.completed);\n }\n\n render() {\n const {\n classes, translate, program, match, hasLoaded, latestCompletedStep, clientConfig,\n } = this.props;\n const { programId, moduleIndex, taskIndex } = match.params;\n\n const module = program && program.modules && program.modules[moduleIndex];\n const task = module && module.tasks && module.tasks[taskIndex];\n\n if (!task) {\n return hasLoaded ? () : null;\n }\n\n const isSingleModule = program.modules && program.modules.length === 1;\n\n const taskIndexNr = Number(taskIndex || 0);\n\n const isFirstTask = !taskIndex || taskIndex === '0';\n const moreElementsInGroup = module.tasks.length > 1;\n const isLastTask = !moreElementsInGroup || taskIndexNr === module.tasks.length - 1;\n\n if (taskIndexNr > (latestCompletedStep + 1) && !isLastTask) {\n return (\n \n );\n }\n\n return (\n \n \n {isLastTask && }\n\n \n\n {!isLastTask && (\n
\n {!isFirstTask && (\n \n \n {translate('previous')}\n \n )}\n
\n \n {translate('next')}\n \n \n
\n )}\n \n );\n }\n}\n\nTask.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n clientConfig: PropTypes.object.isRequired,\n match: PropTypes.shape({\n params: PropTypes.shape({\n programId: PropTypes.string.isRequired,\n moduleIndex: PropTypes.string.isRequired,\n taskIndex: PropTypes.string.isRequired,\n }).isRequired,\n }).isRequired,\n completeTask: PropTypes.func.isRequired,\n visitTask: PropTypes.func.isRequired,\n hasLoaded: PropTypes.bool.isRequired,\n latestCompletedStep: PropTypes.number.isRequired,\n program: PropTypes.object,\n patientProgramElementId: PropTypes.string,\n endSession: PropTypes.func.isRequired,\n};\n\nTask.defaultProps = {\n program: null,\n patientProgramElementId: null,\n};\n\nconst mapStateToProps = (state, ownProps) => ({\n translate: getTranslate(state.localize),\n clientConfig: state.auth.clientConfig,\n program: state.publicStore.details && state.publicStore.details[ownProps.match.params.programId],\n patientProgramElementId: state.publicStore.patientProgramElementId,\n hasLoaded: Boolean(state.publicStore.requests[`${PUBLIC_PROGRAM_RECEIVED}/${ownProps.match.params.programId}`]\n && state.publicStore.requests[`${PUBLIC_PROGRAM_RECEIVED}/${ownProps.match.params.programId}`].completed),\n latestCompletedStep: state.publicStore.latestCompletedStep,\n});\n\nconst mapDispatchToProps = dispatch => ({\n ...bindActionCreators(PublicStore.actionCreators, dispatch),\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(withStyles(styles)(Task));\n","import * as React from 'react';\nimport { useParams } from 'react-router';\n\nimport * as PublicStore from '../../../app/store/PublicStore';\nimport Auth, { authTypes } from '../../../youwell-common/Auth';\nimport { useYouwellDispatch, useYouwellSelector } from '../../../app/store';\nimport { LoadOrgConfig } from '../../../common/components';\n\nconst LoadPublicProgram = () => {\n const { programId } = useParams();\n const dispatch = useYouwellDispatch();\n const currentProgram = useYouwellSelector(state => state.publicStore.details?.[programId]);\n const currentOrgId = useYouwellSelector(state => state.publicStore.currentOrgId);\n const hasSessionData = useYouwellSelector(state => Boolean(state.publicStore.patientId && state.publicStore.progress));\n\n React.useEffect(() => {\n if (!currentProgram) {\n dispatch(PublicStore.actionCreators.getPublicProgram(programId, { isPage: true }));\n }\n }, [currentProgram, dispatch, programId]);\n\n React.useEffect(() => {\n if (Auth.isUserAuthenticated(authTypes.public) && currentProgram && !hasSessionData) {\n dispatch(PublicStore.actionCreators.getSession(programId));\n }\n }, [currentProgram, dispatch, hasSessionData, programId]);\n\n if (currentOrgId) {\n return (\n \n );\n }\n\n return null;\n}\n\nexport default LoadPublicProgram;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { makeStyles } from '@material-ui/core/styles';\nimport { useDispatch, useSelector } from 'react-redux';\nimport classnames from 'classnames';\n\nimport * as PublicStore from '../../../app/store/PublicStore';\n\nimport { Loading, TaskContent } from '../../../youwell-common/components';\nimport { AUTOSAVE_TIMEOUT_INTERVAL } from '../../program/components/MyTaskContent';\nimport Auth, { authTypes } from '../../../youwell-common/Auth';\nimport { getItemFromProgram } from '../../../common/taskContentUtils';\nimport { getPublicProgramContentLink } from '../../../common/taskUtils';\nimport { getGetResponseFunc, getUpdatedResponsesForTask } from '../../../youwell-common/responseUtils';\n\nconst styles = () => ({\n root: {\n // Flex-display with wrap needed for card-layout on page\n display: 'flex',\n flexWrap: 'wrap',\n justifyContent: 'space-between',\n\n '@media print': {\n display: 'block',\n },\n },\n});\n\nconst useStyles = makeStyles(theme => styles(theme), { name: 'PublicTaskContent' });\n\nconst PublicTaskContent = ({\n forwardedRef, program, task, moduleId,\n}) => {\n const classes = useStyles();\n const dispatch = useDispatch();\n\n const saveTimer = React.useRef();\n\n const allTaskResponses = useSelector(state => state.publicStore.responses);\n const patientProgramElementId = useSelector(state => state.publicStore.patientProgramElementId);\n const completedTasks = useSelector(state => state.publicStore.completedTasks);\n const [changeId, setChangeId] = React.useState(null);\n const [showSavingId, setShowSavingId] = React.useState(false);\n\n const responsesForCurrentTask = allTaskResponses && allTaskResponses[patientProgramElementId]\n && allTaskResponses[patientProgramElementId][task.id];\n const formId = responsesForCurrentTask?.formId;\n\n const updateResponse = (responses) => {\n const responseData = {\n programId: program.id,\n moduleId,\n taskId: task.id,\n taskVersion: task.version,\n patientProgramElementId,\n formId,\n responses,\n };\n\n setChangeId(Date.now());\n dispatch(PublicStore.actionCreators.updateResponse(responseData));\n };\n\n const saveResponses = React.useCallback((taskResponses, callback, showIsSaving) => {\n const responseData = changeId && getUpdatedResponsesForTask(taskResponses, patientProgramElementId, task.id, task.version, formId);\n\n if (responseData) {\n if (showIsSaving) {\n setShowSavingId(changeId);\n }\n dispatch(PublicStore.actionCreators.saveResponse(responseData, {\n background: true,\n callback: () => {\n setChangeId(prevId => (prevId === changeId ? null : prevId));\n setShowSavingId(prevId => (prevId === changeId ? null : prevId));\n\n if (callback) {\n callback();\n }\n },\n }));\n } else if (callback) {\n callback();\n }\n }, [changeId, dispatch, formId, patientProgramElementId, task.id, task.version]);\n\n const saveChanges = (callback) => {\n if (responsesForCurrentTask) {\n if (Auth.isUserAuthenticated(authTypes.public)) {\n clearTimeout(saveTimer.current);\n saveResponses(responsesForCurrentTask, callback, true);\n } else {\n const responseData = {\n ...getUpdatedResponsesForTask(responsesForCurrentTask, null, task.id, task.version, null),\n programId: program.id,\n moduleId,\n completedTasks: completedTasks ? Object.keys(completedTasks) : null,\n };\n\n dispatch(PublicStore.actionCreators.sendFirstResponse(responseData, { callback }));\n }\n } else if (callback) {\n callback();\n }\n };\n\n React.useEffect(() => {\n if (responsesForCurrentTask && changeId && Auth.isUserAuthenticated(authTypes.public)) {\n if (saveTimer.current) {\n clearTimeout(saveTimer.current);\n }\n saveTimer.current = setTimeout(() => {\n saveResponses(responsesForCurrentTask);\n }, AUTOSAVE_TIMEOUT_INTERVAL);\n }\n }, [changeId, responsesForCurrentTask, saveResponses, task.id]);\n\n const getLinkUrl = link => getPublicProgramContentLink(link, program);\n\n const getProgramItem = id => getItemFromProgram(program, id);\n\n return (\n <>\n \n\n \n \n );\n};\n\nPublicTaskContent.propTypes = {\n forwardedRef: PropTypes.object,\n task: PropTypes.object.isRequired,\n program: PropTypes.object.isRequired,\n moduleId: PropTypes.string.isRequired,\n};\n\nPublicTaskContent.defaultProps = {\n forwardedRef: null,\n};\n\nconst WithRef = React.forwardRef((props, ref) => );\nexport default WithRef;\n","import * as React from 'react';\nimport { makeStyles } from '@material-ui/core/styles';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport { Button } from '@material-ui/core';\n\nimport * as PublicStore from '../../../app/store/PublicStore';\nimport urls from '../../../app/urls';\n\nconst styles = theme => ({\n root: {\n margin: theme.spacing(4, 0, 2),\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n button: {\n textTransform: 'none',\n },\n});\n\nconst useStyles = makeStyles(theme => styles(theme), { name: 'SessionFooter' });\n\nconst SessionFooter = () => {\n const classes = useStyles();\n const dispatch = useDispatch();\n\n const translate = useSelector(state => getTranslate(state.localize));\n const currentProgramId = useSelector(state => state.publicStore.currentProgramId);\n const patientProgramElementId = useSelector(state => state.publicStore.patientProgramElementId);\n\n if (!patientProgramElementId) {\n return null;\n }\n\n const endSession = () => {\n const redirect = `${urls.public.program}/${currentProgramId}`;\n dispatch(PublicStore.actionCreators.endSession(PublicStore.endSessionReasons.manualEnd, redirect));\n };\n\n return (\n
\n \n
\n );\n};\n\nexport default SessionFooter;\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar react_router_dom_1 = require(\"react-router-dom\");\nvar urls_1 = __importDefault(require(\"../../app/urls\"));\nvar components_1 = require(\"../../youwell-common/components\");\nvar components_2 = require(\"../../common/components\");\nvar SingleTaskPage_1 = __importDefault(require(\"./SingleTaskPage\"));\nvar taskContentUtils_1 = require(\"../../common/taskContentUtils\");\nvar Index = /** @class */ (function (_super) {\n __extends(Index, _super);\n function Index() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.getLinkUrl = function (link) {\n var _a = (0, taskContentUtils_1.parseInternalLink)(link), taskOrModuleId = _a.taskOrModuleId, hash = _a.hash;\n return \"\".concat(urls_1.default.singlepage, \"/\").concat(taskOrModuleId).concat(hash);\n };\n return _this;\n }\n Index.prototype.render = function () {\n return (React.createElement(components_2.Layout, { hideHeaderLinks: true, hideMenu: true },\n React.createElement(components_2.InternalLinkLoader, { linkUrlFunction: this.getLinkUrl }),\n React.createElement(react_router_dom_1.Switch, null,\n React.createElement(react_router_dom_1.Route, { path: \"\".concat(urls_1.default.singlepage, \"/:taskId\"), component: SingleTaskPage_1.default }),\n React.createElement(react_router_dom_1.Route, { component: components_1.PageNotFound }))));\n };\n return Index;\n}(React.Component));\nexports.default = Index;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar react_1 = require(\"react\");\nvar react_redux_1 = require(\"react-redux\");\nvar react_router_1 = require(\"react-router\");\nvar PreviewStore = __importStar(require(\"../../app/store/PreviewStore\"));\nvar components_1 = require(\"../../common/components\");\nvar PreviewTaskContent_1 = __importDefault(require(\"../preview/components/PreviewTaskContent\"));\nvar actions_1 = require(\"../../app/store/actions\");\nvar store_1 = require(\"../../app/store\");\nvar SingleTaskPage = function () {\n var taskId = (0, react_router_1.useParams)().taskId;\n var dispatch = (0, react_redux_1.useDispatch)();\n var task = (0, store_1.useYouwellSelector)(function (state) { var _a; return (_a = state.previewStore.details) === null || _a === void 0 ? void 0 : _a[taskId]; });\n var hasLoaded = (0, store_1.useYouwellSelector)(function (state) { return Boolean(state.previewStore.requests[\"\".concat(actions_1.PREVIEW_TASK_RECEIVED, \"/\").concat(taskId)]\n && state.previewStore.requests[\"\".concat(actions_1.PREVIEW_TASK_RECEIVED, \"/\").concat(taskId)].completed); });\n (0, react_1.useEffect)(function () {\n if (taskId && !hasLoaded && !task) {\n dispatch(PreviewStore.actionCreators.getElement(taskId));\n }\n }, [dispatch, hasLoaded, task, taskId]);\n if (!task) {\n return hasLoaded ? (React.createElement(components_1.InfoMessage, { messageKey: \"noContent\" })) : null;\n }\n return (React.createElement(components_1.PageLayout, { title: task.name, task: task },\n React.createElement(\"div\", null,\n React.createElement(PreviewTaskContent_1.default\n // @ts-ignore -- must update PreviewTaskContent to typescript\n , { \n // @ts-ignore -- must update PreviewTaskContent to typescript\n task: task }))));\n};\nexports.default = SingleTaskPage;\n","\nimport { sendError } from '../../youwell-common/errorUtils';\n\nlet myPeerConnection;\nlet negotiationStarted = false;\n\nconst videoPeerConnections = {\n\n endPeerConnection: () => {\n if (myPeerConnection) {\n myPeerConnection.onIceCandidate = null;\n myPeerConnection.ontrack = null;\n myPeerConnection.onnegotiationneeded = null;\n myPeerConnection.onremovetrack = null;\n myPeerConnection.oniceconnectionstatechange = null;\n myPeerConnection.onicegatheringstatechange = null;\n myPeerConnection.onicecandidateerror = null;\n myPeerConnection.onsignalingstatechange = null;\n myPeerConnection.close();\n myPeerConnection = null;\n negotiationStarted = false;\n }\n },\n\n startPeerConnection: (id, sendCandidateCallback, remoteTrackCallback, trackRemovedCallback, disconnectedCallback) => {\n myPeerConnection = new RTCPeerConnection({\n iceServers: [\n ],\n });\n\n myPeerConnection.onicecandidate = (evt) => {\n if (evt.candidate) {\n sendCandidateCallback({\n target: id,\n type: 'new-ice-candidate',\n data: evt.candidate,\n });\n }\n };\n myPeerConnection.ontrack = (evt) => { remoteTrackCallback(evt.streams[0]); };\n myPeerConnection.onnegotiationneeded = () => {\n if (!negotiationStarted) {\n negotiationStarted = true;\n }\n };\n myPeerConnection.onremovetrack = () => trackRemovedCallback();\n myPeerConnection.oniceconnectionstatechange = () => {\n switch (myPeerConnection.iceConnectionState) {\n case 'closed':\n case 'failed':\n case 'disconnected':\n disconnectedCallback();\n break;\n default:\n break;\n }\n };\n // myPeerConnection.onicegatheringstatechange = (evt) => { console.log(`Ice connection state change: ${myPeerConnection.iceConnectionState}`); };\n myPeerConnection.onicecandidateerror = error => sendError({ sender: 'VideoPeerConnection', error: error && error.toString() });\n myPeerConnection.onsignalingstatechange = () => {\n switch (myPeerConnection.signalingState) {\n case 'closed':\n disconnectedCallback();\n break;\n default:\n break;\n }\n };\n },\n\n setupPeerConnectionStream: (localStream) => {\n localStream.getTracks().forEach(track => myPeerConnection.addTrack(track, localStream));\n },\n\n answerPeerConnection: (myId, offerSDP, createAnswerCallback) => {\n const remoteSDP = new RTCSessionDescription({\n type: 'offer',\n sdp: offerSDP,\n });\n\n myPeerConnection.setRemoteDescription(remoteSDP)\n .then(() => {\n myPeerConnection.createAnswer()\n .then((answer) => { myPeerConnection.setLocalDescription(answer); return answer; })\n .then((answer) => {\n createAnswerCallback({\n target: myId,\n type: 'videochat-answer',\n data: answer.sdp,\n });\n })\n .catch(error => sendError({ sender: 'VideoPeerConnection', error: error && error.toString() }));\n }).catch(error => sendError({ sender: 'VideoPeerConnection', error: error && error.toString() }));\n },\n\n receiveIceCandidate: (candidateData) => {\n myPeerConnection.addIceCandidate(candidateData);\n },\n};\n\nexport default videoPeerConnections;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar styles_1 = require(\"@material-ui/core/styles\");\nvar constants_1 = require(\"../../youwell-common/constants\");\nvar translate_1 = __importDefault(require(\"../../app/localization/translate\"));\nvar store_1 = require(\"../../app/store\");\nvar dateUtils_1 = require(\"../../youwell-common/dateUtils\");\nvar YouwellVideoChat_1 = __importDefault(require(\"./YouwellVideoChat\"));\nvar arrayUtils_1 = require(\"../../youwell-common/arrayUtils\");\nvar components_1 = require(\"../../common/components\");\nvar useStyles = (0, styles_1.makeStyles)(function (theme) { return (0, core_1.createStyles)({\n root: {\n paddingTop: theme.spacing(2),\n },\n heading: {\n marginBottom: theme.spacing(2),\n },\n appointmentListItem: {\n marginBottom: theme.spacing(1),\n background: theme.palette.common.white,\n },\n alertMessage: {\n padding: theme.spacing(3),\n },\n noAppointments: {\n padding: theme.spacing(3),\n },\n}); });\nvar Videochat = function () {\n var _a;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var patientData = (0, store_1.useYouwellSelector)(function (state) { return state.auth.profileData; });\n var _b = React.useState(null), selectedAppointment = _b[0], setSelectedAppointment = _b[1];\n var _c = React.useState(''), alertMessage = _c[0], setAlertMessage = _c[1];\n var startCall = function (appointment) { return function () {\n switch (appointment.provider) {\n case constants_1.ChatVideoProviders.Join: {\n var start = new Date(\"\".concat(appointment.start, \"Z\"));\n var end = (0, dateUtils_1.addHours)(start, 1);\n if (start > new Date()) {\n setAlertMessage(translate('videoChat.notStarted'));\n }\n else if (end < new Date()) {\n setAlertMessage(translate('videoChat.ended'));\n }\n else if (appointment.connectionUrl) {\n var joinUrl = \"\".concat(appointment.connectionUrl\n // replaced due to bug in HnH Join. To be removed..\n .replace('https://join.test.video.nhn.no/conference?', 'https://delta.test.video.nhn.no/webapp3/#/?conference='), \"&name=\").concat(patientData === null || patientData === void 0 ? void 0 : patientData.name);\n window.open(joinUrl, '_blank', 'noreferrer');\n }\n break;\n }\n default: {\n setSelectedAppointment(appointment.id);\n break;\n }\n }\n }; };\n if (!patientData) {\n return null;\n }\n var isInFuture = function (appointment) {\n switch (appointment.provider) {\n case constants_1.ChatVideoProviders.Join: {\n var start = new Date(\"\".concat(appointment.start, \"Z\"));\n return start >= new Date()\n || (0, dateUtils_1.addHours)(start, 1) > new Date();\n }\n default: {\n return (0, dateUtils_1.isFuture)(appointment.start, true);\n }\n }\n };\n var orderedAppointments = ((_a = (0, arrayUtils_1.sortByDateAscending)(patientData.appointments, 'start')) !== null && _a !== void 0 ? _a : [])\n .filter(function (d) { return (0, dateUtils_1.compareDates)(d.start, -1); }) // Dont show older than 1 day\n .map(function (d) { return (__assign(__assign({}, d), { isFuture: isInFuture(d) })); });\n return (React.createElement(\"div\", { className: classes.root },\n React.createElement(components_1.PortalModal, { heading: translate('videoChat.unavailable'), open: !!alertMessage, onClose: function () { return setAlertMessage(''); } },\n React.createElement(\"div\", { className: classes.alertMessage },\n React.createElement(core_1.Typography, { variant: \"body1\" }, alertMessage))),\n selectedAppointment ? (React.createElement(YouwellVideoChat_1.default, { onCancel: function () { return setSelectedAppointment(null); } })) : (React.createElement(React.Fragment, null,\n React.createElement(core_1.Typography, { variant: \"h6\", className: classes.heading }, translate('videoChat.appointmentListTitle')),\n React.createElement(core_1.List, null, orderedAppointments.map(function (appointment) { return (React.createElement(core_1.ListItem, { className: classes.appointmentListItem, key: appointment.id },\n React.createElement(core_1.ListItemText, { primary: (0, dateUtils_1.timestamp)(appointment.start, translate) }),\n appointment.isFuture ? (React.createElement(core_1.Button, { onClick: startCall(appointment), variant: \"contained\", color: \"primary\" }, translate('videoChat.joinCall'))) : (React.createElement(core_1.Typography, { variant: \"subtitle1\" }, translate('videoChat.ended'))))); })),\n orderedAppointments.length === 0 && (React.createElement(core_1.Typography, { variant: \"subtitle1\", className: classes.noAppointments }, translate('videoChat.noAppointments')))))));\n};\nexports.default = Videochat;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport { bindActionCreators } from 'redux';\n\nimport {\n Button,\n} from '@material-ui/core';\n\nimport {\n HubConnectionBuilder, LogLevel, HttpTransportType,\n} from '@microsoft/signalr';\n\nimport videoPeerConnections from './VideoPeerConnection';\n\nimport apiUrls from '../../youwell-common/apiUrls';\nimport { sendError } from '../../youwell-common/errorUtils';\n\nimport * as UserStore from '../../app/store/UserStore';\n\n\nconst styles = theme => ({\n root: {\n },\n startActions: {\n padding: theme.spacing(2),\n display: 'flex',\n justifyContent: 'center',\n },\n videos: {\n padding: theme.spacing(1),\n display: 'flex',\n justifyContent: 'center',\n flexWrap: 'wrap',\n },\n video: {\n margin: theme.spacing(2),\n },\n inCallActions: {\n margin: theme.spacing(4),\n display: 'flex',\n justifyContent: 'center',\n },\n cancelButton: {\n margin: theme.spacing(0, 2),\n },\n});\n\n\nclass YouwellVideochat extends React.Component {\n state = {\n isInTheCall: false,\n isBeingCalled: false,\n isReady: false,\n infoText: '',\n }\n\n componentWillUnmount() {\n if (this.signalRConnection) {\n this.signalRConnection.stop().catch(this.onError);\n }\n }\n\n onError = (error) => {\n sendError({ sender: 'Videochat', error: error && error.toString() });\n }\n\n onCreateAnswer = (answer) => {\n if (this.signalRConnection) {\n this.signalRConnection.send('FinalizeJoinVideoCallRoom', answer)\n .catch(this.onError);\n }\n }\n\n onSendCandidate = (candidate) => {\n this.signalRConnection.send('SendIceCandidate', candidate)\n .catch(this.onError);\n }\n\n onReceiveCandidate = (id, type, candidate) => {\n if (id === this.props.profile.id) {\n videoPeerConnections.receiveIceCandidate(candidate);\n }\n }\n\n onRemoteStream = (remoteStream) => {\n if (this.remoteVideo && this.remoteVideo.srcObject !== remoteStream) {\n this.remoteVideo.srcObject = remoteStream;\n }\n }\n\n onTrackRemoved = () => {\n if (this.remoteVideo && this.remoteVideo.srcObject) {\n const stream = this.remoteVideo.srcObject;\n const trackList = stream.getTracks();\n if (trackList.length === 0) {\n this.endCall();\n }\n }\n }\n\n onPeerDisconnected = () => {\n this.endCall();\n }\n\n onSignalrCloseVideocall = () => {\n this.endCall();\n }\n\n onSignalrReceiveSDP = (sdp) => {\n if (this.hasVideoStreamStarted === false) {\n this.hasVideoStreamStarted = true;\n if (videoPeerConnections) {\n this.getUserMedia(\n { min: 160, ideal: 320, max: 320 },\n { min: 120, ideal: 240, max: 240 },\n ).then((video) => {\n videoPeerConnections.startPeerConnection(this.props.profile.id,\n this.onSendCandidate,\n this.onRemoteStream,\n this.onTrackRemoved,\n this.onPeerDisconnected);\n videoPeerConnections.setupPeerConnectionStream(video);\n videoPeerConnections.answerPeerConnection(this.props.profile.id, sdp, this.onCreateAnswer);\n })\n .catch(this.onError);\n }\n }\n }\n\n onSignalrJoinVideocallFailed = () => {\n this.setState({ isInTheCall: false, isBeingCalled: false });\n }\n\n onSignalRStart = () => {\n this.hasVideoStreamStarted = false;\n if (this.signalRConnection) {\n const data = {\n target: this.props.profile.id,\n type: 'join-videocall',\n };\n this.signalRConnection.send('JoinVideoCallRoom', data)\n .catch(this.onError);\n }\n }\n\n getUserMedia = (width, height) => new Promise((resolve, reject) => {\n navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia;\n const op = {\n video: {\n width,\n height,\n },\n audio: true,\n };\n\n if (navigator.getUserMedia) {\n navigator.getUserMedia(op, (stream) => {\n if (this.localVideo) {\n this.localVideo.srcObject = stream;\n }\n resolve(stream);\n }, (err) => {\n reject(err);\n });\n }\n })\n\n call = () => {\n this.setState({ isInTheCall: true }, this.onSignalRStart);\n }\n\n beReadyForCall = () => {\n this.setState({ isReady: true, infoText: this.props.translate('videoChat.notBeingCalled') }, () => {\n if (this.signalRConnection) {\n const data = {\n target: this.props.profile.id,\n type: 'ready-videocall',\n data: '',\n };\n this.signalRConnection.send('PatientIsWaiting', data)\n .catch(this.onError);\n }\n });\n }\n\n cancelCall = () => {\n this.setState({ isReady: false, infoText: '' }, () => {\n this.props.onCancel();\n });\n }\n\n endCall = () => {\n if (this.localVideo && this.localVideo.srcObject) {\n this.localVideo.srcObject.getTracks().forEach(track => track.stop());\n }\n if (this.remoteVideo && this.remoteVideo.srcObject) {\n this.remoteVideo.srcObject.getTracks().forEach(track => track.stop());\n }\n this.setState({ isInTheCall: false,\n isBeingCalled: false,\n isReady: false,\n infoText: this.props.translate('videoChat.callInterrupted') }, () => {\n if (this.signalRConnection) {\n const data = {\n target: this.props.profile.id,\n type: 'leave-videocall',\n data: '',\n };\n this.signalRConnection.send('LeaveVideoCallRoom', data)\n .catch(this.onError);\n }\n videoPeerConnections.endPeerConnection();\n });\n }\n\n onSignalrAllowVideocall = (id) => {\n if (id === this.props.profile.id) {\n this.setState({ isBeingCalled: true });\n }\n }\n\n onCallInterrupted = () => {\n if (this.state.isInTheCall) {\n this.endCall();\n } else if (this.state.isBeingCalled) {\n this.setState({ isBeingCalled: false, isReady: true, infoText: this.props.translate('videoChat.notBeingCalled') }, () => {});\n }\n }\n\n onPingPatient = () => {\n if (this.state.isReady && this.signalRConnection) {\n const data = {\n target: this.props.profile.id,\n type: 'ready-videocall',\n data: '',\n };\n this.signalRConnection.send('PatientIsWaiting', data)\n .catch(this.onError);\n }\n }\n\n createConnection = () => {\n if (!this.signalRConnection) {\n const options = {\n transport: HttpTransportType.WebSockets,\n };\n this.signalRConnection = new HubConnectionBuilder()\n .configureLogging(LogLevel.Warning)\n .withUrl(`${apiUrls.baseUrl}/${apiUrls.socket.videoChat}`, options)\n .withAutomaticReconnect()\n .build();\n this.signalRConnection.on('CallerIsWaiting', this.onSignalrAllowVideocall);\n this.signalRConnection.on('CloseVideocall', this.onSignalrCloseVideocall);\n this.signalRConnection.on('ReceiveVideocallSDP', this.onSignalrReceiveSDP);\n this.signalRConnection.on('ReceiveIceCandidate', this.onReceiveCandidate); // this never fires?!\n this.signalRConnection.on('JoinVideoCallRoomFailed', this.onSignalrJoinVideocallFailed);\n this.signalRConnection.on('CallInterrupted', this.onCallInterrupted);\n this.signalRConnection.on('PingPatient', this.onPingPatient);\n\n this.signalRConnection.onclose(() => {\n\n });\n\n this.signalRConnection.start().then(() => {}).catch(this.onError);\n }\n }\n\n render() {\n const {\n classes, translate, profile,\n } = this.props;\n\n if (!profile) {\n return null;\n }\n\n if (this.state.infoText === '') {\n this.setState({ infoText: this.props.translate('videoChat.notReadyYet') });\n }\n\n this.createConnection();\n\n return (\n
\n {this.state.isInTheCall ? (\n \n
\n
\n
\n \n
\n
\n ) : (\n
\n {this.state.isBeingCalled ? (\n
\n \n
\n ) : (\n \n\n
\n

{this.state.infoText}

\n
\n\n {this.state.isReady ? (\n <>\n
\n \n
\n \n ) : (\n <>\n
\n \n \n
\n \n )}\n
\n )}\n
\n )}\n
\n );\n }\n}\n\nYouwellVideochat.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n onCancel: PropTypes.func.isRequired,\n profile: PropTypes.object,\n};\n\nYouwellVideochat.defaultProps = {\n profile: null,\n};\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n profile: state.auth.profileData,\n});\n\nconst mapDispatchToProps = dispatch => ({\n ...bindActionCreators(UserStore.actionCreators, dispatch),\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(withStyles(styles)(YouwellVideochat));\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nvar _a, _b, _c, _d, _e, _f;\nObject.defineProperty(exports, \"__esModule\", { value: true });\nrequire(\"core-js/stable\");\nrequire(\"regenerator-runtime/runtime\");\nvar React = __importStar(require(\"react\"));\nvar ReactDOM = __importStar(require(\"react-dom\"));\nvar react_redux_1 = require(\"react-redux\");\nvar connected_react_router_1 = require(\"connected-react-router\");\nvar styles_1 = require(\"@material-ui/core/styles\");\nvar react_localize_redux_1 = require(\"react-localize-redux\");\nvar date_fns_1 = __importDefault(require(\"@date-io/date-fns\"));\n// import enLocale from \"date-fns/locale/en-US\";\nvar nb_1 = __importDefault(require(\"date-fns/locale/nb\"));\nvar pickers_1 = require(\"@material-ui/pickers\");\nvar core_1 = require(\"@material-ui/core\");\nrequire(\"./app/style/styles.less\");\nvar theme_1 = __importDefault(require(\"./app/style/theme\"));\nvar App_1 = __importDefault(require(\"./app/App\"));\nvar PageSettingStore_1 = require(\"./app/store/PageSettingStore\");\nvar apiUrls_1 = require(\"./youwell-common/apiUrls\");\nvar reduxUtils_1 = require(\"./youwell-common/reduxUtils\");\nvar store_1 = __importStar(require(\"./app/store\"));\nvar localization_1 = require(\"./app/localization\");\nvar youwell_common_1 = require(\"./youwell-common\");\nvar constants_1 = require(\"./youwell-common/constants\");\nvar apiUrl = (_a = document.getElementById('react-app')) === null || _a === void 0 ? void 0 : _a.getAttribute('data-api-url');\nvar appVersion = (_b = document.getElementById('react-app')) === null || _b === void 0 ? void 0 : _b.getAttribute('data-app-version');\nvar appConfig = JSON.parse(((_c = document.getElementById('react-app')) === null || _c === void 0 ? void 0 : _c.getAttribute('data-app-config')) || '');\nvar userLanguage = (_d = document.getElementById('react-app')) === null || _d === void 0 ? void 0 : _d.getAttribute('data-user-language');\nif (!apiUrl) {\n throw new Error('Missing asp-prerender parameter: data-apiUrl');\n}\n(0, apiUrls_1.setApiRoot)(apiUrl, appConfig.contentBaseUrl, appConfig.imageContentBaseUrl);\nyouwell_common_1.Auth.setStorageProviderByLoginType((_f = (_e = appConfig.allowedLogins) === null || _e === void 0 ? void 0 : _e[0]) !== null && _f !== void 0 ? _f : constants_1.loginTypes.password);\nPageSettingStore_1.actionCreators.setVersion(appVersion)(store_1.default.dispatch);\nPageSettingStore_1.actionCreators.setAppConfig(appConfig)(store_1.default.dispatch);\nvar localizationInitialization = (0, localization_1.translateInitialization)(appConfig.language || userLanguage);\nvar MainApp = function () {\n var prefersDarkMode = (0, core_1.useMediaQuery)('(prefers-color-scheme: dark)');\n var theme = React.useMemo(function () { return (0, theme_1.default)(appConfig, prefersDarkMode); }, [prefersDarkMode]);\n return (React.createElement(styles_1.MuiThemeProvider, { theme: theme },\n React.createElement(pickers_1.MuiPickersUtilsProvider, { utils: date_fns_1.default, locale: nb_1.default },\n React.createElement(react_localize_redux_1.LocalizeProvider, { store: store_1.default, initialize: localizationInitialization },\n React.createElement(react_redux_1.Provider, { store: store_1.default },\n React.createElement(connected_react_router_1.ConnectedRouter, { history: store_1.history },\n React.createElement(App_1.default, null)))))));\n};\nvar renderApp = function () {\n ReactDOM.render(React.createElement(MainApp, null), document.getElementById('react-app'));\n};\nif (module.hot) {\n module.hot.accept('./app/store', function () {\n (0, reduxUtils_1.updateStore)(store_1.default, store_1.reducers, store_1.history);\n });\n}\nrenderApp();\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PostAppMessage = exports.APPMessages = void 0;\nexports.APPMessages = {\n LoggedInLevel: 'LoggedInLevel',\n CurrentLanguage: 'CurrentLanguage',\n};\nvar PostAppMessage = function (key, value) {\n var _a, _b;\n if ((_a = window.ywAppMessage) === null || _a === void 0 ? void 0 : _a.postMessage) {\n window.ywAppMessage.postMessage(\"\".concat(key, \":\").concat(value));\n }\n if ((_b = window.ReactNativeWebView) === null || _b === void 0 ? void 0 : _b.postMessage) {\n window.ReactNativeWebView.postMessage(\"\".concat(key, \":\").concat(value));\n }\n};\nexports.PostAppMessage = PostAppMessage;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.authTypes = void 0;\nvar AppUtil_1 = require(\"./AppUtil\");\nvar constants_1 = require(\"./constants\");\nvar LOGINLEVEL_KEY = 'yw_ll';\nvar SESSION_LIFETIME_KEY = 'yw_sl';\nvar LOGINTYPE_KEY = 'yw_lt';\nexports.authTypes = {\n user: 'usr',\n orgSelect: 'org',\n external: 'ext',\n public: 'pub',\n};\nvar storageProvider = window.localStorage;\nvar Auth = /** @class */ (function () {\n function Auth() {\n }\n Auth.setStorageProviderByLoginType = function (loginType) {\n switch (loginType) {\n case constants_1.loginTypes.idPorten:\n storageProvider = window.sessionStorage;\n break;\n case constants_1.loginTypes.selfStart:\n case constants_1.loginTypes.password:\n case constants_1.loginTypes.twoFactor:\n default:\n storageProvider = window.localStorage;\n break;\n }\n };\n Auth.isUserAuthenticated = function () {\n var acceptedTypes = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n acceptedTypes[_i] = arguments[_i];\n }\n var hasLoginLevel = this.getLoginLevel() > 0;\n if (!hasLoginLevel)\n return false;\n if ((acceptedTypes === null || acceptedTypes === void 0 ? void 0 : acceptedTypes.length) > 0) {\n var loggedInType = this.getLoginType();\n return acceptedTypes.indexOf(loggedInType) > -1;\n }\n return true;\n };\n Auth.deauthenticateUser = function () {\n storageProvider.setItem(LOGINLEVEL_KEY, '');\n storageProvider.setItem(SESSION_LIFETIME_KEY, '');\n storageProvider.setItem(LOGINTYPE_KEY, '');\n (0, AppUtil_1.PostAppMessage)(AppUtil_1.APPMessages.LoggedInLevel, 0);\n };\n Auth.getLoginLevel = function () {\n return Number(storageProvider.getItem(LOGINLEVEL_KEY)) || 0;\n };\n Auth.getSessionLifetime = function () {\n return Number(storageProvider.getItem(SESSION_LIFETIME_KEY)) || 0;\n };\n Auth.getLoginType = function () {\n return storageProvider.getItem(LOGINTYPE_KEY);\n };\n Auth.setLoginInfo = function (level, sessionLifetime, authType) {\n storageProvider.setItem(LOGINLEVEL_KEY, (level === null || level === void 0 ? void 0 : level.toString()) || '');\n storageProvider.setItem(SESSION_LIFETIME_KEY, (sessionLifetime === null || sessionLifetime === void 0 ? void 0 : sessionLifetime.toString()) || '');\n storageProvider.setItem(LOGINTYPE_KEY, authType || '');\n (0, AppUtil_1.PostAppMessage)(AppUtil_1.APPMessages.LoggedInLevel, level);\n };\n return Auth;\n}());\nexports.default = Auth;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.CookieNames = void 0;\nvar inMemoryCookies = {};\nexports.CookieNames = {\n csrf: '__Secure-yw_rf',\n};\nvar Cookie = /** @class */ (function () {\n function Cookie() {\n }\n /**\n * Gets the value of the given cookie.\n *\n * @param {string} cname Name of a cookie\n */\n Cookie.getValue = function (cname) {\n var _a;\n if (typeof document === 'undefined') {\n return (_a = inMemoryCookies[cname]) !== null && _a !== void 0 ? _a : '';\n }\n var name = \"\".concat(cname, \"=\");\n var decodedCookie = decodeURIComponent(document.cookie);\n var ca = decodedCookie.split(';');\n for (var i = 0; i < ca.length; i++) {\n var c = ca[i];\n while (c.charAt(0) === ' ') {\n c = c.substring(1);\n }\n if (c.indexOf(name) === 0) {\n return c.substring(name.length, c.length);\n }\n }\n return '';\n };\n /**\n * Deletes the given cookie.\n *\n * @param {string} cname Name of a cookie\n */\n Cookie.delete = function (cname) {\n if (typeof document === 'undefined') {\n delete inMemoryCookies[cname];\n }\n else {\n document.cookie = \"\".concat(cname, \"=;expires=Thu, 01 Jan 1970 00:00:00 UTC;path=/\");\n }\n };\n return Cookie;\n}());\nexports.default = Cookie;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.handleOptions = exports.PATCHED = exports.UPDATED = exports.DELETED = exports.INSERTED = exports.DETAILS_RECIEVED = exports.LIST_RECIEVED = exports.REQUEST_COMPLETE = exports.REQUEST_FAILED = exports.REQUEST_START = exports.LOGOUT = exports.CLEAR_ERROR = void 0;\nvar connected_react_router_1 = require(\"connected-react-router\");\nvar apiUrls_1 = __importDefault(require(\"./apiUrls\"));\nvar fetchUtils_1 = require(\"./fetchUtils\");\nvar objectUtils_1 = require(\"./objectUtils\");\nexports.CLEAR_ERROR = 'APP/CLEAR_ERROR';\nexports.LOGOUT = 'APP/LOGOUT';\nexports.REQUEST_START = 'REQUEST_START';\nexports.REQUEST_FAILED = 'REQUEST_FAILED';\nexports.REQUEST_COMPLETE = 'REQUEST_COMPLETE';\nexports.LIST_RECIEVED = 'LIST_RECIEVED';\nexports.DETAILS_RECIEVED = 'DETAILS_RECIEVED';\nexports.INSERTED = 'INSERTED';\nexports.DELETED = 'DELETED';\nexports.UPDATED = 'UPDATED';\nexports.PATCHED = 'PATCHED';\nvar handleOptions = function (options, data, dispatch) {\n if (!options) {\n return;\n }\n if (options.callback) {\n options.callback(data);\n }\n if (options.redirectWithElementId) {\n dispatch((0, connected_react_router_1.push)(\"\".concat(options.redirectWithElementId, \"/\").concat(data.id)));\n }\n else if (options.redirect) {\n dispatch((0, connected_react_router_1.push)(options.redirect));\n }\n else if (options.redirectExternal) {\n window.location.href = options.redirectExternal;\n }\n};\nexports.handleOptions = handleOptions;\nvar handleCatch = function (params, dispatch, storePrefix) { return function (error) {\n if (params.onError) {\n params.onError(error);\n }\n (0, fetchUtils_1.dispatchError)(dispatch, \"\".concat(storePrefix, \"/\").concat(exports.REQUEST_FAILED), params.options, params.requestId || params.completeAction, error, params.onUnauthorized);\n if (params.options && params.options.errorCallback) {\n params.options.errorCallback();\n }\n}; };\nvar handleData = function (params, dispatch, storePrefix) { return function (responseData) {\n var _a, _b;\n if (params.completeAction) {\n dispatch({\n type: params.completeAction,\n data: responseData,\n reducerParams: (_a = params.options) === null || _a === void 0 ? void 0 : _a.reducerParams,\n requestParams: (_b = params.options) === null || _b === void 0 ? void 0 : _b.requestParams,\n inputData: params.body,\n });\n }\n if (params.onData) {\n params.onData(responseData);\n }\n dispatch({ type: \"\".concat(storePrefix, \"/\").concat(exports.REQUEST_COMPLETE), requestId: params.requestId || params.completeAction });\n (0, exports.handleOptions)(params.options, responseData, dispatch);\n}; };\nvar appendUrlData = function (options) {\n if (!options || !options.urlData) {\n return '';\n }\n return \"/\".concat(options.urlData);\n};\nvar setRequests = function (state, requestId, options, current) {\n var _a;\n if (!requestId) {\n return __assign({}, state);\n }\n var requests = __assign(__assign({}, state.requests), (_a = {}, _a[requestId] = __assign(__assign({}, current), { background: options && options.background }), _a));\n var errors = Object.values(requests).reduce(function (prev, curr) { return (curr.error && !curr.background ? __spreadArray(__spreadArray([], prev, true), [curr.error], false) : prev); }, []);\n return __assign(__assign({}, state), { requests: requests, errors: errors.length > 0 ? errors : null, loading: Object.values(requests).reduce(function (prev, curr) { return prev || (curr.loading && !curr.background); }, false) });\n};\nvar clearErrors = function (state) { return (__assign(__assign({}, state), { requests: state.requests ? Object.keys(state.requests).reduce(function (prev, curr) {\n var _a;\n return (__assign(__assign({}, prev), (_a = {}, _a[curr] = __assign(__assign({}, state.requests[curr]), { error: null }), _a)));\n }, {}) : {}, errors: null })); };\nvar ReduxStoreHelper = /** @class */ (function () {\n function ReduxStoreHelper(store_prefix) {\n var _this = this;\n this.STORE_PREFIX = '';\n this.fetch = function (dispatch, params) {\n var _a;\n (0, fetchUtils_1.youwellFetch)(\"\".concat(apiUrls_1.default.baseUrl, \"/\").concat(params.url).concat(appendUrlData(params.options)).concat((0, fetchUtils_1.createRequestParams)((_a = params.options) === null || _a === void 0 ? void 0 : _a.requestParams)), {\n headers: __assign({}, fetchUtils_1.jsonHeader),\n method: params.method || 'GET',\n body: params.body ? JSON.stringify(params.body) : undefined,\n })\n .then((0, fetchUtils_1.handleErrors)(dispatch))\n .then(fetchUtils_1.json)\n .then(handleData(params, dispatch, _this.STORE_PREFIX))\n .catch(handleCatch(params, dispatch, _this.STORE_PREFIX));\n dispatch({\n type: \"\".concat(_this.STORE_PREFIX, \"/\").concat(exports.REQUEST_START), requestId: params.requestId || params.completeAction, options: params.options,\n });\n };\n this.fetchFile = function (dispatch, params) {\n var _a;\n if (!params.file)\n return;\n var formData = new FormData();\n formData.append('file', params.file);\n (0, fetchUtils_1.youwellFetch)(\"\".concat(apiUrls_1.default.baseUrl, \"/\").concat(params.url).concat(appendUrlData(params.options)).concat((0, fetchUtils_1.createRequestParams)((_a = params.options) === null || _a === void 0 ? void 0 : _a.requestParams)), {\n headers: {},\n method: 'POST',\n body: formData,\n })\n .then((0, fetchUtils_1.handleErrors)(dispatch))\n .then(fetchUtils_1.json)\n .then(handleData(params, dispatch, _this.STORE_PREFIX))\n .catch(handleCatch(params, dispatch, _this.STORE_PREFIX));\n dispatch({\n type: \"\".concat(_this.STORE_PREFIX, \"/\").concat(exports.REQUEST_START), requestId: params.requestId || params.completeAction, options: params.options,\n });\n };\n this.fetchBlob = function (dispatch, params) {\n var _a;\n (0, fetchUtils_1.youwellFetch)(\"\".concat(apiUrls_1.default.baseUrl, \"/\").concat(params.url).concat(appendUrlData(params.options)).concat((0, fetchUtils_1.createRequestParams)((_a = params.options) === null || _a === void 0 ? void 0 : _a.requestParams)), {\n headers: __assign({}, fetchUtils_1.jsonHeader),\n method: params.method || 'GET',\n body: params.body ? JSON.stringify(params.body) : undefined,\n })\n .then((0, fetchUtils_1.handleErrors)(dispatch))\n .then(fetchUtils_1.blob)\n .then(handleData(params, dispatch, _this.STORE_PREFIX))\n .catch(handleCatch(params, dispatch, _this.STORE_PREFIX));\n dispatch({\n type: \"\".concat(_this.STORE_PREFIX, \"/\").concat(exports.REQUEST_START), requestId: params.requestId || params.completeAction, options: params.options,\n });\n };\n this.createGetListActionCreator = function (urlPart, COMPLETE_ACTION, requestParameters) { return function (options) { return function (dispatch) {\n _this.fetch(dispatch, {\n url: urlPart,\n options: __assign(__assign({}, options), { requestParams: __assign(__assign({}, requestParameters), options ? options.requestParams : {}) }),\n completeAction: \"\".concat(_this.STORE_PREFIX, \"/\").concat(COMPLETE_ACTION),\n requestId: \"\".concat(_this.STORE_PREFIX, \"/\").concat(COMPLETE_ACTION),\n });\n }; }; };\n this.createGetElementActionCreator = function (urlPart, COMPLETE_ACTION, requestParameters) { return function (elementId, options) { return function (dispatch) {\n _this.fetch(dispatch, {\n url: \"\".concat(urlPart, \"/\").concat(elementId),\n options: __assign(__assign({}, options), { requestParams: __assign(__assign({}, requestParameters), options ? options.requestParams : {}) }),\n completeAction: \"\".concat(_this.STORE_PREFIX, \"/\").concat(COMPLETE_ACTION),\n requestId: \"\".concat(_this.STORE_PREFIX, \"/\").concat(COMPLETE_ACTION, \"/\").concat(elementId),\n });\n }; }; };\n this.createPatchActionCreator = function (urlPart, COMPLETE_ACTION, requestParameters) { return function (body, options) { return function (dispatch) {\n _this.fetch(dispatch, {\n url: urlPart,\n options: __assign(__assign({}, options), { requestParams: __assign(__assign({}, requestParameters), options ? options.requestParams : {}), reducerParams: __assign({ id: body.id, changes: body.changes }, options ? options.reducerParams : {}) }),\n completeAction: \"\".concat(_this.STORE_PREFIX, \"/\").concat(COMPLETE_ACTION),\n method: 'PATCH',\n body: body,\n });\n }; }; };\n this.createInsertActionCreator = function (urlPart, COMPLETE_ACTION, requestParameters) { return _this.createActionCreator(urlPart, COMPLETE_ACTION, 'POST', requestParameters); };\n this.createUpdateActionCreator = function (urlPart, COMPLETE_ACTION, requestParameters) { return _this.createActionCreator(urlPart, COMPLETE_ACTION, 'PUT', requestParameters); };\n this.createDeleteActionCreator = function (urlPart, COMPLETE_ACTION, requestParameters) { return function (elementToDelete, options) { return function (dispatch) {\n _this.fetch(dispatch, {\n url: \"\".concat(urlPart, \"/\").concat(elementToDelete.id),\n options: __assign(__assign({}, options), { requestParams: __assign(__assign({}, requestParameters), options ? options.requestParams : {}) }),\n method: 'DELETE',\n requestId: (options && options.requestId) || COMPLETE_ACTION,\n onData: function (dataFromServer) {\n dispatch({ type: \"\".concat(_this.STORE_PREFIX, \"/\").concat(COMPLETE_ACTION), data: dataFromServer || elementToDelete, reducerParams: options === null || options === void 0 ? void 0 : options.reducerParams, requestParams: options === null || options === void 0 ? void 0 : options.requestParams });\n },\n });\n }; }; };\n this.createFileUploadActionCreator = function (urlPart, COMPLETE_ACTION) { return function (file, options) { return function (dispatch) {\n _this.fetchFile(dispatch, {\n url: urlPart,\n options: options,\n completeAction: \"\".concat(_this.STORE_PREFIX, \"/\").concat(COMPLETE_ACTION),\n file: file,\n });\n }; }; };\n this.createFileDownloadActionCreator = function (urlPart, COMPLETE_ACTION, fileName) { return function (options) { return function (dispatch) {\n _this.fetchBlob(dispatch, {\n url: urlPart,\n completeAction: \"\".concat(_this.STORE_PREFIX, \"/\").concat(COMPLETE_ACTION),\n onData: function (data) {\n (0, fetchUtils_1.downloadBlobAsFile)(fileName || data.filename || 'Unnamed export.zip_or_csv', data.contentType, data.blobData);\n },\n options: options,\n });\n }; }; };\n this.createActionCreator = function (urlPart, COMPLETE_ACTION, method, requestParameters) { return function (body, options) { return function (dispatch) {\n _this.fetch(dispatch, {\n url: urlPart,\n options: __assign(__assign({}, options), { requestParams: __assign(__assign({}, requestParameters), options ? options.requestParams : {}) }),\n completeAction: \"\".concat(_this.STORE_PREFIX, \"/\").concat(COMPLETE_ACTION),\n method: method || 'POST',\n body: body,\n });\n }; }; };\n this.defaultActionCreators = function (urlPart) { return ({\n redirect: function (url, replaceHistory) { return function (dispatch) {\n if (replaceHistory) {\n dispatch((0, connected_react_router_1.replace)(url));\n }\n else {\n dispatch((0, connected_react_router_1.push)(url));\n }\n }; },\n goBack: function () { return function (dispatch) {\n dispatch((0, connected_react_router_1.goBack)());\n }; },\n getList: _this.createGetListActionCreator(urlPart, exports.LIST_RECIEVED),\n getElement: _this.createGetElementActionCreator(urlPart, exports.DETAILS_RECIEVED),\n insertElement: _this.createActionCreator(urlPart, exports.INSERTED),\n deleteElement: _this.createDeleteActionCreator(urlPart, exports.DELETED),\n updateElement: _this.createUpdateActionCreator(urlPart, exports.UPDATED),\n patchElement: _this.createPatchActionCreator(urlPart, exports.PATCHED),\n }); };\n this.defaultInitialState = {\n errors: [],\n loading: false,\n list: null,\n details: null,\n requests: {},\n };\n this.defaultReducer = function (state, action, initialState) {\n var _a, _b, _c, _d, _e;\n switch (action.type) {\n case connected_react_router_1.LOCATION_CHANGE: {\n return clearErrors(state);\n }\n case exports.CLEAR_ERROR: {\n return clearErrors(state);\n }\n case exports.LOGOUT: {\n return initialState;\n }\n case \"\".concat(_this.STORE_PREFIX, \"/\").concat(exports.REQUEST_START): {\n var _f = action, requestId = _f.requestId, options = _f.options;\n return setRequests(state, requestId, options, {\n loading: true,\n completed: false,\n error: null,\n });\n }\n case \"\".concat(_this.STORE_PREFIX, \"/\").concat(exports.REQUEST_COMPLETE): {\n var _g = action, requestId = _g.requestId, options = _g.options;\n return setRequests(state, requestId, options, {\n loading: false,\n completed: true,\n error: null,\n });\n }\n case \"\".concat(_this.STORE_PREFIX, \"/\").concat(exports.REQUEST_FAILED): {\n var _h = action, requestId = _h.requestId, options = _h.options, error = _h.error;\n /* eslint-disable no-console */\n if ((console === null || console === void 0 ? void 0 : console.error) && error) {\n console.error(requestId, error);\n }\n /* eslint-enable no-console */\n return setRequests(state, requestId, options, {\n loading: false,\n completed: true,\n error: error,\n });\n }\n case \"\".concat(_this.STORE_PREFIX, \"/\").concat(exports.LIST_RECIEVED): {\n var data = action.data;\n return __assign(__assign({}, state), { list: data });\n }\n case \"\".concat(_this.STORE_PREFIX, \"/\").concat(exports.DETAILS_RECIEVED): {\n var data = action.data;\n return __assign(__assign({}, state), { details: __assign(__assign({}, state.details || {}), (_a = {}, _a[data.id] = data, _a)) });\n }\n case \"\".concat(_this.STORE_PREFIX, \"/\").concat(exports.INSERTED): {\n var data = action.data;\n return __assign(__assign({}, state), { list: state.list ? __spreadArray(__spreadArray([], state.list, true), [data], false) : null, details: __assign(__assign({}, state.details || {}), (_b = {}, _b[data.id] = data, _b)) });\n }\n case \"\".concat(_this.STORE_PREFIX, \"/\").concat(exports.DELETED): {\n var data_1 = action.data;\n return __assign(__assign({}, state), { list: state.list ? state.list.filter(function (e) { return e.id !== data_1.id; }) : null, details: __assign(__assign({}, state.details || {}), (_c = {}, _c[data_1.id] = undefined, _c)) });\n }\n case \"\".concat(_this.STORE_PREFIX, \"/\").concat(exports.UPDATED): {\n var data_2 = action.data;\n return __assign(__assign({}, state), { details: __assign(__assign({}, state.details || {}), (_d = {}, _d[data_2.id] = data_2, _d)), list: state.list ? state.list.map(function (e) { return (e.id === data_2.id ? data_2 : e); }) : null });\n }\n case \"\".concat(_this.STORE_PREFIX, \"/\").concat(exports.PATCHED): {\n var _j = action, data = _j.data, reducerParams_1 = _j.reducerParams;\n if (!reducerParams_1 || !state.details || !state.details[reducerParams_1.id]) {\n return state || initialState;\n }\n var newData_1 = (0, objectUtils_1.mergePatchChangesInStore)(state.details[reducerParams_1.id], reducerParams_1.changes, data);\n return __assign(__assign({}, state), { details: __assign(__assign({}, state.details || {}), (_e = {}, _e[reducerParams_1.id] = __assign(__assign({}, newData_1), { __changes: {}, __hasChanges: false }), _e)), list: state.list ? state.list.map(function (e) { return (e.id === reducerParams_1.id ? newData_1 : e); }) : null });\n }\n default: {\n return null;\n }\n }\n };\n this.STORE_PREFIX = store_prefix;\n }\n return ReduxStoreHelper;\n}());\nexports.default = ReduxStoreHelper;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.currentRoot = exports.getImageUrl = exports.setApiRoot = void 0;\nvar urlvalues = {\n baseUrl: '',\n contentBaseUrl: '',\n imageContentBaseUrl: '',\n admin: {\n admin: 'api/admin/admin',\n log: 'api/admin/log',\n organization: 'api/admin/organization',\n stats: 'api/admin/stats',\n taskEngine: 'api/admin/taskEngine',\n },\n app: {\n auth: 'api/app/auth',\n message: 'api/app/message',\n program: 'api/app/program',\n public: 'api/app/public',\n preview: 'api/app/preview',\n user: 'api/app/user',\n sensor: 'api/app/sensor',\n sleep: 'api/app/sleep',\n activity: 'api/app/activity',\n media: 'api/app/media',\n external: 'api/app/external/user',\n healthRegistration: 'api/app/healthregistration',\n medication: 'api/app/medication',\n },\n fihr: {\n observation: 'api/fihr/observation',\n },\n portal: {\n patient: 'api/portal/patient',\n patientSensor: 'api/portal/patient/sensor',\n patientExport: 'api/portal/patient/export',\n patientFitbit: 'api/portal/patient/fitbit',\n patientGarmin: 'api/portal/patient/garmin',\n patientMessage: 'api/portal/patient/message',\n patientGroupMessage: 'api/portal/patient/message/group',\n patientEvent: 'api/portal/patient/event',\n patientNotification: 'api/portal/patient/notifications',\n patientMedia: 'api/portal/patient/media',\n patientAdmin: 'api/portal/patient/admin',\n module: 'api/portal/program/module',\n program: 'api/portal/program/program',\n task: 'api/portal/program/task',\n import: 'api/portal/program/import',\n programExport: 'api/portal/program/export',\n auth: 'api/portal/auth',\n media: 'api/portal/media',\n registration: 'api/portal/registration',\n user: 'api/portal/user',\n users: 'api/portal/users',\n content: 'api/portal/content',\n analytics: 'api/portal/analytics',\n organization: 'api/portal/organization',\n },\n public: {\n program: 'api/public/program',\n },\n media: {\n file: 'media/file',\n video: 'media/video',\n },\n route: {\n callback: 'route/callback',\n oauth: 'route/oauth',\n },\n socket: {\n videoChat: 'socket/videochat/hub',\n },\n};\nvar apiUrls = __assign({}, urlvalues);\nvar setApiRoot = function (baseUrl, contentBaseUrl, imageContentBaseUrl) {\n apiUrls.baseUrl = baseUrl;\n apiUrls.contentBaseUrl = contentBaseUrl || baseUrl;\n apiUrls.imageContentBaseUrl = imageContentBaseUrl || \"\".concat(apiUrls.contentBaseUrl, \"/\").concat(apiUrls.media.file);\n};\nexports.setApiRoot = setApiRoot;\nvar getImageUrl = function (imageId) { return \"\".concat(apiUrls.imageContentBaseUrl, \"/\").concat(imageId); };\nexports.getImageUrl = getImageUrl;\nvar currentRoot = function () { return \"\".concat(window.location.protocol, \"//\").concat(window.location.host); };\nexports.currentRoot = currentRoot;\nexports.default = apiUrls;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isSortedByString = exports.fillArrayToLength = exports.reverse = exports.mergeWithFilter = exports.distinct = exports.sortByManyAdvanced = exports.sortByMany = exports.sortByString = exports.sortByDateAscending = exports.sortByDate = exports.insertManyAtIndex = exports.insertAtIndex = exports.reorderElements = exports.findMaxDate = exports.findMax = exports.toCommaList = exports.GUID_LENGTH = exports.toBoolLookup = exports.toLookup = void 0;\nvar dateUtils_1 = require(\"./dateUtils\");\nvar objectUtils_1 = require(\"./objectUtils\");\nvar toLookup = function (array, keyName) {\n if (keyName === void 0) { keyName = 'id'; }\n return (array\n ? array.reduce(function (prev, curr) {\n var _a;\n return (curr ? __assign(__assign({}, prev), (_a = {}, _a[(0, objectUtils_1.getValueByDotNotation)(curr, keyName)] = curr, _a)) : prev);\n }, {}) : {});\n};\nexports.toLookup = toLookup;\nvar toBoolLookup = function (array, keyName) { return (array\n ? array.reduce(function (prev, curr) {\n var _a;\n return (__assign(__assign({}, prev), (_a = {}, _a[(keyName ? curr[keyName] : curr)] = true, _a)));\n }, {}) : {}); };\nexports.toBoolLookup = toBoolLookup;\nexports.GUID_LENGTH = 36;\nvar toCommaList = function (array, keyName) {\n if (keyName === void 0) { keyName = 'name'; }\n return (array\n ? array.reduce(function (prev, curr) { return (curr ? \"\".concat(prev ? \"\".concat(prev, \", \") : '').concat(curr[keyName]) : prev); }, '') : null);\n};\nexports.toCommaList = toCommaList;\nvar findMax = function (array, keyName, startValue) {\n if (startValue === void 0) { startValue = 0; }\n return (array\n ? array.reduce(function (prev, curr) { return (curr && curr[keyName] ? Math.max(prev, Number(curr[keyName]) || startValue) : prev); }, startValue) : startValue);\n};\nexports.findMax = findMax;\nvar findMaxDate = function (array, keyName, startValue) {\n if (keyName === void 0) { keyName = 'created'; }\n if (startValue === void 0) { startValue = 0; }\n return (array\n ? array.reduce(function (prev, curr) { var _a; return (curr && curr[keyName] ? Math.max(prev, ((_a = (0, dateUtils_1.getLocalDate)(curr[keyName])) === null || _a === void 0 ? void 0 : _a.getTime()) || startValue) : prev); }, startValue !== null && startValue !== void 0 ? startValue : 0) : startValue);\n};\nexports.findMaxDate = findMaxDate;\nvar reorderElements = function (array, fromIndex, toIndex) {\n var reordered = __spreadArray([], array, true);\n var removed = reordered.splice(fromIndex, 1)[0];\n reordered.splice(toIndex, 0, removed);\n return reordered;\n};\nexports.reorderElements = reorderElements;\nvar insertAtIndex = function (array, index, elementToInsert) {\n var reordered = __spreadArray([], array, true);\n reordered.splice(index, 0, elementToInsert);\n return reordered;\n};\nexports.insertAtIndex = insertAtIndex;\nvar insertManyAtIndex = function (array, elementsToInsert) {\n var reordered = __spreadArray([], array, true);\n elementsToInsert.forEach(function (el) {\n reordered = (0, exports.insertAtIndex)(reordered, el.index, el.elementToInsert);\n });\n return reordered;\n};\nexports.insertManyAtIndex = insertManyAtIndex;\nvar sortByDate = function (array, propName) {\n if (propName === void 0) { propName = 'created'; }\n return (array ? __spreadArray([], array, true).sort(function (a, b) { return new Date(b[propName]).getTime() - new Date(a[propName]).getTime(); }) : null);\n};\nexports.sortByDate = sortByDate;\nvar sortByDateAscending = function (array, propName) {\n if (propName === void 0) { propName = 'created'; }\n return (array ? __spreadArray([], array, true).sort(function (a, b) { return new Date(a[propName]).getTime() - new Date(b[propName]).getTime(); }) : null);\n};\nexports.sortByDateAscending = sortByDateAscending;\nvar sortByString = function (array, propName) {\n if (propName === void 0) { propName = 'name'; }\n return (array ? __spreadArray([], array, true).sort(function (a, b) { return \"\".concat(a[propName] || '').localeCompare(b[propName]); }) : null);\n};\nexports.sortByString = sortByString;\n// @ts-ignore\nvar sortComp = function (a, b) { return (a > b) - (a < b); };\nvar sortCompDate = function (a, b) { return new Date(a).getTime() - new Date(b).getTime(); };\nvar sortByMany = function (array) {\n var sortProps = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n sortProps[_i - 1] = arguments[_i];\n }\n return (array ? array.sort(function (a, b) { return sortProps.reduce(function (prev, curr) { return prev || sortComp(a[curr], b[curr]); }, 0); }) : null);\n};\nexports.sortByMany = sortByMany;\nvar sortByManyAdvanced = function (array) {\n var sortProps = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n sortProps[_i - 1] = arguments[_i];\n }\n return (array ? __spreadArray([], array, true).sort(function (a, b) { return sortProps.reduce(function (prev, curr) { return prev || (function (p) {\n switch (p.type) {\n case 'date':\n if (!p.name)\n return 0;\n return p.desc ? sortCompDate(b[p.name], a[p.name]) : sortCompDate(a[p.name], b[p.name]);\n case 'func':\n if (!p.sortFunc)\n return 0;\n return p.desc ? p.sortFunc(b, a) : p.sortFunc(a, b);\n default:\n if (!p.name)\n return 0;\n return p.desc ? sortComp(b[p.name], a[p.name]) : sortComp(a[p.name], b[p.name]);\n }\n })(curr); }, 0); }) : null);\n};\nexports.sortByManyAdvanced = sortByManyAdvanced;\nvar distinct = function (array, distinctBy) {\n var _a;\n if (distinctBy === void 0) { distinctBy = function (d) { return d['id']; }; }\n var set = {};\n return (_a = array === null || array === void 0 ? void 0 : array.filter(function (d) { if (set[distinctBy(d)])\n return false; set[distinctBy(d)] = true; return true; })) !== null && _a !== void 0 ? _a : null;\n};\nexports.distinct = distinct;\n// Merge two arrays and filter out duplicates by key (item from B is preserved)\nvar mergeWithFilter = function (a, b, key) {\n if (key === void 0) { key = 'id'; }\n var bDict = (0, exports.toBoolLookup)(b, key);\n return (a || []).filter(function (elem) { return !bDict[elem[key]]; })\n .concat(b || []);\n};\nexports.mergeWithFilter = mergeWithFilter;\nvar reverse = function (array) {\n var clone = __spreadArray([], array || [], true);\n clone.reverse();\n return clone;\n};\nexports.reverse = reverse;\nvar fillArrayToLength = function (inputDataArray, fillLength, fillElement) { return __spreadArray(__spreadArray([], inputDataArray || [], true), Array(Math.max(fillLength - ((inputDataArray === null || inputDataArray === void 0 ? void 0 : inputDataArray.length) || 0), 0)).fill(fillElement), true); };\nexports.fillArrayToLength = fillArrayToLength;\nvar isSortedByString = function (array, key) {\n if (key === void 0) { key = 'name'; }\n return array === null || array === void 0 ? void 0 : array.every(function (current, index, all) { var _a; return !index || ((_a = all[index - 1][key]) === null || _a === void 0 ? void 0 : _a.localeCompare(current[key])) <= 0; });\n};\nexports.isSortedByString = isSortedByString;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.useIsVisibleInView = exports.stopPropagation = exports.preventDefault = exports.useIsScrolled = exports.useScrollEffect = exports.useElementSize = exports.useWindowSize = exports.isTouchDevice = exports.isInStandaloneMode = exports.isChromeOnIos = exports.isIos = exports.isEdge = exports.isIe = exports.isBrowser = exports.heightBreakUp = exports.heightBreakDown = exports.laptopHeight = void 0;\nvar react_1 = require(\"react\");\nexports.laptopHeight = 820;\nexports.heightBreakDown = \"@media screen and (max-height: \".concat(exports.laptopHeight, \"px)\");\nexports.heightBreakUp = \"@media screen and (min-height: \".concat(exports.laptopHeight, \"px)\");\nexports.isBrowser = typeof window === 'object';\n// @ts-ignore documentMode not in default types, it is only used by IE\nexports.isIe = exports.isBrowser && !!document.documentMode;\nexports.isEdge = exports.isBrowser && window.navigator.userAgent.indexOf('Edge') > -1;\nvar isIos = function () { return exports.isBrowser && (/iphone|ipad|ipod/.test(window.navigator.userAgent.toLowerCase())\n // iPad on iOS 13 detection\n || (navigator.userAgent.includes('Mac') && 'ontouchend' in document)); };\nexports.isIos = isIos;\nvar isChromeOnIos = function () { return (0, exports.isIos)() && /CriOS/i.test(navigator.userAgent); };\nexports.isChromeOnIos = isChromeOnIos;\nvar isInStandaloneMode = function () {\n var isStandalone = window.matchMedia('(display-mode: standalone)').matches;\n // @ts-ignore navigator.standalone is only available on iOs Safari\n if (navigator.standalone || isStandalone) {\n return true; // 'standalone';\n }\n if (document.referrer.startsWith('android-app://')) {\n return true; // 'twa';\n }\n return false; // 'browser';\n};\nexports.isInStandaloneMode = isInStandaloneMode;\nexports.isTouchDevice = exports.isBrowser && (('ontouchstart' in window)\n || (navigator.maxTouchPoints > 0)\n // @ts-ignore msMaxTouchPoints not in default types, it is only used by IE\n || (navigator.msMaxTouchPoints > 0));\nvar useWindowSize = function () {\n var _a = (0, react_1.useState)({\n width: undefined,\n height: undefined,\n }), windowSize = _a[0], setWindowSize = _a[1];\n (0, react_1.useEffect)(function () {\n function handleResize() {\n setWindowSize({\n width: window.innerWidth,\n height: window.innerHeight,\n });\n }\n window.addEventListener('resize', handleResize);\n handleResize();\n return function () { return window.removeEventListener('resize', handleResize); };\n }, []);\n return windowSize;\n};\nexports.useWindowSize = useWindowSize;\nvar useElementSize = function () {\n var _a = (0, react_1.useState)({\n width: undefined,\n height: undefined,\n }), elementSize = _a[0], setElementSize = _a[1];\n var elementRef = (0, react_1.useCallback)(function (node) {\n function handleResize() {\n if (node !== null) {\n setElementSize({\n width: node.getBoundingClientRect().width,\n height: node.getBoundingClientRect().height,\n });\n }\n }\n // window.addEventListener('resize', handleResize);\n var observer = new ResizeObserver(handleResize);\n if (node)\n observer.observe(node);\n handleResize();\n return function () {\n // window.removeEventListener('resize', handleResize);\n if (node)\n observer.unobserve(node);\n };\n }, []);\n return { elementRef: elementRef, elementSize: elementSize };\n};\nexports.useElementSize = useElementSize;\nvar useScrollEffect = function (onScrollUp, onScrollDown) {\n var scrollY = (0, react_1.useRef)(0);\n (0, react_1.useEffect)(function () {\n scrollY.current = window.pageYOffset;\n var update = function () {\n var prevScrollY = scrollY.current;\n var currentScroll = window.pageYOffset;\n if (prevScrollY > currentScroll) {\n // console.log('scrolling up - show menu');\n onScrollUp();\n }\n else if (currentScroll > 0) {\n // Must check > 0 to account for \"scroll to refresh\" functionality (which sets Y-pos negative on iphone)\n // console.log('scrolling down - hide menu');\n onScrollDown();\n }\n scrollY.current = currentScroll;\n };\n window.addEventListener('scroll', update);\n return function () {\n window.removeEventListener('scroll', update);\n };\n }, [onScrollDown, onScrollUp]);\n};\nexports.useScrollEffect = useScrollEffect;\nvar useIsScrolled = function (scrollThreshold) {\n if (scrollThreshold === void 0) { scrollThreshold = 0; }\n var _a = (0, react_1.useState)(false), isScrolled = _a[0], setIsScrolled = _a[1];\n (0, react_1.useEffect)(function () {\n var update = function () {\n setIsScrolled(window.pageYOffset > scrollThreshold);\n };\n window.addEventListener('scroll', update);\n return function () {\n window.removeEventListener('scroll', update);\n };\n }, [isScrolled, scrollThreshold]);\n return isScrolled;\n};\nexports.useIsScrolled = useIsScrolled;\nvar preventDefault = function (event) {\n event.preventDefault();\n};\nexports.preventDefault = preventDefault;\nvar stopPropagation = function (event) {\n event.stopPropagation();\n};\nexports.stopPropagation = stopPropagation;\nvar useIsVisibleInView = function (ref) {\n var _a = (0, react_1.useState)(false), isIntersecting = _a[0], setIntersecting = _a[1];\n (0, react_1.useEffect)(function () {\n var observer = new IntersectionObserver(function (_a) {\n var entry = _a[0];\n return setIntersecting(entry.isIntersecting);\n });\n if (ref === null || ref === void 0 ? void 0 : ref.current) {\n observer.observe(ref.current);\n }\n return function () {\n observer.disconnect();\n };\n }, [ref]);\n return isIntersecting;\n};\nexports.useIsVisibleInView = useIsVisibleInView;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport {\n makeStyles,\n TextField,\n} from '@material-ui/core';\n\nconst useStyles = makeStyles(theme => ({\n disabledReadonlyInput: {\n color: theme.palette.text.primary,\n },\n}));\n\nconst AsyncTextField = ({\n label, value, onChange, delay, readOnly, shrink, ...props\n}) => {\n const classes = useStyles();\n const [inputValue, setInputValue] = React.useState(null);\n const updateAsyncTimer = React.useRef();\n\n const handleChange = (event) => {\n const updatedValue = event.target.value;\n setInputValue(updatedValue);\n\n if (updateAsyncTimer.current) clearTimeout(updateAsyncTimer.current);\n\n updateAsyncTimer.current = setTimeout(() => {\n onChange(updatedValue);\n }, delay);\n };\n\n return (\n \n )\n}\n\nAsyncTextField.propTypes = {\n label: PropTypes.string.isRequired,\n value: PropTypes.string.isRequired,\n onChange: PropTypes.func.isRequired,\n delay: PropTypes.number,\n readOnly: PropTypes.bool,\n shrink: PropTypes.bool,\n};\n\nAsyncTextField.defaultProps = {\n delay: 300,\n readOnly: false,\n shrink: false,\n};\n\nexport default AsyncTextField;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\n\nclass DelayedFetch extends React.Component {\n componentDidMount() {\n this.setup();\n }\n\n componentDidUpdate() {\n this.setup();\n }\n\n componentWillUnmount() {\n this.clearTimeout();\n }\n\n clearTimeout = () => {\n if (this.timer) {\n clearTimeout(this.timer);\n this.timer = null;\n }\n }\n\n setup = () => {\n if (!this.timer) {\n this.timer = setTimeout(() => {\n this.props.dataCall();\n }, this.props.delaySeconds * 1000);\n }\n }\n\n render() {\n return null;\n }\n}\n\nDelayedFetch.propTypes = {\n dataCall: PropTypes.func.isRequired,\n delaySeconds: PropTypes.number.isRequired,\n};\n\nexport default DelayedFetch;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport { withStyles } from '@material-ui/core/styles';\n\nimport {\n Typography, Input, Button, Hidden,\n} from '@material-ui/core';\n\nexport const devbannerHeight = 50;\n\nconst styles = theme => ({\n root: {\n padding: theme.spacing(10),\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n },\n banner: {\n width: '100%',\n height: devbannerHeight,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n background: theme.palette.warning.main,\n color: theme.palette.warning.contrastText,\n borderBottom: theme.youwell.borders.dim,\n\n '@media print': {\n display: 'none',\n },\n },\n login: {\n position: 'fixed',\n top: 0,\n left: 0,\n width: '100%',\n height: '100%',\n background: theme.palette.grey[100],\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n zIndex: 900, // Must be lower than \"loading\"\n\n [theme.breakpoints.down('xs')]: {\n height: '150%', // To account for special scrolling on mobile..\n justifyContent: 'flex-start',\n },\n },\n loginBox: {\n background: theme.palette.common.white,\n borderRadius: theme.youwell.shapes.borderRadius,\n padding: theme.spacing(4),\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n\n [theme.breakpoints.down('xs')]: {\n marginTop: '50%',\n },\n },\n input: {\n margin: theme.spacing(2, 0),\n },\n});\n\n\nconst DEV_LOGIN_KEY = 'ywDL';\n\nclass DevelopmentBanner extends React.Component {\n state = {\n pw: '',\n }\n\n handleChange = name => (event) => {\n this.setState({ [name]: event.target.value });\n }\n\n login = () => {\n if (this.state.pw === this.props.password) {\n window.localStorage.setItem(DEV_LOGIN_KEY, Date.now());\n }\n\n this.setState({ pw: '' });\n }\n\n hasValidLogin = () => (window.localStorage.getItem(DEV_LOGIN_KEY) > (Date.now() - 7 * 24 * 60 * 60 * 1000))\n && (window.localStorage.getItem(DEV_LOGIN_KEY) > this.props.passwordDate)\n\n handleKeyPress = (e) => {\n if (e.key === 'Enter') {\n this.login();\n }\n };\n\n render() {\n const {\n classes, translate, password, disabled, showBanner,\n } = this.props;\n\n if (disabled) {\n return null;\n }\n const isOpen = !password || this.hasValidLogin();\n\n return (\n isOpen ? (\n <>\n {showBanner && (\n
\n \n \n {translate('dev.underDevelopment')}\n \n \n \n \n {translate('dev.underDevelopmentShort')}\n \n \n
\n )}\n \n ) : (\n
\n
\n \n {translate('dev.underDevelopment')}\n \n \n {translate('dev.pleaseLogInToContinue')}\n \n\n \n\n \n
\n
\n )\n );\n }\n}\n\nDevelopmentBanner.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n password: PropTypes.string,\n passwordDate: PropTypes.number,\n disabled: PropTypes.bool,\n showBanner: PropTypes.bool,\n};\n\nDevelopmentBanner.defaultProps = {\n password: '',\n passwordDate: 0,\n disabled: false,\n showBanner: false,\n};\n\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n});\n\nexport default connect(mapStateToProps)(withStyles(styles)(DevelopmentBanner));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\n\nimport {\n Button,\n Dialog,\n DialogContent,\n DialogTitle,\n DialogActions,\n} from '@material-ui/core';\n\n\nclass DialogButton extends React.Component {\n state = {\n isDialogOpen: false,\n }\n\n openDialog = () => {\n this.setState({ isDialogOpen: true });\n }\n\n closeDialog = () => {\n this.setState({ isDialogOpen: false });\n }\n\n ok = () => {\n this.setState({ isDialogOpen: false }, this.props.dialogOkAction);\n }\n\n\n render() {\n const {\n buttonText, dialogTitle, dialogCancelText, buttonProps,\n } = this.props;\n\n return (\n <>\n \n {buttonText}\n \n\n \n {dialogTitle}\n \n \n \n {buttonText}\n \n \n {dialogCancelText}\n \n \n \n \n \n );\n }\n}\n\nDialogButton.propTypes = {\n dialogOkAction: PropTypes.func.isRequired,\n buttonText: PropTypes.string.isRequired,\n dialogTitle: PropTypes.string.isRequired,\n dialogCancelText: PropTypes.string.isRequired,\n buttonProps: PropTypes.object,\n};\n\nDialogButton.defaultProps = {\n buttonProps: null,\n};\n\nexport default DialogButton;\n","import * as React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { sendError } from '../errorUtils';\r\n\r\n\r\nconst style = {\r\n display: 'flex',\r\n background: 'white',\r\n padding: '16px',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n color: 'red',\r\n};\r\n\r\nclass ErrorBoundary extends React.Component {\r\n state = {\r\n hasError: false,\r\n };\r\n\r\n componentDidCatch = (error, info) => {\r\n this.setState({ hasError: true });\r\n sendError({ error: error?.message, info: info?.componentStack, sender: `ErrorBoundary: ${this.props.id}` });\r\n }\r\n\r\n render() {\r\n if (this.state.hasError) {\r\n // You can render any custom fallback UI\r\n return (\r\n
\r\n

Something went wrong. Refresh page to try again..

\r\n
\r\n );\r\n }\r\n return this.props.children;\r\n }\r\n}\r\n\r\nErrorBoundary.propTypes = {\r\n children: PropTypes.oneOfType([\r\n PropTypes.arrayOf(PropTypes.node),\r\n PropTypes.node,\r\n ]),\r\n id: PropTypes.string.isRequired,\r\n};\r\n\r\nErrorBoundary.defaultProps = {\r\n children: null,\r\n};\r\n\r\nexport default ErrorBoundary;\r\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport { withStyles } from '@material-ui/core/styles';\nimport classnames from 'classnames';\n\nimport { Typography, IconButton } from '@material-ui/core';\nimport { ClearIcon } from '../icons';\nimport { isBrowser } from '../browserUtils';\n\nconst styles = theme => ({\n root: {\n padding: theme.spacing(2),\n marginBottom: theme.spacing(2),\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n },\n text: {\n flex: '1 1 auto',\n },\n icon: {\n height: 'auto',\n width: 'auto',\n },\n});\n\nclass ErrorMessage extends React.Component {\n errorElement = React.createRef();\n\n componentDidUpdate(prevProps) {\n if (this.props.message && this.props.message !== prevProps.message) {\n const scrollEl = this.errorElement.current;\n\n if (scrollEl && isBrowser && window.scrollY > 10) {\n setTimeout(() => {\n scrollEl.scrollIntoView({ behavior: 'smooth' });\n }, 200);\n }\n }\n }\n\n render() {\n const {\n classes, translate, message, onClear, className, muteErrors, scrollMarginTop,\n } = this.props;\n\n if (!message) {\n return null;\n }\n\n const filteredMessages = [...new Set(message.split('
'))].filter(d => !muteErrors?.includes(d));\n\n if (!filteredMessages.length) {\n return null;\n }\n return (\n
\n {filteredMessages.map(msg => (\n \n {translate(`errors.${msg}`, null, { onMissingTranslation: () => `System error (${msg})` })}\n \n ))}\n {onClear && (\n \n \n \n )}\n
\n );\n }\n}\n\nErrorMessage.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n className: PropTypes.string,\n message: PropTypes.string,\n onClear: PropTypes.func,\n muteErrors: PropTypes.array,\n scrollMarginTop: PropTypes.number,\n};\n\nErrorMessage.defaultProps = {\n message: null,\n className: null,\n onClear: null,\n muteErrors: null,\n scrollMarginTop: null,\n};\n\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n});\n\nexport default connect(mapStateToProps)(withStyles(styles)(ErrorMessage));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\n\nimport {\n Button,\n} from '@material-ui/core';\n\n\nclass FormLink extends React.Component {\n render() {\n const {\n buttonText, buttonProps, params, to,\n } = this.props;\n\n return (\n
\n {params && params.map(p => (\n \n ))}\n \n {buttonText}\n \n \n );\n }\n}\n\nFormLink.propTypes = {\n buttonText: PropTypes.string.isRequired,\n buttonProps: PropTypes.object,\n to: PropTypes.string.isRequired,\n params: PropTypes.arrayOf(PropTypes.shape({\n key: PropTypes.string.isRequired,\n value: PropTypes.string.isRequired,\n })),\n};\n\nFormLink.defaultProps = {\n buttonProps: null,\n params: null,\n};\n\nexport default FormLink;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.htmlContentClassName = void 0;\nvar React = __importStar(require(\"react\"));\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar htmlUtils_1 = require(\"../htmlUtils\");\nvar utils_1 = require(\"../types/utils\");\nexports.htmlContentClassName = 'htmlcontent';\nvar HtmlContent = function (_a) {\n var html = _a.html, className = _a.className, style = _a.style, id = _a.id;\n var appConfig = (0, utils_1.useYouwellCommonSelector)(function (state) { return state.pageSettings.appConfig; });\n if ((0, htmlUtils_1.isEmptyHtml)(html)) {\n return null;\n }\n return (\n /* eslint-disable react/no-danger */\n React.createElement(\"div\", { dangerouslySetInnerHTML: { __html: (0, htmlUtils_1.replaceEmbedContent)(html, appConfig.addNoContextForImages, appConfig.appId) }, className: (0, classnames_1.default)(exports.htmlContentClassName, className), style: style, id: id })\n /* eslint-enable react/no-danger */\n );\n};\nHtmlContent.defaultProps = {\n html: null,\n className: null,\n style: null,\n id: null,\n};\nexports.default = HtmlContent;\n","// Stripped and adjusted from https://github.com/SupremeTechnopriest/react-idle-timer\n\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport InactivityAlert from './InactivityAlert';\n\nconst IS_BROWSER = (typeof window === 'undefined' ? 'undefined' : typeof window) === 'object';\nconst DEFAULT_ELEMENT = IS_BROWSER ? document : {};\nconst DEFAULT_EVENTS = [\n 'mousemove',\n 'keydown',\n 'wheel',\n 'DOMMouseScroll',\n 'mouseWheel',\n 'mousedown',\n 'touchstart',\n 'touchmove',\n 'MSPointerDown',\n 'MSPointerMove',\n];\n\nclass IdleTimer extends React.Component {\n tId = null\n\n state = {\n idle: false,\n oldDate: +new Date(),\n lastActive: +new Date(),\n pageX: null,\n pageY: null,\n }\n\n componentDidMount() {\n if (!IS_BROWSER) return;\n\n DEFAULT_EVENTS.forEach((e) => {\n DEFAULT_ELEMENT.addEventListener(e, this.handleEvent, {\n capture: true,\n passive: true,\n });\n });\n\n this.reset();\n }\n\n componentWillUnmount() {\n clearTimeout(this.tId);\n if (!IS_BROWSER) return;\n DEFAULT_EVENTS.forEach((e) => {\n DEFAULT_ELEMENT.removeEventListener(e, this.handleEvent, {\n capture: true,\n passive: true,\n });\n });\n }\n\n toggleIdleState = (e) => {\n const { idle } = this.state;\n this.setState({\n idle: !idle,\n });\n\n const { onActive, onIdle } = this.props;\n if (idle) {\n onActive(e);\n } else {\n onIdle(e);\n }\n }\n\n handleEvent = (e) => {\n const { pageX, pageY } = this.state;\n\n // Mousemove event\n if (e.type === 'mousemove') {\n // If coord are same, it didn't move\n if (e.pageX === pageX && e.pageY === pageY) {\n return;\n }\n // If coord don't exist how could it move\n if (typeof e.pageX === 'undefined' && typeof e.pageY === 'undefined') {\n return;\n }\n // Under 200 ms is hard to do\n // continuous activity will bypass this\n const elapsed = this.getElapsedTime();\n if (elapsed < 200) {\n return;\n }\n }\n\n // Clear any existing timeout\n clearTimeout(this.tId);\n\n // If the idle timer is enabled, flip\n if (this.state.idle) {\n this.toggleIdleState(e);\n }\n\n // Store when the user was last active\n // and update the mouse coordinates\n this.setState({\n lastActive: +new Date(), // store when user was last active\n pageX: e.pageX, // update mouse coord\n pageY: e.pageY,\n });\n\n // Set a new timeout\n const { timeoutInMinutes } = this.props;\n this.tId = setTimeout(this.toggleIdleState, timeoutInMinutes * 60 * 1000); // set a new timeout\n }\n\n reset = () => {\n // Clear timeout\n clearTimeout(this.tId);\n\n // Reset state\n this.setState(prevState => ({\n idle: false,\n oldDate: +new Date(),\n lastActive: prevState.oldDate,\n }));\n\n // Set new timeout\n const { timeoutInMinutes } = this.props;\n this.tId = setTimeout(this.toggleIdleState, timeoutInMinutes * 60 * 1000); // set a new timeout\n }\n\n getRemainingTime = () => {\n const { idle, lastActive } = this.state;\n // If idle there is no time remaining\n if (idle) {\n return 0;\n }\n\n // Determine remaining, if negative idle didn't finish flipping, just return 0\n const { timeoutInMinutes } = this.props;\n let timeLeft = (timeoutInMinutes * 60 * 1000) - (+new Date() - lastActive);\n if (timeLeft < 0) {\n timeLeft = 0;\n }\n return timeLeft;\n }\n\n getElapsedTime = () => {\n const { oldDate } = this.state;\n return +new Date() - oldDate;\n }\n\n getLastActiveTime = () => {\n const { lastActive } = this.state;\n return lastActive;\n }\n\n isIdle = () => this.state.idle\n\n render() {\n const { hasInactivityAlert, timeoutInMinutes } = this.props;\n\n return hasInactivityAlert ? : null;\n }\n}\n\nIdleTimer.propTypes = {\n timeoutInMinutes: PropTypes.number,\n onIdle: PropTypes.func,\n onActive: PropTypes.func,\n hasInactivityAlert: PropTypes.bool,\n};\n\nIdleTimer.defaultProps = {\n timeoutInMinutes: 60,\n onIdle: () => {},\n onActive: () => {},\n hasInactivityAlert: false,\n};\n\nexport default IdleTimer;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar core_1 = require(\"@material-ui/core\");\nvar react_1 = require(\"react\");\nvar translate_1 = __importDefault(require(\"../../app/localization/translate\"));\nvar store_1 = require(\"../../app/store\");\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return ({\n error: {\n padding: theme.spacing(2),\n border: theme.youwell.borders.dim,\n background: theme.palette.grey[50],\n color: theme.palette.grey[500],\n wordBreak: 'break-word',\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n justifyContent: 'center',\n overflow: 'hidden',\n },\n}); }, { name: 'Image' });\nvar Image = function (_a) {\n var src = _a.src, alt = _a.alt, className = _a.className, hideOnNotFound = _a.hideOnNotFound, imageStyle = _a.imageStyle, addAppId = _a.addAppId;\n var translate = (0, translate_1.default)();\n var classes = useStyles();\n var appConfig = (0, store_1.useYouwellSelector)(function (state) { return state.pageSettings.appConfig; });\n var _b = React.useState(false), fileNotFound = _b[0], setFileNotFound = _b[1];\n var _c = React.useState(false), loaded = _c[0], setLoaded = _c[1];\n (0, react_1.useEffect)(function () {\n if (!src || src === '') {\n setFileNotFound(false);\n setLoaded(false);\n }\n }, [src]);\n var onImageNotFound = function (e) {\n // eslint-disable-next-line no-param-reassign\n e.target.onerror = null;\n // e.target.src = placeHolderImage;\n setFileNotFound(true);\n };\n var onImageLoaded = function () {\n setLoaded(true);\n };\n if (fileNotFound) {\n return hideOnNotFound ? null : (React.createElement(\"div\", { className: (0, classnames_1.default)(classes.error, className), \"aria-label\": translate('common.imageNotFound') },\n React.createElement(core_1.Typography, { align: \"center\", display: \"block\", \"aria-hidden\": true }, translate('common.imageNotFound'))));\n }\n var preparedUrl = src !== null && src !== void 0 ? src : '';\n if (addAppId && appConfig.appId && preparedUrl.startsWith('http') && preparedUrl.indexOf('xAppId=') < 0) {\n var prefix = preparedUrl.indexOf('?') < 0 ? '?' : '&';\n preparedUrl = \"\".concat(preparedUrl).concat(prefix, \"xAppId=\").concat(appConfig.appId);\n }\n var style = __assign({ opacity: loaded ? 1 : 0, transition: 'opacity 0.1s' }, imageStyle);\n return (React.createElement(\"img\", { src: preparedUrl, alt: alt && alt !== '' ? alt : translate('noImgDescription'), style: style, className: className, onError: onImageNotFound, onLoad: onImageLoaded }));\n};\nImage.defaultProps = {\n src: '',\n alt: '',\n className: null,\n hideOnNotFound: false,\n imageStyle: null,\n addAppId: false,\n};\nexports.default = Image;\n","import { useEffect, useState } from 'react';\nimport { Typography } from '@material-ui/core';\nimport PropTypes from 'prop-types';\nimport * as React from 'react';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport { withRouter } from 'react-router';\nimport { withStyles } from '@material-ui/core/styles';\nimport { PortalModal } from '../../common/components';\n\nconst styles = theme => ({\n inactivityMessage: {\n padding: theme.spacing(3),\n },\n});\n\nconst InactivityAlert = ({\n classes, translate, timeoutInMinutes, idleTimer,\n}) => {\n const [showInactivityAlert, setShowInactivityAlert] = useState(false);\n\n useEffect(() => {\n let alertTimer = null;\n if (timeoutInMinutes && idleTimer) {\n alertTimer = setTimeout(() => setShowInactivityAlert(true), (timeoutInMinutes - 1) * (60 * 1000));\n }\n return () => {\n clearTimeout(alertTimer);\n };\n }, [timeoutInMinutes, idleTimer]);\n\n const closeAlert = () => {\n setShowInactivityAlert(false);\n };\n\n return (\n \n
\n {translate('inactivityMessage')}\n
\n
\n );\n};\n\nInactivityAlert.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n timeoutInMinutes: PropTypes.number.isRequired,\n idleTimer: PropTypes.number,\n};\n\nInactivityAlert.defaultProps = {\n idleTimer: null,\n};\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n});\n\nexport default withRouter(connect(mapStateToProps)(withStyles(styles)(InactivityAlert)));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { withLocalize } from 'react-localize-redux';\nimport classnames from 'classnames';\n\nimport {\n IconButton,\n} from '@material-ui/core';\n\nimport flags from '../flags';\n\nconst styles = () => ({\n root: {\n display: 'flex',\n justifyContent: 'center',\n opacity: '0.8',\n },\n flagIcon: {\n width: 20,\n },\n});\n\nconst LanguageToggle = ({\n languages, activeLanguage, setActiveLanguage, classes, className,\n}) => (\n
\n {languages.map(lang => (\n setActiveLanguage(lang.code)} disabled={activeLanguage && lang.code === activeLanguage.code}>\n {lang.name}\n \n ))}\n
\n);\n\nLanguageToggle.propTypes = {\n classes: PropTypes.object.isRequired,\n languages: PropTypes.array.isRequired,\n activeLanguage: PropTypes.object,\n setActiveLanguage: PropTypes.func.isRequired,\n className: PropTypes.string,\n};\n\nLanguageToggle.defaultProps = {\n activeLanguage: {},\n className: null,\n};\n\nexport default withLocalize(withStyles(styles)(LanguageToggle));\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { withLocalize } from 'react-localize-redux';\nimport setObjectValue from 'lodash/set';\n\n\nclass LoadLanguageData extends React.Component {\n componentDidUpdate(prevProps) {\n if (!prevProps.clientConfig?.textTemplates && this.props.clientConfig?.textTemplates) {\n const parsedTemplates = {};\n this.props.clientConfig.textTemplates.forEach((d) => {\n setObjectValue(parsedTemplates, d.key, d.value);\n });\n\n if (parsedTemplates.client) {\n Object.keys(parsedTemplates.client).forEach((lang) => {\n this.props.addTranslationForLanguage(parsedTemplates.client[lang], lang);\n });\n }\n }\n }\n\n render() {\n return null;\n }\n}\n\nLoadLanguageData.propTypes = {\n addTranslationForLanguage: PropTypes.func.isRequired,\n clientConfig: PropTypes.object,\n};\n\nLoadLanguageData.defaultProps = {\n clientConfig: null,\n};\n\nconst mapStateToProps = state => ({\n clientConfig: state.auth.clientConfig,\n});\n\nexport default connect(mapStateToProps)(withLocalize(LoadLanguageData));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport classnames from 'classnames';\n\nimport { withStyles } from '@material-ui/core/styles';\nimport { Typography, CircularProgress, NoSsr } from '@material-ui/core';\n\nconst styles = theme => ({\n root: {\n position: 'fixed',\n zIndex: 1500,\n top: 0,\n left: 0,\n bottom: 0,\n width: '100%',\n textAlign: 'center',\n backgroundColor: '#f0fbff82',\n },\n rootInline: {\n position: 'relative',\n },\n content: {\n position: 'absolute',\n top: '50%',\n left: '50%',\n transform: 'translate(-50%, -50%)',\n },\n progress: {\n color: '#05325a',\n display: 'block',\n margin: 'auto',\n },\n message: {\n color: '#05325a',\n marginTop: theme.spacing(1),\n },\n error: {\n marginTop: theme.spacing(1),\n },\n});\n\nclass Loading extends React.Component {\n state = {\n show: false,\n }\n\n componentDidMount() {\n this.timer = setTimeout(() => {\n this.setState({ show: true });\n }, 500);\n }\n\n componentWillUnmount() {\n clearTimeout(this.timer);\n }\n\n render() {\n const {\n classes, loadingMessage, loading, translate, className, inline, delayed,\n } = this.props;\n\n if (!loading || (delayed && !this.state.show)) {\n return null;\n }\n\n return (\n \n
\n
\n \n {(loadingMessage || !inline) && (\n \n {loadingMessage || translate('common.loading')}\n \n )}\n
\n
\n
\n );\n }\n}\n\nLoading.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n loading: PropTypes.bool,\n loadingMessage: PropTypes.string,\n className: PropTypes.string,\n inline: PropTypes.bool,\n delayed: PropTypes.bool,\n};\n\nLoading.defaultProps = {\n loading: true,\n loadingMessage: null,\n className: null,\n inline: false,\n delayed: false,\n};\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n});\n\nexport default connect(mapStateToProps)(withStyles(styles)(Loading));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\nimport { withStyles } from '@material-ui/core/styles';\n\nimport { Typography } from '@material-ui/core';\n\nconst styles = theme => ({\n root: {\n padding: theme.spacing(10),\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n },\n text: {\n },\n});\n\nclass PageNotFound extends React.Component {\n render() {\n const {\n classes, translate,\n } = this.props;\n\n return (\n
\n \n {translate('common.pageNotFound')}\n \n
\n );\n }\n}\n\nPageNotFound.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n};\n\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n});\n\nexport default connect(mapStateToProps)(withStyles(styles)(PageNotFound));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\n\nclass PollData extends React.Component {\n componentDidMount() {\n if (this.props.callImediately) {\n if (this.props.initialdataCall) {\n this.props.initialdataCall();\n } else {\n this.props.dataCall();\n }\n }\n\n this.pollState();\n }\n\n componentDidUpdate() {\n this.pollState();\n }\n\n componentWillUnmount() {\n this.clearTimeout();\n }\n\n clearTimeout = () => {\n if (this.timer) {\n clearTimeout(this.timer);\n this.timer = null;\n }\n }\n\n pollState = () => {\n if (this.props.pollCondition && !this.timer) {\n this.timer = setTimeout(() => {\n this.clearTimeout();\n if (this.props.pollCondition) {\n this.props.dataCall();\n this.pollState();\n }\n }, this.props.pollingIntervalInMinutes * 60 * 1000);\n }\n }\n\n render() {\n return null;\n }\n}\n\nPollData.propTypes = {\n initialdataCall: PropTypes.func,\n dataCall: PropTypes.func.isRequired,\n pollCondition: PropTypes.bool,\n callImediately: PropTypes.bool,\n pollingIntervalInMinutes: PropTypes.number.isRequired,\n};\n\nPollData.defaultProps = {\n callImediately: true,\n initialdataCall: null,\n pollCondition: true,\n};\n\nexport default PollData;\n","import * as React from 'react';\nimport { Route, Redirect } from 'react-router-dom';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\n\nimport Auth, { authTypes } from '../Auth';\n\nconst PrivateRoute = ({\n component: Component, loginUrl, selectOrgUrl, requiredAuthType, ...rest\n}) => (\n {\n if (Auth.isUserAuthenticated(requiredAuthType)) {\n return ;\n }\n if (selectOrgUrl && Auth.isUserAuthenticated(authTypes.orgSelect)) {\n return (\n \n )\n }\n return (\n \n );\n }}\n />\n)\n\nconst mapStateToProps = state => ({\n profileData: state.auth.profileData,\n});\n\n\nPrivateRoute.propTypes = {\n component: PropTypes.elementType.isRequired,\n location: PropTypes.object.isRequired,\n loginUrl: PropTypes.string.isRequired,\n requiredAuthType: PropTypes.string.isRequired,\n selectOrgUrl: PropTypes.string,\n};\n\nPrivateRoute.defaultProps = {\n selectOrgUrl: null,\n};\n\n\nexport default connect(mapStateToProps)(PrivateRoute);\n","import { useEffect, useState } from 'react';\nimport { useHistory } from 'react-router-dom';\nimport PropTypes from 'prop-types';\n\nconst ScrollToTop = ({ children, hardScroll }) => {\n const [locationKeys, setLocationKeys] = useState([]);\n const history = useHistory();\n\n useEffect(() => history.listen((loc) => {\n const scroll = () => {\n setTimeout(() => {\n const scrollEl = document.getElementById('scrollTop');\n if (scrollEl) {\n scrollEl.scrollIntoView({ behavior: hardScroll ? undefined : 'smooth' });\n } else {\n window.scrollTo({ top: 0, behavior: hardScroll ? undefined : 'smooth' }); // not supported by IE..\n }\n }, 0); // need timeout for iOs support\n };\n\n if (history.action === 'PUSH') {\n // Link event\n // console.log('link PUSH');\n scroll();\n setLocationKeys([loc.key]);\n } else if (history.action === 'REPLACE') {\n // Link event\n // console.log('link REPLACE');\n scroll();\n } else if (history.action === 'POP') {\n if (locationKeys[1] === loc.key) {\n // console.log('forward POP');\n // Forward event\n setLocationKeys(([_, ...keys]) => keys);\n } else {\n // console.log('backward POP');\n setLocationKeys(keys => [loc.key, ...keys]);\n // Back event\n }\n } else {\n // console.log('Unknown navigation', history.action);\n }\n }), [hardScroll, history, locationKeys]);\n\n return children;\n};\n\nScrollToTop.propTypes = {\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node,\n ]),\n hardScroll: PropTypes.bool,\n};\n\nScrollToTop.defaultProps = {\n children: null,\n hardScroll: false,\n};\n\nexport default ScrollToTop;\n","import React from 'react';\n\nexport const with1dArrowNavigation = Component => (props) => {\n let minX = Infinity;\n let maxX = -Infinity;\n const refs = {};\n\n const setRef = x => (ref) => {\n if (x < minX) minX = x;\n if (x > maxX) maxX = x;\n refs[x] = ref;\n };\n\n const [currentId, setCurrentId] = React.useState(minX);\n\n const handleArrowLeft = () => setCurrentId(x => Math.max(minX, x - 1));\n const handleArrowUp = () => setCurrentId(x => Math.min(maxX, x + 1));\n const handleArrowRight = () => setCurrentId(x => Math.min(maxX, x + 1));\n const handleArrowDown = () => setCurrentId(x => Math.max(minX, x - 1));\n\n const handleKeyDown = (event) => {\n if (event.ctrlKey || event.shiftKey || event.altKey || event.metaKey) {\n return undefined;\n }\n\n if (event.keyCode >= 37 && event.keyCode <= 40) {\n event.preventDefault();\n }\n\n switch (event.keyCode) {\n case 37: return handleArrowLeft();\n case 38: return handleArrowUp();\n case 39: return handleArrowRight();\n case 40: return handleArrowDown();\n default: return undefined;\n }\n };\n\n const handleMouseDown = x => () => setCurrentId(x);\n\n React.useEffect(() => {\n if (refs[currentId]) refs[currentId].focus();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentId]);\n\n return (\n \n );\n};\n\nexport const with2dArrowNavigation = Component => (props) => {\n let minX = Infinity;\n let maxX = -Infinity;\n let minY = Infinity;\n let maxY = -Infinity;\n const refs = {};\n\n const setRef = (y, x) => (ref) => {\n if (x < minX) minX = x;\n if (x > maxX) maxX = x;\n if (y < minY) minY = y;\n if (y > maxY) maxY = y;\n if (!refs[y]) refs[y] = {};\n refs[y][x] = ref;\n };\n\n const [currentId, setCurrentId] = React.useState([minX, minY]);\n\n const handleArrowLeft = () => setCurrentId(([y, x]) => [y, Math.max(minX, x - 1)]);\n const handleArrowUp = () => setCurrentId(([y, x]) => [Math.max(minY, y - 1), x]);\n const handleArrowRight = () => setCurrentId(([y, x]) => [y, Math.min(maxX, x + 1)]);\n const handleArrowDown = () => setCurrentId(([y, x]) => [Math.min(maxY, y + 1), x]);\n\n const handleKeyDown = (event) => {\n if (event.ctrlKey || event.shiftKey || event.altKey || event.metaKey) {\n return undefined;\n }\n\n if (event.keyCode >= 37 && event.keyCode <= 40) {\n event.preventDefault();\n }\n\n switch (event.keyCode) {\n case 37: return handleArrowLeft();\n case 38: return handleArrowUp();\n case 39: return handleArrowRight();\n case 40: return handleArrowDown();\n default: return undefined;\n }\n };\n\n const handleMouseDown = (y, x) => () => setCurrentId([y, x]);\n\n React.useEffect(() => {\n const [y, x] = currentId;\n const ref = refs[y]?.[x];\n if (ref) ref.focus();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentId]);\n\n return (\n \n );\n};\n\nexport default {\n with1dArrowNavigation,\n with2dArrowNavigation,\n};\n","export { default as ScrollToTop } from './ScrollToTop';\nexport { default as PrivateRoute } from './PrivateRoute';\nexport { default as LanguageToggle } from './LanguageToggle';\nexport { default as Loading } from './Loading';\nexport { default as ErrorMessage } from './ErrorMessage';\nexport { default as PageNotFound } from './PageNotFound';\nexport { default as IdleTimer } from './IdleTimer';\nexport { default as PollData } from './PollData';\nexport { default as DialogButton } from './DialogButton';\nexport { default as HtmlContent } from './HtmlContent';\nexport { default as DelayedFetch } from './DelayedFetch';\nexport { default as Image } from './Image';\nexport { default as FormLink } from './FormLink';\nexport { default as TaskContent } from './taskElements/TaskContent';\nexport { default as TaskContentDisplay } from './taskElements/TaskContentDisplay';\nexport { default as DevelopmentBanner } from './DevelopmentBanner';\nexport { default as ErrorBoundary } from './ErrorBoundary';\nexport { default as AsyncTextField } from './AsyncTextField';\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.hasValueForQuestionType = void 0;\nvar React = __importStar(require(\"react\"));\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar core_1 = require(\"@material-ui/core\");\nvar icons_1 = require(\"@material-ui/icons\");\nvar objectUtils_1 = require(\"../../objectUtils\");\nvar constants_1 = require(\"../../constants\");\nvar HtmlContent_1 = __importDefault(require(\"../HtmlContent\"));\nvar TableResponse_1 = __importDefault(require(\"./formResponseTypes/TableResponse\"));\nvar ScaleResponse_1 = __importDefault(require(\"./formResponseTypes/ScaleResponse\"));\nvar FreetextResponse_1 = __importDefault(require(\"./formResponseTypes/FreetextResponse\"));\nvar SingleChoice_1 = __importDefault(require(\"./formResponseTypes/SingleChoice\"));\nvar MultipleChoice_1 = __importDefault(require(\"./formResponseTypes/MultipleChoice\"));\nvar ActionButton_1 = __importDefault(require(\"./formResponseTypes/ActionButton\"));\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return ({\n root: {\n '&+&': {\n marginTop: theme.spacing(5),\n },\n },\n top: {\n display: 'flex',\n alignItems: 'flex-end',\n justifyContent: 'flex-end',\n minHeight: 48,\n },\n questionText: {\n flex: '1 1 auto',\n marginBottom: theme.spacing(1),\n fontSize: theme.typography.body1.fontSize,\n '&:empty': {\n marginBottom: 0,\n },\n },\n required: {\n border: \"1px solid \".concat(theme.palette.error.main),\n padding: theme.spacing(1),\n },\n switchResponse: {\n border: theme.youwell.borders.inputBox,\n backgroundColor: theme.youwell.colors.inputBackground,\n padding: theme.spacing(2),\n },\n checkedIcon: {\n color: theme.youwell.colors.green,\n marginBottom: theme.spacing(1),\n },\n blink: {\n animation: '$blink 2s ease-in-out',\n },\n '@keyframes blink': {\n '0%': {\n opacity: 0,\n transform: 'none',\n },\n '30%': {\n opacity: 1,\n },\n '50%': {\n transform: 'scale3d(1.5, 1.5, 1)',\n },\n '100%': {\n transform: 'none',\n },\n },\n}); });\nvar hasValueForQuestionType = function (questionType, response) {\n if (questionType === constants_1.formAnswerTypes.action) {\n return true;\n }\n if (!response || (0, objectUtils_1.isEmpty)(response)) {\n return false;\n }\n switch (questionType) {\n case constants_1.formAnswerTypes.freetext:\n return (0, objectUtils_1.hasValue)(response.freetextResponse);\n case constants_1.formAnswerTypes.singleChoice:\n case constants_1.formAnswerTypes.multipleChoice:\n return (0, objectUtils_1.hasValue)(response.choiceResponse);\n case constants_1.formAnswerTypes.scale:\n return (0, objectUtils_1.hasValue)(response.scaleResponse);\n case constants_1.formAnswerTypes.table:\n return (0, objectUtils_1.hasValue)(response.tableResponses);\n default:\n return true;\n }\n};\nexports.hasValueForQuestionType = hasValueForQuestionType;\nvar FormQuestion = function (_a) {\n var _b;\n var response = _a.response, handleResponseUpdate = _a.handleResponseUpdate, showScores = _a.showScores, question = _a.question, showRequired = _a.showRequired, disabled = _a.disabled, contentState = _a.contentState, readOnly = _a.readOnly, elementSettings = _a.elementSettings, showScoreValues = _a.showScoreValues;\n var classes = useStyles();\n var _c = React.useState(false), hasUpdated = _c[0], setHasUpdated = _c[1];\n var _d = React.useState(false), hasFinished = _d[0], setHasFinished = _d[1];\n var onResponseCompletedValid = function () {\n setHasFinished(true);\n };\n var handleValueChange = function (name, completeOnUpdate) { return function (value) {\n setHasUpdated(true);\n handleResponseUpdate(name, value);\n if (completeOnUpdate) {\n onResponseCompletedValid();\n }\n }; };\n var handleClickResponse = function (name, value) { return function () {\n if (readOnly)\n return;\n handleResponseUpdate(name, value);\n if (value) {\n onResponseCompletedValid();\n }\n }; };\n if (question === null) {\n return null;\n }\n var hasValueForQuestion = (0, exports.hasValueForQuestionType)(question.type, response);\n var showQuestionAndCheckIcon = question.type !== constants_1.formAnswerTypes.action && question.type !== constants_1.formAnswerTypes.switch;\n return (React.createElement(\"div\", { className: (0, classnames_1.default)(classes.root, (_b = {}, _b[classes.required] = question.required && showRequired && !hasValueForQuestion, _b)) },\n showQuestionAndCheckIcon && (React.createElement(\"div\", { className: classes.top },\n React.createElement(HtmlContent_1.default, { id: question.id.toString(), html: question.question, className: classes.questionText }),\n !readOnly && hasValueForQuestion && (React.createElement(React.Fragment, null,\n hasUpdated && hasFinished && (React.createElement(icons_1.CheckCircleRounded, { className: (0, classnames_1.default)(classes.checkedIcon, classes.blink) })),\n !hasUpdated && (React.createElement(icons_1.CheckCircleRounded, { className: (0, classnames_1.default)(classes.checkedIcon) })))))),\n question.type === constants_1.formAnswerTypes.freetext && (React.createElement(FreetextResponse_1.default, { handleResponseUpdate: handleValueChange('freetextResponse'), freetextConfig: question.freetextConfig, freetextResponse: response === null || response === void 0 ? void 0 : response.freetextResponse, disabled: disabled, readOnly: readOnly, onCompletedValid: onResponseCompletedValid })),\n (question.type === constants_1.formAnswerTypes.singleChoice || question.type === 'ActionChoice') && ( // ActionChoice is obsolete..\n React.createElement(SingleChoice_1.default, { handleResponseUpdate: handleValueChange('choiceResponse'), choiceConfig: question.choiceConfig, selectedChoice: (response === null || response === void 0 ? void 0 : response.choiceResponse) && response.choiceResponse[0], question: question, disabled: disabled, showScores: showScores, showScoreValues: showScoreValues, readOnly: readOnly, onCompletedValid: onResponseCompletedValid })),\n question.type === constants_1.formAnswerTypes.multipleChoice && (React.createElement(MultipleChoice_1.default, { handleResponseUpdate: handleValueChange('choiceResponse'), choiceConfig: question.choiceConfig, selectedChoices: response === null || response === void 0 ? void 0 : response.choiceResponse, question: question, disabled: disabled, readOnly: readOnly, showScores: showScores, showScoreValues: showScoreValues, onCompletedValid: onResponseCompletedValid, questionId: question.id.toString() })),\n (question.type === constants_1.formAnswerTypes.scale || question.type === 'ActionScale') && ( // ActionScale is obsolete..\n React.createElement(ScaleResponse_1.default, { scaleConfig: question.scaleConfig, response: response === null || response === void 0 ? void 0 : response.scaleResponse, disabled: disabled, readOnly: readOnly, handleResponseUpdate: handleValueChange('scaleResponse', true) })),\n question.type === constants_1.formAnswerTypes.table && (React.createElement(TableResponse_1.default, { tableConfig: question.tableConfig, response: response === null || response === void 0 ? void 0 : response.tableResponses, disabled: disabled, readOnly: readOnly, elementSettings: elementSettings, handleResponseUpdate: handleValueChange('tableResponses', true) })),\n question.type === constants_1.formAnswerTypes.action && (React.createElement(ActionButton_1.default, { handleResponseUpdate: handleValueChange('scaleResponse'), scaleResponse: response === null || response === void 0 ? void 0 : response.scaleResponse, contentState: contentState, question: question, disabled: disabled, readOnly: readOnly })),\n question.type === constants_1.formAnswerTypes.switch && (React.createElement(\"div\", { className: classes.switchResponse },\n React.createElement(core_1.FormGroup, null,\n React.createElement(core_1.FormControlLabel, { disabled: disabled, control: (React.createElement(core_1.Switch, { color: \"secondary\", checked: !!(response === null || response === void 0 ? void 0 : response.scaleResponse), onChange: handleClickResponse('scaleResponse', (response === null || response === void 0 ? void 0 : response.scaleResponse) ? 0 : 1) })), label: React.createElement(HtmlContent_1.default, { html: question.question }) }))))));\n};\nFormQuestion.defaultProps = {\n response: null,\n showRequired: false,\n disabled: false,\n contentState: null,\n showScores: false,\n readOnly: false,\n elementSettings: null,\n showScoreValues: false,\n};\nexports.default = FormQuestion;\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar react_localize_redux_1 = require(\"react-localize-redux\");\nvar core_1 = require(\"@material-ui/core\");\nvar FormQuestion_1 = require(\"./FormQuestion\");\nvar elementStateUtils_1 = require(\"../../elementStateUtils\");\nvar constants_1 = require(\"../../constants\");\nvar styles = function (theme) { return ({\n validationText: {\n marginTop: theme.spacing(4),\n textAlign: 'center',\n width: '100%',\n outline: 'none',\n },\n}); };\nvar FormValidation = /** @class */ (function (_super) {\n __extends(FormValidation, _super);\n function FormValidation() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.state = {\n missingRequiredQuestions: false,\n changeId: null,\n };\n _this.validationErrorRef = React.createRef();\n _this.validate = function () {\n var _a;\n var _b = _this.props, task = _b.task, responses = _b.responses, getProgramItem = _b.getProgramItem, getResponses = _b.getResponses, changeId = _b.changeId;\n if (!((_a = task.contentElements) === null || _a === void 0 ? void 0 : _a.length)) {\n return true;\n }\n var missingRequiredQuestions = task.contentElements.map(function (e) {\n var _a;\n var contentState = (0, elementStateUtils_1.getElementConditionState)(e, getResponses, task, getProgramItem);\n if ((contentState === null || contentState === void 0 ? void 0 : contentState.state) === constants_1.elementConditionStates.hidden) {\n return false;\n }\n return (_a = e.questions) === null || _a === void 0 ? void 0 : _a.reduce(function (prev, curr) {\n var _a;\n return prev\n || (curr.required && (!responses || !(0, FormQuestion_1.hasValueForQuestionType)(curr.type, (_a = responses[curr.id]) === null || _a === void 0 ? void 0 : _a.response)));\n }, false);\n }).some(function (d) { return d; });\n _this.setState({ missingRequiredQuestions: missingRequiredQuestions, changeId: changeId });\n return !missingRequiredQuestions;\n };\n return _this;\n }\n FormValidation.prototype.componentDidUpdate = function (prevProps, prevState) {\n // Focus on validation error when appearing\n if (!prevState.missingRequiredQuestions && this.state.missingRequiredQuestions) {\n if (this.validationErrorRef.current)\n this.validationErrorRef.current.focus();\n }\n if (prevState.missingRequiredQuestions && this.props.changeId && prevState.changeId !== this.props.changeId) {\n this.validate();\n }\n };\n FormValidation.prototype.render = function () {\n var _a = this.props, classes = _a.classes, task = _a.task, showValidations = _a.showValidations;\n if (!task) {\n return null;\n }\n if (!this.state.missingRequiredQuestions || !showValidations) {\n return null;\n }\n return (React.createElement(core_1.Typography, { color: \"error\", tabIndex: -1, ref: this.validationErrorRef, className: classes.validationText },\n React.createElement(react_localize_redux_1.Translate, { id: \"taskContent.pleaseAnswerRequiredQuestions\" })));\n };\n return FormValidation;\n}(React.Component));\n// @ts-ignore // Typescript doesn't recognise defaultProps for Class Components??\nFormValidation.defaultProps = {\n showValidations: false,\n responses: null,\n changeId: null,\n ref: null,\n};\nexports.default = (0, core_1.withStyles)(styles)(FormValidation);\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classnames from 'classnames';\nimport { Translate } from 'react-localize-redux';\n\nimport { Link } from 'react-router-dom';\nimport OpenInNewWindowIcon from '@material-ui/icons/OpenInNew';\nimport { Typography } from '@material-ui/core';\n\nimport { linkTypes } from '../../constants';\nimport apiUrls, { getImageUrl } from '../../apiUrls';\nimport Image from '../Image';\n\nconst styles = theme => ({\n image: {\n width: '100%',\n },\n audio: {\n width: '100%',\n },\n link: {\n display: 'inline',\n borderBottom: `1px solid ${theme.palette.grey[200]}`,\n },\n fileLink: {\n },\n internalLink: {\n },\n externalLink: {\n\n },\n icon: {\n marginLeft: theme.spacing(1),\n },\n missingContent: {\n background: theme.palette.grey[100],\n padding: theme.spacing(2),\n },\n});\n\nclass LinkElement extends React.Component {\n state = {\n paddingBottom: null,\n };\n\n componentDidMount() {\n window.addEventListener('message', this.handlePostMessage);\n }\n\n componentWillUnmount() {\n window.removeEventListener('message', this.handlePostMessage);\n }\n\n handlePostMessage = (event) => {\n if (event.origin === apiUrls.contentBaseUrl && event.data?.source === 'yw@videoPlayer') {\n const aspectRatio = event.data.height / event.data.width;\n if (aspectRatio > 0) {\n this.setState({ paddingBottom: `${aspectRatio * 100}%` });\n }\n }\n }\n\n render() {\n const {\n classes, link, className, getLinkUrl, autoplayVideos,\n } = this.props;\n\n if (!link || !link.url) {\n return null;\n }\n\n const autoplay = autoplayVideos ? '&autoplaymuted=true' : '';\n\n return (\n
\n {getLinkUrl && (link.linkType === linkTypes.task || link.linkType === linkTypes.module || link.linkType === linkTypes.internal) && (\n \n \n {link.name }\n \n \n )}\n\n {link.linkType === linkTypes.image && (\n \n )}\n\n {link.linkType === linkTypes.audio && (\n \n )}\n\n {link.linkType === linkTypes.file && (\n \n \n {link.name || ()}\n \n \n )}\n\n {link.linkType === linkTypes.url && (\n \n \n {link.name || ()}\n \n \n \n )}\n\n {link.linkType === linkTypes.video && (\n
\n \n
\n )}\n\n {link.linkType === linkTypes.vimeo && (\n
\n \n
\n )}\n\n {link.linkType === linkTypes.youtube && (\n
\n \n
\n )}\n
\n );\n }\n}\n\nLinkElement.propTypes = {\n classes: PropTypes.object.isRequired,\n link: PropTypes.object,\n className: PropTypes.string,\n getLinkUrl: PropTypes.func,\n autoplayVideos: PropTypes.bool,\n};\n\nLinkElement.defaultProps = {\n link: null,\n className: null,\n getLinkUrl: null,\n autoplayVideos: false,\n};\n\nexport default withStyles(styles)(LinkElement);\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar elementStateUtils_1 = require(\"../../elementStateUtils\");\n// eslint-disable-next-line import/no-cycle -- ok because ReadMore can display content via TaskContent\nvar TaskElement_1 = __importDefault(require(\"./TaskElement\"));\nvar FormValidation_1 = __importDefault(require(\"./FormValidation\"));\nvar styles = function (theme) { return (0, core_1.createStyles)({\n validationText: {\n marginTop: theme.spacing(4),\n textAlign: 'center',\n width: '100%',\n outline: 'none',\n },\n}); };\nvar TaskContent = /** @class */ (function (_super) {\n __extends(TaskContent, _super);\n function TaskContent() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.state = {\n showValidationErrors: false,\n };\n _this.validationRef = React.createRef();\n _this.validate = function () {\n var _a;\n _this.setState({ showValidationErrors: true });\n return (_a = _this.validationRef.current) === null || _a === void 0 ? void 0 : _a.validate();\n };\n _this.validateAndSave = function (callback, submit) {\n if (_this.validate()) {\n if (_this.props.onSaveChanges) {\n _this.props.onSaveChanges(callback, submit);\n }\n }\n };\n _this.submitForm = function (callback) {\n if (_this.validate()) {\n if (_this.props.onSaveChanges) {\n _this.props.onSaveChanges(function () {\n _this.setState({ showValidationErrors: false });\n if (callback) {\n callback();\n }\n }, true);\n }\n }\n };\n _this.saveWithoutValidation = function (callback) {\n if (_this.props.onSaveChanges) {\n _this.props.onSaveChanges(callback);\n }\n };\n return _this;\n }\n TaskContent.prototype.render = function () {\n var _this = this;\n var _a = this.props, className = _a.className, classes = _a.classes, task = _a.task, taskResponses = _a.taskResponses, noContent = _a.noContent, TaskFormProps = _a.TaskFormProps, LinkElementProps = _a.LinkElementProps, showTitle = _a.showTitle, getProgramItem = _a.getProgramItem, getResponses = _a.getResponses, onResponse = _a.onResponse, TaskElementProps = _a.TaskElementProps, changeId = _a.changeId;\n if (!task) {\n return null;\n }\n var taskElements = task.contentElements || [];\n (0, elementStateUtils_1.updateAllOthersAreHiddenProperties)(task, getResponses, getProgramItem);\n return (React.createElement(\"div\", { className: className },\n React.createElement(React.Fragment, null,\n showTitle && (React.createElement(core_1.Typography, { variant: \"h4\", className: classes.title }, task.name)),\n taskElements.length === 0\n ? noContent\n : taskElements.map(function (item, index) { return (React.createElement(TaskElement_1.default, __assign({ key: \"\".concat(task.elementId, \"-\").concat(task.id, \"-\").concat(item.id), task: task, getProgramItem: getProgramItem, getResponses: getResponses, element: item, taskResponses: taskResponses, TaskFormProps: TaskFormProps, LinkElementProps: LinkElementProps, elementIndex: index, onResponse: onResponse, showValidationErrors: _this.state.showValidationErrors }, TaskElementProps))); })),\n React.createElement(FormValidation_1.default, { ref: this.validationRef, task: task, responses: taskResponses, changeId: changeId, showValidations: this.state.showValidationErrors, getProgramItem: getProgramItem, getResponses: getResponses })));\n };\n return TaskContent;\n}(React.Component));\n// @ts-ignore // Typescript doesn't recognise defaultProps for Class Components??\nTaskContent.defaultProps = {\n className: null,\n noContent: null,\n taskResponses: null,\n TaskFormProps: null,\n LinkElementProps: null,\n showTitle: false,\n elementPreContent: null,\n task: null,\n TaskElementProps: null,\n changeId: null,\n onSaveChanges: null,\n ref: null,\n};\nexports.default = (0, core_1.withStyles)(styles)(TaskContent);\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar prop_types_1 = __importDefault(require(\"prop-types\"));\nvar TaskContent_1 = __importDefault(require(\"./TaskContent\"));\nvar TaskContentDisplay = function (_a) {\n var task = _a.task, _b = _a.elementResponses, elementResponses = _b === void 0 ? null : _b, rest = __rest(_a, [\"task\", \"elementResponses\"]);\n return (task\n ? (React.createElement(TaskContent_1.default, __assign({ task: task, getProgramItem: function () { return null; }, getResponses: function () { return null; }, taskResponses: elementResponses, TaskFormProps: { readOnly: true }, onResponse: function () { }, onSaveChanges: function () { } }, rest))) : null);\n};\nTaskContentDisplay.propTypes = {\n task: prop_types_1.default.object,\n elementResponses: prop_types_1.default.object,\n};\nTaskContentDisplay.defaultProps = {\n task: null,\n elementResponses: null,\n};\nexports.default = TaskContentDisplay;\n","\"use strict\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar styles_1 = require(\"@material-ui/core/styles\");\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar core_1 = require(\"@material-ui/core\");\nvar HtmlContent_1 = __importDefault(require(\"../HtmlContent\"));\nvar constants_1 = require(\"../../constants\");\n// eslint-disable-next-line import/no-cycle -- ok because ReadMore can display content via TaskContent\nvar taskElementContent_1 = __importStar(require(\"./taskElementContent\"));\nvar LinkElement_1 = __importDefault(require(\"./LinkElement\"));\nvar elementStateUtils_1 = require(\"../../elementStateUtils\");\nvar utils_1 = require(\"./utils\");\nvar stringUtils_1 = require(\"../../stringUtils\");\nvar styles = function (theme) {\n var _a, _b, _c;\n return (0, core_1.createStyles)({\n root: (_a = {\n position: 'relative',\n clear: 'both',\n width: '100%',\n flex: '0 0 100%',\n '&:not(:first-child)': {\n marginTop: theme.spacing(8),\n }\n },\n _a[theme.breakpoints.down('sm')] = {\n wordBreak: 'break-word',\n '&+&': {\n marginTop: theme.spacing(6),\n },\n },\n _a['&$selected'] = {\n border: \"2px solid \".concat(theme.palette.primary.main),\n padding: theme.spacing(1),\n },\n _a[\"&.et_\".concat(constants_1.defaultContentElementTypes.box)] = {\n marginTop: theme.spacing(4),\n background: theme.youwell.colors.secondaryBackground,\n color: theme.palette.grey[900],\n boxShadow: theme.shadows[3],\n borderRadius: theme.youwell.shapes.borderRadiusFlatter,\n padding: theme.spacing(2),\n alignSelf: 'flex-start',\n '$root+&': (_b = {\n marginTop: theme.spacing(8)\n },\n _b[theme.breakpoints.down('sm')] = {\n marginTop: theme.spacing(6),\n },\n _b),\n '& figure.table': {\n margin: '1em -16px',\n width: 'calc(100% + 32px)',\n },\n '& .htmlcontent a': {\n color: 'var(--primary-color)',\n },\n },\n _a[\"&.et_\".concat(constants_1.defaultContentElementTypes.card)] = (_c = {\n flex: '0 0 auto',\n width: '31%',\n padding: theme.spacing(1),\n background: theme.youwell.colors.secondaryBackground,\n borderRadius: theme.youwell.shapes.borderRadiusFlatter\n },\n _c[theme.breakpoints.down('xs')] = {\n flex: '0 0 100%',\n },\n _c),\n _a),\n hoveredElement: {\n visibility: 'hidden',\n '$root:hover &': {\n visibility: 'visible',\n },\n },\n header: {\n display: 'flex',\n alignItems: 'center',\n marginBottom: theme.spacing(2),\n },\n title: {\n fontSize: '1.25em',\n flex: '1 1 auto',\n },\n content: {\n '&+&': {\n marginTop: theme.spacing(4),\n },\n '&:empty': {\n display: 'none',\n },\n },\n htmlContent: {},\n linkContent: {},\n accepted: {},\n rejected: {},\n selected: {},\n });\n};\nvar TaskElement = /** @class */ (function (_super) {\n __extends(TaskElement, _super);\n function TaskElement() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.scrolled = false;\n _this.scrollIntoView = function () {\n var element = document.getElementById(\"\".concat(constants_1.contentElemenIdPrefix).concat(_this.props.element.id));\n if (element) {\n _this.scrolled = true;\n setTimeout(function () {\n var yOffset = -90; // (isDesktop ? -headerHeight : 0) - 10;\n var y = element.getBoundingClientRect().top + window.scrollY + yOffset;\n if (window.scrollTo) {\n window.scrollTo({ top: y });\n }\n else {\n document.documentElement.scrollTop = y;\n }\n // el.scrollIntoView();\n // el.scrollIntoView({ behavior: 'smooth' });\n }, 200);\n }\n };\n _this.checkScroll = function () {\n var _a, _b;\n if (_this.scrolled || !_this.props.element) {\n // no action\n }\n else if (((_a = window === null || window === void 0 ? void 0 : window.location) === null || _a === void 0 ? void 0 : _a.hash) && \"\".concat(_this.props.element.id) === window.location.hash.substring(1)) {\n _this.scrollIntoView();\n }\n else if ((0, stringUtils_1.parseBoolString)((_b = _this.props.element.settings) === null || _b === void 0 ? void 0 : _b.scrollOnVisibleContent)) {\n _this.scrollIntoView();\n }\n };\n return _this;\n }\n TaskElement.prototype.componentDidMount = function () {\n this.checkScroll();\n };\n TaskElement.prototype.componentDidUpdate = function () {\n this.checkScroll();\n };\n TaskElement.prototype.render = function () {\n var _a;\n var _b, _c;\n var _d = this.props, classes = _d.classes, task = _d.task, taskResponses = _d.taskResponses, element = _d.element, TaskFormProps = _d.TaskFormProps, customElementHandler = _d.customElementHandler, getResponses = _d.getResponses, showValidationErrors = _d.showValidationErrors, className = _d.className, onResponse = _d.onResponse, LinkElementProps = _d.LinkElementProps, getProgramItem = _d.getProgramItem, noHiddenStates = _d.noHiddenStates, HoveredElement = _d.HoveredElement, selectedElementId = _d.selectedElementId, elementPreContent = _d.elementPreContent, elementIndex = _d.elementIndex;\n var contentStateCondition = (0, elementStateUtils_1.getElementConditionState)(element, getResponses, task, getProgramItem);\n var contentState = contentStateCondition === null || contentStateCondition === void 0 ? void 0 : contentStateCondition.state;\n if (contentState === constants_1.elementConditionStates.hidden && !noHiddenStates) {\n return React.createElement(\"div\", { className: classes.hiddenByState, \"data-csid\": contentStateCondition === null || contentStateCondition === void 0 ? void 0 : contentStateCondition.id });\n }\n var htmlContentPosition = (0, taskElementContent_1.getHtmlContentPosition)(element.elementType, (_b = element.settings) === null || _b === void 0 ? void 0 : _b.contentPosition);\n var showContent = htmlContentPosition > -1;\n // Set as exitNode for early exit from module (used in i.e. public screening programs)\n window.__youwellExitNode = (0, stringUtils_1.parseBoolString)((_c = element.settings) === null || _c === void 0 ? void 0 : _c.exitNode);\n return (React.createElement(React.Fragment, null,\n elementPreContent && elementPreContent(element, elementIndex),\n React.createElement(\"div\", { id: \"\".concat(constants_1.contentElemenIdPrefix).concat(element.id), \"data-csid\": contentStateCondition === null || contentStateCondition === void 0 ? void 0 : contentStateCondition.id, className: (0, classnames_1.default)(classes.root, className, (_a = {},\n _a[classes.accepted] = contentState === constants_1.elementConditionStates.accepted,\n _a[classes.rejected] = contentState === constants_1.elementConditionStates.rejected,\n _a[classes.selected] = selectedElementId && element.id === selectedElementId,\n _a[\"et_\".concat(element.elementType)] = element.elementType && element.elementType !== constants_1.defaultContentElementTypes.default,\n _a)), style: (0, utils_1.getStylesFromSettings)((element === null || element === void 0 ? void 0 : element.settings) ? element.settings : {}) },\n HoveredElement && (React.createElement(HoveredElement, { taskId: task.id, elementId: element.id, className: classes.hoveredElement })),\n showContent && element.title && (React.createElement(\"div\", { className: classes.header },\n React.createElement(core_1.Typography, { variant: \"subtitle2\", className: classes.title }, element.title))),\n htmlContentPosition === 0 && (React.createElement(HtmlContent_1.default, { html: element.htmlContent, className: (0, classnames_1.default)(classes.content, classes.htmlContent) })),\n showContent && (React.createElement(LinkElement_1.default, __assign({ link: element.link, className: (0, classnames_1.default)(classes.content, classes.linkContent) }, LinkElementProps))),\n htmlContentPosition === 1 && (React.createElement(HtmlContent_1.default, { html: element.htmlContent, className: (0, classnames_1.default)(classes.content, classes.htmlContent) })),\n React.createElement(taskElementContent_1.default, { className: classes.content, task: task, element: element, getProgramItem: getProgramItem, getResponses: getResponses, contentState: contentState, customElementHandler: customElementHandler, taskResponses: taskResponses, showValidationErrors: showValidationErrors, onResponse: onResponse, TaskFormProps: TaskFormProps }),\n htmlContentPosition === 2 && (React.createElement(HtmlContent_1.default, { html: element.htmlContent, className: (0, classnames_1.default)(classes.content, classes.htmlContent) })))));\n };\n return TaskElement;\n}(React.Component));\n// @ts-ignore // Typescript doesn't recognise defaultProps for Class Components??\nTaskElement.defaultProps = {\n TaskFormProps: null,\n customElementHandler: null,\n LinkElementProps: null,\n taskResponses: null,\n noHiddenStates: false,\n HoveredElement: null,\n selectedElementId: null,\n elementPreContent: null,\n showValidationErrors: false,\n className: null,\n};\nexports.default = (0, styles_1.withStyles)(styles)(TaskElement);\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\n\nimport FormQuestion from './FormQuestion';\nimport { customContentElementTypes, questionContentElementTypes } from '../../constants';\nimport QuestionnaireTable from './formResponseTypes/customTypes/QuestionnaireTable';\nimport BullsEyeQuestions from './formResponseTypes/customTypes/BullsEyeQuestions';\nimport BubbleChoiceQuestions from './formResponseTypes/customTypes/BubbleChoiceQuestions';\nimport QuizResponse from './formResponseTypes/customTypes/QuizResponse';\nimport Quiz from './formResponseTypes/customTypes/Quiz';\nimport RouteSelection from './formResponseTypes/customTypes/RouteSelection';\nimport CollapsedTable from './formResponseTypes/customTypes/CollapsedTable';\n\nclass TaskForm extends React.Component {\n handleResponseUpdate = question => (responseName, value) => {\n if (this.props.readOnly) {\n return;\n }\n\n this.props.onResponse([{ questionId: question.id, questionKey: question.key, [responseName]: value }]);\n }\n\n render() {\n const {\n element, disabled, readOnly,\n FormQuestionProps, QuestionnaireTableProps, contentState, showValidationErrors,\n taskResponses, getProgramItem, getResponses, taskId, small, showScoreValues,\n } = this.props;\n\n const questions = element.questions || [];\n const responses = taskResponses || {};\n const elementSettings = element.settings || {};\n\n switch (element.elementType) {\n case questionContentElementTypes.bullseye:\n return (\n \n );\n case questionContentElementTypes.questionnaire:\n return (\n \n );\n case questionContentElementTypes.bubbleChoice:\n return questions.map(q => (\n \n ));\n case customContentElementTypes.quizResponse:\n return (\n \n );\n case questionContentElementTypes.quiz:\n return (\n \n );\n case customContentElementTypes.routeSelection:\n return (\n \n );\n case (questionContentElementTypes.collapsedTable):\n return questions.map(q => (\n \n ));\n default:\n return questions.map(q => (\n \n ));\n }\n }\n}\n\nTaskForm.propTypes = {\n element: PropTypes.object.isRequired,\n onResponse: PropTypes.func.isRequired,\n getProgramItem: PropTypes.func.isRequired,\n getResponses: PropTypes.func.isRequired,\n FormQuestionProps: PropTypes.object,\n QuestionnaireTableProps: PropTypes.object,\n taskResponses: PropTypes.object,\n disabled: PropTypes.bool,\n readOnly: PropTypes.bool,\n contentState: PropTypes.string,\n taskId: PropTypes.string.isRequired,\n showValidationErrors: PropTypes.bool,\n small: PropTypes.bool,\n showScoreValues: PropTypes.bool,\n};\n\nTaskForm.defaultProps = {\n FormQuestionProps: {},\n QuestionnaireTableProps: {},\n taskResponses: null,\n disabled: false,\n contentState: null,\n readOnly: false,\n showValidationErrors: false,\n small: false,\n showScoreValues: false,\n};\n\nexport default TaskForm;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar core_1 = require(\"@material-ui/core\");\nvar HtmlContent_1 = __importDefault(require(\"../../HtmlContent\"));\nvar constants_1 = require(\"../../../constants\");\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return ({\n accepted: {},\n rejected: {},\n actionButtonContainer: {\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n },\n actionButton: {\n width: '100%',\n padding: theme.spacing(2),\n boxShadow: theme.shadows[3],\n border: \"4px solid \".concat(theme.palette.primary.main),\n '$accepted &': {\n background: theme.palette.primary.main,\n borderColor: theme.palette.primary.main,\n color: theme.palette.common.white,\n },\n '$rejected &': {\n background: 'darkgrey',\n borderColor: 'transparent',\n color: 'whitesmoke',\n opacity: 1,\n },\n },\n actionButtonHtml: {\n width: '100%',\n color: 'inherit',\n '$rejected &': {\n color: 'whitesmoke',\n '& > h2, & > h3, & > h4': {\n fontWeight: theme.typography.fontWeightMedium,\n },\n },\n '$accepted &': {\n color: theme.palette.common.white,\n '& > h2, & > h3, & > h4': {\n fontWeight: theme.typography.fontWeightMedium,\n },\n },\n },\n}); });\nvar ActionButton = function (_a) {\n var _b;\n var scaleResponse = _a.scaleResponse, contentState = _a.contentState, handleResponseUpdate = _a.handleResponseUpdate, question = _a.question, disabled = _a.disabled, readOnly = _a.readOnly;\n var classes = useStyles();\n var handleClickResponse = function (value) { return function () {\n if (readOnly)\n return;\n if (handleResponseUpdate) {\n handleResponseUpdate(value);\n }\n }; };\n return (React.createElement(\"div\", { className: (0, classnames_1.default)(classes.actionButtonContainer, (_b = {},\n _b[classes.accepted] = contentState === constants_1.elementConditionStates.accepted,\n _b[classes.rejected] = contentState === constants_1.elementConditionStates.rejected,\n _b)) },\n React.createElement(core_1.ButtonBase, { className: classes.actionButton, onClick: handleClickResponse(scaleResponse ? 0 : 1), disabled: disabled, focusRipple: true },\n React.createElement(HtmlContent_1.default, { html: question.question, className: classes.actionButtonHtml }))));\n};\nActionButton.defaultProps = {\n disabled: false,\n readOnly: false,\n handleResponseUpdate: null,\n scaleResponse: null,\n contentState: null,\n};\nexports.default = ActionButton;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { useSelector } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\n\nimport {\n TextField, Typography, makeStyles,\n} from '@material-ui/core';\n\nimport {\n KeyboardTimePicker, KeyboardDateTimePicker, KeyboardDatePicker,\n} from '@material-ui/pickers';\nimport { TimeIcon, CalendarIcon } from '../../../../common/icons';\nimport { validateEmail } from '../../../validationUtils';\nimport { freetextInputTypes } from '../../../constants';\nimport { getLocalDate, isDateObject, pad2 } from '../../../dateUtils';\nimport { TextEditor } from '../../../../common/components';\nimport HtmlContent from '../../HtmlContent';\n\nconst useStyles = makeStyles(theme => ({\n inputResponse: {\n border: theme.youwell.borders.inputBox,\n backgroundColor: theme.youwell.colors.inputBackground,\n padding: theme.spacing(2),\n },\n disabledReadonlyInput: {\n color: theme.palette.text.primary,\n },\n htmlContent: {\n border: theme.youwell.borders.dim,\n padding: theme.spacing(1),\n },\n}));\n\nexport const getInputType = (inputType) => {\n switch (inputType) {\n case freetextInputTypes.email:\n return 'email';\n case freetextInputTypes.phone:\n return 'tel';\n case freetextInputTypes.number:\n return 'number';\n case freetextInputTypes.date:\n return 'date';\n case freetextInputTypes.dateAndTime:\n return 'datetime-local';\n case freetextInputTypes.time:\n return 'time';\n case freetextInputTypes.default:\n case freetextInputTypes.singleLineText:\n default:\n return 'text';\n }\n};\n\nconst validators = {\n [freetextInputTypes.email]: validateEmail,\n};\n\nconst FreetextResponse = ({\n freetextResponse, handleResponseUpdate, freetextConfig, disabled, readOnly, onCompletedValid,\n}) => {\n const classes = useStyles();\n const translate = useSelector(state => getTranslate(state.localize));\n const [validationError, setValidationError] = React.useState(null);\n const [freetextStateValue, setFreetextStateValue] = React.useState(null);\n const [showValidation, setShowValidation] = React.useState(false);\n const updateAsyncTimer = React.useRef();\n\n const freetextType = (freetextConfig && freetextConfig.inputType) || freetextInputTypes.default;\n\n const validate = (value) => {\n if (validators[freetextType]) {\n const validation = validators[freetextType](value);\n setValidationError(validation.valid ? null : validation.errorTextKey);\n return validation.valid;\n }\n return true;\n };\n\n const handleChange = (event) => {\n if (readOnly) {\n return;\n }\n const value = event.target.value;\n setFreetextStateValue(value);\n\n if (showValidation) {\n validate(value);\n }\n clearTimeout(updateAsyncTimer.current);\n updateAsyncTimer.current = setTimeout(() => {\n handleResponseUpdate(value);\n }, 200);\n };\n\n const handleDateTimeChange = (date) => {\n if (readOnly) {\n return;\n }\n\n setFreetextStateValue(date);\n\n if (showValidation) {\n validate(date);\n }\n if (date === null || isDateObject(date)) {\n let valueString;\n if (date === null) {\n valueString = null;\n } else {\n switch (freetextType) {\n case freetextInputTypes.time:\n valueString = `${pad2(date.getHours())}:${pad2(date.getMinutes())}`;\n break;\n case freetextInputTypes.dateAndTime:\n valueString = `${date.getFullYear()}-${pad2(date.getMonth() + 1)}-${pad2(date.getDate())} ${pad2(date.getHours())}:${pad2(date.getMinutes())}`;\n break;\n case freetextInputTypes.date:\n default:\n valueString = `${date.getFullYear()}-${pad2(date.getMonth() + 1)}-${pad2(date.getDate())}`;\n break;\n }\n }\n\n handleResponseUpdate(valueString);\n }\n };\n\n React.useEffect(() => {\n if (readOnly) {\n // reset text if switching from editing to readonly\n setFreetextStateValue(null);\n }\n }, [readOnly]);\n\n React.useEffect(() => {\n if (!freetextResponse) {\n // reset text if response is cleared from \"outside\" of component\n setFreetextStateValue(null);\n }\n }, [freetextResponse]);\n\n const value = freetextStateValue !== null ? freetextStateValue : freetextResponse; // comparing with null to keep empty ('') value\n\n const onBlur = () => {\n if (value) {\n setShowValidation(true);\n const valid = validate(value);\n if (valid && onCompletedValid) {\n onCompletedValid();\n }\n }\n };\n\n const sharedPickerProps = {\n className: classes.inputResponse,\n onChange: handleDateTimeChange,\n fullWidth: true,\n autoOk: true,\n clearable: true,\n disableToolbar: true,\n ampm: false,\n minutesStep: 5,\n disabled,\n clearLabel: translate('clear'),\n cancelLabel: translate('cancel'),\n okLabel: translate('ok'),\n invalidDateMessage: translate('time.invalidFormat'),\n };\n\n switch (freetextType) {\n case freetextInputTypes.date:\n return (\n }\n KeyboardButtonProps={{\n 'aria-label': translate('time.setDate'),\n }}\n placeholder=\"dd.mm.yyyy\"\n format=\"dd.MM.yyyy\"\n disabled={disabled || readOnly}\n />\n );\n case freetextInputTypes.time:\n return (\n <>\n }\n KeyboardButtonProps={{\n 'aria-label': translate('time.setTime'),\n }}\n placeholder=\"00:00\"\n format=\"HH:mm\"\n disabled={disabled || readOnly}\n />\n \n );\n case freetextInputTypes.dateAndTime:\n return (\n <>\n }\n KeyboardButtonProps={{\n 'aria-label': translate('time.setDateAndTime'),\n }}\n placeholder=\"dd.mm.yyyy hh:mm\"\n format=\"dd.MM.yyyy HH:mm\"\n disabled={disabled || readOnly}\n />\n \n );\n case freetextInputTypes.richText:\n return (\n <>\n {disabled || readOnly ? : (\n \n )}\n \n );\n default:\n return (\n <>\n \n {freetextConfig?.maxLength > 0 && (\n \n {translate('taskContent.maxLengthXofY', { x: value?.length || 0, y: freetextConfig?.maxLength })}\n \n )}\n \n );\n }\n};\n\nFreetextResponse.propTypes = {\n handleResponseUpdate: PropTypes.func,\n freetextConfig: PropTypes.object,\n freetextResponse: PropTypes.string,\n disabled: PropTypes.bool,\n readOnly: PropTypes.bool,\n onCompletedValid: PropTypes.func,\n};\n\nFreetextResponse.defaultProps = {\n freetextResponse: null,\n disabled: false,\n handleResponseUpdate: null,\n freetextConfig: null,\n readOnly: false,\n onCompletedValid: null,\n};\n\nexport default FreetextResponse;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar core_1 = require(\"@material-ui/core\");\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return ({\n choiceResponse: {\n border: theme.youwell.borders.inputBox,\n backgroundColor: theme.youwell.colors.inputBackground,\n padding: theme.spacing(2),\n },\n horizontal: {},\n choiceGroup: {\n flexDirection: 'column',\n '&$horizontal': {\n flexDirection: 'row',\n },\n },\n formControlRoot: {\n '$readOnly &': {\n cursor: 'text',\n },\n },\n formControlLabel: {\n margin: theme.spacing(1, 0),\n flex: '1 1 auto',\n '$correct &': {\n color: theme.youwell.colors.green,\n },\n '$inCorrect &': {\n color: theme.youwell.colors.red,\n },\n },\n freetextLabel: {\n display: 'flex',\n alignItems: 'center',\n },\n freetextLabelText: {\n marginRight: theme.spacing(1),\n minWidth: 80,\n },\n choiceFreetextInput: {\n border: \"1px solid \".concat(theme.palette.grey[200]),\n padding: theme.spacing(0, 1),\n backgroundColor: theme.youwell.colors.inputBackground,\n },\n correct: {\n color: theme.youwell.colors.green,\n },\n inCorrect: {\n color: theme.youwell.colors.red,\n },\n checkBox: {\n color: theme.palette.primary.main,\n '$correct &': {\n color: theme.youwell.colors.green,\n },\n '$inCorrect &': {\n color: theme.youwell.colors.red,\n },\n '$readOnly &': {\n cursor: 'default',\n },\n },\n readOnly: {},\n}); }, { name: 'MultipleChoice' });\nvar MultipleChoice = function (_a) {\n var _b;\n var _c;\n var choiceConfig = _a.choiceConfig, selectedChoices = _a.selectedChoices, handleResponseUpdate = _a.handleResponseUpdate, showScores = _a.showScores, question = _a.question, disabled = _a.disabled, onCompletedValid = _a.onCompletedValid, readOnly = _a.readOnly, questionId = _a.questionId, showScoreValues = _a.showScoreValues, elementSettings = _a.elementSettings;\n var classes = useStyles();\n var isDisabled = disabled || showScores;\n var translate = (0, translate_1.default)();\n var handleMultiSelectFreetextChange = function (freetextId) { return function (event) {\n var responses = __spreadArray([], selectedChoices || [], true);\n var ix = responses.findIndex(function (d) { return (d === null || d === void 0 ? void 0 : d.id) === freetextId; });\n var updatedValue = { id: freetextId, score: 0, value: event.target.value };\n if (ix > -1) {\n responses[ix] = updatedValue;\n }\n else {\n responses.push(updatedValue);\n }\n if (handleResponseUpdate)\n handleResponseUpdate(responses);\n }; };\n var handleMultiSelectChange = function (answer) { return function (event, checked) {\n var responses = (selectedChoices || []).filter(function (d) { return (d === null || d === void 0 ? void 0 : d.id) !== answer.id; });\n var values = checked ? __spreadArray(__spreadArray([], responses, true), [answer], false) : responses;\n if (handleResponseUpdate)\n handleResponseUpdate(values);\n if (onCompletedValid)\n onCompletedValid();\n }; };\n var checkedResponses = (selectedChoices && selectedChoices.reduce(function (prev, curr) {\n var _a;\n if (curr === null || curr === void 0 ? void 0 : curr.id)\n return (__assign(__assign({}, prev), (_a = {}, _a[curr.id] = curr.value, _a)));\n return (__assign({}, prev));\n }, {})) || {};\n var onFreetextBlur = function () {\n if (choiceConfig && choiceConfig.freetextChoiceId && (checkedResponses === null || checkedResponses === void 0 ? void 0 : checkedResponses[choiceConfig.freetextChoiceId])) {\n if (onCompletedValid)\n onCompletedValid();\n }\n };\n var getScoreClass = function (item) {\n if (!showScores) {\n return undefined;\n }\n if (item.score && item.score > 0) {\n return classes.correct;\n }\n if ((selectedChoices || []).some(function (d) { return (d === null || d === void 0 ? void 0 : d.id) === item.id; })) {\n return classes.inCorrect;\n }\n return undefined;\n };\n // Allow custom styling from config\n var backgroundColor = (elementSettings === null || elementSettings === void 0 ? void 0 : elementSettings['form.background']) || (choiceConfig === null || choiceConfig === void 0 ? void 0 : choiceConfig.background);\n // default to white if backgroundColor is set, but may be overridden by choiceConfig.foregroundColor\n var foreGroundColor = (elementSettings === null || elementSettings === void 0 ? void 0 : elementSettings['form.foreground']) || (choiceConfig === null || choiceConfig === void 0 ? void 0 : choiceConfig.foreground) || (backgroundColor ? 'white' : undefined);\n return (React.createElement(\"div\", { style: { backgroundColor: backgroundColor, color: foreGroundColor, borderColor: backgroundColor }, className: classes.choiceResponse, \"aria-labelledby\": questionId },\n React.createElement(core_1.FormGroup, { className: (0, classnames_1.default)(classes.choiceGroup, (_b = {}, _b[classes.horizontal] = choiceConfig === null || choiceConfig === void 0 ? void 0 : choiceConfig.horizontal, _b[classes.readOnly] = readOnly, _b)) }, (_c = question.answers) === null || _c === void 0 ? void 0 :\n _c.map(function (item) { return (React.createElement(core_1.FormControlLabel, { key: item.id, disabled: isDisabled, control: (React.createElement(core_1.Checkbox, { disabled: isDisabled, checked: !!checkedResponses[item.id], onChange: handleMultiSelectChange(item), value: item.id, style: { color: foreGroundColor }, className: classes.checkBox })), className: getScoreClass(item), classes: { label: classes.formControlLabel, root: classes.formControlRoot }, label: showScoreValues ? \"\".concat(item.score, \" - \").concat(item.value) : item.value })); }),\n (choiceConfig === null || choiceConfig === void 0 ? void 0 : choiceConfig.freetextChoiceId) && (React.createElement(core_1.FormControlLabel, { disabled: isDisabled, control: (React.createElement(core_1.Checkbox, { disabled: isDisabled, checked: choiceConfig.freetextChoiceId in checkedResponses, onChange: handleMultiSelectChange({ id: choiceConfig.freetextChoiceId }), value: checkedResponses[choiceConfig.freetextChoiceId] || '', style: { color: foreGroundColor }, className: classes.checkBox })), classes: { label: classes.formControlLabel, root: classes.formControlRoot }, label: (React.createElement(\"div\", { className: classes.freetextLabel },\n React.createElement(core_1.Typography, { className: classes.freetextLabelText }, choiceConfig.freetextChoiceLabel || translate('taskContent.freetextChoiceLabel')),\n React.createElement(core_1.Input, { placeholder: translate('taskContent.freetextChoice'), fullWidth: true, disabled: isDisabled, value: checkedResponses[choiceConfig.freetextChoiceId] || '', onChange: handleMultiSelectFreetextChange(choiceConfig.freetextChoiceId), onBlur: onFreetextBlur, className: classes.choiceFreetextInput, disableUnderline: true }))) })))));\n};\nMultipleChoice.defaultProps = {\n choiceConfig: null,\n selectedChoices: null,\n disabled: false,\n readOnly: false,\n handleResponseUpdate: null,\n showScores: false,\n onCompletedValid: null,\n showScoreValues: false,\n elementSettings: null,\n};\nexports.default = MultipleChoice;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classnames from 'classnames';\n\nimport {\n Typography, Button, Slider,\n} from '@material-ui/core';\n\nimport { hasValue } from '../../../objectUtils';\nimport { with1dArrowNavigation } from '../../accessibility/ArrowNavigation';\n\nconst styles = theme => ({\n root: {\n display: 'flex',\n flexDirection: 'column-reverse', // labels are positioned first but displayed last. To help for screen readers\n flexWrap: 'wrap',\n border: theme.youwell.borders.inputBox,\n backgroundColor: theme.youwell.colors.inputBackground,\n padding: theme.spacing(2),\n\n '&$vertical': {\n height: 400,\n flexDirection: 'column',\n },\n },\n vertical: {\n },\n scale: {\n width: '100%',\n padding: theme.spacing(3, 0, 2),\n\n '$vertical &': {\n width: '50%',\n height: '100%',\n },\n },\n divider: {\n flex: '1 1 auto',\n margin: theme.spacing(1),\n borderBottom: theme.youwell.borders.normal,\n\n [theme.breakpoints.down(700)]: {\n margin: 4,\n },\n [theme.breakpoints.down(650)]: {\n margin: 2,\n },\n [theme.breakpoints.down(620)]: {\n margin: 0,\n },\n [theme.breakpoints.down('xs')]: {\n border: 0,\n margin: 0,\n },\n },\n dividerSmall: {\n margin: theme.spacing(0.5),\n\n [theme.breakpoints.down('xs')]: {\n margin: 0,\n },\n },\n noLine: {\n borderBottom: 'none',\n },\n step: {\n width: '100%',\n minWidth: 0,\n maxWidth: 64,\n wordBreak: 'normal', // override setting from TaskElement\n\n [theme.breakpoints.down('xs')]: {\n maxWidth: 48,\n },\n },\n buttons: {\n width: '100%',\n padding: theme.spacing(3, 0, 2),\n display: 'flex',\n alignItems: 'center',\n\n '$vertical &': {\n width: '50%',\n height: '100%',\n },\n },\n smallButtons: {\n },\n scaleLabels: {\n width: '100%',\n display: 'flex',\n justifyContent: 'space-between',\n\n '$vertical &': {\n padding: theme.spacing(1, 0),\n textAlign: 'right',\n width: '50%',\n flexDirection: 'column-reverse',\n alignItems: 'flex-end',\n height: '100%',\n },\n },\n label: {\n flex: '1 1 30%',\n\n '$vertical &': {\n flex: '0 0 auto',\n },\n },\n lastLabel: {\n marginLeft: theme.spacing(1),\n textAlign: 'right',\n },\n slider: {\n margin: theme.spacing(0, 1, 2),\n width: 'calc(100% - 16px)',\n },\n showThumb: {\n display: 'block',\n },\n hideThumb: {\n display: 'none',\n },\n});\n\nclass ScaleResponse extends React.Component {\n state = {\n sliderValue: undefined,\n }\n\n handleChange = value => () => {\n if (this.props.readOnly) return;\n\n this.props.handleResponseUpdate(value);\n }\n\n handleSliderChange = (event, value) => {\n if (this.props.readOnly) return;\n\n this.setState({ sliderValue: value }, () => {\n if (this.updateTimeout) {\n clearTimeout(this.updateTimeout);\n }\n this.updateTimeout = setTimeout(this.updateSliderValue, 500);\n });\n };\n\n updateSliderValue = () => {\n this.props.handleResponseUpdate(this.state.sliderValue);\n }\n\n renderLabels = (scaleConfig, classes) => {\n if (scaleConfig.minLabel && scaleConfig.maxLabel) {\n return (\n
\n \n {scaleConfig.minLabel}\n \n \n {scaleConfig.midLabel}\n \n \n {scaleConfig.maxLabel}\n \n
\n );\n }\n return null;\n }\n\n render() {\n const {\n classes, scaleConfig, response, disabled, navigation,\n } = this.props;\n\n const range = Math.abs(scaleConfig.max - scaleConfig.min);\n\n if (range >= 10) {\n const sliderValue = hasValue(this.state.sliderValue) ? this.state.sliderValue : response;\n const rangeStep = Math.ceil(range / 5);\n const marks = [];\n marks.push({ value: scaleConfig.min, label: scaleConfig.min });\n for (let value = rangeStep; value < scaleConfig.max; value += rangeStep) {\n marks.push({ value, label: value });\n }\n marks.push({ value: scaleConfig.max, label: scaleConfig.max });\n return (\n
\n {this.renderLabels(scaleConfig, classes)}\n\n
\n \n
\n
\n );\n }\n\n const steps = [];\n for (let i = scaleConfig.min; i <= scaleConfig.max; i += scaleConfig.step) {\n steps.push(i);\n }\n\n const smallButtons = steps.length > 5;\n\n return (\n
\n {this.renderLabels(scaleConfig, classes)}\n\n
\n {steps.map((step, index) => (\n \n {index > 0 &&
}\n \n {step}\n \n \n ))}\n
\n
\n );\n }\n}\n\nScaleResponse.propTypes = {\n navigation: PropTypes.object.isRequired,\n classes: PropTypes.object.isRequired,\n handleResponseUpdate: PropTypes.func.isRequired,\n scaleConfig: PropTypes.object.isRequired,\n response: PropTypes.number,\n disabled: PropTypes.bool,\n readOnly: PropTypes.bool,\n};\n\nScaleResponse.defaultProps = {\n response: null,\n disabled: false,\n readOnly: false,\n};\n\nexport default withStyles(styles)(with1dArrowNavigation(ScaleResponse));\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar core_1 = require(\"@material-ui/core\");\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return ({\n choiceResponse: {\n border: theme.youwell.borders.inputBox,\n backgroundColor: theme.youwell.colors.inputBackground,\n padding: theme.spacing(2),\n },\n horizontal: {},\n radioGroup: {\n flexDirection: 'column',\n '&$horizontal': {\n flexDirection: 'row',\n },\n },\n formControlRoot: {\n '$readOnly &': {\n cursor: 'text',\n },\n },\n formControlLabel: {\n margin: theme.spacing(1, 0),\n flex: '1 1 auto',\n '$correct &': {\n color: theme.youwell.colors.green,\n },\n '$inCorrect &': {\n color: theme.youwell.colors.red,\n },\n },\n choiceButtonContainer: {\n border: theme.youwell.borders.inputBox,\n backgroundColor: theme.youwell.colors.inputBackground,\n padding: theme.spacing(2),\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n alignItems: 'center',\n '&$horizontal': {\n flexDirection: 'row',\n },\n },\n choiceButton: {\n margin: theme.spacing(1, 2),\n },\n choiceFreetextInput: {\n border: \"1px solid \".concat(theme.palette.grey[200]),\n padding: theme.spacing(0, 1),\n backgroundColor: theme.youwell.colors.inputBackground,\n },\n radio: {\n color: theme.palette.primary.main,\n '$correct &': {\n color: theme.youwell.colors.green,\n },\n '$inCorrect &': {\n color: theme.youwell.colors.red,\n },\n '$readOnly &': {\n cursor: 'default',\n },\n },\n correct: {\n color: theme.youwell.colors.green,\n },\n inCorrect: {\n color: theme.youwell.colors.red,\n },\n freetextLabel: {\n display: 'flex',\n alignItems: 'center',\n },\n freetextLabelText: {\n marginRight: theme.spacing(1),\n minWidth: 80,\n },\n readOnly: {},\n}); });\nvar SingleChoice = function (_a) {\n var _b, _c;\n var _d, _e;\n var choiceConfig = _a.choiceConfig, selectedChoice = _a.selectedChoice, handleResponseUpdate = _a.handleResponseUpdate, showScores = _a.showScores, question = _a.question, disabled = _a.disabled, onCompletedValid = _a.onCompletedValid, readOnly = _a.readOnly, showScoreValues = _a.showScoreValues, elementSettings = _a.elementSettings;\n var classes = useStyles();\n var isDisabled = disabled || showScores;\n var translate = (0, translate_1.default)();\n var handleSingleSelectChange = function (answers) { return function (event) {\n var id = Number(event.target.value);\n var answer = answers.find(function (d) { return d.id === id; }) || { id: id, value: '' };\n if (handleResponseUpdate && answer)\n handleResponseUpdate([answer]);\n if (onCompletedValid)\n onCompletedValid();\n }; };\n var handleSelectFreetextChange = function (freetextId) { return function (event) {\n if (handleResponseUpdate)\n handleResponseUpdate([{ id: Number(freetextId), score: 0, value: event.target.value }]);\n }; };\n var handleClickResponse = function (value) { return function () {\n if (handleResponseUpdate)\n handleResponseUpdate([value]);\n if (onCompletedValid)\n onCompletedValid();\n }; };\n var onFreetextBlur = function () {\n if (selectedChoice === null || selectedChoice === void 0 ? void 0 : selectedChoice.value) {\n if (onCompletedValid)\n onCompletedValid();\n }\n };\n var getScoreClass = function (item) {\n if (!showScores) {\n return undefined;\n }\n if (item.score !== 0) {\n return classes.correct;\n }\n if ((selectedChoice === null || selectedChoice === void 0 ? void 0 : selectedChoice.id) === item.id) {\n return classes.inCorrect;\n }\n return undefined;\n };\n // Allow custom styling from config\n var backgroundColor = (elementSettings === null || elementSettings === void 0 ? void 0 : elementSettings['form.background']) || (choiceConfig === null || choiceConfig === void 0 ? void 0 : choiceConfig.background);\n // default to white if backgroundColor is set, but may be overridden by choiceConfig.foregroundColor\n var foreGroundColor = (elementSettings === null || elementSettings === void 0 ? void 0 : elementSettings['form.foreground']) || (choiceConfig === null || choiceConfig === void 0 ? void 0 : choiceConfig.foreground) || (backgroundColor ? 'white' : undefined);\n return (React.createElement(React.Fragment, null, question.type === 'ActionChoice' || (choiceConfig === null || choiceConfig === void 0 ? void 0 : choiceConfig.showAsButtons) ? (React.createElement(\"div\", { className: (0, classnames_1.default)(classes.choiceButtonContainer, (_b = {}, _b[classes.horizontal] = choiceConfig === null || choiceConfig === void 0 ? void 0 : choiceConfig.horizontal, _b[classes.readOnly] = readOnly, _b)) }, (_d = question.answers) === null || _d === void 0 ? void 0 : _d.map(function (answer) { return (React.createElement(core_1.Button, { disabled: isDisabled, key: answer.id, color: (selectedChoice === null || selectedChoice === void 0 ? void 0 : selectedChoice.id) === answer.id ? 'secondary' : 'primary', variant: (selectedChoice === null || selectedChoice === void 0 ? void 0 : selectedChoice.id) === answer.id ? 'contained' : 'outlined', size: \"small\", className: classes.choiceButton, onClick: handleClickResponse(answer) }, answer.value)); }))) : (React.createElement(\"div\", { style: { backgroundColor: backgroundColor, color: foreGroundColor, borderColor: backgroundColor }, className: classes.choiceResponse },\n React.createElement(core_1.RadioGroup, { className: (0, classnames_1.default)(classes.radioGroup, (_c = {}, _c[classes.horizontal] = choiceConfig === null || choiceConfig === void 0 ? void 0 : choiceConfig.horizontal, _c[classes.readOnly] = readOnly, _c)), value: (selectedChoice === null || selectedChoice === void 0 ? void 0 : selectedChoice.id) || '', onChange: handleSingleSelectChange(question.answers) }, (_e = question.answers) === null || _e === void 0 ? void 0 :\n _e.map(function (item) { return (React.createElement(core_1.FormControlLabel, { disabled: isDisabled, className: getScoreClass(item), key: item.id, value: item.id, control: React.createElement(core_1.Radio, { className: classes.radio, style: { color: foreGroundColor } }), classes: { label: classes.formControlLabel, root: classes.formControlRoot }, label: showScoreValues ? \"\".concat(item.score, \" - \").concat(item.value) : item.value })); }),\n (choiceConfig === null || choiceConfig === void 0 ? void 0 : choiceConfig.freetextChoiceId) && (React.createElement(core_1.FormControlLabel, { disabled: isDisabled, value: choiceConfig.freetextChoiceId, control: React.createElement(core_1.Radio, { className: classes.radio, style: { color: foreGroundColor } }), classes: { label: classes.formControlLabel, root: classes.formControlRoot }, label: (React.createElement(\"div\", { className: classes.freetextLabel },\n React.createElement(core_1.Typography, { className: classes.freetextLabelText }, choiceConfig.freetextChoiceLabel || translate('taskContent.freetextChoiceLabel')),\n React.createElement(core_1.Input, { placeholder: translate('taskContent.freetextChoice'), fullWidth: true, disabled: isDisabled, value: (selectedChoice === null || selectedChoice === void 0 ? void 0 : selectedChoice.id) === choiceConfig.freetextChoiceId ? selectedChoice.value : '', onChange: handleSelectFreetextChange(choiceConfig.freetextChoiceId), onBlur: onFreetextBlur, className: classes.choiceFreetextInput, disableUnderline: true }))) })))))));\n};\nSingleChoice.defaultProps = {\n choiceConfig: null,\n selectedChoice: null,\n disabled: false,\n handleResponseUpdate: null,\n showScores: false,\n onCompletedValid: null,\n readOnly: false,\n showScoreValues: false,\n elementSettings: null,\n};\nexports.default = SingleChoice;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar styles_1 = require(\"@material-ui/core/styles\");\nvar useMediaQuery_1 = __importDefault(require(\"@material-ui/core/useMediaQuery\"));\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar core_1 = require(\"@material-ui/core\");\nvar icons_1 = require(\"../../../../common/icons\");\nvar translate_1 = __importDefault(require(\"../../../../app/localization/translate\"));\nvar useStyles = (0, styles_1.makeStyles)(function (theme) { return ({\n root: {\n backgroundColor: theme.youwell.colors.inputBackground,\n },\n desktopTable: {\n '&$fixedWidth': {\n overflowX: 'auto',\n paddingBottom: theme.spacing(4),\n },\n '&$fixedHeight': {\n overflowY: 'auto',\n height: 600,\n },\n },\n fixedWidth: {},\n fixedHeight: {},\n table: {\n tableLayout: 'fixed',\n '$fixedWidth &': {\n tableLayout: 'auto',\n width: 1200,\n },\n '$fixedHeight &': {\n tableLayout: 'auto',\n },\n },\n mobileTable: {},\n mobileRow: {\n marginBottom: theme.spacing(2),\n border: \"1px solid \".concat(theme.palette.grey[400]),\n backgroundColor: theme.palette.grey[200],\n },\n mobileRowHeader: {\n padding: theme.spacing(1),\n backgroundColor: theme.palette.primary.light,\n color: theme.palette.common.white,\n },\n mobileCell: {\n marginBottom: theme.spacing(2),\n padding: theme.spacing(1),\n },\n tableRow: {\n height: theme.spacing(4),\n },\n tableHeaderRow: {},\n tableHeaderCell: {\n backgroundColor: theme.youwell.colors.secondaryBackground,\n border: 0,\n borderRight: \"1px solid \".concat(theme.palette.grey[200]),\n fontSize: '1.1em',\n color: theme.palette.grey[900],\n padding: theme.spacing(1),\n overflowWrap: 'anywhere',\n '&:last-child': {\n borderRight: \"1px solid \".concat(theme.palette.grey[300]),\n padding: theme.spacing(0, 1),\n },\n '$fixedWidth &': {\n overflowWrap: 'normal',\n },\n '$fixedHeight &': {\n position: 'sticky',\n top: 0,\n zIndex: 50,\n },\n },\n rowHeaderCell: {\n backgroundColor: theme.youwell.colors.secondaryBackground,\n padding: theme.spacing(2, 1),\n },\n tableCell: {\n padding: theme.spacing(1, 1, 0, 1),\n verticalAlign: 'top',\n borderRight: \"1px solid \".concat(theme.palette.grey[300]),\n '&:first-child': {\n borderLeft: \"1px solid \".concat(theme.palette.grey[300]),\n },\n '&:last-child': {\n padding: theme.spacing(0, 1),\n paddingTop: theme.spacing(1),\n },\n },\n multiQuestionCell: {},\n multiInput: {\n marginBottom: theme.spacing(0.5),\n },\n addRowContainer: {\n display: 'flex',\n justifyContent: 'center',\n },\n addRowButton: {\n marginTop: theme.spacing(1),\n },\n disabledReadonlyInput: {\n color: theme.palette.text.primary,\n },\n}); });\nvar padRow = function (row, length) { return row.concat(Array(length).fill('')).slice(0, length); };\nfunction TableResponse(_a) {\n var _b;\n var _c, _d, _e;\n var tableConfig = _a.tableConfig, response = _a.response, disabled = _a.disabled, handleResponseUpdate = _a.handleResponseUpdate, elementSettings = _a.elementSettings, readOnly = _a.readOnly;\n var theme = (0, styles_1.useTheme)();\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var _f = React.useState(null), multiTableValues = _f[0], setMultiTableValues = _f[1];\n var _g = React.useState(null), updateIndex = _g[0], setUpdateIndex = _g[1];\n var _h = React.useState(null), responseState = _h[0], setResponseState = _h[1];\n var updateAsyncTimer = React.useRef();\n var isMobile = (0, useMediaQuery_1.default)(theme.breakpoints.down('xs'));\n var fixedNumberOfRows = (_c = tableConfig === null || tableConfig === void 0 ? void 0 : tableConfig.rowHeaders) === null || _c === void 0 ? void 0 : _c.length;\n var fixedColumns = (_d = tableConfig === null || tableConfig === void 0 ? void 0 : tableConfig.columnHeaders) === null || _d === void 0 ? void 0 : _d.length;\n var emptyColumns = function () {\n var _a, _b;\n if ((_a = tableConfig === null || tableConfig === void 0 ? void 0 : tableConfig.columnHeaders) === null || _a === void 0 ? void 0 : _a.length) {\n return [];\n }\n if ((_b = response === null || response === void 0 ? void 0 : response[0]) === null || _b === void 0 ? void 0 : _b.length) {\n var count = response.reduce(function (prev, curr) {\n var max = Math.max(prev.max, curr.length);\n return {\n hasValueInLast: prev.hasValueInLast || !!(curr === null || curr === void 0 ? void 0 : curr[max - 1]),\n max: max,\n };\n }, { hasValueInLast: false, max: 0 });\n var headers = Array(count.max).fill('').map(function (_, i) { return \"\".concat(i + 1); });\n return count.hasValueInLast ? __spreadArray(__spreadArray([], headers, true), [\"\".concat(count.max + 1)], false) : headers;\n }\n return ['1'];\n };\n var tableColumns = __spreadArray(__spreadArray([], (tableConfig === null || tableConfig === void 0 ? void 0 : tableConfig.columnHeaders) || [], true), emptyColumns(), true);\n var emptyRows = function () {\n if (fixedNumberOfRows) {\n if (response && response.length >= fixedNumberOfRows) {\n return [];\n }\n return Array.from(Array(fixedNumberOfRows).keys()).map(function () { return tableColumns.map(function () { return ''; }); });\n }\n if (readOnly) {\n return [];\n }\n if (isMobile) {\n if (!response || response.length === 0) {\n return [tableColumns.map(function () { return ''; })];\n }\n return [];\n }\n return [tableColumns.map(function () { return ''; })];\n };\n var addRow = function () {\n var currResponse = __spreadArray(__spreadArray([], response || [], true), emptyRows(), true);\n var addedResponse = __spreadArray(__spreadArray([], currResponse, true), [tableColumns.map(function () { return ''; })], false);\n handleResponseUpdate(addedResponse);\n };\n var handleTableCellChange = function (rowIndex, cellIndex) { return function (event) {\n if (readOnly)\n return;\n var prevResponse = response || [];\n if (rowIndex >= prevResponse.length) {\n prevResponse = __spreadArray(__spreadArray([], prevResponse, true), emptyRows(), true);\n }\n handleResponseUpdate(prevResponse.map(function (row, ri) { return (ri === rowIndex ? padRow(row, tableColumns.length).map(function (cell, ci) { return (ci === cellIndex ? event.target.value : cell); }) : row); }));\n // Fix for text-fields. To avoid loosing marker-position value is copied to internal state on first change.\n setResponseState(function (prevState) {\n var _a;\n return (__assign(__assign({}, prevState), (_a = {}, _a[\"\".concat(rowIndex, \"-\").concat(cellIndex)] = event.target.value, _a)));\n });\n }; };\n var handleTableMultiCellChange = function (rowIndex, cellIndex, questionIndex, curr) { return function (event) {\n if (readOnly)\n return;\n var val = event.target.value;\n setMultiTableValues(function (prev) {\n var _a, _b;\n return (__assign(__assign({}, prev), (_a = {}, _a[\"\".concat(rowIndex, \"-\").concat(cellIndex)] = __assign(__assign(__assign({}, curr), prev && prev[\"\".concat(rowIndex, \"-\").concat(cellIndex)]), (_b = {}, _b[questionIndex] = val, _b)), _a)));\n });\n setUpdateIndex({ rowIndex: rowIndex, cellIndex: cellIndex });\n }; };\n React.useEffect(function () {\n if (updateIndex && multiTableValues) {\n clearTimeout(updateAsyncTimer.current);\n updateAsyncTimer.current = window.setTimeout(function () {\n handleTableCellChange(updateIndex.rowIndex, updateIndex.cellIndex)({\n target: { value: JSON.stringify(multiTableValues[\"\".concat(updateIndex.rowIndex, \"-\").concat(updateIndex.cellIndex)]) },\n });\n }, 200);\n }\n // Only fire on updateIndex-change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [updateIndex]);\n var getCellValue = function (rowIndex, cellIndex, questionIndex, cell) { return (multiTableValues && multiTableValues[\"\".concat(rowIndex, \"-\").concat(cellIndex)] && multiTableValues[\"\".concat(rowIndex, \"-\").concat(cellIndex)][questionIndex])\n || (cell && JSON.parse(cell)[questionIndex])\n || ''; };\n var renderCells = function (ri, ci, cell, mobile) { return ((tableConfig === null || tableConfig === void 0 ? void 0 : tableConfig.cellQuestions) ? (React.createElement(\"div\", { className: classes.multiQuestionCell }, tableConfig.cellQuestions.map(function (q, qi) { return (React.createElement(core_1.TextField\n // eslint-disable-next-line react/no-array-index-key\n , { \n // eslint-disable-next-line react/no-array-index-key\n key: qi, className: classes.multiInput, disabled: disabled || readOnly, label: q, value: getCellValue(ri, ci, qi, cell), onChange: handleTableMultiCellChange(ri, ci, qi, cell && JSON.parse(cell)), fullWidth: true, inputProps: { autoComplete: 'off' } })); }))) : (React.createElement(core_1.Input, { disabled: disabled || readOnly, value: (responseState === null || responseState === void 0 ? void 0 : responseState[\"\".concat(ri, \"-\").concat(ci)]) || cell, onChange: handleTableCellChange(ri, ci), classes: { disabled: readOnly ? classes.disabledReadonlyInput : undefined }, multiline: true, minRows: 1, maxRows: 10, fullWidth: true, disableUnderline: !mobile, inputProps: { autoComplete: 'off' } }))); };\n var tableResponses = __spreadArray(__spreadArray([], response || [], true), emptyRows(), true);\n var hasRowHeaders = ((_e = tableConfig === null || tableConfig === void 0 ? void 0 : tableConfig.rowHeaders) === null || _e === void 0 ? void 0 : _e.length) !== 0;\n return (React.createElement(\"div\", { className: classes.root },\n React.createElement(core_1.Hidden, { implementation: \"js\", xsDown: true },\n React.createElement(\"div\", { className: (0, classnames_1.default)(classes.desktopTable, (_b = {}, _b[classes.fixedWidth] = tableConfig === null || tableConfig === void 0 ? void 0 : tableConfig.wide, _b[classes.fixedHeight] = tableConfig === null || tableConfig === void 0 ? void 0 : tableConfig.fixedHeight, _b)) },\n React.createElement(core_1.Table, { className: classes.table, role: \"table\" },\n React.createElement(core_1.TableHead, { className: classes.tableHeaderRow },\n React.createElement(core_1.TableRow, { role: \"row\" },\n hasRowHeaders && React.createElement(core_1.TableCell, { className: classes.tableHeaderCell, style: { width: Number(elementSettings === null || elementSettings === void 0 ? void 0 : elementSettings.firstColWidth) || '' }, scope: \"col\", role: \"rowheader\" }),\n tableColumns.map(function (item, _ci) { return (React.createElement(core_1.TableCell, { key: item, padding: \"none\", className: classes.tableHeaderCell, scope: \"col\", role: \"columnheader\" }, fixedColumns ? item : '\\u00A0')); }))),\n React.createElement(core_1.TableBody, null, tableResponses.map(function (row, ri) {\n var _a, _b;\n return (\n // eslint-disable-next-line react/no-array-index-key\n React.createElement(core_1.TableRow, { key: ri, className: classes.tableRow, role: \"row\", \"aria-rowindex\": ri },\n hasRowHeaders && (React.createElement(core_1.TableCell, { className: classes.rowHeaderCell, scope: \"row\" }, (_b = (_a = tableConfig === null || tableConfig === void 0 ? void 0 : tableConfig.rowHeaders) === null || _a === void 0 ? void 0 : _a[ri]) !== null && _b !== void 0 ? _b : '')),\n padRow(row, tableColumns.length).map(function (cell, ci) { return (\n // eslint-disable-next-line react/no-array-index-key\n React.createElement(core_1.TableCell, { key: ci, padding: \"none\", className: classes.tableCell }, renderCells(ri, ci, cell))); })));\n }))))),\n React.createElement(core_1.Hidden, { implementation: \"js\", smUp: true },\n React.createElement(\"div\", { className: classes.mobileTable },\n tableResponses.map(function (row, ri) {\n var _a;\n return (\n // eslint-disable-next-line react/no-array-index-key\n React.createElement(\"div\", { className: classes.mobileRow, key: ri },\n React.createElement(\"div\", { className: classes.mobileRowHeader },\n React.createElement(core_1.Typography, { variant: \"subtitle1\", color: \"inherit\" }, hasRowHeaders ? (_a = tableConfig === null || tableConfig === void 0 ? void 0 : tableConfig.rowHeaders) === null || _a === void 0 ? void 0 : _a[ri] : \"\".concat(ri + 1, \".\"))),\n row.map(function (cell, ci) { return (\n // eslint-disable-next-line react/no-array-index-key\n React.createElement(\"div\", { className: classes.mobileCell, key: ci },\n React.createElement(\"div\", null,\n React.createElement(core_1.Typography, { variant: \"subtitle2\" }, \"\".concat(tableColumns[ci], \":\"))),\n renderCells(ri, ci, cell, true))); })));\n }),\n !fixedNumberOfRows && !readOnly && (React.createElement(\"div\", { className: classes.addRowContainer },\n React.createElement(core_1.IconButton, { onClick: addRow, color: \"primary\", className: classes.addRowButton, \"aria-label\": translate('add') },\n React.createElement(icons_1.AddIcon, null))))))));\n}\nTableResponse.defaultProps = {\n response: null,\n disabled: false,\n readOnly: false,\n tableConfig: {},\n elementSettings: null,\n};\nexports.default = TableResponse;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { makeStyles } from '@material-ui/core/styles';\nimport { Button, createStyles } from '@material-ui/core';\nimport classnames from 'classnames';\nimport HtmlContent from '../../../HtmlContent';\n\nconst useStyles = makeStyles(theme => createStyles({\n question: {\n marginBottom: theme.spacing(1),\n },\n buttonStyle: {\n borderRadius: '100%',\n margin: theme.spacing(1),\n width: 'calc(33% - 16px)',\n minHeight: 150,\n fontWeight: 500,\n\n [theme.breakpoints.down('xs')]: {\n width: 'calc(50% - 16px)',\n },\n },\n unChecked: {\n background: theme.youwell.colors.secondaryBackground,\n '&:hover': {\n background: theme.youwell.colors.secondaryBackground,\n },\n },\n longText: {\n fontSize: '0.8rem',\n },\n}));\n\n\nconst BubbleChoiceQuestions = ({\n question, response, handleResponseUpdate,\n}) => {\n const classes = useStyles();\n\n const onBubbleClick = (answer, isChecked) => () => {\n const responses = (response?.choiceResponse || []).filter(d => d.id !== answer.id);\n handleResponseUpdate('choiceResponse', isChecked ? responses : [...responses, answer]);\n };\n\n const checkedResponses = response?.choiceResponse?.reduce((prev, curr) => (\n { ...prev, [curr.id]: curr.value }\n ), {}) || {};\n\n return (\n
\n \n\n {question.answers?.map(item => (\n 45 })}\n variant=\"contained\"\n color={checkedResponses[item.id] ? 'primary' : 'default'}\n onClick={onBubbleClick(item, checkedResponses[item.id])}\n key={item.id}\n >\n {item.value}\n \n ))}\n
\n );\n};\n\nBubbleChoiceQuestions.propTypes = {\n question: PropTypes.object.isRequired,\n response: PropTypes.object,\n handleResponseUpdate: PropTypes.func.isRequired,\n};\n\nBubbleChoiceQuestions.defaultProps = {\n response: null,\n};\n\nexport default BubbleChoiceQuestions;\n","import { makeStyles, useTheme } from '@material-ui/core/styles';\nimport React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { Button, createStyles, useMediaQuery } from '@material-ui/core';\nimport classnames from 'classnames';\nimport HtmlContent from '../../../HtmlContent';\n\nconst useStyles = makeStyles(theme => createStyles({\n root: {\n position: 'relative',\n border: theme.youwell.borders.inputBox,\n backgroundColor: theme.youwell.colors.inputBackground,\n padding: theme.spacing(2),\n },\n bullsEyeContainer: {\n display: 'flex',\n height: 550,\n alignItems: 'center',\n justifyContent: 'center',\n margin: theme.spacing(1),\n\n [theme.breakpoints.down('xs')]: {\n height: 360,\n },\n\n '&$small': {\n height: 360,\n },\n },\n small: {},\n readOnly: {},\n bullsEye: {\n position: 'relative',\n padding: 0,\n width: 500,\n height: 500,\n borderRadius: '100%',\n cursor: 'crosshair',\n\n [theme.breakpoints.down('xs')]: {\n width: 300,\n height: 300,\n },\n\n '$small &': {\n width: 272,\n height: 272,\n },\n\n '$readOnly &': {\n cursor: 'default',\n },\n },\n questionLabel: {\n position: 'absolute',\n zIndex: 2,\n color: 'black',\n wordBreak: 'break-word',\n },\n scoreCircle: {\n position: 'absolute',\n background: theme.youwell.colors.secondaryBackground,\n border: theme.youwell.borders.primary,\n borderRadius: '100%',\n },\n line: {\n position: 'absolute',\n background: 'black',\n border: '1px solid black',\n height: '50%',\n },\n scorePoint: {\n height: 25,\n width: 25,\n backgroundColor: 'black',\n borderRadius: '100%',\n transform: 'translate(-50%, 50%)',\n position: 'absolute',\n\n [theme.breakpoints.down('xs')]: {\n width: 16,\n height: 16,\n },\n\n '$small &': {\n width: 16,\n height: 16,\n },\n },\n}), { name: 'BullsEyeQuestion' });\n\nconst calculateScore = (xPos, yPos, width, numberOfCircles) => {\n const circleSize = (100 / numberOfCircles) / 100;\n const diagonalFromSenter = Math.sqrt((xPos ** 2) + (yPos ** 2));\n const radius = width / 2;\n let i;\n for (i = 0; i < numberOfCircles; i++) {\n const circleScoreWidth = circleSize * (i + 1);\n if (diagonalFromSenter <= circleScoreWidth * radius) {\n return numberOfCircles - i;\n }\n }\n return -1;\n};\n\nconst questionSeparatorLineTopPositions = ['25%', '50%', '0%', '25%'];\nconst questionSeparatorLineLeftPositions = ['25%', '50%', '50%', '75%'];\nconst questionSeparatorLineTransform = ['rotate(90deg)', 'rotate(0deg)', 'rotate(0deg)', 'rotate(90deg)'];\n\nconst createLines = questions => questions.map((q, index) => ({\n style: {\n top: questionSeparatorLineTopPositions[index],\n left: questionSeparatorLineLeftPositions[index],\n transform: questionSeparatorLineTransform[index],\n },\n key: q.id,\n}));\n\nconst createCircles = (numberOfCircles) => {\n const circles = [];\n const circleSize = 100 / numberOfCircles;\n let number = numberOfCircles;\n let i;\n for (i = 0; i < numberOfCircles; i++) {\n circles.push({\n style: {\n width: `${number * circleSize}%`,\n height: `${number * circleSize}%`,\n },\n key: i,\n });\n number -= 1;\n }\n return circles;\n};\n\nconst labelPositionOffset = 24;\nconst labelPositionOffsetSmall = 12;\n\nconst getQuestionLabelPositionStyle = offset => ({\n 0: { top: offset, right: offset },\n 1: { top: offset, left: offset },\n 2: { bottom: offset, left: offset },\n 3: { bottom: offset, right: offset },\n});\n\nconst getQuadrantPosition = (mouseClickX, mouseClickY, circleDiameter) => {\n const center = circleDiameter / 2;\n\n let index; let fromPosX; let fromPosY;\n if (mouseClickX > center && mouseClickY < center) {\n index = 0;\n fromPosX = mouseClickX - center;\n fromPosY = center - mouseClickY;\n } else if (mouseClickX < center && mouseClickY < center) {\n index = 1;\n fromPosX = center - mouseClickX;\n fromPosY = center - mouseClickY;\n } else if (mouseClickX < center && mouseClickY > center) {\n index = 2;\n fromPosX = center - mouseClickX;\n fromPosY = mouseClickY - center;\n } else if (mouseClickX > center && mouseClickY > center) {\n index = 3;\n fromPosX = mouseClickX - center;\n fromPosY = mouseClickY - center;\n }\n return { index, fromPosX, fromPosY };\n};\n\nconst BullsEyeQuestions = ({\n questions, handleResponseUpdate, responses, readOnly, small,\n}) => {\n const classes = useStyles();\n const [pointPositions, setPointPositions] = useState({});\n\n const theme = useTheme();\n const isMobile = useMediaQuery(theme.breakpoints.down('xs'));\n const useSmallLayout = small || isMobile;\n\n if (questions?.length !== 4) return null;\n\n const numberOfCircles = questions[0].scaleConfig.max;\n\n const onSetPoint = (event) => {\n if (readOnly) return;\n\n const currentTargetRect = event.currentTarget.getBoundingClientRect();\n const circleDiameter = event.currentTarget.clientHeight;\n const mouseClickX = parseFloat(event.pageX - window.pageXOffset - currentTargetRect.left);\n const mouseClickY = parseFloat(event.pageY - window.pageYOffset - currentTargetRect.top);\n\n const quadrantPosition = getQuadrantPosition(mouseClickX, mouseClickY, circleDiameter);\n const score = calculateScore(quadrantPosition.fromPosX, quadrantPosition.fromPosY, circleDiameter, numberOfCircles);\n const question = questions[quadrantPosition.index];\n\n setPointPositions(prevState => ({\n ...prevState,\n [question.id]: {\n left: (mouseClickX / circleDiameter) * 100,\n bottom: ((circleDiameter - mouseClickY) / circleDiameter) * 100,\n },\n }));\n\n handleResponseUpdate(question)('scaleResponse', score);\n };\n\n const getPointPosition = (questionResponse) => {\n const scaleResponse = questionResponse.response.scaleResponse;\n if (!scaleResponse) {\n return null;\n }\n\n // if presice position exists, use this\n if (pointPositions[questionResponse.questionId]) {\n return {\n left: `${pointPositions[questionResponse.questionId].left}%`,\n bottom: `${pointPositions[questionResponse.questionId].bottom}%`,\n };\n }\n\n // Otherwise calculate center position for score\n const circleRadius = numberOfCircles;\n const circleDiameter = circleRadius * 2;\n const pointRadius = numberOfCircles - scaleResponse + 0.5; // half way between lines -> scaleResponse should be minimum 1 (not 0)\n\n const questionIndex = questions.findIndex(d => d.id === questionResponse.questionId);\n const angleInDegrees = 45 - (questionIndex * 90);\n const xPos = pointRadius * Math.sin(angleInDegrees * Math.PI / 180) + circleRadius;\n const yPos = pointRadius * Math.cos(angleInDegrees * Math.PI / 180) + circleRadius;\n\n return {\n left: `${(xPos / circleDiameter) * 100}%`,\n bottom: `${(yPos / circleDiameter) * 100}%`,\n };\n };\n\n const circles = createCircles(numberOfCircles);\n const lines = createLines(questions);\n const questionResponses = questions.map(q => ({ questionId: q.id, response: responses[q.id]?.response }))\n .filter(d => d.response);\n\n return (\n
\n {questions.map((question, i) => (\n \n ))}\n\n
\n \n
\n
\n );\n};\n\nBullsEyeQuestions.propTypes = {\n questions: PropTypes.array.isRequired,\n handleResponseUpdate: PropTypes.func.isRequired,\n responses: PropTypes.object,\n readOnly: PropTypes.bool,\n small: PropTypes.bool,\n};\n\nBullsEyeQuestions.defaultProps = {\n responses: null,\n readOnly: false,\n small: false,\n};\n\nexport default BullsEyeQuestions;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport {\n makeStyles, Accordion, AccordionSummary, Typography, AccordionDetails,\n} from '@material-ui/core';\nimport { CheckCircleRounded } from '@material-ui/icons';\nimport { useSelector } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\n\nimport { fillArrayToLength } from '../../../../arrayUtils';\nimport AsyncTextField from '../../../AsyncTextField';\n\nconst useStyles = makeStyles(theme => ({\n accordionDetails: {\n padding: theme.spacing(3, 2),\n gap: theme.spacing(3, 2),\n display: 'flex',\n flexDirection: 'row',\n flexWrap: 'wrap',\n\n [theme.breakpoints.down('xs')]: {\n padding: theme.spacing(1),\n gap: theme.spacing(2, 1),\n },\n },\n rowHeader: {\n backgroundColor: theme.palette.grey[50],\n },\n rowFilledIcon: {\n position: 'absolute',\n right: theme.spacing(1.5),\n color: theme.youwell.colors.green,\n },\n cell: {\n width: 'calc((100% - (3 * 16px))/4)',\n padding: theme.spacing(0.5),\n\n [theme.breakpoints.down('xs')]: {\n width: 'calc((100% - (2 * 8px))/3)',\n },\n },\n cellHeader: {\n backgroundColor: theme.palette.grey[100],\n color: theme.palette.grey[700],\n marginBottom: theme.spacing(1),\n padding: theme.spacing(0.5),\n },\n cellTextField: {\n marginTop: theme.spacing(1),\n },\n}));\n\n\nconst ColumnQuestions = ({\n header, cellQuestions, onChange, responses, readOnly,\n}) => {\n const classes = useStyles();\n const cellData = responses ? JSON.parse(responses) : {};\n\n const handleQuestionChange = questionIndex => (updatedValue) => {\n if (readOnly) return;\n const updatedData = {\n ...cellData,\n [questionIndex]: updatedValue,\n };\n onChange(updatedData);\n };\n\n return (\n
\n \n {header}\n \n {cellQuestions.map((question, questionIndex) => (\n \n \n
\n ))}\n
\n );\n};\n\nColumnQuestions.propTypes = {\n header: PropTypes.string.isRequired,\n cellQuestions: PropTypes.array.isRequired,\n responses: PropTypes.string.isRequired,\n onChange: PropTypes.func.isRequired,\n readOnly: PropTypes.bool,\n};\n\nColumnQuestions.defaultProps = {\n readOnly: false,\n}\n\nconst TableRow = ({\n expanded, onChange, onClick, columnHeaders, cellQuestions, header, responses, readOnly,\n}) => {\n const classes = useStyles();\n const translate = useSelector(state => getTranslate(state.localize));\n const rowData = fillArrayToLength(responses, columnHeaders.length, '');\n\n const cellCheck = (cellData, compareLength) => {\n if (!cellData) return false;\n\n const cellDataValues = Object.values(JSON.parse(cellData));\n if (cellDataValues.length !== compareLength || cellDataValues.includes('')) return false;\n\n return true;\n }\n\n const rowIsFilled = rowData.every(cellData => cellCheck(cellData, cellQuestions.length));\n\n const handleCellChange = columnIndex => (data) => {\n const updatedRowData = rowData.map((row, i) => (\n i === columnIndex ? JSON.stringify(data) : row\n ));\n onChange(updatedRowData);\n }\n\n return (\n \n \n {header}\n {rowIsFilled && }\n \n\n \n {columnHeaders.map((columnHeader, columnIndex) => (\n \n ))}\n \n \n )\n}\n\nTableRow.propTypes = {\n expanded: PropTypes.bool.isRequired,\n onClick: PropTypes.func.isRequired,\n header: PropTypes.string.isRequired,\n columnHeaders: PropTypes.array.isRequired,\n cellQuestions: PropTypes.array.isRequired,\n onChange: PropTypes.func.isRequired,\n responses: PropTypes.array.isRequired,\n readOnly: PropTypes.bool,\n}\n\nTableRow.defaultProps = {\n readOnly: false,\n}\n\nconst CollapsedTable = ({ question, handleResponseUpdate, responses, readOnly }) => {\n const classes = useStyles();\n const [expandedIndex, setExpandedIndex] = React.useState(-1);\n\n if (!question.tableConfig) return null;\n\n const rowHeaders = question.tableConfig.rowHeaders || [];\n const columnHeaders = question.tableConfig.columnHeaders || [];\n const cellQuestions = question.tableConfig.cellQuestions || [];\n const tableData = fillArrayToLength(responses?.tableResponses, rowHeaders.length, []);\n\n const handleRowChange = rowIndex => (rowData) => {\n const updatedTableData = tableData.map((row, ri) => (\n ri === rowIndex ? rowData : row\n ));\n\n handleResponseUpdate('tableResponses', updatedTableData);\n }\n\n return (\n
\n {rowHeaders.map((rowHeader, rowIndex) => (\n setExpandedIndex(expandedIndex === rowIndex ? -1 : rowIndex)}\n header={rowHeader}\n columnHeaders={columnHeaders}\n cellQuestions={cellQuestions}\n onChange={handleRowChange(rowIndex)}\n responses={tableData[rowIndex] || []}\n readOnly={readOnly}\n />\n ))}\n
\n );\n};\n\nCollapsedTable.propTypes = {\n question: PropTypes.object.isRequired,\n handleResponseUpdate: PropTypes.func.isRequired,\n responses: PropTypes.object,\n readOnly: PropTypes.bool,\n};\n\nCollapsedTable.defaultProps = {\n responses: null,\n readOnly: false,\n};\n\nexport default CollapsedTable;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar classnames_1 = __importDefault(require(\"classnames\"));\nvar core_1 = require(\"@material-ui/core\");\nvar HtmlContent_1 = __importDefault(require(\"../../../HtmlContent\"));\nvar icons_1 = require(\"../../../../../common/icons\");\nvar objectUtils_1 = require(\"../../../../objectUtils\");\nvar browserUtils_1 = require(\"../../../../browserUtils\");\nvar ArrowNavigation_1 = require(\"../../../accessibility/ArrowNavigation\");\nvar constants_1 = require(\"../../../../constants\");\nvar FreetextResponse_1 = require(\"../FreetextResponse\");\nvar stringUtils_1 = require(\"../../../../stringUtils\");\nvar utils_1 = require(\"../../utils\");\nvar translate_1 = __importDefault(require(\"../../../../../app/localization/translate\"));\nvar cellWidth = 40;\nvar cellWidthSmall = 30;\nvar maxContentWidth = 1080;\nvar useStyles = (0, core_1.makeStyles)(function (theme) {\n var _a, _b, _c, _d, _e;\n return ({\n table: (_a = {\n width: '100%',\n height: '100%',\n border: \"1px solid \".concat(theme.palette.grey[100]),\n background: theme.palette.common.white\n },\n _a[theme.breakpoints.down('xs')] = {\n tableLayout: 'fixed',\n },\n _a),\n stickyHeaderCell: {\n position: 'sticky',\n top: 49,\n background: theme.palette.common.white,\n boxShadow: \"0 2px 2px -2px \".concat(theme.palette.grey[600]),\n zIndex: 50,\n },\n headerCell: {\n border: \"1px solid \".concat(theme.palette.grey[200]),\n borderBottom: '1px solid #e0e0e0',\n padding: theme.spacing(1),\n textAlign: 'center',\n backgroundColor: theme.palette.primary.main,\n color: theme.palette.common.white,\n '$rotate &': (_b = {\n verticalAlign: 'bottom',\n width: cellWidth,\n minHeight: 140\n },\n _b[theme.breakpoints.down('xs')] = {\n padding: theme.spacing(1, 0),\n width: cellWidthSmall,\n },\n _b),\n },\n answerTextCell: (_c = {\n backgroundColor: theme.palette.primary.main,\n color: theme.palette.common.white\n },\n _c[theme.breakpoints.down('xs')] = {\n padding: theme.spacing(1, 0.5),\n },\n _c.overflowWrap = 'anywhere',\n _c),\n answerCell: {\n border: \"1px solid \".concat(theme.palette.grey[200]),\n borderBottom: '1px solid #e0e0e0',\n padding: theme.spacing(0.5),\n textAlign: 'center',\n height: '100%',\n '$rotate &': (_d = {\n width: cellWidth\n },\n _d[theme.breakpoints.down('xs')] = {\n padding: 1,\n width: cellWidthSmall,\n },\n _d),\n },\n scoreCell: {\n background: theme.palette.grey[300],\n },\n invalidRow: {\n borderLeft: \"2px solid \".concat(theme.palette.error.main),\n },\n answerOption: {\n '$rotate &': {\n display: 'inline-block',\n writingMode: 'vertical-lr',\n transform: 'rotate(180deg)',\n whiteSpace: 'nowrap',\n maxHeight: 300,\n overflow: 'hidden',\n },\n },\n // Needed as ref\n rotate: {},\n answerButton: {\n width: '100%',\n height: '100%',\n '&:focus': {\n background: theme.palette.grey[200],\n },\n '&:hover': {\n background: theme.palette.grey[300],\n },\n },\n cellMarker: (_e = {\n opacity: 0\n },\n _e[theme.breakpoints.down('xs')] = {\n opacity: 0.2,\n },\n _e),\n });\n});\nvar colStyle = function (elementSettings, colIndex) { return (0, utils_1.getStylesFromSettings)(elementSettings, \"col\".concat(colIndex + 1, \"style.\")); };\nvar QuestionnaireTable = function (_a) {\n var _b;\n var onChange = _a.onChange, questions = _a.questions, responses = _a.responses, disabled = _a.disabled, showScoreMarks = _a.showScoreMarks, validationError = _a.validationError, navigation = _a.navigation, elementSettings = _a.elementSettings, readOnly = _a.readOnly, showScoreValues = _a.showScoreValues;\n var classes = useStyles();\n var translate = (0, translate_1.default)();\n var selectAnswer = function (question, answer) { return function () {\n var _a, _b;\n var selectedChoices = ((_b = (_a = responses === null || responses === void 0 ? void 0 : responses[question.id]) === null || _a === void 0 ? void 0 : _a.response) === null || _b === void 0 ? void 0 : _b.choiceResponse) || [];\n var wasCheckedBefore = selectedChoices.findIndex(function (d) { return (d === null || d === void 0 ? void 0 : d.id) === answer.id; }) > -1;\n if (question.type === constants_1.formAnswerTypes.multipleChoice) {\n var values = wasCheckedBefore ? selectedChoices.filter(function (d) { return (d === null || d === void 0 ? void 0 : d.id) !== answer.id; }) : __spreadArray(__spreadArray([], selectedChoices, true), [answer], false);\n onChange(question)('choiceResponse', values);\n }\n else {\n var values = wasCheckedBefore ? null : [answer];\n onChange(question)('choiceResponse', values);\n }\n }; };\n var handleFreetextChange = function (question) { return function (event) {\n onChange(question)('freetextResponse', event.target.value);\n }; };\n if (!questions || questions.length < 1 || !questions[0].answers) {\n return null;\n }\n var respondedAnswers = questions.reduce(function (prev, curr) {\n var _a;\n var _b, _c, _d, _e, _f, _g, _h, _j;\n return (__assign(__assign({}, prev), (_a = {}, _a[curr === null || curr === void 0 ? void 0 : curr.id] = responses && (((_d = (_c = (_b = responses[curr.id]) === null || _b === void 0 ? void 0 : _b.response) === null || _c === void 0 ? void 0 : _c.choiceResponse) === null || _d === void 0 ? void 0 : _d.length) || 0) > 0\n ? (_g = (_f = (_e = responses[curr.id]) === null || _e === void 0 ? void 0 : _e.response) === null || _f === void 0 ? void 0 : _f.choiceResponse) === null || _g === void 0 ? void 0 : _g.map(function (d) { return d === null || d === void 0 ? void 0 : d.id; })\n : [(_j = (_h = responses === null || responses === void 0 ? void 0 : responses[curr.id]) === null || _h === void 0 ? void 0 : _h.response) === null || _j === void 0 ? void 0 : _j.freetextResponse], _a)));\n }, {});\n var verticalText = (0, stringUtils_1.parseBoolString)(elementSettings === null || elementSettings === void 0 ? void 0 : elementSettings.flipLabels) || (document.documentElement.clientWidth < 930 && !(0, stringUtils_1.parseBoolString)(elementSettings === null || elementSettings === void 0 ? void 0 : elementSettings.dontFlipLabels));\n var firstColWidth = verticalText ? document.documentElement.clientWidth - (questions[0].answers.length * cellWidthSmall) - 16 - 16\n : Number(elementSettings === null || elementSettings === void 0 ? void 0 : elementSettings.firstColWidth) || '';\n // Writing mode fix for Edge - until https://github.com/cssinjs/css-vendor/issues/172 is merged into Material UI/Jss\n var ieFix = verticalText && browserUtils_1.isEdge ? { 'writing-mode': 'vertical-lr' } : undefined;\n var answerCellMinWidthDefault = Number(elementSettings === null || elementSettings === void 0 ? void 0 : elementSettings.answerCellMinWidth) || (firstColWidth ? 40 : 100);\n var answerCellMinWidth = verticalText\n ? undefined\n : Math.min(Math.min(document.documentElement.clientWidth, maxContentWidth) / (questions[0].answers.length * 2), answerCellMinWidthDefault);\n return (React.createElement(core_1.Table, { className: (0, classnames_1.default)(classes.table, (_b = {}, _b[classes.rotate] = verticalText, _b)) },\n React.createElement(core_1.TableHead, null,\n React.createElement(core_1.TableRow, null,\n React.createElement(core_1.TableCell, { className: classes.stickyHeaderCell, style: { width: firstColWidth } }),\n questions[0].answers.map(function (item) { return (React.createElement(core_1.TableCell, { key: item.id, className: (0, classnames_1.default)(classes.headerCell, classes.stickyHeaderCell), style: { minWidth: answerCellMinWidth } },\n React.createElement(core_1.Typography, { variant: \"body1\", component: \"span\", className: classes.answerOption, style: ieFix }, item.value))); }))),\n React.createElement(core_1.TableBody, null, questions.map(function (question, ri) {\n var _a, _b, _c, _d, _e;\n return (React.createElement(core_1.TableRow, { key: question.id, className: validationError && question.required && (0, objectUtils_1.isEmpty)(respondedAnswers[question.id]) ? classes.invalidRow : undefined },\n React.createElement(core_1.TableCell, { role: \"rowheader\", className: classes.answerTextCell },\n React.createElement(HtmlContent_1.default, { html: question.question })),\n question.type === constants_1.formAnswerTypes.singleChoice || question.type === constants_1.formAnswerTypes.multipleChoice ? (React.createElement(React.Fragment, null, (_a = question.answers) === null || _a === void 0 ? void 0 : _a.map(function (answer, ci) {\n var _a;\n return (React.createElement(core_1.TableCell, { key: answer.id, className: (0, classnames_1.default)(classes.answerCell, (_a = {}, _a[classes.scoreCell] = showScoreMarks && answer.score !== 0, _a)), style: elementSettings && colStyle(elementSettings, ci) }, showScoreValues ? (React.createElement(core_1.Typography, { color: \"textSecondary\" }, answer.score)) : (React.createElement(core_1.ButtonBase, __assign({ disabled: disabled || readOnly, onClick: selectAnswer(question, answer), className: classes.answerButton }, __assign({ ref: navigation.setRef(ri, ci), tabIndex: -1, onKeyDown: navigation.handleKeyDown, onMouseDown: navigation.handleMouseDown(ri, ci) }, ri === 0 && ci === 0 && {\n tabIndex: 0,\n onFocus: navigation.handleMouseDown(ri, ci),\n }), { \"aria-label\": respondedAnswers[question.id] && Array.prototype.findIndex.call(respondedAnswers[question.id], function (d) { return d === answer.id; }) > -1 ? translate('checked') : translate('unChecked') }), respondedAnswers[question.id] && Array.prototype.findIndex.call(respondedAnswers[question.id], function (d) { return d === answer.id; }) > -1 ? (React.createElement(icons_1.CheckedIcon, { color: \"primary\" })) : (React.createElement(icons_1.CheckedIcon, { color: \"disabled\", className: classes.cellMarker }))))));\n }))) : (React.createElement(core_1.TableCell, { colSpan: (_b = question.answers) === null || _b === void 0 ? void 0 : _b.length, className: (0, classnames_1.default)(classes.answerCell), style: elementSettings ? colStyle(elementSettings, 0) : undefined },\n React.createElement(core_1.TextField, { type: (0, FreetextResponse_1.getInputType)((_c = question.freetextConfig) === null || _c === void 0 ? void 0 : _c.inputType), fullWidth: true, disabled: disabled, value: ((_d = respondedAnswers[question.id]) === null || _d === void 0 ? void 0 : _d[0]) || '', onChange: handleFreetextChange(question), InputProps: {\n disableUnderline: true,\n inputProps: { maxLength: (_e = question.freetextConfig) === null || _e === void 0 ? void 0 : _e.maxLength },\n } })))));\n }))));\n};\nQuestionnaireTable.defaultProps = {\n disabled: false,\n showScoreMarks: false,\n responses: null,\n validationError: false,\n elementSettings: null,\n readOnly: false,\n showScoreValues: false,\n};\nexports.default = (((0, ArrowNavigation_1.with2dArrowNavigation)(QuestionnaireTable)));\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { EmojiEvents } from '@material-ui/icons';\nimport { useSelector } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\n\nimport { Button, ButtonBase, makeStyles, Typography } from '@material-ui/core';\nimport { contentElemenIdPrefix } from '../../../../constants';\nimport FormQuestion from '../../FormQuestion';\n\nconst useStyles = makeStyles(theme => ({\n root: {\n\n },\n results: {\n margin: theme.spacing(4, 0),\n boxShadow: theme.shadows[4],\n padding: theme.spacing(4, 2),\n background: theme.palette.common.white,\n display: 'flex',\n alignItems: 'center',\n\n [theme.breakpoints.down('xs')]: {\n flexDirection: 'column',\n },\n },\n scoreHeading: {\n flex: '1 1 auto',\n color: theme.youwell.colors.green,\n },\n resetButton: {\n marginLeft: theme.spacing(1),\n\n [theme.breakpoints.down('xs')]: {\n marginTop: theme.spacing(2),\n },\n },\n actions: {\n margin: theme.spacing(4, 0),\n display: 'flex',\n justifyContent: 'center',\n },\n showScoreButton: {\n width: 400,\n padding: theme.spacing(2),\n },\n success: {\n marginRight: theme.spacing(2),\n fontSize: theme.typography.h6.fontSize,\n color: theme.youwell.colors.green,\n display: 'flex',\n alignItems: 'center',\n },\n successIcon: {\n marginLeft: theme.spacing(1),\n },\n resetButtonSmall: {\n position: 'absolute',\n padding: theme.spacing(1),\n right: 0,\n bottom: 32,\n '&:hover': {\n background: theme.palette.grey[50],\n },\n },\n}), { name: 'Quiz' });\n\nconst Quiz = ({\n element, contentState, responses, handleResponseUpdate, disabled, readOnly, FormQuestionProps,\n}) => {\n const classes = useStyles();\n const translate = useSelector(state => getTranslate(state.localize));\n\n if (!element) {\n return null;\n }\n\n const questions = element.questions || [];\n const elementSettings = element.settings || {};\n const resultQuestionId = Number(elementSettings.resultQuestionId) || 1000;\n\n const questionsWithAnswers = questions?.filter(d => d.answers?.length);\n const showScores = responses[resultQuestionId]?.response.scaleResponse === 1;\n\n const resetQuiz = () => {\n element?.questions?.forEach((q) => {\n handleResponseUpdate(q)('choiceResponse', null);\n });\n handleResponseUpdate({ id: resultQuestionId })('scaleResponse', 0);\n\n if (window.scrollTo) {\n window.scrollTo({ top: 0, behavior: 'smooth' });\n } else {\n document.documentElement.scrollTop = 0;\n }\n };\n\n const showResults = () => {\n handleResponseUpdate({ id: resultQuestionId })('scaleResponse', 1);\n };\n\n const scoring = questionsWithAnswers.reduce((prev, curr) => (\n {\n score: prev.score + Number(responses[curr.id]?.response?.choiceResponse?.reduce((pResp, cResp) => pResp + cResp.score || 0, 0) || 0),\n max: prev.max + Number(curr.answers.reduce((pAnswer, cAnswer) => pAnswer + cAnswer.score || 0, 0)),\n }\n ), { score: 0, max: 0 });\n\n return (\n
\n {questions.map(q => (\n \n ))}\n\n {showScores ? (\n
\n {scoring.score === scoring.max ? (\n <>\n \n {translate('taskContent.fullScore', scoring)}\n \n \n \n \n {translate('taskContent.retakeQuiz')}\n \n \n \n ) : (\n <>\n \n {translate('taskContent.youGotxOfXScore', scoring)}\n \n \n \n )}\n
\n ) : (\n
\n \n
\n )}\n\n
\n );\n};\n\n\nQuiz.propTypes = {\n element: PropTypes.object.isRequired,\n taskId: PropTypes.string.isRequired,\n getProgramItem: PropTypes.func.isRequired,\n handleResponseUpdate: PropTypes.func.isRequired,\n contentState: PropTypes.string,\n responses: PropTypes.object.isRequired,\n disabled: PropTypes.bool,\n FormQuestionProps: PropTypes.object,\n readOnly: PropTypes.bool,\n};\n\nQuiz.defaultProps = {\n contentState: null,\n FormQuestionProps: null,\n readOnly: false,\n disabled: false,\n};\n\nexport default Quiz;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { connect } from 'react-redux';\nimport { getTranslate } from 'react-localize-redux';\n\nimport { Button, Typography } from '@material-ui/core';\nimport { contentElemenIdPrefix } from '../../../../constants';\nimport FormQuestion from '../../FormQuestion';\nimport { isEmpty } from '../../../../objectUtils';\nimport { InfoMessage } from '../../../../../common/components';\n\nconst styles = theme => ({\n root: {\n\n },\n results: {\n margin: theme.spacing(4, 0),\n boxShadow: theme.shadows[4],\n padding: theme.spacing(4, 2),\n background: theme.palette.common.white,\n display: 'flex',\n alignItems: 'center',\n\n [theme.breakpoints.down('xs')]: {\n flexDirection: 'column',\n },\n },\n scoreHeading: {\n flex: '1 1 auto',\n color: theme.youwell.colors.green,\n },\n resetButton: {\n marginLeft: theme.spacing(1),\n\n [theme.breakpoints.down('xs')]: {\n marginTop: theme.spacing(2),\n },\n },\n});\n\n// How to use a Quiz\n// On the content-page:\n// 1. Add a default element with all the questions\n// 2. Add a default element with a Button-question. Text: \"Show answers\"\n// 3. Add a \"QuizResponse\"-element with no content\n// 4. Settings for element 3: elementId = id of element 1\n// 5. Set the following conditional states:\n// Element 1: Default visible, hidden when \"Show answers\" is activated\n// Element 2: same as above (or keep always visible..)\n// Element 3: Default hidden, visible when \"Show answers\" is activated\n\nclass QuizResponse extends React.Component {\n resetQuiz = () => {\n const quizElement = this.getQuizElement();\n\n quizElement?.questions?.forEach((q) => {\n this.props.handleResponseUpdate(q)('choiceResponse', null);\n });\n\n if (window.scrollTo) {\n window.scrollTo({ top: 0, behavior: 'smooth' });\n } else {\n document.documentElement.scrollTop = 0;\n }\n };\n\n getQuizElement = () => {\n const {\n element, taskId, getProgramItem,\n } = this.props;\n\n const elementSettings = element.settings || {};\n const quizTaskId = elementSettings.taskId || taskId;\n const quizTask = getProgramItem(quizTaskId);\n const elementId = elementSettings.elementId;\n\n if (!quizTask || !elementId) {\n return null;\n }\n\n return quizTask.contentElements?.find(e => e.id === Number(elementId));\n }\n\n render() {\n const {\n classes, element, taskId, translate, getResponses, contentState,\n } = this.props;\n\n if (!element) {\n return null;\n }\n\n const elementSettings = element.settings || {};\n const quizTaskId = elementSettings.taskId || taskId;\n const quizElement = this.getQuizElement();\n\n if (!quizElement) {\n return ;\n }\n\n const taskResponses = getResponses(quizTaskId);\n const questions = quizElement?.questions;\n\n const questionsWithAnswers = questions?.filter(d => d.answers?.length);\n\n if (!questionsWithAnswers?.length > 0) {\n return ;\n }\n\n if (!taskResponses || isEmpty(taskResponses)) {\n return ;\n }\n\n const scoring = questionsWithAnswers.reduce((prev, curr) => (\n {\n score: prev.score + Number(taskResponses[curr.id]?.response?.choiceResponse?.reduce((pResp, cResp) => pResp + cResp.score || 0, 0) || 0),\n max: prev.max + Number(curr.answers.reduce((pAnswer, cAnswer) => pAnswer + cAnswer.score || 0, 0)),\n }\n ), { score: 0, max: 0 });\n\n return (\n
\n {questionsWithAnswers.map(q => (\n {}}\n />\n ))}\n\n
\n \n {translate('taskContent.youGotxOfXScore', scoring)}\n \n\n \n
\n\n
\n );\n }\n}\n\n\nQuizResponse.propTypes = {\n classes: PropTypes.object.isRequired,\n translate: PropTypes.func.isRequired,\n element: PropTypes.object.isRequired,\n taskId: PropTypes.string.isRequired,\n getProgramItem: PropTypes.func.isRequired,\n getResponses: PropTypes.func.isRequired,\n handleResponseUpdate: PropTypes.func.isRequired,\n contentState: PropTypes.string,\n};\n\nQuizResponse.defaultProps = {\n contentState: null,\n};\n\nconst mapStateToProps = state => ({\n translate: getTranslate(state.localize),\n});\n\nexport default connect(mapStateToProps)(withStyles(styles)(QuizResponse));\n","import { makeStyles } from '@material-ui/core/styles';\nimport React, { useState } from 'react';\nimport { createStyles, Input, Typography } from '@material-ui/core';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport { getTranslate } from 'react-localize-redux';\nimport { useSelector } from 'react-redux';\nimport { stripHtml } from '../../../../htmlUtils';\n\nimport Arrow from '../../../../../common/image/Arrow.png';\n\nconst useStyles = makeStyles(theme => createStyles({\n imageContainer: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n },\n column: {\n margin: theme.spacing(1),\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n },\n left: {\n backgroundColor: '#778689',\n },\n right: {\n backgroundColor: '#e94f11',\n },\n circle: {\n display: 'flex',\n justifyContent: 'center',\n borderRadius: '100%',\n alignItems: 'center',\n width: 190,\n height: 190,\n color: theme.palette.common.white,\n\n [theme.breakpoints.down('xs')]: {\n width: 155,\n height: 155,\n\n '& p': {\n fontSize: '1rem',\n },\n },\n },\n bottomContainer: {\n marginTop: theme.spacing(4),\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n arrowImage: {\n margin: theme.spacing(4, 0, 0),\n },\n triangle: {\n display: 'flex',\n justifyContent: 'center',\n textAlign: 'center',\n position: 'relative',\n width: 200,\n height: 200,\n\n '&:after': {\n content: '\"\"',\n position: 'absolute',\n borderLeft: '150px solid transparent',\n borderRight: '150px solid transparent',\n borderBottom: '200px solid #2b7b90',\n },\n\n [theme.breakpoints.down('xs')]: {\n '& p': {\n fontSize: '1rem',\n },\n },\n\n '& + $input': {\n width: 300,\n },\n },\n triangleText: {\n zIndex: 1,\n marginTop: 100,\n color: theme.palette.common.white,\n },\n input: {\n marginTop: theme.spacing(2),\n border: theme.youwell.borders.inputBox,\n backgroundColor: theme.youwell.colors.inputBackground,\n padding: theme.spacing(2),\n },\n}));\n\nconst RouteSelection = ({\n questions, handleResponseUpdate, responses, readOnly,\n}) => {\n const [leftValue, setLeftValue] = useState(null);\n const [rightValue, setRightValue] = useState(null);\n const [bottomValue, setBottomValue] = useState(null);\n const classes = useStyles();\n const updateAsyncTimer = React.useRef();\n const translate = useSelector(state => getTranslate(state.localize));\n\n if (questions?.length !== 3) return null;\n\n const handleChange = key => (event) => {\n if (readOnly) {\n return;\n }\n const value = event.target.value;\n switch (key) {\n case 0:\n setLeftValue(value);\n break;\n case 1:\n setRightValue(value);\n break;\n case 2:\n setBottomValue(value);\n break;\n default:\n return;\n }\n\n clearTimeout(updateAsyncTimer.current);\n updateAsyncTimer.current = setTimeout(() => {\n handleResponseUpdate(questions[key])('freetextResponse', value);\n }, 200);\n };\n\n const answerLeft = leftValue !== null ? leftValue : responses && responses[questions[0].id]?.response?.freetextResponse;\n const answerRight = rightValue !== null ? rightValue : responses && responses[questions[1].id]?.response?.freetextResponse;\n const answerBottom = bottomValue !== null ? bottomValue : responses && responses[questions[2].id]?.response?.freetextResponse;\n\n return (\n
\n
\n
\n
{translate('routeSelection.awayValues')}
\n \"routeSelection.leftArrow\"\n \n
\n
\n
{translate('routeSelection.towardsValues')}
\n {translate('routeSelection.rightArrow')}\n \n
\n
\n\n
\n
\n
{translate('routeSelection.psychologicalFlex')}
\n \n
\n
\n
\n );\n};\n\nRouteSelection.propTypes = {\n questions: PropTypes.array.isRequired,\n handleResponseUpdate: PropTypes.func.isRequired,\n responses: PropTypes.object,\n readOnly: PropTypes.bool,\n};\nRouteSelection.defaultProps = {\n responses: null,\n readOnly: false,\n};\n\nexport default RouteSelection;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\n\nimport {\n Backdrop,\n Button,\n makeStyles,\n} from '@material-ui/core';\nimport HtmlContent from '../../HtmlContent';\n\nconst useStyles = makeStyles(theme => ({\n root: {\n position: 'relative',\n },\n box: {\n width: 160,\n height: 80,\n background: theme.youwell.colors.secondaryBackground,\n\n [theme.breakpoints.down('xs')]: {\n width: 115,\n height: 60,\n },\n },\n inActive: {\n cursor: 'default',\n pointerEvents: 'none',\n },\n empty: {\n visibility: 'hidden',\n },\n boxRow: {\n display: 'flex',\n justifyContent: 'space-between',\n },\n first: {\n marginBottom: theme.spacing(8),\n [theme.breakpoints.down('xs')]: {\n marginBottom: theme.spacing(4),\n },\n },\n last: {\n marginTop: theme.spacing(8),\n [theme.breakpoints.down('xs')]: {\n marginTop: theme.spacing(4),\n },\n },\n detailsBackdrop: {\n zIndex: 1,\n },\n detailsBox: {\n zIndex: 2,\n position: 'absolute',\n top: theme.spacing(4),\n right: theme.spacing(4),\n left: theme.spacing(4),\n minHeight: `calc(100% - ${2 * theme.spacing(4)}px)`,\n border: theme.youwell.borders.primary,\n borderRadius: theme.youwell.shapes.borderRadius,\n background: theme.palette.background.paper,\n padding: theme.spacing(3),\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n\n [theme.breakpoints.down('xs')]: {\n top: theme.spacing(2),\n right: theme.spacing(2),\n left: theme.spacing(2),\n minHeight: `calc(100% - ${2 * theme.spacing(2)}px)`,\n padding: theme.spacing(2),\n },\n },\n lineWrapper: {\n position: 'fixed',\n top: 0,\n left: 0,\n height: '100vh',\n width: '100vw',\n pointerEvents: 'none',\n color: theme.palette.primary.main,\n },\n}), { name: 'ConnectedBoxes' });\n\nconst arrowDirections = {\n BottomToTop: 1,\n LeftToRight: 2,\n RightToLeft: 3,\n TopToBottom: 4,\n LeftToTop: 5,\n RightToTop: 6,\n BottomToRight: 7,\n BottomToLeft: 8,\n TopToRight: 9,\n Self: 10,\n};\n\nconst getDirection = (from, to) => {\n if (from === to) return arrowDirections.Self;\n\n switch (from) {\n case 0: {\n switch (to) {\n case 1: case 2:\n return arrowDirections.RightToLeft;\n default:\n return arrowDirections.BottomToTop;\n }\n }\n case 1: {\n switch (to) {\n case 2:\n return arrowDirections.RightToLeft;\n case 3:\n return arrowDirections.LeftToTop;\n case 4:\n return arrowDirections.BottomToTop;\n case 5:\n return arrowDirections.RightToTop;\n default:\n return arrowDirections.BottomToTop;\n }\n }\n case 3: {\n switch (to) {\n case 4: case 5:\n return arrowDirections.RightToLeft;\n case 6:\n return arrowDirections.BottomToTop;\n default:\n return arrowDirections.BottomToLeft;\n }\n }\n case 4: {\n switch (to) {\n case 5:\n return arrowDirections.RightToLeft;\n case 6:\n return arrowDirections.LeftToTop;\n case 7:\n return arrowDirections.BottomToTop;\n default:\n return arrowDirections.RightToTop;\n }\n }\n case 5: {\n switch (to) {\n case 6:\n return arrowDirections.LeftToTop;\n case 7:\n return arrowDirections.BottomToRight;\n default:\n return arrowDirections.BottomToTop;\n }\n }\n default:\n return arrowDirections.BottomToTop;\n }\n}\n\nconst calculate = (from, to, direction) => {\n const fromEl = document.getElementById(from);\n const toEl = document.getElementById(to);\n\n if (!fromEl || !toEl) {\n return '';\n }\n\n const fromPosRect = fromEl.getBoundingClientRect();\n const toPosRect = toEl.getBoundingClientRect();\n\n const spacing = 8;\n let fromPos;\n let toPos;\n switch (direction) {\n case arrowDirections.BottomToTop:\n fromPos = { x: fromPosRect.left + fromEl.offsetWidth / 2, y: fromPosRect.bottom + spacing };\n toPos = { x: toPosRect.left + fromEl.offsetWidth / 2, y: toPosRect.top - spacing * 1.5 };\n break;\n case arrowDirections.TopToBottom:\n fromPos = { x: fromPosRect.left + fromEl.offsetWidth / 2, y: fromPosRect.top + spacing };\n toPos = { x: toPosRect.left + fromEl.offsetWidth / 2, y: toPosRect.bottom + spacing };\n break;\n case arrowDirections.LeftToRight:\n fromPos = { x: fromPosRect.left - spacing, y: fromPosRect.top + fromEl.offsetHeight / 2 };\n toPos = { x: toPosRect.right + spacing * 1.5, y: toPosRect.top + toEl.offsetHeight / 2 };\n break;\n case arrowDirections.RightToLeft:\n fromPos = { x: fromPosRect.right + spacing, y: fromPosRect.top + fromEl.offsetHeight / 2 };\n toPos = { x: toPosRect.left - spacing, y: toPosRect.top + toEl.offsetHeight / 2 };\n break;\n case arrowDirections.LeftToTop:\n fromPos = { x: fromPosRect.left - spacing, y: fromPosRect.top + fromEl.offsetHeight / 2 };\n toPos = { x: toPosRect.left + fromEl.offsetWidth / 2, y: toPosRect.top - spacing };\n break;\n case arrowDirections.RightToTop:\n fromPos = { x: fromPosRect.right + spacing, y: fromPosRect.top + fromEl.offsetHeight / 2 };\n toPos = { x: toPosRect.left + fromEl.offsetWidth / 2, y: toPosRect.top - spacing };\n break;\n case arrowDirections.BottomToRight:\n fromPos = { x: fromPosRect.left + fromEl.offsetWidth / 2, y: fromPosRect.bottom + spacing };\n toPos = { x: toPosRect.right + spacing * 1.5, y: toPosRect.top + toEl.offsetHeight / 2 };\n break;\n case arrowDirections.BottomToLeft:\n fromPos = { x: fromPosRect.left + fromEl.offsetWidth / 2, y: fromPosRect.bottom + spacing };\n toPos = { x: toPosRect.left - spacing, y: toPosRect.top + toEl.offsetHeight / 2 };\n break;\n case arrowDirections.TopToRight:\n fromPos = { x: fromPosRect.left + fromEl.offsetWidth / 2, y: fromPosRect.top + spacing };\n toPos = { x: toPosRect.right + spacing * 1.5, y: toPosRect.top + toEl.offsetHeight / 2 };\n break;\n case arrowDirections.Self:\n fromPos = { x: fromPosRect.left + fromEl.offsetWidth / 2, y: fromPosRect.top + spacing };\n toPos = { x: toPosRect.right + spacing * 1.5, y: toPosRect.top + toEl.offsetHeight / 2 };\n break;\n default:\n fromPos = { x: fromPosRect.left - spacing, y: fromPosRect.top + fromEl.offsetHeight / 2 };\n toPos = { x: toPosRect.right + spacing, y: toPosRect.top + toEl.offsetHeight / 2 };\n break;\n }\n\n return `M${fromPos.x},${fromPos.y} Q${fromPos.x},${fromPos.y} ${toPos.x},${toPos.y}`;\n // return `M${fromPos.x},${fromPos.y} C${fromPos.x - 80},${fromPos.y} ${toPos.x + 80},${toPos.y} ${toPos.x},${toPos.y}`;\n};\n\nconst ConnectingLine = ({ line }) => {\n const classes = useStyles();\n const lineEl = React.useRef(null);\n const { from, to, direction, type } = line;\n\n const update = React.useCallback(() => {\n if (lineEl.current) {\n lineEl.current.setAttribute('d', calculate(from, to, direction));\n }\n }, [from, to, direction]);\n\n React.useEffect(() => {\n update();\n }, [update]);\n\n React.useEffect(() => {\n window.addEventListener('scroll', update);\n window.addEventListener('resize', update);\n\n return () => {\n window.removeEventListener('scroll', update);\n window.removeEventListener('resize', update);\n };\n }, [update]);\n\n\n const showLeftArrow = !type || type === 'left' || type === 'both';\n const showRightArrow = !type || type === 'right' || type === 'both';\n\n return (\n
\n \n \n \n \n \n
\n );\n};\n\nConnectingLine.propTypes = {\n line: PropTypes.object.isRequired,\n};\n\nconst ConnectedBoxes = ({\n task, element, className,\n}) => {\n const classes = useStyles();\n const [showDetailsBoxIx, setShowDetailsBoxIx] = React.useState(null)\n\n if (!element.settings) {\n return null;\n }\n\n const boxes = [];\n const connectingLines = [];\n Object.entries(element.settings).forEach(([key, value], i) => {\n if (key.startsWith('box-nr-') && value) { // box-nr-1 -> Box index = 0\n const boxNr = Number(key.substring(7)) - 1;\n const box = task.contentElements?.find(e => e.id === Number(value));\n if (!Number.isNaN(boxNr) && box) {\n boxes[boxNr] = {\n ...box,\n tagId: `connectedBox_${element.id}_box${box.id}`,\n };\n }\n }\n if (key.startsWith('line-')) { // line-X-Y -> From X to Y\n const from = Number(key.substring(5, 6)) - 1;\n const to = Number(key.substring(7, 8)) - 1;\n if (!Number.isNaN(from) && !Number.isNaN(to)) {\n connectingLines.push({\n id: i,\n from: boxes[from]?.tagId,\n to: boxes[to]?.tagId,\n direction: getDirection(from, to),\n type: value, // Direction for arrow or type: left, right, both, none, .. dotted?\n });\n }\n }\n });\n\n const renderBox = (index) => {\n const box = boxes[index];\n const hasContent = box?.htmlContent;\n\n if (box) {\n return (\n \n );\n }\n return
\n }\n\n return (\n
\n \n \n \n \n \n \n \n \n \n \n
\n {renderBox(0)}\n {renderBox(1)}\n {renderBox(2)}\n
\n
\n {renderBox(3)}\n {renderBox(4)}\n {renderBox(5)}\n
\n
\n {renderBox(6)}\n {renderBox(7)}\n {renderBox(8)}\n
\n\n {connectingLines.map(line => (\n \n ))}\n\n {boxes[showDetailsBoxIx] && (\n <>\n setShowDetailsBoxIx(null)} className={classes.detailsBackdrop} />\n
\n \n
\n \n )}\n
\n );\n}\n\nConnectedBoxes.propTypes = {\n element: PropTypes.object.isRequired,\n task: PropTypes.object.isRequired,\n className: PropTypes.string,\n};\n\nConnectedBoxes.defaultProps = {\n className: null,\n};\n\nexport default ConnectedBoxes;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\n\nimport {\n makeStyles,\n} from '@material-ui/core';\n\nimport TaskForm from '../TaskForm';\n\nconst useStyles = makeStyles(() => ({\n taskForm: {\n },\n}), { name: 'DefaultElementContent' });\n\n\nconst DefaultElementContent = ({\n element, task, className, taskResponses, contentState, onResponse, getProgramItem, getResponses, showValidationErrors, TaskFormProps,\n}) => {\n const classes = useStyles();\n\n return (\n
\n \n
\n );\n}\n\nDefaultElementContent.propTypes = {\n element: PropTypes.object.isRequired,\n task: PropTypes.object.isRequired,\n TaskFormProps: PropTypes.object,\n customElementHandler: PropTypes.func,\n onResponse: PropTypes.func.isRequired,\n LinkElementProps: PropTypes.object,\n taskResponses: PropTypes.object,\n getProgramItem: PropTypes.func.isRequired,\n getResponses: PropTypes.func.isRequired,\n noHiddenStates: PropTypes.bool,\n HoveredElement: PropTypes.object,\n selectedElementId: PropTypes.number,\n elementPreContent: PropTypes.func,\n showValidationErrors: PropTypes.bool,\n className: PropTypes.string,\n contentState: PropTypes.string,\n};\n\nDefaultElementContent.defaultProps = {\n contentState: null,\n TaskFormProps: null,\n customElementHandler: null,\n LinkElementProps: null,\n taskResponses: null,\n noHiddenStates: false,\n HoveredElement: null,\n selectedElementId: null,\n elementPreContent: null,\n showValidationErrors: false,\n className: null,\n};\n\nexport default DefaultElementContent;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar core_1 = require(\"@material-ui/core\");\nvar TaskForm_1 = __importDefault(require(\"../TaskForm\"));\nvar htmlUtils_1 = require(\"../../../htmlUtils\");\nvar constants_1 = require(\"../../../constants\");\nvar HtmlContent_1 = __importDefault(require(\"../../HtmlContent\"));\nvar useStyles = (0, core_1.makeStyles)(function (theme) { return ({\n root: {\n background: theme.palette.background.paper,\n padding: theme.spacing(1),\n },\n list: {\n width: '100%',\n },\n question: {\n '&+&': {\n marginTop: theme.spacing(1),\n },\n },\n}); }, { name: 'LinkedResponse' });\nvar LinkedResponse = function (_a) {\n var _b, _c, _d, _e, _f, _g, _h, _j, _k;\n var task = _a.task, element = _a.element, getProgramItem = _a.getProgramItem, getResponses = _a.getResponses, contentState = _a.contentState;\n var classes = useStyles();\n if (!(element === null || element === void 0 ? void 0 : element.settings)) {\n return null;\n }\n var linkedTaskId = (element.settings.linkedPageId || element.settings.linkedElementTaskId); // linkedElementTaskId is obsolete (old setting used in emeistring Depresjon)\n var linkedElementId = (element.settings.linkedElementId || element.settings.linkedElementElementId); // linkedElementElementId is obsolete (old setting..)\n var refTask = getProgramItem(linkedTaskId);\n if (!refTask) {\n return null;\n }\n var refElement = (_b = refTask.contentElements) === null || _b === void 0 ? void 0 : _b.find(function (e) { return e.id === Number(linkedElementId); });\n var refTaskResponses = getResponses(linkedTaskId, undefined, true);\n if (!refElement) {\n return null;\n }\n if (element.settings.onlyShowRespondedAnswers) {\n refElement = __assign(__assign({}, refElement), { questions: refTaskResponses\n ? (_c = refElement.questions) === null || _c === void 0 ? void 0 : _c.map(function (q) {\n var _a, _b, _c, _d;\n var respondedAnswers = q.answers.filter(function (a) {\n var _a, _b, _c;\n var responded = (_c = (_b = (_a = refTaskResponses[q === null || q === void 0 ? void 0 : q.id]) === null || _a === void 0 ? void 0 : _a.response) === null || _b === void 0 ? void 0 : _b.choiceResponse) === null || _c === void 0 ? void 0 : _c.filter(function (r) { return (r === null || r === void 0 ? void 0 : r.id) === (a === null || a === void 0 ? void 0 : a.id); });\n return responded && (responded === null || responded === void 0 ? void 0 : responded.length) > 0;\n });\n var freeTextResponded = (_d = (_c = (_b = (_a = refTaskResponses[q === null || q === void 0 ? void 0 : q.id]) === null || _a === void 0 ? void 0 : _a.response) === null || _b === void 0 ? void 0 : _b.choiceResponse) === null || _c === void 0 ? void 0 : _c.filter(function (r) { var _a; return (r === null || r === void 0 ? void 0 : r.id) === ((_a = q === null || q === void 0 ? void 0 : q.choiceConfig) === null || _a === void 0 ? void 0 : _a.freetextChoiceId); })) === null || _d === void 0 ? void 0 : _d[0];\n return !freeTextResponded\n ? __assign(__assign({}, q), { answers: __spreadArray([], respondedAnswers, true), choiceConfig: __assign(__assign({}, q.choiceConfig), { freetextChoiceId: null }) }) : __assign(__assign({}, q), { answers: __spreadArray([], respondedAnswers, true) });\n })\n : undefined });\n }\n if (((_d = element.settings) === null || _d === void 0 ? void 0 : _d['form.background']) || ((_e = element.settings) === null || _e === void 0 ? void 0 : _e['form.foreground'])) {\n refElement = __assign(__assign({}, refElement), { questions: (_f = refElement.questions) === null || _f === void 0 ? void 0 : _f.map(function (q) {\n var _a, _b;\n return (__assign(__assign({}, q), { choiceConfig: __assign(__assign({}, q.choiceConfig), { background: (_a = element.settings) === null || _a === void 0 ? void 0 : _a['form.background'], foreground: (_b = element.settings) === null || _b === void 0 ? void 0 : _b['form.foreground'] }) }));\n }) });\n }\n if (((_g = element.settings.threshold) === null || _g === void 0 ? void 0 : _g.length) > 0) {\n var threshold_1 = Number(element.settings.threshold);\n refElement = __assign(__assign({}, refElement), { questions: refTaskResponses && !Number.isNaN(threshold_1) ? (_h = refElement.questions) === null || _h === void 0 ? void 0 : _h.filter(function (d) { var _a, _b, _c; return (_c = (_b = (_a = refTaskResponses[d.id]) === null || _a === void 0 ? void 0 : _a.response) === null || _b === void 0 ? void 0 : _b.choiceResponse) === null || _c === void 0 ? void 0 : _c.some(function (r) { return (r === null || r === void 0 ? void 0 : r.score) && r.score >= threshold_1; }); }) : undefined });\n }\n switch (element.settings.view) {\n case 'list':\n switch (refElement.elementType) {\n case constants_1.questionContentElementTypes.questionnaire:\n return (React.createElement(\"div\", { className: classes.root },\n React.createElement(core_1.List, { className: classes.list }, (_j = refElement.questions) === null || _j === void 0 ? void 0 : _j.map(function (d) { return (React.createElement(core_1.ListItem, { key: d.id },\n React.createElement(core_1.ListItemText, { primary: (0, htmlUtils_1.stripHtml)(d.question) }))); }))));\n default:\n return (React.createElement(\"div\", { className: classes.root }, (_k = refElement.questions) === null || _k === void 0 ? void 0 : _k.map(function (d) {\n var _a, _b, _c, _d;\n return (React.createElement(\"div\", { className: classes.question, key: d.id },\n (refElement === null || refElement === void 0 ? void 0 : refElement.questions) && ((_a = refElement.questions) === null || _a === void 0 ? void 0 : _a.length) > 1 && React.createElement(HtmlContent_1.default, { html: d.question }),\n React.createElement(core_1.List, { className: classes.list }, (_d = (_c = (_b = refTaskResponses === null || refTaskResponses === void 0 ? void 0 : refTaskResponses[d.id]) === null || _b === void 0 ? void 0 : _b.response) === null || _c === void 0 ? void 0 : _c.choiceResponse) === null || _d === void 0 ? void 0 : _d.map(function (r) { return (React.createElement(core_1.ListItem, { key: r === null || r === void 0 ? void 0 : r.id },\n React.createElement(core_1.ListItemText, { primary: r === null || r === void 0 ? void 0 : r.value }))); }))));\n })));\n }\n case 'default':\n default:\n return (React.createElement(TaskForm_1.default, { element: refElement, taskResponses: refTaskResponses, contentState: contentState, onResponse: function () { }, getProgramItem: getProgramItem, getResponses: getResponses, taskId: task.id, readOnly: true }));\n }\n};\nLinkedResponse.defaultProps = {\n contentState: null,\n};\nexports.default = LinkedResponse;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\n\nimport {\n Button,\n ButtonBase,\n Collapse,\n IconButton,\n makeStyles,\n Modal,\n Typography,\n} from '@material-ui/core';\n\nimport HtmlContent from '../../HtmlContent';\nimport { getStylesFromSettings } from '../utils';\nimport { isIe } from '../../../browserUtils';\nimport { CloseIcon } from '../../../icons';\nimport { parseBoolString } from '../../../stringUtils';\n\n// eslint-disable-next-line import/no-cycle -- ok because ReadMore can display content via TaskContent\nimport TaskContent from '../TaskContent';\nimport Image from '../../Image';\n\nconst useStyles = makeStyles(theme => ({\n wrapper: {\n margin: theme.spacing(2, 0),\n },\n noMargins: {\n margin: 0,\n },\n modalContainer: {\n position: 'absolute',\n top: '50%',\n left: '50%',\n transform: 'translate(-50%, -50%)',\n minWidth: 600 - theme.spacing(4),\n maxWidth: '100%',\n minHeight: theme.spacing(50),\n maxHeight: '80%',\n background: theme.palette.background.paper,\n display: 'flex',\n flexDirection: 'column',\n height: isIe ? '100%' : undefined,\n\n [theme.breakpoints.down('xs')]: {\n minWidth: 0,\n width: `calc(100% - ${theme.spacing(4)}px)`,\n },\n },\n wide: {\n minWidth: '80%',\n },\n modalHeader: {\n display: 'flex',\n alignItems: 'center',\n padding: theme.spacing(1, 2),\n background: theme.youwell.colors.secondaryBackground,\n },\n modalHeaderText: {\n flex: '1 1 auto',\n fontWeight: theme.typography.fontWeightMedium,\n },\n modalContent: {\n flex: '1 1 auto',\n padding: theme.spacing(4),\n overflowY: 'auto',\n },\n inlineContainer: {\n margin: theme.spacing(0, 0, 2, 0),\n border: theme.youwell.borders.dim,\n background: theme.palette.background.paper,\n },\n inlineContent: {\n flex: '1 1 auto',\n padding: theme.spacing(2),\n overflowY: 'auto',\n },\n linkWrapper: {\n display: 'flex',\n alignItems: 'flex-end',\n },\n ingressImage: {\n marginRight: theme.spacing(2),\n width: 200,\n\n [theme.breakpoints.down('xs')]: {\n width: 150,\n },\n },\n button: {\n\n },\n link: {\n display: 'flex',\n alignItems: 'center',\n transition: 'padding 0.2s, background-color 0.5s',\n borderBottom: theme.youwell.borders.primary,\n paddingBottom: 1,\n\n '&$active': {\n background: theme.youwell.colors.secondaryBackground,\n padding: theme.spacing(1),\n width: '100%',\n borderBottom: theme.youwell.borders.primary,\n },\n },\n linkText: {\n flex: '1 1 auto',\n textAlign: 'left',\n },\n active: {},\n}), { name: 'ReadMore' });\n\nconst readMoreTypes = {\n inline: 'inline',\n popup: 'popup',\n};\n\nconst readMoreLinkTypes = {\n button: 'button',\n link: 'link',\n};\n\nconst ReadMore = ({ element, getProgramItem, ...props }) => {\n const classes = useStyles();\n const [showReadMore, setShowReadMore] = React.useState(false);\n\n const toggle = () => {\n setShowReadMore(prev => !prev);\n }\n\n if (!element) {\n return null;\n }\n\n const noMargins = parseBoolString(element.settings?.noMargins);\n const linkText = element.settings?.linkText || 'Les mer';\n const headerText = element.settings?.title || element.title || linkText;\n const ingressImage = element.settings?.ingressImage;\n const activeInline = showReadMore && element.settings?.type === readMoreTypes.inline;\n\n const renderLinkElement = () => {\n switch (element.settings?.linkType) {\n case readMoreLinkTypes.button:\n return (\n \n )\n case readMoreLinkTypes.link:\n default:\n return (\n \n \n {linkText}\n \n {activeInline && }\n \n )\n }\n }\n\n const renderContent = () => {\n if (element.settings?.contentTaskId) {\n const contentTask = getProgramItem(element.settings?.contentTaskId);\n // order of props is important! \"task={contentTask}\" must override {...props}\n return ();\n }\n return ();\n }\n\n const renderContainerElement = () => {\n switch (element.settings?.type) {\n case readMoreTypes.inline:\n return (\n \n
\n
\n {renderContent()}\n
\n
\n
\n );\n case readMoreTypes.popup:\n default:\n return (\n setShowReadMore(false)}\n >\n
\n
\n \n {headerText}\n \n setShowReadMore(false)}>\n \n \n
\n
\n {renderContent()}\n
\n
\n \n );\n }\n }\n\n return (\n
\n
\n {ingressImage && !activeInline && }\n {renderLinkElement()}\n
\n {renderContainerElement()}\n
\n );\n}\n\nReadMore.propTypes = {\n element: PropTypes.object.isRequired,\n getProgramItem: PropTypes.func.isRequired,\n};\n\nexport default ReadMore;\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { defaultContentElementTypes, specialContentElementTypes } from '../../../constants';\n\n// eslint-disable-next-line import/no-cycle -- ok because ReadMore can display content via TaskContent\nimport ReadMore from './ReadMore';\nimport LinkedResponse from './LinkedResponse';\nimport DefaultElementContent from './DefaultElementContent';\nimport ConnectedBoxes from './ConnectedBoxes';\n\nexport const getHtmlContentPosition = (elementType, contentPositionFromSetting) => {\n switch (elementType) {\n case specialContentElementTypes.hidden:\n case defaultContentElementTypes.readMore:\n return -1;\n default:\n return Number(contentPositionFromSetting || 0);\n }\n}\n\n\nconst TaskElementContent = ({ element, customElementHandler, ...props }) => {\n switch (element.elementType) {\n case specialContentElementTypes.hidden:\n return null;\n case defaultContentElementTypes.readMore:\n return \n case defaultContentElementTypes.linkedResponse:\n return \n case specialContentElementTypes.connectedBoxes:\n return \n default:\n if (customElementHandler) {\n const customHandeled = customElementHandler({ element, ...props });\n if (customHandeled) {\n return customHandeled;\n }\n }\n return ;\n }\n};\n\nTaskElementContent.propTypes = {\n element: PropTypes.object.isRequired,\n customElementHandler: PropTypes.func,\n}\n\nTaskElementContent.defaultProps = {\n customElementHandler: null,\n}\n\nexport default TaskElementContent;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getStylesFromSettings = void 0;\n// eslint-disable-next-line import/prefer-default-export\nvar getStylesFromSettings = function (settings, prefix) {\n if (prefix === void 0) { prefix = 'style.'; }\n return Object.keys(settings || {}).reduce(function (prev, curr) {\n var _a;\n return (curr.startsWith(prefix) ? __assign(__assign({}, prev), (_a = {}, _a[curr.substring(prefix.length)] = settings[curr], _a)) : prev);\n }, {});\n};\nexports.getStylesFromSettings = getStylesFromSettings;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar _a;\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ChatVideoProviders = exports.patientProgramStatus = exports.notificationUpdateAction = exports.notificationStatus = exports.userDataProperties = exports.programAccessStatus = exports.engineTaskTypes = exports.taskSettingKeys = exports.systemProgramProfiles = exports.orgLicence = exports.contentElemenIdPrefix = exports.workflowStatusLabels = exports.workflowStatuses = exports.subtotalCalculationTypes = exports.thresholdTypes = exports.customContentElementTypes = exports.specialContentElementTypes = exports.questionContentElementTypes = exports.defaultContentElementTypes = exports.contentPatchOperations = exports.patientPatchOperations = exports.patientDialogChannels = exports.freetextInputTypes = exports.loginTypes = exports.IdProviders = exports.sensorTypes = exports.patientFlagTypes = exports.sortDataType = exports.sortDirection = exports.elementConditionStates = exports.fileTypes = exports.logoutReasons = exports.accessRoles = exports.scheduleRepeatPeriod = exports.programProfileElementGroups = exports.systemElementGroups = exports.patientUserLevels = exports.loginLevels = exports.appRoleLevels = exports.appRoles = exports.formAnswerTypes = exports.linkTypes = exports.elementTypes = void 0;\nexports.elementTypes = {\n html: 'Html',\n text: 'Text',\n audio: 'Audio',\n video: 'Video',\n image: 'Image',\n file: 'File',\n link: 'Link',\n form: 'Form',\n script: 'Script',\n reference: 'Reference',\n};\nexports.linkTypes = {\n internal: 'Internal',\n task: 'Task',\n module: 'Module',\n program: 'Program',\n file: 'File',\n url: 'ExternalPage',\n youtube: 'Youtube',\n vimeo: 'Vimeo',\n audio: 'Audio',\n video: 'Video',\n image: 'Image',\n};\nexports.formAnswerTypes = {\n freetext: 'Freetext',\n singleChoice: 'SingleChoice',\n multipleChoice: 'MultipleChoice',\n scale: 'Scale',\n table: 'Table',\n switch: 'Switch',\n action: 'Action',\n};\nexports.appRoles = {\n portalAdmin: 'PortalAdmin',\n customerAdmin: 'CustomerAdmin',\n organizationAdmin: 'OrganizationAdmin',\n userAdmin: 'UserAdmin',\n systemsResponsible: 'SystemsResponsible',\n patientAdmin: 'PatientAdmin',\n manager: 'Manager',\n programAdmin: 'ProgramAdmin',\n therapist: 'Therapist',\n externalTherapist: 'ExternalTherapist',\n researcher: 'Researcher',\n user: 'User',\n contactPerson: 'ContactPerson',\n none: 'None',\n isTherapist: function (roles) { return roles === null || roles === void 0 ? void 0 : roles.reduce(function (prev, r) { return prev\n || r === 'Therapist' || r === 'PatientAdmin' || r === 'OrganizationAdmin' || r === 'PortalAdmin'; }, false); },\n isEditor: function (roles) { return roles === null || roles === void 0 ? void 0 : roles.reduce(function (prev, r) { return prev\n || r === 'ProgramAdmin' || r === 'OrganizationAdmin' || r === 'PortalAdmin'; }, false); },\n canReadOrgReports: function (roles) { return roles === null || roles === void 0 ? void 0 : roles.reduce(function (prev, r) { return prev\n || r === 'PortalAdmin' || r === 'OrganizationAdmin' || r === 'SystemsResponsible' || r === 'Manager'; }, false); },\n // eslint-disable-next-line no-use-before-define, @typescript-eslint/no-use-before-define\n isLimitedPatientAccess: function (role) { return !(exports.appRoleLevels[role] >= exports.appRoleLevels[exports.appRoles.therapist]); },\n // eslint-disable-next-line no-use-before-define, @typescript-eslint/no-use-before-define\n isAdminPatientAccess: function (role) { return role === 'PortalAdmin' || role === 'OrganizationAdmin' || role === 'SystemsResponsible' || role === 'PatientAdmin'; },\n};\nexports.appRoleLevels = (_a = {},\n _a[exports.appRoles.portalAdmin] = 100,\n _a[exports.appRoles.customerAdmin] = 95,\n _a[exports.appRoles.organizationAdmin] = 90,\n _a[exports.appRoles.userAdmin] = 85,\n _a[exports.appRoles.systemsResponsible] = 80,\n _a[exports.appRoles.patientAdmin] = 60,\n _a[exports.appRoles.manager] = 38,\n _a[exports.appRoles.programAdmin] = 35,\n _a[exports.appRoles.therapist] = 30,\n _a[exports.appRoles.externalTherapist] = 28,\n _a[exports.appRoles.researcher] = 22,\n _a[exports.appRoles.user] = 20,\n _a[exports.appRoles.contactPerson] = 10,\n _a);\nexports.loginLevels = {\n none: 0,\n key: 1,\n password: 2,\n twoFactor: 3,\n level4: 4,\n};\nexports.patientUserLevels = {\n none: 'None',\n anonymous: 'Anonymous',\n person: 'Person',\n patient: 'Patient',\n};\nexports.systemElementGroups = {\n main: 'Main',\n preContent: 'PreContent',\n scheduled: 'Scheduled',\n app: 'App',\n};\nexports.programProfileElementGroups = __assign(__assign({}, exports.systemElementGroups), { consent: 'Consent', guardianConsent: 'GuardianConsent', therapist: 'Therapist' });\nexports.scheduleRepeatPeriod = {\n day: 'Day',\n week: 'Week',\n month: 'Month',\n};\nexports.accessRoles = {\n none: 'None',\n limited: 'Limited',\n read: 'Read',\n write: 'Write',\n owner: 'Owner',\n admin: 'Admin',\n hasWriteAccess: function (role) { return role === 'Write' || role === 'Owner' || role === 'Admin'; },\n isLimitedAccess: function (role) { return !role || role === 'Limited'; },\n};\nexports.logoutReasons = {\n logout: '0',\n tokenExpired: '910',\n idleTimeout: '911',\n changeOrg: '1011',\n invalidState: '912',\n};\nexports.fileTypes = {\n file: 'File',\n image: 'Image',\n audio: 'Audio',\n video: 'Video',\n document: 'Document',\n};\nexports.elementConditionStates = {\n none: 'None',\n visible: 'Visible',\n hidden: 'Hidden',\n accepted: 'Accepted',\n rejected: 'Rejected',\n};\nexports.sortDirection = {\n asc: 'asc',\n desc: 'desc',\n};\nexports.sortDataType = {\n default: 'default',\n number: 'number',\n date: 'date',\n list: 'list',\n};\n// Duplicated in Enum: PatientFlagType\nexports.patientFlagTypes = {\n criticalScore: 'CriticalScore',\n inactivePatient: 'InactivePatient',\n messageFollowup: 'MessageFollowup',\n responseFollowup: 'ResponseFollowup',\n custom: 'Custom',\n customWarning: 'CustomWarning',\n customCritical: 'CustomCritical',\n warningScore: 'WarningScore',\n goodScore: 'GoodScore',\n checkForSurplusInformation: 'CheckForSurplusInformation',\n};\nexports.sensorTypes = {\n unknown: 'Unknown',\n fitbit: 'Fitbit',\n garmin: 'Garmin',\n};\nexports.IdProviders = {\n youwell: 'Youwell',\n idPorten: 'IdPorten',\n};\nexports.loginTypes = {\n none: 'None',\n password: 'Password',\n idPorten: 'IdPorten',\n twoFactor: 'TwoFactor',\n selfStart: 'SelfStart',\n};\nexports.freetextInputTypes = {\n default: 'Default',\n singleLineText: 'SingleLineText',\n email: 'Email',\n phone: 'Phone',\n number: 'Number',\n date: 'Date',\n dateAndTime: 'DateAndTime',\n time: 'Time',\n richText: 'RichText',\n};\nexports.patientDialogChannels = {\n chat: 'YouwellChat',\n sms: 'Sms',\n};\nexports.patientPatchOperations = {\n addGroupMembership: 'AddGroupMembership',\n removeGroupMembership: 'RemoveGroupMembership',\n};\nexports.contentPatchOperations = {\n changeOwner: 'ChangeOwner',\n};\nexports.defaultContentElementTypes = {\n default: 'Default',\n box: 'Box',\n card: 'Card',\n readMore: 'ReadMore',\n linkedResponse: 'LinkedResponse',\n};\nexports.questionContentElementTypes = {\n questionnaire: 'Questionnaire',\n quiz: 'Quiz',\n bubbleChoice: 'BubbleChoice',\n bullseye: 'BullsEye',\n collapsedTable: 'CollapsedTable',\n};\nexports.specialContentElementTypes = {\n hidden: 'Hidden',\n connectedBoxes: 'ConnectedBoxes',\n};\nexports.customContentElementTypes = {\n quizResponse: 'QuizResponse',\n routeSelection: 'RouteSelection', // Used by eMeistring Depresjon\n};\nexports.thresholdTypes = {\n lessThan: 'LessThan',\n moreThan: 'MoreThan',\n equals: 'Equals',\n none: 'None',\n};\nexports.subtotalCalculationTypes = {\n sum: 'Sum',\n average: 'Average',\n};\nexports.workflowStatuses = {\n newContent: 100,\n soonExpiring: 310,\n inReview: 320,\n inPeerReview: 330,\n readyForApproval: 380,\n expired: 410,\n approved: 500,\n};\nexports.workflowStatusLabels = ['ProofReading', 'Illustrating', 'Attention'];\nexports.contentElemenIdPrefix = 'ywE';\nexports.orgLicence = {\n None: 0,\n Trial: 5,\n Limited: 10,\n Unlimited: 100,\n};\nexports.systemProgramProfiles = {\n Default: 'Default',\n Empty: 'Empty',\n All: 'All',\n};\nexports.taskSettingKeys = {\n exportLabel: 'export-label',\n};\nexports.engineTaskTypes = {\n checkForNewFeedback: 'CheckForNewFeedback',\n setRandomizedReminders: 'SetRandomizedReminders',\n};\nexports.programAccessStatus = {\n default: 'Default',\n private: 'Private',\n clientLibrary: 'ClientLibrary',\n publicLibrary: 'PublicLibrary',\n public: 'Public',\n};\nexports.userDataProperties = {\n bedtimePlan: {\n bedTime: 'sleepPlan.bedTime',\n wakeTime: 'sleepPlan.wakeTime',\n },\n};\nexports.notificationStatus = {\n created: 'Created',\n sent: 'Sent',\n notSent: 'NotSent',\n Invalid: 'Invalid',\n canceled: 'Canceled',\n};\nexports.notificationUpdateAction = {\n resend: 'Resend',\n cancel: 'Cancel',\n sendNow: 'SendNow',\n};\nexports.patientProgramStatus = {\n notStarted: 'NotStarted',\n active: 'Active',\n inactive: 'Inactive',\n ended: 'Ended',\n deleted: 'Deleted',\n programDeleted: 'ProgramDeleted',\n};\nvar ChatVideoProviders;\n(function (ChatVideoProviders) {\n ChatVideoProviders[\"Youwell\"] = \"Youwell\";\n ChatVideoProviders[\"Join\"] = \"Join\";\n})(ChatVideoProviders = exports.ChatVideoProviders || (exports.ChatVideoProviders = {}));\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getElementTitle = exports.findTask = exports.findModule = void 0;\nvar htmlUtils_1 = require(\"./htmlUtils\");\nvar findModule = function (program, moduleId) { return (program && moduleId ? program.modules.reduce(function (p, c) { return (c.id === moduleId ? c : p); }, null) : null); };\nexports.findModule = findModule;\nvar findTask = function (program, moduleId, taskId) { return (program && moduleId && taskId\n ? program.modules.reduce(function (p, module) { return (module.id === moduleId\n ? module.tasks.reduce(function (pt, task) { return (task.id === taskId ? task : pt); }, null)\n : p); }, null)\n : null); };\nexports.findTask = findTask;\nvar firstQuestionText = function (questions) { return (questions && questions.length > 0 ? (0, htmlUtils_1.textpart)(questions[0].question) : null); };\nvar firstHeaderOrText = function (htmlContent, length) {\n var _a;\n if (length === void 0) { length = 50; }\n var doc = new DOMParser().parseFromString(htmlContent, 'text/html');\n var t = ((_a = doc.body.children[0]) === null || _a === void 0 ? void 0 : _a.textContent) || '';\n return t.length > length ? \"\".concat(t.slice(0, length), \"...\") : t;\n};\nvar getElementTitle = function (element, defaultValue) {\n if (defaultValue === void 0) { defaultValue = '\\u00A0'; }\n return element.title\n || firstHeaderOrText(element.htmlContent)\n || firstQuestionText(element.questions)\n || defaultValue;\n};\nexports.getElementTitle = getElementTitle;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getTimeValues = exports.hourCount = exports.getMillisecondsInADay = exports.getMinsToMidnight = exports.getDateFormatted = exports.compareDates = exports.getDatePart = exports.getNumberOfMinutes = exports.getNumberOfSeconds = exports.getWeekStartDate = exports.getNumberOfDays = exports.getNumberOfWeeksCeiled = exports.getNumberOfWeeks = exports.getWeekNumber = exports.getWeekNumberFromDate = exports.getDateTimeSaveString = exports.getTextfieldDateTimeString = exports.getTextfieldDateString = exports.dateWithTimeIfToday = exports.dateWithOptionalTime = exports.getTimeStringFromDayOfWeek = exports.mondayZeroIndex = exports.shortDate = exports.longDate = exports.datestamp = exports.timestamp = exports.longTimestamp = exports.hasTime = exports.getTimePartForInput = exports.timeOnly = exports.fullDateTime = exports.addMonths = exports.addDays = exports.addHours = exports.isFuture = exports.isYesterday = exports.isToday = exports.isSameDate = exports.yesterday = exports.tomorrow = exports.today = exports.isoDate = exports.isoDateWithoutTimezone = exports.getLocalDate = exports.isDateObject = exports.pad2 = exports.minutesInOneDay = exports.msInOneDay = exports.msInOneWeek = exports.timestampRegex = void 0;\nexports.generateWeekAndYearKey = exports.sortDatesByTimeInAscendingOrder = exports.getAge = exports.getWeek = void 0;\nvar objectUtils_1 = require(\"./objectUtils\");\nexports.timestampRegex = /^([0-9]|0[0-9]|1[0-9]|2[0-3]):([0-5]?[0-9])$/;\nexports.msInOneWeek = 1000 * 60 * 60 * 24 * 7;\nexports.msInOneDay = 1000 * 60 * 60 * 24;\nexports.minutesInOneDay = 60 * 24;\nvar pad2 = function (number) { return (number < 10 ? \"0\".concat(number) : number); };\nexports.pad2 = pad2;\n// Allow global isNaN to check for Invalid Date object type\n// eslint-disable-next-line no-restricted-globals\nvar isDateObject = function (input) { return (input === null || input === void 0 ? void 0 : input.getDate) && !input.slice && !isNaN(input); };\nexports.isDateObject = isDateObject;\n// Get local datetime object from UTC-datetime string\nvar getLocalDate = function (dateString, inputIsUtc) {\n if (inputIsUtc === void 0) { inputIsUtc = true; }\n if (!dateString) {\n return null;\n }\n if ((0, exports.isDateObject)(dateString)) {\n return new Date(dateString.getTime()); // dateString is actually Date -> Make copy\n }\n if (dateString.toString() === 'Invalid Date') {\n return null;\n }\n if (!dateString.slice) { // dateString is object or function..\n // eslint-disable-next-line no-console\n console.warn('Date-util: Invalid date object', dateString);\n return null;\n }\n var timeZonestring = inputIsUtc ? 'Z' : '';\n var date;\n if (dateString.slice(-1).toLowerCase() === 'z' || dateString.slice(-6, -5) === '+') {\n // datestring already contains Timezone-info -> create Date object\n date = new Date(dateString);\n }\n else if (dateString.includes('T')) {\n // full date and time string date. Set UTC timezone\n date = new Date(\"\".concat(dateString).concat(timeZonestring));\n }\n else if (dateString.length === 10) { // yyyy-mm-dd\n // only date - Add timestamp and set UTC timezone\n date = new Date(\"\".concat(dateString, \"T00:00:00\").concat(timeZonestring));\n }\n else if (dateString.length >= 3 && dateString.length <= 5 && dateString.includes(':')) { //\n // only time - Add date and set UTC timezone\n var colonIndex = dateString.indexOf(':');\n var hour = Number(dateString.substring(0, colonIndex));\n var minute = Number(dateString.substring(colonIndex + 1));\n // const timeMatch = dateString.match(timestampRegex); // HH:MM - optional leading zero\n date = new Date(\"1970-01-01T\".concat((0, exports.pad2)(hour), \":\").concat((0, exports.pad2)(minute)).concat(timeZonestring));\n }\n else {\n // unknown format - trying to parse directly\n date = new Date(\"\".concat(dateString).concat(timeZonestring));\n }\n if (date && !date.getTime()) { // parsing has failed. invalid date\n // eslint-disable-next-line no-console\n console.warn('Date-util: Parsing datestring failed', dateString);\n return null;\n }\n return date;\n};\nexports.getLocalDate = getLocalDate;\nvar isoDateWithoutTimezone = function (date) { return \"\".concat(date.getFullYear(), \"-\").concat((0, exports.pad2)(date.getMonth() + 1), \"-\").concat((0, exports.pad2)(date.getDate())); };\nexports.isoDateWithoutTimezone = isoDateWithoutTimezone;\nvar isoDate = function (date) { var _a; return ((_a = (0, exports.getLocalDate)(date)) === null || _a === void 0 ? void 0 : _a.toISOString().substring(0, 10)) || ''; };\nexports.isoDate = isoDate;\nvar today = function (hour, minute, second) {\n if (hour === void 0) { hour = 0; }\n if (minute === void 0) { minute = 0; }\n if (second === void 0) { second = 0; }\n var d = new Date();\n d.setHours(hour, minute, second, 0);\n return d;\n};\nexports.today = today;\nvar tomorrow = function (hour, minute, second) {\n if (hour === void 0) { hour = 0; }\n if (minute === void 0) { minute = 0; }\n if (second === void 0) { second = 0; }\n var d = new Date();\n d.setHours(hour, minute, second, 0);\n d.setDate(d.getDate() + 1);\n return d;\n};\nexports.tomorrow = tomorrow;\nvar yesterday = function (hour, minute, second) {\n if (hour === void 0) { hour = 0; }\n if (minute === void 0) { minute = 0; }\n if (second === void 0) { second = 0; }\n var d = new Date();\n d.setHours(hour, minute, second, 0);\n d.setDate(d.getDate() - 1);\n return d;\n};\nexports.yesterday = yesterday;\nvar isSameDate = function (datetime1, datetime2) {\n if (!datetime1 || !datetime2)\n return false;\n var d1 = (0, exports.getLocalDate)(datetime1);\n var d2 = (0, exports.getLocalDate)(datetime2);\n return (d1 === null || d1 === void 0 ? void 0 : d1.toLocaleDateString()) === (d2 === null || d2 === void 0 ? void 0 : d2.toLocaleDateString());\n};\nexports.isSameDate = isSameDate;\nvar isToday = function (dateString) { return (0, exports.isSameDate)(dateString, (0, exports.today)()); };\nexports.isToday = isToday;\nvar isYesterday = function (dateString) { return (0, exports.isSameDate)(dateString, (0, exports.yesterday)()); };\nexports.isYesterday = isYesterday;\nvar isFuture = function (dateString, includeToday) {\n var date = (0, exports.getLocalDate)(dateString);\n if (!date) {\n return false;\n }\n if (includeToday) {\n return date.getTime() >= (0, exports.today)().getTime();\n }\n return date.getTime() > Date.now();\n};\nexports.isFuture = isFuture;\nvar addHours = function (initialDate, hours) {\n var date = initialDate ? new Date(initialDate) : new Date();\n date.setHours(date.getHours() + hours);\n return date;\n};\nexports.addHours = addHours;\nvar addDays = function (initialDate, days) {\n var date = initialDate ? new Date(initialDate) : new Date();\n date.setDate(date.getDate() + days);\n return date;\n};\nexports.addDays = addDays;\nvar addMonths = function (initialDate, months) {\n var date = initialDate ? new Date(initialDate) : new Date();\n date.setMonth(date.getMonth() + months);\n return date;\n};\nexports.addMonths = addMonths;\nvar fullDateTime = function (dateString) { var _a; return (_a = (0, exports.getLocalDate)(dateString)) === null || _a === void 0 ? void 0 : _a.toString(); };\nexports.fullDateTime = fullDateTime;\nvar timeOnly = function (dateOrString, translate) {\n var date = (0, exports.getLocalDate)(dateOrString);\n if (!date) {\n return null;\n }\n return \"\".concat(translate ? \"\".concat(translate('time.at'), \" \") : '').concat((0, exports.pad2)(date.getHours()), \":\").concat((0, exports.pad2)(date.getMinutes()));\n};\nexports.timeOnly = timeOnly;\nvar getTimePartForInput = function (datetime, inputIsUtc) {\n var _a;\n if (inputIsUtc === void 0) { inputIsUtc = false; }\n if (!datetime) {\n return '';\n }\n if (datetime.length === 5 && datetime[2] === ':') {\n return datetime;\n }\n var date = (_a = (0, exports.getLocalDate)(datetime, inputIsUtc)) !== null && _a !== void 0 ? _a : new Date();\n return \"\".concat((0, exports.pad2)(date.getHours()), \":\").concat((0, exports.pad2)(date.getMinutes()));\n};\nexports.getTimePartForInput = getTimePartForInput;\nvar hasTime = function (dateOrString) {\n var date = (0, exports.getLocalDate)(dateOrString);\n if (!date) {\n return false;\n }\n return date.getHours() !== 0 || date.getMinutes() !== 0;\n};\nexports.hasTime = hasTime;\nvar longTimestamp = function (dateOrString) {\n var d = dateOrString ? (0, exports.getLocalDate)(dateOrString) : new Date();\n if (!d)\n return '';\n return \"\".concat(d.getFullYear(), \"-\").concat((0, exports.pad2)(d.getMonth() + 1), \"-\").concat((0, exports.pad2)(d.getDate()), \" \").concat((0, exports.pad2)(d.getHours()), \":\").concat((0, exports.pad2)(d.getMinutes()), \":\").concat((0, exports.pad2)(d.getSeconds()));\n};\nexports.longTimestamp = longTimestamp;\n// Get date or time-string from UTC-datetime string\nvar timestamp = function (dateOrString, translate) {\n var date = (0, exports.getLocalDate)(dateOrString);\n if (!date) {\n return null;\n }\n if ((0, exports.isToday)(date)) {\n if (translate && date.getHours() === 0 && date.getMinutes() === 0) {\n return translate('time.today');\n }\n return \"\".concat(translate ? translate('time.todayAt') : '', \" \").concat((0, exports.pad2)(date.getHours()), \":\").concat((0, exports.pad2)(date.getMinutes()));\n }\n if ((0, exports.isYesterday)(date)) {\n if (translate && date.getHours() === 0 && date.getMinutes() === 0) {\n return translate('time.yesterday');\n }\n return \"\".concat(translate ? translate('time.yesterdayAt') : \"\".concat((0, exports.pad2)(date.getDate()), \".\").concat((0, exports.pad2)(date.getMonth() + 1)), \" \").concat((0, exports.pad2)(date.getHours()), \":\").concat((0, exports.pad2)(date.getMinutes()));\n }\n if (date.getFullYear() === new Date().getFullYear()) {\n if (date.getHours() === 0 && date.getMinutes() === 0) {\n return \"\".concat((0, exports.pad2)(date.getDate()), \".\").concat((0, exports.pad2)(date.getMonth() + 1));\n }\n return \"\".concat((0, exports.pad2)(date.getDate()), \".\").concat((0, exports.pad2)(date.getMonth() + 1), \" \").concat(translate ? translate('time.at') : '', \" \").concat((0, exports.pad2)(date.getHours()), \":\").concat((0, exports.pad2)(date.getMinutes()));\n }\n if (date.getHours() === 0 && date.getMinutes() === 0) {\n return \"\".concat((0, exports.pad2)(date.getDate()), \".\").concat((0, exports.pad2)(date.getMonth() + 1), \".\").concat(date.getFullYear());\n }\n return \"\".concat((0, exports.pad2)(date.getDate()), \".\").concat((0, exports.pad2)(date.getMonth() + 1), \".\").concat(date.getFullYear(), \" \").concat(translate ? translate('time.at') : '', \" \").concat((0, exports.pad2)(date.getHours()), \":\").concat((0, exports.pad2)(date.getMinutes()));\n};\nexports.timestamp = timestamp;\nvar datestamp = function (dateOrString) {\n var date = (0, exports.getLocalDate)(dateOrString);\n if (!date) {\n return '';\n }\n return \"\".concat((0, exports.pad2)(date.getDate()), \".\").concat((0, exports.pad2)(date.getMonth() + 1), \".\").concat(date.getFullYear());\n};\nexports.datestamp = datestamp;\nvar longDate = function (dateOrString, translate, alwaysIncludeYear) {\n if (alwaysIncludeYear === void 0) { alwaysIncludeYear = false; }\n var date = (0, exports.getLocalDate)(dateOrString);\n if (!date) {\n return null;\n }\n var year = alwaysIncludeYear || date.getFullYear() !== new Date().getFullYear() ? \" \".concat(date.getFullYear()) : '';\n return \"\".concat(date.getDate(), \". \").concat(translate(\"time.months.\".concat(date.getMonth()))).concat(year);\n};\nexports.longDate = longDate;\nvar shortDate = function (dateOrString, translate, includeYear, withDayName, alwaysDate) {\n if (includeYear === void 0) { includeYear = false; }\n if (withDayName === void 0) { withDayName = false; }\n if (alwaysDate === void 0) { alwaysDate = false; }\n var date = (0, exports.getLocalDate)(dateOrString);\n if (!date) {\n return null;\n }\n var year = includeYear ? \" \".concat(date.getFullYear()) : '';\n if (translate) {\n if (!alwaysDate) {\n if ((0, exports.isToday)(date)) {\n return translate('time.today');\n }\n if ((0, exports.isToday)((0, exports.addDays)(date, 1))) {\n return translate('time.yesterday');\n }\n if ((0, exports.isToday)((0, exports.addDays)(date, -1))) {\n return translate('time.tomorrow');\n }\n }\n var dayName = withDayName ? \"\".concat(translate(\"time.weekdays_short.\".concat(date.getDay())), \" \") : '';\n return \"\".concat(dayName).concat(date.getDate(), \". \").concat(translate(\"time.months_short.\".concat(date.getMonth()))).concat(year);\n }\n return \"\".concat((0, exports.pad2)(date.getDate()), \".\").concat((0, exports.pad2)(date.getMonth() + 1)).concat(year);\n};\nexports.shortDate = shortDate;\nvar mondayZeroIndex = function (n) { return (((n - 1) % 7) + 7) % 7; };\nexports.mondayZeroIndex = mondayZeroIndex;\nvar getTimeStringFromDayOfWeek = function (day) {\n var a = new Date();\n var dayOffset = (a.getDay() - day) * 1000 * 60 * 60 * 24 * -1;\n var d = new Date(a.getTime() + dayOffset);\n d.setHours(0, 0, 0, 0);\n return d.toISOString();\n};\nexports.getTimeStringFromDayOfWeek = getTimeStringFromDayOfWeek;\nvar dateWithOptionalTime = function (dateOrString) {\n var date = (0, exports.getLocalDate)(dateOrString);\n if (!date) {\n return null;\n }\n if (date.getHours() === 0 && date.getMinutes() === 0) {\n return date.toLocaleDateString();\n }\n return date.toLocaleString().slice(0, -3);\n};\nexports.dateWithOptionalTime = dateWithOptionalTime;\nvar dateWithTimeIfToday = function (dateOrString) {\n var date = (0, exports.getLocalDate)(dateOrString);\n if (!date) {\n return null;\n }\n if ((0, exports.isToday)(date)) {\n return \"\".concat((0, exports.pad2)(date.getHours()), \":\").concat((0, exports.pad2)(date.getMinutes()));\n }\n return \"\".concat((0, exports.pad2)(date.getDate()), \".\").concat((0, exports.pad2)(date.getMonth() + 1), \".\").concat(date.getFullYear());\n};\nexports.dateWithTimeIfToday = dateWithTimeIfToday;\n// returns string to set in input type=date\nvar getTextfieldDateString = function (dateOrString) {\n var d = dateOrString ? (0, exports.getLocalDate)(dateOrString) : new Date();\n if (!d)\n return '';\n return \"\".concat(d.getFullYear(), \"-\").concat((0, exports.pad2)(d.getMonth() + 1), \"-\").concat((0, exports.pad2)(d.getDate()));\n};\nexports.getTextfieldDateString = getTextfieldDateString;\n// returns string to set in input type=datetime-local\nvar getTextfieldDateTimeString = function (dateOrString, setNoon) {\n if (setNoon === void 0) { setNoon = false; }\n var d = dateOrString ? (0, exports.getLocalDate)(dateOrString) : new Date();\n if (!d)\n return '';\n if (setNoon) {\n d.setHours(12, 0, 0, 0);\n }\n return \"\".concat(d.getFullYear(), \"-\").concat((0, exports.pad2)(d.getMonth() + 1), \"-\").concat((0, exports.pad2)(d.getDate()), \"T\").concat((0, exports.pad2)(d.getHours()), \":\").concat((0, exports.pad2)(d.getMinutes()));\n};\nexports.getTextfieldDateTimeString = getTextfieldDateTimeString;\n// returns string to save in database\nvar getDateTimeSaveString = function (date) {\n var d;\n if (!date) {\n return null;\n }\n if (date.length === 10) {\n d = new Date(\"\".concat(date, \"T00:00\"));\n }\n else {\n d = new Date(date);\n }\n return d.toISOString();\n};\nexports.getDateTimeSaveString = getDateTimeSaveString;\nvar getWeekNumberFromDate = function (dateIn) {\n var date = dateIn ? new Date(Date.UTC(dateIn.getFullYear(), dateIn.getMonth(), dateIn.getDate())) : new Date();\n // Thursday in current week decides the year.\n date.setDate(date.getDate() + 3 - ((date.getDay() + 6) % 7));\n // January 4 is always in week 1.\n var week1 = new Date(date.getFullYear(), 0, 4);\n // Adjust to Thursday in week 1 and count number of weeks from date to week1.\n return 1 + Math.round(((date.getTime() - week1.getTime()) / 86400000 - 3 + ((week1.getDay() + 6) % 7)) / 7);\n};\nexports.getWeekNumberFromDate = getWeekNumberFromDate;\nvar getWeekNumber = function (dateString) {\n var date = (0, exports.getLocalDate)(dateString);\n return (0, exports.getWeekNumberFromDate)(date);\n};\nexports.getWeekNumber = getWeekNumber;\nvar getNumberOfWeeks = function (startTime, endTime) {\n if (!startTime || !endTime) {\n return 0;\n }\n return Math.floor(Math.abs(new Date(startTime).getTime() - new Date(endTime).getTime()) / exports.msInOneWeek) || 0;\n};\nexports.getNumberOfWeeks = getNumberOfWeeks;\nvar getNumberOfWeeksCeiled = function (startTime, endTime) {\n if (!startTime || !endTime) {\n return 0;\n }\n return Math.ceil(Math.abs(new Date(startTime).getTime() - new Date(endTime).getTime()) / exports.msInOneWeek) || 0;\n};\nexports.getNumberOfWeeksCeiled = getNumberOfWeeksCeiled;\nvar getNumberOfDays = function (startTime, endTime) {\n if (!startTime || !endTime) {\n return 0;\n }\n return Math.floor(Math.abs(new Date(startTime).getTime() - new Date(endTime).getTime()) / exports.msInOneDay);\n};\nexports.getNumberOfDays = getNumberOfDays;\nvar getWeekStartDate = function (weekNumber, year) {\n var weekYear = year || new Date().getFullYear();\n var simple = new Date(weekYear, 0, 1 + (weekNumber - 1) * 7);\n var dow = simple.getDay();\n var ISOweekStart = simple;\n if (dow <= 4)\n ISOweekStart.setDate(simple.getDate() - simple.getDay() + 1);\n else\n ISOweekStart.setDate(simple.getDate() + 8 - simple.getDay());\n return ISOweekStart;\n};\nexports.getWeekStartDate = getWeekStartDate;\nvar getNumberOfSeconds = function (startTime, endTime) {\n if (!startTime || !endTime) {\n return 0;\n }\n return Math.floor(Math.abs(new Date(startTime).getTime() - new Date(endTime).getTime()) / 1000);\n};\nexports.getNumberOfSeconds = getNumberOfSeconds;\nvar getNumberOfMinutes = function (startTime, endTime) { return (0, exports.getNumberOfSeconds)(startTime, endTime) / 60; };\nexports.getNumberOfMinutes = getNumberOfMinutes;\nvar getDatePart = function (dateOrString) {\n var d = (0, exports.getLocalDate)(dateOrString);\n d === null || d === void 0 ? void 0 : d.setHours(0, 0, 0, 0);\n return d;\n};\nexports.getDatePart = getDatePart;\nvar compareDates = function (date, daysToAddForCompare) {\n if (daysToAddForCompare === void 0) { daysToAddForCompare = 0; }\n var date1 = (0, exports.getLocalDate)(date) || { getTime: function () { return 0; } };\n return date1.getTime() > (0, exports.addDays)(new Date(), daysToAddForCompare).getTime();\n};\nexports.compareDates = compareDates;\nvar getDateFormatted = function (dateOrString, translate) {\n var d = (0, exports.getLocalDate)(dateOrString);\n if (!d)\n return '';\n return \"\".concat(translate(\"calendar.shortMonth\".concat(d.getMonth() + 1)), \". \").concat(d.getDate());\n};\nexports.getDateFormatted = getDateFormatted;\nvar getMinsToMidnight = function () {\n var d = new Date();\n return (-d + d.setHours(24, 0, 0, 0)) / 6e4;\n};\nexports.getMinsToMidnight = getMinsToMidnight;\nvar getMillisecondsInADay = function () { return 1000 * 60 * 60 * 24; };\nexports.getMillisecondsInADay = getMillisecondsInADay;\nvar hourCount = function (minutes, translate, longLabels) {\n if (longLabels === void 0) { longLabels = false; }\n if (!(0, objectUtils_1.hasValue)(minutes) || Number.isNaN(minutes) || (minutes === null || minutes === void 0 ? void 0 : minutes.toString()) === 'NaN' || minutes === undefined)\n return '';\n var minLabel = translate ? translate(longLabels ? 'time.minutes' : 'time.minutesShort') : 'm';\n if (minutes < 60)\n return \"\".concat(Math.round(minutes % 60), \" \").concat(minLabel);\n var hours = Math.floor(minutes / 60);\n var hourLabel = translate ? translate(longLabels ? hours > 1 ? 'time.hours' : 'time.hour' : 'time.hoursShort') : 'h';\n if (minutes % 60 === 0)\n return \"\".concat(hours, \" \").concat(hourLabel);\n return \"\".concat(hours, \" \").concat(hourLabel, \" \").concat(Math.round(minutes % 60), \" \").concat(minLabel);\n};\nexports.hourCount = hourCount;\nvar getTimeValues = function (minutes) { return ({\n minutes: (minutes % 60) || 0,\n hours: Math.floor(minutes / 60) || 0,\n}); };\nexports.getTimeValues = getTimeValues;\nvar getWeek = function (startDate) {\n var start = startDate !== null && startDate !== void 0 ? startDate : new Date();\n start.setHours(0, 0, 0, 0);\n start.setDate(start.getDate() + (-start.getDay() + 1));\n var end = (0, exports.addDays)(start, 6);\n end.setHours(23, 59, 59);\n return {\n start: start,\n // lastDate: addDays(end, -1), // end is date after..\n end: end,\n weekNo: (0, exports.getWeekNumberFromDate)(start),\n };\n};\nexports.getWeek = getWeek;\nvar getAge = function (dateString) {\n if (!dateString)\n return null;\n var todayDate = new Date();\n var birthDate = (0, exports.getLocalDate)(dateString);\n if (!birthDate)\n return null;\n var age = todayDate.getFullYear() - birthDate.getFullYear();\n var m = todayDate.getMonth() - birthDate.getMonth();\n if (m < 0 || (m === 0 && todayDate.getDate() < birthDate.getDate())) {\n age -= 1;\n }\n return age;\n};\nexports.getAge = getAge;\nvar sortDatesByTimeInAscendingOrder = function (last, curr) {\n var result;\n result = last.getHours() > curr.getHours() ? 1 : last.getHours() < curr.getHours() ? -1 : 0;\n // Compares minutes if hours are identical.\n if (result === 0)\n result = last.getMinutes() > curr.getMinutes() ? 1 : last.getMinutes() < curr.getMinutes() ? -1 : 0;\n // Compares seconds if minutes are identical.\n if (result === 0)\n result = last.getSeconds() > curr.getSeconds() ? 1 : last.getSeconds() < curr.getSeconds() ? -1 : 0;\n return result;\n};\nexports.sortDatesByTimeInAscendingOrder = sortDatesByTimeInAscendingOrder;\nvar generateWeekAndYearKey = function (date) { var _a; return (0, exports.getLocalDate)(date) && \"\".concat((0, exports.getWeekNumberFromDate)((0, exports.getLocalDate)(date)), \"-\").concat((_a = (0, exports.getLocalDate)(date)) === null || _a === void 0 ? void 0 : _a.getFullYear()); };\nexports.generateWeekAndYearKey = generateWeekAndYearKey;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.updateAllOthersAreHiddenProperties = exports.getElementConditionState = exports.ANY_ANSWER_CONDITION = void 0;\nvar constants_1 = require(\"./constants\");\nvar objectUtils_1 = require(\"./objectUtils\");\nvar responseUtils_1 = require(\"./responseUtils\");\n// Needed in IMMG? Set in app-config?\nvar dontUseConditionsFromHiddenElements = false;\nexports.ANY_ANSWER_CONDITION = 'ANY_ANSWER_CONDITION';\nvar getQuestionInCondition = function (condition, currentTask, getProgramItem, getGetResponseFunc, currentElementId, parentElementId) {\n // If question in condition is in a different task than currentTask we get this task here\n var taskInCondition = condition.taskId === currentTask.id || !condition.taskId // No taskId = current Task\n ? currentTask\n : getProgramItem ? getProgramItem(condition.taskId) : null;\n if (taskInCondition) {\n if (dontUseConditionsFromHiddenElements) {\n var elementInCondition = taskInCondition.contentElements\n .find(function (element) { var _a; return (_a = element.questions) === null || _a === void 0 ? void 0 : _a.find(function (question) { return question.id === condition.questionId; }); });\n if (elementInCondition && elementInCondition.id !== currentElementId && elementInCondition.id !== parentElementId) {\n // Dont include condition if elementInCondition is hidden\n // elementInCondition.id !== currentElementId\n // - don't check state if elementInCondition is same as currentElement -> Will get recursive loop..\n // elementInCondition.id !== parentElementId\n // - don't check state if elementInCondition is same as parentElement (looped conditions - exist in ADHD program..)\n // TODO - fix this.. Rewrite show/hide logic. Use separate label-logic for accepted/rejected/...\n // eslint-disable-next-line no-use-before-define\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n var conditionForElementInCondition = (0, exports.getElementConditionState)(elementInCondition, getGetResponseFunc, taskInCondition, getProgramItem, currentElementId);\n if ((conditionForElementInCondition === null || conditionForElementInCondition === void 0 ? void 0 : conditionForElementInCondition.state) === constants_1.elementConditionStates.hidden) {\n return null;\n }\n }\n }\n return taskInCondition.contentElements.reduce(function (prev, curr) {\n var _a;\n return (prev != null ? prev : ((_a = curr.questions) === null || _a === void 0 ? void 0 : _a.find(function (question) { return question.id === condition.questionId; })) || null);\n }, null);\n }\n return null;\n};\nvar meetsConditionForQuestion = function (condition, questionResponse, currentTask, getProgramItem, getGetResponseFunc, currentElementId, parentElementId) {\n var _a, _b, _c, _d, _e, _f;\n var questionInCondition = getQuestionInCondition(condition, currentTask, getProgramItem, getGetResponseFunc, currentElementId, parentElementId);\n // If condition is a multiple- action or single choice question with no expected answers,\n // return true if no answers has been chosen for the question in the condition\n if (condition.questionId && !condition.expectedAnswers) {\n if (!questionInCondition)\n return false;\n if (questionInCondition.type === constants_1.formAnswerTypes.multipleChoice\n || questionInCondition.type === constants_1.formAnswerTypes.singleChoice) {\n return !((_b = (_a = questionResponse === null || questionResponse === void 0 ? void 0 : questionResponse.response) === null || _a === void 0 ? void 0 : _a.choiceResponse) === null || _b === void 0 ? void 0 : _b.length);\n }\n }\n if (!questionResponse) {\n // If question in the condition is one of the following:\n // - A switch toggle question\n // - An action question with toggle\n // - A scale/action scale\n // and the condition is \"inactive\" (for toggle questions) and \"min = 0\" for scale questions,\n // and we don't have a response for the question we return true.\n // Toggle is false = condition is met.\n // Scale is 0 = condition is met.\n // User has to toggle question on and off for questionResponse to be set.\n // User has to explicitly set scale to 0 for questionResponse to be set.\n if (questionInCondition) {\n if (questionInCondition.type === constants_1.formAnswerTypes.switch) {\n return (condition === null || condition === void 0 ? void 0 : condition.scoreMin) === 0 && (condition === null || condition === void 0 ? void 0 : condition.scoreMax) === 0;\n }\n if (questionInCondition.type === constants_1.formAnswerTypes.action) {\n return (condition === null || condition === void 0 ? void 0 : condition.scoreMin) === 0 && (condition === null || condition === void 0 ? void 0 : condition.scoreMax) === 0;\n }\n if (questionInCondition.type === constants_1.formAnswerTypes.scale) {\n return (condition === null || condition === void 0 ? void 0 : condition.scoreMin) === 0;\n }\n }\n return false;\n }\n if (condition.expectedAnswers != null && condition.expectedAnswers.length > 0) {\n // If question in condition is hidden questionInCondition will be null and we return false.\n if (questionInCondition) {\n if (condition.expectedAnswers.length === 1 && condition.expectedAnswers[0] === exports.ANY_ANSWER_CONDITION) {\n return Boolean(((_d = (_c = questionResponse.response) === null || _c === void 0 ? void 0 : _c.choiceResponse) === null || _d === void 0 ? void 0 : _d.length) && questionResponse.response.choiceResponse.length > 0);\n }\n return ((_f = (_e = questionResponse.response) === null || _e === void 0 ? void 0 : _e.choiceResponse) === null || _f === void 0 ? void 0 : _f.some(function (c) { return condition.expectedAnswers.filter(function (d) { return d === (c === null || c === void 0 ? void 0 : c.value); }).length > 0; })) || false;\n }\n return false;\n }\n if ((0, objectUtils_1.hasValue)(condition.scoreMin) || (0, objectUtils_1.hasValue)(condition.scoreMax)) {\n var score = (0, responseUtils_1.calculateResponseScore)(questionResponse.response);\n return ((0, objectUtils_1.isEmpty)(condition.scoreMin) || (score >= (condition.scoreMin || 0)))\n && ((0, objectUtils_1.isEmpty)(condition.scoreMax) || (score <= (condition.scoreMax || 0)));\n }\n return true;\n};\nvar meetsCondition = function (condition, responsesForTaskInCondition, currentTask, getProgramItem, getResponses, currentElementId, parentElementId) {\n var _a;\n if (condition.questionId) {\n var responseForQuestion = responsesForTaskInCondition && responsesForTaskInCondition[condition.questionId];\n return meetsConditionForQuestion(condition, responseForQuestion, currentTask, getProgramItem, getResponses, currentElementId, parentElementId);\n }\n if (condition.subtotalId) {\n var responseForSubtotal = responsesForTaskInCondition && responsesForTaskInCondition[condition.subtotalId];\n return meetsConditionForQuestion(condition, responseForSubtotal, currentTask, getProgramItem, getResponses, currentElementId, parentElementId);\n }\n if (condition.moduleSubtotalId) {\n var responsesForModuleSubtotal = ((_a = getResponses(null, condition.moduleSubtotalId)) === null || _a === void 0 ? void 0 : _a[condition.moduleSubtotalId]) || null;\n return meetsConditionForQuestion(condition, responsesForModuleSubtotal, currentTask, getProgramItem, getResponses, currentElementId, parentElementId);\n }\n if (condition.ifAllOthersAreHidden) {\n return condition.allOthersAreHidden || false;\n }\n // Condition is met if any respons on task\n return (0, objectUtils_1.hasValue)(responsesForTaskInCondition);\n};\nvar checkConditions = function (elementState, getResponses, currentTask, getProgramItem, currentElementId, parentElementId) {\n var _a;\n if (!((_a = elementState.conditions) === null || _a === void 0 ? void 0 : _a.length)) {\n return true; // default true if no conditions\n }\n var check = elementState.conditions.reduce(function (prev, curr) {\n if (!prev) {\n // all conditions must be satisfied, no need to check the rest..\n return false;\n }\n // if no taskId is specified, assume current task\n // Note: value searchInAllResponses=true is needed in order to check conditions from other patientprogramelements.\n var responsesForTaskInCondition = getResponses(curr.taskId || currentTask.id, null, true);\n return meetsCondition(curr, responsesForTaskInCondition, currentTask, getProgramItem, getResponses, currentElementId, parentElementId);\n }, true);\n return check;\n};\nvar getElementConditionState = function (element, getGetResponseFunc, currentTask, getProgramItem, parentElementId) {\n var _a;\n var state = (_a = element === null || element === void 0 ? void 0 : element.elementStates) === null || _a === void 0 ? void 0 : _a.reduce(function (prev, curr) {\n if (prev) {\n return prev;\n } // returns first condition that matches\n var isMet = checkConditions(curr, getGetResponseFunc, currentTask, getProgramItem, element.id, parentElementId);\n return isMet ? curr : null;\n }, null);\n return state || null;\n};\nexports.getElementConditionState = getElementConditionState;\nvar updateAllOthersAreHiddenProperties = function (currentTask, getGetResponseFunc, getProgramItem) {\n var _a;\n if (!getGetResponseFunc) {\n return;\n }\n // Get elements with an element state which has a condition with ifAllOthersAreHidden === true\n var elementsWithAllOthersAreHiddenCondition = (_a = currentTask.contentElements) === null || _a === void 0 ? void 0 : _a.filter(function (e) { var _a; return (_a = e.elementStates) === null || _a === void 0 ? void 0 : _a.some(function (s) { var _a; return (_a = s === null || s === void 0 ? void 0 : s.conditions) === null || _a === void 0 ? void 0 : _a.some(function (c) { return c.ifAllOthersAreHidden; }); }); });\n if (elementsWithAllOthersAreHiddenCondition) {\n elementsWithAllOthersAreHiddenCondition.forEach(function (element) {\n var _a, _b, _c;\n // Get the elementState which contains a condition with ifAllOthersAreHidden === true\n var elementState = (_a = element.elementStates) === null || _a === void 0 ? void 0 : _a.find(function (state) { var _a; return (_a = state === null || state === void 0 ? void 0 : state.conditions) === null || _a === void 0 ? void 0 : _a.some(function (c) { return c.ifAllOthersAreHidden; }); });\n // Get the condition with ifAllOthersAreHidden === true\n var condition = (_b = elementState === null || elementState === void 0 ? void 0 : elementState.conditions) === null || _b === void 0 ? void 0 : _b.find(function (c) { return c.ifAllOthersAreHidden; });\n // The condition could be \"if all elements are hidden in another task than the current task\"\n // so we get the task in the condition\n var taskInCondition = (condition === null || condition === void 0 ? void 0 : condition.taskId) === currentTask.id\n ? currentTask\n : getProgramItem ? getProgramItem(condition === null || condition === void 0 ? void 0 : condition.taskId) : null;\n // Get all elements in the task in the condition wich do not have a ifAllOthersAreHidden condition\n var allOtherElements = (_c = taskInCondition === null || taskInCondition === void 0 ? void 0 : taskInCondition.contentElements) === null || _c === void 0 ? void 0 : _c.filter(function (e) { var _a; return !((_a = e.elementStates) === null || _a === void 0 ? void 0 : _a.some(function (s) { var _a; return (_a = s === null || s === void 0 ? void 0 : s.conditions) === null || _a === void 0 ? void 0 : _a.some(function (c) { return c.ifAllOthersAreHidden; }); })); });\n if (condition) {\n if (allOtherElements === null || allOtherElements === void 0 ? void 0 : allOtherElements.every(function (e) { var _a; return ((_a = (0, exports.getElementConditionState)(e, getGetResponseFunc, currentTask, getProgramItem)) === null || _a === void 0 ? void 0 : _a.state) === constants_1.elementConditionStates.hidden; })) {\n // All other elements are currently hidden\n condition.allOthersAreHidden = true;\n }\n else {\n // All other elements are currently not hidden\n condition.allOthersAreHidden = false;\n }\n }\n });\n }\n};\nexports.updateAllOthersAreHiddenProperties = updateAllOthersAreHiddenProperties;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.registerCatchAll = exports.sendError = void 0;\nvar apiUrls_1 = __importDefault(require(\"./apiUrls\"));\nvar Cookie_1 = __importStar(require(\"./Cookie\"));\nvar logToConsole = function (message) {\n /* eslint-disable no-console */\n if (console && console.warn) {\n console.warn(message);\n }\n /* eslint-enable no-console */\n};\nvar sendError = function (error) {\n var _a;\n if (window === null || window === void 0 ? void 0 : window.XMLHttpRequest) {\n var apiBaseUrl = (_a = document.getElementById('react-app')) === null || _a === void 0 ? void 0 : _a.getAttribute('data-api-url');\n try {\n var xhr = new XMLHttpRequest();\n xhr.open('POST', \"\".concat(apiBaseUrl, \"/\").concat(apiUrls_1.default.admin.log, \"/error\"));\n xhr.setRequestHeader('Content-Type', 'application/json');\n xhr.setRequestHeader('X-CSRF-TOKEN', Cookie_1.default.getValue(Cookie_1.CookieNames.csrf));\n xhr.send(JSON.stringify(error));\n }\n catch (_b) {\n logToConsole('An error occured. Logging to server failed..');\n }\n }\n else {\n logToConsole('An error occured. Logging to server unavailable..');\n }\n};\nexports.sendError = sendError;\nvar registerCatchAll = function () {\n window.onerror = function (msg, url, line, col, error) {\n if (msg.toString().toLowerCase().indexOf('script error') > -1) {\n // console.log('script error..', [msg, url, line, col, error]);\n // no details available for script errors\n }\n else {\n // i.e. network errors\n (0, exports.sendError)({\n sender: 'CatchAll',\n error: msg.toString(),\n info: \"Url: \".concat(url, \", Line: \").concat(line, \", Col: \").concat(col, \", Error: \").concat(error),\n });\n }\n return false;\n };\n};\nexports.registerCatchAll = registerCatchAll;\n","import Cookie, { CookieNames } from './Cookie';\nimport apiUrls from './apiUrls';\nimport { hasValue } from './objectUtils';\nimport { isDateObject, longTimestamp } from './dateUtils';\nimport Auth from './Auth';\n\nconst HTTP_STATUS_CODES = {\n Unauthorized: 401,\n Forbidden: 403,\n NotFound: 404,\n TooManyRequests: 429,\n};\n\nconst YOUWELL_ERROR_CODES = {\n ElementNotFound: 1078,\n UnknownError: 901,\n NoInternetConnection: 920,\n};\n\nexport const VERSION_EXPIRED = 'APP/VERSION_EXPIRED';\nexport const PAGE_NOTFOUND = 'APP/PAGE_NOTFOUND';\n\nconst appSettings = {\n version: '',\n appId: '',\n};\n\nexport const setAppVersion = (version) => {\n appSettings.version = version;\n};\n\nexport const setAppId = (appId) => {\n appSettings.appId = appId;\n};\n\nclass FetchError extends Error {\n constructor(url, status, data) {\n super(data);\n this.url = url;\n this.status = status;\n\n if (!data) {\n this.errorCode = status;\n } else {\n try {\n const json = JSON.parse(data);\n this.errorCode = json.errorCode;\n } catch (e) {\n this.errorCode = status;\n }\n }\n }\n}\n\nexport const handleErrors = dispatch => (response) => {\n if (!response.ok) {\n return response.text().then(data => Promise.reject(new FetchError(response.url, response.status, data)));\n }\n\n if (dispatch) {\n const version = response && response.headers && response.headers.get('X-Portal-Version');\n if (version && version !== appSettings.version) {\n dispatch({ type: VERSION_EXPIRED, previous: appSettings.version, newAvailableVersion: version });\n }\n }\n return Promise.resolve(response);\n};\n\nexport const json = response => (response.status === 204 ? response.text() : response.json());\n\nexport const text = response => response.text();\n\nexport const blob = (response) => {\n const disposition = response.headers.get('content-disposition');\n const contentType = response.headers.get('content-type');\n const filenameValues = disposition && disposition.match(/filename[^;=\\n]*=((['\"]).*?\\2|[^;\\n]*)/);\n const filename = filenameValues && filenameValues[1];\n\n return response.blob().then(blobData => Promise.resolve({ blobData, filename, contentType }));\n};\n\nexport const jsonHeader = {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n};\n\nexport const createRequestParams = (requestParamsObject) => {\n if (!hasValue(requestParamsObject)) {\n return '';\n }\n\n return Object.keys(requestParamsObject).reduce((prev, key) => (hasValue(requestParamsObject[key]) ? `${prev || '?'}${key}=${requestParamsObject[key]}&` : prev), '');\n};\n\nexport const getErrorMessageOrKey = (error) => {\n if (!error) {\n return YOUWELL_ERROR_CODES.UnknownError;\n }\n if (error.message === 'Failed to fetch'\n || error.message?.includes('Physical connection is not usable')\n || error.message?.includes('The server was not found or was not accessible')) {\n return YOUWELL_ERROR_CODES.NoInternetConnection;\n }\n\n return error instanceof Error ? (error.errorCode && error.errorCode.toString()) || error.message || '903' : '902';\n};\n\nexport const dispatchError = (dispatch, type, options, requestId, error, onUnauthorized) => {\n const err = error?.error || error?.errorCode;\n // type is always `${storePrefix}/${REQUEST_FAILED}`\n\n if (err === HTTP_STATUS_CODES.Unauthorized) {\n dispatch({\n type, options, requestId, error: null,\n });\n if (onUnauthorized) {\n onUnauthorized();\n }\n } else if (err === HTTP_STATUS_CODES.TooManyRequests) {\n dispatch({\n type, options, requestId, error: '921',\n });\n } else if (options?.isPage && (err === YOUWELL_ERROR_CODES.ElementNotFound || err === HTTP_STATUS_CODES.NotFound)) {\n dispatch({\n type, options, requestId, error: null,\n });\n dispatch({ type: PAGE_NOTFOUND });\n } else {\n const errorMessageKey = getErrorMessageOrKey(error);\n\n dispatch({\n type, options, requestId, error: errorMessageKey,\n });\n }\n};\n\nexport const downloadBlobAsFile = (filename, contentType, blobData) => {\n // It is necessary to create a new blob object with mime-type explicitly set\n // otherwise only Chrome works like it should\n const newBlob = new Blob([blobData], { type: contentType });\n\n let downloadFileName = filename?.replace('{timestamp}', longTimestamp()) || 'donwloaded file.t';\n\n if (contentType?.toLowerCase().indexOf('application/zip') > -1) {\n downloadFileName += '.zip';\n }\n\n // IE doesn't allow using a blob object directly as link href\n // instead it is necessary to use msSaveOrOpenBlob\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\n window.navigator.msSaveOrOpenBlob(newBlob, downloadFileName);\n return;\n }\n\n // For other browsers:\n // Create a link pointing to the ObjectURL containing the blob.\n const data = window.URL.createObjectURL(newBlob);\n const link = document.createElement('a');\n link.href = data;\n link.download = downloadFileName;\n link.click();\n setTimeout(() => {\n // For Firefox it is necessary to delay revoking the ObjectURL\n window.URL.revokeObjectURL(data);\n }, 100);\n};\n\n// This prevents multiple simultaneous calls to `/refreshToken`\nlet refreshPromise = null;\nconst withRefreshToken = async (fetch, refreshUrl) => {\n if (refreshPromise == null) {\n refreshPromise = fetch(`${apiUrls.baseUrl}/${refreshUrl}`, {\n headers: jsonHeader,\n method: 'POST',\n });\n }\n const result = await refreshPromise;\n if (!result.ok) {\n Auth.deauthenticateUser();\n }\n refreshPromise = null;\n return result;\n};\n\nconst fetchWithDefaults = async (url, { headers, ...options }) => fetch(url, {\n headers: {\n // ...jsonHeader, // not applicable for file-downloads.. Must override in ReduxStoreHelper.fetchFile if set here!\n ...headers,\n 'X-APP-ID': appSettings.appId,\n 'X-CSRF-TOKEN': Cookie.getValue(CookieNames.csrf),\n },\n credentials: 'include',\n method: 'GET',\n ...options,\n});\n\n// Obsolete - used by old redux-stores (ReduxStoreHelper) - use youwellFetch for new code\nexport const fetchWithRefresh = async (dispatch, url, options) => {\n const response = await fetchWithDefaults(url, options);\n\n if (response.status === HTTP_STATUS_CODES.Unauthorized) {\n if (response.headers.has('X-REFRESH-TOKEN')) {\n const refresh = await withRefreshToken(fetchWithDefaults, response.headers.get('X-REFRESH-TOKEN'));\n\n if (refresh.ok) {\n return fetchWithDefaults(url, options);\n }\n }\n }\n return response;\n};\n\nexport const youwellFetch = async (url, options) => {\n const response = await fetchWithDefaults(url, options || {});\n\n if (response.status === HTTP_STATUS_CODES.Unauthorized) {\n if (response.headers.has('X-REFRESH-TOKEN')) {\n const refresh = await withRefreshToken(fetchWithDefaults, response.headers.get('X-REFRESH-TOKEN'));\n\n if (refresh.ok) {\n return fetchWithDefaults(url, options || {});\n }\n }\n }\n return response;\n};\n\n\nconst stringValue = (object) => {\n if (isDateObject(object)) {\n return object.toISOString();\n }\n return object;\n};\n\nexport const mapToQueryString = requestParams => (requestParams\n ? Object.keys(requestParams).reduce((prev, key) => (hasValue(requestParams[key]) ? `${prev || '?'}${key}=${stringValue(requestParams[key])}&` : prev), '')\n : '');\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.en = exports.no = exports.us = void 0;\nexports.us = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAWCAYAAAChWZ5EAAABT0lEQVRIS2PMFlaJ3SwbPO8dqwgLAwgwM4Ephr//IDQRfCYONobqI7kQ9cSDl///M6QyyhmU/37LKAixnEzAyM7KUHummBzdLxl5TLv////zl2HnvBQGRkYGhpiGC2CDFtcbEM1nZmNhODXXgiQHTJm3FKwe7oBd81MYGBkYGKKhDljSYEA0n5mVheHUPHIdYNH7///P3wxi8iYk+xzmZVZudoZtpyJJCoG1959AQwDNAaT4HGYjGzc7w1ayHTCaBkbTwGgaQEsDJGVmqGKKygE+h8n///34xSAhZ8zA8J+BgYmNGVwC/v39l2g+Oy8Hw/q9gSS5HV4QNU2c+5+dnY0hNTqUJAMoVQyvCwbcAZ0soIBnYAhWlKHUUyTph0fBgDtgwKNgwB3QycLwgoGBQZykCKSe4meMHcwMvoyMDHMYGBjEqGcuUSY9+/+fIQMA7YEh8yRPGe0AAAAASUVORK5CYII=';\nexports.no = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAzUlEQVRIS2Ocyszg+5+RYTYDA4M4AxbwrncuWHTSitsosnkRqmC+UHEyNm3EiL1k/M+QyjiFheEFLstBptDQASDjX4Ic8B/ECmVjwepqtucfweIGaftR5C/McgTzf0nyE+NbDDWrf/0Bi406YDQEBj4EmibOBeeC3IQIvKkZVy4gKwswMDBMXrACkgsG3AEilhXgEOCWsyHXM2Tp+/roCCQERh0w4CEw4IlwwB0wWhuOhsBoCAxoo/Q/wzNGaLN8DgMDgxhdm+UgyxkYMgAjmNy/ZTS38QAAAABJRU5ErkJggg==';\nexports.en = 'data:image/png;base64,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';\nexports.default = { no: exports.no, us: exports.us, en: exports.en };\n","\"use strict\";\n// Logic adapted from CKEditor\n// https://github.com/ckeditor/ckeditor5-media-embed\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getVideos = exports.textpart = exports.stripHtml = exports.findImageUrls = exports.findImageUrl = exports.isEmptyHtml = exports.replaceEmbedContent = exports.changeUrlForImages = exports.detectPattern = void 0;\nvar apiUrls_1 = __importDefault(require(\"./apiUrls\"));\n// const oembedRegex = /<\\/oembed>/g;\nvar oembedRegex = /<\\/oembed>/g;\nvar urlRegex = /url=\"([^\"]*)\".*?/;\nvar figureRegex = /
<\\/figure>/g;\nvar imgRegex = //g;\nvar srcRegex = /src=\"([^\"]*)\".*?/;\nvar internalLinkRegex = /]*>(.*?)<\\/a>/g;\nvar stringVariableRegex = /{{(.*?)}}/g;\nvar elementIdRegex = /data-elementid=\"([^\"]*)\".*?/;\nvar tableFigureRegex = /]+class=\"table.*?><\\/figure>/g;\nvar tableRegex = //g;\nvar firstStyleWidthRegex = /style=\"[^\"]*width:([^;]*);\"/;\nvar styleRegex = /style=\"([^\"]*)\"/;\nvar videoProviders = [\n {\n name: 'dailymotion',\n url: /^dailymotion\\.com\\/video\\/(\\w+)/,\n html: function (url) { return '
'\n + \"'\n + '
'; },\n },\n {\n name: 'youtube',\n url: [\n /^youtube\\.com\\/watch\\?v=([\\w-]+)/,\n /^youtube\\.com\\/v\\/([\\w-]+)/,\n /^youtube\\.com\\/embed\\/([\\w-]+)/,\n /^youtu\\.be\\/([\\w-]+)/,\n ],\n html: function (url) { return '
'\n + \"'\n + '
'; },\n },\n {\n name: 'vimeo',\n url: [\n /^vimeo\\.com\\/(\\d+)/,\n /^vimeo\\.com\\/[^/]+\\/[^/]+\\/video\\/(\\d+)/,\n /^vimeo\\.com\\/album\\/[^/]+\\/video\\/(\\d+)/,\n /^vimeo\\.com\\/channels\\/[^/]+\\/(\\d+)/,\n /^vimeo\\.com\\/groups\\/[^/]+\\/videos\\/(\\d+)/,\n /^vimeo\\.com\\/ondemand\\/[^/]+\\/(\\d+)/,\n /^player\\.vimeo\\.com\\/video\\/(\\d+)/,\n ],\n html: function (url) { return '
'\n + \"'\n + '
'; },\n },\n {\n name: 'matterport',\n url: /my\\.matterport\\.com\\/show\\/\\?m=(\\w+)/,\n html: function (url) { return '
'\n + \"'\n + '
'; },\n },\n // {\n // name: 'spotify',\n // url: [\n // /^open\\.spotify\\.com\\/(artist\\/\\w+)/,\n // /^open\\.spotify\\.com\\/(album\\/\\w+)/,\n // /^open\\.spotify\\.com\\/(track\\/\\w+)/,\n // ],\n // html: url => '
'\n // + `'\n // + '
'\n // ,\n // },\n // {\n // name: 'instagram',\n // url: /^instagram\\.com\\/p\\/(\\w+)/,\n // },\n // {\n // name: 'twitter',\n // url: /^twitter\\.com/,\n // },\n // {\n // name: 'googleMaps',\n // url: /^google\\.com\\/maps/,\n // },\n // {\n // name: 'flickr',\n // url: /^flickr\\.com/,\n // },\n // {\n // name: 'facebook',\n // url: /^facebook\\.com/,\n // },\n];\n/**\n * Tries to match `url` to `pattern`.\n *\n * @param {String} url The URL of the media.\n * @param {RegExp} pattern The pattern that should accept the media URL.\n * @returns {Array|null}\n */\nvar getUrlMatches = function (url, pattern) {\n // 1. Try to match without stripping the protocol and \"www\" subdomain.\n var match = url.match(pattern);\n if (match) {\n return match;\n }\n // 2. Try to match after stripping the protocol.\n var rawUrl = url.replace(/^https?:\\/\\//, '');\n match = rawUrl.match(pattern);\n if (match) {\n return match;\n }\n // 3. Try to match after stripping the \"www\" subdomain.\n rawUrl = rawUrl.replace(/^www\\./, '');\n match = rawUrl.match(pattern);\n if (match) {\n return match;\n }\n return null;\n};\nvar detectPattern = function (patterns, url) {\n for (var i = 0; i < patterns.length; i++) {\n var match = getUrlMatches(url, patterns[i]);\n if (match) {\n return match;\n }\n }\n return null;\n};\nexports.detectPattern = detectPattern;\nvar replaceVideo = function (html) {\n var match = html.match(oembedRegex);\n if (!match) {\n return html;\n }\n var replaced = html;\n for (var m = 0; m < match.length; m++) {\n var urlMatch = match[m].match(urlRegex);\n var url = urlMatch === null || urlMatch === void 0 ? void 0 : urlMatch[1].trim();\n if (url) {\n for (var i = 0; i < videoProviders.length; i++) {\n var pattern = videoProviders[i].url;\n if (!Array.isArray(pattern)) {\n pattern = [pattern];\n }\n var patternMatch = (0, exports.detectPattern)(pattern, url);\n if (patternMatch === null || patternMatch === void 0 ? void 0 : patternMatch[1]) {\n replaced = replaced.replace(match[m], videoProviders[i].html(patternMatch[1]));\n }\n }\n }\n }\n return replaced;\n};\nvar addNoContextMenu = function (html) {\n var match = html.match(imgRegex);\n if (!match) {\n return html;\n }\n var replaced = html;\n for (var m = 0; m < match.length; m++) {\n var withNoContext = match[m].replace(' -1 ? '&' : '?';\n var withAppId = match[m].replace(urlMatch[1], \"\".concat(urlMatch[1]).concat(ampOrQuestion, \"xAppId=\").concat(appId));\n replaced = replaced.replace(match[m], withAppId);\n }\n }\n return replaced;\n};\nvar changeUrlForImages = function (html) {\n var match = html.match(imgRegex);\n if (!match) {\n return html;\n }\n var replaced = html;\n for (var m = 0; m < match.length; m++) {\n var urlMatch = match[m].match(srcRegex);\n if (urlMatch === null || urlMatch === void 0 ? void 0 : urlMatch[1]) {\n var withImageDomain = match[m].replace(\"\".concat(apiUrls_1.default.contentBaseUrl, \"/\").concat(apiUrls_1.default.media.file, \"/\"), \"\".concat(apiUrls_1.default.imageContentBaseUrl, \"/\"));\n replaced = replaced.replace(match[m], withImageDomain);\n }\n }\n return replaced;\n};\nexports.changeUrlForImages = changeUrlForImages;\nvar fixTableWidthLayout = function (html) {\n var match = html.match(tableFigureRegex);\n if (!match) {\n return html;\n }\n var replaced = html;\n for (var m = 0; m < match.length; m++) {\n var figureStyleMatch = match[m].match(firstStyleWidthRegex);\n if (figureStyleMatch) {\n var width = figureStyleMatch[1];\n var tableMatch = match[m].match(tableRegex);\n if (tableMatch) {\n var existingTableStyle = tableMatch[0].match(styleRegex);\n var tableReplaced = match[m].replace(firstStyleWidthRegex, figureStyleMatch[0].replace(\"width:\".concat(width, \";\"), ''));\n if (existingTableStyle) {\n tableReplaced = tableReplaced.replace(existingTableStyle[1], \"\".concat(existingTableStyle[1], \";width:\").concat(width, \";\\\" \"));\n }\n else {\n // match both open and closed table-tag.. rewrite to 1 regex?\n tableReplaced = tableReplaced.replace('', \"
\"));\n }\n replaced = replaced.replace(match[m], tableReplaced);\n }\n }\n }\n return replaced;\n};\nvar replaceInternalLinks = function (html) {\n var _a;\n var match = html.match(internalLinkRegex);\n if (!match) {\n return html;\n }\n var replaced = html;\n for (var m = 0; m < match.length; m++) {\n var idMatch = match[m].match(elementIdRegex);\n if (idMatch) {\n var elementId = (_a = idMatch[1]) === null || _a === void 0 ? void 0 : _a.trim();\n var withAction = match[m].replace(idMatch[0], \"onclick=\\\"__clickInternalLink('\".concat(elementId, \"')\\\"\"));\n replaced = replaced.replace(match[m], withAction);\n }\n }\n return replaced;\n};\nvar replaceStringVariables = function (html) {\n var match = html.match(stringVariableRegex);\n if (!match) {\n return html;\n }\n var replaced = html;\n for (var m = 0; m < match.length; m++) {\n if (window.__getYouwellVariable) {\n var variable = match[m].slice(2, -2);\n replaced = replaced.replace(match[m], \"\".concat(window.__getYouwellVariable(variable)));\n }\n }\n return replaced;\n};\nvar replaceEmbedContent = function (html, addNoContextForImages, xAppId) {\n if (addNoContextForImages === void 0) { addNoContextForImages = false; }\n if (!html)\n return '';\n var replaced = replaceVideo(html);\n if (addNoContextForImages) {\n replaced = addNoContextMenu(html);\n }\n replaced = addAppIdToImages(replaced, xAppId);\n replaced = fixTableWidthLayout(replaced);\n replaced = replaceInternalLinks(replaced);\n replaced = replaceStringVariables(replaced);\n return replaced;\n};\nexports.replaceEmbedContent = replaceEmbedContent;\nvar isEmptyHtml = function (html) { return !html || html.trim() === '

 

'; };\nexports.isEmptyHtml = isEmptyHtml;\nvar findImageUrl = function (html) {\n if (!html) {\n return null;\n }\n var match = html.match(figureRegex);\n if (!match) {\n return null;\n }\n for (var m = 0; m < match.length; m++) {\n var urlMatch = match[m].match(srcRegex);\n if (urlMatch === null || urlMatch === void 0 ? void 0 : urlMatch[1]) {\n return urlMatch[1].trim();\n }\n }\n return null;\n};\nexports.findImageUrl = findImageUrl;\nvar findImageUrls = function (html) {\n if (!html) {\n return null;\n }\n var match = html.match(figureRegex);\n if (!match) {\n return null;\n }\n var urls = [];\n for (var m = 0; m < match.length; m++) {\n var urlMatch = match[m].match(srcRegex);\n if (urlMatch === null || urlMatch === void 0 ? void 0 : urlMatch[1]) {\n urls.push(urlMatch[1].trim());\n }\n }\n return urls;\n};\nexports.findImageUrls = findImageUrls;\nvar stripHtml = function (html, defaultText) {\n if (!html) {\n return defaultText || '';\n }\n var doc = new DOMParser().parseFromString(html, 'text/html');\n return doc.body.textContent || defaultText || '';\n};\nexports.stripHtml = stripHtml;\nvar textpart = function (html, length) {\n var t = (0, exports.stripHtml)(html);\n return length && t.length > length ? \"\".concat(t.slice(0, length), \"...\") : t;\n};\nexports.textpart = textpart;\nvar getVideos = function (html) {\n var match = html && html.match(oembedRegex);\n var videoContent = [];\n if (match) {\n for (var m = 0; m < match.length; m++) {\n var urlMatch = match[m].match(urlRegex);\n var url = urlMatch === null || urlMatch === void 0 ? void 0 : urlMatch[1].trim();\n if (url) {\n for (var i = 0; i < videoProviders.length; i++) {\n var pattern = videoProviders[i].url;\n if (!Array.isArray(pattern)) {\n pattern = [pattern];\n }\n var patternMatch = (0, exports.detectPattern)(pattern, url);\n if (patternMatch === null || patternMatch === void 0 ? void 0 : patternMatch[1]) {\n videoContent.push(videoProviders[i].html(patternMatch[1]));\n }\n }\n }\n }\n }\n return videoContent;\n};\nexports.getVideos = getVideos;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.FileCopyIcon = exports.ReplayIcon = exports.SaveIcon = exports.CancelIcon = exports.EditIcon = exports.CloseIcon = exports.CompletedIcon = exports.NextIcon = exports.PrevIcon = exports.OpenInNewWindowIcon = exports.SeparatorIcon = exports.FowardIcon = exports.ClearIcon = exports.SearchIcon = exports.CheckedIcon = exports.UncheckedIcon = exports.CollapseIcon = exports.ExpandIcon = exports.BackIcon = exports.LogoutIcon = exports.MenuUpIcon = exports.MenuIcon = void 0;\nvar Menu_1 = require(\"@material-ui/icons/Menu\");\nObject.defineProperty(exports, \"MenuIcon\", { enumerable: true, get: function () { return __importDefault(Menu_1).default; } });\nvar KeyboardArrowUp_1 = require(\"@material-ui/icons/KeyboardArrowUp\");\nObject.defineProperty(exports, \"MenuUpIcon\", { enumerable: true, get: function () { return __importDefault(KeyboardArrowUp_1).default; } });\nvar LockOpen_1 = require(\"@material-ui/icons/LockOpen\");\nObject.defineProperty(exports, \"LogoutIcon\", { enumerable: true, get: function () { return __importDefault(LockOpen_1).default; } });\nvar ArrowBack_1 = require(\"@material-ui/icons/ArrowBack\");\nObject.defineProperty(exports, \"BackIcon\", { enumerable: true, get: function () { return __importDefault(ArrowBack_1).default; } });\nvar ExpandMore_1 = require(\"@material-ui/icons/ExpandMore\");\nObject.defineProperty(exports, \"ExpandIcon\", { enumerable: true, get: function () { return __importDefault(ExpandMore_1).default; } });\nvar ExpandLess_1 = require(\"@material-ui/icons/ExpandLess\");\nObject.defineProperty(exports, \"CollapseIcon\", { enumerable: true, get: function () { return __importDefault(ExpandLess_1).default; } });\nvar CheckBoxOutlineBlank_1 = require(\"@material-ui/icons/CheckBoxOutlineBlank\");\nObject.defineProperty(exports, \"UncheckedIcon\", { enumerable: true, get: function () { return __importDefault(CheckBoxOutlineBlank_1).default; } });\nvar CheckBox_1 = require(\"@material-ui/icons/CheckBox\");\nObject.defineProperty(exports, \"CheckedIcon\", { enumerable: true, get: function () { return __importDefault(CheckBox_1).default; } });\nvar Search_1 = require(\"@material-ui/icons/Search\");\nObject.defineProperty(exports, \"SearchIcon\", { enumerable: true, get: function () { return __importDefault(Search_1).default; } });\nvar Clear_1 = require(\"@material-ui/icons/Clear\");\nObject.defineProperty(exports, \"ClearIcon\", { enumerable: true, get: function () { return __importDefault(Clear_1).default; } });\nvar ArrowForward_1 = require(\"@material-ui/icons/ArrowForward\");\nObject.defineProperty(exports, \"FowardIcon\", { enumerable: true, get: function () { return __importDefault(ArrowForward_1).default; } });\nvar KeyboardArrowRight_1 = require(\"@material-ui/icons/KeyboardArrowRight\");\nObject.defineProperty(exports, \"SeparatorIcon\", { enumerable: true, get: function () { return __importDefault(KeyboardArrowRight_1).default; } });\nvar OpenInNew_1 = require(\"@material-ui/icons/OpenInNew\");\nObject.defineProperty(exports, \"OpenInNewWindowIcon\", { enumerable: true, get: function () { return __importDefault(OpenInNew_1).default; } });\nvar KeyboardArrowLeft_1 = require(\"@material-ui/icons/KeyboardArrowLeft\");\nObject.defineProperty(exports, \"PrevIcon\", { enumerable: true, get: function () { return __importDefault(KeyboardArrowLeft_1).default; } });\nvar KeyboardArrowRight_2 = require(\"@material-ui/icons/KeyboardArrowRight\");\nObject.defineProperty(exports, \"NextIcon\", { enumerable: true, get: function () { return __importDefault(KeyboardArrowRight_2).default; } });\nvar Done_1 = require(\"@material-ui/icons/Done\");\nObject.defineProperty(exports, \"CompletedIcon\", { enumerable: true, get: function () { return __importDefault(Done_1).default; } });\nvar Close_1 = require(\"@material-ui/icons/Close\");\nObject.defineProperty(exports, \"CloseIcon\", { enumerable: true, get: function () { return __importDefault(Close_1).default; } });\nvar Edit_1 = require(\"@material-ui/icons/Edit\");\nObject.defineProperty(exports, \"EditIcon\", { enumerable: true, get: function () { return __importDefault(Edit_1).default; } });\nvar Close_2 = require(\"@material-ui/icons/Close\");\nObject.defineProperty(exports, \"CancelIcon\", { enumerable: true, get: function () { return __importDefault(Close_2).default; } });\nvar Save_1 = require(\"@material-ui/icons/Save\");\nObject.defineProperty(exports, \"SaveIcon\", { enumerable: true, get: function () { return __importDefault(Save_1).default; } });\nvar Replay_1 = require(\"@material-ui/icons/Replay\");\nObject.defineProperty(exports, \"ReplayIcon\", { enumerable: true, get: function () { return __importDefault(Replay_1).default; } });\nvar FileCopy_1 = require(\"@material-ui/icons/FileCopy\");\nObject.defineProperty(exports, \"FileCopyIcon\", { enumerable: true, get: function () { return __importDefault(FileCopy_1).default; } });\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.flags = exports.uuid = exports.Auth = exports.useSimpleOffline = exports.useAutosaveForm = exports.AppUtil = exports.useForm = exports.contentUtils = exports.elementStateUtils = exports.responseUtils = exports.numberUtils = exports.tableUtils = exports.reduxUtils = exports.arrayUtils = exports.stringUtils = exports.mediaUpload = exports.errorUtils = exports.ReduxStoreHelper = exports.validationUtils = exports.objectUtils = exports.fetchUtils = exports.dateUtils = exports.constants = void 0;\nvar constants = __importStar(require(\"./constants\"));\nexports.constants = constants;\nvar dateUtils = __importStar(require(\"./dateUtils\"));\nexports.dateUtils = dateUtils;\nvar errorUtils = __importStar(require(\"./errorUtils\"));\nexports.errorUtils = errorUtils;\nvar fetchUtils = __importStar(require(\"./fetchUtils\"));\nexports.fetchUtils = fetchUtils;\nvar objectUtils = __importStar(require(\"./objectUtils\"));\nexports.objectUtils = objectUtils;\nvar validationUtils = __importStar(require(\"./validationUtils\"));\nexports.validationUtils = validationUtils;\nvar ReduxStoreHelper = __importStar(require(\"./ReduxStoreHelper\"));\nexports.ReduxStoreHelper = ReduxStoreHelper;\nvar mediaUpload = __importStar(require(\"./mediaUpload\"));\nexports.mediaUpload = mediaUpload;\nvar stringUtils = __importStar(require(\"./stringUtils\"));\nexports.stringUtils = stringUtils;\nvar arrayUtils = __importStar(require(\"./arrayUtils\"));\nexports.arrayUtils = arrayUtils;\nvar reduxUtils = __importStar(require(\"./reduxUtils\"));\nexports.reduxUtils = reduxUtils;\nvar tableUtils = __importStar(require(\"./tableUtils\"));\nexports.tableUtils = tableUtils;\nvar numberUtils = __importStar(require(\"./numberUtils\"));\nexports.numberUtils = numberUtils;\nvar responseUtils = __importStar(require(\"./responseUtils\"));\nexports.responseUtils = responseUtils;\nvar elementStateUtils = __importStar(require(\"./elementStateUtils\"));\nexports.elementStateUtils = elementStateUtils;\nvar contentUtils = __importStar(require(\"./contentUtils\"));\nexports.contentUtils = contentUtils;\nvar useForm = __importStar(require(\"./useForm\"));\nexports.useForm = useForm;\nvar AppUtil = __importStar(require(\"./AppUtil\"));\nexports.AppUtil = AppUtil;\nvar useAutosaveForm = __importStar(require(\"./useAutosaveForm\"));\nexports.useAutosaveForm = useAutosaveForm;\nvar useSimpleOffline = __importStar(require(\"./useSimpleOffline\"));\nexports.useSimpleOffline = useSimpleOffline;\nvar Auth_1 = require(\"./Auth\");\nObject.defineProperty(exports, \"Auth\", { enumerable: true, get: function () { return __importDefault(Auth_1).default; } });\nvar uuid_1 = require(\"./uuid\");\nObject.defineProperty(exports, \"uuid\", { enumerable: true, get: function () { return __importDefault(uuid_1).default; } });\nvar flags_1 = require(\"./flags\");\nObject.defineProperty(exports, \"flags\", { enumerable: true, get: function () { return __importDefault(flags_1).default; } });\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.uploadPatientFile = exports.uploadFile = exports.parseFileType = exports.getAccept = void 0;\nvar fetchUtils_1 = require(\"./fetchUtils\");\nvar apiUrls_1 = __importDefault(require(\"./apiUrls\"));\nvar constants_1 = require(\"./constants\");\nvar getAccept = function (type) {\n switch (type) {\n case constants_1.fileTypes.image:\n return 'image/jpg,image/jpeg,image/png,image/gif,image/webp';\n case constants_1.fileTypes.audio:\n return 'audio/mp3';\n case constants_1.fileTypes.video:\n return 'video/mp4';\n case constants_1.fileTypes.document:\n return 'application/pdf';\n case 'data':\n return 'application/json';\n default:\n return 'image/webp,image/jpg,image/jpeg,image/png,image/gif,audio/mp3,video/mp4,application/pdf';\n }\n};\nexports.getAccept = getAccept;\nvar parseFileType = function (fileType) {\n if (!fileType) {\n return constants_1.fileTypes.file;\n }\n if (fileType.indexOf('image') >= 0) {\n return constants_1.fileTypes.image;\n }\n if (fileType.indexOf('audio') >= 0) {\n return constants_1.fileTypes.audio;\n }\n if (fileType.indexOf('video') >= 0) {\n return constants_1.fileTypes.video;\n }\n if (fileType.indexOf('application') >= 0) {\n return constants_1.fileTypes.document;\n }\n return constants_1.fileTypes.file;\n};\nexports.parseFileType = parseFileType;\nvar uploadFile = function (file, fileType, config, programId) {\n var type = fileType || (0, exports.parseFileType)(file.type);\n var formData = new FormData();\n formData.append('file', file);\n formData.append('type', type);\n var url = \"\".concat(apiUrls_1.default.baseUrl, \"/\").concat(apiUrls_1.default.portal.media, \"/\").concat(type);\n if (programId)\n url += \"?programId=\".concat(programId);\n var maxUploadSize = ((config === null || config === void 0 ? void 0 : config.maxUploadSizeMB) || 500) * 1024 * 1024; // default 500 MB if not set in config\n var maxNonStreamingSize = ((config === null || config === void 0 ? void 0 : config.maxNonStreamingUploadSizeMB) || 40) * 1024 * 1024; // default 40 MB if not set in config\n if (file.size > maxUploadSize) {\n return Promise.reject(new Error('930'));\n }\n if (file.size > maxNonStreamingSize) {\n // using streaming upload\n formData.append('fileName', file.name);\n formData.append('contentType', file.type);\n formData.append('programId', programId);\n url = \"\".concat(apiUrls_1.default.baseUrl, \"/\").concat(apiUrls_1.default.portal.media);\n }\n return (0, fetchUtils_1.youwellFetch)(url, {\n method: 'POST',\n body: formData,\n })\n .then((0, fetchUtils_1.handleErrors)())\n .then(fetchUtils_1.json)\n .then(function (data) { return Promise.resolve(__assign({}, data)); })\n .catch(function (error) { return Promise.reject(new Error((0, fetchUtils_1.getErrorMessageOrKey)(error))); });\n};\nexports.uploadFile = uploadFile;\nvar uploadPatientFile = function (file, config) {\n var maxUploadSize = ((config === null || config === void 0 ? void 0 : config.maxUploadSizeMB) || 100) * 1024 * 1024; // default 100 MB if not set in config\n if (file.size > maxUploadSize) {\n return Promise.reject(new Error('930'));\n }\n var type = (0, exports.parseFileType)(file.type);\n var formData = new FormData();\n formData.append('file', file);\n formData.append('type', type);\n formData.append('fileName', file.name);\n formData.append('contentType', file.type);\n var url = \"\".concat(apiUrls_1.default.baseUrl, \"/\").concat(apiUrls_1.default.app.media);\n return (0, fetchUtils_1.youwellFetch)(url, {\n method: 'POST',\n body: formData,\n })\n .then((0, fetchUtils_1.handleErrors)())\n .then(fetchUtils_1.json)\n .then(function (data) { return Promise.resolve(data); })\n .catch(function (error) { return Promise.reject(new Error((0, fetchUtils_1.getErrorMessageOrKey)(error))); });\n};\nexports.uploadPatientFile = uploadPatientFile;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getMode = exports.isInBetween = exports.moduloBase1 = void 0;\nvar moduloBase1 = function (number, modulo) {\n var nr = ((number - 1) % modulo) + 1;\n while (nr < 1) {\n nr += modulo;\n }\n return nr;\n};\nexports.moduloBase1 = moduloBase1;\nvar isInBetween = function (score, min, max) {\n if (min !== undefined) {\n if (score < min)\n return false;\n }\n if (max !== undefined) {\n if (score > max)\n return false;\n }\n return true;\n};\nexports.isInBetween = isInBetween;\n// Finds the number(s) in a list with the highest occurence.\n// If several modes are present (bimodal or multimodal) it returns the avg of the numbers.\nvar getMode = function (list) {\n var max = 0;\n var counts = {};\n list.forEach(function (num) {\n counts[num] = counts[num] ? counts[num] + 1 : 1;\n if (counts[num] > max) {\n max = counts[num];\n }\n });\n var modes = Object.keys(counts).filter(function (key) { return counts[key] === max; }).map(Number);\n return modes.length >= 2 ? Math.round(modes.reduce(function (acc, curr) { return acc + curr; }) / modes.length) : modes[0];\n};\nexports.getMode = getMode;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getValueByDotNotation = exports.mergePatchChangesInStore = exports.mergePatchChanges = exports.hasValue = exports.isEmpty = exports.SORT_OPERATOR_PREFIX = void 0;\nexports.SORT_OPERATOR_PREFIX = '__sort[';\nvar isEmpty = function (obj) { return obj === ''\n || obj === null\n || obj === undefined\n || Number.isNaN(obj)\n || (obj.constructor === Object && Object.keys(obj).length === 0)\n || (obj.constructor === Array && obj.length === 0); };\nexports.isEmpty = isEmpty;\nvar hasValue = function (obj) { return !(0, exports.isEmpty)(obj); };\nexports.hasValue = hasValue;\nvar mergePatchChanges = function (data, changes) { return (changes\n ? Object.keys(changes).reduce(function (prev, curr) {\n var _a, _b, _c, _d, _e;\n if (curr.startsWith(exports.SORT_OPERATOR_PREFIX)) {\n var arrayKeyMarker_1 = curr.indexOf('[');\n var sortKeyEnd = curr.indexOf(']', arrayKeyMarker_1);\n var arrayName = curr.substring(arrayKeyMarker_1 + 1, sortKeyEnd);\n var prevArray = (prev[arrayName] || []);\n var orderLookup_1 = changes[curr];\n return __assign(__assign({}, prev), (_a = {}, _a[arrayName] = prevArray.map(function (d) { return (__assign(__assign({}, d), { sorting: orderLookup_1[d.id] })); }).sort(function (a, b) { return a.sorting - b.sorting; }), _a));\n }\n var arrayKeyMarker = curr.indexOf('[');\n if (arrayKeyMarker > -1) {\n var arrayKeySeparator = curr.indexOf(':', arrayKeyMarker);\n var arrayKeyEnd = curr.indexOf(']', arrayKeySeparator);\n var arrayName = curr.substring(0, arrayKeyMarker);\n var arrayKey_1 = curr.substring(arrayKeyMarker + 1, arrayKeySeparator);\n var arrayKeyValue_1 = curr.substring(arrayKeySeparator + 1, arrayKeyEnd);\n var prevArray = (prev[arrayName] || []);\n var index_1 = prevArray.findIndex(function (d) { return d[arrayKey_1].toString() === arrayKeyValue_1; });\n return __assign(__assign({}, prev), (_b = {}, _b[arrayName] = (index_1 > -1\n ? prevArray.map(function (e, i) { return (i === index_1 ? changes[curr] : e); })\n : __spreadArray(__spreadArray([], prevArray, true), [changes[curr]], false))\n .filter(function (d) { return d; }), _b));\n }\n var objectDotIndex = curr.indexOf('.');\n if (objectDotIndex > -1) {\n var key = curr.substring(0, objectDotIndex);\n var subKey = curr.substring(objectDotIndex + 1);\n return __assign(__assign({}, prev), (_c = {}, _c[key] = __assign(__assign({}, prev[key]), (_d = {}, _d[subKey] = changes[curr], _d)), _c));\n }\n return __assign(__assign({}, prev), (_e = {}, _e[curr] = changes[curr], _e));\n }, data !== null && data !== void 0 ? data : {})\n : data); };\nexports.mergePatchChanges = mergePatchChanges;\nvar mergePatchChangesInStore = function (current, changes, update) { return (__assign(__assign({}, (0, exports.mergePatchChanges)(current, changes)), update)); };\nexports.mergePatchChangesInStore = mergePatchChangesInStore;\nvar getValueByDotNotation = function (obj, propName) {\n if (!obj || !propName) {\n return null;\n }\n // @ts-ignore\n return propName.split('.').reduce(function (prev, curr) { return (prev ? prev[curr] : null); }, obj);\n};\nexports.getValueByDotNotation = getValueByDotNotation;\n","import {\n applyMiddleware, combineReducers, compose, createStore,\n} from 'redux';\nimport thunk from 'redux-thunk';\nimport { connectRouter, routerMiddleware } from 'connected-react-router';\n\nconst buildRootReducer = (allReducers, history) => combineReducers({ ...allReducers, router: connectRouter(history) });\n\nexport const updateStore = (store, reducers, history) => {\n store.replaceReducer(buildRootReducer(reducers, history));\n};\n\nexport const configureStore = (reducers, history, initialState) => {\n const composeEnhancers = (typeof window === 'object' && window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__) // eslint-disable-line no-underscore-dangle\n || compose;\n\n const store = createStore(\n buildRootReducer(reducers, history),\n initialState,\n composeEnhancers(\n applyMiddleware(thunk, routerMiddleware(history)),\n ),\n );\n\n return store;\n};\n\nconst stateKey = 'ywa-state';\n\nexport const clearState = () => {\n try {\n localStorage.removeItem(stateKey);\n } catch {\n // ignore write errors\n }\n};\n\nexport const loadState = () => {\n try {\n const serializedState = localStorage.getItem(stateKey);\n if (serializedState === null) {\n return undefined;\n }\n return JSON.parse(serializedState);\n } catch (err) {\n return undefined;\n }\n};\n\nexport const saveState = (state) => {\n try {\n const serializedState = JSON.stringify(state);\n localStorage.setItem(stateKey, serializedState);\n } catch {\n // ignore write errors\n }\n};\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getListFromTableResponses = exports.getTableCellResponse = exports.filterOutFreetextResponses = exports.findResponse = exports.getGetResponseFunc = exports.getUpdatedResponsesForTask = exports.buildResponseLookup = exports.buildResponseFormVm = exports.parseResponseSaveResult = exports.parseInsertedResponse = exports.getResponseHash = exports.calculateSubtotals = exports.calculateResponseScore = void 0;\nvar objectUtils_1 = require(\"./objectUtils\");\nvar constants_1 = require(\"./constants\");\nvar calculateResponseScore = function (response) {\n var _a;\n if (!response) {\n return 0;\n }\n if ((0, objectUtils_1.hasValue)(response.scaleResponse)) {\n return response.scaleResponse || 0;\n }\n if (((_a = response.choiceResponse) === null || _a === void 0 ? void 0 : _a.length) && response.choiceResponse.length > 0) {\n return response.choiceResponse.reduce(function (prev, curr) { return prev + ((curr === null || curr === void 0 ? void 0 : curr.score) || 0); }, 0);\n }\n return 0;\n};\nexports.calculateResponseScore = calculateResponseScore;\nvar getQuestionResponses = function (taskResponses, onlyWithChange) { return (taskResponses ? (Object.entries(taskResponses)\n .filter(function (_a) {\n var currQuestionId = _a[0], respValue = _a[1];\n return currQuestionId && respValue && respValue.response && !respValue.isSubtotal && (respValue.changeKey || !onlyWithChange);\n})\n .map(function (_a) {\n var currQuestionId = _a[0], respValue = _a[1];\n return ({ questionId: Number(currQuestionId), response: respValue.response });\n})) : []); };\nvar calculateSubtotals = function (taskResponses, taskSubtotals) {\n var scoresByQuestionId = getQuestionResponses(taskResponses, false)\n .reduce(function (prev, curr) {\n var _a;\n return (__assign(__assign({}, prev), (_a = {}, _a[curr.questionId || '_err'] = (0, exports.calculateResponseScore)(curr.response), _a)));\n }, {});\n var ret = taskSubtotals.map(function (_a) {\n var taskSubtotalId = _a.id, questionIds = _a.questionIds, calculationType = _a.calculationType;\n var allQuestions = !questionIds || questionIds.length === 0;\n var subTotalSum = allQuestions\n ? Object.values(scoresByQuestionId).reduce(function (sum, score) { return (sum + score); }, 0)\n : questionIds.reduce(function (sum, questionId) { return sum + (scoresByQuestionId[questionId] || 0); }, 0);\n var score = subTotalSum;\n switch (calculationType) {\n case constants_1.subtotalCalculationTypes.sum:\n break;\n case constants_1.subtotalCalculationTypes.average:\n score = subTotalSum / (allQuestions ? Object.keys(scoresByQuestionId).length : questionIds.length);\n break;\n default:\n break;\n }\n return {\n taskSubtotalId: taskSubtotalId,\n response: { scaleResponse: score },\n };\n });\n return ret;\n};\nexports.calculateSubtotals = calculateSubtotals;\nvar getResponseHash = function (response) { return (response ? JSON.stringify({\n f: response.freetextResponse,\n c: response.choiceResponse,\n s: response.scaleResponse,\n t: response.tableResponses,\n}) : null); };\nexports.getResponseHash = getResponseHash;\nvar reduceResponsesForTask = function (newResponses, currentResponseList, taskId, taskVersion, patientProgramElementId, formId, formSubmitted) {\n var _a, _b;\n var _c;\n if (formSubmitted === void 0) { formSubmitted = null; }\n if (!(newResponses === null || newResponses === void 0 ? void 0 : newResponses.length) && !formSubmitted) {\n return currentResponseList || {};\n }\n var existingResponsesForElement = (currentResponseList && currentResponseList[patientProgramElementId]) || {};\n var newModuleResponses = newResponses === null || newResponses === void 0 ? void 0 : newResponses.filter(function (d) { return d.moduleSubtotalId; });\n var filteredNewResponses = newResponses === null || newResponses === void 0 ? void 0 : newResponses.filter(function (d) { return !d.moduleSubtotalId; });\n if (newModuleResponses) {\n newModuleResponses.forEach(function (newModuleRespons) {\n var _a;\n var p = Object.values(existingResponsesForElement).find(function (d) { return newModuleRespons.moduleSubtotalId && d[newModuleRespons.moduleSubtotalId]; });\n if (p && newModuleRespons.moduleSubtotalId) {\n // Update existing respons instead of adding new (could have different taskId!)\n existingResponsesForElement[p.taskId] = __assign(__assign({}, existingResponsesForElement[p.taskId]), (_a = {}, _a[newModuleRespons.moduleSubtotalId] = __assign(__assign({}, p[newModuleRespons.moduleSubtotalId]), { response: newModuleRespons.response }), _a));\n }\n else {\n filteredNewResponses.push(newModuleRespons);\n }\n });\n }\n var existingResponsesForTask = __assign(__assign({}, existingResponsesForElement[taskId]), { patientProgramElementId: patientProgramElementId, taskId: taskId, formId: formId, taskVersion: taskVersion, submitted: formSubmitted || ((_c = existingResponsesForElement[taskId]) === null || _c === void 0 ? void 0 : _c.submitted) });\n return __assign(__assign({}, currentResponseList), (_a = {}, _a[patientProgramElementId] = __assign(__assign({}, existingResponsesForElement), (_b = {}, _b[taskId] = __assign(__assign({}, existingResponsesForTask), filteredNewResponses === null || filteredNewResponses === void 0 ? void 0 : filteredNewResponses.reduce(function (prev, curr) {\n var _a;\n return (__assign(__assign({}, prev), (_a = {}, _a[curr.questionId || curr.taskSubtotalId || curr.moduleSubtotalId || '_err'] = {\n response: curr.response,\n isSubtotal: !!(curr.taskSubtotalId || curr.moduleSubtotalId),\n changeKey: curr.changeKey,\n }, _a)));\n }, {})), _b)), _a));\n};\nvar parseInsertedResponse = function (inputData, subtotals, currentResponses) {\n var patientProgramElementId = inputData.patientProgramElementId, taskId = inputData.taskId, taskVersion = inputData.taskVersion, responses = inputData.responses, formId = inputData.formId;\n var newResponses = responses.map(function (_a) {\n var questionId = _a.questionId, response = __rest(_a, [\"questionId\"]);\n return ({\n changeKey: (0, exports.getResponseHash)(response),\n questionId: questionId,\n response: response,\n });\n });\n var responseList = reduceResponsesForTask(newResponses, currentResponses, taskId, taskVersion, patientProgramElementId, formId);\n if (subtotals.length && responseList[patientProgramElementId] && responseList[patientProgramElementId][taskId]) {\n var newTaskSubtotalResponses = (0, exports.calculateSubtotals)(responseList[patientProgramElementId][taskId], subtotals);\n responseList = reduceResponsesForTask(newTaskSubtotalResponses, responseList, taskId, taskVersion, patientProgramElementId, formId);\n }\n return responseList;\n};\nexports.parseInsertedResponse = parseInsertedResponse;\nvar parseResponseSaveResult = function (inputData, taskVisitResult, currentResponses) {\n var _a = inputData || {}, responses = _a.responses, taskVersion = _a.taskVersion;\n var newResponses = taskVisitResult.newResponses, patientProgramElementId = taskVisitResult.patientProgramElementId, taskId = taskVisitResult.taskId, formId = taskVisitResult.formId, formSubmitted = taskVisitResult.formSubmitted;\n var savedResponses = responses === null || responses === void 0 ? void 0 : responses.map(function (_a) {\n var questionId = _a.questionId, response = __rest(_a, [\"questionId\"]);\n return ({\n changeKey: null,\n questionId: questionId,\n response: response,\n });\n }).filter(function (d) {\n var _a;\n if (!currentResponses || !currentResponses[patientProgramElementId] || !currentResponses[patientProgramElementId][taskId]\n || (d.questionId && !((_a = currentResponses[patientProgramElementId][taskId][d.questionId]) === null || _a === void 0 ? void 0 : _a.response))) {\n return true;\n }\n if (d.questionId && currentResponses[patientProgramElementId][taskId][d.questionId].changeKey === (0, exports.getResponseHash)(d.response)) {\n return true;\n }\n return false;\n }).concat(newResponses || []);\n return reduceResponsesForTask(savedResponses, currentResponses, taskId, taskVersion, patientProgramElementId, formId, formSubmitted);\n};\nexports.parseResponseSaveResult = parseResponseSaveResult;\nvar buildResponseFormVm = function (form) {\n var _a;\n var formProps = __assign({}, form);\n delete formProps.responses; // remove responses-list from props -> this is spread out on [questionId]\n var formVm = __assign(__assign({}, formProps), (_a = form.responses) === null || _a === void 0 ? void 0 : _a.reduce(function (rPrev, rCurr) {\n var _a;\n return (__assign(__assign({}, rPrev), (_a = {}, _a[rCurr.questionId || rCurr.taskSubtotalId || rCurr.moduleSubtotalId || '_err'] = {\n // could remove \"response\" prop and decompose all subProps directly. But must remove .response references a lot of places..\n response: rCurr.response,\n isSubtotal: !!(rCurr.taskSubtotalId || rCurr.moduleSubtotalId),\n }, _a)));\n }, {}));\n return formVm;\n};\nexports.buildResponseFormVm = buildResponseFormVm;\nvar buildResponseLookup = function (responseList, existingResponseList) { return (responseList === null || responseList === void 0 ? void 0 : responseList.reduce(function (prev, form) {\n var _a, _b;\n var formVm = (0, exports.buildResponseFormVm)(form);\n return __assign(__assign({}, prev), (_a = {}, _a[form.patientProgramElementId] = __assign(__assign({}, prev[form.patientProgramElementId]), (_b = {}, _b[form.taskId] = formVm, _b)), _a));\n}, existingResponseList || {})) || existingResponseList || {}; };\nexports.buildResponseLookup = buildResponseLookup;\nvar getUpdatedResponsesForTask = function (taskResponses, patientProgramElementId, taskId, taskVersion, formId, submitForm) {\n if (!taskResponses && !submitForm) {\n return null;\n }\n var updatedResponsesForTask = getQuestionResponses(taskResponses, true)\n .reduce(function (prev, curr) { return (__spreadArray(__spreadArray([], prev, true), [__assign({ questionId: Number(curr.questionId) }, __assign({}, curr.response))], false)); }, []);\n if (updatedResponsesForTask.length || submitForm) {\n var responseData = {\n patientProgramElementId: patientProgramElementId,\n taskId: taskId,\n taskVersion: taskVersion,\n formId: formId,\n responses: updatedResponsesForTask,\n submit: submitForm,\n };\n return responseData;\n }\n return null;\n};\nexports.getUpdatedResponsesForTask = getUpdatedResponsesForTask;\nvar getGetResponseFunc = function (existingResponseList, currentTaskResponse, patientProgramElementId) { return function (taskId, subtotalId, searchInAllResponses) {\n var _a;\n if ((currentTaskResponse === null || currentTaskResponse === void 0 ? void 0 : currentTaskResponse.taskId) === taskId && (!patientProgramElementId || (currentTaskResponse === null || currentTaskResponse === void 0 ? void 0 : currentTaskResponse.patientProgramElementId) === patientProgramElementId)) {\n return currentTaskResponse;\n }\n if (!existingResponseList) {\n return null;\n }\n // if ppeId is specified, only look in responses for specified PatientProgramElement\n // responsesToLookup is of type: Record\n var responsesToLookup = patientProgramElementId && !searchInAllResponses ? [(_a = existingResponseList[patientProgramElementId]) !== null && _a !== void 0 ? _a : []] : Object.values(existingResponseList);\n if (subtotalId) {\n return responsesToLookup.reduce(function (prevPpe, currPpe) { return prevPpe\n || Object.values(currPpe).reduce(function (prevTask, taskResponse) { return prevTask\n || ((taskResponse === null || taskResponse === void 0 ? void 0 : taskResponse[subtotalId]) ? taskResponse : null); }, null); }, null);\n }\n return responsesToLookup.reduce(function (prevPpe, currPpe) { return prevPpe\n || Object.values(currPpe).reduce(function (prevTask, taskResponse) { return prevTask\n || ((taskResponse === null || taskResponse === void 0 ? void 0 : taskResponse.taskId) === taskId ? taskResponse : null); }, null); }, null);\n}; };\nexports.getGetResponseFunc = getGetResponseFunc;\nvar findResponse = function (taskResponses, taskId, questionId) {\n if (taskResponses && taskId && questionId) {\n var currentTaskResponses = (0, exports.getGetResponseFunc)(taskResponses)(taskId);\n return currentTaskResponses && currentTaskResponses[questionId] ? currentTaskResponses[questionId].response : null;\n }\n return null;\n};\nexports.findResponse = findResponse;\nvar filterOutFreetextResponses = function (patientProgramTaskResponse) {\n var _a;\n return patientProgramTaskResponse && __assign(__assign({}, patientProgramTaskResponse), { responses: (_a = patientProgramTaskResponse.responses) === null || _a === void 0 ? void 0 : _a.map(function (r) { return ({\n questionId: r.questionId,\n scaleResponse: r.scaleResponse,\n }); }).filter(function (r) { return (0, objectUtils_1.hasValue)(r.scaleResponse); }) });\n};\nexports.filterOutFreetextResponses = filterOutFreetextResponses;\nvar getTableCellResponse = function (tableResponse, rowIndex, cellIndex, questionKeyOrIndex) {\n var _a;\n var cellJson = (_a = tableResponse === null || tableResponse === void 0 ? void 0 : tableResponse[rowIndex]) === null || _a === void 0 ? void 0 : _a[cellIndex];\n var cellObject = cellJson ? JSON.parse(cellJson) : null;\n return cellObject === null || cellObject === void 0 ? void 0 : cellObject[questionKeyOrIndex];\n};\nexports.getTableCellResponse = getTableCellResponse;\nvar getListFromTableResponses = function (tableResponses, singleQuestionInCell) { return tableResponses === null || tableResponses === void 0 ? void 0 : tableResponses.flatMap(function (r) { return r.map(function (c) {\n var respObj = c ? JSON.parse(c) : null;\n if (respObj && singleQuestionInCell) {\n return respObj[0]; // respObj is not an array but a single question has propertyName = 0\n }\n return respObj;\n}); }); };\nexports.getListFromTableResponses = getListFromTableResponses;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar _a;\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.clearErrors = exports.setRequestStatus = exports.RequestStatusSlice = void 0;\nvar toolkit_1 = require(\"@reduxjs/toolkit\");\nvar initialState = {\n loading: false,\n requests: {},\n errors: [],\n};\nexports.RequestStatusSlice = (0, toolkit_1.createSlice)({\n name: 'RequestStatusSlice',\n initialState: initialState,\n reducers: {\n setRequestStatus: function (state, action) {\n state.requests[action.payload.requestId] = __assign({}, action.payload);\n var errors = Object.values(state.requests).reduce(function (prev, curr) {\n var _a, _b;\n if (curr.error && !curr.background) {\n return __spreadArray(__spreadArray([], prev, true), [((_b = (_a = curr.error.errorCode) === null || _a === void 0 ? void 0 : _a.toString()) !== null && _b !== void 0 ? _b : curr.error.message)], false);\n }\n return prev;\n }, []);\n state.errors = errors;\n state.loading = Object.values(state.requests).reduce(function (prev, curr) { return prev || (curr.loading && !curr.background); }, false);\n },\n clearErrors: function (state) {\n state.errors = [];\n state.requests = state.requests ? Object.keys(state.requests).reduce(function (prev, curr) {\n var _a;\n return (__assign(__assign({}, prev), (_a = {}, _a[curr] = __assign(__assign({}, state.requests[curr]), { error: null }), _a)));\n }, {}) : {};\n },\n },\n});\nexports.setRequestStatus = (_a = exports.RequestStatusSlice.actions, _a.setRequestStatus), exports.clearErrors = _a.clearErrors;\nexports.default = exports.RequestStatusSlice.reducer;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.fetchFromYouwellApi = void 0;\nvar connected_react_router_1 = require(\"connected-react-router\");\nvar apiUrls_1 = __importDefault(require(\"../apiUrls\"));\nvar fetchUtils_1 = require(\"../fetchUtils\");\nvar RequestStatusStore_1 = require(\"./RequestStatusStore\");\nfunction handleOptions(dispatch, data, options) {\n if (!options) {\n return;\n }\n if (options.callback) {\n options.callback(data);\n }\n if (options.redirectWithElementId) {\n dispatch((0, connected_react_router_1.push)(\"\".concat(options.redirectWithElementId, \"/\").concat(data === null || data === void 0 ? void 0 : data.id)));\n }\n else if (options.redirect) {\n dispatch((0, connected_react_router_1.push)(options.redirect));\n }\n else if (options.redirectExternal) {\n window.location.href = options.redirectExternal;\n }\n}\nfunction handleErrorOptions(dispatch, options) {\n if (!options) {\n return;\n }\n if (options.errorCallback) {\n options.errorCallback();\n }\n if (options.redirectOnError) {\n dispatch((0, connected_react_router_1.push)(options.redirectOnError));\n }\n}\nvar startRequest = function (dispatch, requestId, background) {\n if (background === void 0) { background = false; }\n dispatch((0, RequestStatusStore_1.setRequestStatus)({\n requestId: requestId,\n background: background,\n loading: true,\n completed: false,\n }));\n};\nvar completeRequest = function (dispatch, requestId, background) {\n if (background === void 0) { background = false; }\n dispatch((0, RequestStatusStore_1.setRequestStatus)({\n requestId: requestId,\n background: background,\n loading: false,\n completed: true,\n }));\n};\nvar failRequest = function (dispatch, requestId, error, background) {\n if (background === void 0) { background = false; }\n dispatch((0, RequestStatusStore_1.setRequestStatus)({\n requestId: requestId,\n background: background,\n loading: false,\n completed: false,\n error: error,\n }));\n};\n// eslint-disable-next-line import/prefer-default-export\nfunction fetchFromYouwellApi(dispatch, requestOptions, options) {\n var method = requestOptions.method || 'GET';\n var baseUrl = (options === null || options === void 0 ? void 0 : options.baseUrl) || apiUrls_1.default.baseUrl;\n var requestId = \"\".concat((options === null || options === void 0 ? void 0 : options.background) ? 'b_' : '').concat(method, \":\").concat(requestOptions.apiPath);\n var requestBody = method === 'DELETE' || method === 'GET' ? undefined : requestOptions.body ? JSON.stringify(requestOptions.body) : undefined;\n startRequest(dispatch, requestId, options === null || options === void 0 ? void 0 : options.background);\n (0, fetchUtils_1.youwellFetch)(\"\".concat(baseUrl, \"/\").concat(requestOptions.apiPath).concat((0, fetchUtils_1.mapToQueryString)(requestOptions.queryParams)), {\n headers: __assign({}, fetchUtils_1.jsonHeader),\n method: method,\n body: requestBody,\n })\n .then((0, fetchUtils_1.handleErrors)(dispatch))\n .then(fetchUtils_1.json)\n .then(function (data) {\n completeRequest(dispatch, requestId, options === null || options === void 0 ? void 0 : options.background);\n if (requestOptions.dataAction) {\n dispatch(requestOptions.dataAction({ response: data || null, requestBody: requestOptions.body || null, requestQuery: requestOptions.queryParams || null }));\n }\n handleOptions(dispatch, data, options);\n })\n .catch(function (error) {\n failRequest(dispatch, requestId, error, options === null || options === void 0 ? void 0 : options.background);\n handleErrorOptions(dispatch, options);\n });\n}\nexports.fetchFromYouwellApi = fetchFromYouwellApi;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getPercentStringFromDecimal = exports.getInitials = exports.parseBoolString = exports.trimDown = exports.generateRandomString = exports.caseInsensitiveContains = exports.firstLetterUp = exports.trimIfString = exports.isNullOrUndefined = exports.listFromCommaStrings = exports.listFromNewLineStrings = exports.commaStringsFromList = exports.newLineStringsFromList = void 0;\nvar htmlUtils_1 = require(\"./htmlUtils\");\nvar newLineStringsFromList = function (list) { return (list ? list.reduce(function (prev, curr) { return (prev ? \"\".concat(prev, \"\\r\\n\").concat(curr) : curr); }, '') : ''); };\nexports.newLineStringsFromList = newLineStringsFromList;\nvar commaStringsFromList = function (list) { return (list ? list.reduce(function (prev, curr) { return (prev ? \"\".concat(prev, \", \").concat(curr) : curr); }, '') : ''); };\nexports.commaStringsFromList = commaStringsFromList;\nvar listFromNewLineStrings = function (string) { return (string ? string.split(/[\\r\\n]+/).map(function (d) { return d.trim(); }) : []); };\nexports.listFromNewLineStrings = listFromNewLineStrings;\nvar listFromCommaStrings = function (string, defaultValue) {\n if (defaultValue === void 0) { defaultValue = []; }\n return (string ? string.split(',').map(function (d) { return d.trim(); }) : defaultValue);\n};\nexports.listFromCommaStrings = listFromCommaStrings;\nvar isNullOrUndefined = function (string) { return !string || string === '' || string === 'null' || string === 'undefined'; };\nexports.isNullOrUndefined = isNullOrUndefined;\nvar trimIfString = function (obj) {\n if (typeof obj === 'string' || obj instanceof String) {\n if ((0, htmlUtils_1.isEmptyHtml)(obj)) {\n return undefined;\n }\n return obj.trim();\n }\n return obj;\n};\nexports.trimIfString = trimIfString;\nvar firstLetterUp = function (string) { return (string ? string.charAt(0).toUpperCase() + string.slice(1) : undefined); };\nexports.firstLetterUp = firstLetterUp;\nvar caseInsensitiveContains = function (inputString, searchString) { return !!inputString && inputString.toLowerCase().indexOf(searchString) > -1; };\nexports.caseInsensitiveContains = caseInsensitiveContains;\nvar generateRandomString = function (length) {\n if (length === void 0) { length = 8; }\n return (+new Date() + Math.random().toString(36)).slice(-length);\n};\nexports.generateRandomString = generateRandomString;\nvar trimDown = function (str, maxLength) { return (str.length > maxLength ? \"\".concat(str.slice(0, maxLength), \"...\") : str); };\nexports.trimDown = trimDown;\nvar parseBoolString = function (str) {\n if (!str)\n return false;\n if (str === true)\n return true;\n var lowerStr = str.toLowerCase();\n return lowerStr === 'true' || lowerStr === '1';\n};\nexports.parseBoolString = parseBoolString;\nvar getInitials = function (name, maxLength) {\n if (maxLength === void 0) { maxLength = 3; }\n if (!name)\n return '';\n var aplhanumName = name.replace(/[^A-Za-z0-9]s/g, '');\n var alphanumNameSplit = aplhanumName.split(' ');\n return alphanumNameSplit.map(function (word, index) { var _a; return (index < maxLength ? (_a = word === null || word === void 0 ? void 0 : word[0]) === null || _a === void 0 ? void 0 : _a.toUpperCase() : ''); }).join('');\n};\nexports.getInitials = getInitials;\nvar getPercentStringFromDecimal = function (decimal) { return \"\".concat(Math.round(decimal * 100), \"%\"); };\nexports.getPercentStringFromDecimal = getPercentStringFromDecimal;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getDefaultShadows = exports.getDefaultBorders = exports.defaultPalette = void 0;\n// Important rules for custom color-palette\n// Primary and Secondary should have at least 4.5 contrast ratio to eachother\nexports.defaultPalette = {\n primary: '#06244B',\n secondary: '#0AA3A3',\n highlight: '#FFCD00',\n hover: '#09838D',\n defaultBackground: '#F1F8F8',\n secondaryBackground: '#C3E7E7',\n // common\n inputBackground: '#ffffff',\n white: '#ffffff',\n grayDark: '#626262',\n grayMiddle: '#A9A8A8',\n grayLight: '#D3D1CF',\n black: '#000000',\n red: '#CB333C',\n redLight: '#ED8E93',\n green: '#00C19F',\n greenLight: '#D0ECEC',\n hightScore: '#93C90E',\n midScore: '#003087',\n lowScore: '#87189D',\n yellow: '#FFC845',\n};\nvar getDefaultBorders = function (palette) { return ({\n normal: \"1px solid \".concat(palette.grayMiddle),\n dim: \"1px solid \".concat(palette.grayLight),\n transparent: '1px solid transparent',\n medium: \"4px solid \".concat(palette.grayMiddle),\n large: \"8px solid \".concat(palette.grayMiddle),\n primary: \"2px solid \".concat(palette.primary),\n secondary: \"2px solid \".concat(palette.secondary),\n hover: \"2px solid \".concat(palette.hover),\n dotted: \"2px dotted \".concat(palette.secondary),\n inputBox: \"1px solid \".concat(palette.secondary),\n error: \"1px solid \".concat(palette.red),\n}); };\nexports.getDefaultBorders = getDefaultBorders;\nvar getDefaultShadows = function (_palette) { return ({\n default: '-5px -5px 10px #FFFFFF, 5px 5px 10px #BDD8D8, 10px 10px 20px rgba(189, 216, 216, 0.5), -10px -10px 20px rgba(255, 255, 255, 0.5)',\n button: '2px 2px 4px rgba(0, 0, 0, 0.25))',\n}); };\nexports.getDefaultShadows = getDefaultShadows;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.sortByColumn = exports.getValueByDotNotation = exports.toggleSortDirection = void 0;\nvar constants_1 = require(\"./constants\");\nvar defaultSortValue = function (dataType) {\n switch (dataType) {\n case constants_1.sortDataType.date:\n return new Date(0).getTime();\n default:\n return '';\n }\n};\nvar toggleSortDirection = function (current) { return (!current || current === constants_1.sortDirection.desc ? constants_1.sortDirection.asc : constants_1.sortDirection.desc); };\nexports.toggleSortDirection = toggleSortDirection;\nvar getValueByDotNotation = function (obj, propName, dataType) {\n if (!obj || !propName) {\n return defaultSortValue(dataType);\n }\n // @ts-ignore\n return propName.split('.').reduce(function (prev, curr) { return (prev ? prev[curr] || defaultSortValue(dataType) : defaultSortValue(dataType)); }, obj);\n};\nexports.getValueByDotNotation = getValueByDotNotation;\nvar sortCompNumber = function (a, b, sorting) { return (0, exports.getValueByDotNotation)(sorting.direction === constants_1.sortDirection.asc ? a : b, sorting.columnName, sorting.dataType) - (0, exports.getValueByDotNotation)(sorting.direction === constants_1.sortDirection.asc ? b : a, sorting.columnName, sorting.dataType); };\nvar sortCompList = function (a, b, sorting) { return (0, exports.getValueByDotNotation)(sorting.direction === constants_1.sortDirection.asc ? a : b, sorting.columnName, sorting.dataType).join(',').localeCompare((0, exports.getValueByDotNotation)(sorting.direction === constants_1.sortDirection.asc ? b : a, sorting.columnName, sorting.dataType).join(',')); };\nvar sortCompString = function (a, b, sorting) { return (0, exports.getValueByDotNotation)(sorting.direction === constants_1.sortDirection.asc ? a : b, sorting.columnName, sorting.dataType).localeCompare((0, exports.getValueByDotNotation)(sorting.direction === constants_1.sortDirection.asc ? b : a, sorting.columnName, sorting.dataType)); };\nvar sortCompDate = function (a, b, sorting) { return new Date((0, exports.getValueByDotNotation)(sorting.direction === constants_1.sortDirection.asc ? b : a, sorting.columnName, sorting.dataType)).getTime() - new Date((0, exports.getValueByDotNotation)(sorting.direction === constants_1.sortDirection.asc ? a : b, sorting.columnName, sorting.dataType)).getTime(); };\nvar sortByColumn = function (array, sorting) {\n if (!array || !sorting) {\n return array || [];\n }\n switch (sorting.dataType) {\n case constants_1.sortDataType.date:\n return array.sort(function (a, b) { return sortCompDate(a, b, sorting); });\n case constants_1.sortDataType.number:\n return array.sort(function (a, b) { return sortCompNumber(a, b, sorting); });\n case constants_1.sortDataType.list:\n return array.sort(function (a, b) { return sortCompList(a, b, sorting); });\n default:\n return array.sort(function (a, b) { return sortCompString(a, b, sorting); });\n }\n};\nexports.sortByColumn = sortByColumn;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.emptyGetResponsesFunction = exports.emptyProgramItemFunction = exports.useYouwellCommonSelector = void 0;\nvar react_redux_1 = require(\"react-redux\");\nexports.useYouwellCommonSelector = react_redux_1.useSelector;\nvar emptyProgramItemFunction = function () { return null; };\nexports.emptyProgramItemFunction = emptyProgramItemFunction;\nvar emptyGetResponsesFunction = function () { return null; };\nexports.emptyGetResponsesFunction = emptyGetResponsesFunction;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AUTOSAVE_TIMEOUT_INTERVAL = void 0;\nvar react_1 = require(\"react\");\nvar objectUtils_1 = require(\"./objectUtils\");\nexports.AUTOSAVE_TIMEOUT_INTERVAL = 1000; // miliseconds\nfunction useAutosaveForm(onSaveValues, defaultValues, currentValues) {\n var saveTimer = (0, react_1.useRef)();\n var _a = (0, react_1.useState)(null), changeId = _a[0], setChangeId = _a[1];\n // Must keep constant copy of defaultValues so this should not update\n // eslint-disable-next-line react-hooks/exhaustive-deps\n var initialValues = (0, react_1.useMemo)(function () { return (__assign({}, defaultValues)); }, []);\n var _b = (0, react_1.useState)(__assign({}, initialValues)), values = _b[0], setValues = _b[1];\n var updateValues = function (updatedValues) {\n setValues(function (prevValues) { return (__assign(__assign({}, prevValues), updatedValues)); });\n setChangeId(Date.now());\n };\n var handleChange = function (name) { return function (event) {\n var _a;\n updateValues((_a = {}, _a[name] = event.target.value, _a));\n }; };\n var handleValueChange = function (name) { return function (value) {\n var _a;\n updateValues((_a = {}, _a[name] = value, _a));\n }; };\n var handleSliderChange = function (name) { return function (_event, value) {\n var _a;\n updateValues((_a = {}, _a[name] = value, _a));\n }; };\n var handleMultiSelectChange = function (name, answer) { return function (_event, checked) {\n var _a;\n var responses = (values[name] || []).filter(function (d) { return d !== answer; });\n var value = checked ? __spreadArray(__spreadArray([], responses, true), [answer], false) : responses;\n updateValues((_a = {}, _a[name] = value, _a));\n }; };\n var handleNumberChange = function (name) { return function (event) {\n var _a;\n updateValues((_a = {}, _a[name] = Number(event.target.value), _a));\n }; };\n var saveResponses = (0, react_1.useCallback)(function (updatedValues, callback, background) {\n if (changeId) {\n var internalCallback = function () {\n setChangeId(function (prevId) { return (prevId === changeId ? null : prevId); });\n if (callback) {\n callback();\n }\n };\n onSaveValues(updatedValues, internalCallback, background);\n }\n }, [changeId, onSaveValues]);\n var ensureSaved = function (callback) {\n if (changeId) {\n if (saveTimer.current) {\n clearTimeout(saveTimer.current);\n }\n saveResponses(values, callback);\n }\n else if (callback) {\n callback();\n }\n };\n (0, react_1.useEffect)(function () {\n if (changeId) {\n if (saveTimer.current) {\n clearTimeout(saveTimer.current);\n }\n saveTimer.current = setTimeout(function () {\n saveResponses(values, null, true);\n }, exports.AUTOSAVE_TIMEOUT_INTERVAL);\n }\n }, [changeId, saveResponses, values]);\n (0, react_1.useEffect)(function () {\n if (!changeId) {\n if (currentValues) {\n var valuesToSet_1 = Object.keys(currentValues)\n .reduce(function (obj, key) {\n var _a;\n return ((0, objectUtils_1.hasValue)(currentValues[key]) ? __assign(__assign({}, obj), (_a = {}, _a[key] = currentValues[key], _a)) : obj);\n }, {});\n setValues(function (prev) { return (__assign(__assign({}, prev), valuesToSet_1)); });\n }\n else {\n setValues(__assign({}, initialValues));\n }\n }\n }, [currentValues, changeId, initialValues]);\n return {\n values: values,\n handleChange: handleChange,\n handleValueChange: handleValueChange,\n handleNumberChange: handleNumberChange,\n handleMultiSelectChange: handleMultiSelectChange,\n handleSliderChange: handleSliderChange,\n ensureSaved: ensureSaved,\n };\n}\nexports.default = useAutosaveForm;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = require(\"react\");\nvar validationUtils_1 = require(\"./validationUtils\");\nvar useForm = function (onSubmit, validators, defaultValues) {\n var _a = (0, react_1.useState)(defaultValues), formValues = _a[0], setValues = _a[1];\n var _b = (0, react_1.useState)({}), validationErrors = _b[0], setValidationErrors = _b[1];\n var _c = (0, react_1.useState)(false), hasErrors = _c[0], setHasErrors = _c[1];\n var _d = (0, react_1.useState)(false), shouldValidate = _d[0], setShouldValidate = _d[1];\n var _e = (0, react_1.useState)(false), hasUnsavedChanges = _e[0], setHasUnsavedChanges = _e[1];\n (0, react_1.useEffect)(function () {\n setHasErrors((0, validationUtils_1.checkHasErrors)(validationErrors));\n }, [validationErrors]);\n var resetForm = function () {\n setHasUnsavedChanges(false);\n setValues(defaultValues);\n setValidationErrors({});\n setShouldValidate(false);\n };\n var handleSubmit = function (event) {\n if (event) {\n event.preventDefault();\n event.stopPropagation();\n }\n var currentErrors = (0, validationUtils_1.validateAllFields)(formValues, validators);\n if (!(0, validationUtils_1.checkHasErrors)(currentErrors)) {\n onSubmit({ formValues: formValues, resetFormCallback: resetForm, setAllChangesSaved: function () { return setHasUnsavedChanges(false); } });\n }\n setValidationErrors(currentErrors);\n setShouldValidate(true);\n };\n var handleValueChange = function (name, value) {\n var _a;\n var _b;\n setValues(function (prevValues) {\n var _a;\n return (__assign(__assign({}, prevValues), (_a = {}, _a[name] = value, _a)));\n });\n setHasUnsavedChanges(true);\n if (shouldValidate) {\n var err_1 = (0, validationUtils_1.validateField)(__assign(__assign({}, formValues), (_a = {}, _a[name] = value, _a)), (_b = validators[name]) !== null && _b !== void 0 ? _b : null, name);\n setValidationErrors(function (prevErrors) {\n var _a;\n return (__assign(__assign({}, prevErrors), (_a = {}, _a[name] = err_1, _a)));\n });\n }\n };\n var handleChange = function (name) { return function (event) {\n handleValueChange(name, event.target.value);\n }; };\n var handleCheckedChange = function (name) { return function (event) {\n handleValueChange(name, event.target.checked);\n }; };\n return {\n handleValueChange: handleValueChange,\n handleChange: handleChange,\n handleCheckedChange: handleCheckedChange,\n handleSubmit: handleSubmit,\n formValues: formValues,\n validationErrors: validationErrors,\n hasErrors: hasErrors,\n hasUnsavedChanges: hasUnsavedChanges,\n resetForm: resetForm,\n };\n};\nexports.default = useForm;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = require(\"react\");\nvar useSimpleOffline = function () {\n var _a = (0, react_1.useState)(!navigator.onLine), isOffline = _a[0], setIsOffline = _a[1];\n (0, react_1.useEffect)(function () {\n var onOffline = function () { setIsOffline(true); };\n var onOnline = function () { setIsOffline(false); };\n window.addEventListener('online', onOnline);\n window.addEventListener('offline', onOffline);\n return function () {\n window.removeEventListener('online', onOnline);\n window.removeEventListener('offline', onOffline);\n };\n }, []);\n return isOffline;\n};\nexports.default = useSimpleOffline;\n","\"use strict\";\n/* eslint-disable */\nObject.defineProperty(exports, \"__esModule\", { value: true });\n// https://gist.github.com/jed/982883\nfunction b(a // placeholder\n) {\n return a // if the placeholder was passed, return\n ? ( // a random number from 0 to 15\n a ^ // unless b is 8,\n Math.random() // in which case\n * 16 // a random number from\n >> a / 4 // 8 to 11\n ).toString(16) // in hexadecimal\n : ( // or otherwise a concatenated string:\n // @ts-ignore\n [1e7] + // 10000000 +\n -1e3 + // -1000 +\n -4e3 + // -4000 +\n -8e3 + // -80000000 +\n -1e11 // -100000000000,\n ).replace(// replacing\n /[018]/g, // zeroes, ones, and eights with\n b // random hex digits\n );\n}\nexports.default = b;\n","\"use strict\";\n// Allow any for validation-functions\n/* eslint-disable @typescript-eslint/no-explicit-any */\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.validateFieldLecagy_TOBEREMOVED = exports.validateAllFields = exports.validateField = exports.checkHasErrors = exports.validateFnr = exports.validatePasswordConfirm = exports.validatePassword = exports.validateDate = exports.validateRoleArray = exports.validateRole = exports.validateEmail = exports.validateChars = exports.validateRequired = exports.noValidation = void 0;\nvar objectUtils_1 = require(\"./objectUtils\");\nvar noValidation = function () { return ({ valid: true, errorTextKey: null }); };\nexports.noValidation = noValidation;\nvar validateRequired = function (text) { return ({\n valid: !!text && text.toString().trim().length >= 1,\n errorTextKey: 'validations.mandatory',\n}); };\nexports.validateRequired = validateRequired;\nvar validateChars = function (maxChars) { return function (text) { return ({\n valid: !text || text.length < maxChars,\n errorTextKey: 'validations.text_too_long',\n}); }; };\nexports.validateChars = validateChars;\nvar rfcEmail = /^(([^<>()\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@(([[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\nvar validateEmail = function (email) { return ({\n valid: !email || rfcEmail.test(email.toString()),\n errorTextKey: 'validations.not_valid_email',\n}); };\nexports.validateEmail = validateEmail;\nvar validateRole = function (role) { return ({\n valid: !!role && role.toString().trim().length >= 1,\n errorTextKey: 'validations.please_select_role',\n}); };\nexports.validateRole = validateRole;\nvar validateRoleArray = function (role) { return ({\n valid: Array.isArray(role) && role.length >= 1,\n errorTextKey: 'validations.please_select_role',\n}); };\nexports.validateRoleArray = validateRoleArray;\nvar validateDate = function (date) { return ({\n valid: !date || Date.parse(date.toString()) < 4102444800000,\n errorTextKey: 'validations.notValidDate',\n}); };\nexports.validateDate = validateDate;\nvar validatePassword = function (password) { return ({\n valid: !password || password.toString().trim().length >= 8,\n errorTextKey: 'validations.password_must_be_at_least_eight_characters',\n}); };\nexports.validatePassword = validatePassword;\nvar validatePasswordConfirm = function (passwordConfirm, allFields, fieldName) { return ({\n valid: (!passwordConfirm && !allFields[fieldName.slice(0, -'Confirm'.length)]) || passwordConfirm === allFields[fieldName.slice(0, -'Confirm'.length)],\n errorTextKey: 'validations.passwords_does_not_match',\n}); };\nexports.validatePasswordConfirm = validatePasswordConfirm;\nvar validateFnr = function (fnr) {\n if (!(0, objectUtils_1.hasValue)(fnr)) {\n return {\n valid: true,\n errorTextKey: null,\n };\n }\n var birthNumber = fnr === null || fnr === void 0 ? void 0 : fnr.toString();\n if (!birthNumber || birthNumber.length !== 11) {\n return {\n valid: false,\n errorTextKey: 'validations.notValidFnr',\n };\n }\n var calculate = function (number, factors) {\n var sum = 0;\n for (var i = 0, l = factors.length; i < l; ++i) {\n sum += parseInt(number.charAt(i), 10) * factors[i];\n }\n return sum;\n };\n var checksum1 = 11 - (calculate(birthNumber, [3, 7, 6, 1, 8, 9, 4, 5, 2]) % 11);\n if (checksum1 === 11)\n checksum1 = 0;\n var checksum2 = 11 - (calculate(birthNumber, [5, 4, 3, 2, 7, 6, 5, 4, 3, 2]) % 11);\n if (checksum2 === 11)\n checksum2 = 0;\n return {\n valid: checksum1 === parseInt(birthNumber.charAt(9), 10)\n && checksum2 === parseInt(birthNumber.charAt(10), 10),\n errorTextKey: 'validations.notValidFnr',\n };\n};\nexports.validateFnr = validateFnr;\nvar checkHasErrors = function (errors) { return Object.keys(errors).reduce(function (prev, key) { return prev || (errors[key] !== null); }, false); };\nexports.checkHasErrors = checkHasErrors;\nvar validateField = function (values, validatorFunction, fieldName) {\n if (!validatorFunction)\n return null;\n var validatorFunctions = Array.isArray(validatorFunction) ? validatorFunction : [validatorFunction];\n var validation = validatorFunctions.reduce(function (prev, currentFunction) {\n if (!currentFunction)\n return prev;\n var currentValidation = currentFunction(values[fieldName], values, fieldName);\n return ({\n valid: prev.valid && currentValidation.valid,\n errorTextKey: prev.valid ? currentValidation.errorTextKey : prev.errorTextKey,\n });\n }, { valid: true, errorTextKey: '' });\n return validation.valid ? null : validation.errorTextKey;\n};\nexports.validateField = validateField;\nvar validateAllFields = function (values, validators) { return Object.keys(validators).reduce(function (prev, key) {\n var _a;\n var _b;\n return (validators[key] ? __assign(__assign({}, prev), (_a = {}, _a[key] = (0, exports.validateField)(values, (_b = validators[key]) !== null && _b !== void 0 ? _b : null, key), _a)) : prev);\n}, {}); };\nexports.validateAllFields = validateAllFields;\n// eslint-disable-next-line @typescript-eslint/naming-convention\nvar validateFieldLecagy_TOBEREMOVED = function (state, validatorFunction, fieldName) {\n var _a;\n var validatorFunctions = validatorFunction ? [].concat(validatorFunction) : [];\n var validation = validatorFunctions.reduce(function (prev, currentFunction) {\n if (!currentFunction)\n return prev;\n // @ts-ignore - legacy function -> To be removed!\n var currentValidation = currentFunction(state[fieldName], state, fieldName);\n return ({\n valid: prev.valid && currentValidation.valid,\n errorTextKey: prev.valid ? currentValidation.errorTextKey : prev.errorTextKey,\n });\n }, { valid: true, errorTextKey: '' });\n var validationErrors = __assign(__assign({}, state.validationErrors), (_a = {}, _a[fieldName] = validation.valid ? null : validation.errorTextKey, _a));\n var hasErrors = Object.keys(validationErrors).reduce(function (prev, key) { return prev || (key !== 'hasErrors' && validationErrors[key] !== null); }, false);\n return __assign(__assign({}, validationErrors), { hasErrors: hasErrors });\n};\nexports.validateFieldLecagy_TOBEREMOVED = validateFieldLecagy_TOBEREMOVED;\n"],"sourceRoot":""}