{"version":3,"sources":["api/index.js","polyfills.js","PrivateRoute.js","assets/images/hapi-partner-logo.png","components/pages/landing_page/ClockIn.js","components/pages/landing_page/ClockOut.js","components/layouts/Navbar.js","components/layouts/Footer.js","components/user-info/user-info.js","assets/svg/Sidebar/Dashboard.svg","assets/svg/Sidebar/Schedule.svg","assets/svg/Sidebar/Patients.svg","assets/svg/Sidebar/Handovers.svg","assets/svg/Sidebar/Support.svg","assets/svg/Sidebar/Kompliwise.svg","assets/svg/Sidebar/Podiatry.svg","assets/svg/Sidebar/Dietetics.svg","assets/svg/Sidebar/ProgressNotes.svg","assets/svg/Sidebar/Assessments.svg","assets/svg/Sidebar/Careplans.svg","assets/svg/Sidebar/Account.svg","components/layouts/SideBar.js","components/pages/Signup.js","assets/images/hapiyouicon.png","components/pages/Welcome.js","components/pages/HomeDashboard.js","components/pages/About.js","components/pages/Contact.js","components/pages/NotFound.js","components/pages/users/Users.js","components/pages/users/UpdateUser.js","assets/svg/Support/Overview/Plus.svg","components/pages/support/SupportRequests.js","components/pages/support/CreateTicket.js","components/pages/support/TicketSuccess.js","components/pages/support/ContactSupport.js","assets/svg/Landing Page/ClientProfile.svg","assets/svg/Landing Page/Alert.svg","assets/svg/Landing Page/Check.svg","assets/svg/Landing Page/Pending.svg","components/pages/landing_page/DashboardSummary.js","components/pages/landing_page/AdminDashboardSummary.js","components/pages/landing_page/LovedOneRequest.js","components/pages/landing_page/Appointments.js","assets/svg/Assessments/Calendar White.svg","assets/svg/Assessments/Bell.svg","components/pages/release_notes/versions/index.js","components/pages/landing_page/Events.js","components/pages/landing_page/Tasks.js","components/pages/landing_page/Notifications.js","components/pages/landing_page/LandingPage.js","AppWithRouterAccess.js","App.js","reportWebVitals.js","reducers/loved1s.js","reducers/roles.js","reducers/facilities.js","reducers/user.js","reducers/index.js","serviceWorkerRegistration.js","index.js","components/reusables/Loader.js","constants/actionsTypes.js","role.js","practice.js","components/pages/notifications/ResidentDetails.js","components/reusables/Paginator/usePagination.js","components/reusables/AlertsTop.js","firebase/firebase.js","components/reusables/Paginator/Pagination.js","assets/svg/Handovers/ClientProfile.svg"],"names":["url","baseURL","loginAuth0","username","password","axios","post","concat","signUpUser","data","forgotPassword","authMe","accessToken","get","headers","Authorization","fetchRoles","CancelToken","source","fetchFacilities","fetchPatients","filter","facility","cancellationToken","arguments","length","undefined","_url","cancelToken","fetchPatientsByDate","date","getPatient","id","getProgressNotesHistory","createPatient","patientInfo","postPatientStatus","patientId","patientStatus","updatePatient","put","deletePatient","delete","getProgressNotes","getProgressNotesByDate","residentId","getGeneralCareHomeNotes","getPendingNotes","addProgressNotes","saveProgressNotes","editProgressNotes","note","removeProgressNotes","updateProgressNotes","deleteProgressNotes","item","getTreatmentTypeDetails","getTreatmentTypes","getAssessmentTypes","getConsentTypes","getNoTreatmentTypes","getObservations","getAssessments","postAssessment","postData","updateAssessment","itemId","getAssessmentHistory","getPhysioAssessments","practice","postPhysioAssessment","updatePhysioAssessment","assessmentId","getAssessmentHistoryByPractice","getDieteticsAssessments","postDieteticsAssessment","updateDieteticsAssessment","getCarePlans","postCarePlan","updateCarePlan","getCarePlanHistory","getAllUsers","getUser","getUserPhoto","userId","updateUserPhoto","createUser","userInfo","updateUser","getAllUsersLovedOnes","updateUsersLoved1s","loved1s","getAppointmentsToday","dateFrom","dateTo","getSchedulesForFacilityTreatmentVisit","treatmentId","isCarehomemanager","getScheduledVisits","dateToday","getPerformedVisits","getAllPerformedVisits","pageNumber","pageSize","postFinalizeVisits","getHandoverFromVisits","visitId","postHandoverSignature","getActivityType","type","getAnnouncements","postClockInAndOut","getClockInStatus","getAllergies","addAllergy","updateAllergy","deleteAllergy","getMedication","addMedication","updateMedication","deleteMedication","getPDRContacts","facilityId","postContact","sendEmailPdr","getPushNotification","generatePDR","postConsentForPodiatry","getConsentForPodiatry","getConsent","consentId","sendConsentToContact","updateConsent","getWards","postWard","postTasks","getTasks","getTasksByFilter","subject","startDate","endDate","updateTask","taskId","doneTheTask","deferredTheTask","getLovedOneContact","postLovedOneContact","updateLovedOneContact","contactId","deleteLovedOneContact","postEmailLovedOneContact","getPractices","postBooking","getBookings","getBookingsAvailableByDate","postPractitionerSchedule","updatePractitionerSchedule","scheduledId","getPractitionerAvailability","email","bookingTypeId","getResidentSubscription","getThreadAndParticipants","getThreadsById","threadId","getThreadMessagesByUser","getThreadMessagesByContact","sendMessageToThread","postNewChannel","fetchChannelByLoggedInUser","getAllMessagesFromChannel","channelID","sendMessagesToChannel","getTreatmentNotesByPractice","getAssessmentsByPractice","getCarePlansByPractice","getFinalizeAndUnfinalizedHandovers","params","facilityIds","getLookupOptionByType","getPendingLovedOneRequest","approveLovedOneRequest","deleteUserAccount","confirmBooking","rejectBooking","startCheckout","checkBookingPayment","bookingId","getResidentFundingSource","requestToChangeFundingType","practionerEmail","practionerName","residentName","facilityName","fundingType","addActiveResidentDate","Promise","resolve","reject","then","response","catch","error","setInActiveResidentDate","getAllGPOrLA","role","getGPOrLAForResident","addGPOrLA","updateGPOrLA","deactivateGPOrLA","sendEmailForHistory","self","URLSearchParams","searchString","Object","defineProperty","this","writable","value","attribute","attributes","replace","split","i","append","decodeURIComponent","prototype","name","_entries","push","String","toString","encodeURIComponent","global","window","PrivateRoute","_ref","children","rest","_jsx","Route","render","isAuthenticated","authState","JSON","parse","localStorage","getItem","access_token","console","log","Redirect","to","ClockIn","setClockIn","getClockInStatusLoader","setPostData","useState","latitude","longitude","loader","setLoader","history","useHistory","handleExpiration","removeItem","_Fragment","className","onClick","async","e","preventDefault","clockIn","api","prev","_error$response","_error$response2","_error$response2$data","_error$response2$data2","_error$response3","_error$response3$data","_error$response3$data2","status","errors","message","submitClockIn","Loader","variant","ClockOut","clockInData","popupVisible","setPopupVisible","today","Date","clockInTime","moment","TimeStampUtc","d","diffMs","getTime","Math","floor","toLocaleDateString","weekday","year","month","day","time","setTime","interval","useEffect","setInterval","currentTime","toLocaleTimeString","clearInterval","_postData","navigator","geolocation","getCurrentPosition","pos","coords","clockOut","submitClockOut","Navbar","_location$search$spli","_location$search","_location$search$spli2","_param$","_param$2","_param$3","_param$4","_param$4$split$","_param$4$split$$split","_param$5","_param$6","searchTerm","setSearchTerm","setSort","changeURLPatient","confirmShowed","setConfirmShowed","saved","setSaved","currentPage","setCurrentPage","setNavBarLoader","selectedOption","notificationData","setNotificationData","notificationLoader","unreadCount","setUnreadCount","userClaims","_id","facilityManagerRole","careHomeManagerRole","userRoles","location","useLocation","setClockInData","showClock","setShowClock","clockInToggle","setClockInToggle","setGetClockInStatusLoader","param","search","paramState","map","parseInt","showPopup","setShowPopup","notifRef","useRef","handler","current","contains","target","document","addEventListener","removeEventListener","clockInStatus","_data$data","_data$data2","_data$data2$data","_data$data3","_data$data3$data","Description","handlePushNotifications","isMounted","ref","db","onDataChange","snapshot","val","innerObjectKey","keys","find","key","array","prevArray","toast","notes","event","onValue","_jsxs","Toaster","position","reverseOrder","NavLink","pathname","indexOf","src","logo","alt","style","height","placeholder","width","onChange","includes","handleBellClick","cursor","FontAwesomeIcon","icon","display","right","backgroundColor","borderRadius","verticalAlign","top","boxShadow","zIndex","border","overflowY","borderTopLeftRadius","borderTopRightRadius","slice","index","handleNotifClick","resident","fontSize","ResidentDetails","color","createdAt","fromNow","letterSpacing","fontWeight","opacity","minHeight","library","add","fab","far","fas","Footer","Component","bottom","href","rel","UserInfo","firstName","lastName","greeting","setGreeting","avatarPic","setAvatarPic","preview","setPreview","picture","setPicture","show","setShow","currentHour","format","cancelUpdatePhoto","img","err","_err$response","_err$response2","_err$response2$data","_err$response2$data$e","_err$response3","_err$response3$data","_err$response3$data$e","AvatarImg","charAt","toUpperCase","Modal","size","onHide","Header","closeButton","Title","Body","Avatar","onCrop","view","onClose","onBeforeFileLoad","elem","files","Swal","fire","title","html","confirmButtonColor","Button","SideBar","setIsNavClosed","clientApp","isHapiPartnerUser","some","appName","hasPhysioPractice","hasDiatecianPractice","usePracticeHook","superAdminRole","clinicalManagerRole","roles","useSelector","state","handleChangeURL","confirm","reload","marginBottom","exact","Dashboard","Calendar","marginRight","marginTop","Podiatry","ProgressNotes","Assessment","CarePlans","Dietetics","weight","Patients","Handovers","Support","process","Kompliwise","Account","Signup","_userInfo$firstName$t","_userInfo$middleName$","_userInfo$lastName$to","_userInfo$nickName$to","_userInfo$gender","_userInfo$address","_userInfo$zipCode","_userInfo$countryCode","_userInfo$practice","_userInfo$email$toLow","_userInfo$password","loading","setLoading","useDispatch","user","registerSuccessful","setRegisterSuccessful","successMessage","setSuccessMessage","errorMessage","setErrorMessage","errorIndicator","setErrorIndicator","countries","setCountries","practices","setPractices","signupError","setsignupError","numOfLovedOnes","setNumOfLovedOnes","confirmPassword","setConfirmPassword","setUserInfo","middleName","nickName","dateOfBirth","gender","address","zipCode","countryCode","birthday","setBirthday","birthDate","iso","all","_practices$","getPractice","handleChange","margin","AlertsTop","text","bsClass","htmlFor","toLowerCase","ModernDatepicker","primaryColor","disabled","alpha3","country","label","validateForm","isValid","ifLovedOne","randomWords","lovedOnes","hasOwnProperty","Welcome","HomeDashboard","About","Contact","NotFound","Users","users","setUsers","allRoles","setAllRoles","allFacilites","setAllFacilites","currentTableData","setCurrentTableData","getUserRoles","roleIds","forEach","userRole","getUserFacilities","userFacilities","userFacility","Number","facilityShortName","getAllRoles","facilities","_error$response4","_error$response5","_error$response5$data","_error$response5$data2","_error$response6","_error$response6$data","_error$response6$data2","getAllFacilities","_error$response7","_error$response8","_error$response8$data","_error$response8$data2","_error$response9","_error$response9$data","_error$response9$data2","getCurrentTableData","firstPageIndex","lastPageIndex","newData","scope","Link","Pagination","totalCount","onPageChange","page","UpdateUser","useParams","loaderText","setLoaderText","facilityOptions","setFacilityOptions","selectedFacilites","setSelectedFacilites","roleOptions","setRoleOptions","selectedRoles","setSelectedRoles","setUser","onInputChange","options","currentRoles","currentFacilities","_error$response10","_error$response11","_error$response11$dat","_error$response11$dat2","_error$response12","_error$response12$dat","_error$response12$dat2","getCurrentUser","onSubmit","userFacilites","Select","isMulti","selected","SupportRequests","Plus","lineHeight","background","CreateTicket","for","required","listStyleType","rows","TicketSuccess","ContactSupport","__lc","license","asyncInit","n","createElement","head","appendChild","initLiveChat","goBack","frameBorder","DashboardSummary","scheduleData","countDoneTodayPatients","patients","_patients$filter$leng","patient","TreatmentDue","NeedsUrgentTreatment","CreatedOn","progress_notes","updatedAt","_data$ResidentsConfir","FacilityName","Address","Phone","Period","FacilityId","ResidentsToBeTreated","ResidentsDueForAssessment","ResidentsDueForTreatment","UrgentTreatmentResidentCount","StartDateTime","ResidentsConfirmed","doc","jsPDF","_allPatients$0$Reside","_allPatients$","_allPatients","tableData","autoTable","headStyles","fillColor","minCellHeight","valign","halign","columnStyles","cellWidth","styles","cellPadding","overflow","body","_patient$KnownAs","_ref2","_patient$WardName","_patient$PaymentType","content","colSpan","rowSpan","FirstName","LastName","KnownAs","WardName","RoomNumber","DateOfBirth","HasConsentOnFile","PaymentType","DaysSinceLastTreatment","AssessmentDue","left","bodyStyles","didDrawPage","setFontSize","internal","align","save","downloadTable","AdminDashboardSummary","LovedOneRequest","_forApprovalData$requ","_forApprovalData$requ2","_forApprovalData$requ3","_forApprovalData$requ4","pendingLovedOnes","setPendingLovedOnes","forApprovalData","setForApprovalData","lovedOneLoader","setLovedOneLoader","showApproveModal","setShowApproveModal","handleClose","res","pendingLovedOnesRequest","borderBottomLeftRadius","borderBottomRightRadius","requestorFirstName","requestorLastName","requestorEmail","Form","Group","controlId","Appointments","searchInDashboard","appointments","setAppointments","otherServicesRole","setUserFacilites","facilityLoader","setFacilityLoader","setFilter","week","mergedFacilityInfo","FacilityID","shortName","FacilityShortName","releaseNotesVersion","version","releaseDate","Events","announcements","setAnnouncements","currentDate","setCurrentDate","months","Array","announcementData","FacilityBirthdays","birthdayArray","sort","a","b","BirthDate","getDate","fetchAnnouncements","announcement","getMonth","toDateString","FullName","reverse","Tasks","_updateTask$subject","_updateTask$descripti","allMyTasks","setAllMyTasks","showTask","setShowTask","myTasks","setMyTasks","setUpdateTask","assignedTo","description","tasksDate","setTasksDate","handleOnChangeTask","newObject","onChangeDate","prevState","newObj","getMyTasks","task","handleOpenTask","updatedTask","Notifications","_data$resident","LandingPage","UserRoles","setScheduleData","dateContext","searchItem","searchParam","daysInMonth","schedule","getSchedule","items","newItem","Login","React","lazy","ForgotPassword","PatientPage","CreatePatient","UpdatePatient","AddMedication","ReadMedications","UpdateMedication","Schedules","Loved1s","ResidentLoved1s","PracticeThread","ThreadLists","LovedOneThread","UpdateLovedOnes","AddProgressNotes","DeletePatient","TermsAndConditions","Handover","NoHandovers","AddVisit","ViewVisits","FacilityVisitDetails","Treatments","VisitDetails","ActivityDetails","Allergies","Medications","AddConsent","ConsentLists","RequestConsent","ReleaseNotes","Referrals","Referrallists","GeneralCareHome","PodiatryProgressNotes","PodiatryAssessments","PodiatryCarePlans","PhysioProgressNotes","PhysioAssessments","DieteticsProgressNotes","DieteticsAssessments","ChatPage","AllSettings","RegisterAccount","AccountLists","Validate","ProcessBookingConfirmation","MultiProcessBookingConfirmation","SuccessBookingConfirmation","CancelBookingConfirmation","SetResidentActive","SetResidentInActive","MultiStatusManager","LovedOnePayment","AppWithRouterAccess","_param$0$split$","setSelectedOption","isNavClosed","navbarLoader","setNotificationLoader","tabOpen","join","notif","getNotifications","Switch","path","component","App","Suspense","fallback","Router","reportWebVitals","onPerfEntry","Function","getCLS","getFID","getFCP","getLCP","getTTFB","action","GET_ALL_USERS_LOVED1S","FETCH_ROLES","FETCH_FACILITIES","CREATE_FACILITY","UPDATE_FACILITY","DELETE_FACILITY","CREATE_USER","CREATE_USER_ERROR","combineReducers","isLocalhost","Boolean","hostname","match","registerValidSW","swUrl","config","serviceWorker","register","registration","onupdatefound","installingWorker","installing","onstatechange","controller","onUpdate","onSuccess","store","createStore","reducers","compose","applyMiddleware","thunk","ReactDOM","StrictMode","CacheBuster","currentVersion","isEnabled","isVerboseMode","loadingComponent","Provider","getElementById","URL","origin","fetch","contentType","ready","unregister","checkValidServiceWorker","serviceWorkerRegistration","Spinner","isSuperAdmin","setIsSuperAdmin","isClinicalManager","setIsClinicalManager","isFacilityManager","setIsFacilityManager","isCareHomeManager","setIsCareHomeManager","isOtherServices","setIsOtherServices","userPractice","isPhysiotherapist","setIsPhysiotherapist","isDietetics","setIsDietetics","isSpeechPathologist","setIsSpeechPathologist","isGeneralPractitioner","setIsGeneralPractitioner","hasSpeechPathologistPractice","hasGeneralPractice","residentInfo","setResidentInfo","Fullname","getResidentDetails","DOTS","range","start","end","from","_","idx","usePagination","siblingCount","useMemo","totalPageCount","ceil","leftSiblingIndex","max","rightSiblingIndex","min","shouldShowLeftDots","shouldShowRightDots","rightRange","middleRange","props","app","initializeApp","apiKey","authDomain","databaseURL","projectId","storageBucket","messagingSenderId","appId","measurementId","getDatabase","getMessaging","changeURL","getAllPatientsLoader","getNowPatientsLoader","inactive","paginationRange","lastPage","tab"],"mappings":"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","file":"static/js/main.c44433a2.chunk.js","sourcesContent":["import axios from \"axios\";\r\nimport { baseURL } from \"../constants/actionsTypes\";\r\n\r\nconst url = baseURL;\r\n\r\nexport const loginAuth0 = (username, password) => {\r\n\treturn axios.post(`${url}/auth/login`, { username, password });\r\n};\r\n\r\nexport const signUpUser = (data) => {\r\n\treturn axios.post(`${url}/auth/signup`, data);\r\n};\r\n\r\nexport const forgotPassword = (data) => {\r\n\treturn axios.post(`${url}/auth/forgot-password`, data);\r\n};\r\n\r\nexport const authMe = (accessToken) => {\r\n\treturn axios.get(`${url}/auth/me`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const patientsFilterCancel = axios.CancelToken.source();\r\n//roles request\r\nexport const fetchRoles = () => {\r\n\treturn axios.get(`${url}/roles`);\r\n};\r\n\r\n//facilities request\r\nexport const fetchFacilities = (accessToken) => {\r\n\treturn axios.get(`${url}/facilities?PageSize=10000000`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\n// export const getFacilities = (accessToken) => {\r\n// return axios.get(`${url}/facilities`, {\r\n// headers: {\r\n// Authorization: `Bearer ${accessToken}`,\r\n// //Groups: userInfo.groups,\r\n// },\r\n// },\r\n// );\r\n// };\r\n\r\nexport const createFacility = (facilityInfo, accessToken) => {\r\n\treturn axios.post(`${url}/facilities`, facilityInfo, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const updateFacility = (facilityInfo, id, accessToken) => {\r\n\treturn axios.put(`${url}/facilities/${id}`, facilityInfo, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const deleteFacility = (id, accessToken) => {\r\n\treturn axios.delete(`${url}/facilities/${id}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\n//patients requests\r\nexport const fetchPatients = (\r\n\taccessToken,\r\n\tfilter,\r\n\tfacility,\r\n\tcancellationToken = null\r\n) => {\r\n\tlet _url = `${url}/patients`;\r\n\r\n\tif (facility) {\r\n\t\t_url = `${_url}?filter=${filter}&facility=${facility}`;\r\n\t}\r\n\r\n\treturn axios.get(_url, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t\tcancelToken: cancellationToken,\r\n\t});\r\n};\r\n\r\nexport const fetchPatientsByDate = (\r\n accessToken,\r\n facility,\r\n date = null,\r\n cancellationToken = null\r\n) => {\r\n let _url = `${url}/patients?filterDate=${date}`;\r\n\r\n if (facility) {\r\n _url = `${_url}&facility=${facility}`;\r\n }\r\n\r\n return axios.get(_url, {\r\n headers: {\r\n Authorization: `Bearer ${accessToken}`,\r\n //Groups: userInfo.groups,\r\n },\r\n cancelToken: cancellationToken,\r\n });\r\n};\r\n\r\nexport const getPatient = (id, accessToken, cancellationToken = null) => {\r\n\treturn axios.get(`${url}/patients/${id}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t\tcancelToken: cancellationToken,\r\n\t});\r\n};\r\n\r\nexport const getInactivePatient = (inactive, accessToken) => {\r\n\treturn axios.get(`${url}/patients?includeInactive=${inactive}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t\tcancelToken: patientsFilterCancel.token,\r\n\t});\r\n};\r\n\r\nexport const getTreatmentSummaryCancel = axios.CancelToken.source();\r\nexport const getTreatmentSummary = (id, accessToken) => {\r\n\treturn axios.get(`${url}/patients/${id}/details`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t\tcancelToken: getTreatmentSummaryCancel.token,\r\n\t});\r\n};\r\n\r\nexport const getProgressNotesHistory = (id, accessToken, cancellationToken) => {\r\n\treturn axios.get(`${url}/progress-notes/${id}/logs`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t\tcancelToken: cancellationToken,\r\n\t});\r\n};\r\n\r\nexport const deleteTreatment = (residentId, treatmentId, accessToken) => {\r\n\treturn axios.delete(\r\n\t\t`${url}/patients/${residentId}/progress-notes/${treatmentId}`,\r\n\t\t{\r\n\t\t\theaders: {\r\n\t\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t},\r\n\t\t}\r\n\t);\r\n};\r\n\r\nexport const createPatient = (patientInfo, accessToken) => {\r\n\treturn axios.post(`${url}/patients`, patientInfo, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const postPatientStatus = (patientId, patientStatus, accessToken) => {\r\n\treturn axios.post(\r\n\t\t`${url}/patients/${patientId}/update-status`,\r\n\t\tpatientStatus,\r\n\t\t{\r\n\t\t\theaders: {\r\n\t\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t\t//Groups: userInfo.groups,\r\n\t\t\t},\r\n\t\t}\r\n\t);\r\n};\r\n\r\nexport const updatePatient = (patientInfo, id, accessToken) => {\r\n\treturn axios.put(`${url}/patients/${id}`, patientInfo, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const deletePatient = (id, accessToken) => {\r\n\treturn axios.delete(`${url}/patients/${id}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getProgressNotes = (id, accessToken) => {\r\n\treturn axios.get(`${url}/patients/${id}/details`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getProgressNotesByDate = (\r\n\tresidentId,\r\n\tdate,\r\n\taccessToken,\r\n\tcancellationToken = null\r\n) => {\r\n\treturn axios.get(\r\n\t\t`${url}/progress-notes/get-by-date?resident=${residentId}&date=${date}`,\r\n\t\t{\r\n\t\t\theaders: {\r\n\t\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t\t//Groups: userInfo.groups,\r\n\t\t\t},\r\n\t\t\tcancelToken: cancellationToken,\r\n\t\t}\r\n\t);\r\n};\r\n\r\nexport const getGeneralCareHomeNotes = (\r\n\tresidentId,\r\n\taccessToken,\r\n\tcancellationToken = null\r\n) => {\r\n\treturn axios.get(`${url}/progress-notes?residentId=${residentId}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t\tcancelToken: cancellationToken,\r\n\t});\r\n};\r\n\r\nexport const getPendingNotes = (date, accessToken) => {\r\n\treturn axios.get(`${url}/progress-notes/pending-notes?date=${date}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const addProgressNotes = (id, data, accessToken) => {\r\n\treturn axios.post(`${url}/patients/${id}/progress-notes`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const saveProgressNotes = (data, accessToken) => {\r\n return axios.post(`${url}/progress-notes/save`, data, {\r\n headers: {\r\n Authorization: `Bearer ${accessToken}`,\r\n \"Content-Type\": \"multipart/form-data\",\r\n //Groups: userInfo.groups,\r\n },\r\n });\r\n};\r\n\r\nexport const editProgressNotes = (id, note, accessToken) => {\r\n return axios.put(`${url}/progress-notes/${id}`, note, {\r\n headers: {\r\n Authorization: `Bearer ${accessToken}`,\r\n \"Content-Type\": \"multipart/form-data\",\r\n //Groups: userInfo.groups,\r\n },\r\n });\r\n};\r\n\r\nexport const removeProgressNotes = (id, accessToken) => {\r\n\treturn axios.delete(`${url}/progress-notes/${id}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const updateProgressNotes = (id, note, accessToken) => {\r\n\treturn axios.put(`${url}/patients/${id}/progress-notes`, note, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const deleteProgressNotes = (id, item, accessToken) => {\r\n\treturn axios.delete(`${url}/patients/${id}/progress-notes`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t\tdata: item,\r\n\t});\r\n};\r\n\r\nexport const getTreatmentTypeDetails = (\r\n accessToken,\r\n cancellationToken = null\r\n) => {\r\n return axios.get(`${url}/utils/get-treatment-type-details`, {\r\n headers: {\r\n Authorization: `Bearer ${accessToken}`,\r\n //Groups: userInfo.groups,\r\n },\r\n cancelToken: cancellationToken,\r\n });\r\n};\r\n\r\nexport const getTreatmentTypes = (accessToken, cancellationToken = null) => {\r\n\treturn axios.get(`${url}/utils/treatment-types`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t\tcancelToken: cancellationToken,\r\n\t});\r\n};\r\n\r\nexport const getAssessmentTypes = (accessToken, cancellationToken = null) => {\r\n\treturn axios.get(`${url}/utils/assessment-types`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t\tcancelToken: cancellationToken,\r\n\t});\r\n};\r\n\r\nexport const getConsentTypes = (accessToken, cancellationToken = null) => {\r\n\treturn axios.get(`${url}/utils/consent-types`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t\tcancelToken: cancellationToken,\r\n\t});\r\n};\r\n\r\nexport const getNoTreatmentTypes = (accessToken, cancellationToken = null) => {\r\n\treturn axios.get(`${url}/utils/no-treatment-types`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t\tcancelToken: cancellationToken,\r\n\t});\r\n};\r\n\r\n// observations api\r\nexport const getObservations = (id, accessToken) => {\r\n\treturn axios.get(`${url}/patients/${id}/observations`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const addObseervation = (id, data, accessToken) => {\r\n\treturn axios.post(`${url}/patients/${id}/observations`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const updateObservation = (id, note, itemId, accessToken) => {\r\n\treturn axios.put(`${url}/patients/${id}/observations/${itemId}`, note, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const deleteObservations = (id, itemId, accessToken) => {\r\n\treturn axios.delete(`${url}/patients/${id}/observations/${itemId}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getAssessments = (id, accessToken, cancellationToken = null) => {\r\n\treturn axios.get(`${url}/patients/${id}/assessments`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t\tcancelToken: cancellationToken,\r\n\t});\r\n};\r\n\r\nexport const postAssessment = (id, postData, accessToken) => {\r\n\treturn axios.post(`${url}/patients/${id}/assessments`, postData, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const updateAssessment = (id, itemId, postData, accessToken) => {\r\n\treturn axios.put(`${url}/patients/${id}/assessments/${itemId}`, postData, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getAssessmentHistory = (\r\n\tid,\r\n\titemId,\r\n\taccessToken,\r\n\tcancellationToken\r\n) => {\r\n\treturn axios.get(`${url}/patients/${id}/assessments/${itemId}/history`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t\tcancelToken: cancellationToken,\r\n\t});\r\n};\r\n\r\nexport const getPhysioAssessments = (\r\n\tpractice,\r\n\tid,\r\n\taccessToken,\r\n\tcancellationToken = null\r\n) => {\r\n\treturn axios.get(`${url}/assessments/${practice}?resident=${id}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t\tcancelToken: cancellationToken,\r\n\t});\r\n};\r\n\r\nexport const postPhysioAssessment = (practice, postData, accessToken) => {\r\n\treturn axios.post(`${url}/assessments/${practice}`, postData, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const updatePhysioAssessment = (\r\n\tpractice,\r\n\tassessmentId,\r\n\tpostData,\r\n\taccessToken\r\n) => {\r\n\treturn axios.put(\r\n\t\t`${url}/assessments/${practice}/${assessmentId}`,\r\n\t\tpostData,\r\n\t\t{\r\n\t\t\theaders: {\r\n\t\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t\t//Groups: userInfo.groups,\r\n\t\t\t},\r\n\t\t}\r\n\t);\r\n};\r\n\r\nexport const getAssessmentHistoryByPractice = (\r\n\tpractice,\r\n\tassessmentId,\r\n\taccessToken,\r\n\tcancellationToken\r\n) => {\r\n\treturn axios.get(`${url}/assessments/${practice}/${assessmentId}/logs`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t\tcancelToken: cancellationToken,\r\n\t});\r\n};\r\n\r\nexport const getDieteticsAssessments = (\r\n\tpractice,\r\n\tid,\r\n\taccessToken,\r\n\tcancellationToken = null\r\n) => {\r\n\treturn axios.get(`${url}/assessments/${practice}?resident=${id}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t\tcancelToken: cancellationToken,\r\n\t});\r\n};\r\n\r\nexport const postDieteticsAssessment = (practice, postData, accessToken) => {\r\n\treturn axios.post(`${url}/assessments/${practice}`, postData, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const updateDieteticsAssessment = (\r\n\tpractice,\r\n\tassessmentId,\r\n\tpostData,\r\n\taccessToken\r\n) => {\r\n\treturn axios.put(\r\n\t\t`${url}/assessments/${practice}/${assessmentId}`,\r\n\t\tpostData,\r\n\t\t{\r\n\t\t\theaders: {\r\n\t\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t\t//Groups: userInfo.groups,\r\n\t\t\t},\r\n\t\t}\r\n\t);\r\n};\r\n\r\nexport const getCarePlans = (id, accessToken, cancellationToken) => {\r\n\treturn axios.get(`${url}/patients/${id}/care-plans`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t\tcancelToken: cancellationToken,\r\n\t});\r\n};\r\n\r\nexport const postCarePlan = (id, postData, accessToken) => {\r\n\treturn axios.post(`${url}/patients/${id}/care-plans`, postData, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const updateCarePlan = (id, itemId, postData, accessToken) => {\r\n\treturn axios.put(`${url}/patients/${id}/care-plans/${itemId}`, postData, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getCarePlanHistory = (\r\n\tid,\r\n\titemId,\r\n\taccessToken,\r\n\tcancellationToken = null\r\n) => {\r\n\treturn axios.get(`${url}/patients/${id}/care-plans/${itemId}/history`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t\tcancelToken: cancellationToken,\r\n\t});\r\n};\r\n\r\n//users api post\r\nexport const getAllUsers = (accessToken) => {\r\n\treturn axios.get(`${url}/users`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getUser = (id, accessToken) => {\r\n\treturn axios.get(`${url}/users/${id}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getUserPhoto = (userId, accessToken) => {\r\n\treturn axios.get(`${url}/users/get-profile/${userId}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const updateUserPhoto = (data, userId, accessToken) => {\r\n\treturn axios.put(`${url}/users/update-photo/${userId}`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const createUser = (userInfo) => {\r\n\treturn axios.post(`${url}/users`, userInfo);\r\n};\r\n\r\nexport const updateUser = (userInfo, id, accessToken) => {\r\n\treturn axios.put(`${url}/users/${id}`, userInfo, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\n//loved 1s api\r\nexport const getAllUsersLovedOnes = (id, accessToken) => {\r\n\treturn axios.get(`${url}/users/${id}/loved1s`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const updateUsersLoved1s = (data, id, accessToken) => {\r\n\treturn axios.put(\r\n\t\t`${url}/users/${id}/loved1s`,\r\n\t\t{\r\n\t\t\tloved1s: data,\r\n\t\t},\r\n\t\t{\r\n\t\t\theaders: {\r\n\t\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t},\r\n\t\t}\r\n\t);\r\n};\r\n\r\nexport const getAppointmentsToday = (dateFrom, dateTo, accessToken) => {\r\n\treturn axios.get(`${url}/schedules/appointments-today`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getSchedules = (\r\n dateFrom,\r\n dateTo,\r\n accessToken,\r\n // cancellationToken = null\r\n) => {\r\n return axios.get(`${url}/schedules?dateFrom=${dateFrom}&dateTo=${dateTo}`, {\r\n headers: {\r\n Authorization: `Bearer ${accessToken}`,\r\n //Groups: userInfo.groups,\r\n },\r\n // cancelToken: cancellationToken,\r\n });\r\n};\r\n\r\nexport const getSchedulesForFacilityTreatmentVisit = (\r\n accessToken,\r\n dateFrom,\r\n dateTo,\r\n treatmentId,\r\n isCarehomemanager = false,\r\n cancellationToken = null,\r\n // email,\r\n) => {\r\n return axios.get(\r\n `${url}/schedules/treatment-visits?fromDate=${dateFrom}&toDate=${dateTo}&treatmentId=${treatmentId}&isCarehomemanager=${isCarehomemanager}`,\r\n {\r\n headers: {\r\n Authorization: `Bearer ${accessToken}`,\r\n },\r\n cancelToken: cancellationToken,\r\n }\r\n );\r\n};\r\n\r\nexport const getScheduledVisits = (dateToday, accessToken) => {\r\n\treturn axios.get(`${url}/schedules/visits?date=${dateToday}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getPerformedVisits = (\r\n\tdateFrom,\r\n\tdateTo,\r\n\taccessToken,\r\n\tcancellationToken = null\r\n) => {\r\n\treturn axios.get(\r\n\t\t`${url}/schedules/performed-visits?fromDate=${dateFrom}&toDate=${dateTo}`,\r\n\t\t{\r\n\t\t\theaders: {\r\n\t\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t\t//Groups: userInfo.groups,\r\n\t\t\t},\r\n\t\t\tcancelToken: cancellationToken,\r\n\t\t}\r\n\t);\r\n};\r\n\r\nexport const getAllPerformedVisits = (\r\n\tdateFrom,\r\n\tdateTo,\r\n\tpageNumber,\r\n\tpageSize,\r\n\taccessToken\r\n) => {\r\n\treturn axios.get(\r\n\t\t`${url}/schedules/performed-visits?fromDate=${dateFrom}&toDate=${dateTo}&pageNumber=${pageNumber}&pageSize=${pageSize}`,\r\n\t\t{\r\n\t\t\theaders: {\r\n\t\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t\t//Groups: userInfo.groups,\r\n\t\t\t},\r\n\t\t}\r\n\t);\r\n};\r\n\r\nexport const postFinalizeVisits = (postData, accessToken) => {\r\n\treturn axios.post(`${url}/schedules/finalize-visit`, postData, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getHandoverFromVisits = (visitId, accessToken) => {\r\n\treturn axios.get(`${url}/schedules/visits/${visitId}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const postHandoverSignature = (visitId, postData, accessToken) => {\r\n\treturn axios.post(`${url}/schedules/visits/${visitId}`, postData, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getActivityType = (type, accessToken) => {\r\n\treturn axios.get(`${url}/utils/${type}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getAnnouncements = (accessToken) => {\r\n\treturn axios.get(`${url}/schedules/announcements`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const postClockInAndOut = (data, accessToken) => {\r\n\treturn axios.post(`${url}/schedules/clock-in-out`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getClockInStatus = (accessToken) => {\r\n\treturn axios.get(`${url}/schedules/clockin-status`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getAllergies = (accessToken, cancellationToken) => {\r\n\treturn axios.get(`${url}/allergies`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t\tcancelToken: cancellationToken,\r\n\t});\r\n};\r\n\r\nexport const addAllergy = (data, accessToken) => {\r\n\treturn axios.post(`${url}/allergies`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const updateAllergy = (id, data, accessToken) => {\r\n\treturn axios.put(`${url}/allergies/${id}`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const deleteAllergy = (id, accessToken) => {\r\n\treturn axios.delete(`${url}/allergies/${id}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getMedication = (accessToken, cancellationToken = null) => {\r\n\treturn axios.get(`${url}/medications`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t\tcancelToken: cancellationToken,\r\n\t});\r\n};\r\n\r\nexport const addMedication = (data, accessToken) => {\r\n\treturn axios.post(`${url}/medications`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const updateMedication = (id, data, accessToken) => {\r\n\treturn axios.put(`${url}/medications/${id}`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const deleteMedication = (id, accessToken) => {\r\n\treturn axios.delete(`${url}/medications/${id}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getPDRContacts = (facilityId, accessToken) => {\r\n\treturn axios.get(`${url}/notification/contacts?facilityId=${facilityId}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const postContact = (data, accessToken) => {\r\n\treturn axios.post(`${url}/notification/contacts/save`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const sendEmailPdr = (data, accessToken) => {\r\n\treturn axios.post(`${url}/notification/email/send`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getPushNotification = (accessToken) => {\r\n\treturn axios.get(`${url}/notification/`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const generatePDR = (visitId, accessToken) => {\r\n\treturn axios.get(`${url}/visits/generate-pdr?visitId=${visitId}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const postConsentForPodiatry = (data, accessToken) => {\r\n\treturn axios.post(`${url}/consents`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getConsentForPodiatry = (\r\n\tresidentId,\r\n\taccessToken,\r\n\tcancellationToken = null\r\n) => {\r\n\treturn axios.get(`${url}/patients/${residentId}/consents`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t\tcancelToken: cancellationToken,\r\n\t});\r\n};\r\n\r\nexport const getConsent = (\r\n\tconsentId,\r\n\taccessToken,\r\n\tcancellationToken = null\r\n) => {\r\n\treturn axios.get(`${url}/consents/${consentId}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t\tcancelToken: cancellationToken,\r\n\t});\r\n};\r\n\r\nexport const sendConsentToContact = (data, accessToken) => {\r\n\treturn axios.post(`${url}/consents/send`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const updateConsent = (consentId, data) => {\r\n\treturn axios.put(`${url}/consents/${consentId}`, data);\r\n};\r\n\r\nexport const getWards = (accessToken, facilityId) => {\r\n\treturn axios.get(`${url}/wards/${facilityId}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const postWard = (facilityId, accessToken) => {\r\n\treturn axios.post(`${url}/wards`, facilityId, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const postTasks = (data, accessToken) => {\r\n\treturn axios.post(`${url}/tasks`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getTasks = (accessToken) => {\r\n\treturn axios.get(`${url}/tasks`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getTasksByFilter = (subject, startDate, endDate, accessToken) => {\r\n\treturn axios.get(\r\n\t\t`${url}/tasks?subject=${subject}&startDate=${startDate}&endDate=${endDate}`,\r\n\t\t{\r\n\t\t\theaders: {\r\n\t\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t},\r\n\t\t}\r\n\t);\r\n};\r\n\r\nexport const updateTask = (data, taskId, accessToken) => {\r\n\treturn axios.put(`${url}/tasks/${taskId}`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const doneTheTask = (taskId, data, accessToken) => {\r\n\treturn axios.put(`${url}/tasks/${taskId}/done`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const deferredTheTask = (taskId, data, accessToken) => {\r\n\treturn axios.put(`${url}/tasks/${taskId}/deferred`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getLovedOneContact = (\r\n\tresidentId,\r\n\taccessToken,\r\n\tcancellationToken = null\r\n) => {\r\n\treturn axios.get(`${url}/contacts?resident=${residentId}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t\tcancelToken: cancellationToken,\r\n\t});\r\n};\r\n\r\nexport const postLovedOneContact = (data, accessToken) => {\r\n\treturn axios.post(`${url}/contacts`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const updateLovedOneContact = (contactId, data, accessToken) => {\r\n\treturn axios.put(`${url}/contacts/${contactId}`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const deleteLovedOneContact = (contactId, accessToken) => {\r\n\treturn axios.delete(`${url}/contacts/${contactId}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const postEmailLovedOneContact = (data, accessToken) => {\r\n\treturn axios.post(`${url}/contacts/send`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getPractices = (accessToken) => {\r\n\treturn axios.get(`${url}/practices`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const postBooking = (data, accessToken) => {\r\n\treturn axios.post(`${url}/bookings`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t//Groups: userInfo.groups,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getBookings = (residentId, dateFrom, dateTo, accessToken) => {\r\n\treturn axios.get(\r\n\t\t`${url}/bookings?residentId=${residentId}&dateFrom=${dateFrom}&dateTo=${dateTo}`,\r\n\t\t{\r\n\t\t\theaders: {\r\n\t\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t\t//Groups: userInfo.groups,\r\n\t\t\t},\r\n\t\t}\r\n\t);\r\n};\r\n\r\nexport const getBookingsAvailableByDate = (dateFrom, dateTo, accessToken) => {\r\n\treturn axios.get(\r\n\t\t`${url}/bookings/available-dates?dateFrom=${dateFrom}&dateTo=${dateTo}`,\r\n\t\t{\r\n\t\t\theaders: {\r\n\t\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t},\r\n\t\t}\r\n\t);\r\n};\r\n\r\nexport const postBookScheduledItem = (data, accessToken) => {\r\n\treturn axios.post(`${url}/schedules/book-schedule`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const postPractitionerSchedule = (data, accessToken) => {\r\n\treturn axios.post(`${url}/schedules/create-practitioner-schedule`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const updatePractitionerSchedule = (accessToken, scheduledId, data) => {\r\n\treturn axios.put(`${url}/schedules/${scheduledId}`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getPractitionerAvailability = (\r\n dateFrom,\r\n dateTo,\r\n email,\r\n bookingTypeId,\r\n accessToken\r\n // cancellationToken = null\r\n) => {\r\n return axios.get(\r\n `${url}/schedules/practitioner-availability?fromDate=${dateFrom}&toDate=${dateTo}&email=${email}&bookingTypeId=${bookingTypeId}`,\r\n {\r\n headers: {\r\n Authorization: `Bearer ${accessToken}`,\r\n },\r\n // cancelToken: cancellationToken,\r\n }\r\n );\r\n};\r\n\r\nexport const getResidentSubscription = (residentId, accessToken) => {\r\n\treturn axios.get(`${url}/subscriptions/status?residentId=${residentId}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getThreadAndParticipants = (accessToken) => {\r\n\treturn axios.get(`${url}/threads`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getThreadsById = (threadId, accessToken) => {\r\n\treturn axios.get(`${url}/threads/${threadId}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getThreadMessagesByUser = (threadId, userId, accessToken) => {\r\n\treturn axios.get(`${url}/threads/${threadId}/messages?user=${userId}`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getThreadMessagesByContact = (\r\n\tthreadId,\r\n\tcontactId,\r\n\taccessToken\r\n) => {\r\n\treturn axios.get(\r\n\t\t`${url}/threads/${threadId}/messages?contact=${contactId}`,\r\n\t\t{\r\n\t\t\theaders: {\r\n\t\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t},\r\n\t\t}\r\n\t);\r\n};\r\n\r\nexport const sendMessageToThread = (threadId, data, accessToken) => {\r\n\treturn axios.post(`${url}/threads/${threadId}/messages`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const postNewChannel = (data, accessToken) => {\r\n\treturn axios.post(`${url}/chat`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const fetchChannelByLoggedInUser = (accessToken) => {\r\n\treturn axios.get(`${url}/chat`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const getAllMessagesFromChannel = (channelID, accessToken) => {\r\n\treturn axios.get(`${url}/chat/${channelID}/messages`, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const sendMessagesToChannel = (channelID, data, accessToken) => {\r\n\treturn axios.post(`${url}/chat/${channelID}/messages`, data, {\r\n\t\theaders: {\r\n\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t},\r\n\t});\r\n};\r\n\r\n// export const getTreatmentNotesByPractice = (\r\n// accessToken,\r\n// practiceID,\r\n// facilityId\r\n// ) => {\r\n// return axios.get(\r\n// `${url}/progress-notes/get-by-treatment-type/${practiceID}?facilityId=${facilityId}`,\r\n// {\r\n// headers: {\r\n// Authorization: `Bearer ${accessToken}`,\r\n// },\r\n// }\r\n// );\r\n// };\r\n\r\nexport const getTreatmentNotesByPractice = (\r\n\taccessToken,\r\n\tpractice,\r\n\tfacilityId,\r\n\tcancellationToken\r\n) => {\r\n\treturn axios.get(\r\n\t\t`${url}/progress-notes/${practice}/all?facilityId=${facilityId}`,\r\n\t\t{\r\n\t\t\theaders: {\r\n\t\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t},\r\n\t\t\tcancelToken: cancellationToken,\r\n\t\t}\r\n\t);\r\n};\r\n\r\nexport const getAssessmentsByPractice = (\r\n\taccessToken,\r\n\tpractice,\r\n\tfacilityId,\r\n\tcancellationToken\r\n) => {\r\n\treturn axios.get(\r\n\t\t`${url}/assessments/${practice}/all?facilityId=${facilityId}`,\r\n\t\t{\r\n\t\t\theaders: {\r\n\t\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t},\r\n\t\t\tcancelToken: cancellationToken,\r\n\t\t}\r\n\t);\r\n};\r\n\r\nexport const getCarePlansByPractice = (\r\n\taccessToken,\r\n\tpractice,\r\n\tfacilityId,\r\n\tcancellationToken\r\n) => {\r\n\treturn axios.get(\r\n\t\t`${url}/careplans/${practice}/all?facilityId=${facilityId}`,\r\n\t\t{\r\n\t\t\theaders: {\r\n\t\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t},\r\n\t\t\tcancelToken: cancellationToken,\r\n\t\t}\r\n\t);\r\n};\r\n\r\nexport const getFinalizeAndUnfinalizedHandovers = (\r\n\taccessToken,\r\n\tparams,\r\n\tfacilityIds\r\n) => {\r\n\treturn axios.get(\r\n\t\t`${url}/progress-notes/podiatrist/${params}?facilityId=${facilityIds}`,\r\n\t\t{\r\n\t\t\theaders: {\r\n\t\t\t\tAuthorization: `Bearer ${accessToken}`,\r\n\t\t\t},\r\n\t\t}\r\n\t);\r\n};\r\n\r\nexport const getLookupOptionByType = (accessToken, type) => {\r\n return axios.get(`${url}/lookup?type=${type}`, {\r\n headers: {\r\n Authorization: `Bearer ${accessToken}`,\r\n },\r\n });\r\n};\r\n\r\nexport const getPendingLovedOneRequest = (accessToken) => {\r\n return axios.get(`${url}/loveones/getPendingLovedoneRequest`, {\r\n headers: {\r\n Authorization: `Bearer ${accessToken}`,\r\n },\r\n });\r\n};\r\n\r\nexport const approveLovedOneRequest = (data, accessToken) => {\r\n return axios.post(`${url}/loveones/approvedRequest`, data, {\r\n headers: {\r\n Authorization: `Bearer ${accessToken}`,\r\n },\r\n });\r\n};\r\n\r\nexport const deleteUserAccount = (accessToken) => {\r\n return axios.delete(`${url}/users`, {\r\n headers: {\r\n Authorization: `Bearer ${accessToken}`,\r\n },\r\n });\r\n};\r\n\r\nexport const confirmBooking = (data) => {\r\n return axios.post(`${url}/schedules/confirm-booking?${data}`);\r\n};\r\n\r\nexport const rejectBooking = (data) => {\r\n return axios.post(`${url}/schedules/reject-booking?${data}`);\r\n};\r\n\r\nexport const startCheckout = (data) => {\r\n return axios.post(`${url}/payments/create-checkout-session`, data);\r\n};\r\n\r\nexport const checkBookingPayment = (data) => {\r\n return axios.get(\r\n `${url}/schedules/is-confirmation-paid?scheduleId=${data.bookingId}&residentId=${data.residentId}`\r\n );\r\n};\r\n\r\nexport const getResidentFundingSource = (data) => {\r\n return axios.get(\r\n `${url}/schedules/get-resident-funding-source?email=${data.email}&residentId=${data.residentId}`\r\n );\r\n};\r\n\r\nexport const requestToChangeFundingType = (data, accessToken) => {\r\n return axios.get(\r\n `${url}/utils/sent-email-request?practionerEmail=${data.practionerEmail}&practionerName=${data.practionerName}&residentName=${data.residentName}&facilityName=${data.facilityName}&fundingType=${data.fundingType}`,\r\n {\r\n headers: {\r\n Authorization: `Bearer ${accessToken}`,\r\n },\r\n }\r\n );\r\n};\r\n\r\nexport const addActiveResidentDate = (data) => {\r\n return new Promise((resolve, reject) => {\r\n axios\r\n .post(`${url}/patients/add-active-resident-date`, data)\r\n .then((response) => {\r\n resolve(response.data);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n};\r\n\r\nexport const setInActiveResidentDate = (data) => {\r\n return new Promise((resolve, reject) => {\r\n axios\r\n .post(`${url}/patients/set-resident-inactive`, data)\r\n .then((response) => {\r\n resolve(response.data);\r\n })\r\n .catch((error) => {\r\n reject(error);\r\n });\r\n });\r\n};\r\n\r\nexport const getAllGPOrLA = (role, accessToken, cancellationToken = null) => {\r\n return axios.get(`${url}/${role}`, {\r\n headers: {\r\n Authorization: `Bearer ${accessToken}`,\r\n },\r\n cancelToken: cancellationToken,\r\n });\r\n};\r\n\r\nexport const getGPOrLAForResident = (\r\n role,\r\n residentId,\r\n accessToken,\r\n cancellationToken = null\r\n) => {\r\n return axios.get(`${url}/${role}/sharedWith/${residentId}`, {\r\n headers: {\r\n Authorization: `Bearer ${accessToken}`,\r\n },\r\n cancelToken: cancellationToken,\r\n });\r\n};\r\n\r\nexport const addGPOrLA = (role, data, accessToken) => {\r\n return axios.post(`${url}/${role}/create`, data, {\r\n headers: {\r\n Authorization: `Bearer ${accessToken}`,\r\n },\r\n });\r\n};\r\n\r\nexport const updateGPOrLA = (role, id, data, accessToken) => {\r\n return axios.put(`${url}/${role}/${id}`, data, {\r\n headers: {\r\n Authorization: `Bearer ${accessToken}`,\r\n },\r\n });\r\n};\r\n\r\nexport const deactivateGPOrLA = (role, id, accessToken) => {\r\n return axios.put(\r\n `${url}/${role}/${id}/deactivate`,\r\n {},\r\n {\r\n headers: {\r\n Authorization: `Bearer ${accessToken}`,\r\n },\r\n }\r\n );\r\n};\r\n\r\nexport const sendEmailForHistory = (data, accessToken) => {\r\n return axios.post(`${url}/notification/email/send-history`, data, {\r\n headers: {\r\n Authorization: `Bearer ${accessToken}`,\r\n \"Content-Type\": \"multipart/form-data\",\r\n },\r\n });\r\n};\r\n","(function (self) {\n if (self.URLSearchParams) {\n return;\n }\n\n var URLSearchParams = function (searchString) {\n Object.defineProperty(this, '_entries', { writable: true, value: {} });\n if (typeof searchString === 'string') {\n if (searchString !== '') {\n searchString = searchString.replace(/^\\?/, '');\n var attributes = searchString.split('&');\n var attribute;\n for (var i = 0; i < attributes.length; i++) {\n attribute = attributes[i].split('=');\n this.append(\n decodeURIComponent(attribute[0]),\n (attribute.length > 1) ? decodeURIComponent(attribute[1]) : ''\n );\n }\n }\n }\n };\n\n URLSearchParams.prototype.append = function (name, value) {\n if (name in this._entries) {\n this._entries[name].push(String(value));\n } else {\n this._entries[name] = [String(value)];\n }\n };\n\n URLSearchParams.prototype.toString = function () {\n var searchString = '';\n for (var name in this._entries) {\n var value = this._entries[name];\n for (var i = 0; i < value.length; i++) {\n searchString += (searchString ? '&' : '') + encodeURIComponent(name) + '=' + encodeURIComponent(value[i]);\n }\n }\n return searchString;\n };\n\n self.URLSearchParams = URLSearchParams;\n})(typeof global !== 'undefined' ? global : (typeof window !== 'undefined' ? window : this));\n","import React from \"react\";\nimport { Route, Redirect } from \"react-router-dom\";\n\nconst PrivateRoute = ({ children, ...rest }) => {\n\tconst isAuthenticated = () => {\n\t\tconst authState = JSON.parse(\n\t\t\tlocalStorage.getItem(\"auth0-token-storage\")\n\t\t);\n\t\ttry {\n\t\t\tif (authState?.access_token) {\n\t\t\t\treturn true;\n\t\t\t} else {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tconsole.log(error);\n\t\t}\n\t};\n\n\treturn (\n\t\t\n\t\t\t\tisAuthenticated() ? children : \n\t\t\t}\n\t\t/>\n\t);\n};\n\nexport default PrivateRoute;\n","export default __webpack_public_path__ + \"static/media/hapi-partner-logo.314ecf6f.png\";","import React, { useState, useEffect } from \"react\";\nimport { useHistory } from \"react-router-dom\";\n\nimport * as api from \"../../../api\";\nimport Loader from \"../../reusables/Loader\";\n\nfunction ClockIn({ setClockIn, getClockInStatusLoader }) {\n // const { authState } = useOktaAuth();\n const authState = JSON.parse(localStorage.getItem(\"auth0-token-storage\"));\n const accessToken = authState?.access_token;\n const mapsApiKey = \"AIzaSyBM-Dvkr-oOQlu4WNgZpCevlzzj7-ZobdU&q\";\n const [postData, setPostData] = useState({\n facilityId: 380,\n latitude: 51.16570369999999, // latitude of agintil\n longitude: -0.7552394, // longitude of agintil\n });\n const [loader, setLoader] = useState(false);\n const history = useHistory();\n\n // const getLocation = (e) => {\n // e.preventDefault();\n // let _postData = {};\n\n // function getPosition(pos) {\n // _postData.latitude = pos.coords.latitude ?? null;\n // _postData.longitude = pos.coords.longitude ?? null;\n // setPostData(_postData);\n // };\n\n // if (navigator.geolocation) {\n // _postData = {\n // facilityId: 380,\n // latitude: null,\n // longitude: null,\n // // description: \"\",\n // // facilityShortName: \"\",\n // // localTimeStamp: \"\",\n // }\n\n // navigator.geolocation.getCurrentPosition(getPosition);\n // }\n // }\n\n const submitClockIn = async (e) => {\n e.preventDefault();\n if (!authState || !accessToken) return;\n setLoader(true);\n try {\n const clockIn = await api.postClockInAndOut(postData, accessToken);\n console.log(\"Clocked In Successfully!\", clockIn);\n setClockIn((prev) => !prev);\n history.push(\"/landing-page\");\n } catch (error) {\n console.log(\"Error Clocking In\");\n console.log(error);\n if (\n\t\t\t\terror?.response?.status === 401 &&\n\t\t\t\terror?.response?.data?.errors?.length > 0 &&\n\t\t\t\terror?.response?.data?.errors[0]?.message === \"Invalid Token\"\n\t\t\t) {\n\t\t\t\thandleExpiration();\n\t\t\t}\n } finally {\n setLoader(false);\n }\n };\n\n const handleExpiration = () => {\n\t\tlocalStorage.removeItem(\"auth0-token-storage\");\n\t\tlocalStorage.removeItem(\"user-claims\");\n\t\thistory.push(\"/login\");\n\t};\n\n return (\n <>\n
\n
\n
\n await submitClockIn(e)}\n >\n {loader || getClockInStatusLoader ? (\n
\n \n
\n ) : (\n \"Clock In\"\n )}\n \n
\n
\n\n {/* */}\n {/*
\n {location &&\n location.latitude &&\n location.longitude &&\n userFacilities && (\n <>\n
\n \n {currentDateTime} {time}\n \n
\n
\n {selectFacility && (\n <>\n

\n You wish to clock-in in{\" \"}\n \n {selectFacility}\n \n . Is this correct?\n

\n

\n If not, please select for the right facility you want\n to clock in.\n

\n \n )}\n
\n
\n {!facilityLoader ? (\n \n \n {userFacilities &&\n userFacilities.length > 0 &&\n userFacilities.map((facility) => (\n \n {facility.shortName}\n \n ))}\n \n ) : (\n \n )}\n
\n
\n \n
\n
\n setPopupVisible(\"\")}\n onClick={handleCancel}\n >\n Cancel\n \n \n Okay\n \n
\n \n )}\n
*/}\n {/*
*/}\n \n \n );\n}\n\nexport default ClockIn;\n","import React, { useState, useEffect } from \"react\";\nimport { useHistory } from \"react-router-dom\";\n\nimport moment from \"moment\";\nimport * as api from \"../../../api\";\nimport Loader from \"../../reusables/Loader\";\n\nfunction ClockOut({\n clockInData,\n setClockIn,\n getClockInStatusLoader,\n // authState,\n}) {\n // const { authState } = useOktaAuth();\n const authState = JSON.parse(localStorage.getItem(\"auth0-token-storage\"));\n const accessToken = authState?.access_token;\n const [popupVisible, setPopupVisible] = useState(false);\n\n const [postData, setPostData] = useState({\n facilityId: 380,\n latitude: 51.16570369999999, // latitude of agintil\n longitude: -0.7552394, // longitude of agintil\n });\n const [loader, setLoader] = useState(false);\n\n const today = new Date();\n const history = useHistory();\n\n const clockInTime = moment(clockInData.TimeStampUtc);\n\n const d = new Date(clockInTime);\n\n let diffMs = today.getTime() - d.getTime(); // difference in milliseconds\n let hoursRendered = Math.floor(diffMs / (1000 * 60 * 60)); // difference in hours\n let minutesRendered = Math.floor((diffMs % (1000 * 60 * 60)) / (1000 * 60)); //\n\n const formatOptions = {\n weekday: \"long\",\n year: \"numeric\",\n month: \"long\",\n day: \"numeric\",\n };\n\n const currentDateTime = today.toLocaleDateString(\"en-US\", formatOptions);\n const [time, setTime] = useState(\"\");\n let interval;\n\n const updateTime = () => {\n interval = setInterval(() => {\n const currentTime = new Date().toLocaleTimeString();\n setTime(currentTime);\n }, 1000);\n };\n\n useEffect(() => {\n // clockInStatus();\n updateTime();\n return () => {\n clearInterval(interval);\n };\n }, []);\n\n const submitClockOut = async (e) => {\n e.preventDefault();\n let _postData = {};\n setLoader(true);\n\n function getPosition(pos) {\n _postData.latitude = pos.coords.latitude;\n _postData.longitude = pos.coords.longitude;\n }\n\n if (navigator.geolocation) {\n _postData = {\n facilityId: 380,\n latitude: null,\n longitude: null,\n };\n\n navigator.geolocation.getCurrentPosition(getPosition);\n }\n\n if (!authState || !authState.access_token) return;\n try {\n const clockOut = await api.postClockInAndOut(_postData, accessToken);\n setClockIn((prev) => !prev);\n console.log(\"Clocked Out Successfully!\", clockOut);\n localStorage.removeItem(\"facility\");\n history.push(\"/landing-page\");\n } catch (error) {\n console.log(\"Error Clocking Out\", error);\n if (\n\t\t\t\terror?.response?.status === 401 &&\n\t\t\t\terror?.response?.data?.errors?.length > 0 &&\n\t\t\t\terror?.response?.data?.errors[0]?.message === \"Invalid Token\"\n\t\t\t) {\n\t\t\t\thandleExpiration();\n\t\t\t}\n } finally {\n setLoader(false);\n }\n };\n\n // useEffect(async () => {\n // if (postData.facilityId !== 0) {\n // await submitClockOut();\n // }\n // }, [postData]);\n\n const handleCancel = (e) => {\n e.preventDefault();\n setPopupVisible(false);\n };\n\n const handleExpiration = () => {\n\t\tlocalStorage.removeItem(\"auth0-token-storage\");\n\t\tlocalStorage.removeItem(\"user-claims\");\n\t\thistory.push(\"/login\");\n\t};\n\n return (\n <>\n
\n {/*
*/}\n
\n
\n {\n // if (popupVisible) {\n // setPopupVisible(false);\n // } else {\n // setPopupVisible(true);\n // }\n // }}\n onClick={async (e) => submitClockOut(e)}\n >\n {loader || getClockInStatusLoader ? (\n
\n \n
\n ) : (\n \"Clock Out\"\n )}\n \n
\n
\n\n {/* \n \n
\n \n {currentDateTime} {time}\n \n
\n
\n

\n Clocking out will render you {hoursRendered === 0 ? hoursRendered : hoursRendered - 1} hour(s) and{\" \"}\n {minutesRendered} mins.\n

\n

\n Do you wish to continue?\n

\n
\n
\n \n Cancel\n \n await submitClockOut(e)}\n >\n Okay\n \n
\n \n
*/}\n \n \n );\n}\n\nexport default ClockOut;\n","/* eslint-disable react-hooks/exhaustive-deps */\n//import packages\nimport React, { useState, useEffect, useRef } from \"react\";\nimport { NavLink, useLocation, useHistory } from \"react-router-dom\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { toast, Toaster } from \"react-hot-toast\";\n// Push Notification\nimport { db } from \"../../firebase/firebase\";\nimport { ref, onValue, off } from \"firebase/database\";\n\nimport * as api from \"../../api\";\nimport moment from \"moment\";\nimport userRoles from \"../../role\";\n\n//import assets\nimport logo from \"../../assets/images/hapi-partner-logo.png\";\n\n//import other components\n// import SearchBar from \"../searchbar/searchbar\";\n// import NavInfo from \"../nav-info/info\";\nimport ClockIn from \"../pages/landing_page/ClockIn\";\nimport ClockOut from \"../pages/landing_page/ClockOut\";\nimport Loader from \"../reusables/Loader\";\nimport ResidentDetails from \"../pages/notifications/ResidentDetails\";\n\nfunction Navbar({\n searchTerm,\n setSearchTerm,\n setSort,\n changeURLPatient,\n confirmShowed,\n setConfirmShowed,\n saved,\n setSaved,\n currentPage,\n setCurrentPage,\n setNavBarLoader,\n selectedOption,\n notificationData,\n setNotificationData,\n notificationLoader,\n unreadCount,\n setUnreadCount,\n}) {\n // const { authState, oktaAuth } = useOktaAuth();\n const authState = JSON.parse(localStorage.getItem(\"auth0-token-storage\"));\n const userClaims = JSON.parse(localStorage.getItem(\"user-claims\"));\n const accessToken = authState?.access_token;\n const userId = userClaims?._id ? userClaims?._id : null;\n const { facilityManagerRole, careHomeManagerRole } = userRoles();\n const history = useHistory();\n const location = useLocation();\n // For Clock in and Out Button\n const [clockInData, setClockInData] = useState(null);\n const [showClock, setShowClock] = useState(false);\n const [clockInToggle, setClockInToggle] = useState(false);\n const [getClockInStatusLoader, setGetClockInStatusLoader] = useState(false);\n let param =\n location?.search?.split(\"&\")?.filter((item) => item !== \"\") ?? null;\n const [paramState] = useState({\n facility:\n param[3]?.split(\"=\")[1] === \"null\" || !param[3]?.split(\"=\")[1]\n ? null\n : param[3]?.split(\"=\")[1].split(\",\").length > 1\n ? param[3]\n ?.split(\"=\")[1]\n ?.split(\",\")\n ?.map((i) => parseInt(i))\n : [parseInt(param[3].split(\"=\")[1])],\n filter:\n param[4]?.split(\"=\")[1] === \"all\" || !param[4]?.split(\"=\")[1]\n ? \"all\"\n : param[4].split(\"=\")[1],\n });\n const [showPopup, setShowPopup] = useState(false);\n let notifRef = useRef();\n\n const handleBellClick = () => {\n setUnreadCount(false);\n setShowPopup(!showPopup);\n };\n\n useEffect(() => {\n let handler = (e) => {\n if (notifRef.current && !notifRef.current.contains(e.target)) {\n setShowPopup(false);\n }\n };\n document.addEventListener(\"mousedown\", handler);\n return () => {\n document.removeEventListener(\"mousedown\", handler);\n };\n }, []);\n\n useEffect(() => {\n async function data() {\n if (!authState) {\n // When user isn't authenticated, forget any user info\n // setUserInfo(null);\n setShowClock(false);\n } else {\n // oktaAuth.getUser().then((info) => {\n // setUserInfo(info);\n setShowClock(true);\n // });\n }\n }\n data();\n }, [authState]); // Update if authState changes\n\n const handleExpiration = () => {\n localStorage.removeItem(\"auth0-token-storage\");\n localStorage.removeItem(\"user-claims\");\n history.push(\"/login\");\n };\n\n const clockInStatus = async () => {\n if (!authState || !authState.access_token) return;\n\n setGetClockInStatusLoader(true);\n try {\n const data = await api.getClockInStatus(accessToken);\n\n if (\n data?.data?.data &&\n data?.data?.data[data?.data?.data?.length - 1]?.Description ===\n \"Clock In\"\n ) {\n setClockInData(data.data.data[0]);\n } else {\n setClockInData(null);\n }\n } catch (error) {\n // history.push(\"/dashboard\");\n console.log(\"error getting clock in status\", error);\n if (\n error?.response?.status === 401 &&\n error?.response?.data?.errors?.length > 0 &&\n error?.response?.data?.errors[0]?.message === \"Invalid Token\"\n ) {\n handleExpiration();\n }\n } finally {\n setGetClockInStatusLoader(false);\n }\n };\n\n useEffect(() => {\n clockInStatus();\n }, [accessToken, clockInToggle]);\n\n const handleNotifClick = (residentId) => {\n history.push(`/allConsents/${residentId}`);\n setShowPopup(false);\n };\n\n const handlePushNotifications = () => {\n let isMounted = false;\n const notifRef = ref(db, `${userId}/notif`);\n const onDataChange = (snapshot) => {\n const data = snapshot.val();\n if (data) {\n const innerObjectKey = Object.keys(data).find((key) => data[key]._id);\n const array = innerObjectKey ? data[innerObjectKey] : null;\n // console.log(array);\n if (array && array !== null) {\n if (isMounted) {\n setNotificationData((prevArray) => [array, ...prevArray]);\n setUnreadCount(true);\n toast(array.notes + \" a \" + array.event);\n } else {\n isMounted = true;\n }\n }\n }\n };\n onValue(notifRef, onDataChange);\n return () => {\n isMounted = false;\n off(notifRef, onDataChange);\n };\n };\n\n useEffect(() => {\n handlePushNotifications();\n }, []);\n\n return (\n <>\n \n
\n
\n
\n = 0\n ? \"/login\"\n : \"/landing-page\"\n }`}\n >\n \n \n
\n
\n {location.pathname.indexOf(\"/patients\") >= 0 ? (\n <>\n {location.pathname.indexOf(\"/patients/add\") >= 0 ||\n location.pathname.indexOf(\"/patients/edit\") >= 0 ? null : (\n
\n {selectedOption.length <= 0 ? null : (\n {\n setNavBarLoader(true);\n setSearchTerm(e.target.value);\n setCurrentPage(1);\n changeURLPatient(\n null,\n 1,\n null,\n paramState.facility,\n paramState.filter\n );\n setNavBarLoader(false);\n }}\n />\n )}\n
\n )}\n {location.pathname.indexOf(\"/patients/add\") >= 0 ||\n location.pathname.indexOf(\"/patients/edit\") >= 0 ? null : (\n
\n
\n
SORT BY:
\n {\n setSort(e.target.value);\n changeURLPatient(\n null,\n 1,\n null,\n paramState.facility,\n paramState.filter\n );\n }}\n >\n \n \n \n \n \n \n \n \n \n \n
\n
\n )}\n \n ) : null}\n
\n {facilityManagerRole || careHomeManagerRole ? null : (\n \n {!clockInData ? (\n
\n \n
\n ) : (\n
\n \n
\n )}\n
\n )}\n
\n {location.pathname.includes(\"/login\") ||\n location.pathname.includes(\"/forgotPassword\") ||\n location.pathname.includes(\"/sign-up\") ||\n location.pathname.includes(\n \"/consent\"\n ) ? null : !authState ? null : (\n
\n \n \n \n {/* {unreadCount > 0 && (\n \n {unreadCount > 5 ? \"5+\" : unreadCount}\n \n )} */}\n {unreadCount && (\n \n )}\n\n {showPopup && (\n \n {!notificationLoader ? (\n <>\n \n
Notifications
\n
\n {notificationData && notificationData.length > 0 ? (\n <>\n {notificationData.slice(0, 5).map((data, index) => (\n handleNotifClick(data.resident)}\n >\n
\n \n \n \n \n

\n \n {data.notes}\n

\n \n {\" \"}\n {moment(new Date(data.createdAt)).fromNow()}\n

\n
\n {/*
\n

\n \n \n \n

\n

\n \n

\n
*/}\n
\n ))}\n \n ) : (\n \n No Notifications Available\n
\n )}\n {notificationData.length > 4 && (\n
\n setShowPopup(false)}\n >\n \n See all\n

\n \n
\n )}\n \n ) : (\n
\n \n
\n )}\n \n )}\n \n )}\n \n \n \n \n );\n}\n\nexport default Navbar;\n","import React, { Component } from \"react\";\r\n\r\n// Font Awesome Icons\r\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\r\nimport { library } from \"@fortawesome/fontawesome-svg-core\";\r\nimport { fab } from \"@fortawesome/free-brands-svg-icons\";\r\nimport { far } from \"@fortawesome/free-regular-svg-icons\";\r\nimport { fas } from \"@fortawesome/free-solid-svg-icons\";\r\nlibrary.add(fab, far, fas);\r\n\r\nclass Footer extends Component {\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\tCopyright 2021 Hapi Healthcare - All rights\r\n\t\t\t\t\t\t\t\t\treserved.\r\n\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tAbout Us\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tServices\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{/* \r\n Terms and Conditions\r\n */}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tHapi Starts Here!\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tContact Us\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default Footer;\r\n","import React, { useEffect, useState } from \"react\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport moment from \"moment\";\r\n\r\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\r\nimport Modal from \"react-bootstrap/Modal\";\r\nimport Button from \"react-bootstrap/Button\";\r\nimport AvatarImg from \"../../assets/svg/Handovers/ClientProfile.svg\";\r\nimport Avatar from \"react-avatar-edit\";\r\nimport * as api from \"../../api\";\r\nimport \"./user-info.css\";\r\nimport Swal from \"sweetalert2\";\r\n\r\nconst UserInfo = ({ firstName, lastName, id }) => {\r\n // const { oktaAuth, authState } = useOktaAuth();\r\n // const accessToken = authState.accessToken;\r\n const history = useHistory();\r\n const authState = JSON.parse(localStorage.getItem(\"auth0-token-storage\"));\r\n const accessToken = authState?.access_token;\r\n const userId = id;\r\n const [greeting, setGreeting] = useState(\"\");\r\n const [avatarPic, setAvatarPic] = useState(null);\r\n const [preview, setPreview] = useState(\"\");\r\n const [picture, setPicture] = useState({\r\n picture: \"\",\r\n });\r\n const [show, setShow] = useState(false);\r\n const [loader, setLoader] = useState(false);\r\n\r\n const generateGreetings = (currentHour) => {\r\n if (currentHour >= 0 && currentHour < 12) {\r\n setGreeting(\"Good Morning\");\r\n } else if (currentHour >= 12 && currentHour < 17) {\r\n setGreeting(\"Good Afternoon\");\r\n } else if (currentHour >= 17) {\r\n setGreeting(\"Good Evening\");\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n if (!authState) {\r\n // oktaAuth.signOut();\r\n localStorage.removeItem(\"auth0-token-storage\");\r\n }\r\n }, [authState]);\r\n\r\n useEffect(() => {\r\n generateGreetings(moment().format(\"HH\"));\r\n }, []);\r\n\r\n const onClose = () => {\r\n setPreview(\"\");\r\n };\r\n\r\n const onCrop = (view) => {\r\n setPreview(view);\r\n };\r\n\r\n const onBeforeFileLoad = (elem) => {\r\n if (elem.target.files[0].size > 3000000) {\r\n Swal.fire({\r\n title: \"Error!\",\r\n html: \"File is too big\",\r\n icon: \"error\",\r\n confirmButtonColor: \"#833f84\",\r\n });\r\n elem.target.value = \"\";\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n // console.log(preview);\r\n setPicture({ ...picture, picture: preview });\r\n }, [preview]);\r\n\r\n const cancelUpdatePhoto = () => {\r\n if (preview === \"\" || preview === null) {\r\n setPreview(\"\");\r\n setShow(false);\r\n } else {\r\n setShow(false);\r\n }\r\n };\r\n\r\n const updatePhoto = async () => {\r\n setLoader(true);\r\n try {\r\n await api.updateUserPhoto(picture, userId, accessToken);\r\n Swal.fire({\r\n title: \"Success!\",\r\n icon: \"success\",\r\n html: \"Photo updated successfully!\",\r\n confirmButtonColor: \"#833f84\",\r\n });\r\n setLoader(false);\r\n setShow(false);\r\n } catch (error) {\r\n console.log(\"error updating user photo\", error);\r\n Swal.fire({\r\n title: \"Error!\",\r\n html: \"Error Updating Photo\",\r\n icon: \"error\",\r\n confirmButtonColor: \"#833f84\",\r\n });\r\n setLoader(false);\r\n setShow(false);\r\n if (\r\n error?.response?.status === 401 &&\r\n error?.response?.data?.errors?.length > 0 &&\r\n error?.response?.data?.errors[0]?.message === \"Invalid Token\"\r\n ) {\r\n handleExpiration();\r\n }\r\n }\r\n };\r\n\r\n const getUserPhoto = async () => {\r\n setLoader(true);\r\n try {\r\n const data = await api.getUserPhoto(userId, accessToken);\r\n // console.log(data.data.data);\r\n const img = data.data.data;\r\n setPreview(img);\r\n } catch (err) {\r\n console.log(\"error getting user photo\", err);\r\n if (\r\n err?.response?.status === 401 &&\r\n err?.response?.data?.errors?.length > 0 &&\r\n err?.response?.data?.errors[0]?.message === \"Invalid Token\"\r\n ) {\r\n handleExpiration();\r\n }\r\n }\r\n };\r\n\r\n const handleExpiration = () => {\r\n localStorage.removeItem(\"auth0-token-storage\");\r\n localStorage.removeItem(\"user-claims\");\r\n history.push(\"/login\");\r\n };\r\n\r\n useEffect(() => {\r\n getUserPhoto();\r\n }, []);\r\n\r\n return (\r\n
\r\n
\r\n {/*

\r\n {firstName[0].toUpperCase()}\r\n {lastName[0].toUpperCase()}\r\n

*/}\r\n {preview ? (\r\n \"\"\r\n ) : (\r\n \"\"\r\n )}\r\n\r\n
\r\n
\r\n setShow(true)}\r\n >\r\n \r\n

Edit

\r\n
\r\n\r\n

\r\n {greeting},{\" \"}\r\n {firstName === \"Demo\" || firstName === \"demo\"\r\n ? firstName.charAt(0).toUpperCase() +\r\n firstName.slice(1) +\r\n \" \" +\r\n lastName.charAt(0).toUpperCase() +\r\n lastName.slice(1)\r\n : firstName.charAt(0).toUpperCase() + firstName.slice(1)}\r\n !\r\n

\r\n {/*
\r\n
Hapi Loved Ones
\r\n \r\n
\r\n
\r\n \r\n \r\n
*/}\r\n \r\n \r\n Choose a Picture\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\nexport default UserInfo;\r\n","export default __webpack_public_path__ + \"static/media/Dashboard.02025c1b.svg\";","export default __webpack_public_path__ + \"static/media/Schedule.f679208a.svg\";","export default __webpack_public_path__ + \"static/media/Patients.8a92fb98.svg\";","export default __webpack_public_path__ + \"static/media/Handovers.9fe8afb7.svg\";","export default __webpack_public_path__ + \"static/media/Support.3708b498.svg\";","export default __webpack_public_path__ + \"static/media/Kompliwise.4cb8440a.svg\";","export default __webpack_public_path__ + \"static/media/Podiatry.d4eb3223.svg\";","export default __webpack_public_path__ + \"static/media/Dietetics.b70d7cfd.svg\";","export default __webpack_public_path__ + \"static/media/ProgressNotes.ff69aa40.svg\";","export default __webpack_public_path__ + \"static/media/Assessments.2acecc66.svg\";","export default __webpack_public_path__ + \"static/media/Careplans.4adf63ce.svg\";","export default __webpack_public_path__ + \"static/media/Account.93472470.svg\";","import React, { useState } from \"react\";\nimport { NavLink, useLocation, useHistory, Link } from \"react-router-dom\";\n\n//Okta related packages\n\nimport UserInfo from \"../../components/user-info/user-info\";\nimport { useSelector } from \"react-redux\";\nimport usePracticeHook from \"../../practice\";\nimport userRoles from \"../../role\";\n\n// SVG Icons\nimport Dashboard from \"../../assets/svg/Sidebar/Dashboard.svg\";\nimport Calendar from \"../../assets/svg/Sidebar/Schedule.svg\";\nimport Patients from \"../../assets/svg/Sidebar/Patients.svg\";\nimport Handovers from \"../../assets/svg/Sidebar/Handovers.svg\";\nimport Support from \"../../assets/svg/Sidebar/Support.svg\";\nimport Kompliwise from \"../../assets/svg/Sidebar/Kompliwise.svg\";\nimport Podiatry from \"../../assets/svg/Sidebar/Podiatry.svg\";\nimport Dietetics from \"../../assets/svg/Sidebar/Dietetics.svg\";\nimport ProgressNotes from \"../../assets/svg/Sidebar/ProgressNotes.svg\";\nimport Assessment from \"../../assets/svg/Sidebar/Assessments.svg\";\nimport CarePlans from \"../../assets/svg/Sidebar/Careplans.svg\";\nimport Account from \"../../assets/svg/Sidebar/Account.svg\";\n\n// Font Awesome Icons\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { library } from \"@fortawesome/fontawesome-svg-core\";\nimport { fab } from \"@fortawesome/free-brands-svg-icons\";\nimport { far } from \"@fortawesome/free-regular-svg-icons\";\nimport { fas } from \"@fortawesome/free-solid-svg-icons\";\nlibrary.add(fab, far, fas);\n\nconst SideBar = ({ setIsNavClosed, saved, setSaved }) => {\n const authState = JSON.parse(localStorage.getItem(\"auth0-token-storage\"));\n const userClaims = JSON.parse(localStorage.getItem(\"user-claims\"));\n const clientApp = userClaims && userClaims?.clientApp;\n const isHapiPartnerUser =\n clientApp && clientApp.some((data) => data.appName === \"HAPIPARTNERS\");\n const kompliwiseURL = process.env.REACT_APP_KOMPLIWISE_URL;\n const { hasPhysioPractice, hasDiatecianPractice } = usePracticeHook();\n const {\n superAdminRole,\n clinicalManagerRole,\n facilityManagerRole,\n careHomeManagerRole,\n } = userRoles();\n let history = useHistory();\n // const dispatch = useDispatch();\n const roles = useSelector((state) => state.roles);\n const location = useLocation();\n\n const handleExpiration = () => {\n localStorage.removeItem(\"auth0-token-storage\");\n localStorage.removeItem(\"user-claims\");\n history.push(\"/login\");\n };\n\n const handleChangeURL = (e, url) => {\n e.preventDefault();\n if (!saved) {\n if (\n !window.confirm(\n \"Are you sure you want to leave this page? Unsaved changes will be discarded\"\n )\n )\n return;\n }\n setSaved(true);\n history.push(url);\n\n // reload page if your last route is /support or /login\n if (\n location.pathname.includes(\"/support/contact\") ||\n location.pathname.includes(\"/login\")\n ) {\n window.location.reload();\n }\n\n // if (\n // !window.location.pathname.includes(\"/support/contact\") ||\n // !window.location.pathname.includes(\"/login\")\n // ) {\n // window.location.reload();\n // }\n };\n\n return (\n
\n setIsNavClosed(true)}\n >\n \n Close\n \n {userClaims ? (\n <>\n \n \n ) : null}\n {userClaims && (\n
\n {/* {roles.includes(\"superadmin\") ||\n roles.includes(\"admin\") ||\n roles.includes(\"partner\") ||\n roles.includes(\"supermanager\") ? ( */}\n {/* \n handleChangeURL(e, '/landing-page')}\n >\n \n HAPIYOU\n \n */}\n {!isHapiPartnerUser ? null : (\n = 0\n ? \" active\"\n : \"\")\n }\n >\n handleChangeURL(e, \"/landing-page\")}\n >\n \"Dashboard\"\n DASHBOARD\n \n \n )}\n {/* ) : null} */}\n {/* {roles.includes(\"superadmin\") ||\n roles.includes(\"admin\") ||\n roles.includes(\"partner\") ||\n roles.includes(\"supermanager\") ? ( */}\n {!isHapiPartnerUser ? null : (\n = 0 ? \" active\" : \"\")\n }\n >\n handleChangeURL(e, \"/schedules\")}\n >\n \"Schedule\"\n SCHEDULE\n \n \n )}\n\n {!isHapiPartnerUser ? null : (\n <>\n {superAdminRole ||\n facilityManagerRole ||\n clinicalManagerRole ||\n careHomeManagerRole ? (\n <>\n = 0\n ? \"active\"\n : \"\"\n }`}\n >\n \n \n FACILITIES\n \n \n = 0\n ? \"show\"\n : \"\"\n }`}\n id=\"facilityDropdown\"\n >\n {/* Podiatrist */}\n = 0\n ? \" active\"\n : \"\")\n }\n >\n \n \n PODIATRY\n \n \n = 0\n ? \"show\"\n : \"\"\n }`}\n id=\"podiatryDropdown\"\n >\n = 0\n ? \" active\"\n : \"\")\n }\n >\n \n handleChangeURL(\n e,\n \"/facilities/podiatry/progressNotes?page=1&podiatrist=null&facility=null\"\n )\n }\n >\n \n PROGRESS NOTES\n \n \n = 0\n ? \" active\"\n : \"\")\n }\n >\n \n handleChangeURL(\n e,\n \"/facilities/podiatry/assessments?page=1&podiatrist=null&facility=null\"\n )\n }\n >\n \n ASSESSMENTS\n \n \n = 0\n ? \" active\"\n : \"\")\n }\n >\n \n handleChangeURL(\n e,\n \"/facilities/podiatry/carePlans?page=1&podiatrist=null&facility=null\"\n )\n }\n >\n \n CARE PLANS\n \n \n
\n {/* Physiotherapy */}\n = 0\n ? \" active\"\n : \"\")\n }\n >\n \n \n PHYSIOTHERAPY\n \n \n = 0\n ? \"show\"\n : \"\"\n }`}\n id=\"physiotherapyDropdown\"\n >\n = 0\n ? \" active\"\n : \"\")\n }\n >\n \n handleChangeURL(\n e,\n \"/facilities/physiotherapy/progressNotes?page=1&physiotherapist=null&facility=null\"\n )\n }\n >\n \n PROGRESS NOTES\n \n \n = 0\n ? \" active\"\n : \"\")\n }\n >\n \n handleChangeURL(\n e,\n \"/facilities/physiotherapy/assessments?page=1&physiotherapist=null&facility=null\"\n )\n }\n >\n \n ASSESSMENTS\n \n \n
\n {/* Dietetics */}\n = 0\n ? \" active\"\n : \"\")\n }\n >\n \n \n DIETETICS\n \n \n = 0\n ? \"show\"\n : \"\"\n }`}\n id=\"dieteticsDropdown\"\n >\n = 0\n ? \" active\"\n : \"\")\n }\n >\n \n handleChangeURL(\n e,\n \"/facilities/dietetics/progressNotes?page=1&dietitian=null&facility=null\"\n )\n }\n >\n \n PROGRESS NOTES\n \n \n = 0\n ? \" active\"\n : \"\")\n }\n >\n \n handleChangeURL(\n e,\n \"/facilities/dietetics/assessments?page=1&dietitian=null&facility=null\"\n )\n }\n >\n \n ASSESSMENTS\n \n \n \n \n \n ) : null}\n \n )}\n\n {!isHapiPartnerUser ? null : (\n = 0 ? \" active\" : \"\")\n }\n >\n {hasPhysioPractice ? (\n \n handleChangeURL(\n e,\n \"/patients?page=1&patientId=null&tab=2&facility=null&filter=all\"\n )\n }\n >\n \"Dashboard\"\n PATIENTS\n \n ) : (\n \n handleChangeURL(\n e,\n \"/patients?page=1&patientId=null&tab=1&facility=null&filter=all\"\n )\n }\n >\n \"Dashboard\"\n PATIENTS\n \n )}\n \n )}\n\n {!isHapiPartnerUser || careHomeManagerRole ? null : (\n = 0 ? \" active\" : \"\")\n }\n >\n handleChangeURL(e, \"/tasks\")}\n >\n {/* \"Dashboard\" */}\n \n TASKS\n \n \n )}\n\n {!isHapiPartnerUser ? null : (\n = 0 ? \" active\" : \"\")\n }\n >\n handleChangeURL(e, \"/chat?channelId=null\")}\n >\n {/* \"Dashboard\" */}\n \n CHAT\n \n \n )}\n {/* ) : null} */}\n {roles.includes(\"superadmin\") && (\n = 0 ? \" active\" : \"\")\n }\n >\n handleChangeURL(e, \"/users\")}\n >\n \n USERS\n \n \n )}\n {/* {roles.includes(\"superadmin\") ||\n roles.includes(\"admin\") ||\n roles.includes(\"partner\") ||\n roles.includes(\"supermanager\") ? ( */}\n {/* // {getHand} */}\n {!isHapiPartnerUser ? null : hasPhysioPractice ||\n hasDiatecianPractice ? null : (\n = 0 ? \" active\" : \"\")\n }\n >\n \n handleChangeURL(\n e,\n \"/handovers?page=1&facility=null&fromDate=null&toDate=null\"\n )\n }\n >\n \"Schedule\"\n HANDOVER\n \n \n )}\n {/* {hasDiatecianPractice ? (\n = 0 ? \" active\" : \"\")\n }\n >\n \n handleChangeURL(\n e,\n \"/treatments\"\n )\n }\n >\n \"Schedule\"\n HANDOVER\n \n \n ) : null } */}\n\n {/* ) : null} */}\n {/* {roles.includes(\"superadmin\") ||\n roles.includes(\"admin\") ||\n roles.includes(\"partner\") ||\n roles.includes(\"supermanager\") ? (\n = 0 ? \" active\" : \"\")\n }\n >\n \n \n INVOICES\n \n \n ) : null} */}\n {/* {roles.includes(\"superadmin\") ||\n roles.includes(\"admin\") ||\n roles.includes(\"partner\") ||\n roles.includes(\"supermanager\") ? ( */}\n {!isHapiPartnerUser ? null : (\n = 0 ? \" active\" : \"\")\n }\n >\n handleChangeURL(e, \"/support/contact\")}\n >\n \"Support\"\n SUPPORT\n \n \n )}\n {/* ) : null} */}\n {!isHapiPartnerUser || careHomeManagerRole ? null : (\n
  • \n \n \n KOMPLIWISE\n \n
  • \n )}\n {!isHapiPartnerUser ? null : (\n = 0\n ? \" active\"\n : \"\")\n }\n >\n handleChangeURL(e, \"/notifications?page=1\")}\n >\n \n NOTIFICATIONS\n \n \n )}\n {!superAdminRole ? null : (\n <>\n = 0 ? \" active\" : \"\")\n }\n >\n \n \n ACCOUNT\n \n \n = 0 ? \"show\" : \"\"\n }`}\n id=\"accountDropdown\"\n >\n = 0\n ? \" active\"\n : \"\")\n }\n >\n handleChangeURL(e, \"/account/register\")}\n >\n \"account\"\n REGISTER\n \n \n {/* = 0\n ? \" active\"\n : \"\")\n }\n >\n \n handleChangeURL(e, \"/account/lists?page=1\")\n }\n >\n \n ACCOUNT LISTS\n \n */}\n \n \n )}\n = 0 ? \" active\" : \"\")\n }\n >\n handleChangeURL(e, \"/settings\")}\n >\n \n SETTINGS\n \n \n\n {/* {roles.includes(\"superadmin\") ||\n roles.includes(\"admin\") ||\n roles.includes(\"partner\") ||\n roles.includes(\"supermanager\") ? (\n = 0 ? \" active\" : \"\")\n }\n >\n \n
    \n \n

    TERMS AND CONDITIONS

    \n
    \n
    \n \n ) : null} */}\n {/* {roles.includes(\"user\") && (\n = 0 ? \" active\" : \"\")\n }\n >\n \n \n LOVED ONES\n \n \n )}\n {roles.includes(\"superadmin\") ||\n roles.includes(\"admin\") ||\n roles.includes(\"partner\") ||\n roles.includes(\"supermanager\") ? (\n = 0 ? \" active\" : \"\")\n }\n >\n \n \n PROGRESS NOTES\n \n \n ) : null}\n {roles.includes(\"superadmin\") ||\n roles.includes(\"admin\") ||\n roles.includes(\"partner\") ||\n roles.includes(\"supermanager\") ? (\n = 0 ? \" active\" : \"\")\n }\n >\n \n \n ASSESSMENTS\n \n \n ) : null}\n {roles.includes(\"superadmin\") ||\n roles.includes(\"admin\") ||\n roles.includes(\"partner\") ||\n roles.includes(\"supermanager\") ? (\n = 0 ? \" active\" : \"\")\n }\n >\n \n \n CARE PLANS\n \n \n ) : null} */}\n {/*
  • \n \n \n FACILITIES\n \n
  • */}\n {/*
  • \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tHAPI HR\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
      \n\t\t\t\t\t\t\t\t
    • HR
    • \n\t\t\t\t\t\t\t\t
    • KompliWise
    • \n\t\t\t\t\t\t\t\t
    • Journal Club
    • \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\t
  • \n\t\t\t\t\t\t handleChangeURL(e, \"/landing-page\")}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tHAPI CHAT\n\t\t\t\t\t\t\n\t\t\t\t\t
  • */}\n
    \n {userClaims && authState ? (\n
  • \n

    \n \n LOG OUT\n

    \n
  • \n ) : (\n
  • \n \n \n LOG IN\n \n
  • \n )}\n \n )}\n \n );\n};\n\nexport default SideBar;\n","import React, { useState, useEffect } from \"react\";\r\nimport iso from \"iso-3166-1\";\r\n// import API from \"../../api\";\r\nimport { Redirect, NavLink, useHistory } from \"react-router-dom\";\r\nimport ModernDatepicker from \"react-modern-datepicker\";\r\nimport moment from \"moment\";\r\n\r\nimport AlertsTop from \"../reusables/AlertsTop\";\r\nimport Loader from \"../reusables/Loader\";\r\nimport Swal from \"sweetalert2\";\r\nimport * as api from \"../../api\";\r\n\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\n\r\nimport { createUser } from \"../../actions/users\";\r\n\r\nconst Signup = () => {\r\n const history = useHistory();\r\n const dispatch = useDispatch();\r\n const userCreateResponse = useSelector((state) => state.user.response);\r\n // const { authState } = useOktaAuth()\r\n const authState = JSON.parse(localStorage.getItem(\"auth0-token-storage\"));\r\n\r\n const [loading, setLoading] = useState(false);\r\n const [registerSuccessful, setRegisterSuccessful] = useState(false);\r\n const [successMessage, setSuccessMessage] = useState(null);\r\n const [errorMessage, setErrorMessage] = useState();\r\n const [errorIndicator, setErrorIndicator] = useState();\r\n const [countries, setCountries] = useState([]);\r\n const [practices, setPractices] = useState([]);\r\n const [signupError, setsignupError] = useState(null);\r\n\r\n //user information state variables\r\n let lovedOnesFormData = [];\r\n const [numOfLovedOnes, setNumOfLovedOnes] = useState(0);\r\n //const [password, setPassword] = useState(\"\");\r\n const [confirmPassword, setConfirmPassword] = useState(\"\");\r\n const [userInfo, setUserInfo] = useState({\r\n // login: null,\r\n firstName: \"\",\r\n middleName: \"\",\r\n lastName: \"\",\r\n nickName: \"\",\r\n dateOfBirth: \"\",\r\n gender: \"male\",\r\n address: \"\",\r\n zipCode: \"\",\r\n countryCode: \"\",\r\n practice: \"\",\r\n email: \"\",\r\n password: \"\",\r\n clientApp: \"HAPIPARTNERS\",\r\n // title: \"Mr.\",\r\n // ifLovedOne: false,\r\n // lovedOnes: [],\r\n });\r\n const [birthday, setBirthday] = useState(\"\");\r\n\r\n useEffect(() => {\r\n if (birthday && birthday !== \"\") {\r\n const birthDate = moment(birthday, \"DD/MM/YYYY\").format(\"YYYY-MM-DD\");\r\n setUserInfo({\r\n ...userInfo,\r\n dateOfBirth: birthDate,\r\n });\r\n }\r\n }, [birthday]);\r\n\r\n useEffect(() => {\r\n if (iso.all().length > 0) {\r\n setCountries(iso.all());\r\n }\r\n }, [iso]);\r\n\r\n useEffect(() => {\r\n if (practices) {\r\n setUserInfo({\r\n ...userInfo,\r\n practice: practices[0]?._id,\r\n });\r\n }\r\n }, [practices]);\r\n\r\n //this runs when their is an error creating a user;\r\n // useEffect(() => {\r\n // console.log(\"useeffect create error\", userCreateResponse);\r\n\r\n // if (userCreateResponse) {\r\n // if (userCreateResponse.status === 200) {\r\n // console.log(\"user creation was successful\");\r\n // setRegisterSuccessful(true);\r\n // } else {\r\n // console.log(\"ther is an error creating a user\");\r\n // setErrorMessage(`There was an error creating the user`);\r\n // }\r\n // }\r\n // }, [userCreateResponse]);\r\n\r\n const validateForm = () => {\r\n let isValid = false;\r\n\r\n if (\r\n userInfo.firstName === \"\" ||\r\n userInfo.middleName === \"\" ||\r\n userInfo.lastName === \"\" ||\r\n userInfo.nickName === \"\" ||\r\n userInfo.dateOfBirth === \"\" ||\r\n userInfo.address === \"\" ||\r\n userInfo.zipCode === \"\" ||\r\n userInfo.countryCode === \"\" ||\r\n userInfo.email === \"\" ||\r\n userInfo.password === \"\"\r\n // userInfo.nickname === null ||\r\n // userInfo.lovedOnes === null ||\r\n ) {\r\n if (userInfo.firstName === \"\") {\r\n setErrorIndicator(\"firstName\");\r\n } else if (userInfo.middleName === \"\") {\r\n setErrorIndicator(\"middleName\");\r\n } else if (userInfo.lastName === \"\") {\r\n setErrorIndicator(\"lastName\");\r\n } else if (userInfo.nickName === \"\") {\r\n setErrorIndicator(\"nickName\");\r\n } else if (userInfo.dateOfBirth === \"\") {\r\n setErrorIndicator(\"dateOfBirth\");\r\n } else if (userInfo.address === \"\") {\r\n setErrorIndicator(\"address\");\r\n } else if (userInfo.zipCode === \"\") {\r\n setErrorIndicator(\"zipCode\");\r\n } else if (userInfo.countryCode === \"\") {\r\n setErrorIndicator(\"countryCode\");\r\n } else if (userInfo.email === \"\") {\r\n setErrorIndicator(\"email\");\r\n } else if (userInfo.password === \"\") {\r\n setErrorIndicator(\"password\");\r\n }\r\n // } else if (userInfo.middlename === null) {\r\n // setErrorIndicator(\"middle name\");\r\n setErrorMessage(\"Please fill in all the fields.\");\r\n isValid = false;\r\n } else if (userInfo.password !== confirmPassword) {\r\n setErrorMessage(\"Passwords do not match.\");\r\n setErrorIndicator(\"password\");\r\n isValid = false;\r\n } else if (userInfo.password.length <= 8) {\r\n setErrorMessage(\"Password needs to be longer than 8 characters.\");\r\n setErrorIndicator(\"password\");\r\n isValid = false;\r\n } else {\r\n isValid = true;\r\n }\r\n\r\n //this is the love ones field validation\r\n if (userInfo.ifLovedOne === true) {\r\n for (let i = 0; i < numOfLovedOnes; i++) {\r\n let randomWords = userInfo.lovedOnes[i].randomWords.split(\",\");\r\n if (\r\n userInfo.lovedOnes[i].hasOwnProperty(\"lastName\") === false ||\r\n userInfo.lovedOnes[i].lastName === \"\"\r\n ) {\r\n console.log(\"u need to enter a firstname\" + i);\r\n setErrorMessage(`You need to enter a last name for loved one.`);\r\n setErrorIndicator(`lastname${i}`);\r\n isValid = false;\r\n } else if (randomWords.length !== 3) {\r\n console.log(randomWords);\r\n setErrorMessage(`Loved ones random words should be 3 words.`);\r\n setErrorIndicator(`randomwords${i}`);\r\n isValid = false;\r\n }\r\n }\r\n }\r\n\r\n if (isValid) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n };\r\n\r\n const handleSubmit = async (e) => {\r\n e.preventDefault();\r\n setLoading(true);\r\n try {\r\n if (validateForm()) {\r\n console.log(\"the form is valid\");\r\n const data = await api.signUpUser(userInfo);\r\n // let postData = { ...userInfo, login: userInfo.email };\r\n // dispatch(createUser(postData)).then(() => {\r\n // setErrorMessage(\"\");\r\n // setLoading(false);\r\n // });\r\n Swal.fire({\r\n html: \"Successfully signed up! An email will be sent to you once the admin approved your request!\",\r\n icon: \"success\",\r\n title: \"Success\",\r\n confirmButtonColor: \"#833f84\",\r\n });\r\n setLoading(false);\r\n history.push(\"/login\");\r\n } else {\r\n console.log(\"the form is invalid\");\r\n // setsignupError(\"The form is invalid\");\r\n setLoading(false);\r\n }\r\n } catch (error) {\r\n setLoading(false);\r\n setsignupError(error.response.data.errors);\r\n }\r\n };\r\n\r\n // error for adding consent\r\n useEffect(() => {\r\n if (signupError) {\r\n // console.log(signupError);\r\n const errors = signupError.map((err) => {\r\n return err.message + \"\\r\\n\";\r\n });\r\n Swal.fire({\r\n title: \"Error!\",\r\n html: errors,\r\n icon: \"error\",\r\n confirmButtonColor: \"#833f84\",\r\n });\r\n }\r\n }, [signupError]);\r\n\r\n const getPractice = async () => {\r\n setLoading(true);\r\n try {\r\n const data = await api.getPractices();\r\n const practice = data.data.data;\r\n setPractices(practice);\r\n setLoading(false);\r\n } catch (error) {\r\n setLoading(false);\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n getPractice();\r\n }, []);\r\n\r\n const handleChange = (event) => {\r\n const { value, name } = event.target;\r\n\r\n setUserInfo({ ...userInfo, [name]: value });\r\n };\r\n\r\n // const handleLovedOnesChange = (event, i) => {\r\n // const { value, name } = event.target;\r\n\r\n // setUserInfo({ ...userInfo, ifLovedOne: true });\r\n\r\n // let userLoveOnes = userInfo.lovedOnes;\r\n // userLoveOnes[i] = { ...userLoveOnes[i], [name]: value };\r\n\r\n // setUserInfo({ ...userInfo, lovedOnes: userLoveOnes });\r\n // };\r\n\r\n // const lovedOnesForm = () => {\r\n // if (numOfLovedOnes > 5) {\r\n // setNumOfLovedOnes(5);\r\n // }\r\n\r\n // for (let i = 0; i < numOfLovedOnes; i++) {\r\n // lovedOnesFormData.push(\r\n //
    \r\n //
    \r\n // \r\n // {\r\n // handleLovedOnesChange(e, i);\r\n // }}\r\n // className={`form-control ${\r\n // errorIndicator === `lastname${i}` ? \"border border-danger\" : \"\"\r\n // }`}\r\n // type=\"text\"\r\n // name=\"lastName\"\r\n // required\r\n // />\r\n //
    \r\n //
    \r\n // \r\n // {\r\n // handleLovedOnesChange(e, i);\r\n // }}\r\n // className={`form-control ${\r\n // errorIndicator === `randomwords${i}`\r\n // ? \"border border-danger\"\r\n // : \"\"\r\n // }`}\r\n // type=\"text\"\r\n // name=\"randomWords\"\r\n // required\r\n // placeholder=\"Separated by comma\"\r\n // />\r\n //
    \r\n //
    \r\n // \r\n // {\r\n // handleLovedOnesChange(e, i);\r\n // }}\r\n // className=\"form-control\"\r\n // type=\"date\"\r\n // name=\"dateOfBirth\"\r\n // required\r\n // />\r\n //
    \r\n //
    \r\n // );\r\n // }\r\n\r\n // return lovedOnesFormData;\r\n // };\r\n\r\n // if (!authState) return null;\r\n\r\n if (loading) return ;\r\n\r\n // return authState.isAuthenticated ? (\r\n // \r\n // ) : (\r\n return (\r\n
    \r\n {errorMessage && (\r\n \r\n )}\r\n {registerSuccessful && (\r\n \r\n )}\r\n
    \r\n {successMessage ? (\r\n

    {successMessage}

    \r\n ) : null}\r\n
    \r\n
    \r\n

    Sign up

    \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\n\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n {/* */}\r\n
    \r\n setBirthday(date)}\r\n primaryColor=\"#f36917\"\r\n placeholder=\"dd/mm/yyyy\"\r\n // showBorder\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\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\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\n \r\n \r\n {countries &&\r\n countries.map((data, index) => (\r\n \r\n ))}\r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n \r\n {practices &&\r\n practices.map((data) => (\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\n
    \r\n
    \r\n \r\n setConfirmPassword(e.target.value)}\r\n className={`form-control ${\r\n errorIndicator === \"confirmPassword\"\r\n ? \"border border-danger\"\r\n : \"\"\r\n }`}\r\n type=\"password\"\r\n name=\"confirmPassword\"\r\n />\r\n
    \r\n
    \r\n\r\n {/*
    */}\r\n\r\n {/*

    Add a loved one

    */}\r\n\r\n {/* loved ones */}\r\n\r\n {/* {lovedOnesForm()} */}\r\n\r\n {/* {\r\n e.preventDefault();\r\n setNumOfLovedOnes(numOfLovedOnes + 1);\r\n setUserInfo({ ...userInfo, ifLovedOne: true });\r\n }}\r\n >\r\n \r\n Add loved one\r\n */}\r\n\r\n \r\n Sign Up\r\n \r\n {\r\n setErrorMessage(\"\");\r\n setErrorIndicator(\"\");\r\n setSuccessMessage(\"\");\r\n }}\r\n >\r\n Go back to login\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default Signup;\r\n","export default __webpack_public_path__ + \"static/media/hapiyouicon.8e05f154.png\";","//import React from \"react\";\r\nimport React from \"react\";\r\nimport { useHistory } from \"react-router-dom\";\r\n\r\n//images\r\nimport logo from \"../../assets/images/hapiyouicon.png\";\r\n\r\nconst Welcome = () => {\r\n const history = useHistory();\r\n\r\n // const { authState, oktaAuth } = useOktaAuth();\r\n // const accessToken = authState.accessToken;\r\n const authState = JSON.parse(localStorage.getItem(\"auth0-token-storage\"));\r\n const accessToken = authState?.access_token;\r\n console.log(authState);\r\n\r\n const handleExpiration = () => {\r\n // oktaAuth.signOut();\r\n localStorage.removeItem(\"auth0-token-storage\");\r\n localStorage.removeItem(\"user-claims\");\r\n history.push(\"/login\");\r\n };\r\n\r\n return !accessToken ? (\r\n handleExpiration()\r\n ) : (\r\n
    \r\n
    \r\n \"happy\r\n

    \r\n HapiYou is a digital platform that connects you, the patient, with\r\n medical professionals for same day healthcare appointments and tracks\r\n your health care progression, educating you along the way. Putting you\r\n in control of your health and wellbeing.\r\n

    \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default Welcome;\r\n","import React from \"react\";\r\nimport { useHistory } from \"react-router-dom\";\r\n\r\nconst HomeDashboard = () => {\r\n // const { authState, oktaAuth } = useOktaAuth();\r\n const authState = JSON.parse(localStorage.getItem(\"auth0-token-storage\"));\r\n const history = useHistory();\r\n\r\n const handleExpiration = () => {\r\n // oktaAuth.signOut();\r\n localStorage.removeItem(\"auth0-token-storage\");\r\n localStorage.removeItem(\"user-claims\");\r\n history.push(\"/login\");\r\n };\r\n\r\n return !authState.access_token ? (\r\n handleExpiration()\r\n ) : (\r\n
    \r\n

    Please clock in to view appointments

    \r\n
    \r\n );\r\n};\r\n\r\nexport default HomeDashboard;\r\n","import React from \"react\";\r\n\r\nconst About = () => {\r\n return (\r\n
    \r\n
    \r\n

    About Page

    \r\n

    \r\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do\r\n eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad\r\n minim veniam, quis nostrud exercitation ullamco laboris nisi ut\r\n aliquip ex ea commodo consequat. Duis aute irure dolor in\r\n reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla\r\n pariatur. Excepteur sint occaecat cupidatat non proident, sunt in\r\n culpa qui officia deserunt mollit anim id est laborum.\r\n

    \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default About;\r\n","import React from \"react\";\r\n\r\nconst Contact = () => {\r\n return (\r\n
    \r\n
    \r\n

    Contact Page

    \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default Contact;\r\n","import React from \"react\";\r\n\r\nconst NotFound = () => {\r\n return (\r\n
    \r\n
    \r\n

    PAGE NOT FOUND

    \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default NotFound;\r\n","import React, { useEffect, useState } from \"react\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport \"./Users.css\";\r\n\r\nimport { Link, Redirect } from \"react-router-dom\";\r\n\r\nimport Pagination from \"../../reusables/Paginator/Pagination\";\r\n\r\nimport * as api from \"../../../api\";\r\n\r\nimport Loader from \"../../reusables/Loader\";\r\n\r\nlet PageSize = 20;\r\n\r\nconst Users = () => {\r\n // const { authState } = useOktaAuth();\r\n // const accessToken = authState.accessToken;\r\n const authState = JSON.parse(localStorage.getItem(\"auth0-token-storage\"));\r\n const accessToken = authState?.access_token;\r\n const history = useHistory();\r\n const [loader, setLoader] = useState(false);\r\n\r\n const [users, setUsers] = useState([]);\r\n const [allRoles, setAllRoles] = useState([]);\r\n const [allFacilites, setAllFacilites] = useState([]);\r\n const [currentPage, setCurrentPage] = useState(1);\r\n const [currentTableData, setCurrentTableData] = useState([]);\r\n\r\n const getUserRoles = (roleIds) => {\r\n let userRoles = [];\r\n allRoles.forEach((role) => {\r\n roleIds.forEach((userRole) => {\r\n if (role._id === userRole) {\r\n userRoles.push(role.name);\r\n }\r\n });\r\n });\r\n\r\n // console.log(\"asdfwegasvwsed roles\", userRoles);\r\n return

    {userRoles.toString()}

    ;\r\n };\r\n\r\n const getUserFacilities = (facilityIds) => {\r\n let userFacilities = [];\r\n allFacilites.forEach((facility) => {\r\n facilityIds.forEach((userFacility) => {\r\n if (facility.facilityId === Number(userFacility)) {\r\n userFacilities.push(facility.facilityShortName);\r\n }\r\n });\r\n });\r\n\r\n return

    {userFacilities.toString()}

    ;\r\n };\r\n\r\n // const deleteUser = async (id) => {\r\n // \tconsole.log(`user with id ${id} deleted`);\r\n // };\r\n\r\n useEffect(() => {\r\n const getAllRoles = async () => {\r\n try {\r\n setLoader(true);\r\n const { data } = await api.fetchRoles();\r\n console.log(\"all roles\", data);\r\n setAllRoles(data);\r\n } catch (error) {\r\n console.log(\"error getting roles\", error);\r\n setLoader(false);\r\n if (\r\n error?.response?.status === 401 &&\r\n error?.response?.data?.errors?.length > 0 &&\r\n error?.response?.data?.errors[0]?.message === \"Invalid Token\"\r\n ) {\r\n handleExpiration();\r\n }\r\n }\r\n };\r\n\r\n const getAllFacilities = async () => {\r\n try {\r\n setLoader(true);\r\n const data = await api.fetchFacilities(accessToken);\r\n\r\n const facilities = data.data.data.data;\r\n setAllFacilites(facilities);\r\n } catch (error) {\r\n console.log(\"error getting facilites\", error);\r\n if (\r\n error?.response?.status === 401 &&\r\n error?.response?.data?.errors?.length > 0 &&\r\n error?.response?.data?.errors[0]?.message === \"Invalid Token\"\r\n ) {\r\n handleExpiration();\r\n }\r\n }\r\n };\r\n\r\n const getAllUsers = async () => {\r\n try {\r\n setLoader(true);\r\n const { data } = await api.getAllUsers(accessToken);\r\n setUsers(data);\r\n setLoader(false);\r\n } catch (error) {\r\n setLoader(false);\r\n console.log(\"error getting users\", error);\r\n if (\r\n error?.response?.status === 401 &&\r\n error?.response?.data?.errors?.length > 0 &&\r\n error?.response?.data?.errors[0]?.message === \"Invalid Token\"\r\n ) {\r\n handleExpiration();\r\n }\r\n }\r\n };\r\n getAllRoles();\r\n getAllFacilities();\r\n getAllUsers();\r\n }, [authState, accessToken]);\r\n\r\n useEffect(() => {\r\n const getCurrentTableData = () => {\r\n const firstPageIndex = (currentPage - 1) * PageSize;\r\n const lastPageIndex = firstPageIndex + PageSize;\r\n const newData = users.slice(firstPageIndex, lastPageIndex);\r\n setCurrentTableData(newData);\r\n };\r\n getCurrentTableData();\r\n }, [currentPage, loader, users]);\r\n\r\n const handleExpiration = () => {\r\n\t\tlocalStorage.removeItem(\"auth0-token-storage\");\r\n\t\tlocalStorage.removeItem(\"user-claims\");\r\n\t\thistory.push(\"/login\");\r\n\t};\r\n\r\n return authState === null ||\r\n authState === undefined ||\r\n authState?.accessToken === undefined ||\r\n authState?.accessToken === null ? (\r\n \r\n ) : (\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n SORT BY:\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n {loader ? (\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 \r\n \r\n \r\n \r\n \r\n \r\n \r\n {currentTableData.map((user, index) => (\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
    First NameMiddle NameLast NameNick NameEmailRolesFacilitiesActions
    {user.firstName}{user.middleName}{user.lastName}{user.nickName}{user.email}{getUserRoles(user.roleIds)}{getUserFacilities(user.facilityIds)}\r\n \r\n Edit\r\n \r\n {/* {\r\n deleteUser(user._id);\r\n }} className=\"text-danger\">Delete */}\r\n
    \r\n )}\r\n\r\n setCurrentPage(page)}\r\n />\r\n
    \r\n );\r\n};\r\n\r\nexport default Users;\r\n","//packages\r\nimport React, { useState, useEffect } from \"react\";\r\nimport { useHistory, useParams } from \"react-router-dom\";\r\n\r\n//Okta related packages\r\n\r\nimport * as api from \"../../../api\";\r\n\r\n//assets needed\r\nimport Loader from \"../../reusables/Loader\";\r\n// import AlertsTop from \"../../reusables/AlertsTop\";\r\nimport Select from \"react-select\";\r\n\r\n//start of function for the component\r\nconst UpdateUser = () => {\r\n // get the _id from the URL\r\n const { _id } = useParams();\r\n\r\n //okta stuff\r\n // const { authState } = useOktaAuth();\r\n const authState = JSON.parse(localStorage.getItem(\"auth0-token-storage\"));\r\n const accessToken = authState?.access_token;\r\n\r\n const [loaderText, setLoaderText] = useState(\"\");\r\n\r\n const [facilityOptions, setFacilityOptions] = useState([]);\r\n const [selectedFacilites, setSelectedFacilites] = useState([]);\r\n\r\n const [roleOptions, setRoleOptions] = useState([]);\r\n const [selectedRoles, setSelectedRoles] = useState([]);\r\n\r\n // const trueFalseAuth = authState.isAuthenticated;\r\n // console.log(trueFalseAuth);\r\n // const accessToken = authState.accessToken;\r\n // console.log(accessToken);\r\n\r\n //useState Returns a stateful value, and a function to update it.\r\n //the stateful value is what you'll use later when you render via map method (inside return)\r\n //React components has a built-in state object. The state object is where you store property values that belongs to the component. When the state object changes, the component re-renders.\r\n const [user, setUser] = useState({\r\n title: \"\",\r\n firstName: \"\",\r\n middleName: \"\",\r\n lastName: \"\",\r\n nickName: \"\",\r\n email: \"\",\r\n zipCode: \"\",\r\n roleIds: [],\r\n facilityIds: [],\r\n });\r\n\r\n const [loader, setLoader] = useState(false);\r\n\r\n // const [error, setAlert] = useState({\r\n // \terrorPresent: false,\r\n // \terrorText: \"\",\r\n // \tbsClass: \"\",\r\n // });\r\n\r\n //destructure above so you can access patient.username by using only \"username\", and so on. These are empty initially as can be seen above.\r\n const { title, firstName, middleName, lastName, nickName, email, zipCode } =\r\n user;\r\n\r\n //to trigger when typing on a form input\r\n const onInputChange = (e) => {\r\n setUser({ ...user, [e.target.name]: e.target.value }); //basically you're setting the patient object to whatever is being typed in the form as they key in the key-value pair matches the \"name\" in the form. And this will be the new value of object \"patient\" to be used below in axios\r\n };\r\n\r\n let history = useHistory();\r\n\r\n const onSubmit = async (e) => {\r\n e.preventDefault(); //to prevent 'Submit' button to submit and refresh page\r\n setLoaderText(\"Updating user info...\");\r\n setLoader(true);\r\n console.log(\"selected facilites\", selectedFacilites);\r\n\r\n let userFacilites = [];\r\n let userRoles = [];\r\n let postData;\r\n selectedFacilites.forEach((facility) => {\r\n userFacilites.push(facility.value);\r\n });\r\n\r\n selectedRoles.forEach((role) => {\r\n userRoles.push(role.value);\r\n });\r\n\r\n console.log(\"facilities to push\", userFacilites);\r\n postData = {\r\n firstName: user.firstName,\r\n lastName: user.lastName,\r\n middleName: user.middleName,\r\n title: user.title,\r\n nickName: user.nickName,\r\n zipCode: user.zipCode,\r\n roleIds: userRoles,\r\n facilityIds: userFacilites,\r\n };\r\n\r\n console.log(\"postdata\", postData);\r\n\r\n try {\r\n await api.updateUser(postData, _id, accessToken);\r\n setLoader(false);\r\n history.push(\"/users\");\r\n } catch (error) {\r\n console.log(\"error updating a user\", error);\r\n setLoader(false);\r\n if (\r\n\t\t\t\terror?.response?.status === 401 &&\r\n\t\t\t\terror?.response?.data?.errors?.length > 0 &&\r\n\t\t\t\terror?.response?.data?.errors[0]?.message === \"Invalid Token\"\r\n\t\t\t) {\r\n\t\t\t\thandleExpiration();\r\n\t\t\t}\r\n }\r\n };\r\n\r\n const getAllRoles = async (user) => {\r\n try {\r\n const data = await api.fetchRoles();\r\n\r\n const allRoles = data.data;\r\n\r\n let options = [];\r\n let currentRoles = [];\r\n\r\n allRoles.forEach((role) => {\r\n options.push({\r\n value: role._id,\r\n label: role.name,\r\n });\r\n\r\n user.roleIds.forEach((userRoles) => {\r\n console.log(\"current role iteration\", userRoles);\r\n console.log(\"current role all roles\", role.name);\r\n if (userRoles === role._id) {\r\n currentRoles.push({\r\n value: role._id,\r\n label: role.name,\r\n });\r\n }\r\n });\r\n });\r\n\r\n setRoleOptions(options);\r\n setSelectedRoles(currentRoles);\r\n } catch (error) {\r\n console.log(\"there was an error getting all roles\", error);\r\n if (\r\n\t\t\t\terror?.response?.status === 401 &&\r\n\t\t\t\terror?.response?.data?.errors?.length > 0 &&\r\n\t\t\t\terror?.response?.data?.errors[0]?.message === \"Invalid Token\"\r\n\t\t\t) {\r\n\t\t\t\thandleExpiration();\r\n\t\t\t}\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n const getAllFacilities = async (user) => {\r\n try {\r\n setLoader(true);\r\n const data = await api.fetchFacilities(accessToken);\r\n console.log(\"current facilities llength\", data.data.data.data.length);\r\n const facilities = data.data.data.data;\r\n\r\n let options = [];\r\n let currentFacilities = [];\r\n\r\n facilities.forEach((facility) => {\r\n options.push({\r\n value: facility.facilityId,\r\n label: facility.facilityShortName,\r\n });\r\n\r\n user.facilityIds.forEach((userFacility) => {\r\n if (Number(userFacility) === facility.facilityId) {\r\n currentFacilities.push({\r\n value: facility.facilityId,\r\n label: facility.facilityShortName,\r\n });\r\n }\r\n });\r\n });\r\n\r\n console.log(\"users current facilities\", user.facilityIds);\r\n\r\n console.log(\"facilities options\", facilityOptions);\r\n setFacilityOptions(options);\r\n setSelectedFacilites(currentFacilities);\r\n } catch (error) {\r\n console.log(\"error getting facilites\", error);\r\n setLoader(false);\r\n if (\r\n error?.response?.status === 401 &&\r\n error?.response?.data?.errors?.length > 0 &&\r\n error?.response?.data?.errors[0]?.message === \"Invalid Token\"\r\n ) {\r\n handleExpiration();\r\n }\r\n }\r\n };\r\n\r\n const getCurrentUser = async () => {\r\n try {\r\n setLoaderText(\"Getting user info...\");\r\n setLoader(true);\r\n const response = await api.getUser(_id, accessToken);\r\n let data = response.data.data;\r\n\r\n await getAllRoles(data);\r\n await getAllFacilities(data);\r\n\r\n // setPatient({ ...data, random_words: data.random_words.toString() });\r\n setUser(data);\r\n setLoader(false);\r\n } catch (error) {\r\n console.log(\"something went wrong\", error);\r\n setLoader(false);\r\n if (\r\n error?.response?.status === 401 &&\r\n error?.response?.data?.errors?.length > 0 &&\r\n error?.response?.data?.errors[0]?.message === \"Invalid Token\"\r\n ) {\r\n handleExpiration();\r\n }\r\n }\r\n };\r\n getCurrentUser();\r\n // eslint-disable-next-line\r\n }, [_id, accessToken]);\r\n\r\n const handleExpiration = () => {\r\n\t\tlocalStorage.removeItem(\"auth0-token-storage\");\r\n\t\tlocalStorage.removeItem(\"user-claims\");\r\n\t\thistory.push(\"/login\");\r\n\t};\r\n\r\n //Below is the html component to render the component plus latest values from the variables in the state above\r\n return (\r\n
    \r\n
    \r\n

    Edit User

    \r\n {/* {error.errorPresent ? (\r\n\t\t\t\t\t\r\n\t\t\t\t) : (\r\n\t\t\t\t\t\"\"\r\n\t\t\t\t)} */}\r\n
    \r\n\r\n
    \r\n {loader ? (\r\n
    \r\n \r\n

    {loaderText}

    \r\n
    \r\n ) : (\r\n
    onSubmit(e)}>\r\n
    \r\n
    \r\n \r\n onInputChange(e)}\r\n value={title}\r\n >\r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n onInputChange(e)}\r\n value={firstName}\r\n />\r\n
    \r\n
    \r\n \r\n onInputChange(e)}\r\n value={lastName}\r\n />\r\n
    \r\n
    \r\n \r\n onInputChange(e)}\r\n value={middleName}\r\n />\r\n
    \r\n
    \r\n \r\n onInputChange(e)}\r\n value={nickName}\r\n />\r\n
    \r\n
    \r\n \r\n onInputChange(e)}\r\n value={email}\r\n disabled\r\n />\r\n
    \r\n
    \r\n \r\n onInputChange(e)}\r\n value={zipCode}\r\n />\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n setSelectedRoles(selected)}\r\n />\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n setSelectedFacilites(selected)}\r\n />\r\n
    \r\n
    \r\n \r\n
    \r\n )}\r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default UpdateUser;\r\n","export default __webpack_public_path__ + \"static/media/Plus.bfbb39be.svg\";","import React from \"react\";\nimport { NavLink } from \"react-router-dom\";\nimport \"./support.style.css\";\nimport { useHistory } from \"react-router-dom\";\n\n//SVG icons\nimport Plus from \"../../../assets/svg/Support/Overview/Plus.svg\";\n\n// Font Awesome Icons\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nconst SupportRequests = () => {\n // const { authState, oktaAuth } = useOktaAuth();\n const authState = JSON.parse(localStorage.getItem(\"auth0-token-storage\"));\n const accessToken = authState?.access_token;\n const history = useHistory();\n\n const handleExpiration = () => {\n // oktaAuth.signOut();\n localStorage.removeItem(\"auth0-token-storage\");\n localStorage.removeItem(\"user-claims\");\n history.push(\"/login\");\n };\n\n return !accessToken ? (\n handleExpiration()\n ) : (\n
    \n
    \n
    \n

    \n Your support requests\n

    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n\n
    \n \n
    \n \n
    MAKE SUPPORT TICKET
    \n
    \n
    \n
    \n\n
    \n
    \n
    TICKET #
    \n
    \n
    \n
    CATEGORY
    \n
    \n
    \n
    REQUEST STATUS
    \n
    \n
    \n
    LAST UPDATED
    \n
    \n
    \n
    \n 1-20 of 300\n \n \n \n \n \n \n
    \n
    \n
    \n\n
    \n
    \n \n
    \n
    #12345
    \n
    \n Lorem ipsum dolot sit\n
    \n
    \n \n Resolved\n \n
    \n
    05-18-22
    \n
    \n \n VIEW\n \n
    \n
    \n
    \n\n \n
    \n Anim pariatur cliche reprehenderit, enim eiusmod high life\n accusamus terry richardson ad squid. 3 wolf moon officia\n aute, non cupidatat skateboard dolor brunch. Food truck\n quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor,\n sunt aliqua put a bird on it squid single-origin coffee\n nulla assumenda shoreditch et. Nihil anim keffiyeh\n helvetica, craft beer labore wes anderson cred nesciunt\n sapiente ea proident. Ad vegan excepteur butcher vice lomo.\n Leggings occaecat craft beer farm-to-table, raw denim\n aesthetic synth nesciunt you probably haven't heard of them\n accusamus labore sustainable VHS.\n
    \n
    \n
    \n
    \n \n
    \n
    #54321
    \n
    \n Lorem ipsum dolot sit\n
    \n
    \n \n Resolved\n \n
    \n
    05-18-22
    \n
    \n \n 1\n \n \n VIEW\n \n
    \n
    \n
    \n\n \n
    \n Anim pariatur cliche reprehenderit, enim eiusmod high life\n accusamus terry richardson ad squid. 3 wolf moon officia\n aute, non cupidatat skateboard dolor brunch. Food truck\n quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor,\n sunt aliqua put a bird on it squid single-origin coffee\n nulla assumenda shoreditch et. Nihil anim keffiyeh\n helvetica, craft beer labore wes anderson cred nesciunt\n sapiente ea proident. Ad vegan excepteur butcher vice lomo.\n Leggings occaecat craft beer farm-to-table, raw denim\n aesthetic synth nesciunt you probably haven't heard of them\n accusamus labore sustainable VHS.\n
    \n
    \n
    \n \n \n \n
    \n
    \n \n \n );\n};\n\nexport default SupportRequests;\n","import React from \"react\";\nimport { NavLink } from \"react-router-dom\";\nimport \"./support.style.css\";\n\nconst CreateTicket = () => {\n return (\n
    \n
    \n
    \n

    \n Create ticket\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
    \n
    \n \n \n Create and add another\n \n {/* */}\n {\n window.confirm(\"Do you want to cancel?\");\n }}\n >\n Cancel\n \n {/* */}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default CreateTicket;\n","import React from \"react\";\nimport { NavLink } from \"react-router-dom\";\n\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\n\nconst TicketSuccess = () => {\n return (\n
    \n
    \n \n
    \n \n

    TICKET CREATED

    \n

    \n Ticket has been created successfully.{\" \"}\n

    \n

    Your Ticket Number is HAPI012345

    \n
    \n \n \n Go Back\n

    \n
    \n
    \n
    \n
    \n
    \n \n );\n};\n\nexport default TicketSuccess;\n","import React, { useEffect } from \"react\";\nimport { useHistory } from \"react-router-dom\";\n\nconst ContactSupport = () => {\n\tconst history = useHistory();\n\n\tuseEffect(() => {\n\t\twindow.__lc = window.__lc || {};\n\t\twindow.__lc.license = 16086690;\n\n\t\tfunction initLiveChat() {\n\t\t\tvar n = document.createElement(\"script\");\n\t\t\tn.async = true;\n\t\t\tn.type = \"text/javascript\";\n\t\t\tn.src = \"https://cdn.livechatinc.com/tracking.js\";\n\t\t\tdocument.head.appendChild(n);\n\t\t}\n\n\t\tif (!window.__lc.asyncInit) {\n\t\t\tinitLiveChat();\n\t\t\twindow.__lc.asyncInit = true;\n\t\t}\n\t}, []);\n\n return (\n <>\n history.goBack()}\n >\n

    < Back

    \n \n
    \n

    \n To contact support please send an email to{\" \"}\n \n support@hapihealthcare.com\n \n

    \n
    \n \n
    \n
    \n \n );\n};\n\nexport default ContactSupport;\n","export default __webpack_public_path__ + \"static/media/ClientProfile.c57f62b0.svg\";","export default __webpack_public_path__ + \"static/media/Alert.7d21240f.svg\";","export default __webpack_public_path__ + \"static/media/Check.9a4be96e.svg\";","export default __webpack_public_path__ + \"static/media/Pending.54452d58.svg\";","import React from \"react\";\nimport { Button } from \"react-bootstrap\";\nimport { NavLink } from \"react-router-dom\";\nimport jsPDF from \"jspdf\";\nimport autoTable from \"jspdf-autotable\";\nimport * as api from \"../../../api\";\nimport moment from \"moment\";\nimport usePracticeHook from \"../../../practice\";\nimport userRoles from \"../../../role\";\n\nconst superAdminFacilitySchedulesData = [\n {\n facilityId: 351,\n facilityName: \"Agincare Homes Fulford\",\n podiatryServices: {\n podiatristName: \"Aries Resurreccion\",\n podiatrySchedule: [\n {\n FirstName: \"Jeffrey\",\n LastName: \"Gomez\",\n KnownAs: \"Jeff\",\n WardFloorRoom: \"2\",\n DateOfBirth: \"1976-06-14\",\n DaysSinceLastTreatment: 52,\n HasConsentOnFile: false,\n PaymentType: \"Facility Funding\",\n AssessmentDue: true,\n Notes: \"My Notes 1\",\n },\n {\n FirstName: \"John\",\n LastName: \"Doe\",\n KnownAs: \"John\",\n WardFloorRoom: \"21\",\n DateOfBirth: \"1956-07-12\",\n DaysSinceLastTreatment: 152,\n HasConsentOnFile: true,\n PaymentType: \"Facility Funding\",\n AssessmentDue: true,\n Notes: \"My Notes 2\",\n },\n ],\n },\n physioServices: {\n physioName: \"Kirstin Wilkinson\",\n physioSchedule: [\n {\n FirstName: \"Jeffrey\",\n LastName: \"Gomez\",\n KnownAs: \"Jeff\",\n WardFloorRoom: \"2\",\n DateOfBirth: \"1976-06-14\",\n DaysSinceLastTreatment: 52,\n HasConsentOnFile: false,\n PaymentType: \"Facility Funding\",\n AssessmentDue: true,\n Notes: \"My Notes 1\",\n },\n ],\n },\n dieteticsServices: {\n dietitianName: \"Louise Bula\",\n dieteticsSchedule: [\n {\n FirstName: \"Jeffrey\",\n LastName: \"Gomez\",\n KnownAs: \"Jeff\",\n WardFloorRoom: \"2\",\n DateOfBirth: \"1976-06-14\",\n DaysSinceLastTreatment: 52,\n HasConsentOnFile: false,\n PaymentType: \"Facility Funding\",\n AssessmentDue: true,\n Notes: \"My Notes 2\",\n },\n ],\n },\n },\n {\n facilityId: 358,\n facilityName: \"Agincare Homes Tilford\",\n podiatryServices: {\n podiatristName: \"Aries Resurreccion\",\n podiatrySchedule: [{}],\n },\n physioServies: {\n physioName: \"Kirstin Wilkinson\",\n physioSchedule: [{}],\n },\n dieteticsServices: {\n dietitianName: \"Louise Bula\",\n dietitianSchedule: [{}],\n },\n },\n];\n\nconst DashboardSummary = ({ scheduleData }) => {\n const authState = JSON.parse(localStorage.getItem(\"auth0-token-storage\"));\n const accessToken = authState?.access_token;\n const { hasPhysioPractice } = usePracticeHook();\n const { superAdminRole } = userRoles();\n const dateToday = moment(new Date()).format(\"DD_MM_YYYY\");\n\n // const newPatient = scheduleData.map((patient) =>\n // patient.ResidentsToBeTreated.filter((a) => {\n // return a.CreatedOn.split(\"T\")[0];\n // })\n // );\n\n // const filteredDateCreated = newPatient[0].filter(\n // (d) => d.CreatedOn.split(\"T\")[0] === moment(new Date()).format(\"YYYY-MM-DD\")\n // );\n\n const downloadTable = async (facilityId) => {\n const doc = new jsPDF(\"l\", \"pt\");\n try {\n let _allPatients = await api.fetchPatients(accessToken, null);\n\n _allPatients = _allPatients.data.data.data.filter(\n (facility) => facility.FacilityId === facilityId\n );\n const tableData = _allPatients[0]?.ResidentsToBeTreated ?? [];\n\n autoTable(doc, {\n headStyles: {\n fillColor: [243, 105, 23],\n minCellHeight: 30,\n valign: \"middle\",\n halign: \"center\",\n fontSize: 8,\n },\n columnStyles: {\n 10: { cellWidth: 80 },\n },\n styles: { fontSize: 9, cellPadding: 0.5, overflow: \"linebreak\" },\n head: [\n [\n \"#\",\n \"First Name\",\n \"Last Name\",\n \"Known As\",\n \"Ward/Floor/Room\",\n \"Date of Birth\",\n \"Consent on file\",\n \"Payment Type\",\n \"Weeks Since Treatment\",\n \"AssessDue\",\n \"Treat (Circle one)\",\n \"Notes\",\n ],\n ],\n body: tableData.map((patient, index) => [\n { content: index + 1, colSpan: 1, rowSpan: 1 },\n { content: patient.FirstName, colSpan: 1, rowSpan: 1 },\n { content: patient.LastName, colSpan: 1, rowSpan: 1 },\n { content: patient.KnownAs ?? \"\", colSpan: 1, rowSpan: 1 },\n {\n content: patient.WardName ?? \"\" + \" / \" + patient.RoomNumber ?? \"\",\n colSpan: 1,\n rowSpan: 1,\n },\n {\n content: patient?.DateOfBirth\n ? moment(patient.DateOfBirth).format(\"MMM-D-YYYY\")\n : \"\"\n ? Math.floor(parseInt(patient.DaysSinceLastTreatment) / 7)\n : \"\",\n colSpan: 1,\n rowSpan: 1,\n },\n {\n content: patient.HasConsentOnFile === true ? \"yes\" : \"no\",\n colSpan: 1,\n rowSpan: 1,\n },\n { content: patient.PaymentType ?? \"\", colSpan: 1, rowSpan: 1 },\n {\n content: patient?.DaysSinceLastTreatment\n ? Math.floor(parseInt(patient.DaysSinceLastTreatment) / 7)\n : \"\",\n colSpan: 1,\n rowSpan: 1,\n },\n {\n content: patient.AssessmentDue === true ? \"yes\" : \"no\",\n colSpan: 1,\n rowSpan: 1,\n },\n { content: \"Yes / No\", colSpan: 1, rowSpan: 1 },\n { content: \"\", colSpan: 1, rowSpan: 1 },\n ]),\n margin: { top: 20, left: 20, right: 20, bottom: 30 },\n bodyStyles: {\n minCellHeight: 23,\n valign: \"middle\",\n halign: \"center\",\n fontSize: 8,\n },\n didDrawPage: (data) => {\n doc.setFontSize(7);\n doc.text(\n `Page ${data.pageNumber}`,\n doc.internal.pageSize.width - 20,\n doc.internal.pageSize.height - 20,\n { align: \"right\", style: \"italic\" }\n );\n },\n });\n\n doc.save(`Schedule_${dateToday}.pdf`);\n } catch (err) {\n console.error(err);\n }\n };\n\n const countDoneTodayPatients = (patients) => {\n return (\n patients.filter(\n (patient) =>\n patient.TreatmentDue === true ||\n patient.NeedsUrgentTreatment === true ||\n (patient?.CreatedOn &&\n moment(new Date()).format(\"YYYY-MM-DD\") ===\n moment(patient.CreatedOn.split(\"T\")[0]).format(\"YYYY-MM-DD\")) ||\n (patient?.progress_notes &&\n patient.progress_notes.length > 0 &&\n patient.progress_notes[patient.progress_notes.length - 1] &&\n moment(new Date()).format(\"YYYY-MM-DD\") ===\n moment(\n patient.progress_notes[\n patient.progress_notes.length - 1\n ].updatedAt.split(\"T\")[0]\n ).format(\"YYYY-MM-DD\")) ||\n (patient?.progress_notes &&\n patient.progress_notes.length > 0 &&\n patient.progress_notes[patient.progress_notes.length - 1] &&\n moment(new Date()).format(\"YYYY-MM-DD\") ===\n moment(\n patient.progress_notes[\n patient.progress_notes.length - 1\n ].createdAt.split(\"T\")[0]\n ).format(\"YYYY-MM-DD\"))\n ).length ?? 0\n );\n };\n\n return (\n \n {!hasPhysioPractice ? (\n <>\n {/* <>\n {superAdminRole &&\n superAdminFacilitySchedulesData &&\n superAdminFacilitySchedulesData.length > 0 ? (\n superAdminFacilitySchedulesData.map((schedFacility, index) => (\n 1 &&\n superAdminFacilitySchedulesData.length - 1 !== index\n ? \"border-bottom\"\n : \"\"\n } px-3 pt-2 pb-3`}\n key={index}\n >\n
    \n

    \n Facility:\n

    \n

    {schedFacility.facilityName}

    \n
    \n
    \n

    \n Services\n

    \n
    \n
    \n
    \n

    \n Podiatry:\n

    \n

    \n {schedFacility?.podiatryServices?.podiatristName}\n

    \n
    \n
    \n \n await downloadScheduleTable(\n schedFacility.facilityId,\n \"podiatry\"\n )\n }\n >\n Download Schedules\n

    \n
    \n
    \n
    \n
    \n

    \n Dietetics:\n

    \n

    \n {schedFacility?.dieteticsServices?.dietitianName}\n

    \n
    \n
    \n \n await downloadScheduleTable(\n schedFacility.facilityId,\n \"dietetics\"\n )\n }\n >\n Download Schedules\n

    \n
    \n
    \n
    \n
    \n

    \n Physiotherapy:\n

    \n

    \n {schedFacility?.physioServies?.physioName}\n

    \n
    \n
    \n \n await downloadScheduleTable(\n schedFacility.facilityId,\n \"physio\"\n )\n }\n >\n Download Schedules\n

    \n
    \n
    \n \n ))\n ) : (\n <>\n \n No Appointments Today\n \n \n )}\n */}\n {scheduleData && scheduleData.length > 0 ? (\n scheduleData.map((data, index) => (\n 1 ? \"border-bottom\" : \"\"\n } px-3 pt-4`}\n key={index}\n >\n {hasPhysioPractice ? null : (\n
    \n
    \n

    \n Facility:\n

    \n

    {data.FacilityName}

    \n
    \n
    \n

    \n Address:\n

    \n \n {data.Address}\n \n
    \n
    \n

    \n Contact Number:\n

    \n

    {data.Phone}

    \n
    \n
    \n

    \n Period:\n

    \n

    {data.Period}

    \n
    \n
    \n

    \n Residents to be Seen:\n

    \n \n {countDoneTodayPatients(data.ResidentsToBeTreated)}\n \n
    \n
    \n

    \n Residents Due for Assessment:\n

    \n \n {data.ResidentsDueForAssessment}\n \n
    \n
    \n

    \n Residents Due for Treatment:\n

    \n \n {data.ResidentsDueForTreatment}\n \n
    \n
    \n

    \n Urgent Residents:\n

    \n \n {data.UrgentTreatmentResidentCount}\n \n
    \n
    \n

    \n Confirmed Bookings:\n

    \n \n {data.ResidentsConfirmed ?? 0}\n \n
    \n
    \n )}\n
    \n

    \n await downloadTable(data.FacilityId)}\n className=\"landing-link orange-1 mx-2 text-white\"\n >\n Download Schedules\n \n \n View Residents\n \n

    \n
    \n \n ))\n ) : (\n <>\n \n No Appointments Today\n \n \n )}\n \n ) : (\n <>\n
    \n
    \n

    \n \n \n \n \n View Patients List\n \n

    \n
    \n
    \n \n )}\n \n );\n};\n\nexport default DashboardSummary;\n","import React from \"react\";\nimport { Button } from \"react-bootstrap\";\nimport { NavLink } from \"react-router-dom\";\nimport jsPDF from \"jspdf\";\nimport autoTable from \"jspdf-autotable\";\nimport * as api from \"../../../api\";\nimport moment from \"moment\";\nimport usePracticeHook from \"../../../practice\";\nimport userRoles from \"../../../role\";\n\nconst superAdminFacilitySchedulesData = [\n {\n facilityId: 101,\n facilityName: \"Demo Care Home \",\n podiatryServices: {\n podiatristName: \"Demo Podiatrist \",\n podiatrySchedule: [\n {\n FirstName: \"Jeffrey\",\n LastName: \"Gomez\",\n KnownAs: \"Jeff\",\n WardFloorRoom: \"2\",\n DateOfBirth: \"1976-06-14\",\n DaysSinceLastTreatment: 52,\n HasConsentOnFile: false,\n PaymentType: \"Facility Funding\",\n AssessmentDue: true,\n Notes: \"My Notes 1\",\n },\n {\n FirstName: \"John\",\n LastName: \"Doe\",\n KnownAs: \"John\",\n WardFloorRoom: \"21\",\n DateOfBirth: \"1956-07-12\",\n DaysSinceLastTreatment: 152,\n HasConsentOnFile: true,\n PaymentType: \"Facility Funding\",\n AssessmentDue: true,\n Notes: \"My Notes 2\",\n },\n ],\n },\n physioServices: {\n physioName: \"Demo Physiotherapist\",\n physioSchedule: [\n {\n FirstName: \"Jeffrey\",\n LastName: \"Gomez\",\n KnownAs: \"Jeff\",\n WardFloorRoom: \"2\",\n DateOfBirth: \"1976-06-14\",\n DaysSinceLastTreatment: 52,\n HasConsentOnFile: false,\n PaymentType: \"Facility Funding\",\n AssessmentDue: true,\n Notes: \"My Notes 1\",\n },\n ],\n },\n dieteticsServices: {\n dietitianName: \"Demo Dietetics\",\n dieteticsSchedule: [\n {\n FirstName: \"Jeffrey\",\n LastName: \"Gomez\",\n KnownAs: \"Jeff\",\n WardFloorRoom: \"2\",\n DateOfBirth: \"1976-06-14\",\n DaysSinceLastTreatment: 52,\n HasConsentOnFile: false,\n PaymentType: \"Facility Funding\",\n AssessmentDue: true,\n Notes: \"My Notes 2\",\n },\n ],\n },\n },\n // {\n // facilityId: 358,\n // facilityName: \"Agincare Homes Tilford\",\n // podiatryServices: {\n // podiatristName: \"Aries Resurreccion\",\n // podiatrySchedule: [{}],\n // },\n // physioServices: {\n // physioName: \"Monisha Thandu\",\n // physioSchedule: [{}],\n // },\n // dieteticsServices: {\n // dietitianName: \"Louise Bula\",\n // dietitianSchedule: [{}],\n // },\n // },\n];\n\nconst AdminDashboardSummary = ({ scheduleData }) => {\n const authState = JSON.parse(localStorage.getItem(\"auth0-token-storage\"));\n const accessToken = authState?.access_token;\n const { hasPhysioPractice } = usePracticeHook();\n const { superAdminRole } = userRoles();\n const dateToday = moment(new Date()).format(\"DD_MM_YYYY\");\n\n // const newPatient = scheduleData.map((patient) =>\n // patient.ResidentsToBeTreated.filter((a) => {\n // return a.CreatedOn.split(\"T\")[0];\n // })\n // );\n\n // const filteredDateCreated = newPatient[0].filter(\n // (d) => d.CreatedOn.split(\"T\")[0] === moment(new Date()).format(\"YYYY-MM-DD\")\n // );\n\n const downloadScheduleTable = async (facilityId, serviceName) => {\n const doc = new jsPDF(\"l\", \"pt\");\n try {\n let _allPatients = superAdminFacilitySchedulesData.filter(\n (facility) => facility.facilityId === facilityId\n );\n\n const tableData =\n _allPatients[0][serviceName + \"Services\"][serviceName + \"Schedule\"] ??\n [];\n\n autoTable(doc, {\n headStyles: {\n fillColor: [243, 105, 23],\n minCellHeight: 30,\n valign: \"middle\",\n halign: \"center\",\n fontSize: 8,\n },\n columnStyles: {\n 10: { cellWidth: 80 },\n },\n styles: { fontSize: 9, cellPadding: 0.5, overflow: \"linebreak\" },\n head: [\n [\n \"#\",\n \"First Name\",\n \"Last Name\",\n \"Known As\",\n \"Ward/Floor/Room\",\n \"Date of Birth\",\n \"Consent on file\",\n \"Payment Type\",\n \"Weeks Since Treatment\",\n \"AssessDue\",\n \"Treat (Circle one)\",\n \"Notes\",\n ],\n ],\n body: tableData.map((patient, index) => [\n { content: index + 1, colSpan: 1, rowSpan: 1 },\n { content: patient.FirstName, colSpan: 1, rowSpan: 1 },\n { content: patient.LastName, colSpan: 1, rowSpan: 1 },\n { content: patient.KnownAs ?? \"\", colSpan: 1, rowSpan: 1 },\n { content: patient.WardFloorRoom ?? \"\", colSpan: 1, rowSpan: 1 },\n {\n content: patient?.DateOfBirth\n ? moment(patient.DateOfBirth).format(\"MMM-D-YYYY\")\n : \"\"\n ? Math.floor(parseInt(patient.DaysSinceLastTreatment) / 7)\n : \"\",\n colSpan: 1,\n rowSpan: 1,\n },\n {\n content: patient.HasConsentOnFile === true ? \"yes\" : \"no\",\n colSpan: 1,\n rowSpan: 1,\n },\n { content: patient.PaymentType ?? \"\", colSpan: 1, rowSpan: 1 },\n {\n content: patient?.DaysSinceLastTreatment\n ? Math.floor(parseInt(patient.DaysSinceLastTreatment) / 7)\n : \"\",\n colSpan: 1,\n rowSpan: 1,\n },\n {\n content: patient.AssessmentDue === true ? \"yes\" : \"no\",\n colSpan: 1,\n rowSpan: 1,\n },\n { content: \"Yes / No\", colSpan: 1, rowSpan: 1 },\n { content: \"\", colSpan: 1, rowSpan: 1 },\n ]),\n margin: { top: 20, left: 20, right: 20, bottom: 30 },\n bodyStyles: {\n minCellHeight: 23,\n valign: \"middle\",\n halign: \"center\",\n fontSize: 8,\n },\n didDrawPage: (data) => {\n doc.setFontSize(7);\n doc.text(\n `Page ${data.pageNumber}`,\n doc.internal.pageSize.width - 20,\n doc.internal.pageSize.height - 20,\n { align: \"right\", style: \"italic\" }\n );\n },\n });\n\n doc.save(\n `${\n serviceName.charAt(0).toUpperCase() + serviceName.slice(1)\n }_Schedule_${dateToday}.pdf`\n );\n } catch (err) {\n console.error(err);\n }\n };\n\n const countDoneTodayPatients = (patients) => {\n return (\n patients.filter(\n (patient) =>\n patient.TreatmentDue === true ||\n patient.NeedsUrgentTreatment === true ||\n (patient?.CreatedOn &&\n moment(new Date()).format(\"YYYY-MM-DD\") ===\n moment(patient.CreatedOn.split(\"T\")[0]).format(\"YYYY-MM-DD\")) ||\n (patient?.progress_notes &&\n patient.progress_notes.length > 0 &&\n patient.progress_notes[patient.progress_notes.length - 1] &&\n moment(new Date()).format(\"YYYY-MM-DD\") ===\n moment(\n patient.progress_notes[\n patient.progress_notes.length - 1\n ].updatedAt.split(\"T\")[0]\n ).format(\"YYYY-MM-DD\")) ||\n (patient?.progress_notes &&\n patient.progress_notes.length > 0 &&\n patient.progress_notes[patient.progress_notes.length - 1] &&\n moment(new Date()).format(\"YYYY-MM-DD\") ===\n moment(\n patient.progress_notes[\n patient.progress_notes.length - 1\n ].createdAt.split(\"T\")[0]\n ).format(\"YYYY-MM-DD\"))\n ).length ?? 0\n );\n };\n\n return (\n
    \n <>\n {superAdminFacilitySchedulesData &&\n superAdminFacilitySchedulesData.length > 0 ? (\n superAdminFacilitySchedulesData.map((schedFacility, index) => (\n 1 &&\n superAdminFacilitySchedulesData.length - 1 !== index\n ? \"border-bottom\"\n : \"\"\n } px-3 pt-2 pb-3`}\n key={index}\n >\n
    \n

    \n Facility:\n

    \n

    {schedFacility.facilityName}

    \n
    \n
    \n

    \n Services\n

    \n
    \n
    \n
    \n

    \n Podiatry:\n

    \n

    \n {schedFacility?.podiatryServices?.podiatristName}\n

    \n
    \n
    \n \n await downloadScheduleTable(\n schedFacility.facilityId,\n \"podiatry\"\n )\n }\n >\n Download Schedules\n

    \n
    \n
    \n
    \n
    \n

    \n Physiotherapy:\n

    \n

    \n {schedFacility?.physioServices?.physioName}\n

    \n
    \n
    \n \n await downloadScheduleTable(\n schedFacility.facilityId,\n \"physio\"\n )\n }\n >\n Download Schedules\n

    \n
    \n
    \n
    \n
    \n

    \n Dietetics:\n

    \n

    \n {schedFacility?.dieteticsServices?.dietitianName}\n

    \n
    \n
    \n \n await downloadScheduleTable(\n schedFacility.facilityId,\n \"dietetics\"\n )\n }\n >\n Download Schedules\n

    \n
    \n
    \n
    \n ))\n ) : (\n <>\n \n No Facility Schedules Today\n \n \n )}\n \n \n );\n};\n\nexport default AdminDashboardSummary;\n","import React, { useState, useEffect } from \"react\";\nimport { useHistory } from \"react-router-dom\";\nimport * as api from \"../../../api\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport Modal from \"react-bootstrap/Modal\";\nimport Button from \"react-bootstrap/Button\";\nimport Form from \"react-bootstrap/Form\";\nimport Swal from \"sweetalert2\";\n\nconst LovedOneRequest = () => {\n const authState = JSON.parse(localStorage.getItem(\"auth0-token-storage\"));\n const accessToken = authState?.access_token;\n const history = useHistory();\n\n const [pendingLovedOnes, setPendingLovedOnes] = useState([]);\n const [forApprovalData, setForApprovalData] = useState([]);\n const [lovedOneLoader, setLovedOneLoader] = useState(false);\n const [showApproveModal, setShowApproveModal] = useState(false);\n\n const handleClose = () => {\n setShowApproveModal(false);\n setLovedOneLoader(false);\n };\n\n useEffect(() => {\n const pendingLovedOnesRequest = async () => {\n try {\n setLovedOneLoader(true);\n const res = await api.getPendingLovedOneRequest(accessToken);\n setPendingLovedOnes(res.data.data);\n setLovedOneLoader(false);\n } catch (error) {\n console.log(error);\n setLovedOneLoader(false);\n if (\n error?.response?.status === 401 &&\n error?.response?.data?.errors?.length > 0 &&\n error?.response?.data?.errors[0]?.message === \"Invalid Token\"\n ) {\n handleExpiration();\n }\n }\n };\n pendingLovedOnesRequest();\n }, []);\n\n const approveLovedOneRequest = (data) => {\n setForApprovalData(data);\n setShowApproveModal(true);\n };\n\n const saveLovedOne = async () => {\n const data = {\n id: forApprovalData._id,\n };\n try {\n setLovedOneLoader(true);\n const res = await api.approveLovedOneRequest(data, accessToken);\n console.log(res.data.data);\n Swal.fire({\n title: \"Success\",\n html: \"Three random words sent to email.\",\n icon: \"success\",\n confirmButtonColor: \"#833f84\",\n });\n setShowApproveModal(false);\n setLovedOneLoader(false);\n } catch (error) {\n console.log(error);\n Swal.fire({\n title: \"Error!\",\n html: error.response.data.errors[0].message,\n icon: \"error\",\n confirmButtonColor: \"#833f84\",\n });\n setLovedOneLoader(false);\n if (\n\t\t\t\terror?.response?.status === 401 &&\n\t\t\t\terror?.response?.data?.errors?.length > 0 &&\n\t\t\t\terror?.response?.data?.errors[0]?.message === \"Invalid Token\"\n\t\t\t) {\n\t\t\t\thandleExpiration();\n\t\t\t}\n }\n };\n\n const handleExpiration = () => {\n localStorage.removeItem(\"auth0-token-storage\");\n localStorage.removeItem(\"user-claims\");\n history.push(\"/login\");\n };\n\n return !accessToken ? (\n handleExpiration()\n ) : (\n <>\n
    \n \n {/* */}\n
    \n
    \n Pending Adding Lovedones Request\n
    \n
    \n
    \n \n \n
    \n {pendingLovedOnes && pendingLovedOnes.length > 0 ? (\n pendingLovedOnes.map((data, index) => (\n 1 &&\n pendingLovedOnes.length - 1 !== index\n ? \"border-bottom\"\n : \"\"\n } px-2 mb-2 pb-3`}\n key={index}\n >\n
    \n

    \n {data.FirstName + \" \" + data.LastName}\n

    \n

    \n {data.facilityName.split(\"-\")[0]}\n

    \n
    \n
    \n
    \n

    \n {data.requestorFirstName.charAt(0).toUpperCase() +\n data.requestorFirstName.slice(1) +\n \" \" +\n data.requestorLastName.charAt(0).toUpperCase() +\n data.requestorLastName.slice(1)}\n

    \n

    {data.requestorEmail}

    \n
    \n approveLovedOneRequest(data)}\n >\n \n
    \n
    \n \n ))\n ) : (\n <>\n \n No Pending LovedOnes\n \n \n )}\n \n\n {/*
    \n
    \n SAVE\n
    \n
    */}\n \n \n \n handleClose()}>\n \n \n {forApprovalData?.FirstName + \" \" + forApprovalData?.LastName}\n \n \n \n
    \n \n

    \n Are you sure do you want to accept{\" \"}\n {forApprovalData?.requestorFirstName?.charAt(0).toUpperCase() +\n forApprovalData?.requestorFirstName?.slice(1) +\n \" \" +\n forApprovalData?.requestorLastName?.charAt(0).toUpperCase() +\n forApprovalData?.requestorLastName?.slice(1)}{\" \"}\n as lovedone?\n

    \n \n \n
    \n \n \n \n \n
    \n \n );\n};\n\nexport default LovedOneRequest;\n","import React, { useEffect, useState } from \"react\";\nimport { useHistory } from \"react-router-dom\";\nimport \"./landing.style.css\";\nimport moment from \"moment\";\nimport usePracticeHook from \"../../../practice\";\n\nimport { appointmentData, selectFacility } from \"./data\";\n\nimport * as api from \"../../../api\";\n\n// SVG icons\nimport ClientProfile from \"../../../assets/svg/Landing Page/ClientProfile.svg\";\nimport Alert from \"../../../assets/svg/Landing Page/Alert.svg\";\nimport Check from \"../../../assets/svg/Landing Page/Check.svg\";\nimport Pending from \"../../../assets/svg/Landing Page/Pending.svg\";\nimport Loader from \"../../reusables/Loader\";\nimport DashboardSummary from \"./DashboardSummary\";\nimport AdminDashboardSummary from \"./AdminDashboardSummary\";\n\nimport userRoles from \"../../../role\";\nimport LovedOneRequest from \"./LovedOneRequest\";\n\nconst Appointments = ({ scheduleData, loader, searchInDashboard }) => {\n // const [appointments, setAppointments] = useState(appointmentData);\n const [appointments, setAppointments] = useState([]);\n // const [visible, setVisible] = useState(4);\n // const { authState } = useOktaAuth();\n const authState = JSON.parse(localStorage.getItem(\"auth0-token-storage\"));\n const accessToken = authState?.access_token;\n const { hasPhysioPractice, hasDiatecianPractice } = usePracticeHook();\n const {\n superAdminRole,\n otherServicesRole,\n facilityManagerRole,\n clinicalManagerRole,\n careHomeManagerRole\n } = userRoles();\n const history = useHistory();\n const [userFacilities, setUserFacilites] = useState([]);\n const [facilityLoader, setFacilityLoader] = useState(false);\n // const [selectedFacility, setSelectedFacility] = useState(\"\");\n const [filter, setFilter] = useState({\n week: \"\",\n facility: \"\",\n });\n\n const handleExpiration = () => {\n localStorage.removeItem(\"auth0-token-storage\");\n localStorage.removeItem(\"user-claims\");\n history.push(\"/login\");\n };\n\n useEffect(() => {\n const getUserFacilities = async () => {\n setFacilityLoader(true);\n try {\n const data = await api.fetchFacilities(accessToken);\n // console.log(\"user facilites\", data.data.data.data);\n const facilities = data.data.data.data;\n // console.log(facilities);\n const mergedFacilityInfo = [];\n // console.log(\"user authstate\", userFacilityNames);\n\n facilities.forEach((facility) => {\n mergedFacilityInfo.push({\n id: facility.FacilityID,\n shortName: facility.FacilityShortName,\n });\n });\n // console.log(\"user facilities\", mergedFacilityInfo);\n setUserFacilites(mergedFacilityInfo);\n setFacilityLoader(false);\n } catch (error) {\n setFacilityLoader(false);\n console.log(\"error getting user facilites\", error);\n if (\n error?.response?.status === 401 &&\n error?.response?.data?.errors?.length > 0 &&\n error?.response?.data?.errors[0]?.message === \"Invalid Token\"\n ) {\n handleExpiration();\n }\n }\n };\n\n getUserFacilities();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [accessToken]);\n\n // const filterFacility = (filteredData) => {\n // if (\n // filter.facility === \"\" ||\n // filter.facility === null ||\n // filter.facility === undefined\n // ) {\n // const filteredAppointments = filteredData.filter(\n // (resident) => parseInt(resident.facilityId) === 380\n // );\n // return filteredAppointments;\n // }\n\n // const filteredAppointments = filteredData.filter(\n // (resident) => parseInt(resident.facilityId) === parseInt(filter.facility)\n // );\n\n // return filteredAppointments;\n // };\n\n // const handleFacilityChange = (e) => {\n // setFilter({ ...filter, facility: e.target.value });\n // };\n\n // useEffect(() => {\n // // const filteredAppointment = filterFacility(appointmentData);\n // scheduleData = scheduleData.sort((a, b) => {\n // if (a.lastName < b.lastName) {\n // return -1;\n // }\n // if (a.lastName > b.lastName) {\n // return 1;\n // }\n // return 0;\n // });\n // const filteredAppointment = filterFacility(scheduleData);\n // setAppointments(filteredAppointment);\n // }, [filter, scheduleData]);\n\n // Filtering Schedules Data and sorted ascending order\n // const filterBy = (data, filterKey) =>\n // filterKey\n // ? scheduleData.filter((item) => item.name.includes(filterKey))\n // : data;\n // const sortBy = (data, sortKey) =>\n // sortKey ? [...data].sort((a, b) => a[sortKey] > b[sortKey]) : data;\n\n // const sortAscending = (a, b) => {\n // var c = new Date(a.start);\n // var d = new Date(b.start);\n // return c - d;\n // };\n\n // const filterByDate = scheduleData?.filter((d) => {\n // const date = moment(new Date(d.start)).format(\"MM-DD-YYYY\");\n // return date === moment(new Date()).format(\"MM-DD-YYYY\");\n // });\n\n // const filterByDateAndSortAscending = sortBy(\n // filterBy(filterByDate),\n // sortAscending\n // );\n\n return (\n <>\n {/* {superAdminRole || facilityManagerRole || clinicalManagerRole || careHomeManagerRole ? (\n
    \n
    \n
    \n \n
    \n
    \n Today's Facility Schedules\n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n {loader ? (\n \n \n \n ) : (\n <>\n
    \n \n
    \n \n )}\n \n \n ) : null} */}\n\n
    \n
    \n
    \n \n
    \n
    \n {/* Appointments */}\n Today's Appointment\n {/* {hasPhysioPractice\n ? \"Today's Physiotherapy Appointment\"\n : hasDiatecianPractice\n ? \"Today's Dietitian Appointments\"\n : otherServicesRole\n ? \"Today's Other Services Schedules\"\n : \"Today's Podiatry Appointment\"} */}\n
    \n
    \n {/*
    \n \n
    */}\n
    \n
    \n
    \n \n {loader ? (\n \n \n \n ) : (\n <>\n
    \n \n
    \n {/* Replace scheduleData.map by appointments.map */}\n {/* {searchInDashboard(scheduleData).map((appointment, index) => {\n return (\n
    \n
    \n
    \n \n
    \n
    \n

    \n {appointment.lastName}, {appointment.firstName}\n

    \n

    \n {moment(appointment.start).format(\"hh:mm A\") +\n \" - \" +\n moment(appointment.end).format(\"hh:mm A\")}\n

    \n

    \n \n Treatment Summary\n \n

    \n
    \n
    \n {appointment.isUrgent ? (\n \n ) : null}\n {appointment.status === \"completed\" ? (\n \n ) : (\n \n )}\n
    \n
    \n
    \n );\n })} */}\n\n {/*
    \n

    \n \n View Schedule\n \n

    \n
    */}\n \n )}\n \n \n\n {superAdminRole || facilityManagerRole || careHomeManagerRole ? : null}\n \n );\n};\n\nexport default Appointments;\n","export default __webpack_public_path__ + \"static/media/Calendar White.cee6055a.svg\";","export default __webpack_public_path__ + \"static/media/Bell.4b44825b.svg\";","export const releaseNotesVersion = [\n {\n id: 1,\n version: \"v1.2.1\",\n releaseDate: \" 05/13/2023\",\n },\n {\n id: 2,\n version: \"v1.4.0\",\n releaseDate: \"10/21/2023\",\n },\n];\n","import React, { useEffect, useState } from \"react\";\nimport Bell from \"../../../assets/svg/Assessments/Bell.svg\";\nimport Calendar from \"../../../assets/svg/Assessments/Calendar White.svg\";\nimport { useHistory } from \"react-router-dom\";\n\nimport Loader from \"../../reusables/Loader\";\nimport * as api from \"../../../api\";\nimport usePracticeHook from \"../../../practice\";\nimport { releaseNotesVersion } from \"../release_notes/versions\";\n\nconst Events = () => {\n\t// const { authState } = useOktaAuth();\n\t// const accessToken = authState.accessToken;\n\tconst authState = JSON.parse(localStorage.getItem(\"auth0-token-storage\"));\n\tconst accessToken = authState?.access_token;\n\tconst history = useHistory();\n\tconst { hasPhysioPractice } = usePracticeHook();\n\tconst [loader, setLoader] = useState(true);\n\tconst [announcements, setAnnouncements] = useState([]);\n\tconst [currentDate, setCurrentDate] = useState(new Date());\n\tvar months = new Array(\n\t\t\"Jan\",\n\t\t\"Feb\",\n\t\t\"Mar\",\n\t\t\"Apr\",\n\t\t\"May\",\n\t\t\"Jun\",\n\t\t\"Jul\",\n\t\t\"Aug\",\n\t\t\"Sept\",\n\t\t\"Oct\",\n\t\t\"Nov\",\n\t\t\"Dec\"\n\t);\n\n\tuseEffect(() => {\n\t\tconst fetchAnnouncements = async () => {\n\t\t\ttry {\n\t\t\t\tlet announcementData = await api.getAnnouncements(\n\t\t\t\t\taccessToken,\n\t\t\t\t\t1,\n\t\t\t\t\t200\n\t\t\t\t);\n\t\t\t\tif (\n\t\t\t\t\t!announcementData ||\n\t\t\t\t\t!announcementData.data ||\n\t\t\t\t\t!announcementData.data.data ||\n\t\t\t\t\t!announcementData.data.data.length === 0 ||\n\t\t\t\t\t!announcementData.data.data[0] ||\n\t\t\t\t\t!announcementData.data.data[0].FacilityBirthdays\n\t\t\t\t)\n\t\t\t\t\treturn;\n\t\t\t\tif (announcementData.length === 0) return;\n\t\t\t\tlet birthdayArray =\n\t\t\t\t\tannouncementData.data.data[0].FacilityBirthdays.sort(\n\t\t\t\t\t\t(a, b) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\tnew Date(a.BirthDate).getDate -\n\t\t\t\t\t\t\t\tnew Date(b.BirthDate).getDate\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\n\t\t\t\tsetAnnouncements(birthdayArray.slice(0, 7));\n\t\t\t} catch (error) {\n\t\t\t\tconsole.log(\"asdfweasdfef\", error);\n\t\t\t\tif (\n\t\t\t\t\terror?.response?.status === 401 &&\n\t\t\t\t\terror?.response?.data?.errors?.length > 0 &&\n\t\t\t\t\terror?.response?.data?.errors[0]?.message ===\n\t\t\t\t\t\t\"Invalid Token\"\n\t\t\t\t) {\n\t\t\t\t\thandleExpiration();\n\t\t\t\t}\n\t\t\t} finally {\n\t\t\t\tsetLoader(false);\n\t\t\t}\n\t\t};\n\n\t\tfetchAnnouncements();\n\t}, []);\n\n\tconst handleExpiration = () => {\n\t\tlocalStorage.removeItem(\"auth0-token-storage\");\n\t\tlocalStorage.removeItem(\"user-claims\");\n\t\thistory.push(\"/login\");\n\t};\n\n return (\n
    \n \n
    \n \n
    \n Events\n
    \n
    \n
    \n \n \n {\n loader ? (\n \n \n \n ) : (\n // announcements && announcements.length > 0 ?\n <>\n {announcements && announcements.length > 0 && (\n
    Birthdays
    \n )}\n {announcements &&\n announcements.length > 0 &&\n announcements.map((announcement, index) => {\n let date = new Date(announcement.BirthDate);\n let month = date.getMonth();\n let day = date.getDate();\n\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{months[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmonth\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t].toUpperCase()}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{day}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tannouncement.FullName\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{/*
    \n

    \n {announcement.FullName}\n

    \n
    */}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t{hasPhysioPractice ? null : (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\tRelease Notes\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t{releaseNotesVersion &&\n\t\t\t\t\t\t\t\t\t\t\treleaseNotesVersion\n\t\t\t\t\t\t\t\t\t\t\t\t.slice(0)\n\t\t\t\t\t\t\t\t\t\t\t\t.reverse()\n\t\t\t\t\t\t\t\t\t\t\t\t.map((data, index) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tHapiPartner{\" \"}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{data.version} -{\" \"}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata.releaseDate\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)\n\t\t\t\t\t\t// : (\n\t\t\t\t\t\t// <>\n\t\t\t\t\t\t// \n\t\t\t\t\t\t// No Events\n\t\t\t\t\t\t// \n\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\t);\n};\n\nexport default Events;\n","import React, { useState, useEffect } from \"react\";\nimport { useHistory } from \"react-router-dom\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport Modal from \"react-bootstrap/Modal\";\nimport * as api from \"../../../api\";\nimport moment from \"moment\";\nimport Swal from \"sweetalert2\";\nimport ModernDatepicker from \"react-modern-datepicker\";\n\nconst Tasks = () => {\n\t// const { authState, oktaAuth } = useOktaAuth();\n\t// const userId = authState.accessToken.claims.user?._id;\n\tconst history = useHistory();\n\tconst authState = JSON.parse(localStorage.getItem(\"auth0-token-storage\"));\n\tconst userClaims = JSON.parse(localStorage.getItem(\"user-claims\"));\n\tconst accessToken = authState?.access_token;\n\tconst userId = userClaims?._id;\n\tconst [allMyTasks, setAllMyTasks] = useState([]);\n\n\tconst [showTask, setShowTask] = useState(false);\n\tconst [loader, setLoader] = useState(false);\n\tconst [myTasks, setMyTasks] = useState(null);\n\tconst [updateTask, setUpdateTask] = useState({\n\t\tassignedTo: [`${userId}`],\n\t\tsubject: \"\",\n\t\tdescription: \"\",\n\t\tstartDate: \"\",\n\t\tendDate: \"\",\n\t});\n\n const [tasksDate, setTasksDate] = useState({\n startDate: \"\",\n endDate: \"\",\n });\n\n const handleClose = () => {\n setShowTask(false);\n setMyTasks(null);\n };\n\n\tconst handleOpenTask = (task) => {\n\t\tsetMyTasks(task);\n\t\tsetShowTask(true);\n\t};\n\n\tconst handleOnChangeTask = (e) => {\n\t\tconst newObject = { ...updateTask, [e.target.name]: e.target.value };\n\t\tsetUpdateTask(newObject);\n\t};\n\n const onChangeDate = (date, name) => {\n setTasksDate({\n ...tasksDate,\n [name]: date,\n });\n };\n\n useEffect(() => {\n if (tasksDate) {\n const { startDate, endDate } = tasksDate;\n\n setUpdateTask((prevState) => ({\n ...prevState,\n startDate: startDate\n ? moment(startDate, \"DD/MM/YYYY\").format(\"YYYY-MM-DD\")\n : prevState.startDate,\n endDate: endDate\n ? moment(endDate, \"DD/MM/YYYY\").format(\"YYYY-MM-DD\")\n : prevState.endDate,\n }));\n }\n }, [tasksDate]);\n\n useEffect(() => {\n if (tasksDate) {\n const { startDate, endDate } = tasksDate;\n\n setUpdateTask((prevState) => ({\n ...prevState,\n startDate: startDate\n ? moment(startDate, \"DD/MM/YYYY\").format(\"YYYY-MM-DD\")\n : prevState.startDate,\n endDate: endDate\n ? moment(endDate, \"DD/MM/YYYY\").format(\"YYYY-MM-DD\")\n : prevState.endDate,\n }));\n }\n }, [tasksDate]);\n\n const handleExpiration = () => {\n localStorage.removeItem(\"auth0-token-storage\");\n localStorage.removeItem(\"user-claims\");\n history.push(\"/login\");\n };\n\n useEffect(() => {\n const newObj = {\n ...updateTask,\n subject: myTasks?.subject,\n description: myTasks?.description,\n // startDate: myTasks && moment(myTasks.startDate).format(\"YYYY-MM-DD\"),\n // endDate: myTasks && moment(myTasks.endDate).format(\"YYYY-MM-DD\"),\n };\n setUpdateTask(newObj);\n setTasksDate({\n ...tasksDate,\n startDate: myTasks && moment(myTasks.startDate).format(\"DD/MM/YYYY\"),\n endDate: myTasks && moment(myTasks.endDate).format(\"DD/MM/YYYY\"),\n });\n }, [myTasks]);\n\n useEffect(() => {\n const getMyTasks = async () => {\n setLoader(true);\n try {\n const data = await api.getTasks(accessToken);\n setAllMyTasks(data.data.data);\n setLoader(false);\n } catch (error) {\n setLoader(false);\n if (\n error?.response?.status === 401 &&\n error?.response?.data?.errors?.length > 0 &&\n error?.response?.data?.errors[0]?.message === \"Invalid Token\"\n ) {\n handleExpiration();\n }\n }\n };\n\n\t\tgetMyTasks();\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [accessToken]);\n\n const updateMyTask = async () => {\n setLoader(true);\n try {\n const data = await api.updateTask(updateTask, myTasks._id, accessToken);\n let updatedTask = allMyTasks.map((task) => {\n if (task._id === myTasks._id) {\n return data.data.data;\n }\n return task;\n });\n setAllMyTasks(updatedTask);\n Swal.fire({\n html: \"Successfully updated the task!\",\n icon: \"success\",\n title: \"Success\",\n confirmButtonColor: \"#833f84\",\n });\n setShowTask(false);\n setLoader(false);\n } catch (err) {\n console.error(err);\n Swal.fire({\n title: \"Error!\",\n html: err.response.data.errors[0].message,\n icon: \"info\",\n confirmButtonColor: \"#833f84\",\n });\n setLoader(false);\n }\n };\n\n const doneTask = async () => {\n setLoader(true);\n try {\n const data = await api.doneTheTask(myTasks._id, updateTask, accessToken);\n let updatedTask = allMyTasks.map((task) => {\n if (task._id === myTasks._id) {\n return data.data.data;\n }\n return task;\n });\n setAllMyTasks(updatedTask);\n Swal.fire({\n html: \"Successfully completed task!\",\n icon: \"success\",\n title: \"Success\",\n confirmButtonColor: \"#833f84\",\n });\n setShowTask(false);\n setLoader(false);\n } catch (err) {\n console.log(err);\n setLoader(false);\n }\n };\n\n const deferrTask = async () => {\n setLoader(true);\n try {\n const data = await api.deferredTheTask(\n myTasks._id,\n updateTask,\n accessToken\n );\n let updatedTask = allMyTasks.map((task) => {\n if (task._id === myTasks._id) {\n return data.data.data;\n }\n return task;\n });\n setAllMyTasks(updatedTask);\n Swal.fire({\n html: \"Successfully deferred task!\",\n icon: \"success\",\n title: \"Success\",\n confirmButtonColor: \"#833f84\",\n });\n setShowTask(false);\n setLoader(false);\n } catch (error) {\n setLoader(false);\n if (\n error?.response?.status === 401 &&\n error?.response?.data?.errors?.length > 0 &&\n error?.response?.data?.errors[0]?.message === \"Invalid Token\"\n ) {\n handleExpiration();\n }\n }\n };\n\n return !accessToken ? (\n handleExpiration()\n ) : (\n <>\n
    \n \n
    \n \n
    \n Tasks\n
    \n
    \n
    \n \n \n
    \n
    \n {!loader && allMyTasks.length > 0 ? (\n <>\n
    \n
    Subject
    \n
    Status
    \n
    \n {allMyTasks &&\n allMyTasks.map((task, index) => {\n return (\n \n handleOpenTask(task)}\n style={{ cursor: \"pointer\" }}\n data-target={`#task${task._id}`}\n >\n

    \n {task.subject.charAt(0).toUpperCase() +\n task.subject.slice(1).toLowerCase()}\n

    \n

    \n {task.status === \"done\"\n ? \"Completed\"\n : task.status === \"deferred\"\n ? \"Deferred\"\n : \"Active\"}\n {/* {task.status.charAt(0).toUpperCase() +\n task.status.slice(1).toLowerCase()} */}\n

    \n
    \n
    \n );\n })}\n \n ) : (\n <>\n \n No Tasks Available\n \n \n )}\n \n \n \n \n \n handleClose()}\n aria-labelledby=\"example-modal-sizes-title-lg\"\n // centered\n >\n \n Task\n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n \n {/* */}\n
    \n onChangeDate(date, \"startDate\")}\n primaryColor=\"#f36917\"\n placeholder=\"dd/mm/yyyy\"\n />\n
    \n
    \n
    \n \n {/* */}\n
    \n onChangeDate(date, \"endDate\")}\n primaryColor=\"#f36917\"\n placeholder=\"dd/mm/yyyy\"\n />\n
    \n
    \n
    \n
    \n \n \n \n \n \n \n \n );\n};\n\nexport default Tasks;\n","import React, { useState, useEffect } from \"react\";\nimport { useHistory, NavLink } from \"react-router-dom\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport moment from \"moment\";\nimport Loader from \"../../reusables/Loader\";\nimport ResidentDetails from \"../notifications/ResidentDetails\";\n\nconst Notifications = ({ notificationData, notificationLoader }) => {\n const history = useHistory();\n const authState = JSON.parse(localStorage.getItem(\"auth0-token-storage\"));\n const accessToken = authState?.access_token;\n const [loader, setLoader] = useState(false);\n\n const handleExpiration = () => {\n localStorage.removeItem(\"auth0-token-storage\");\n localStorage.removeItem(\"user-claims\");\n history.push(\"/login\");\n };\n\n return !accessToken ? (\n handleExpiration()\n ) : (\n <>\n
    \n \n
    \n \n
    \n Notifications\n
    \n
    \n
    \n \n {!notificationLoader ? (\n \n
    \n {notificationData && notificationData.length > 0 ? (\n <>\n {notificationData.slice(0, 4).map((data, index) => (\n \n
    \n \n {/* {data.residentFullName} */}\n \n \n \n

    \n

    \n {data.notes}\n

    \n

    \n {\" \"}\n {moment(new Date(data.createdAt)).fromNow()}\n

    \n
    \n {/*
    \n

    \n \n \n \n

    \n

    \n \n

    \n
    */}\n \n ))}\n \n ) : (\n <>\n \n No Notifications Available\n
    \n \n )}\n {notificationData.length > 3 && (\n
    \n \n \n See all\n

    \n
    \n
    \n )}\n \n \n ) : (\n
    \n \n
    \n )}\n \n \n \n );\n};\n\nexport default Notifications;\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useState, useEffect } from \"react\";\nimport \"./landing.style.css\";\nimport moment from \"moment\";\n\nimport * as api from \"../../../api\";\nimport { useHistory } from \"react-router-dom\";\nimport Appointments from \"./Appointments\";\n// import LandingPageProfile from \"./LandingPageProfile\";\nimport Events from \"./Events\";\nimport Tasks from \"./Tasks\";\nimport LovedOneRequest from \"./LovedOneRequest\";\nimport Notifications from \"./Notifications\";\nimport UserRoles from \"../../../role\";\n\nconst LandingPage = ({ notificationData, notificationLoader }) => {\n // const { authState, oktaAuth } = useOktaAuth();\n // const accessToken = authState.accessToken;\n const authState = JSON.parse(localStorage.getItem(\"auth0-token-storage\"));\n const accessToken = authState?.access_token;\n const { careHomeManagerRole } = UserRoles();\n\n // For Schedules\n const [scheduleData, setScheduleData] = useState([]);\n const [dateContext] = useState(moment());\n const [loader, setLoader] = useState(true);\n const history = useHistory();\n const [searchItem] = useState(\"\");\n const [searchParam] = useState([\"lastName\", \"firstName\", \"residentId\"]);\n\n const searchInDashboard = (items) => {\n return items.filter((item) => {\n return searchParam.some((newItem) => {\n return (\n item[newItem]\n .toString()\n .toLowerCase()\n .indexOf(searchItem.toLowerCase()) > -1\n );\n });\n });\n };\n\n const handleExpiration = () => {\n localStorage.removeItem(\"auth0-token-storage\");\n localStorage.removeItem(\"user-claims\");\n history.push(\"/login\");\n };\n\n // const urgentPatients = scheduleData.filter((a) => {\n // return a.isUrgent === true;\n // });\n\n // const differentFacilities = [\n // ...new Set(scheduleData.map((f) => f.facilityId)),\n // ];\n\n useEffect(() => {\n const getSchedule = async () => {\n setLoader(true);\n const dateFrom = `${dateContext.format(\"YYYY\")}-${dateContext.format(\n \"MM\"\n )}-1`;\n const dateTo = `${dateContext.format(\"YYYY\")}-${dateContext.format(\n \"MM\"\n )}-${dateContext.daysInMonth()}`;\n try {\n const data = await api.getAppointmentsToday(\n dateFrom,\n dateTo,\n accessToken\n );\n const schedule = data.data.data.data;\n // const mergedScheduleInfo = [];\n // schedule.forEach((schedule) => {\n // schedule.ResidentsToBeTreated.forEach((resident) => {\n // mergedScheduleInfo.push({\n // firstName: resident.FirstName,\n // lastName: resident.LastName,\n // facilityId: schedule.FacilityId,\n // isUrgent: resident.NeedsUrgentTreatment,\n // start: resident.StartDateTime,\n // end: resident.EndDateTime,\n // residentId: resident.ResidentId,\n // });\n // });\n // });\n // console.log(\"schedule\", mergedScheduleInfo);\n // setScheduleData(mergedScheduleInfo);\n setScheduleData(schedule);\n setLoader(false);\n } catch (error) {\n console.log(\"get schedules error\");\n if (\n error?.response?.status === 401 &&\n error?.response?.data?.errors?.length > 0 &&\n error?.response?.data?.errors[0]?.message === \"Invalid Token\"\n ) {\n handleExpiration();\n }\n setLoader(false);\n }\n };\n\n getSchedule();\n }, [dateContext, accessToken]);\n\n // const handleExpiration = () => {\n // // oktaAuth.signOut();\n // localStorage.removeItem(\"auth0-token-storage\");\n // history.push(\"/login\");\n // };\n\n return !accessToken ? (\n handleExpiration()\n ) : (\n <>\n
    \n
    \n
    \n {/*
    \n
    \n
    \n You have {scheduleData.length} appointments in{\" \"}\n {differentFacilities.length} different facilities,{\" \"}\n {urgentPatients.length} of the patients are urgent.\n
    \n \n See schedule?\n \n
    \n
    */}\n {/*
    \n
    \n setSearchItem(e.target.value)}\n />\n
    \n
    */}\n
    \n {/* Appointments */}\n
    \n \n
    \n\n
    \n \n {careHomeManagerRole ? null : }\n \n {/* */}\n
    \n
    \n
    \n
    \n
    \n \n );\n};\n\nexport default LandingPage;\n","//general packages\r\nimport React, { useState, useEffect } from \"react\";\r\nimport { Route, Switch, useHistory, useLocation } from \"react-router-dom\";\r\nimport PrivateRoute from \"./PrivateRoute\";\r\nimport * as api from \"./api\";\r\n\r\n//okta packages & config\r\n// import { SecureRoute, Security, LoginCallback } from \"@okta/okta-react\";\r\n// import { OktaAuth, toRelativeUrl } from \"@okta/okta-auth-js\";\r\n// import { oktaAuthConfig, oktaSignInConfig } from \"./config\";\r\n\r\n//layouts\r\nimport Navbar from \"./components/layouts/Navbar\";\r\nimport Footer from \"./components/layouts/Footer\";\r\nimport SideBar from \"./components/layouts/SideBar\";\r\n\r\n//pages\r\n// import Login from \"./components/pages/Login\";\r\nimport Signup from \"./components/pages/Signup\";\r\nimport Welcome from \"./components/pages/Welcome\";\r\nimport HomeDashboard from \"./components/pages/HomeDashboard\";\r\nimport About from \"./components/pages/About\";\r\nimport Contact from \"./components/pages/Contact\";\r\nimport NotFound from \"./components/pages/NotFound\";\r\n\r\nimport Users from \"./components/pages/users/Users\";\r\nimport UpdateUser from \"./components/pages/users/UpdateUser\";\r\n\r\n//pages for patients\r\n// import Patients from \"./components/pages/patients/Patients\";\r\n// import PatientPage from \"./components/pages/patients/PatientPage\";\r\n// import CreatePatient from \"./components/pages/patients/CreatePatient\";\r\n// import UpdatePatient from \"./components/pages/patients/UpdatePatient\";\r\n// import AddMedication from \"./components/pages/patients/datacategories/AddMedication\";\r\n// import ReadMedications from \"./components/pages/patients/datacategories/ReadMedications\";\r\n// import UpdateMedication from \"./components/pages/patients/datacategories/UpdateMedication\";\r\n\r\n//pages for schedule\r\n// import Schedules from \"./components/pages/schedules/Schedules\";\r\n// import ProgressNotes from \"./components/pages/progress_notes/ProgressNotes\";\r\n// import Assessments from \"./components/pages/assessments/Assessments\";\r\n// import CarePlans from \"./components/pages/careplans/CarePlans\";\r\n// import Loved1s from \"./components/pages/loved1s/Loved1s\";\r\n// import UpdateLovedOnes from \"./components/pages/loved1s/UpdateLoved1s\";\r\n\r\n// pages for support\r\nimport SupportRequests from \"./components/pages/support/SupportRequests\";\r\nimport CreateTicket from \"./components/pages/support/CreateTicket\";\r\nimport TicketSuccess from \"./components/pages/support/TicketSuccess\";\r\nimport ContactSupport from \"./components/pages/support/ContactSupport\";\r\n\r\n// Landing page\r\nimport LandingPage from \"./components/pages/landing_page/LandingPage\";\r\n\r\n// Push Notification\r\nimport { db } from \"./firebase/firebase\";\r\nimport { ref, onValue, off } from \"firebase/database\";\r\n// import { generateToken, messaging } from \"./firebase/firebase\";\r\n// import { onMessage } from \"firebase/messaging\";\r\nimport toast from \"react-hot-toast\";\r\n\r\n// // Font Awesome Icons\r\n// import { library } from \"@fortawesome/fontawesome-svg-core\";\r\n// import { fab } from \"@fortawesome/free-brands-svg-icons\";\r\n// import { far } from \"@fortawesome/free-regular-svg-icons\";\r\n// import { fas } from \"@fortawesome/free-solid-svg-icons\";\r\n// library.add(fab, far, fas);\r\n\r\n// import AddProgressNotes from \"./components/pages/progress_notes/AddProgressNotes\";\r\n// import DeletePatient from \"./components/pages/patients/DeletePatient\";\r\n// import TermsAndConditions from \"./components/layouts/TermsAndConditions\";\r\n// import Handover from \"./components/pages/handovers/Handover\";\r\n// import NoHandovers from \"./components/pages/NoHandovers\";\r\n// import AddVisit from \"./components/pages/visits/AddVisit\";\r\n// import VisitDetails from \"./components/pages/visits/VisitDetails\";\r\n// import ActivityDetails from \"./components/pages/visits/ActivityDetails\";\r\n// import Handovers from \"./components/pages/handovers/Handovers\";\r\n//this one uses your Okta details like domain and clientId so it can be used in the login widget\r\n// const oktaAuth = new OktaAuth(oktaAuthConfig);\r\n\r\nconst Login = React.lazy(() => import(\"./components/pages/Login\"));\r\nconst ForgotPassword = React.lazy(() =>\r\n\timport(\"./components/pages/ForgotPassword\")\r\n);\r\n\r\n// Patients\r\nconst Patients = React.lazy(() =>\r\n\timport(\"./components/pages/patients/Patients\")\r\n);\r\nconst PatientPage = React.lazy(() =>\r\n\timport(\"./components/pages/patients/PatientPage\")\r\n);\r\nconst CreatePatient = React.lazy(() =>\r\n\timport(\"./components/pages/patients/CreatePatient\")\r\n);\r\nconst UpdatePatient = React.lazy(() =>\r\n\timport(\"./components/pages/patients/UpdatePatient\")\r\n);\r\nconst AddMedication = React.lazy(() =>\r\n\timport(\"./components/pages/patients/datacategories/AddMedication\")\r\n);\r\nconst ReadMedications = React.lazy(() =>\r\n\timport(\"./components/pages/patients/datacategories/ReadMedications\")\r\n);\r\nconst UpdateMedication = React.lazy(() =>\r\n\timport(\"./components/pages/patients/datacategories/UpdateMedication\")\r\n);\r\n\r\n// Schedules\r\nconst Schedules = React.lazy(() =>\r\n\timport(\"./components/pages/schedules/Schedules\")\r\n);\r\n\r\nconst Tasks = React.lazy(() => import(\"./components/pages/tasks/Tasks\"));\r\n\r\nconst ProgressNotes = React.lazy(() =>\r\n\timport(\"./components/pages/progress_notes/ProgressNotes\")\r\n);\r\nconst Assessments = React.lazy(() =>\r\n\timport(\"./components/pages/assessments/Assessments\")\r\n);\r\nconst CarePlans = React.lazy(() =>\r\n\timport(\"./components/pages/careplans/CarePlans\")\r\n);\r\nconst Loved1s = React.lazy(() => import(\"./components/pages/loved1s/Loved1s\"));\r\n\r\nconst ResidentLoved1s = React.lazy(() =>\r\n\timport(\"./components/pages/loved1s/ResidentLoved1s\")\r\n);\r\n\r\nconst PracticeThread = React.lazy(() =>\r\n\timport(\"./components/pages/loved1s/PracticeThread\")\r\n);\r\n\r\nconst ThreadLists = React.lazy(() =>\r\n\timport(\"./components/pages/loved1s/ThreadLists\")\r\n);\r\n\r\nconst LovedOneThread = React.lazy(() =>\r\n\timport(\"./components/pages/loved1s/LovedOneThread\")\r\n);\r\n\r\nconst UpdateLovedOnes = React.lazy(() =>\r\n\timport(\"./components/pages/loved1s/UpdateLoved1s\")\r\n);\r\n\r\nconst AddProgressNotes = React.lazy(() =>\r\n\timport(\"./components/pages/progress_notes/AddProgressNotes\")\r\n);\r\nconst DeletePatient = React.lazy(() =>\r\n\timport(\"./components/pages/patients/DeletePatient\")\r\n);\r\nconst TermsAndConditions = React.lazy(() =>\r\n\timport(\"./components/layouts/TermsAndConditions\")\r\n);\r\nconst Handover = React.lazy(() =>\r\n\timport(\"./components/pages/handovers/Handover\")\r\n);\r\nconst NoHandovers = React.lazy(() => import(\"./components/pages/NoHandovers\"));\r\nconst AddVisit = React.lazy(() => import(\"./components/pages/visits/AddVisit\"));\r\nconst ViewVisits = React.lazy(() =>\r\n\timport(\"./components/pages/visits/ViewVisits\")\r\n);\r\nconst FacilityVisitDetails = React.lazy(() =>\r\n\timport(\"./components/pages/visits/FacilityVisitDetails\")\r\n);\r\nconst Treatments = React.lazy(() =>\r\n\timport(\"./components/pages/treatments/Treatments\")\r\n);\r\n\r\nconst VisitDetails = React.lazy(() =>\r\n\timport(\"./components/pages/visits/VisitDetails\")\r\n);\r\nconst ActivityDetails = React.lazy(() =>\r\n\timport(\"./components/pages/visits/ActivityDetails\")\r\n);\r\nconst Handovers = React.lazy(() =>\r\n\timport(\"./components/pages/handovers/Handovers\")\r\n);\r\n\r\n// imports for allergies page\r\nconst Allergies = React.lazy(() =>\r\n\timport(\"./components/pages/allergies/Allergies\")\r\n);\r\nconst Medications = React.lazy(() =>\r\n\timport(\"./components/pages/medications/Medications\")\r\n);\r\nconst AddConsent = React.lazy(() =>\r\n\timport(\"./components/pages/consents/AddConsent\")\r\n);\r\nconst ConsentLists = React.lazy(() =>\r\n import(\"./components/pages/consents/ConsentLists\")\r\n);\r\n\r\nconst RequestConsent = React.lazy(() =>\r\n\timport(\"./components/pages/consents/RequestConsent\")\r\n);\r\n\r\nconst ReleaseNotes = React.lazy(() =>\r\n\timport(\"./components/pages/release_notes/ReleaseNotes\")\r\n);\r\n\r\nconst Referrals = React.lazy(() =>\r\n\timport(\"./components/pages/referrals/Referral\")\r\n);\r\n\r\nconst Referrallists = React.lazy(() =>\r\n\timport(\"./components/pages/referrals/ReferralLists\")\r\n);\r\n\r\nconst GeneralCareHome = React.lazy(() =>\r\n\timport(\"./components/pages/carehome/GeneralCareHome\")\r\n);\r\n\r\nconst PodiatryProgressNotes = React.lazy(() =>\r\n\timport(\"./components/pages/facilities/podiatry/PodiatryProgressNotes\")\r\n);\r\n\r\nconst PodiatryAssessments = React.lazy(() =>\r\n\timport(\"./components/pages/facilities/podiatry/PodiatryAssessments\")\r\n);\r\n\r\nconst PodiatryCarePlans = React.lazy(() =>\r\n\timport(\"./components/pages/facilities/podiatry/PodiatryCarePlans\")\r\n);\r\n\r\nconst PhysioProgressNotes = React.lazy(() =>\r\n\timport(\"./components/pages/facilities/physiotherapy/PhysioProgressNotes\")\r\n);\r\n\r\nconst PhysioAssessments = React.lazy(() =>\r\n\timport(\"./components/pages/facilities/physiotherapy/PhysioAssessments\")\r\n);\r\n\r\nconst DieteticsProgressNotes = React.lazy(() =>\r\n\timport(\"./components/pages/facilities/dietetics/DieteticsProgressNotes\")\r\n);\r\n\r\nconst DieteticsAssessments = React.lazy(() =>\r\n\timport(\"./components/pages/facilities/dietetics/DieteticsAssessments\")\r\n);\r\n\r\nconst ChatPage = React.lazy(() => import(\"./components/pages/chats/Chat\"));\r\n\r\nconst AllSettings = React.lazy(() =>\r\n\timport(\"./components/pages/settings/AllSettings\")\r\n);\r\n\r\nconst Notifications = React.lazy(() =>\r\n\timport(\"./components/pages/notifications/Notifications\")\r\n);\r\n\r\nconst RegisterAccount = React.lazy(() =>\r\n import(\"./components/pages/accountManagement/RegisterAccount\")\r\n);\r\n\r\nconst AccountLists = React.lazy(() =>\r\n import(\"./components/pages/accountManagement/AccountLists\")\r\n);\r\n\r\nconst Validate = React.lazy(() => import(\"./Validate\"));\r\nconst ProcessBookingConfirmation = React.lazy(() => import(\"./components/booking/ProcessBooking\"));\r\nconst MultiProcessBookingConfirmation = React.lazy(() => import(\"./components/booking/MultiProcessBooking\"));\r\nconst SuccessBookingConfirmation = React.lazy(() => import(\"./components/booking/SuccessBooking\"));\r\nconst CancelBookingConfirmation = React.lazy(() => import(\"./components/booking/CancelBooking\"));\r\nconst SetResidentActive = React.lazy(() => import(\"./components/resident-status/SetActive\"));\r\nconst SetResidentInActive = React.lazy(() => import(\"./components/resident-status/SetInActive\"));\r\nconst MultiStatusManager = React.lazy(() => import(\"./components/resident-status/MultiStatusManager\"));\r\nconst LovedOnePayment = React.lazy(() => import(\"./components/booking/LovedOnePayment\"));\r\n\r\nfunction AppWithRouterAccess() {\r\n\tconst authState = JSON.parse(localStorage.getItem(\"auth0-token-storage\"));\r\n\tconst accessToken = authState?.access_token;\r\n\tlet history = useHistory();\r\n\r\n\tconst [searchTerm, setSearchTerm] = useState(\"\");\r\n\tconst [selectedOption, setSelectedOption] = useState([]);\r\n\tconst [isNavClosed, setIsNavClosed] = useState(false);\r\n\tconst [saved, setSaved] = useState(true);\r\n\tconst [confirmShowed, setConfirmShowed] = useState(false);\r\n\tconst [sort, setSort] = useState(\"\");\r\n\tconst location = useLocation();\r\n\tlet param =\r\n\t\tlocation?.search?.split(\"&\")?.filter((item) => item !== \"\") ?? null;\r\n\tconst [currentPage, setCurrentPage] = useState(\r\n\t\tparseInt(param[0]?.split(\"=\")[1] ?? \"0\") === 0\r\n\t\t\t? null\r\n\t\t\t: parseInt(param[0]?.split(\"=\")[1])\r\n\t);\r\n\tconst [navbarLoader, setNavBarLoader] = useState(false);\r\n\tconst [notificationData, setNotificationData] = useState([]);\r\n\tconst [notificationLoader, setNotificationLoader] = useState(false);\r\n\tconst [unreadCount, setUnreadCount] = useState(false);\r\n\r\n\t//this one forwards to login page when a secure route is accessed\r\n\t// const customAuthHandler = () => {\r\n\t// history.push(\"/login\");\r\n\t// };\r\n\r\n\t// const restoreOriginalUri = async (_oktaAuth, originalUri) => {\r\n\t// if (originalUri) {\r\n\t// history.replace(toRelativeUrl(originalUri, window.location.origin));\r\n\t// }\r\n\t// };\r\n\r\n const changeURLPatient = (patientId, page, tabOpen, facility, filter, date = null) => {\r\n if (confirmShowed) return;\r\n if (!saved) {\r\n setConfirmShowed(true);\r\n if (\r\n !window.confirm(\r\n \"Are you sure you want to leave this page? Unsaved changes will be discarded\"\r\n )\r\n ) {\r\n setConfirmShowed(false);\r\n return false;\r\n }\r\n setConfirmShowed(false);\r\n }\r\n setSaved(true);\r\n history.replace({\r\n search: `?page=${page ?? 1}&patientId=${patientId ?? \"null\"}&tab=${\r\n tabOpen ?? \"1\"\r\n }&facility=${\r\n facility && facility.length > 0 ? facility.join(\",\") : \"null\"\r\n }&filter=${filter ?? \"today\"}` + (date != null ? `&date=${date}` : \"\"),\r\n });\r\n\r\n\t\treturn true;\r\n\t};\r\n\r\n\t// for push notification\r\n\tconst getNotifications = async () => {\r\n\t\ttry {\r\n\t\t\tsetNotificationLoader(true);\r\n\t\t\tconst res = await api.getPushNotification(accessToken);\r\n\t\t\tconst notif = res.data.data.sort(\r\n\t\t\t\t(a, b) => new Date(b.createdAt) - new Date(a.createdAt)\r\n\t\t\t);\r\n\t\t\tsetNotificationData(notif);\r\n\t\t\tsetNotificationLoader(false);\r\n\t\t} catch (error) {\r\n\t\t\tconsole.log(error);\r\n\t\t\tsetNotificationLoader(false);\r\n\t\t}\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\tgetNotifications();\r\n\t}, [accessToken]);\r\n\r\n\t// useEffect(() => {\r\n\t// generateToken();\r\n\t// onMessage(messaging, (payload) => {\r\n\t// console.log(payload);\r\n\t// setNotificationData((prevArray) => [payload, ...prevArray]);\r\n\t// toast(payload.data.event + \" - \" + payload.data.notes);\r\n\t// });\r\n\t// }, []);\r\n\r\n\treturn (\r\n\t\t
    \r\n\t\t\t{/* */}\r\n\t\t\t{!window.location.pathname.includes(\"/consent\") &&\r\n\t\t\t\t!window.location.pathname.includes(\"/validate\") && (\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\r\n\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t\t{window.location.pathname.includes(\"/consent\") ||\r\n\t\t\t\t\twindow.location.pathname.includes(\r\n\t\t\t\t\t\t\"/validate\"\r\n\t\t\t\t\t) ? null : !isNavClosed ? (\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t{/* Note that there are Links inside the sidebar below and is covered by Browser/Router and Security above */}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t setIsNavClosed(false)}\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t)}\r\n\r\n \r\n {/* For switching between pages */}\r\n \r\n {/* Private Routes */}\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\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\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\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\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\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\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\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\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\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\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\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\n\r\n {/* Public Routes */}\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\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n\r\n\t\t\t