@openmrs/esm-primary-navigation-app 10.0.1-pre.5607 → 10.0.1-pre.5616

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/3077.js CHANGED
@@ -1,6 +1,6 @@
1
- "use strict";(globalThis.webpackChunk_openmrs_esm_primary_navigation_app=globalThis.webpackChunk_openmrs_esm_primary_navigation_app||[]).push([["3077"],{9668(e,t,n){let r,o;n.r(t),n.d(t,{GenderUnknownIcon:()=>sv,evaluateAsNumber:()=>rt,getImportMapOverrideMap:()=>t8,StockManagementPictogram:()=>di,ChemistryIcon:()=>sn,BabyIcon:()=>a1,DashboardExtension:()=>lv,openmrsComponentDecorator:()=>ii,tryRegisterExtension:()=>ab,pictogramIds:()=>uF,ActivityIcon:()=>aK,compile:()=>ri,removeRouteMapOverride:()=>nj,TableBatchActions:()=>aL,getAsyncLifecycle:()=>is,subscribeOpenmrsEvent:()=>nW,PasswordIcon:()=>sG,Assessment2Pictogram:()=>uV,CloseIcon:()=>ss,setupRouteMapOverrides:()=>nE,getWorkspaceGroupRegistration:()=>oj,registerWorkspace:()=>ob,useFeatureFlag:()=>iD,reset:()=>om,LabOrderIcon:()=>sP,VisitMode:()=>nH,useLocations:()=>i8,getLifecycle:()=>ia,formatDatetime:()=>l8,getVisitsForPatient:()=>nY,formatPartialDate:()=>l1,CustomOverflowMenu:()=>az,LocationIcon:()=>sO,GroupIcon:()=>sx,createUseStore:()=>oY,VisitStatus:()=>nG,getSessionLocation:()=>tD,getCurrentImportMap:()=>ns,usePatient:()=>an,useRenderableExtensions:()=>ao,getOpenedWindowIndexByWorkspace:()=>oI,setLeftNav:()=>of,clearHistory:()=>tw,clearConfigErrors:()=>eY,formatTime:()=>l5,isDevEnabled:()=>tH,closeWorkspaceGroup2:()=>mt,getCurrentRouteMap:()=>nv,ConfigurableLink:()=>oG,sessionStore:()=>tE,subscribeSnackbarShown:()=>h,getLoggedInUser:()=>tL,GenderMaleIcon:()=>sw,getExtensionSlotConfigFromStore:()=>er,evaluateAsNumberAsync:()=>rn,getImportMapDefaultMap:()=>t6,unregisterExtensionRendering:()=>rF,implementerToolsConfigStore:()=>e_,Type:()=>H,InPatientPictogram:()=>u2,cleanupObsoleteFeatureFlags:()=>rC,getAttachmentsUrl:()=>nO,showSnackbar:()=>dy,PatientBannerActionsMenu:()=>uT,PatientSearchPictogram:()=>u4,DocumentAttachmentIcon:()=>sd,Snackbar:()=>df,CardiologyPictogram:()=>uq,ImageMedicalIcon:()=>sj,ActionableNotificationComponent:()=>ue,DiagnosisTags:()=>cB,iconIds:()=>aq,PatientsPictogram:()=>u7,interpolateUrl:()=>tu,setupHistory:()=>tg,subscribeToastShown:()=>g,detachAll:()=>os,convertToLocaleCalendar:()=>l3,DocumentIcon:()=>su,configInternalStore:()=>Y,ActionMenuButton2:()=>m_,setupDynamicOfflineDataHandler:()=>mF,makeUrl:()=>tj,oneOf:()=>e5,selectPreferredName:()=>uk,launchWorkspaceGroup:()=>function e(t,n){let r=oj(t),{state:o,onWorkspaceGroupLaunch:i,workspaceGroupCleanup:a,workspaceToLaunch:s}=n,l=function(){return dD}();if(l.getState().openWorkspaces.length){let r=l.getState().workspaceGroup;r?dC(r?.name,()=>{e(t,n)}):dH(()=>{e(t,n)})}else l.setState(e=>({...e,workspaceGroup:{name:t,members:r.members,cleanup:a}})),dq(t,o),i?.(),s&&dI(s.name,s.additionalProps??{})},MobileCheckIcon:()=>sL,createErrorHandler:()=>y,parseDate:()=>lK,getAttachmentByUuid:()=>nP,LeftNavMenu:()=>cV,getExtensionRegistration:()=>or,ShoppingCartAddItemIcon:()=>l_,ReferralOrderIcon:()=>sX,ReportIcon:()=>sZ,dispatchToastShown:()=>m,getImportMapNextPageMap:()=>t5,registerExtension:()=>oo,setupOfflineSync:()=>mU,DownloadIcon:()=>sm,useConnectivity:()=>mJ,provide:()=>eP,ShoppingCartArrowDownIcon:()=>s8,featureFlagsStore:()=>rj,promptBeforeClosing:()=>dO,jsep:()=>nZ.A,GeriatricsPictogram:()=>u0,SearchIcon:()=>s1,reportError:()=>w,slugify:()=>no,isOmrsDateToday:()=>lV,getExtensionStore:()=>rH,BloodBankPictogram:()=>uJ,TriagePictogram:()=>ds,Workspace2:()=>md,refetchCurrentUser:()=>tT,CheckmarkOutlineIcon:()=>st,registerExtensionSlot:()=>od,AllergiesIcon:()=>lp,ArrowDownIcon:()=>aY,useOpenmrsInfinite:()=>iJ,getExtensionConfigFromExtensionSlotStore:()=>es,OpenmrsDatePicker:()=>cL,getExtensionConfigFromStore:()=>ea,getDynamicOfflineDataEntries:()=>mH,getLocaleDisplayName:()=>lW,messageOmrsServiceWorker:()=>mz,navigate:()=>tm,launchWorkspace2:()=>mn,getGroupByWindowName:()=>oE,CustomOverflowMenuItem:()=>aV,isUrl:()=>e6,CaretDownIcon:()=>a5,ArrowLeftIcon:()=>aZ,FacilityPictogram:()=>uQ,ViewOffIcon:()=>lu,updateInternalExtensionStore:()=>rM,dispatchActionableNotificationShown:()=>u,resetRouteMapOverrides:()=>nN,formatDurationBetween:()=>co,defaultVisitCustomRepresentation:()=>nz,getBreadcrumbsFor:()=>tr,useOpenmrsPagination:()=>iU,Pagination:()=>uw,CheckmarkFilledIcon:()=>se,clearCurrentUser:()=>tM,showModal:()=>c3,ChevronUpIcon:()=>sa,saveVisit:()=>nK,useAttachments:()=>ij,Pictogram:()=>dm,useExtensionSlot:()=>o6,ChevronDownIcon:()=>sr,OpenmrsDateRangePicker:()=>cD,deleteAttachmentPermanently:()=>n$,getVisitTypes:()=>nF,OverflowMenuHorizontalIcon:()=>sF,EventScheduleIcon:()=>sg,getSessionStore:()=>tR,ActionMenu:()=>d3,ProcedureOrderIcon:()=>sq,preloadImport:()=>na,registerWorkspaceWindows2:()=>oA,useOnVisible:()=>i4,setSessionLocation:()=>tB,userHasAccess:()=>tW,ChartAverageIcon:()=>a7,getFeatureFlag:()=>rE,UserAvatarIcon:()=>la,renderExtension:()=>oB,useFhirInfinite:()=>iZ,toVisitTypeObject:()=>nB,useSession:()=>ai,EmergencyDepartmentPictogram:()=>uZ,Notification:()=>c7,dispatchSnackbarShown:()=>d,navigateAndLaunchWorkspace:()=>dP,formatDate:()=>l2,workspace2StoreActions:()=>mi,SwitcherIcon:()=>s6,esmStyleGuideSchema:()=>aT,getImportMapDisabledOverrides:()=>t3,useAssignedExtensionIds:()=>ik,CaretRightIcon:()=>a3,evaluateAsType:()=>rr,PageHeader:()=>uh,TranslateIcon:()=>ln,setUserProperties:()=>tU,MovementIcon:()=>sU,renderInlineNotifications:()=>us,subscribePrecacheStaticDependencies:()=>mV,PaymentsDeskPictogram:()=>u9,usePrimaryIdentifierCode:()=>ar,useLayoutType:()=>i0,getCurrentUser:()=>tO,XrayPictogram:()=>dl,CaretUpIcon:()=>a4,renderActionableNotifications:()=>uc,OpenmrsAppContext:()=>iw,setupModals:()=>c8,getDefaultsFromConfigSchema:()=>function e(t){let n={};for(let r of Object.keys(t))if(mT(t[r])&&t[r].hasOwnProperty("_default"))n[r]=t[r]._default;else{if(r.startsWith("_"))continue;mT(t[r])?n[r]=e(t[r]):n[r]=t[r]}return n},subscribeTo:()=>T,recordConfigDerivationError:()=>eg,useAbortController:()=>iv,Extension:()=>oz,getFhirServerPaginationHandlers:()=>iz,useConnectedExtensions:()=>iP,registerApp:()=>ak,HospitalBedIcon:()=>sS,useExtensionInternalStore:()=>iM,configExtensionStore:()=>Q,getSynchronizationItems:()=>mG,getExtensionSlotsConfigStore:()=>et,registerExtensionRendering:()=>rU,RenderIfValueIsTruthy:()=>iy,registerFeatureFlag:()=>rN,useFhirFetchAll:()=>iY,restBaseUrl:()=>tx,CalendarHeatMapIcon:()=>a2,getWorkspaceRegistration:()=>oS,isImportMapOverrideDisabled:()=>t4,resetConfigSystem:()=>eZ,getExtensionInternalStore:()=>r$,registerGlobalStore:()=>R,evaluateAsBoolean:()=>n9,PatientBannerPatientInfo:()=>uR,addRouteMapOverride:()=>nS,getDefaultCalendar:()=>lQ,SettingsIcon:()=>s2,DrugOrderIcon:()=>sp,ProgramsIcon:()=>sK,useAssignedExtensions:()=>o2,CloseFilledIcon:()=>sl,canAccessStorage:()=>m$,registerDefaultCalendar:()=>lZ,TreeViewAltIcon:()=>lo,OverflowMenuVerticalIcon:()=>sH,clearConfigDerivationError:()=>eh,getConfigStore:()=>ee,registerWorkspaceGroup:()=>ox,InformationSquareIcon:()=>sE,EmptyCard:()=>cH,ChevronLeftIcon:()=>so,RadiologyIcon:()=>lh,useCandidateExtensions:()=>iS,renderToasts:()=>dS,isDesktop:()=>i1,integrateBreakpoints:()=>aE,RegistrationPictogram:()=>dn,CardHeader:()=>aO,getExtensionRegistrationFrom:()=>on,InformationIcon:()=>sN,TrashCanIcon:()=>lr,useShallowStableValue:()=>oV,useOpenmrsSWR:()=>i7,Assessment1Pictogram:()=>uz,finishRegisteringAllApps:()=>aS,importDynamic:()=>ni,useFhirPagination:()=>iG,useVisitContextStore:()=>ap,ArrowUpIcon:()=>a0,showActionableNotification:()=>uu,useForceUpdate:()=>iB,useVisit:()=>af,updateWorkspaceWindowState:()=>dU,PatientBannerPatientIdentifiers:()=>uI,WorkspaceNotification:()=>d6,TransferPictogram:()=>da,usePagination:()=>i9,Breakpoint:()=>aj,PatientBannerToggleContactDetailsButton:()=>mw,CloseOutlineIcon:()=>sc,ObstetricsPictogram:()=>u3,parseDateInput:()=>l7,getConfig:()=>eO,attach:()=>oi,getLocale:()=>lL,ActionMenuButton:()=>dQ,isUrlWithTemplateParameters:()=>e2,useEmrConfiguration:()=>i$,useLeftNav:()=>i2,ToolsIcon:()=>lt,ErrorState:()=>cG,detach:()=>oa,setCurrentVisit:()=>nq,ConditionsIcon:()=>lg,SaveIcon:()=>s0,useWorkspaces:()=>dG,resetWorkspaceStore:()=>dJ,useConfig:()=>iI,validator:()=>G,CalendarIcon:()=>a6,getHistory:()=>th,StickyNoteAddIcon:()=>s3,useWorkspace2Store:()=>ma,getPatientName:()=>uy,getVisitStore:()=>nJ,getCoreTranslation:()=>tc,registerModuleWithConfigSystem:()=>eN,registerModuleLoad:()=>eC,getBreadcrumbs:()=>te,extractVariableNames:()=>rx,translateFrom:()=>tl,useStoreWithActions:()=>oX,EditIcon:()=>sf,getCandidateExtensions:()=>ou,shallowEqual:()=>b,subscribeNotificationShown:()=>p,MaximizeIcon:()=>s$,promptForClosingWorkspaces:()=>mo,WarningIcon:()=>lm,closeAllWorkspaces:()=>dH,fhirBaseUrl:()=>tk,matchLocale:()=>mR,registerBreadcrumb:()=>e7,usePatientPhoto:()=>uL,EventsIcon:()=>sh,createGlobalStore:()=>O,workspaceStore:()=>dD,subscribeToFeatureFlag:()=>rI,useExtensionStore:()=>iL,closeWorkspace:()=>dM,createAttachment:()=>nR,useLeftNavStore:()=>i6,TableIcon:()=>s9,Icon:()=>ly,InformationFilledIcon:()=>sC,getCurrentPageMap:()=>t2,LaboratoryPictogram:()=>u6,temporaryConfigStore:()=>Z,getPromptBeforeClosingFcn:()=>dR,toDateObjectStrict:()=>lJ,defineConfigSchema:()=>ej,filterBreadcrumbs:()=>tn,invalidateImplementerToolsConfig:()=>ep,PatientBannerContactDetails:()=>mS,getAssignedExtensions:()=>oc,PatientPhoto:()=>uU,MaterialOrderIcon:()=>sR,MicroscopeIcon:()=>sW,visitTypesUrl:()=>nU,scheduleRecomputation:()=>rq,PharmacyPictogram:()=>de,AttachmentIcon:()=>lf,MoneyIcon:()=>sD,getAttachments:()=>nA,getWorkspaceGroupStore:()=>dq,PageHeaderContent:()=>u_,MedicationIcon:()=>sT,PrinterIcon:()=>sJ,PatientListsPictogram:()=>du,useAppContext:()=>ib,isOpenmrsRoutes:()=>nu,AppointmentsAltPictogram:()=>uG,GenericOrderTypeIcon:()=>sb,batchExtensionUpdates:()=>rV,useExtensionSlotStore:()=>o0,ViewIcon:()=>ld,formattedName:()=>ux,sessionEndpoint:()=>tS,duration:()=>cn,resetImportMapOverrides:()=>ne,TableOfContentsIcon:()=>s7,CaretLeftIcon:()=>a8,getTranslationOverrides:()=>eR,isVersionSatisfied:()=>mL,EmptyCardIllustration:()=>cF,PenIcon:()=>sV,getWorkspaceStore:()=>dB,validators:()=>e8,setupImportMapOverrides:()=>nr,showToast:()=>dj,useDefineAppContext:()=>i_,getGlobalStore:()=>$,useOnClickOutside:()=>i3,getWindowByWorkspaceName:()=>oC,ArrowRightIcon:()=>aQ,loadLifeCycles:()=>aw,registerBreadcrumbs:()=>e9,MotherIcon:()=>sB,fetchCurrentPatient:()=>nT,Toast:()=>dv,MessageQueueIcon:()=>sM,TwoFactorAuthenticationIcon:()=>li,Pharmacy2Pictogram:()=>dt,goBackInHistory:()=>t_,GroupAccessIcon:()=>sk,getExtensionRenderingsStore:()=>rT,setImplementerToolsConfigRecomputer:()=>em,getAsyncExtensionLifecycle:()=>ic,setupApiModule:()=>tz,renderLoadingSpinner:()=>mj,WorkspaceContainer:()=>d4,showNotification:()=>ul,getModalRegistration:()=>ow,ListCheckedIcon:()=>sA,ResponsiveWrapper:()=>dp,GynaecologyPictogram:()=>u1,ShoppingCartIcon:()=>s5,getRouteMapNextPageMap:()=>nx,MetadataExportPictogram:()=>u8,updateVisit:()=>nX,backendDependencies:()=>tG,MaybePictogram:()=>dd,createParcelMounter:()=>oL,openmrsFetch:()=>tN,useStore:()=>oK,isOpenmrsAppRoutes:()=>nc,HomePictogram:()=>dc,DentistryPictogram:()=>uX,ServiceQueuesPictogram:()=>dr,toLanguageTag:()=>lM,launchWorkspace:()=>dI,setFeatureFlag:()=>rP,DigitalTrustPictogram:()=>uY,NumericObservation:()=>uf,attachmentUrl:()=>nI,interpolateString:()=>td,inRange:()=>e1,useExtensionSlotMeta:()=>iW,AppointmentsPictogram:()=>uH,renderSnackbars:()=>dw,getRegisteredWorkspace2Names:()=>ml,toLocationObject:()=>nL,ChartLineIcon:()=>a9,UserHasAccess:()=>aa,evaluateAsBooleanAsync:()=>re,changeWorkspaceContext:()=>dW,createDashboard:()=>lb,getLocations:()=>nD,useExtensionContext:()=>iT,canCloseWorkspaceWithoutPrompting:()=>dN,getExtensionsConfigStore:()=>eo,getRouteMapDefaultMap:()=>nb,age:()=>uj,isOmrsDateStrict:()=>lz,registerWorkspaceGroups2:()=>oP,usePaginationInfo:()=>ae,evaluateAsync:()=>n7,useOpenmrsFetchAll:()=>iK,removeImportMapOverride:()=>t9,showWorkspacePrompts:()=>dz,useVisitTypes:()=>ah,ageAsDuration:()=>uS,getExtensionNameFromId:()=>ot,renderParcel:()=>oW,useWorkspace2Context:()=>ms,ResetIcon:()=>sQ,RenewIcon:()=>sY,subscribeActionableNotificationShown:()=>f,ErrorCard:()=>cz,GenderFemaleIcon:()=>s_,enableImportMapOverride:()=>nt,retry:()=>mD,ComponentContext:()=>oH,ExtensionSlot:()=>o8,unsetLeftNav:()=>og,addImportMapOverride:()=>t7,MaybeIcon:()=>lw,useCustomOverflowMenu:()=>aG,PedestrianFamilyIcon:()=>sz,cancelPrompt:()=>d$,CtScanPictogram:()=>uK,dispatchNotificationShown:()=>c,leftNavStore:()=>op,OpenmrsFetchError:()=>tC,UserFollowIcon:()=>ls,launchWorkspaceGroup2:()=>me,ChevronRightIcon:()=>si,UserXrayIcon:()=>ll,GenderOtherIcon:()=>sy,formatDuration:()=>l4,toOmrsIsoString:()=>lq,Labs2Pictogram:()=>u5,workspace2Store:()=>oN,setUserLanguage:()=>t$,useBodyScrollLock:()=>iN,getExtensionConfig:()=>ei,SyringeIcon:()=>s4,LocationPicker:()=>cJ,useDebounce:()=>iA,TimeIcon:()=>le,getExtensionSlotConfig:()=>en,AddIcon:()=>aX,getRouteMapOverrideMap:()=>nk,processConfig:()=>e$,InventoryManagementIcon:()=>sI,registerWorkspaces2:()=>oO,UserIcon:()=>lc,formatPatientName:()=>ub,fireOpenmrsEvent:()=>nM,registerModal:()=>o_,registerTranslationNamespace:()=>eE,displayName:()=>uv,evaluate:()=>n4,defineExtensionConfigSchema:()=>eI,renderWorkspaceWindowsAndMenu:()=>mA,getSyncLifecycle:()=>il,evaluateAsTypeAsync:()=>ro});let i="openmrs:notification-shown",a="openmrs:actionable-notification-shown",s="openmrs:toast-shown",l="openmrs:snack-bar-shown";function c(e){window.dispatchEvent(new CustomEvent(i,{detail:e}))}function u(e){window.dispatchEvent(new CustomEvent(a,{detail:e}))}function d(e){window.dispatchEvent(new CustomEvent(l,{detail:e}))}function m(e){window.dispatchEvent(new CustomEvent(s,{detail:e}))}function p(e){let t=t=>e(t.detail);return window.addEventListener(i,t),()=>window.removeEventListener(i,t)}function f(e){let t=t=>e(t.detail);return window.addEventListener(a,t),()=>window.removeEventListener(a,t)}function g(e){let t=t=>e(t.detail);return window.addEventListener(s,t),()=>window.removeEventListener(s,t)}function h(e){let t=t=>e(t.detail);return window.addEventListener(l,t),()=>window.removeEventListener(l,t)}function _(e,t){return e instanceof Error?e.message||t:"string"==typeof e&&e.trim().length>0?e:t}function w(e){let t=v(e);setTimeout(()=>{throw t})}function y(){let e=Error();return t=>{let n=v(t);n.stack+=`
1
+ "use strict";(globalThis.webpackChunk_openmrs_esm_primary_navigation_app=globalThis.webpackChunk_openmrs_esm_primary_navigation_app||[]).push([["3077"],{9668(e,t,n){let r,o;n.r(t),n.d(t,{GenderUnknownIcon:()=>sj,evaluateAsNumber:()=>ra,getImportMapOverrideMap:()=>ne,StockManagementPictogram:()=>du,ChemistryIcon:()=>ss,BabyIcon:()=>a8,DashboardExtension:()=>lj,openmrsComponentDecorator:()=>iu,tryRegisterExtension:()=>aN,pictogramIds:()=>uJ,ActivityIcon:()=>a0,compile:()=>ru,removeRouteMapOverride:()=>nA,TableBatchActions:()=>aH,getAsyncLifecycle:()=>im,subscribeOpenmrsEvent:()=>nF,PasswordIcon:()=>sK,Assessment2Pictogram:()=>uY,CloseIcon:()=>sm,setupRouteMapOverrides:()=>nT,getWorkspaceGroupRegistration:()=>oA,registerWorkspace:()=>oN,useFeatureFlag:()=>iG,reset:()=>o_,LabOrderIcon:()=>s$,VisitMode:()=>nq,useLocations:()=>ae,getLifecycle:()=>id,formatDatetime:()=>ce,getVisitsForPatient:()=>n2,formatPartialDate:()=>l8,CustomOverflowMenu:()=>aX,LocationIcon:()=>sW,GroupIcon:()=>sC,createUseStore:()=>o2,VisitStatus:()=>nK,getSessionLocation:()=>tD,getCurrentImportMap:()=>nm,usePatient:()=>as,useRenderableExtensions:()=>ac,getOpenedWindowIndexByWorkspace:()=>oR,setLeftNav:()=>oy,clearHistory:()=>tw,clearConfigErrors:()=>eY,formatTime:()=>l9,isDevEnabled:()=>tq,closeWorkspaceGroup2:()=>ma,getCurrentRouteMap:()=>nj,ConfigurableLink:()=>oK,sessionStore:()=>tE,setSessionLocale:()=>tU,subscribeSnackbarShown:()=>h,getLoggedInUser:()=>tL,GenderMaleIcon:()=>sk,getExtensionSlotConfigFromStore:()=>er,evaluateAsNumberAsync:()=>rs,getImportMapDefaultMap:()=>t7,unregisterExtensionRendering:()=>rJ,implementerToolsConfigStore:()=>e_,Type:()=>H,InPatientPictogram:()=>u4,cleanupObsoleteFeatureFlags:()=>rO,getAttachmentsUrl:()=>nW,showSnackbar:()=>dS,PatientBannerActionsMenu:()=>uB,PatientSearchPictogram:()=>dn,DocumentAttachmentIcon:()=>sh,Snackbar:()=>dy,CardiologyPictogram:()=>uQ,ImageMedicalIcon:()=>sA,ActionableNotificationComponent:()=>ui,DiagnosisTags:()=>cz,iconIds:()=>aQ,PatientsPictogram:()=>dr,interpolateUrl:()=>tu,setupHistory:()=>tg,subscribeToastShown:()=>g,detachAll:()=>om,convertToLocaleCalendar:()=>ct,DocumentIcon:()=>sg,configInternalStore:()=>Y,ActionMenuButton2:()=>mx,setupDynamicOfflineDataHandler:()=>mJ,makeUrl:()=>tj,oneOf:()=>e5,selectPreferredName:()=>uE,launchWorkspaceGroup:()=>function e(t,n){let r=oA(t),{state:o,onWorkspaceGroupLaunch:i,workspaceGroupCleanup:a,workspaceToLaunch:s}=n,l=function(){return dG}();if(l.getState().openWorkspaces.length){let r=l.getState().workspaceGroup;r?dO(r?.name,()=>{e(t,n)}):dq(()=>{e(t,n)})}else l.setState(e=>({...e,workspaceGroup:{name:t,members:r.members,cleanup:a}})),dQ(t,o),i?.(),s&&dR(s.name,s.additionalProps??{})},MobileCheckIcon:()=>sH,createErrorHandler:()=>y,parseDate:()=>l0,getAttachmentByUuid:()=>n$,LeftNavMenu:()=>cY,getExtensionRegistration:()=>ol,ShoppingCartAddItemIcon:()=>lx,ReferralOrderIcon:()=>s1,ReportIcon:()=>s6,dispatchToastShown:()=>m,getImportMapNextPageMap:()=>t9,registerExtension:()=>oc,setupOfflineSync:()=>mV,DownloadIcon:()=>s_,useConnectivity:()=>mZ,provide:()=>eA,ShoppingCartArrowDownIcon:()=>le,featureFlagsStore:()=>rA,promptBeforeClosing:()=>dW,jsep:()=>n6.A,GeriatricsPictogram:()=>u3,SearchIcon:()=>s8,reportError:()=>w,slugify:()=>nc,isOmrsDateToday:()=>lY,getExtensionStore:()=>rq,BloodBankPictogram:()=>uZ,TriagePictogram:()=>dm,Workspace2:()=>mh,refetchCurrentUser:()=>t$,CheckmarkOutlineIcon:()=>sa,registerExtensionSlot:()=>oh,AllergiesIcon:()=>lw,ArrowDownIcon:()=>a2,useOpenmrsInfinite:()=>iZ,getExtensionConfigFromExtensionSlotStore:()=>es,OpenmrsDatePicker:()=>cH,getExtensionConfigFromStore:()=>ea,getDynamicOfflineDataEntries:()=>mq,getLocaleDisplayName:()=>lF,messageOmrsServiceWorker:()=>mX,navigate:()=>tm,launchWorkspace2:()=>ms,getGroupByWindowName:()=>oT,CustomOverflowMenuItem:()=>aY,isUrl:()=>e6,CaretDownIcon:()=>a9,ArrowLeftIcon:()=>a6,FacilityPictogram:()=>u5,ViewOffIcon:()=>lg,updateInternalExtensionStore:()=>rU,dispatchActionableNotificationShown:()=>u,resetRouteMapOverrides:()=>nP,formatDurationBetween:()=>cc,defaultVisitCustomRepresentation:()=>nX,getBreadcrumbsFor:()=>tr,useOpenmrsPagination:()=>iV,Pagination:()=>uk,CheckmarkFilledIcon:()=>si,clearCurrentUser:()=>tM,showModal:()=>ut,ChevronUpIcon:()=>sd,saveVisit:()=>n0,useAttachments:()=>iA,Pictogram:()=>d_,useExtensionSlot:()=>o7,ChevronDownIcon:()=>sl,OpenmrsDateRangePicker:()=>cG,deleteAttachmentPermanently:()=>nD,getVisitTypes:()=>nJ,OverflowMenuHorizontalIcon:()=>sJ,EventScheduleIcon:()=>sv,getSessionStore:()=>tT,ActionMenu:()=>mt,ProcedureOrderIcon:()=>sQ,preloadImport:()=>nd,registerWorkspaceWindows2:()=>oM,useOnVisible:()=>an,setSessionLocation:()=>tB,userHasAccess:()=>tW,ChartAverageIcon:()=>sr,getFeatureFlag:()=>rT,UserAvatarIcon:()=>ld,renderExtension:()=>oz,useFhirInfinite:()=>i6,toVisitTypeObject:()=>nz,useSession:()=>au,EmergencyDepartmentPictogram:()=>u6,Notification:()=>ur,dispatchSnackbarShown:()=>d,navigateAndLaunchWorkspace:()=>d$,formatDate:()=>l4,workspace2StoreActions:()=>mu,SwitcherIcon:()=>s7,esmStyleGuideSchema:()=>aB,getImportMapDisabledOverrides:()=>nt,useAssignedExtensionIds:()=>iE,CaretRightIcon:()=>st,evaluateAsType:()=>rl,PageHeader:()=>ub,TranslateIcon:()=>ls,setUserProperties:()=>tF,MovementIcon:()=>sV,renderInlineNotifications:()=>um,subscribePrecacheStaticDependencies:()=>mY,PaymentsDeskPictogram:()=>di,usePrimaryIdentifierCode:()=>al,useLayoutType:()=>i3,getCurrentUser:()=>tO,XrayPictogram:()=>dp,CaretUpIcon:()=>sn,renderActionableNotifications:()=>uf,OpenmrsAppContext:()=>ik,setupModals:()=>ue,getDefaultsFromConfigSchema:()=>function e(t){let n={};for(let r of Object.keys(t))if(mB(t[r])&&t[r].hasOwnProperty("_default"))n[r]=t[r]._default;else{if(r.startsWith("_"))continue;mB(t[r])?n[r]=e(t[r]):n[r]=t[r]}return n},subscribeTo:()=>$,recordConfigDerivationError:()=>eg,useAbortController:()=>ij,Extension:()=>oX,getFhirServerPaginationHandlers:()=>iX,useConnectedExtensions:()=>i$,registerApp:()=>aE,HospitalBedIcon:()=>sI,useExtensionInternalStore:()=>iU,configExtensionStore:()=>Q,getSynchronizationItems:()=>mK,getExtensionSlotsConfigStore:()=>et,registerExtensionRendering:()=>rV,RenderIfValueIsTruthy:()=>iS,registerFeatureFlag:()=>rP,useFhirFetchAll:()=>i2,restBaseUrl:()=>tx,CalendarHeatMapIcon:()=>a4,getWorkspaceRegistration:()=>oI,isImportMapOverrideDisabled:()=>nn,resetConfigSystem:()=>eZ,getExtensionInternalStore:()=>rD,registerGlobalStore:()=>T,evaluateAsBoolean:()=>ro,PatientBannerPatientInfo:()=>uL,addRouteMapOverride:()=>nI,getDefaultCalendar:()=>l5,SettingsIcon:()=>s4,DrugOrderIcon:()=>sw,ProgramsIcon:()=>s0,useAssignedExtensions:()=>o4,CloseFilledIcon:()=>sp,canAccessStorage:()=>mD,registerDefaultCalendar:()=>l6,TreeViewAltIcon:()=>lc,OverflowMenuVerticalIcon:()=>sq,clearConfigDerivationError:()=>eh,getConfigStore:()=>ee,registerWorkspaceGroup:()=>oC,InformationSquareIcon:()=>sT,EmptyCard:()=>cq,ChevronLeftIcon:()=>sc,RadiologyIcon:()=>lb,useCandidateExtensions:()=>iI,renderToasts:()=>dI,isDesktop:()=>i8,integrateBreakpoints:()=>aT,RegistrationPictogram:()=>dl,CardHeader:()=>aW,getExtensionRegistrationFrom:()=>os,InformationIcon:()=>sP,TrashCanIcon:()=>ll,useShallowStableValue:()=>oY,useOpenmrsSWR:()=>ar,Assessment1Pictogram:()=>uX,finishRegisteringAllApps:()=>aI,importDynamic:()=>nu,useFhirPagination:()=>iK,useVisitContextStore:()=>aw,ArrowUpIcon:()=>a3,showActionableNotification:()=>ug,useForceUpdate:()=>iz,useVisit:()=>ay,updateWorkspaceWindowState:()=>dV,PatientBannerPatientIdentifiers:()=>uR,WorkspaceNotification:()=>d7,TransferPictogram:()=>dd,usePagination:()=>ao,Breakpoint:()=>aA,PatientBannerToggleContactDetailsButton:()=>mk,CloseOutlineIcon:()=>sf,ObstetricsPictogram:()=>dt,parseDateInput:()=>cr,getConfig:()=>eO,attach:()=>ou,getLocale:()=>lH,ActionMenuButton:()=>d5,isUrlWithTemplateParameters:()=>e2,useEmrConfiguration:()=>iD,useLeftNav:()=>i4,ToolsIcon:()=>la,ErrorState:()=>cK,detach:()=>od,setCurrentVisit:()=>nQ,ConditionsIcon:()=>lv,SaveIcon:()=>s3,useWorkspaces:()=>dK,resetWorkspaceStore:()=>dZ,useConfig:()=>iR,validator:()=>G,CalendarIcon:()=>a7,getHistory:()=>th,StickyNoteAddIcon:()=>lt,useWorkspace2Store:()=>md,getPatientName:()=>uS,getVisitStore:()=>nZ,getCoreTranslation:()=>tc,registerModuleWithConfigSystem:()=>eN,registerModuleLoad:()=>eC,getBreadcrumbs:()=>te,extractVariableNames:()=>rC,translateFrom:()=>tl,useStoreWithActions:()=>o1,EditIcon:()=>sy,getCandidateExtensions:()=>og,shallowEqual:()=>b,subscribeNotificationShown:()=>p,MaximizeIcon:()=>sD,promptForClosingWorkspaces:()=>mc,WarningIcon:()=>l_,closeAllWorkspaces:()=>dq,fhirBaseUrl:()=>tk,matchLocale:()=>mL,registerBreadcrumb:()=>e7,usePatientPhoto:()=>uH,EventsIcon:()=>sb,createGlobalStore:()=>O,workspaceStore:()=>dG,subscribeToFeatureFlag:()=>rR,useExtensionStore:()=>iH,closeWorkspace:()=>dU,createAttachment:()=>nL,useLeftNavStore:()=>i7,TableIcon:()=>lo,Icon:()=>lS,InformationFilledIcon:()=>sO,getCurrentPageMap:()=>t4,LaboratoryPictogram:()=>u7,temporaryConfigStore:()=>Z,getPromptBeforeClosingFcn:()=>dL,toDateObjectStrict:()=>lZ,defineConfigSchema:()=>ej,filterBreadcrumbs:()=>tn,invalidateImplementerToolsConfig:()=>ep,PatientBannerContactDetails:()=>mI,getAssignedExtensions:()=>of,PatientPhoto:()=>uV,MaterialOrderIcon:()=>sL,MicroscopeIcon:()=>sF,visitTypesUrl:()=>nV,scheduleRecomputation:()=>rQ,PharmacyPictogram:()=>da,AttachmentIcon:()=>ly,MoneyIcon:()=>sG,getAttachments:()=>nM,getWorkspaceGroupStore:()=>dQ,PageHeaderContent:()=>ux,MedicationIcon:()=>sB,PrinterIcon:()=>sZ,PatientListsPictogram:()=>dg,useAppContext:()=>iN,isOpenmrsRoutes:()=>ng,AppointmentsAltPictogram:()=>uK,GenericOrderTypeIcon:()=>sN,batchExtensionUpdates:()=>rY,useExtensionSlotStore:()=>o3,ViewIcon:()=>lh,formattedName:()=>uC,sessionEndpoint:()=>tS,duration:()=>cs,resetImportMapOverrides:()=>ni,TableOfContentsIcon:()=>lr,CaretLeftIcon:()=>se,getTranslationOverrides:()=>eT,isVersionSatisfied:()=>mH,EmptyCardIllustration:()=>cJ,PenIcon:()=>sY,getWorkspaceStore:()=>dz,validators:()=>e3,setupImportMapOverrides:()=>nl,showToast:()=>dA,useDefineAppContext:()=>ix,verifyTotpCode:()=>tH,getGlobalStore:()=>R,useOnClickOutside:()=>at,getWindowByWorkspaceName:()=>oO,ArrowRightIcon:()=>a5,loadLifeCycles:()=>ak,registerBreadcrumbs:()=>e9,MotherIcon:()=>sz,fetchCurrentPatient:()=>nB,Toast:()=>dj,MessageQueueIcon:()=>sU,TwoFactorAuthenticationIcon:()=>lu,Pharmacy2Pictogram:()=>ds,goBackInHistory:()=>t_,GroupAccessIcon:()=>sE,getExtensionRenderingsStore:()=>rB,setImplementerToolsConfigRecomputer:()=>em,getAsyncExtensionLifecycle:()=>ig,setupApiModule:()=>tX,renderLoadingSpinner:()=>mA,WorkspaceContainer:()=>mn,showNotification:()=>up,getModalRegistration:()=>ok,ListCheckedIcon:()=>sM,ResponsiveWrapper:()=>dw,GynaecologyPictogram:()=>u8,ShoppingCartIcon:()=>s9,getRouteMapNextPageMap:()=>nC,MetadataExportPictogram:()=>de,updateVisit:()=>n1,backendDependencies:()=>tK,MaybePictogram:()=>dh,createParcelMounter:()=>oH,openmrsFetch:()=>tN,useStore:()=>o0,isOpenmrsAppRoutes:()=>nf,HomePictogram:()=>df,DentistryPictogram:()=>u1,ServiceQueuesPictogram:()=>dc,toLanguageTag:()=>lU,launchWorkspace:()=>dR,setFeatureFlag:()=>r$,DigitalTrustPictogram:()=>u2,NumericObservation:()=>uy,attachmentUrl:()=>nR,interpolateString:()=>td,inRange:()=>e1,useExtensionSlotMeta:()=>iF,AppointmentsPictogram:()=>uq,renderSnackbars:()=>dk,getRegisteredWorkspace2Names:()=>mp,logout:()=>tG,toLocationObject:()=>nH,ChartLineIcon:()=>so,UserHasAccess:()=>ad,evaluateAsBooleanAsync:()=>ri,changeWorkspaceContext:()=>dF,createDashboard:()=>lN,getLocations:()=>nG,useExtensionContext:()=>iB,canCloseWorkspaceWithoutPrompting:()=>dP,getExtensionsConfigStore:()=>eo,getRouteMapDefaultMap:()=>nN,age:()=>uA,isOmrsDateStrict:()=>lX,registerWorkspaceGroups2:()=>o$,usePaginationInfo:()=>ai,evaluateAsync:()=>rr,useOpenmrsFetchAll:()=>i0,removeImportMapOverride:()=>no,showWorkspacePrompts:()=>dX,useVisitTypes:()=>ab,ageAsDuration:()=>uI,getExtensionNameFromId:()=>oa,renderParcel:()=>oF,useWorkspace2Context:()=>mm,ResetIcon:()=>s5,RenewIcon:()=>s2,subscribeActionableNotificationShown:()=>f,ErrorCard:()=>cX,GenderFemaleIcon:()=>sx,enableImportMapOverride:()=>na,retry:()=>mG,ComponentContext:()=>oq,ExtensionSlot:()=>ie,unsetLeftNav:()=>ov,addImportMapOverride:()=>nr,MaybeIcon:()=>lk,useCustomOverflowMenu:()=>aK,PedestrianFamilyIcon:()=>sX,cancelPrompt:()=>dD,CtScanPictogram:()=>u0,dispatchNotificationShown:()=>c,leftNavStore:()=>ow,OpenmrsFetchError:()=>tC,UserFollowIcon:()=>lm,launchWorkspaceGroup2:()=>mi,ChevronRightIcon:()=>su,UserXrayIcon:()=>lp,GenderOtherIcon:()=>sS,formatDuration:()=>cn,toOmrsIsoString:()=>lQ,Labs2Pictogram:()=>u9,workspace2Store:()=>oP,setUserLanguage:()=>tR,useBodyScrollLock:()=>iP,getExtensionConfig:()=>ei,SyringeIcon:()=>ln,LocationPicker:()=>cZ,useDebounce:()=>iM,TimeIcon:()=>li,getExtensionSlotConfig:()=>en,AddIcon:()=>a1,getRouteMapOverrideMap:()=>nE,processConfig:()=>eR,InventoryManagementIcon:()=>sR,registerWorkspaces2:()=>oW,UserIcon:()=>lf,formatPatientName:()=>uN,fireOpenmrsEvent:()=>nU,registerModal:()=>ox,registerTranslationNamespace:()=>eE,displayName:()=>uj,evaluate:()=>rn,defineExtensionConfigSchema:()=>eI,renderWorkspaceWindowsAndMenu:()=>mM,getSyncLifecycle:()=>ip,evaluateAsTypeAsync:()=>rc});let i="openmrs:notification-shown",a="openmrs:actionable-notification-shown",s="openmrs:toast-shown",l="openmrs:snack-bar-shown";function c(e){window.dispatchEvent(new CustomEvent(i,{detail:e}))}function u(e){window.dispatchEvent(new CustomEvent(a,{detail:e}))}function d(e){window.dispatchEvent(new CustomEvent(l,{detail:e}))}function m(e){window.dispatchEvent(new CustomEvent(s,{detail:e}))}function p(e){let t=t=>e(t.detail);return window.addEventListener(i,t),()=>window.removeEventListener(i,t)}function f(e){let t=t=>e(t.detail);return window.addEventListener(a,t),()=>window.removeEventListener(a,t)}function g(e){let t=t=>e(t.detail);return window.addEventListener(s,t),()=>window.removeEventListener(s,t)}function h(e){let t=t=>e(t.detail);return window.addEventListener(l,t),()=>window.removeEventListener(l,t)}function _(e,t){return e instanceof Error?e.message||t:"string"==typeof e&&e.trim().length>0?e:t}function w(e){let t=v(e);setTimeout(()=>{throw t})}function y(){let e=Error();return t=>{let n=v(t);n.stack+=`
2
2
  Async stacktrace:
3
- ${e.stack}`,w(t)}}function v(e){let t;if(e instanceof Error)return e;if(null===e)return Error("'null' was thrown as an error");if("object"==typeof e){try{t=`Object thrown as error: ${JSON.stringify(e)}`}catch(n){t=`Object thrown as error with the following properties: ${Object.keys(e)}`}return Error(t)}if(void 0===e)return Error("'undefined' was thrown as an error");return Error(e.toString())}function b(e,t){if(e===t||Object.is(e,t))return!0;if(Array.isArray(e)){if(!Array.isArray(t)||e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}if(Array.isArray(t)||"object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;let n=Object.getOwnPropertyNames(e),r=Object.getOwnPropertyNames(t);return n.length===r.length&&n.every(n=>e[n]===t[n])}window.onerror=function(e,t,n,r,o){return console.error("Unexpected error: ",o??e),m({description:_(o??e,"Oops! An unexpected error occurred."),kind:"error",title:"Error"}),!1},window.onunhandledrejection=function(e){console.error("Unhandled rejection: ",e.reason),m({description:_(e.reason,"Oops! An unhandled promise rejection occurred."),kind:"error",title:"Error"})};var x,k,S,j=n(1978),N=n(9167);function C(){try{return"u">typeof process&&("true"===process.env.VITEST||void 0!==process.env.JEST_WORKER_ID)||"u">typeof globalThis&&("__vitest_worker__"in globalThis||"__jest__"in globalThis)}catch{return!1}}let E={},I=Symbol.for("openmrs.esm-state.instanceCount"),P=globalThis,A=(P[I]??0)+1;function O(e,t,n="none"){let r=E[e];if(r)return r.active?C()||console.error(`Attempted to override the existing store ${e}. Make sure that stores are only created once.`):r.value.setState(t,!0),r.active=!0,r.value;{let r=M(e,t,n);return E[e]={value:r,active:!0},r}}function R(e,t){let n=E[e];return n?(n.active?C()||console.error(`Attempted to override the existing store ${e}. Make sure that stores are only created once.`):n.value=t,n.active=!0,n.value):(E[e]={value:t,active:!0},t)}function $(e,t,n="none"){let r=E[e];if(!r){let r=M(e,t??{},n);return E[e]={value:r,active:!1},r}return r.value}function T(...e){let[t,n,r]=e,o=void 0===r?n:r,i=void 0===r?e=>e:n,a=i(t.getState());return o(a),t.subscribe(e=>{let t=i(e);b(a,t)||(a=t,o(t))})}function M(e,t,n){return"sessionStorage"===n?(0,N.y)()((0,j.Zr)(()=>t,{name:e,storage:(0,j.KU)(()=>sessionStorage)})):(0,N.y)()(()=>t)}P[I]=A,A>1&&!C()&&console.error(`Detected ${A} copies of @openmrs/esm-framework running on this page. Each copy keeps its own store registry, so stores, configuration and extension state are not shared between them. This usually means a frontend module loaded its own bundled framework instead of the one the app shell provides.`),globalThis.setTimeout?.(()=>{"u">typeof window&&"development"===window.spaEnv&&(window.stores=E)},1e3);var W=n(1156),L=n(3591),D=n(4888),B=n(9352),U=n(7772),F=n(8395),H=((x={}).Array="Array",x.Boolean="Boolean",x.ConceptUuid="ConceptUuid",x.Number="Number",x.Object="Object",x.String="String",x.UUID="UUID",x.PersonAttributeTypeUuid="PersonAttributeTypeUuid",x.PatientIdentifierTypeUuid="PatientIdentifierTypeUuid",x);function G(e,t){return n=>{if(!e(n))if("function"==typeof t)return t(n);else return t}}let z=G(e=>Array.isArray(e),"must be an array"),V=G(e=>"boolean"==typeof e,"must be a boolean"),J=G(e=>"number"==typeof e,"must be a number"),q=G(e=>"string"==typeof e,"must be a string"),K=G(e=>"object"==typeof e&&!Array.isArray(e)&&null!==e,"must be an object (not an array or null)"),X=G(e=>/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(e)||/^[0-9a-f]{36}$/i.test(e),"must be a valid UUID or a 36-character hexadecimal string"),Y=O("config-internal",{providedConfigs:[],schemas:{},moduleLoaded:{}}),Z=O("temporary-config",{config:function(){try{return JSON.parse(localStorage.getItem("openmrs:temporaryConfig")||"{}")}catch(e){return{}}}()});Z.subscribe(e=>{var t=e.config;try{localStorage.setItem("openmrs:temporaryConfig",JSON.stringify(t))}catch(e){}});let Q=O("config-store-of-extension-state",{mountedExtensions:[]});function ee(e){return $(`config-module-${e}`,{config:null,loaded:!1,translationOverridesLoaded:!1})}function et(){return $("config-extension-slots",{slots:{}})}function en(e){return er(et().getState(),e)}function er(e,t){return e.slots[t]??{loaded:!1,config:{}}}function eo(){return $("config-extensions",{configs:{}})}function ei(e,t){if("string"!=typeof e||"string"!=typeof t||"__proto__"===e||"__proto__"===t||"constructor"===e||"constructor"===t||"prototype"===e||"prototype"===t)throw Error("Attempted to call `getExtensionConfig()` with invalid argument");let n=eo(),r=n=>n.configs[e]?.[t];return{getInitialState:()=>r(n.getInitialState()),getState:()=>r(n.getState())??{loaded:!1,config:null},subscribe:e=>n.subscribe((t,n)=>{let o=r(t),i=r(n);b(o,i)||e(o,i)})}}function ea(e,t,n){return e.configs[t]?.[n]??{loaded:!1,config:null}}function es(e,t,n){return e.configure?.[n]??null}let el=(0,N.y)()(()=>({config:{}})),ec=0,eu=!0,ed=!1;function em(e){r=e}function ep(){eu=!0,ec>0&&ef()}function ef(){if(eu&&r&&!ed){ed=!0,eu=!1;try{r()}catch(e){eu=!0,eg(e),console.error("Failed to derive the implementer tools config",e)}finally{ed=!1}}}function eg(e){el.setState({derivationError:e instanceof Error?e.message:String(e)})}function eh(){el.getState().derivationError&&el.setState({derivationError:void 0})}let e_=R("config-implementer-tools",{...el,getState:()=>(0===ec&&ef(),el.getState()),setState:(...e)=>(eu=!1,el.setState(...e)),subscribe(e){ec++,ef();let t=el.subscribe(e),n=!1;return()=>{!n&&(n=!0,ec--),t()}}});function ew(e,t){if(Array.isArray(t))return t}function ey(e,t){return(0,D.A)({},e,t,ew)}let ev=[];function eb(){let e=Y.getState(),t=Z.getState(),n=Q.getState();!function(e,t){for(let n of Object.keys(e.schemas)){let r,o=ee(n),i=e.schemas[n],a=!!e.moduleLoaded[n],s=eS.get(n);if(s&&s.schema===i&&s.moduleLoaded===a&&s.providedConfigs===e.providedConfigs&&s.temporaryConfig===t.config)r=s.state;else{let o=a?function(e,t,n){let r=t.schemas[e],o=eB(e,eL(t,n));eF(r,o,e);let i=eV(r,o);return eH(r,i,e),delete i.extensionSlots,i}(n,e,t):function(e,t,n){let r=eV(e0,eB(e,eL(t,n)));return eH(e0,r,e),delete r.extensionSlots,r}(n,e,t);r={translationOverridesLoaded:!0,loaded:a,config:o},eS.set(n,{schema:i,moduleLoaded:a,providedConfigs:e.providedConfigs,temporaryConfig:t.config,state:r})}let l=o.getState();l.loaded===r.loaded&&l.translationOverridesLoaded===r.translationOverridesLoaded&&(0,B.A)(l.config,r.config)||o.setState(r)}}(e,t);let r=function(e,t){let n=eU(eL(e,t)),r=Object.keys(n).reduce((e,t)=>(n[t]?.extensionSlots&&(e[t]=n[t]?.extensionSlots),e),{});var o=r;for(let[e,t]of Object.entries(o))for(let[n,r]of Object.entries(t))!function(e,t,n){let r=`${t}.extensionSlots.${n}`,o=`Extension slot config '${r}'`,i=Object.keys(e).filter(e=>!["add","remove","order","configure"].includes(e));i.length&&eX(r,o+`' contains invalid keys '${i.join("', '")}'`),!e.add||Array.isArray(e.add)&&e.add.every(e=>"string"==typeof e)||eX(r,o+".add' is invalid. Must be an array of strings (extension IDs)"),!e.remove||Array.isArray(e.remove)&&e.remove.every(e=>"string"==typeof e)||eX(r,o+".remove' is invalid. Must be an array of strings (extension IDs)"),!e.order||Array.isArray(e.order)&&e.order.every(e=>"string"==typeof e)||eX(r,o+".order' is invalid. Must be an array of strings (extension IDs)"),e.configure&&!eq(e.configure)&&eX(r,o+".configure' is invalid. Must be an object with extension IDs for keys")}(r,e,n);let i={},a={};for(let e of Object.values(r))for(let[t,n]of Object.entries(e))i[t]=n,n.configure&&(a[t]??(a[t]=[])).push(n.configure);for(let[e,t]of Object.entries(a)){let n=1===t.length?t[0]:eU(t);i[e].configure!==n&&(i[e]={...i[e],configure:n})}return i}(e,t);(function(e){let t=et(),n=t.getState().slots,r={},o=!1;for(let[t,i]of Object.entries(e)){let e=n[t];e?.loaded&&(0,B.A)(e.config,i)?r[t]=e:(r[t]={loaded:!0,config:i},o=!0)}(o||Object.keys(n).length!==Object.keys(r).length)&&t.setState({slots:r})})(r),function(e,t,n,r){let o=eo(),i=o.getState().configs,a={},s=!1,l=0;for(let o of t.mountedExtensions){let t=function(e,t,n,r,o,i,a){let s=function(e){let[t]=e.split("#");return t}(r),l=o.schemas[s],c=JSON.stringify([n,r,e,t]),u=eT.get(c);if(u&&u.extensionSchema===l&&u.extensionModuleSchema===o.schemas[t]&&u.providedConfigs===o.providedConfigs&&u.temporaryConfig===i.config)return u.config;let d=l?s:t,m=eL(o,i),p=a?.configure?.[r]??{},f=eB(e,m),g=f?.extensionSlots?.[n]?.configure?.[r]??{},h=eU([eB(d,m),p,g]),_=l??o.schemas[t];eF(_,h,d);let w=eV(_,h);return eH(_,w,d),delete w.extensionSlots,eT.set(c,{extensionSchema:l,extensionModuleSchema:o.schemas[t],providedConfigs:o.providedConfigs,temporaryConfig:i.config,config:w}),w}(o.slotModuleName,o.extensionModuleName,o.slotName,o.extensionId,e,n,r[o.slotName]),c=i[o.slotName]?.[o.extensionId],u=c?.loaded&&(0,B.A)(c.config,t)?c:{config:t,loaded:!0};u!==c&&(s=!0),a[o.slotName]||(a[o.slotName]={}),a[o.slotName][o.extensionId]=u,l++}for(let[e,t]of Object.entries(a)){let n=i[e];n&&Object.keys(n).length===Object.keys(t).length&&Object.entries(t).every(([e,t])=>n[e]===t)&&(a[e]=n)}s||(s=Object.keys(i).length!==Object.keys(a).length||Object.values(i).reduce((e,t)=>e+Object.keys(t).length,0)!==l),s&&o.setState({configs:a})}(e,n,t,r),ep()}function ex(){r=()=>{var e,t;let n,r;return e=Y.getState(),t=Z.getState(),n=e_.getState(),r={config:function(e,t){let n=function(e){let t={};for(let[n,r]of Object.entries(e)){let e=eW.get(n);if(e&&e.schema===r)t[n]=e.annotated;else{let e=function e(t){return t.hasOwnProperty("_default")?{...t,_value:t._default,_source:"default"}:eq(t)?Object.keys(t).reduce((n,r)=>(n[r]=e(t[r]),n),{}):{}}((0,F.A)(r));eW.set(n,{schema:r,annotated:e}),t[n]=e}}return t}(e.schemas),r=[...e.providedConfigs.map(e=>[e.config,e.source]),[t.config,"temporary config"]],o=new Set(Object.keys(n));for(let[e]of r)for(let t of Object.keys(e))o.add(t);let i={};for(let e of o){let t=n[e],o=r.map(([t])=>t[e]),a=r.map(([,e])=>e),s=eM.get(e);if(s&&s.annotatedSchema===t&&s.configSlices.length===o.length&&s.configSlices.every((e,t)=>e===o[t])&&s.sources.every((e,t)=>e===a[t])){i[e]=s.result;continue}let l=t??{};r.forEach(([,e],t)=>{let n=o[t];void 0!==n&&(l=ey(l,function e(t,n){return eq(t)?Object.keys(t).reduce((r,o)=>(r[o]=e(t[o],n),r),{}):{_value:t,_source:n}}(n,e)))}),eM.set(e,{annotatedSchema:t,configSlices:o,sources:a,result:l}),i[e]=l}return i}(e,t)},void((0,B.A)(n.config,r.config)||e_.setState(r))},eb(),ev.push(Y.subscribe(ek),Z.subscribe(ek),Q.subscribe(ek))}function ek(){eh();try{eb()}catch(e){eg(e),console.error("Failed to recompute the configuration",e)}}ex();let eS=new Map;function ej(e,t){eD(e,t);let n=ey(t,e0);Y.setState(t=>({...t,schemas:{...t.schemas,[e]:n},moduleLoaded:{...t.moduleLoaded,[e]:!0}}))}function eN(e){Y.setState(t=>({...t,schemas:{...t.schemas,[e]:e0}}))}function eC(e){Y.setState(t=>({...t,moduleLoaded:{...t.moduleLoaded,[e]:!0}}))}function eE(e){Y.setState(t=>({...t,schemas:{...t.schemas,[e]:eQ}}))}function eI(e,t){eD(e,t);let n=ey(t,e0);Y.getState().schemas[e]&&console.error(`Config schema for extension ${e} already exists. If there are multiple extensions with this same name, one will probably crash.`),Y.setState(t=>({...t,schemas:{...t.schemas,[e]:n}}))}function eP(e,t="provided"){Y.setState(n=>({...n,providedConfigs:[...n.providedConfigs,{source:t,config:e}]}))}function eA(e,t,n){return new Promise(r=>{let o,i=!1;function a(e){!i&&t(e)&&(i=!0,r(n(e)),o?.())}a(e.getState()),i||(o=e.subscribe(a))})}function eO(e){return eA(ee(e),e=>!!(e.loaded&&e.config),e=>(0,U.A)(e.config,["Display conditions","Translation overrides"]))}function eR(e,t,n){let r=[eA(ee(e),e=>!!(e.translationOverridesLoaded&&e.config),e=>e.config["Translation overrides"]??{})];return t&&n&&r.push(eA(ei(t,n),e=>!!(e.loaded&&e.config),e=>e.config["Translation overrides"]??{})),Promise.all(r)}function e$(e,t,n){eF(e,t,n);let r=eV(e,t);return eH(e,r,n),r}let eT=new Map,eM=new Map,eW=new Map;function eL(e,t){return[...e.providedConfigs.map(e=>e.config),t.config]}function eD(e,t,n=""){let r="Please verify that you are running the latest version and, if so, alert the maintainer.";for(let o of Object.keys(t).filter(e=>!e.startsWith("_"))){let i=n+(n&&".")+o,a=t[o];if("Display conditions"===i&&console.error(`${e} declares a configuration option called "Display conditions"; the "Display conditions" option is a reserved name. ${r}`),"Translation overrides"===i&&console.error(`${e} declares a configuration option called "Translation overrides"; the "Translation overrides" option is a reserved name. ${r}`),!eq(a)){console.error(`${e} has bad config schema definition for key '${i}'. ${r}`);continue}a.hasOwnProperty("_default")||eD(e,a,i);let s=a._elements;if(eJ(s)&&eD(e,s,i+"._elements"),a._validators)for(let t of a._validators)"function"!=typeof t&&console.error(`${e} has invalid validator for key '${i}' ${r}.
3
+ ${e.stack}`,w(t)}}function v(e){let t;if(e instanceof Error)return e;if(null===e)return Error("'null' was thrown as an error");if("object"==typeof e){try{t=`Object thrown as error: ${JSON.stringify(e)}`}catch(n){t=`Object thrown as error with the following properties: ${Object.keys(e)}`}return Error(t)}if(void 0===e)return Error("'undefined' was thrown as an error");return Error(e.toString())}function b(e,t){if(e===t||Object.is(e,t))return!0;if(Array.isArray(e)){if(!Array.isArray(t)||e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}if(Array.isArray(t)||"object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;let n=Object.getOwnPropertyNames(e),r=Object.getOwnPropertyNames(t);return n.length===r.length&&n.every(n=>e[n]===t[n])}window.onerror=function(e,t,n,r,o){return console.error("Unexpected error: ",o??e),m({description:_(o??e,"Oops! An unexpected error occurred."),kind:"error",title:"Error"}),!1},window.onunhandledrejection=function(e){console.error("Unhandled rejection: ",e.reason),m({description:_(e.reason,"Oops! An unhandled promise rejection occurred."),kind:"error",title:"Error"})};var x,k,S,j=n(1978),N=n(9167);function C(){try{return"u">typeof process&&("true"===process.env.VITEST||void 0!==process.env.JEST_WORKER_ID)||"u">typeof globalThis&&("__vitest_worker__"in globalThis||"__jest__"in globalThis)}catch{return!1}}let E={},I=Symbol.for("openmrs.esm-state.instanceCount"),A=globalThis,P=(A[I]??0)+1;function O(e,t,n="none"){let r=E[e];if(r)return r.active?C()||console.error(`Attempted to override the existing store ${e}. Make sure that stores are only created once.`):r.value.setState(t,!0),r.active=!0,r.value;{let r=M(e,t,n);return E[e]={value:r,active:!0},r}}function T(e,t){let n=E[e];return n?(n.active?C()||console.error(`Attempted to override the existing store ${e}. Make sure that stores are only created once.`):n.value=t,n.active=!0,n.value):(E[e]={value:t,active:!0},t)}function R(e,t,n="none"){let r=E[e];if(!r){let r=M(e,t??{},n);return E[e]={value:r,active:!1},r}return r.value}function $(...e){let[t,n,r]=e,o=void 0===r?n:r,i=void 0===r?e=>e:n,a=i(t.getState());return o(a),t.subscribe(e=>{let t=i(e);b(a,t)||(a=t,o(t))})}function M(e,t,n){return"sessionStorage"===n?(0,N.y)()((0,j.Zr)(()=>t,{name:e,storage:(0,j.KU)(()=>sessionStorage)})):(0,N.y)()(()=>t)}A[I]=P,P>1&&!C()&&console.error(`Detected ${P} copies of @openmrs/esm-framework running on this page. Each copy keeps its own store registry, so stores, configuration and extension state are not shared between them. This usually means a frontend module loaded its own bundled framework instead of the one the app shell provides.`),globalThis.setTimeout?.(()=>{"u">typeof window&&"development"===window.spaEnv&&(window.stores=E)},1e3);var W=n(1156),L=n(3591),D=n(4888),B=n(9352),U=n(7772),F=n(8395),H=((x={}).Array="Array",x.Boolean="Boolean",x.ConceptUuid="ConceptUuid",x.Number="Number",x.Object="Object",x.String="String",x.UUID="UUID",x.PersonAttributeTypeUuid="PersonAttributeTypeUuid",x.PatientIdentifierTypeUuid="PatientIdentifierTypeUuid",x);function G(e,t){return n=>{if(!e(n))if("function"==typeof t)return t(n);else return t}}let z=G(e=>Array.isArray(e),"must be an array"),V=G(e=>"boolean"==typeof e,"must be a boolean"),J=G(e=>"number"==typeof e,"must be a number"),q=G(e=>"string"==typeof e,"must be a string"),K=G(e=>"object"==typeof e&&!Array.isArray(e)&&null!==e,"must be an object (not an array or null)"),X=G(e=>/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(e)||/^[0-9a-f]{36}$/i.test(e),"must be a valid UUID or a 36-character hexadecimal string"),Y=O("config-internal",{providedConfigs:[],schemas:{},moduleLoaded:{}}),Z=O("temporary-config",{config:function(){try{return JSON.parse(localStorage.getItem("openmrs:temporaryConfig")||"{}")}catch(e){return{}}}()});Z.subscribe(e=>{var t=e.config;try{localStorage.setItem("openmrs:temporaryConfig",JSON.stringify(t))}catch(e){}});let Q=O("config-store-of-extension-state",{mountedExtensions:[]});function ee(e){return R(`config-module-${e}`,{config:null,loaded:!1,translationOverridesLoaded:!1})}function et(){return R("config-extension-slots",{slots:{}})}function en(e){return er(et().getState(),e)}function er(e,t){return e.slots[t]??{loaded:!1,config:{}}}function eo(){return R("config-extensions",{configs:{}})}function ei(e,t){if("string"!=typeof e||"string"!=typeof t||"__proto__"===e||"__proto__"===t||"constructor"===e||"constructor"===t||"prototype"===e||"prototype"===t)throw Error("Attempted to call `getExtensionConfig()` with invalid argument");let n=eo(),r=n=>n.configs[e]?.[t];return{getInitialState:()=>r(n.getInitialState()),getState:()=>r(n.getState())??{loaded:!1,config:null},subscribe:e=>n.subscribe((t,n)=>{let o=r(t),i=r(n);b(o,i)||e(o,i)})}}function ea(e,t,n){return e.configs[t]?.[n]??{loaded:!1,config:null}}function es(e,t,n){return e.configure?.[n]??null}let el=(0,N.y)()(()=>({config:{}})),ec=0,eu=!0,ed=!1;function em(e){r=e}function ep(){eu=!0,ec>0&&ef()}function ef(){if(eu&&r&&!ed){ed=!0,eu=!1;try{r()}catch(e){eu=!0,eg(e),console.error("Failed to derive the implementer tools config",e)}finally{ed=!1}}}function eg(e){el.setState({derivationError:e instanceof Error?e.message:String(e)})}function eh(){el.getState().derivationError&&el.setState({derivationError:void 0})}let e_=T("config-implementer-tools",{...el,getState:()=>(0===ec&&ef(),el.getState()),setState:(...e)=>(eu=!1,el.setState(...e)),subscribe(e){ec++,ef();let t=el.subscribe(e),n=!1;return()=>{!n&&(n=!0,ec--),t()}}});function ew(e,t){if(Array.isArray(t))return t}function ey(e,t){return(0,D.A)({},e,t,ew)}let ev=[];function eb(){let e=Y.getState(),t=Z.getState(),n=Q.getState();!function(e,t){for(let n of Object.keys(e.schemas)){let r,o=ee(n),i=e.schemas[n],a=!!e.moduleLoaded[n],s=eS.get(n);if(s&&s.schema===i&&s.moduleLoaded===a&&s.providedConfigs===e.providedConfigs&&s.temporaryConfig===t.config)r=s.state;else{let o=a?function(e,t,n){let r=t.schemas[e],o=eB(e,eL(t,n));eF(r,o,e);let i=eV(r,o);return eH(r,i,e),delete i.extensionSlots,i}(n,e,t):function(e,t,n){let r=eV(e0,eB(e,eL(t,n)));return eH(e0,r,e),delete r.extensionSlots,r}(n,e,t);r={translationOverridesLoaded:!0,loaded:a,config:o},eS.set(n,{schema:i,moduleLoaded:a,providedConfigs:e.providedConfigs,temporaryConfig:t.config,state:r})}let l=o.getState();l.loaded===r.loaded&&l.translationOverridesLoaded===r.translationOverridesLoaded&&(0,B.A)(l.config,r.config)||o.setState(r)}}(e,t);let r=function(e,t){let n=eU(eL(e,t)),r=Object.keys(n).reduce((e,t)=>(n[t]?.extensionSlots&&(e[t]=n[t]?.extensionSlots),e),{});var o=r;for(let[e,t]of Object.entries(o))for(let[n,r]of Object.entries(t))!function(e,t,n){let r=`${t}.extensionSlots.${n}`,o=`Extension slot config '${r}'`,i=Object.keys(e).filter(e=>!["add","remove","order","configure"].includes(e));i.length&&eX(r,o+`' contains invalid keys '${i.join("', '")}'`),!e.add||Array.isArray(e.add)&&e.add.every(e=>"string"==typeof e)||eX(r,o+".add' is invalid. Must be an array of strings (extension IDs)"),!e.remove||Array.isArray(e.remove)&&e.remove.every(e=>"string"==typeof e)||eX(r,o+".remove' is invalid. Must be an array of strings (extension IDs)"),!e.order||Array.isArray(e.order)&&e.order.every(e=>"string"==typeof e)||eX(r,o+".order' is invalid. Must be an array of strings (extension IDs)"),e.configure&&!eq(e.configure)&&eX(r,o+".configure' is invalid. Must be an object with extension IDs for keys")}(r,e,n);let i={},a={};for(let e of Object.values(r))for(let[t,n]of Object.entries(e))i[t]=n,n.configure&&(a[t]??(a[t]=[])).push(n.configure);for(let[e,t]of Object.entries(a)){let n=1===t.length?t[0]:eU(t);i[e].configure!==n&&(i[e]={...i[e],configure:n})}return i}(e,t);(function(e){let t=et(),n=t.getState().slots,r={},o=!1;for(let[t,i]of Object.entries(e)){let e=n[t];e?.loaded&&(0,B.A)(e.config,i)?r[t]=e:(r[t]={loaded:!0,config:i},o=!0)}(o||Object.keys(n).length!==Object.keys(r).length)&&t.setState({slots:r})})(r),function(e,t,n,r){let o=eo(),i=o.getState().configs,a={},s=!1,l=0;for(let o of t.mountedExtensions){let t=function(e,t,n,r,o,i,a){let s=function(e){let[t]=e.split("#");return t}(r),l=o.schemas[s],c=JSON.stringify([n,r,e,t]),u=e$.get(c);if(u&&u.extensionSchema===l&&u.extensionModuleSchema===o.schemas[t]&&u.providedConfigs===o.providedConfigs&&u.temporaryConfig===i.config)return u.config;let d=l?s:t,m=eL(o,i),p=a?.configure?.[r]??{},f=eB(e,m),g=f?.extensionSlots?.[n]?.configure?.[r]??{},h=eU([eB(d,m),p,g]),_=l??o.schemas[t];eF(_,h,d);let w=eV(_,h);return eH(_,w,d),delete w.extensionSlots,e$.set(c,{extensionSchema:l,extensionModuleSchema:o.schemas[t],providedConfigs:o.providedConfigs,temporaryConfig:i.config,config:w}),w}(o.slotModuleName,o.extensionModuleName,o.slotName,o.extensionId,e,n,r[o.slotName]),c=i[o.slotName]?.[o.extensionId],u=c?.loaded&&(0,B.A)(c.config,t)?c:{config:t,loaded:!0};u!==c&&(s=!0),a[o.slotName]||(a[o.slotName]={}),a[o.slotName][o.extensionId]=u,l++}for(let[e,t]of Object.entries(a)){let n=i[e];n&&Object.keys(n).length===Object.keys(t).length&&Object.entries(t).every(([e,t])=>n[e]===t)&&(a[e]=n)}s||(s=Object.keys(i).length!==Object.keys(a).length||Object.values(i).reduce((e,t)=>e+Object.keys(t).length,0)!==l),s&&o.setState({configs:a})}(e,n,t,r),ep()}function ex(){r=()=>{var e,t;let n,r;return e=Y.getState(),t=Z.getState(),n=e_.getState(),r={config:function(e,t){let n=function(e){let t={};for(let[n,r]of Object.entries(e)){let e=eW.get(n);if(e&&e.schema===r)t[n]=e.annotated;else{let e=function e(t){return t.hasOwnProperty("_default")?{...t,_value:t._default,_source:"default"}:eq(t)?Object.keys(t).reduce((n,r)=>(n[r]=e(t[r]),n),{}):{}}((0,F.A)(r));eW.set(n,{schema:r,annotated:e}),t[n]=e}}return t}(e.schemas),r=[...e.providedConfigs.map(e=>[e.config,e.source]),[t.config,"temporary config"]],o=new Set(Object.keys(n));for(let[e]of r)for(let t of Object.keys(e))o.add(t);let i={};for(let e of o){let t=n[e],o=r.map(([t])=>t[e]),a=r.map(([,e])=>e),s=eM.get(e);if(s&&s.annotatedSchema===t&&s.configSlices.length===o.length&&s.configSlices.every((e,t)=>e===o[t])&&s.sources.every((e,t)=>e===a[t])){i[e]=s.result;continue}let l=t??{};r.forEach(([,e],t)=>{let n=o[t];void 0!==n&&(l=ey(l,function e(t,n){return eq(t)?Object.keys(t).reduce((r,o)=>(r[o]=e(t[o],n),r),{}):{_value:t,_source:n}}(n,e)))}),eM.set(e,{annotatedSchema:t,configSlices:o,sources:a,result:l}),i[e]=l}return i}(e,t)},void((0,B.A)(n.config,r.config)||e_.setState(r))},eb(),ev.push(Y.subscribe(ek),Z.subscribe(ek),Q.subscribe(ek))}function ek(){eh();try{eb()}catch(e){eg(e),console.error("Failed to recompute the configuration",e)}}ex();let eS=new Map;function ej(e,t){eD(e,t);let n=ey(t,e0);Y.setState(t=>({...t,schemas:{...t.schemas,[e]:n},moduleLoaded:{...t.moduleLoaded,[e]:!0}}))}function eN(e){Y.setState(t=>({...t,schemas:{...t.schemas,[e]:e0}}))}function eC(e){Y.setState(t=>({...t,moduleLoaded:{...t.moduleLoaded,[e]:!0}}))}function eE(e){Y.setState(t=>({...t,schemas:{...t.schemas,[e]:eQ}}))}function eI(e,t){eD(e,t);let n=ey(t,e0);Y.getState().schemas[e]&&console.error(`Config schema for extension ${e} already exists. If there are multiple extensions with this same name, one will probably crash.`),Y.setState(t=>({...t,schemas:{...t.schemas,[e]:n}}))}function eA(e,t="provided"){Y.setState(n=>({...n,providedConfigs:[...n.providedConfigs,{source:t,config:e}]}))}function eP(e,t,n){return new Promise(r=>{let o,i=!1;function a(e){!i&&t(e)&&(i=!0,r(n(e)),o?.())}a(e.getState()),i||(o=e.subscribe(a))})}function eO(e){return eP(ee(e),e=>!!(e.loaded&&e.config),e=>(0,U.A)(e.config,["Display conditions","Translation overrides"]))}function eT(e,t,n){let r=[eP(ee(e),e=>!!(e.translationOverridesLoaded&&e.config),e=>e.config["Translation overrides"]??{})];return t&&n&&r.push(eP(ei(t,n),e=>!!(e.loaded&&e.config),e=>e.config["Translation overrides"]??{})),Promise.all(r)}function eR(e,t,n){eF(e,t,n);let r=eV(e,t);return eH(e,r,n),r}let e$=new Map,eM=new Map,eW=new Map;function eL(e,t){return[...e.providedConfigs.map(e=>e.config),t.config]}function eD(e,t,n=""){let r="Please verify that you are running the latest version and, if so, alert the maintainer.";for(let o of Object.keys(t).filter(e=>!e.startsWith("_"))){let i=n+(n&&".")+o,a=t[o];if("Display conditions"===i&&console.error(`${e} declares a configuration option called "Display conditions"; the "Display conditions" option is a reserved name. ${r}`),"Translation overrides"===i&&console.error(`${e} declares a configuration option called "Translation overrides"; the "Translation overrides" option is a reserved name. ${r}`),!eq(a)){console.error(`${e} has bad config schema definition for key '${i}'. ${r}`);continue}a.hasOwnProperty("_default")||eD(e,a,i);let s=a._elements;if(eJ(s)&&eD(e,s,i+"._elements"),a._validators)for(let t of a._validators)"function"!=typeof t&&console.error(`${e} has invalid validator for key '${i}' ${r}.
4
4
 
5
5
  If you're the maintainer: validators must be functions that return either undefined or an error string. Received ${t}.`);let l=a._type;l&&!Object.values(H).includes(l)&&console.error(`${e} has invalid type for key '${i}' ${r}.
6
6
 
@@ -9,24 +9,24 @@ If you're the maintainer: the allowed types are ${Object.values(H).join(", ")}.
9
9
  If you're the maintainer: all config elements must have a default. Received ${JSON.stringify(a)}`),s&&l&&![H.Array,H.Object].includes(l)&&console.error(`${e} has bad config schema definition for key '${i}'. ${r}.
10
10
 
11
11
  If you're the maintainer: the 'elements' key only works with '_type' equal to 'Array' or 'Object'. Received ${JSON.stringify(l)}`)}}function eB(e,t){return eU(t.map(({[e]:t})=>t).filter(e=>!!e))}function eU(e){return e.reduce((e,t)=>(0,D.A)(e,t,ew),{})}function eF(e,t,n=""){for(let r of Object.keys(t)){let o=t[r],i=n+"."+r,a=e[r];if(!e.hasOwnProperty(r)){("extensionSlots"!==r||""===n)&&eX(i,`Unknown config key '${i}' provided. Ignoring.`);continue}(function e(t,n,r){eG(r,t._type,n),eq(n)?t._type===H.Object?function(t,n,r){if(t._elements)for(let o of Object.keys(n)){let i=n[o];e(t._elements,i,`${r}.${o}`)}}(t,n,r):t.hasOwnProperty("_default")||t.hasOwnProperty("_type")||eF(t,n,r):t._type===H.Array&&function(t,n,r){if(eG(r,H.Array,n)){if(eJ(t._elements))for(let o=0;o<n.length;o++)e(t._elements,n[o],`${r}[${o}]`);for(let e=0;e<n.length;e++)eG(`${r}[${e}]`,t._elements?._type,n[e])}}(t,n,r)})(a,o,i)}}function eH(e,t,n=""){if(e){if(t!==e._default&&ez(n,e._validators,t),eq(t))for(let r of Object.keys(t)){let o=t[r],i=n+"."+r,a=e[r];e._type===H.Object&&e._elements?eH(e._elements,o,i):eH(a,o,i)}else if(Array.isArray(t)&&e._elements)for(let r=0;r<t.length;r++)eH(e._elements,t[r],`${n}[${r}]`)}}function eG(e,t,n){return!t||ez(e,[{Array:z,Boolean:V,ConceptUuid:X,Number:J,Object:K,String:q,UUID:X,PersonAttributeTypeUuid:X,PatientIdentifierTypeUuid:X}[t]],n)}function ez(e,t,n){let r=!0;if(t)try{for(let o of t){let t=o(n);if("string"==typeof t){let o="object"==typeof n?`Invalid configuration for ${e}: ${t}`:`Invalid configuration value ${n} for ${e}: ${t}`;eX(e,o),r=!1}}}catch(t){console.error(`Skipping invalid validator at "${e}". Encountered error
12
- ${t}`)}return r}let eV=(e,t)=>{let n=structuredClone(t);if(!e)return n;for(let t of Object.keys(e)){let r=n[t],o=e[t];if(o&&(o.hasOwnProperty("_type")||o.hasOwnProperty("_default"))){n.hasOwnProperty(t)||(n[t]=o._default);let e=o._elements;if(r&&eJ(e)){if(o._type===H.Array&&Array.isArray(r)){let o=r.map(t=>eV(e,t));n[t]=o}else if(o._type===H.Object)for(let t of Object.keys(r))r[t]=eV(e,r[t])}}else if(eq(o)){let e=r??{};eq(e)&&(n[t]=eV(o,e))}}return n};function eJ(e){return!!e&&Object.keys(e).filter(e=>!["_default","_validators"].includes(e)).length>0}function eq(e){return"object"==typeof e&&!Array.isArray(e)&&null!==e}let eK=new Set;function eX(e,t){let n=`${e}:::${t}`;eK||(eK=new Set),eK.has(n)||(console.error(t),eK.add(n))}function eY(e){e?eK.forEach(t=>{t.startsWith(e)&&eK.delete(t)}):eK.clear()}function eZ(){ev.forEach(e=>e()),ev.length=0,eS.clear(),eT.clear(),eW.clear(),eM.clear(),ex()}let eQ={"Translation overrides":{_description:"Per-language overrides for frontend translations should be keyed by language code and each language dictionary contains the translation key and the display value",_type:H.Object,_default:{},_validators:[G(e=>Object.keys(e).every(e=>/^[a-z]{2,3}(-[A-Z]{2,3})?$/.test(e)),e=>{let t=Object.keys(e).filter(e=>!/^[a-z]{2,3}(-[A-Z]{2,3})?$/.test(e));return`The 'Translation overrides' object should have language codes for keys. Language codes must be in the form of a two-to-three letter language code optionally followed by a hyphen and a two-to-three letter country code. The following keys do not conform: ${t.join(", ")}.`})]}},e0={"Display conditions":{privileges:{_description:"The privilege(s) the user must have to use this extension",_type:H.Array,_default:[]},expression:{_description:"The expression that determines whether the extension is displayed",_type:H.String,_default:void 0}},...eQ},e1=(e,t)=>G(n=>e<=n&&n<=t,`must be between ${e} and ${t}`),e2=e=>{let t=e.concat(["openmrsBase","openmrsSpaBase"]);return G(e=>{if(!e||"string"!=typeof e)return!1;let n=/\${(.*?)}/g,r=n.exec(e);for(;r;){if(!t.includes(r[1]))return!1;r=n.exec(e)}return!0},"Should be a URL or path. The allowed template parameters are "+t.map(e=>"${"+e+"}").join(", "))},e6=e2([]),e5=e=>G(t=>e.includes(t),`Must be one of the following: '${e.join("', '")}'.`),e8={inRange:e1,isUrl:e6,isUrlWithTemplateParameters:e2,oneOf:e5};var e3=n(4913);let e4=O("breadcrumbs",[]);function e7(e){return e9([e])}function e9(e){let t=[...te(),...e.map(e=>({matcher:e.matcher instanceof RegExp?e.matcher:"string"==typeof e.matcher?(0,e3.pathToRegexp)(e.matcher).regexp:(0,e3.pathToRegexp)(e.path).regexp,settings:e}))];e4.setState(t,!0)}function te(){return e4.getState()}function tt(e,t){if(t)return function(e,t){let[n]=e.filter(e=>e.matcher.test(t));return n}(e,t)||function(e,t){let n=t.split("/");for(;n.length>1;){n.pop();let t=tt(e,n.join("/"));if(t)return t}}(e,t)}function tn(e,t){if(e.length>0){let n=tt(e,t);if(n){let t=[n],r=tt(e,n.settings.parent);for(;void 0!==r;)t.push(r),r=tt(e,r.settings.parent);return t.reverse()}}return[]}function tr(e){return tn(te(),e)}var to=n(480);let ti={address1:"Address line 1",address2:"Address line 2",address3:"Address line 3",address4:"Address line 4",address5:"Address line 5",address6:"Address line 6",city:"City",cityVillage:"City",country:"Country",countyDistrict:"District",district:"District",postalCode:"Postal code",state:"State",stateProvince:"State",closeAllOpenedWorkspaces:"Discard changes in {{count}} workspaces",closingAllWorkspacesPromptBody:"There may be unsaved changes in the following workspaces. Do you want to discard changes in the following workspaces? {{workspaceNames}}",closingAllWorkspacesPromptTitle:"You have unsaved changes",discard:"Discard",hide:"Hide",maximize:"Maximize",minimize:"Minimize",openAnyway:"Open anyway",unsavedChangesInOpenedWorkspace:"You may have unsaved changes in the opened workspace. Do you want to discard these changes?",unsavedChangesInWorkspace:'There may be unsaved changes in "{{workspaceName}}". Please save them before opening another workspace.',unsavedChangesTitleText:"Unsaved changes",workspaceHeader:"Workspace header",discardUnsavedChangesPromptBodyMultiple:"{{count}} workspaces have unsaved changes. Closing them will discard the changes:",discardUnsavedChangesPromptBodySingle:"<strong>{{workspaceTitle}}</strong> has unsaved changes. Closing it will discard them.",discardUnsavedChangesPromptTitle:"Discard unsaved changes?",keepEditing:"Keep editing",abnormalValue:"Abnormal value",actions:"Actions",actionableNotification:"Actionable notification",address:"Address",age:"Age",batchActionItemSelected:"{{totalSelected}} item selected",batchActionsItemsSelected:"{{totalSelected}} items selected",cancel:"Cancel",change:"Change",Clinic:"Clinic",close:"Close",closesActionableNotification:"Close actionable notification",closeSnackbar:"Close snackbar",confirm:"Confirm",contactAdministratorIfIssuePersists:"Contact your system administrator if the problem persists.",contactDetails:"Contact details",delete:"Delete",discardChanges:"Discard changes",edit:"Edit",emptyStateText:"There are no {{displayText}} to display",error:"Error",errorCopy:"Sorry, there was a problem displaying this information. You can try to reload this page, or contact the site administrator and quote the error code above.",errorLoadingLoginLocations:"Unable to load login locations. Please try again or contact support if the problem persists.",female:"Female",leftNavigation:"Left navigation",loading:"Loading",localVersion:"Local Build",male:"Male",navigateNonHttp:"Could not navigate to the requested page as it is not a safe URL",noResultsToDisplay:"No results to display",notAvailable:"Not available",other:"Other",paginationItemsCount:"{{pageItemsCount}} / {{totalItems}} items",paginationOfPages:"of {{count}} pages",patientAvatarAlt:"Avatar for {{patientName}}",patientIdentifierSticker:"Patient identifier sticker",patientLists:"Patient lists",patientPhotoAlt:"Profile photo of {{patientName}}",patientPhotoPlaceholder:"Photo placeholder for {{patientName}}",prereleaseVersion:"Prerelease",print:"Print",printError:"Print error",printErrorExplainer:"An error occurred in {{errorLocation}}",printIdentifierSticker:"Print identifier sticker",printing:"Printing",recordNewEntry:"Record {{displayText}}",relationships:"Relationships",resetOverrides:"Reset overrides",save:"Save",scriptLoadingFailed:"Error: Script failed to load",scriptLoadingError:"Failed to load overridden script from {{url}}. Please check that the bundled script is available at the expected URL. Click the button below to reset all import map overrides.",searchForLocation:"Search for a location",seeAll:"See all",seeMoreLists:"See {{count}} more lists",selectAll:"Select all",sex:"Sex",showLess:"Show less",showMore:"Show more",snackbarNotification:"Snackbar notification",toggleDevTools:"Toggle dev tools",unknown:"Unknown",yearAbbreviation:"yr",yearsAbbreviation:"yrs"};var ta=n(2279);let ts=ta.Ay.default||ta.Ay;function tl(e,t,n,r){return ts.t(t,{ns:e,defaultValue:n,...r})}function tc(e,t,n){return ti[e]?tl("core",e,t??ti[e],n):(console.error(`O3 Core Translations does not provide key '${e}'. The key itself is being rendered as text.`),e)}function tu(e,t){let n=window.getOpenmrsSpaBase().replace(/\/$/,""),r=td(e,{openmrsBase:window.openmrsBase,openmrsSpaBase:n,...t});return e.startsWith("//")?r:r.replace(/^\/\//,"/")}function td(e,t){return Object.keys(t).reduce((e,n)=>e.split("${"+n+"}").join(t[n]),e)}function tm({to:e,templateParams:t}){let n=window.getOpenmrsSpaBase().replace(/\/$/,""),r=tu(e,t).replace(window.location.origin,""),o=new URL(r,window.location.origin);if("http:"!=o.protocol&&"https:"!=o.protocol)throw console.error(`Received request to navigate to non-http URL: ${o.toString()}`),Error(tc("navigateNonHttp"));r.startsWith(n)?(0,to.navigateToUrl)(r):window.location.assign(r)}ts.on("initialized",function(){window.i18next.loadNamespaces(["core"])});let tp="openmrs:history";function tf(e){let t=JSON.parse(sessionStorage.getItem(tp)??"[]")||[];t.push(e),t.length>50&&(t=t.slice(-50)),sessionStorage.setItem(tp,JSON.stringify(t))}function tg(){0===JSON.parse(sessionStorage.getItem(tp)??"[]").length&&document.referrer&&tf(document.referrer),window.addEventListener("single-spa:routing-event",e=>{let t=th();e.detail.originalEvent?.singleSpaTrigger=="replaceState"?(t[t.length-1]=window.location.href,sessionStorage.setItem(tp,JSON.stringify(t))):!e.detail.originalEvent?.singleSpa&&t.includes(window.location.href)?t_({toUrl:window.location.href}):t[t.length-1]!==window.location.href&&tf(window.location.href)})}function th(){return JSON.parse(sessionStorage.getItem(tp)??"[]")}function t_({toUrl:e}){let t=th(),n=t.lastIndexOf(e);if(-1!=n){let e=t.slice(0,n+1);tm({to:t[n]}),sessionStorage.setItem(tp,JSON.stringify(e))}else throw Error(`URL ${e} not found in history; cannot go back to it.`)}function tw(){sessionStorage.removeItem(tp)}let ty="${openmrsSpaBase}/login",tv={redirectAuthFailure:{enabled:{_type:H.Boolean,_default:!0,_description:"Whether to redirect logged-out users to `redirectAuthFailure.url`"},url:{_type:H.String,_default:ty,_validators:[e8.isUrl],_description:"The url to which users will be redirected when they are logged out. If set to blank, the `location` header from the response will be used."},errors:{_type:H.Array,_default:[401],_elements:{_type:H.Number,_validators:[e8.inRange(100,600)]},_description:"The HTTP error codes for which users will be redirected"},resolvePromise:{_type:H.Boolean,_default:!1,_description:"Changes how requests that fail authentication are handled. Try messing with this if redirects to the login page aren't working correctly."}},followRedirects:{_type:H.Boolean,_default:!0,_description:"Whether openmrsFetch should support redirects returned from the backend"}};function tb(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}let tx="/ws/rest/v1",tk="/ws/fhir2/R4",tS=`${tx}/session`;function tj(e){return e&&e.startsWith("http")?e:("/"!==e[0]&&(e="/"+e),window.openmrsBase+e)}function tN(e,t={}){if("string"!=typeof e)throw Error("The first argument to @openmrs/api's openmrsFetch function must be a url string");if("object"!=typeof t)throw Error("The second argument to @openmrs/api's openmrsFetch function must be a plain object.");if(!window.openmrsBase)throw Error("@openmrs/api is running in a browser that doesn't have window.openmrsBase, which is provided by openmrs-module-spa's HTML file.");let n=tj(e);t.headers||(t.headers={}),(0,L.A)(t.body)&&(t.body=JSON.stringify(t.body)),void 0===t.headers.Accept&&(t.headers.Accept="application/json"),null===t.headers.Accept&&delete t.headers.Accept;let r=!1;try{let e=new URL(n,window.location.href),t=new URL(tj(tx),window.location.href),o=e.pathname.replace(/\/{2,}/g,"/"),i=t.pathname.replace(/\/{2,}/g,"/");r=e.origin===t.origin&&(o===i||o.startsWith(`${i}/`))}catch{}if(r){let e=!1;for(let[n,r]of Object.entries(t.headers))"disable-www-authenticate"===n.toLowerCase()&&(void 0===r?delete t.headers[n]:e=!0);e||(t.headers["Disable-WWW-Authenticate"]="true")}if(e.startsWith(tk)){let e=new URL(n,window.location.toString());e.searchParams.has("_summary")||(e.searchParams.set("_summary","data"),n=e.toString())}let o=Error();return window.fetch(n,t).then(async e=>{let{redirectAuthFailure:t,followRedirects:r}=await eO("@openmrs/esm-api");if(e.ok){let t=e.headers.get("location");return(r&&t&&(n===tj(tS)||204===e.status)&&tm({to:t}),204===e.status)?(e.data=null,e):e.clone().text().then(t=>{try{t&&(e.data=JSON.parse(t))}catch(e){}return e})}return n===tj(tS)&&403===e.status||t.enabled&&t.errors.includes(e.status)?(tw(),tm({to:t.url||e.headers.get("location")||ty}),t.resolvePromise?Promise.resolve():new Promise(()=>{})):e.clone().text().then(t=>{let r=t;try{r=JSON.parse(t)}catch(e){}throw new tC(n,e,r,o)},t=>{throw new tC(n,e,null,o)})})}class tC extends Error{constructor(e,t,n,r){super(),tb(this,"response",void 0),tb(this,"responseBody",void 0),this.message=`Server responded with ${t.status} (${t.statusText}) for url ${e}. Check err.responseBody or network tab in dev tools for more info`,r.message=this.message,this.responseBody=n,this.response=t,this.stack=`Stacktrace for outgoing request:
12
+ ${t}`)}return r}let eV=(e,t)=>{let n=structuredClone(t);if(!e)return n;for(let t of Object.keys(e)){let r=n[t],o=e[t];if(o&&(o.hasOwnProperty("_type")||o.hasOwnProperty("_default"))){n.hasOwnProperty(t)||(n[t]=o._default);let e=o._elements;if(r&&eJ(e)){if(o._type===H.Array&&Array.isArray(r)){let o=r.map(t=>eV(e,t));n[t]=o}else if(o._type===H.Object)for(let t of Object.keys(r))r[t]=eV(e,r[t])}}else if(eq(o)){let e=r??{};eq(e)&&(n[t]=eV(o,e))}}return n};function eJ(e){return!!e&&Object.keys(e).filter(e=>!["_default","_validators"].includes(e)).length>0}function eq(e){return"object"==typeof e&&!Array.isArray(e)&&null!==e}let eK=new Set;function eX(e,t){let n=`${e}:::${t}`;eK||(eK=new Set),eK.has(n)||(console.error(t),eK.add(n))}function eY(e){e?eK.forEach(t=>{t.startsWith(e)&&eK.delete(t)}):eK.clear()}function eZ(){ev.forEach(e=>e()),ev.length=0,eS.clear(),e$.clear(),eW.clear(),eM.clear(),ex()}let eQ={"Translation overrides":{_description:"Per-language overrides for frontend translations should be keyed by language code and each language dictionary contains the translation key and the display value",_type:H.Object,_default:{},_validators:[G(e=>Object.keys(e).every(e=>/^[a-z]{2,3}(-[A-Z]{2,3})?$/.test(e)),e=>{let t=Object.keys(e).filter(e=>!/^[a-z]{2,3}(-[A-Z]{2,3})?$/.test(e));return`The 'Translation overrides' object should have language codes for keys. Language codes must be in the form of a two-to-three letter language code optionally followed by a hyphen and a two-to-three letter country code. The following keys do not conform: ${t.join(", ")}.`})]}},e0={"Display conditions":{privileges:{_description:"The privilege(s) the user must have to use this extension",_type:H.Array,_default:[]},expression:{_description:"The expression that determines whether the extension is displayed",_type:H.String,_default:void 0}},...eQ},e1=(e,t)=>G(n=>e<=n&&n<=t,`must be between ${e} and ${t}`),e2=e=>{let t=e.concat(["openmrsBase","openmrsSpaBase"]);return G(e=>{if(!e||"string"!=typeof e)return!1;let n=/\${(.*?)}/g,r=n.exec(e);for(;r;){if(!t.includes(r[1]))return!1;r=n.exec(e)}return!0},"Should be a URL or path. The allowed template parameters are "+t.map(e=>"${"+e+"}").join(", "))},e6=e2([]),e5=e=>G(t=>e.includes(t),`Must be one of the following: '${e.join("', '")}'.`),e3={inRange:e1,isUrl:e6,isUrlWithTemplateParameters:e2,oneOf:e5};var e8=n(4913);let e4=O("breadcrumbs",[]);function e7(e){return e9([e])}function e9(e){let t=[...te(),...e.map(e=>({matcher:e.matcher instanceof RegExp?e.matcher:"string"==typeof e.matcher?(0,e8.pathToRegexp)(e.matcher).regexp:(0,e8.pathToRegexp)(e.path).regexp,settings:e}))];e4.setState(t,!0)}function te(){return e4.getState()}function tt(e,t){if(t)return function(e,t){let[n]=e.filter(e=>e.matcher.test(t));return n}(e,t)||function(e,t){let n=t.split("/");for(;n.length>1;){n.pop();let t=tt(e,n.join("/"));if(t)return t}}(e,t)}function tn(e,t){if(e.length>0){let n=tt(e,t);if(n){let t=[n],r=tt(e,n.settings.parent);for(;void 0!==r;)t.push(r),r=tt(e,r.settings.parent);return t.reverse()}}return[]}function tr(e){return tn(te(),e)}var to=n(480);let ti={address1:"Address line 1",address2:"Address line 2",address3:"Address line 3",address4:"Address line 4",address5:"Address line 5",address6:"Address line 6",city:"City",cityVillage:"City",country:"Country",countyDistrict:"District",district:"District",postalCode:"Postal code",state:"State",stateProvince:"State",closeAllOpenedWorkspaces:"Discard changes in {{count}} workspaces",closingAllWorkspacesPromptBody:"There may be unsaved changes in the following workspaces. Do you want to discard changes in the following workspaces? {{workspaceNames}}",closingAllWorkspacesPromptTitle:"You have unsaved changes",discard:"Discard",hide:"Hide",maximize:"Maximize",minimize:"Minimize",openAnyway:"Open anyway",unsavedChangesInOpenedWorkspace:"You may have unsaved changes in the opened workspace. Do you want to discard these changes?",unsavedChangesInWorkspace:'There may be unsaved changes in "{{workspaceName}}". Please save them before opening another workspace.',unsavedChangesTitleText:"Unsaved changes",workspaceHeader:"Workspace header",discardUnsavedChangesPromptBodyMultiple:"{{count}} workspaces have unsaved changes. Closing them will discard the changes:",discardUnsavedChangesPromptBodySingle:"<strong>{{workspaceTitle}}</strong> has unsaved changes. Closing it will discard them.",discardUnsavedChangesPromptTitle:"Discard unsaved changes?",keepEditing:"Keep editing",abnormalValue:"Abnormal value",actions:"Actions",actionableNotification:"Actionable notification",address:"Address",age:"Age",batchActionItemSelected:"{{totalSelected}} item selected",batchActionsItemsSelected:"{{totalSelected}} items selected",cancel:"Cancel",change:"Change",Clinic:"Clinic",close:"Close",closesActionableNotification:"Close actionable notification",closeSnackbar:"Close snackbar",confirm:"Confirm",contactAdministratorIfIssuePersists:"Contact your system administrator if the problem persists.",contactDetails:"Contact details",delete:"Delete",discardChanges:"Discard changes",edit:"Edit",emptyStateText:"There are no {{displayText}} to display",error:"Error",errorCopy:"Sorry, there was a problem displaying this information. You can try to reload this page, or contact the site administrator and quote the error code above.",errorLoadingLoginLocations:"Unable to load login locations. Please try again or contact support if the problem persists.",female:"Female",leftNavigation:"Left navigation",loading:"Loading",localVersion:"Local Build",male:"Male",navigateNonHttp:"Could not navigate to the requested page as it is not a safe URL",noResultsToDisplay:"No results to display",notAvailable:"Not available",other:"Other",paginationItemsCount:"{{pageItemsCount}} / {{totalItems}} items",paginationOfPages:"of {{count}} pages",patientAvatarAlt:"Avatar for {{patientName}}",patientIdentifierSticker:"Patient identifier sticker",patientLists:"Patient lists",patientPhotoAlt:"Profile photo of {{patientName}}",patientPhotoPlaceholder:"Photo placeholder for {{patientName}}",prereleaseVersion:"Prerelease",print:"Print",printError:"Print error",printErrorExplainer:"An error occurred in {{errorLocation}}",printIdentifierSticker:"Print identifier sticker",printing:"Printing",recordNewEntry:"Record {{displayText}}",relationships:"Relationships",resetOverrides:"Reset overrides",save:"Save",scriptLoadingFailed:"Error: Script failed to load",scriptLoadingError:"Failed to load overridden script from {{url}}. Please check that the bundled script is available at the expected URL. Click the button below to reset all import map overrides.",searchForLocation:"Search for a location",seeAll:"See all",seeMoreLists:"See {{count}} more lists",selectAll:"Select all",sex:"Sex",showLess:"Show less",showMore:"Show more",snackbarNotification:"Snackbar notification",toggleDevTools:"Toggle dev tools",unknown:"Unknown",yearAbbreviation:"yr",yearsAbbreviation:"yrs"};var ta=n(2279);let ts=ta.Ay.default||ta.Ay;function tl(e,t,n,r){return ts.t(t,{ns:e,defaultValue:n,...r})}function tc(e,t,n){return ti[e]?tl("core",e,t??ti[e],n):(console.error(`O3 Core Translations does not provide key '${e}'. The key itself is being rendered as text.`),e)}function tu(e,t){let n=window.getOpenmrsSpaBase().replace(/\/$/,""),r=td(e,{openmrsBase:window.openmrsBase,openmrsSpaBase:n,...t});return e.startsWith("//")?r:r.replace(/^\/\//,"/")}function td(e,t){return Object.keys(t).reduce((e,n)=>e.split("${"+n+"}").join(t[n]),e)}function tm({to:e,templateParams:t}){let n=window.getOpenmrsSpaBase().replace(/\/$/,""),r=tu(e,t).replace(window.location.origin,""),o=new URL(r,window.location.origin);if("http:"!=o.protocol&&"https:"!=o.protocol)throw console.error(`Received request to navigate to non-http URL: ${o.toString()}`),Error(tc("navigateNonHttp"));r.startsWith(n)?(0,to.navigateToUrl)(r):window.location.assign(r)}ts.on("initialized",function(){window.i18next.loadNamespaces(["core"])});let tp="openmrs:history";function tf(e){let t=JSON.parse(sessionStorage.getItem(tp)??"[]")||[];t.push(e),t.length>50&&(t=t.slice(-50)),sessionStorage.setItem(tp,JSON.stringify(t))}function tg(){0===JSON.parse(sessionStorage.getItem(tp)??"[]").length&&document.referrer&&tf(document.referrer),window.addEventListener("single-spa:routing-event",e=>{let t=th();e.detail.originalEvent?.singleSpaTrigger=="replaceState"?(t[t.length-1]=window.location.href,sessionStorage.setItem(tp,JSON.stringify(t))):!e.detail.originalEvent?.singleSpa&&t.includes(window.location.href)?t_({toUrl:window.location.href}):t[t.length-1]!==window.location.href&&tf(window.location.href)})}function th(){return JSON.parse(sessionStorage.getItem(tp)??"[]")}function t_({toUrl:e}){let t=th(),n=t.lastIndexOf(e);if(-1!=n){let e=t.slice(0,n+1);tm({to:t[n]}),sessionStorage.setItem(tp,JSON.stringify(e))}else throw Error(`URL ${e} not found in history; cannot go back to it.`)}function tw(){sessionStorage.removeItem(tp)}let ty="${openmrsSpaBase}/login",tv={redirectAuthFailure:{enabled:{_type:H.Boolean,_default:!0,_description:"Whether to redirect logged-out users to `redirectAuthFailure.url`"},url:{_type:H.String,_default:ty,_validators:[e3.isUrl],_description:"The url to which users will be redirected when they are logged out. If set to blank, the `location` header from the response will be used."},errors:{_type:H.Array,_default:[401],_elements:{_type:H.Number,_validators:[e3.inRange(100,600)]},_description:"The HTTP error codes for which users will be redirected"},resolvePromise:{_type:H.Boolean,_default:!1,_description:"Changes how requests that fail authentication are handled. Try messing with this if redirects to the login page aren't working correctly."}},followRedirects:{_type:H.Boolean,_default:!0,_description:"Whether openmrsFetch should support redirects returned from the backend"}};function tb(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}let tx="/ws/rest/v1",tk="/ws/fhir2/R4",tS=`${tx}/session`;function tj(e){return e&&e.startsWith("http")?e:("/"!==e[0]&&(e="/"+e),window.openmrsBase+e)}function tN(e,t={}){if("string"!=typeof e)throw Error("The first argument to @openmrs/api's openmrsFetch function must be a url string");if("object"!=typeof t)throw Error("The second argument to @openmrs/api's openmrsFetch function must be a plain object.");if(!window.openmrsBase)throw Error("@openmrs/api is running in a browser that doesn't have window.openmrsBase, which is provided by openmrs-module-spa's HTML file.");let n=tj(e);t.headers||(t.headers={}),(0,L.A)(t.body)&&(t.body=JSON.stringify(t.body)),void 0===t.headers.Accept&&(t.headers.Accept="application/json"),null===t.headers.Accept&&delete t.headers.Accept;let r=!1;try{let e=new URL(n,window.location.href),t=new URL(tj(tx),window.location.href),o=e.pathname.replace(/\/{2,}/g,"/"),i=t.pathname.replace(/\/{2,}/g,"/");r=e.origin===t.origin&&(o===i||o.startsWith(`${i}/`))}catch{}if(r){let e=!1;for(let[n,r]of Object.entries(t.headers))"disable-www-authenticate"===n.toLowerCase()&&(void 0===r?delete t.headers[n]:e=!0);e||(t.headers["Disable-WWW-Authenticate"]="true")}if(e.startsWith(tk)){let e=new URL(n,window.location.toString());e.searchParams.has("_summary")||(e.searchParams.set("_summary","data"),n=e.toString())}let o=Error();return window.fetch(n,t).then(async e=>{let{redirectAuthFailure:r,followRedirects:i}=await eO("@openmrs/esm-api");if(e.ok){let t=e.headers.get("location");return(i&&t&&(n===tj(tS)||204===e.status)&&tm({to:t}),204===e.status)?(e.data=null,e):e.clone().text().then(t=>{try{t&&(e.data=JSON.parse(t))}catch(e){}return e})}return(n===tj(tS)&&403===e.status||r.enabled&&r.errors.includes(e.status))&&(tw(),tm({to:r.url||e.headers.get("location")||ty}),!0!==t.rejectAuthFailure)?r.resolvePromise?Promise.resolve():new Promise(()=>{}):e.clone().text().then(t=>{let r=t;try{r=JSON.parse(t)}catch(e){}throw new tC(n,e,r,o)},()=>{throw new tC(n,e,null,o)})})}class tC extends Error{constructor(e,t,n,r){super(),tb(this,"response",void 0),tb(this,"responseBody",void 0),this.message=`Server responded with ${t.status} (${t.statusText}) for url ${e}. Check err.responseBody or network tab in dev tools for more info`,r.message=this.message,this.responseBody=n,this.response=t,this.stack=`Stacktrace for outgoing request:
13
13
  ${r.stack}
14
14
  Stacktrace for incoming response:
15
- ${this.stack}`}}let tE=O("session",{loaded:!1,session:null}),tI=0,tP=null;function tA(){return tP||(tE.getState().loaded&&tI>=Date.now()-6e4?null:tT())}function tO(e){let t=e?.includeAuthStatus??!0,n=e=>t?e:e.user;return tA()?new Promise(e=>{let t=tE.subscribe(r=>{r.loaded&&(t(),e(n(r.session)))})}):Promise.resolve(n(tE.getState().session))}function tR(){return tA(),tE}function t$(e){let t=e.locale??e.user?.userProperties?.defaultLocale;t&&t.includes("_")&&(t=t.replaceAll("_","-")),function(e){if(void 0===e||"string"!=typeof e)return!1;try{new Intl.Locale(e)}catch(e){return!1}return!0}(t)&&t!==document.documentElement.getAttribute("lang")&&document.documentElement.setAttribute("lang",t)}function tT(e,t){tI=Date.now();let n={};e&&t&&(n.Authorization=`Basic ${window.btoa(`${e}:${t}`)}`);let r=tF(tN(tS,{headers:n})),o=()=>{tP===r&&(tP=null)};return r.then(o,o),tP=r,r}function tM(){tE.setState({loaded:!0,session:{authenticated:!1,sessionId:""}})}function tW(e,t){var n,r;if(void 0===t)return!e;if(!e)return!0;return n=e,r=t,("string"==typeof n?!(0,W.A)(r.privileges.find(e=>n===e.display)):Array.isArray(n)?n.every(e=>!(0,W.A)(r.privileges.find(t=>e===t.display))):((0,W.A)(n)||console.error(`Could not understand privileges "${n}"`),!0))||!(0,W.A)(t.roles.find(e=>"System Developer"===e.display))}function tL(){let e,t;return new Promise(n=>{let r=r=>{r.loaded&&r.session.user&&(e=r.session.user,n(r.session.user),t&&t())};r(tE.getState()),e||(t=tE.subscribe(r))})}async function tD(){return(await tO()).sessionLocation}async function tB(e,t){return tF(tN(tS,{method:"POST",body:{sessionLocation:e},headers:{"Content-Type":"application/json"},signal:t.signal}))}async function tU(e,t,n){return n||(n=new AbortController),await tN(`${tx}/user/${e}`,{method:"POST",body:{userProperties:t},headers:{"Content-Type":"application/json"},signal:n.signal}),tT()}function tF(e){return new Promise((t,n)=>{e.then(e=>{let r;"object"==typeof e?.data?(r={loaded:!0,session:e.data},tE.setState(r),t(r)):(r={loaded:!1,session:null},tE.setState(r),n(r))}).catch(e=>{w(`Failed to fetch new session information: ${e}`);let t={loaded:!1,session:null};tE.setState(t),n(t)})})}function tH(){return"development"===window.spaEnv||"true"===localStorage.getItem("openmrs:devtools")}tE.subscribe(e=>{e.loaded&&e.session&&t$(e.session)});let tG={"webservices.rest":"2.24.0",fhir2:"1.0.0-SNAPSHOT"};function tz(){ej("@openmrs/esm-api",tv),tT()}let tV="import-map-override:",tJ="import-map-overrides-disabled",tq="import-map-overrides:change",tK=!1,tX=null,tY=null;async function tZ(){return tY??(tY=tQ().then(({map:e,complete:t})=>(t||(tY=null),e))),tY}async function tQ(){let e=document.querySelectorAll('script[type="systemjs-importmap"]'),t=[],n=!0;for(let r=0;r<e.length;r++){let o=e[r];try{if(o.src){let e=await fetch(o.src);if(!e.ok)throw Error(`Request for ${o.src} returned ${e.status} ${e.statusText}`);t.push(await e.json())}else o.textContent&&t.push(JSON.parse(o.textContent))}catch(e){n=!1,console.warn(`[import-maps] Failed to parse import map from script tag at index ${r}`,e)}}return{map:t0(t),complete:n}}function t0(e){let t={imports:{}};for(let n of e)n?.imports&&Object.assign(t.imports,n.imports);return t}function t1(){let e={};try{let t=t3();for(let n=0;n<localStorage.length;n++){let r=localStorage.key(n);if(r?.startsWith(tV)){let n=r.slice(tV.length);if(!t.includes(n)){let t=localStorage.getItem(r);t&&(e[n]=t)}}}}catch(e){console.warn("[import-maps] Failed to read import-map overrides from localStorage",e)}return{imports:e}}async function t2(){let e=await tZ();return tK?t0([e,tX??t1()]):e}async function t6(){return tZ()}async function t5(){return tK?t0([await tZ(),t1()]):tZ()}function t8(e){if(!tK)return{imports:{}};if(e){let e={};for(let t=0;t<localStorage.length;t++){let n=localStorage.key(t);if(n?.startsWith(tV)){let t=localStorage.getItem(n);t&&(e[n.slice(tV.length)]=t)}}return{imports:e}}return t1()}function t3(){if(!tK)return[];try{let e=localStorage.getItem(tJ);if(e){let t=JSON.parse(e);if(Array.isArray(t))return t}}catch{}return[]}function t4(e){return!!tK&&t3().includes(e)}function t7(e,t){if(!tK)return void console.warn("[Security] Import map overrides are disabled in production mode.");try{localStorage.setItem(tV+e,t),window.dispatchEvent(new CustomEvent(tq))}catch(e){console.warn("[import-maps] Failed to write import-map override to localStorage",e)}}function t9(e){if(!tK)return void console.warn("[Security] Import map overrides are disabled in production mode.");try{localStorage.removeItem(tV+e);let t=t3().filter(t=>t!==e);t.length>0?localStorage.setItem(tJ,JSON.stringify(t)):localStorage.removeItem(tJ),window.dispatchEvent(new CustomEvent(tq))}catch(e){console.warn("[import-maps] Failed to update import-map overrides in localStorage",e)}}function ne(){if(!tK)return void console.warn("[Security] Import map overrides are disabled in production mode.");try{let e=[];for(let t=0;t<localStorage.length;t++){let n=localStorage.key(t);n?.startsWith(tV)&&e.push(n)}e.forEach(e=>localStorage.removeItem(e)),localStorage.removeItem(tJ),window.dispatchEvent(new CustomEvent(tq))}catch(e){console.warn("[import-maps] Failed to clear import-map overrides from localStorage",e)}}function nt(e){if(!tK)return void console.warn("[Security] Import map overrides are disabled in production mode.");try{let t=t3().filter(t=>t!==e);t.length>0?localStorage.setItem(tJ,JSON.stringify(t)):localStorage.removeItem(tJ),window.dispatchEvent(new CustomEvent(tq))}catch(e){console.warn("[import-maps] Failed to update import-map overrides in localStorage",e)}}let nn=!1;function nr(){!nn&&(nn=!0,(tK="development"===window.spaEnv)&&(tX=t1()))}function no(e){return e.replace(/[\/\-@]/g,"_")}async function ni(e,t="./start",r){var o;let i,a=!r?.maxLoadingTime||r.maxLoadingTime<=0?6e5:r.maxLoadingTime;await Promise.race([na(e,r?.importMap),new Promise((t,n)=>{i=setTimeout(()=>{var t;n(Error(`Could not resolve requested script, ${e}, within ${(t=a)<1e3?`${t} milliseconds`:t<6e4?`${Math.floor(t/1e3)} seconds`:t<36e5?`${Math.floor(t/6e4)} minutes`:t<864e5?`${Math.floor(t/36e5)} hours`:`${Math.floor(t/864e5)} days`}.`))},a)})]),i&&clearTimeout(i);let s=no(e),l=window[s];if(!("object"==typeof(o=l)&&null!==o&&"init"in o&&"function"==typeof o.init&&"get"in o&&"function"==typeof o.get)){let e=`The global variable ${s} does not refer to a federated module`;throw console.error(e),Error(e)}l.init(n.S.default);let c=(await l.get(t))();if("object"!=typeof c||null===c){let t=`Container for ${e} did not return an ESM module as expected`;throw console.error(t),Error(t)}return c}async function na(e,t){if("string"!=typeof e||0===e.trim().length){let e="Attempted to call importDynamic() without supplying a package to load";throw console.error(e),Error(e)}let n=no(e);if(!window[n]){let n=t??await ns();if(!n.imports.hasOwnProperty(e)){let t=`Could not find the package ${e} defined in the current importmap`;throw console.error(t),Error(t)}let r=n.imports[e];r.startsWith("./")&&(r=window.spaBase+r.substring(1));let o=e in t8().imports;try{return await function(e){var t;let n=(t=window)[nl]??(t[nl]=new Map),r=n.get(e);if(r)return r;if(document.head.querySelector(`script[src="${e}"]`))return console.warn(`Script at ${e} already loaded. Not loading it again.`),Promise.resolve();let o=document.createElement("script");o.src=e,o.type="text/javascript",o.async=!0;let i=new Promise((t,r)=>{let i=setTimeout(()=>{console.error(`The script at ${e} did not load within 5 seconds. This may indicate an issue with the imports in the script's entry-point file or with the script's bundler configuration.`)},5e3);function a(){clearTimeout(i),o.removeEventListener("load",s),o.removeEventListener("error",l)}function s(){a(),t()}function l(t){a(),n.delete(e),o.remove();let i=`Failed to load script from ${e}`;console.error(i,t),r(t.message??i)}o.addEventListener("load",s),o.addEventListener("error",l),document.head.appendChild(o)});return n.set(e,i),i}(r)}catch(e){return o&&m({kind:"error",title:tc("scriptLoadingFailed","Error: Script failed to load"),description:tc("scriptLoadingError","Failed to load overridden script from {{- url}}. Please check that the bundled script is available at the expected URL. Click the button below to reset all import map overrides.",{url:r}),actionButtonLabel:tc("resetOverrides","Reset overrides"),onActionButtonClick(){ne(),window.location.reload()}}),Promise.reject(e)}}return Promise.resolve()}async function ns(){return t2()}let nl=Symbol.for("__openmrs_script_loading");function nc(e){return!!e&&"object"==typeof e&&!(Object.hasOwn(e,"pages")&&(!e.pages||!Array.isArray(e.pages))||Object.hasOwn(e,"extensions")&&(!e.extensions||!Array.isArray(e.extensions))||Object.hasOwn(e,"workspaces")&&(!e.workspaces||!Array.isArray(e.workspaces))||Object.hasOwn(e,"modals")&&(!e.modals||!Array.isArray(e.modals)))}function nu(e){return!!e&&"object"==typeof e&&"routes"in e&&!!e.routes&&"object"==typeof e.routes&&Object.entries(e.routes).every(([e,t])=>"string"==typeof e&&nc(t))}let nd="openmrs-routes:",nm="openmrs-routes:change",np=!1,nf=null,ng=null;async function nh(){return ng??(ng=n_().then(({map:e,complete:t})=>(t||(ng=null),e))),ng}async function n_(){let e=document.querySelectorAll("script[type='openmrs-routes']"),t=[],n=!0;for(let r=0;r<e.length;r++){let o=e[r];try{let e;if(o.src){let t=await fetch(o.src);if(!t.ok)throw Error(`Request for ${o.src} returned ${t.status} ${t.statusText}`);e=await t.json()}else o.textContent&&(e=JSON.parse(o.textContent));e&&nu(e)&&t.push(e)}catch(e){n=!1,console.warn(`[route-maps] Failed to parse routes from script tag at index ${r}`,e)}}return{map:nw(t),complete:n}}function nw(e){let t={routes:{}};for(let n of e)n&&"object"==typeof n&&!Array.isArray(n)&&(Object.assign(t.routes,n.routes),void 0===t.version&&void 0!==n.version&&(t.version=n.version));return t}async function ny(){let e={version:void 0,routes:{}};try{let t=[];for(let e=0;e<localStorage.length;e++){let n=localStorage.key(e);if(n?.startsWith(nd)){let e=localStorage.getItem(n);e&&t.push({moduleName:n.slice(nd.length),raw:e})}}for(let n of(await Promise.allSettled(t.map(async({moduleName:e,raw:t})=>{let n=JSON.parse(t);if(nc(n))return{moduleName:e,routes:n};if("string"==typeof n&&n.startsWith("http")){let t=await fetch(n),r=await t.json();if(nc(r))return{moduleName:e,routes:r};throw Error(`${n} did not resolve to a valid OpenmrsAppRoutes object`)}throw Error(`Override for ${e} is neither a valid routes object nor a URL`)}))))"fulfilled"===n.status?e.routes[n.value.moduleName]=n.value.routes:console.warn("[route-maps] Failed to load route override",n.reason)}catch(e){console.warn("[route-maps] Failed to read route overrides from localStorage",e)}return e}async function nv(){let e=await nh();return np?nw([e,nf??await ny()]):e}async function nb(){return nh()}async function nx(){return np?nw([await nh(),await ny()]):nh()}function nk(){if(!np)return{};let e={};try{for(let t=0;t<localStorage.length;t++){let n=localStorage.key(t);if(n?.startsWith(nd)){let t=localStorage.getItem(n);t&&(e[n.slice(nd.length)]=t)}}}catch(e){console.warn("[route-maps] Failed to read route overrides from localStorage",e)}return e}function nS(e,t){if(!np)return void console.warn("[Security] Route overrides are disabled outside development mode.");try{if("string"==typeof t)if(t.startsWith("http"))localStorage.setItem(nd+e,JSON.stringify(t));else{let n=JSON.parse(t);if(!nc(n))return void console.error(`The supplied routes for ${e} is not a valid OpenmrsAppRoutes object`,t);localStorage.setItem(nd+e,JSON.stringify(n))}else if(t instanceof URL)localStorage.setItem(nd+e,JSON.stringify(t.toString()));else{if(!nc(t))return void console.error(`Override for ${e} is not in a valid format. Expected either a Javascript Object, a JSON string of a Javascript object, or a URL`,t);localStorage.setItem(nd+e,JSON.stringify(t))}window.dispatchEvent(new CustomEvent(nm))}catch(e){console.warn("[route-maps] Failed to write route override to localStorage",e)}}function nj(e){if(!np)return void console.warn("[Security] Route overrides are disabled outside development mode.");try{localStorage.removeItem(nd+e),window.dispatchEvent(new CustomEvent(nm))}catch(e){console.warn("[route-maps] Failed to remove route override from localStorage",e)}}function nN(){if(!np)return void console.warn("[Security] Route overrides are disabled outside development mode.");try{let e=[];for(let t=0;t<localStorage.length;t++){let n=localStorage.key(t);n?.startsWith(nd)&&e.push(n)}e.forEach(e=>localStorage.removeItem(e)),window.dispatchEvent(new CustomEvent(nm))}catch(e){console.warn("[route-maps] Failed to clear route overrides from localStorage",e)}}let nC=null;function nE(){return nC||(nC=(np="development"===window.spaEnv)?ny().then(e=>{nf=e}):Promise.resolve())}let nI=`${tx}/attachment`;function nP(e,t){return tN(`${nI}/${e}`,{signal:t.signal})}function nA(e,t,n,r){return tN(nO(e,t,r),{signal:n.signal})}function nO(e,t,n){return n?`${nI}?patient=${e}&encounter=${n}`:`${nI}?patient=${e}&includeEncounterless=${t}`}async function nR(e,t,n){let r=new FormData;return r.append("fileCaption",t.fileDescription),r.append("patient",e),n&&r.append("encounter",n),t.file?r.append("file",t.file,t.fileName):(r.append("file",new File([""],t.fileName),t.fileName),r.append("base64Content",t.base64Content)),tN(`${nI}`,{method:"POST",body:r})}function n$(e,t){return tN(`${nI}/${e}`,{method:"DELETE",signal:t.signal})}async function nT(e,t){return e?(await tN(`${tk}/Patient/${e}`,t)).data:null}function nM(e,t){let n=new CustomEvent(`openmrs:${e}`,{detail:t??void 0,cancelable:!0,bubbles:!0});return window.dispatchEvent(n)}function nW(e,t){let n=e=>{t("detail"in e&&null!==e.detail?e.detail:void 0)};return window.addEventListener(`openmrs:${e}`,n),()=>{window.removeEventListener(`openmrs:${e}`,n)}}function nL(e){return{uuid:e.uuid,display:e.display}}function nD(e=null,t=null){let n=new URLSearchParams;e&&n.set("tag",e),t&&n.set("q",t);let r=n.toString();return tN(`${tx}/location${r?"?"+r:""}`).then(e=>e.data.results.map(nL))}function nB(e){return{uuid:e.uuid,display:e.display,name:e.name}}let nU=`${tx}/visittype`;function nF(e=nU){return tN(e).then(e=>e.data.results.map(nB))}var nH=((k={}).NEWVISIT="startVisit",k.EDITVISIT="editVisit",k.LOADING="loadingVisit",k),nG=((S={}).NOTSTARTED="notStarted",S.ONGOING="ongoing",S);let nz="custom:(uuid,display,voided,indication,startDatetime,stopDatetime,encounters:(uuid,display,encounterDatetime,form:(uuid,name),location:ref,encounterType:ref,encounterProviders:(uuid,display,provider:(uuid,display))),patient:(uuid,display),visitType:(uuid,name,display),attributes:(uuid,display,attributeType:(name,datatypeClassname,uuid),value),location:(uuid,name,display))",nV=function(){try{return JSON.parse(sessionStorage.getItem("openmrs:visitStoreState")||"null")}catch(e){return null}}()||{patientUuid:null,manuallySetVisitUuid:null};function nJ(){return $("visit",nV)}function nq(e,t){nJ().setState({patientUuid:e,manuallySetVisitUuid:t})}function nK(e,t){return tN(`${tx}/visit`,{signal:t.signal,method:"POST",headers:{"Content-type":"application/json"},body:e})}function nX(e,t,n){return tN(`${tx}/visit/${e}`,{signal:n.signal,method:"POST",headers:{"Content-type":"application/json"},body:t})}function nY(e,t,n){return tN(`${tx}/visit?patient=${e}&v=${n??nz}`,{signal:t.signal,method:"GET",headers:{"Content-type":"application/json"}})}nJ().subscribe(e=>{var t;t=e,sessionStorage.setItem("openmrs:visitStoreState",JSON.stringify(t))});var nZ=n(9225),nQ=n(6881),n0=n(6828),n1=n(1956),n2=n(3635),n6=n(7839),n5=n(2298);let n8={Array,Boolean,Symbol,Infinity,NaN,Math,Number,BigInt,String,RegExp,JSON,isFinite,isNaN,parseFloat,parseInt,decodeURI,encodeURI,encodeURIComponent,Object:{__proto__:void 0,assign:Object.assign.bind(null),fromEntries:Object.fromEntries.bind(null),hasOwn:Object.hasOwn.bind(null),keys:Object.keys.bind(null),is:Object.is.bind(null),values:Object.values.bind(null)}},n3={...n8,Promise};function n4(e,t={}){return rr(e,t,ra)}async function n7(e,t={}){return ro(e,t,ra)}function n9(e,t={}){return rr(e,t,rs)}function re(e,t={}){return ro(e,t,rs)}function rt(e,t={}){return rr(e,t,rl)}function rn(e,t={}){return ro(e,t,rl)}function rr(e,t={},n){if("string"!=typeof e&&("object"!=typeof e||!e||!("type"in e)))throw`Unknown expression type ${e}. Expressions must either be a string or pre-compiled string.`;if("string"==typeof e&&0===e.trim().length)throw{type:"Empty expression",message:"Expression cannot be an empty string"};null==t&&(t={});let r=rp(t,n8),o=rc("string"==typeof e?(0,nZ.A)(e):e,r);if(n(o))return o;throw{type:"Invalid result",message:"string"==typeof e?`The expression ${e} did not produce a valid result`:"The expression did not produce a valid result"}}async function ro(e,t={},n){if("string"!=typeof e&&("object"!=typeof e||!e||!("type"in e)))return Promise.reject(`Unknown expression type ${e}. Expressions must either be a string or pre-compiled string.`);if("string"==typeof e&&0===e.trim().length)throw{type:"Empty expression",message:"Expression cannot be an empty string"};null==t&&(t={});let r=rp(t,n3);return Promise.resolve(rc("string"==typeof e?(0,nZ.A)(e):e,r)).then(t=>{if(n(t))return t;throw{type:"Invalid result",message:"string"==typeof e?`The expression ${e} did not produce a valid result`:"The expression did not produce a valid result"}})}function ri(e){return(0,nZ.A)(e)}function ra(e){return"string"==typeof e||"number"==typeof e||"boolean"==typeof e||null==e||e instanceof Date}function rs(e){return"boolean"==typeof e}function rl(e){return"number"==typeof e}function rc(e,t){switch(e.type){case"UnaryExpression":var n,r,o,i,a,s,l,c,u,d,m,p,f,g=e,h=t;let _=rc(g.argument,h);switch(g.operator){case"+":return+_;case"-":return-_;case"~":return~_;case"!":return!_;default:throw`Expression evaluator does not support operator '${g.operator}''`}case"BinaryExpression":var w=e,y=t;switch(w.operator){case"&&":return rc(w.left,y)&&rc(w.right,y);case"||":return rc(w.left,y)||rc(w.right,y);case"??":return rc(w.left,y)??rc(w.right,y)}let v=rc(w.left,y),b=rc(w.right,y);switch(w.operator){case"+":return v+b;case"-":return v-b;case"*":return v*b;case"/":return v/b;case"%":return v%b;case"**":return v**b;case"==":return v==b;case"===":return v===b;case"!=":return v!=b;case"!==":return v!==b;case">":return v>b;case">=":return v>=b;case"<":return v<b;case"<=":return v<=b;case"in":return v in b;default:throw`Expression evaluator does not support operator '${w.operator}' operator`}case"ConditionalExpression":return n=e,r=t,rc(n.test,r)?rc(n.consequent,r):rc(n.alternate,r);case"CallExpression":return rh(rd(e,t));case"ArrowFunctionExpression":let x;return o=e,i=t,x=o.params?.map(e=>{if("Identifier"===e.type)return e.name;throw`Cannot handle parameter of type ${e.type}`})??[],(function(...e){if(e.length<x.length)throw`Required argument(s) ${x.slice(e.length,-1).join(", ")} were not provided`;let t=Object.fromEntries(x.reduce((t,n,r)=>{let o=e[r];return function e(t){if("string"==typeof t||"number"==typeof t||"boolean"==typeof t||"function"==typeof t||null===t||t instanceof RegExp)return!0;if("object"==typeof t){for(let n of Object.keys(t))if(!e(t[n]))return!1;return!0}if(Array.isArray(t)){for(let n of t)if(!e(n))break}return!1}(o)&&t.push([n,o]),t},[]));return rc(o.body,i.addVariables(t))}).bind(null);case"MemberExpression":return rh(rm(e,t));case"ArrayExpression":return a=e,s=t,a.elements?.map(r_(s));case"SequenceExpression":let k;return l=e,c=t,(k=l.expressions.map(r_(c)))[k.length-1];case"NewExpression":var S=e,j=t;if(S.callee&&"Identifier"===S.callee.type){let e=S.arguments?.map(r_(j));switch(S.callee.name){case"Date":return new Date(...e);case"RegExp":return new RegExp(...e);default:throw`Cannot instantiate object of type ${S.callee.name}`}}if(S.callee)throw"new must be called with either Date or RegExp";throw'Could not handle "new" without a specified class';case"Literal":return e.value;case"Identifier":return u=e,d=t,(rw(u.name),d.variables&&Object.hasOwn(d.variables,u.name))?d.variables[u.name]:Object.hasOwn(d.globals,u.name)?d.globals[u.name]:void 0;case"TemplateLiteral":let N,C;return m=e,p=t,N=m.expressions?.map(r_(p))??[],(C=m.quasis?.map(r_(p))??[]).filter(e=>!e.tail).map(e=>e.value).join("")+N.join("")+C.filter(e=>e.tail).map(e=>e.value).join("");case"TemplateElement":return{value:(f=e).cooked,tail:f.tail};default:throw`Expression evaluator does not support expression of type '${e.type}'`}}function ru(e,t){switch(e.type){case"Literal":return e.value;case"Identifier":return e.name;case"MemberExpression":return ru(e.property,t);default:throw`VisitExpressionName does not support expression of type '${e.type}'`}}function rd(e,t){let n=rg(e.callee,t);if(n===rf||e.optional&&null==n)return rf;let r=e.arguments?.map(r_(t));if(n){if("function"!=typeof n)throw`${rb(e.callee)} is not a function`}else throw`No function named ${rb(e.callee)} is defined in this context`;return n(...r)}function rm(e,t){let n=rg(e.object,t);if(n===rf||e.optional&&null==n)return rf;if(null===n)throw TypeError(`TypeError: cannot read properties of null (reading '${rv(e.property,t)}')`);if(void 0===n)switch(e.object.type){case"Identifier":{let n=ru(e.object,t);throw ReferenceError(`ReferenceError: ${n} is not defined`)}case"MemberExpression":throw TypeError(`TypeError: cannot read properties of undefined (reading '${rv(e.property,t)}')`);default:throw`VisitMemberExpression does not support operator '${e.object.type}' type`}if("object"!=typeof n&&"function"!=typeof n&&"string"!=typeof n&&"number"!=typeof n)throw`VisitMemberExpression does not support member access on type ${typeof n}`;let r=e.computed?function(e){if(void 0===e)throw{type:"Illegal property access",message:"No property was supplied to the property access"};if("string"!=typeof e&&"number"!=typeof e)throw{type:"Illegal property access",message:`Cannot use a value of type ${null===e?"null":typeof e} as a property name`};return e}(rc(e.property,t)):function(e){if("Identifier"!==e.type)throw`VisitMemberExpression does not support a property of type '${e.type}'`;return e.name}(e.property);rw(r),function(e,t){if(ry.has(String(t)))return;let n=Object(e);for(;null!==n;){if(Object.hasOwn(n,t)){if(n===Object.prototype||n===Function.prototype)throw{type:"Illegal property access",message:`Cannot access the ${t} property of objects`};return}n=Object.getPrototypeOf(n)}}(n,r);let o=n[r];return"function"==typeof o?o.bind(n):o}function rp(e,t){let n={variables:{...e},globals:{...t},addVariables(e){return this.variables={...this.variables,...e},this}};return n.addVariables.bind(n),n}nZ.A.plugins.register(nQ.A),nZ.A.plugins.register(n0.A),nZ.A.plugins.register(n1.A),nZ.A.plugins.register(n2.A),nZ.A.plugins.register(n6.A),nZ.A.plugins.register(n5.A),nZ.A.addBinaryOp("in",7),nZ.A.addBinaryOp("??",1);let rf=Symbol("optional chain short-circuited");function rg(e,t){switch(e.type){case"MemberExpression":return rm(e,t);case"CallExpression":return rd(e,t);default:return rc(e,t)}}function rh(e){return e===rf?void 0:e}function r_(e){return function(t){return null===t?null:rc(t,e)}}function rw(e){if("__proto__"===e||"prototype"===e||"constructor"===e)throw{type:"Illegal property access",message:`Cannot access the ${e} property of objects`}}let ry=new Set(["toString","valueOf","hasOwnProperty"]);function rv(e,t){try{return ru(e,t)}catch{return"<computed>"}}function rb(e){return e?"MemberExpression"===e.type?e.property?.name:e.name:null}function rx(e){if("string"!=typeof e&&("object"!=typeof e||!e||!("type"in e)))throw`Unknown expression type ${e}. Expressions must either be a string or pre-compiled string.`;let t={globals:{...n3},isLocalExpression:!1,variables:new Set};return rk("string"==typeof e?(0,nZ.A)(e):e,t),[...t.variables]}function rk(e,t){switch(e.type){case"UnaryExpression":return r=e,o=t,rk(r.argument,o);case"BinaryExpression":return i=e,a=t,[rk(i.left,a),rk(i.right,a)].filter(Boolean);case"ConditionalExpression":return s=e,l=t,[rk(s.consequent,l),rk(s.test,l),rk(s.alternate,l)].filter(Boolean);case"CallExpression":let n;return c=e,u=t,n=rk(c.callee,u),c.arguments?.map(rS(u)),n;case"ArrowFunctionExpression":var r,o,i,a,s,l,c,u,d,m,p,f,g,h,_,w,y=e,v=t;let b={...v};b.isLocalExpression=!0;let x=y.params?.map(rS(b))??[],k=rk(y.body,b)??[];if(k&&Array.isArray(k))for(let e of k)x.includes(e)||v.variables.add(e);return;case"MemberExpression":var S=e,j=t;if(rk(S.object,j),S.computed)return void rk(S.property,j);let N={...j};N.isLocalExpression=!0,rk(S.property,N);return;case"ArrayExpression":return d=e,m=t,void d.elements?.map(rS(m));case"SequenceExpression":return p=e,f=t,void p.expressions?.map(rS(f));case"NewExpression":return g=e,h=t,void g.arguments?.map(rS(h));case"Literal":case"TemplateElement":return;case"Identifier":var C=e,E=t;if(!(C.name in E.globals))if(E.isLocalExpression)return C.name;else E.variables.add(C.name);return;case"TemplateLiteral":return _=e,w=t,void(_.expressions?.map(rS(w)),_.quasis?.map(rS(w)));default:throw`Expression evaluator does not support expression of type '${e.type}'`}}function rS(e){return function(t){return null===t?null:rk(t,e)}}let rj=$("feature-flags",{flags:function(){let e={};for(let t of Object.keys(localStorage))if(t.startsWith("openmrs:feature-flag:")){let n=t.replace("openmrs:feature-flag:",""),r=JSON.parse(localStorage.getItem(`openmrs:feature-flag-meta:${n}`)||"{}");e[n]={enabled:"true"===localStorage.getItem(t),...r}}return e}()});function rN(e,t,n){rj.setState(r=>({flags:{...r.flags,[e]:{enabled:r.flags[e]?.enabled??!1,label:t,description:n}}}))}function rC(){let e=rj.getState().flags;Object.keys(localStorage).filter(e=>e.startsWith("openmrs:feature-flag:")).forEach(t=>{let n=t.replace("openmrs:feature-flag:","");e[n]||(localStorage.removeItem(t),localStorage.removeItem(`openmrs:feature-flag-meta:${n}`))})}function rE(e){return rj.getState().flags[e].enabled}function rI(e,t){rj.subscribe(n=>{t(n.flags[e].enabled)})}function rP(e,t){rj.setState(n=>({flags:{...n.flags,[e]:{...n.flags[e],enabled:t}}}))}rj.subscribe(e=>{for(let[t,n]of Object.entries(e.flags))localStorage.setItem(`openmrs:feature-flag:${t}`,n.enabled.toString()),localStorage.setItem(`openmrs:feature-flag-meta:${t}`,JSON.stringify({label:n.label,description:n.description}))});var rA=n(1216);let rO=O("extensionsInternal",{slots:{},extensions:{}}),rR=O("extensionRenderings",{renderings:new Map}),r$=()=>$("extensionsInternal",{slots:{},extensions:{}}),rT=()=>$("extensionRenderings",{renderings:new Map});function rM(e){let t=rO.getState(),n=e(t);n!==t&&rO.setState(n)}let rW=null,rL=null;function rD(){let e=rR.getState();return rW&&e===rL||(rW=new Map(e.renderings),rL=e,function(e){for(let t of(rK.clear(),e.values()))rY(t,1);rX=!0}(rW)),rW}function rB(e){rL={renderings:e},rR.setState(rL,!0)}function rU(e){let t=rD();t.has(e.renderingId)||(t.set(e.renderingId,e),rY(e,1),rB(t))}function rF(e){let t=rD(),n=t.get(e);n&&(t.delete(e),rY(n,-1),rB(t))}let rH=()=>$("extensions",{slots:{}}),rG=0,rz=new Set;function rV(e){rG++;try{return e()}finally{if(0==--rG&&rz.size>0){let e=Array.from(rz);for(let t of(rz.clear(),e))rJ(t)}}}function rJ(e){try{e()}catch(t){console.error(`The extension system's '${e.name}' recomputation failed`,t)}}function rq(e){rG>0?rz.add(e):rJ(e)}let rK=new Map,rX=!1;function rY(e,t){let n=JSON.stringify([e.slotName,e.extensionId,e.slotModuleName,e.extensionModuleName]),r=rK.get(n);if(!r){if(t<0)return;rK.set(n,{count:1,record:{slotModuleName:e.slotModuleName,extensionModuleName:e.extensionModuleName,slotName:e.slotName,extensionId:e.extensionId}}),rX=!0;return}r.count+=t,r.count<1&&(rK.delete(n),rX=!0)}function rZ(){var e,t;if(rD(),!rX)return;rX=!1;let n=Array.from(rK.values(),({record:e})=>e);n.sort(rQ),e=Q.getState().mountedExtensions,t=n,e.length===t.length&&e.every((e,n)=>0===rQ(e,t[n]))||Q.setState({mountedExtensions:n})}function rQ(e,t){return r0(e.slotName,t.slotName)||r0(e.extensionId,t.extensionId)||r0(e.slotModuleName,t.slotModuleName)||r0(e.extensionModuleName,t.extensionModuleName)}function r0(e,t){return e===t?0:e<t?-1:1}rZ(),rR.subscribe(()=>rq(rZ));let r1=r$(),r2=rH(),r6=et(),r5=eo(),r8=new Set,r3=!1;function r4(e){if(null===e)r8=null;else if(null!==r8)for(let t of e)r8.add(t);rq(r7)}function r7(){if(!r3){r3=!0;try{for(let e=1;;e++){let t=r8;if(null!==t&&0===t.size)return;r8=new Set;try{!function(e,t,n,r,o,i=null){let a=r2.getState().slots,s={},l=!1,c=Object.entries(r.flags).filter(([,{enabled:e}])=>e).map(([e])=>e);for(let[r,u]of Object.entries(e.slots)){let d=a[r];if(d&&i&&!i.has(r)){s[r]=d;continue}let{config:m}=er(t,u.name),p=function(e,t,n,r,o,i){let a=function(e,t){let n=e.add||[],r=e.remove||[],o=e.order||[],{extensions:i}=r1.getState();return[...t,...n].filter(e=>!r.includes(e)).sort((e,n)=>ol(e,o,i[ot(e)]?.order,t)-ol(n,o,i[ot(n)]?.order,t))}(n,t.slots[e].attachedIds),s=[];for(let l of a){let{config:a}=ea(r,e,l),c=es(n,e,l),u=c?(0,rA.A)({},a,c):a,d=ot(l),m=t.extensions[d];if(m){let e=u?.["Display conditions"]?.privileges??m.privileges??[];if(e&&("string"==typeof e||Array.isArray(e)&&e.length>0)&&(!i?.user||!tW(e,i.user))||m.featureFlag&&!o.includes(m.featureFlag))continue;s.push({id:l,name:d,moduleName:m.moduleName,config:u,featureFlag:m.featureFlag,meta:m.meta,displayConditionExpression:u?.["Display conditions"]?.expression||m.displayExpression})}}return s}(r,e,m,n,c,o.session);d&&d.moduleName===u.moduleName&&(0,B.A)(d.candidateExtensions,p)?s[r]=d:(s[r]={moduleName:u.moduleName,candidateExtensions:p},l=!0)}(l||Object.keys(a).length!==Object.keys(s).length)&&r2.setState({slots:s})}(r1.getState(),r6.getState(),r5.getState(),rj.getState(),tE.getState(),t)}catch(e){throw r8=null===t||null===r8?null:new Set([...t,...r8]),e}if(e>=20)return void console.error("The extension system stopped recomputing after 20 passes because something keeps invalidating slots in response to the extension store being written. Some slots are left stale until the next write.")}}finally{r3=!1}}}function r9(e,t){let n=new Set;for(let r of Object.keys(e))e[r]!==t[r]&&n.add(r);for(let r of Object.keys(t))r in e||n.add(r);return n}function oe(e,t){return{moduleName:t,name:e,attachedIds:[]}}function ot(e){let[t]=e.split("#");return t}function on(e,t){let n=ot(t);return e.extensions[n]}function or(e){return on(r1.getState(),e)}r1.subscribe((e,t)=>{r4(e.extensions!==t.extensions?null:r9(e.slots,t.slots))}),r6.subscribe((e,t)=>{r4(r9(e.slots,t.slots))}),r5.subscribe((e,t)=>{r4(r9(e.configs,t.configs))}),rj.subscribe(()=>r4(null)),tE.subscribe(()=>r4(null)),r4(null);let oo=e=>rM(t=>({...t,extensions:{...t.extensions,[e.name]:{...e}}}));function oi(e,t){rM(n=>{let r=n.slots[e];return r?{...n,slots:{...n.slots,[e]:{...r,attachedIds:[...r.attachedIds,t]}}}:{...n,slots:{...n.slots,[e]:{...oe(e),attachedIds:[t]}}}})}function oa(e,t){rM(n=>{let r=n.slots[e];return r&&r.attachedIds.includes(t)?{...n,slots:{...n.slots,[e]:{...r,attachedIds:r.attachedIds.filter(e=>e!==t)}}}:n})}function os(e){rM(t=>{let n=t.slots[e];return n?{...t,slots:{...t.slots,[e]:{...n,attachedIds:[]}}}:t})}function ol(e,t,n,r){let o=t.indexOf(e);if(-1!==o)return o;{if(void 0!==n)return 1e3+n;let t=r.indexOf(e);return -1!==t?2e3+t:3e3}}function oc(e,t){return function(e,t,n=null,r){let o;return e.filter(e=>{let i=e.displayConditionExpression;if("string"!=typeof i||0===i.trim().length)return!0;o??(o=t&&"object"==typeof t?{session:n,...t}:{session:n});try{return!!n9(i,o)}catch(t){return console.error(`Error while evaluating expression '${i}' for ${e.id}`+(r?` in ${r}`:""),t),!1}})}(ou(e),t,tE.getState().session,e)}function ou(e){return r2.getState().slots[e]?.candidateExtensions??[]}let od=(e,t)=>r1.setState(n=>{let r=n.slots[t]?.moduleName;if(r&&r!=e)return console.warn(`An extension slot with the name '${t}' already exists. Refusing to register the same slot name twice (in "registerExtensionSlot"). The existing one is from module ${r}.`),n;if(r&&r==e)return n;if(n.slots[t])return{...n,slots:{...n.slots,[t]:{...n.slots[t],moduleName:e}}};let o=oe(t,e);return{...n,slots:{...n.slots,[t]:{...o}}}}),om=()=>{r8=null,rM(()=>({slots:{},extensions:{}})),rT().setState({renderings:new Map}),r2.setState({slots:{}})},op=O("left-nav",{slotName:null,basePath:window.spaBase,mode:"normal"});function of({name:e,basePath:t,mode:n,componentContext:r,state:o}){op.setState({slotName:e,basePath:t,mode:n??"normal",componentContext:r,state:o})}function og(e){op.getState().slotName===e&&op.setState(op.getInitialState(),!0)}let oh=O("modalRegistry",{modals:{}});function o_(e){oh.setState(t=>(t.modals[e.name]=e,t))}function ow(e){let t=oh.getState().modals[e];if(!t){let n=or(e);n&&(t={name:e,load:n.load,moduleName:n.moduleName},console.warn(`Modal ${e} was registered as an extension. This is deprecated and will be removed in the future. Please register it in the "modals" section of routes.json instead of the "extensions" section.`),o_(t))}return t}let oy=O("workspaceRegistrations",{workspaces:{}}),ov=O("workspaceGroups",{workspaceGroups:{}});function ob(e){oy.setState(t=>({workspaces:{...t.workspaces,[e.name]:{...e,load:e.load,preferredWindowSize:e.preferredWindowSize??"normal",type:e.type??"form",canHide:e.canHide??!1,canMaximize:e.canMaximize??!1,width:e.width??"narrow",groups:e.groups??[]}}}))}function ox(e){ov.setState(t=>{let n=t.workspaceGroups[e.name];return n?{workspaceGroups:{...t.workspaceGroups,[e.name]:{...n,members:Array.from(new Set([...n.members,...e.members]))}}}:{workspaceGroups:{...t.workspaceGroups,[e.name]:{name:e.name,members:e.members}}}})}let ok=new Set;function oS(e){let t=oy.getState().workspaces;if(t[e])return t[e];{let t=or(e);if(t){var n;let r;return ok.has(e)||(console.warn(`The workspace '${e}' is registered as an extension. This is deprecated. Please register it in the "workspaces" section of the routes.json file.`),ok.add(e)),{name:t.name,title:(n=t,"string"==typeof(r=n?.meta?.title)?r:r&&"object"==typeof r?tl(n.moduleName,r.key,r.default):n.name),moduleName:t.moduleName,preferredWindowSize:t.meta?.screenSize??"normal",load:t.load,type:t.meta?.type??"form",canHide:t.meta?.canHide??!1,canMaximize:t.meta?.canMaximize??!1,width:t.meta?.width??"narrow",groups:t.meta?.groups??[]}}throw Error(`No workspace named '${e}' has been registered.`)}}function oj(e){let t=ov.getState().workspaceGroups;if(t[e])return t[e];throw Error(`No workspace group named '${e}' has been registered.`)}let oN=O("workspace2",{registeredGroupsByName:{},registeredWindowsByName:{},registeredWorkspacesByName:{},openedGroup:null,openedWindows:[],workspaceTitleByWorkspaceName:{},isMostRecentlyOpenedWindowHidden:!1});function oC(e){let{registeredWorkspacesByName:t,registeredWindowsByName:n}=oN.getState(),r=t[e];if(r){let t=n[r.window];if(t)return t;throw Error(`No workspace window found with name: ${r.window} for workspace: ${e}`)}throw Error(`No workspace found with name: ${e}`)}function oE(e){let{registeredGroupsByName:t,registeredWindowsByName:n}=oN.getState(),r=n[e];if(r){let n=t[r.group];if(n)return n;throw Error(`No workspace group found with name: ${r.group} for window: ${e}`)}throw Error(`No workspace window found with name: ${e}`)}function oI(e){let{openedWindows:t}=oN.getState();return t.findIndex(t=>t.openedWorkspaces.find(t=>t.workspaceName===e))}function oP(e,t){if(0==t.length)return;let{registeredGroupsByName:n}=oN.getState(),r={...n};for(let n of t){if(r[n.name])throw Error(`Cannot register workspace group ${n.name} more than once`);r[n.name]={...n,moduleName:e}}oN.setState({registeredGroupsByName:r})}function oA(e,t){if(0==t.length)return;let{registeredWindowsByName:n}=oN.getState(),r={...n};for(let n of t){if(r[n.name])throw Error(`Cannot register workspace window ${n.name} more than once`);let t={...n,moduleName:e};r[n.name]=t}oN.setState({registeredWindowsByName:r})}function oO(e,t){if(0==t.length)return;let{registeredWorkspacesByName:n}=oN.getState(),r={...n};for(let n of t){if(r[n.name])throw Error(`Cannot register workspace ${n.name} more than once`);let t={...n,moduleName:e};r[n.name]=t}oN.setState({registeredWorkspacesByName:r})}let oR=0,o$=null,oT={bootstrap:15e3,mount:15e3,unmount:15e3};function oM(e,t){if(e.timeouts)return e;let n=e.name??"parcel",r=Object.fromEntries(Object.keys(oT).filter(t=>e[t]).map(r=>{var o,i;let a,s;return[r,(o=e[r],i=oT[r],a=Array.isArray(o)?o:[o],s=e=>a.reduce((t,o,i)=>t.then(()=>{let t=o(e);return"function"==typeof t?.then&&"function"==typeof t?.catch?t:Promise.reject(Error(`Lifecycle function ${r} at array index ${i} for parcel ${n} did not return a promise`))}),Promise.resolve(void 0)),e=>{let o,a=new Promise((e,t)=>{o=setTimeout(()=>t(Error(`Lifecycle function ${r} for parcel ${n} did not settle within ${i}ms`)),i)});return Promise.race([s(e),a]).finally(()=>clearTimeout(o)).then(e=>(t(r,!1),e),e=>{throw t(r,!0),e})})]}));return{...e,...r}}async function oW(e,t){var n,r;let o,i,a,s,l,c=await (o$??(o$=new Promise((e,t)=>{(0,to.mountRootParcel)({name:"openmrs-extension-host",bootstrap:()=>Promise.resolve(),mount:t=>(e(t.mountParcel),Promise.resolve()),unmount:()=>Promise.resolve()},{domElement:document.createElement("div")}).mountPromise.catch(t)}).catch(e=>(console.error("The host parcel used to mount extensions could not be mounted. Falling back to mounting extensions as root parcels, which leaks their DOM elements.",e),to.mountRootParcel))),o$),u={...t},d=(o=u,i=!1,{retarget:e=>o={...e},release:a=()=>(function(e){for(let t of Object.keys(e))delete e[t]})(o),onSettled(e,t){switch(e){case"bootstrap":t&&a();return;case"mount":i||(i=t);return;case"unmount":(t||i)&&a();return}}});return r=c((n=d.onSettled,"function"==typeof e?()=>e().then(e=>oM(e,n)):oM(e,n)),u),s=e=>t=>e.call(r,d.retarget(t)).catch(e=>{throw"SKIP_BECAUSE_BROKEN"===r.getStatus()&&d.release(),e}),l=r.update&&s(r.update),Object.defineProperty(r,"update",{configurable:!0,enumerable:!0,get:()=>l,set:e=>{l=e&&s(e)}})}function oL(){return oD}function oD(e,t){let n,r=oW(e,t).then(e=>n=e);return{mount:()=>r.then(e=>e.mount()),unmount:()=>r.then(e=>e.unmount()),update:e=>r.then(t=>t.update?.(e)),getStatus:()=>n?.getStatus()??"LOADING_SOURCE_CODE",get loadPromise(){return r.then(e=>e.loadPromise)},get bootstrapPromise(){return r.then(e=>e.bootstrapPromise)},get mountPromise(){return r.then(e=>e.mountPromise)},get unmountPromise(){return r.then(e=>e.unmountPromise)}}}async function oB(e,t,n,r,o=e=>e,i={}){let a=ot(r),s=or(r),l=null;if(e){let c;if(!s)throw Error(`Couldn't find extension '${a}' to attach to '${t}'`);let{meta:u,moduleName:d,load:m}=s,p=oR++,f=`${t}/${r}-${p}`;e.dataset.extensionRenderingId=f;let g=e=>{try{rF(f)}catch(t){console.error(e,t)}};try{rU({renderingId:f,extensionName:a,extensionModuleName:d,extensionId:r,slotName:t,slotModuleName:n})}catch(e){throw g(`Recomputing configuration after registering '${r}' failed also failed`),e}try{c=await m()}catch(e){throw g(`Recomputing configuration after '${r}' failed to load also failed`),e}try{l=await oW(o({...c,name:`${t}/${a}-${p}`}),{...i,_meta:u,_extensionContext:{extensionId:r,extensionSlotName:t,extensionSlotModuleName:n,extensionModuleName:d,extensionMeta:u},domElement:e})}catch(e){throw g(`Recomputing configuration after '${r}' failed to mount also failed`),e}l.mountPromise.then(void 0,e=>{console.error(`Extension '${r}' in slot '${t}' failed to mount`,e),g(`Recomputing configuration after '${r}' failed to mount also failed`)}),l.unmountPromise.then(()=>g(`Recomputing configuration after unmounting '${r}' failed`),e=>{console.error(`Extension '${r}' in slot '${t}' failed to unmount`,e),g(`Recomputing configuration after '${r}' failed to unmount also failed`)})}else console.warn(`Tried to render ${r} into ${t} but no DOM element was available.`);return l}var oU=n(6925),oF=n.n(oU);let oH=(0,oU.createContext)({moduleName:"",featureName:""});function oG({to:e,templateParams:t,onBeforeNavigate:n,children:r,...o}){return(0,oU.useEffect)(()=>{o.href&&console.warn(`ConfigurableLink does not support the href prop. Use the 'to' prop instead. The provided href value is '${o.href}'`),o.onClick&&console.warn(`ConfigurableLink does not support the onClick prop. Use the 'onBeforeNavigate' prop instead. The 'to' prop of the offending link is ${e}`)},[]),oF().createElement("a",{onClick:r=>{0===r.button&&!r.ctrlKey&&!r.shiftKey&&!r.altKey&&!r.metaKey&&(r.preventDefault(),n?.(r),tm({to:e,templateParams:t})),0===r.button&&(r.ctrlKey||r.metaKey)&&n?.(r),0===r.button&&r.shiftKey&&n?.(r),1===r.button&&n?.(r)},href:tu(e,t),...o},r)}let oz=({state:e,children:t,...n})=>{let{extension:r}=(0,oU.useContext)(oH),o=(0,oU.useRef)(null),i=(0,oU.useRef)(Promise.resolve()),a=(0,oU.useRef)(!1),s=(0,oU.useRef)(!1),l=(0,oU.useRef)(e),c=(0,oU.useCallback)(e=>{if(!e)return;let t=()=>{"MOUNTED"===e.getStatus()&&e.unmount()};switch(e.getStatus()){case"MOUNTED":e.unmount();break;case"UPDATING":i.current?.then(t,t);break;default:e.mountPromise.then(t,()=>{})}},[]),u=(0,oU.useCallback)((e,t)=>{e.update&&"UNMOUNTING"!==e.getStatus()&&(i.current=Promise.all([e.mountPromise,i.current]).then(()=>{if(o.current?.getStatus()==="MOUNTED"&&o.current.update)return o.current.update({...t})}).catch(e=>{let t=o.current?.getStatus();"UNMOUNTING"!==t&&"NOT_MOUNTED"!==t&&"UNLOADING"!==t&&console.error(`The extension '${r?.extensionId}' failed to update`,e)}))},[]),d=(0,oU.useCallback)(t=>{t&&!o.current&&!s.current&&r?.extensionSlotName&&r.extensionSlotModuleName&&(s.current=!0,oB(t,r.extensionSlotName,r.extensionSlotModuleName,r.extensionId,void 0,e).then(t=>{(s.current=!1,o.current=t,a.current)?c(t):t&&l.current!==e&&u(t,l.current)},()=>{s.current=!1}))},[]);return(0,oU.useEffect)(()=>(a.current=!1,()=>{a.current=!0,c(o.current)}),[]),(0,oU.useEffect)(()=>{l.current=e,o.current&&u(o.current,e)},[e]),r?oF().createElement("div",{ref:d,"data-extension-id":r?.extensionId,style:{position:"relative"},...n}):null};function oV(e){let t=(0,oU.useRef)(e);return b(t.current,e)||(t.current=e),t.current}function oJ(e,t){"function"==typeof t&&(t=t(e));let n={};for(let[r,o]of Object.entries(t)){let t=function(...t){e.setState(e=>o(e,...t))};n[r]=t}return n}let oq=e=>e;function oK(e,t=oq,n){let r=(0,oU.useCallback)(t=>e.subscribe(t),[e]),o=(0,oU.useCallback)(()=>t(e.getState()),[e,t]),i=(0,oU.useSyncExternalStore)(r,o,o),a=(0,oU.useMemo)(()=>n?oJ(e,n):null,[e,n]);return(0,oU.useMemo)(()=>a?{...i,...a}:i,[i,a])}function oX(e,t){return oK(e,oq,t)}function oY(e){return function(t){let n=(0,oU.useCallback)(t=>e.subscribe(t),[]),r=(0,oU.useCallback)(()=>e.getState(),[]),o=(0,oU.useSyncExternalStore)(n,r,r),i=(0,oU.useMemo)(()=>t?oJ(e,t):null,[t]);return(0,oU.useMemo)(()=>i?{...o,...i}:o,[o,i])}}let oZ=[];Object.freeze(oZ);let oQ={candidateExtensions:oZ};Object.freeze(oQ);let o0=e=>{let t=(0,oU.useCallback)(t=>t.slots?.[e]??oQ,[e]);return oK(rH(),t)},o1=e=>e.session;function o2(e,t){let{candidateExtensions:n}=o0(e),r=oK(tE,o1),o=oV(t);return(0,oU.useMemo)(()=>oc(e,o),[e,o,r,n])}function o6(e,t){let{moduleName:n}=(0,oU.useContext)(oH);if(!n)throw Error("ComponentContext has not been provided. This should come from @openmrs/esm-react-utils.");return(0,oU.useEffect)(()=>{od(n,e)},[n,e]),{extensions:o2(e,t),extensionSlotName:e,extensionSlotModuleName:n}}function o5(e){return e}function o8({name:e,extensionSlotName:t,select:n=o5,children:r,state:o,style:i,...a}){if(r&&o)throw Error("Both children and state have been provided. If children are provided, the state must be passed as a prop to the `Extension` component.");let s=e??t,l=(0,oU.useRef)(null),{extensions:c,extensionSlotModuleName:u}=o6(s,o),d=(0,oU.useMemo)(()=>n(c),[n,c]),m=(0,oU.useMemo)(()=>{if("function"==typeof r&&!oF().isValidElement(r))return d.map(e=>r(e,o))},[r,d]);return oF().createElement("div",{ref:l,"data-extension-slot-name":s,"data-extension-slot-module-name":u,style:{...i,position:"relative"},...a},s&&d?.map((e,t)=>oF().createElement(oH.Provider,{key:e.id,value:{moduleName:u,featureName:"",extension:{extensionId:e.id,extensionSlotName:s,extensionSlotModuleName:u,extensionMeta:e.meta}}},m?.[t]??("function"!=typeof r?r:null)??oF().createElement(oz,{state:o}))))}var o3=n(3776),o4=n(9568),o7=n(9737),o9=n(2324),ie=n(242);let it={strictMode:!0,throwErrorsToConsole:!0,disableTranslations:!1},ir=new Map;(0,ie.y)(ir);let io={errorRetryCount:3,fetcher:tN,focusThrottleInterval:18e5,revalidateIfStale:!0,revalidateOnFocus:!1,revalidateOnReconnect:!1,refreshInterval:0,shouldRetryOnError:e=>{if(e instanceof tC){let t=e.response.status;return!!(t>=500)||401===t||403===t||429===t}return!0},provider:()=>ir};function ii(e){if("object"!=typeof e||"string"!=typeof e.featureName||"string"!=typeof e.moduleName)throw Error("Invalid options");let t=Object.assign({},it,e),n={...io,...t.swrConfig};return function(e){var r,o,i,a,s;return i=o=class extends(r=oF().Component){componentDidCatch(e,n){n&&n.componentStack&&(e.extra=Object.assign(e.extra||{},{componentStack:n.componentStack})),t.throwErrorsToConsole&&setTimeout(()=>{throw e}),this.setState({caughtError:e,caughtErrorInfo:n})}render(){if(this.state.caughtError)return oF().createElement("div",null,"An error has occurred. Please try reloading the page.");{let r=oF().createElement(oU.Suspense,{fallback:null},oF().createElement(o9.S,{value:n},oF().createElement(oH.Provider,{value:this.state.config},t.disableTranslations?oF().createElement(e,this.props):oF().createElement(o7.I18nextProvider,{i18n:window.i18next,defaultNS:this.state.config.extension?`${this.state.config.moduleName}___${this.state.config.extension.extensionSlotName}___${this.state.config.extension.extensionId}`:this.state.config.moduleName},oF().createElement(e,this.props)))));return t.strictMode&&oF().StrictMode?oF().createElement(oF().StrictMode,null,r):r}}constructor(e){super(e),this.state={caughtError:null,caughtErrorInfo:null,config:{moduleName:t.moduleName,featureName:t.featureName,extension:e._extensionContext}}}},a="displayName",s=`OpenmrsReactComponent(${t.featureName})`,a in i?Object.defineProperty(i,a,{value:s,enumerable:!0,configurable:!0,writable:!0}):i[a]=s,o}}function ia(e,t){return(0,o4.A)({React:oF(),ReactDOMClient:o3,rootComponent:ii(t)(e)})}function is(e,t){return()=>e().then(({default:e})=>ia(e,t))}function il(e,t){return()=>Promise.resolve(ia(e,t))}let ic=is,iu=(0,N.y)()(()=>({}));R("openmrs-app-context",iu);let id={};function im(e,t=e=>e){let n=iu.getState();return e in n?Object.freeze(Object.assign({},t?t(n[e]):n[e])):null}function ip(e,t){iu.setState(n=>(e in n||(n[e]={}),n[e]=t(n[e]),Object.assign({},n)))}function ig(e){return null===e?null:Object.freeze(Object.assign({},e))}let ih=new Map;function i_(e,t){let n=(0,oU.useRef)(t??{}),r=(0,oU.useRef)(t=>ip(e,t)),o=(0,oU.useRef)(Symbol());return(0,oU.useEffect)(()=>{let n=t??{},r=o.current;return null===im(e)?!function(e,t=id){iu.setState(n=>{if(e in n)throw Error(`Attempted to re-register namespace ${e} in the app context. Each namespace must be unregistered before the name can be registered again.`);return Object.assign({},n,{[e]:t===id?{}:t})})}(e,n):(console.warn(`Namespace ${e} is already registered in the app context. This is likely a race condition during navigation, but may indicate two components are trying to own the same namespace. Updating the existing context.`),ip(e,()=>n)),ih.set(e,r),()=>{ih.get(e)===r&&(iu.setState(t=>(e in t&&delete t[e],t)),ih.delete(e))}},[e]),(0,oU.useEffect)(()=>{let r=t??{};b(n.current,r)||(ip(e,()=>r),n.current=r)},[t]),r.current}function iw({namespace:e,value:t}){return i_(e,t),null}let iy=({children:e,value:t,fallback:n})=>t?oF().createElement(oF().Fragment,null,e):n?oF().createElement(oF().Fragment,null,n):null;function iv(){let e=(0,oU.useRef)();return(!e.current||e.current.signal.aborted)&&(e.current=new AbortController),(0,oU.useEffect)(()=>{let t=e.current;return()=>t?.abort()},[]),e.current}function ib(e,t=e=>e??{}){let[n,r]=(0,oU.useState)(()=>{if(ix(e))return;let n=im(e);if(null!==n)return t?t(n):n});return(0,oU.useEffect)(()=>{if(ix(e))throw Error(`The namespace supplied to useAppContext must be a non-empty string, but was "${e}".`)},[e]),(0,oU.useEffect)(()=>{var n;let o;return(n=e=>{if(null==e)return void r(void 0);let n=t?t(e):e;r(e=>b(e,n)?e:n)})(ig(o=im(e))),iu.subscribe(t=>{let r=e in t?t[e]:null;r!==o&&(o=r,n(ig(r)))})},[e,t]),n}function ix(e){return"string"!=typeof e||0===e.trim().length}function ik(e){let t=o2(e);return(0,oU.useMemo)(()=>t.map(e=>e.id),[t])}function iS(e){return o0(e).candidateExtensions}function ij(e,t,n){let{data:r,error:o,mutate:i,isLoading:a,isValidating:s}=(0,o9.u)(e?nO(e,t,n):null,tN);return(0,oU.useMemo)(()=>({isLoading:a,data:r?.data.results??[],error:o,mutate:i,isValidating:s}),[r,o,a,s,i])}function iN(e){(0,oU.useEffect)(()=>{if(e){let e=window.getComputedStyle(document.body).overflow;return document.body.style.overflow="hidden",()=>{document.body.style.overflow=e}}},[e])}let iC={},iE=`No ComponentContext has been provided. This should come from "openmrsComponentDecorator".
16
- Usually this is already applied when using "getAsyncLifecycle" or "getSyncLifecycle".`;function iI(e){let{moduleName:t,extension:n}=(0,oU.useContext)(oH),r=e?.externalModuleName??t;if(!r&&!n)throw Error(iE);let o=function(e){let t=(0,oU.useMemo)(()=>ee(e),[e]),n=function(e){let[t,n]=(0,oU.useState)(()=>{let t=e.getState();return t.loaded&&t.config?t.config:null});return(0,oU.useEffect)(()=>e?.subscribe(e=>{e.loaded&&e.config&&n(e.config)}),[e]),t}(t);if(!n)throw iC[e]||(iC[e]=new Promise(e=>{let n=t.subscribe(t=>{t.loaded&&t.config&&(e(t.config),n())})})),iC[e];return n}(r),i=function(e){let t=(0,oU.useMemo)(eo,[]),n=function(e,t){let[n,r]=(0,oU.useState)(t?()=>{let n=ea(e.getState(),t.extensionSlotName,t.extensionId);if(n.loaded&&n.config)return n.config}:null);return(0,oU.useEffect)(()=>{if(t)return e.subscribe(e=>{let o=ea(e,t.extensionSlotName,t.extensionId);o.loaded&&o.config&&!(0,B.A)(o.config,n)&&r(o.config)})},[e,t,n]),n}(t,e);if(!n&&e){let n=`${e.extensionSlotName}-${e.extensionId}`;throw!iC[n]&&t&&(iC[n]=new Promise(n=>{let r=t.subscribe(t=>{let o=ea(t,e.extensionSlotName,e.extensionId);o.loaded&&o.config&&(n(o.config),r())})})),iC[n]}return n||{}}(n);return(0,oU.useMemo)(()=>e?.externalModuleName&&r===e.externalModuleName?{...o}:{...o,...i},[r,e?.externalModuleName,o,i])}let iP=o2;function iA(e,t=300){let[n,r]=(0,oU.useState)(e);return(0,oU.useEffect)(()=>{let n=setTimeout(()=>{r(e)},t);return()=>{clearTimeout(n)}},[e,t]),n}var iO=n(6269);let iR=`custom:${[["admissionDecisionConcept","ref"],["admissionEncounterType","ref"],["admissionForm","ref"],["atFacilityVisitType","ref"],["bedAssignmentEncounterType","ref"],["cancelADTRequestEncounterType","ref"],["checkInClerkEncounterRole","ref"],["checkInEncounterType","ref"],["clinicianEncounterRole","ref"],["conceptSourcesForDiagnosisSearch","ref"],["consultEncounterType","ref"],["consultFreeTextCommentsConcept","ref"],["denyAdmissionConcept","ref"],["diagnosisMetadata","ref"],["diagnosisSets","ref"],["dischargeForm","ref"],["dispositionDescriptor","ref"],["dispositions","ref"],["emrApiConceptSource","ref"],["exitFromInpatientEncounterType","ref"],["extraPatientIdentifierTypes","ref"],["fullPrivilegeLevel","ref"],["highPrivilegeLevel","ref"],["identifierTypesToSearch","ref"],["inpatientNoteEncounterType","ref"],["lastViewedPatientSizeLimit","ref"],["metadataSourceName","ref"],["motherChildRelationshipType","ref"],["narrowerThanConceptMapType","ref"],["nonDiagnosisConceptSets","ref"],["orderingProviderEncounterRole","ref"],["patientDiedConcept","ref"],["personImageDirectory","ref"],["primaryIdentifierType","ref"],["sameAsConceptMapType","ref"],["suppressedDiagnosisConcepts","ref"],["supportsAdmissionLocationTag","(uuid,display,name,links)"],["supportsLoginLocationTag","(uuid,display,name,links)"],["supportsTransferLocationTag","(uuid,display,name,links)"],["supportsVisitsLocationTag","(uuid,display,name,links)"],["telephoneAttributeType","ref"],["testPatientPersonAttributeType","ref"],["transferForm","ref"],["transferRequestEncounterType","ref"],["transferWithinHospitalEncounterType","ref"],["unknownCauseOfDeathConcept","ref"],["unknownLocation","ref"],["unknownPatientPersonAttributeType","ref"],["unknownProvider","ref"],["visitAssignmentHandlerAdjustEncounterTimeOfDayIfNecessary","ref"],["visitExpireHours","ref"],["visitNoteEncounterType","ref"]].map(([e,t])=>`${e}:${t}`).join(",")}`;function i$(){let e=`${tx}/emrapi/configuration?v=${iR}`,t=(0,iO.A)(e,tN);return(0,oU.useMemo)(()=>({emrConfiguration:t.data?.data,isLoadingEmrConfiguration:t.isLoading,mutateEmrConfiguration:t.mutate,errorFetchingEmrConfiguration:t.error}),[t])}function iT(){return(0,oU.useContext)(oH).extension}let iM=oY(r$());function iW(e){let t=o2(e);return(0,oU.useMemo)(()=>Object.fromEntries(t.map(e=>[e.name,e.meta])),[t])}let iL=oY(rH());function iD(e){let{flags:t}=oK(rj);return t[e]?.enabled??!1}function iB(){let[,e]=(0,oU.useState)(0);return(0,oU.useCallback)(()=>{e(e=>e+1)},[])}function iU(e,t,n={}){return iH(e,t,iF,n)}let iF={getPaginatedUrl:(e,t,n)=>{if(!e)return null;{let r=new URL(tj(e.toString()),window.location.toString());return r.searchParams.set("limit",""+t),r.searchParams.set("startIndex",""+n),r.searchParams.set("totalCount","true"),r.toString()}},getNextUrl:e=>{let t=e?.links?.find(e=>"next"==e.rel)?.uri;if(!t)return null;{let e=new URL(t);return e.host=window.location.host,e.protocol=window.location.protocol,e.toString()}},getTotalCount:e=>e?.totalCount??NaN,getCurrentPageSize:e=>e?.results?.length??NaN,getData:e=>e?.results};function iH(e,t,n,r={}){let{getPaginatedUrl:o,getTotalCount:i,getCurrentPageSize:a,getData:s}=n,{immutable:l,swrConfig:c}=r,u=r.fetcher??tN,[d,m]=(0,oU.useState)(1),p=(0,oU.useRef)(NaN),f=(0,oU.useRef)(NaN),g=(0,oU.useRef)(d),h=(0,oU.useRef)(!1),_=(0,oU.useRef)(!1),w=e?.toString()??"",[y,v]=(0,oU.useState)(w);w!==y&&(v(w),m(1),g.current=1,p.current=NaN,f.current=NaN,h.current=!1,_.current=!1);let b=(d-1)*t,x=(0,oU.useMemo)(()=>o(e,t,b),[e,t,b]),{data:k,...S}=(l?iO.A:o9.u)(x,u,c);k?.data&&(p.current=i(k?.data),f.current=a(k?.data),h.current=!0);let j=Math.ceil(p.current/t),N=(0,oU.useCallback)(e=>{if(!Number.isInteger(e)||e<1)return void console.warn(`useServerPagination: ignoring goTo(${e}); page must be a positive integer.`);let n=Math.ceil(p.current/t);!h.current||Number.isNaN(n)||e<=n?(g.current=e,m(e)):console.warn("Invalid attempt to go to out of bounds page: "+e)},[t]);(0,oU.useEffect)(()=>{if(!h.current)return;if(Number.isNaN(p.current)){_.current||(_.current=!0,console.warn(`useServerPagination: ${w} returned no total count, so out-of-range pages cannot be detected.`));return}let e=Math.max(1,Math.ceil(p.current/t));d>e&&(console.warn(`Invalid attempt to go to out of bounds page: ${d}; returning to page ${e}.`),g.current=e,m(e))},[d,t,w,k]);let C=(0,oU.useCallback)(()=>{N(g.current+1)},[N]),E=(0,oU.useCallback)(()=>{N(g.current-1)},[N]);return{data:s(k?.data),totalPages:j,totalCount:p.current,currentPage:d,currentPageSize:f.current,paginated:j>1,showNextButton:d<j,showPreviousButton:d>1,goTo:N,goToNext:C,goToPrevious:E,...S}}function iG(e,t,n={}){return iH(e,t,iz(),n)}function iz(){return{getPaginatedUrl:(e,t,n)=>{if(!e)return null;{let r=new URL(tj(e.toString()),window.location.toString());return r.searchParams.set("_count",""+t),r.searchParams.set("_getpagesoffset",""+n),r.toString()}},getNextUrl:e=>{let t=e?.link?.find(e=>"next"==e.relation)?.url;if(!t)return null;{let e=new URL(t);return e.host=window.location.host,e.protocol=window.location.protocol,e.toString()}},getTotalCount:e=>e?.total??NaN,getCurrentPageSize:e=>e?.entry?.length??NaN,getData:e=>e?.entry?.map(e=>e.resource)}}var iV=n(3709);function iJ(e,t={}){return iq(e,iF,t)}function iq(e,t,n={}){let{swrInfiniteConfig:r,immutable:o}=n,{getNextUrl:i,getTotalCount:a,getData:s}=t,l=n.fetcher??tN,c=(0,oU.useCallback)((n,r)=>0==n?e?.toString()??null:t.getNextUrl(r.data),[e]),{data:u,size:d,setSize:m,...p}=(0,iV.Ay)(c,l,{...r,...o?{revalidateIfStale:!1,revalidateOnFocus:!1,revalidateOnReconnect:!1}:{}}),f=i(u?.[u.length-1].data),g=a(u?.[0]?.data);return{data:u?.flatMap(e=>s(e.data)),totalCount:g,hasMore:null!=f,loadMore:()=>{m((u?.length??0)+1)},nextUri:f,...p}}function iK(e,t={}){return iX(e,iF,t)}function iX(e,t,n={}){let r=iq(e,t,n),{hasMore:o,error:i,data:a,loadMore:s,isLoading:l,nextUri:c}=r;return((0,oU.useEffect)(()=>{o&&!i&&s()},[o,c]),n.partialData)?r:{...r,data:o||i?void 0:a,isLoading:l||o}}function iY(e,t={}){return iX(e,iz(),t)}function iZ(e,t={}){return iq(e,iz(),t)}function iQ(){let e="tablet";return document.body.classList.forEach(t=>{switch(t){case"omrs-breakpoint-lt-tablet":e="phone";break;case"omrs-breakpoint-gt-small-desktop":e="large-desktop";break;case"omrs-breakpoint-gt-tablet":e="small-desktop"}}),e}function i0(){let[e,t]=(0,oU.useState)(iQ);return(0,oU.useEffect)(()=>{let e=()=>{t(iQ())};return window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]),e}let i1=e=>"small-desktop"===e||"large-desktop"===e;function i2(e){let t=(0,oU.useContext)(oH);(0,oU.useEffect)(()=>(t&&t.moduleName&&(e.componentContext=t),of(e),()=>{og(e.name)}),[t,e])}function i6(){return oK(op)}let i5=[];function i8(e=null,t=null){let n=new URLSearchParams;e&&n.set("tag",e),t&&n.set("q",t);let r=n.toString(),{data:o}=iK(`${tx}/location${r?"?"+r:""}`,{immutable:!0});return o??i5}function i3(e,t=!0){let n=(0,oU.useRef)(null);return(0,oU.useEffect)(()=>{let r=r=>{t&&n.current&&r.target&&r.target instanceof Node&&(n.current.contains(r.target)||e(r))};return window.addEventListener("mousedown",r),window.addEventListener("touchstart",r),()=>{window.removeEventListener("mousedown",r),window.removeEventListener("touchstart",r)}},[e,t]),n}function i4(e){let t=(0,oU.useRef)();return(0,oU.useEffect)(()=>{let n=new IntersectionObserver(t=>{for(let n of t)if(n.isIntersecting)return void e()},{threshold:1});return t.current&&n.observe(t.current),()=>{t.current&&n.unobserve(t.current)}},[t.current,e]),t}function i7(e,t={}){let{abortController:n,fetchInit:r,url:o,swrConfig:i}=t,a=iv(),s=(0,oU.useMemo)(()=>r?.signal??n?.signal??a.signal,[n?.signal,r?.signal,a.signal]),l=(0,oU.useCallback)(e=>tN(function(e,t){if(t)return"function"==typeof t?t(e):t;if("string"==typeof e)return e;throw Error(`When using useOpenmrsSWR with a key that is not a string, you must provide a url() function that converts the key to a valid url. The key for this hook is ${e}.`)}(e,o),{...r,signal:s}),[s,r,o]);return(0,o9.u)(e,l,i)}function i9(e=[],t=10){let[n,r]=(0,oU.useState)(1),o=(0,oU.useMemo)(()=>"number"==typeof t&&t>0?Math.max(1,Math.ceil(e.length/t)):1,[e.length,t]);n>o&&r(o);let i=Math.min(Math.max(1,n),o),a=(0,oU.useMemo)(()=>{let n=(i-1)*t,r=(i+0)*t;return e.slice(n,r)},[e,i,t]),s=(0,oU.useCallback)(e=>{!Number.isInteger(e)||e<1?console.warn(`usePagination: ignoring goTo(${e}); page must be a positive integer.`):r(e)},[]),l=(0,oU.useCallback)(()=>{r(e=>e+1)},[]),c=(0,oU.useCallback)(()=>{r(e=>Math.max(1,e-1))},[]);return(0,oU.useMemo)(()=>({results:a,totalPages:o,currentPage:i,paginated:e.length>t,showNextButton:i<o,showPreviousButton:i>1,goTo:s,goToNext:l,goToPrevious:c}),[a,o,e.length,t,i,s,l,c])}function ae(e,t,n,r){return{pageSizes:(0,oU.useMemo)(()=>{let n=Math.ceil(t/e);return isNaN(n)&&(n=0),[...Array(n).keys()].map(t=>(t+1)*e)},[e,t]),pageItemsCount:(0,oU.useMemo)(()=>e>t?t:e*n>t?e*(n-1)+r:e*n,[e,t,n,r])}}function at(){let e=/\/patient\/([a-zA-Z0-9\-]+)\/?/.exec(location.pathname);return e&&e[1]}function an(e){let[t,n]=(0,oU.useState)(e??at()),{data:r,error:o,isValidating:i}=(0,o9.u)(t?["patient",t]:null,()=>nT(t,{}));return(0,oU.useEffect)(()=>{let e=()=>{let e=at();e!==t&&n(e)};return window.addEventListener("single-spa:routing-event",e),()=>window.removeEventListener("single-spa:routing-event",e)},[t]),(0,oU.useMemo)(()=>({isLoading:i&&!o&&!r,patient:r,patientUuid:t,error:o}),[i,o,r,t])}function ar(){let e=`${tx}/metadatamapping/termmapping?v=custom:(metadataUuid)&code=emr.primaryIdentifierType`,{data:t,error:n,isLoading:r}=(0,o9.u)(e,tN);return(0,oU.useMemo)(()=>({primaryIdentifierCode:t?.data?.results[0]?.metadataUuid,isLoading:r,error:n}),[t,n,r])}function ao(e){let{extensions:t,extensionSlotModuleName:n}=o6(e);return e?t.map(t=>({state:r})=>oF().createElement(oH.Provider,{value:{moduleName:n,featureName:"",extension:{extensionId:t.id,extensionSlotName:e,extensionSlotModuleName:n,extensionMeta:t.meta}}},oF().createElement(oz,{state:r}))):[]}function ai(){let e=(0,oU.useRef)(),[t,n]=(0,oU.useState)(null),r=null;if(!t){if(o){let e=tR().getState();e.loaded&&(r=e.session)}else o=new Promise(t=>{let n=({loaded:n,session:o})=>{n&&(t(o),r=o,e.current&&(e.current(),e.current=void 0))};n(tR().getState()),r||(e.current=tR().subscribe(n))});if(r)n(r);else throw o}(0,oU.useEffect)(()=>(e.current||(e.current=tR().subscribe(({loaded:e,session:t})=>{e&&(r=t,n(t))})),()=>{e.current&&(e.current(),e.current=void 0)}),[]);let i=t||r;if(!i)if(o)throw console.warn("useSession is in an unexpected state. Attempting to recover."),o;else throw Error("useSession is in an invalid state.");return i}let aa=({privilege:e,fallback:t,children:n})=>{let[r,o]=(0,oU.useState)(null);return((0,oU.useEffect)(()=>{let e=tR(),t=e.subscribe(({loaded:e,session:t})=>{o(e?t?.user??null:null)}),{loaded:n,session:r}=e.getState();return n&&o(r?.user??null),t},[]),r&&tW(e,r))?oF().createElement(oF().Fragment,null,n):t?oF().createElement(oF().Fragment,null,t):null};var as=n(4343),al=n.n(as),ac=n(3355);let au=new Map;function ad(){for(let e of Array.from(au.values()))e()}let am={setVisitContext:(e,t)=>null==t?{manuallySetVisitUuid:null}:{manuallySetVisitUuid:t.uuid,patientUuid:t.patient?.uuid}};function ap(e){let t=(0,oU.useId)();return(0,oU.useEffect)(()=>{if(e)return au.set(t,e),()=>{au.delete(t)}},[t,e]),{...oX(nJ(),am),mutateVisit:ad}}function af(e,t=nz){let n=(0,oU.useRef)(void 0),{patientUuid:r,manuallySetVisitUuid:o,setVisitContext:i}=ap((0,oU.useCallback)(()=>n.current?.(),[])),a=e&&r==e?o:null,s=`?patient=${e}&v=${t}&includeInactive=false`,l=`/${a}?v=${t}`,{data:c,error:u,mutate:d,isValidating:m}=(0,o9.u)(e?`${tx}/visit${s}`:null,tN),{data:p,error:f,mutate:g,isValidating:h}=(0,o9.u)(e&&a?`${tx}/visit${l}`:null,tN),_=(0,oU.useMemo)(()=>c?.data.results.find(e=>null===e.stopDatetime)??null,[c]),w=(0,oU.useMemo)(()=>a&&p?p.data:null,[p,a]),y=(0,oU.useRef)(null);(0,oU.useEffect)(()=>{!m&&_&&r===e&&null===o&&i(_),h||(y.current&&w&&y.current.uuid===w.uuid&&!y.current.stopDatetime&&w.stopDatetime&&i(null),y.current=w)},[w,o,_,m,h,r]);let v=(0,oU.useCallback)(()=>{d(),g()},[d,g]);(0,oU.useEffect)(()=>{n.current=v},[v]);let b=!!(!c||a&&!p),x=!!(a?f:u);return{error:u||f,mutate:v,isValidating:m||h,activeVisit:_,currentVisit:w,currentVisitIsRetrospective:!!a,isLoading:b&&!x}}as.extend(ac);let ag=[];function ah(){let{data:e}=(0,iO.A)(nU,nF);return e??ag}let a_=new Map;async function aw(e,t){let n=t.indexOf("#"),r=n>=0,o=r?t.substring(0,n):e,i=r?t.substring(n+1):t,a=await ni(o);return a&&Object.hasOwn(a,i)&&"function"==typeof a[i]?av(o,a).then(()=>a[i]()):(a?a&&Object.hasOwn(a,i)?console.warn(`The export ${t}, defined in ${e}'s routes.json, is not a function`):console.warn(`${o} does not define a component called "${i}", referenced in ${e}'s routes.json. This cannot be loaded.`):console.warn(`Unknown app ${o} for ${t} defined in ${e}'s routes.json`),ay)}let ay={bootstrap:()=>Promise.resolve(),mount:()=>Promise.resolve(),unmount:()=>Promise.resolve()};async function av(e,t){if(e in a_)await a_[e];else{let n=t??await ni(e);await (a_[e]=new Promise((t,r)=>{if(Object.hasOwn(n,"startupApp")){let o=n.startupApp;if("function"==typeof o)return Promise.resolve(o()).then(()=>{eC(e),t(null)}).catch(r)}eC(e),t(null)}))}}function ab(e,t){let n=t.name;if(!n)return void console.error(`An extension definition in ${e} is missing an name and thus cannot be
15
+ ${this.stack}`}}let tE=O("session",{loaded:!1,session:null}),tI=0,tA=null;function tP(){return tA||(tE.getState().loaded&&tI>=Date.now()-6e4?null:t$())}function tO(e){let t=e?.includeAuthStatus??!0,n=e=>t?e:e.user,r=tP();return r?new Promise(e=>{let t=()=>{let t=tE.getState();t.loaded&&(o(),e(n(t.session)))},o=tE.subscribe(t);r.then(t,t)}):Promise.resolve(n(tE.getState().session))}function tT(){return tP(),tE}function tR(e){let t=e.locale??e.user?.userProperties?.defaultLocale;t&&t.includes("_")&&(t=t.replaceAll("_","-")),function(e){if(void 0===e||"string"!=typeof e)return!1;try{new Intl.Locale(e)}catch(e){return!1}return!0}(t)&&t!==document.documentElement.getAttribute("lang")&&document.documentElement.setAttribute("lang",t)}function t$(e,t){tI=Date.now();let n={};e&&t&&(n.Authorization=`Basic ${window.btoa(`${e}:${t}`)}`);let r=tz(tN(tS,{headers:n,rejectAuthFailure:!0})),o=()=>{tA===r&&(tA=null)};return r.then(o,o),tA=r,r}function tM(){tE.setState({loaded:!0,session:{authenticated:!1,sessionId:""}},!0)}function tW(e,t){var n,r;if(void 0===t)return!e;if(!e)return!0;return n=e,r=t,("string"==typeof n?!(0,W.A)(r.privileges.find(e=>n===e.display)):Array.isArray(n)?n.every(e=>!(0,W.A)(r.privileges.find(t=>e===t.display))):((0,W.A)(n)||console.error(`Could not understand privileges "${n}"`),!0))||!(0,W.A)(t.roles.find(e=>"System Developer"===e.display))}function tL(){let e,t;return new Promise(n=>{let r=r=>{r.loaded&&r.session.user&&(e=r.session.user,n(r.session.user),t&&t())};r(tE.getState()),e||(t=tE.subscribe(r))})}async function tD(){return(await tO()).sessionLocation}async function tB(e,t){return tz(tN(tS,{method:"POST",body:{sessionLocation:e},headers:{"Content-Type":"application/json"},rejectAuthFailure:!0,signal:t?.signal}))}async function tU(e,t){return await tN(tS,{method:"POST",body:{locale:e},headers:{"Content-Type":"application/json"},signal:t?.signal}),t$()}async function tF(e,t,n){return n||(n=new AbortController),await tN(`${tx}/user/${e}`,{method:"POST",body:{userProperties:t},headers:{"Content-Type":"application/json"},signal:n.signal}),t$()}async function tH(e,t=!1){let n=await tN(t?`${tS}?rememberMe=true`:tS,{headers:{"X-Totp-Code":e}});return n.data?.authenticated?(await t$()).session:n.data}async function tG(){try{await tN(tS,{method:"DELETE",rejectAuthFailure:!0})}catch(e){if(!tV(e))throw e}tM(),await t$().catch(()=>{})}function tz(e){return new Promise((t,n)=>{e.then(e=>{if("object"==typeof e?.data){let n={loaded:!0,session:e.data};tE.setState(n,!0),t(n)}else n(tJ(Error("The session endpoint did not respond with a session")))}).catch(e=>{if(tV(e)){var r;"object"==typeof(r=e.responseBody)&&null!==r&&!1===r.authenticated?tE.setState({loaded:!0,session:e.responseBody},!0):tM(),t(tE.getState());return}w(`Failed to fetch new session information: ${e}`),n(tJ(e))})})}function tV(e){return e instanceof tC&&(401===e.response.status||403===e.response.status)}function tJ(e){return tE.getState().loaded||tE.setState({loaded:!1,session:null,error:e instanceof Error?e:Error(String(e))},!0),tE.getState()}function tq(){return"development"===window.spaEnv||"true"===localStorage.getItem("openmrs:devtools")}tE.subscribe(e=>{e.loaded&&e.session&&tR(e.session)});let tK={"webservices.rest":"2.24.0",fhir2:"1.0.0-SNAPSHOT"};function tX(){ej("@openmrs/esm-api",tv),t$()}let tY="import-map-override:",tZ="import-map-overrides-disabled",tQ="import-map-overrides:change",t0=!1,t1=null,t2=null;async function t6(){return t2??(t2=t5().then(({map:e,complete:t})=>(t||(t2=null),e))),t2}async function t5(){let e=document.querySelectorAll('script[type="systemjs-importmap"]'),t=[],n=!0;for(let r=0;r<e.length;r++){let o=e[r];try{if(o.src){let e=await fetch(o.src);if(!e.ok)throw Error(`Request for ${o.src} returned ${e.status} ${e.statusText}`);t.push(await e.json())}else o.textContent&&t.push(JSON.parse(o.textContent))}catch(e){n=!1,console.warn(`[import-maps] Failed to parse import map from script tag at index ${r}`,e)}}return{map:t3(t),complete:n}}function t3(e){let t={imports:{}};for(let n of e)n?.imports&&Object.assign(t.imports,n.imports);return t}function t8(){let e={};try{let t=nt();for(let n=0;n<localStorage.length;n++){let r=localStorage.key(n);if(r?.startsWith(tY)){let n=r.slice(tY.length);if(!t.includes(n)){let t=localStorage.getItem(r);t&&(e[n]=t)}}}}catch(e){console.warn("[import-maps] Failed to read import-map overrides from localStorage",e)}return{imports:e}}async function t4(){let e=await t6();return t0?t3([e,t1??t8()]):e}async function t7(){return t6()}async function t9(){return t0?t3([await t6(),t8()]):t6()}function ne(e){if(!t0)return{imports:{}};if(e){let e={};for(let t=0;t<localStorage.length;t++){let n=localStorage.key(t);if(n?.startsWith(tY)){let t=localStorage.getItem(n);t&&(e[n.slice(tY.length)]=t)}}return{imports:e}}return t8()}function nt(){if(!t0)return[];try{let e=localStorage.getItem(tZ);if(e){let t=JSON.parse(e);if(Array.isArray(t))return t}}catch{}return[]}function nn(e){return!!t0&&nt().includes(e)}function nr(e,t){if(!t0)return void console.warn("[Security] Import map overrides are disabled in production mode.");try{localStorage.setItem(tY+e,t),window.dispatchEvent(new CustomEvent(tQ))}catch(e){console.warn("[import-maps] Failed to write import-map override to localStorage",e)}}function no(e){if(!t0)return void console.warn("[Security] Import map overrides are disabled in production mode.");try{localStorage.removeItem(tY+e);let t=nt().filter(t=>t!==e);t.length>0?localStorage.setItem(tZ,JSON.stringify(t)):localStorage.removeItem(tZ),window.dispatchEvent(new CustomEvent(tQ))}catch(e){console.warn("[import-maps] Failed to update import-map overrides in localStorage",e)}}function ni(){if(!t0)return void console.warn("[Security] Import map overrides are disabled in production mode.");try{let e=[];for(let t=0;t<localStorage.length;t++){let n=localStorage.key(t);n?.startsWith(tY)&&e.push(n)}e.forEach(e=>localStorage.removeItem(e)),localStorage.removeItem(tZ),window.dispatchEvent(new CustomEvent(tQ))}catch(e){console.warn("[import-maps] Failed to clear import-map overrides from localStorage",e)}}function na(e){if(!t0)return void console.warn("[Security] Import map overrides are disabled in production mode.");try{let t=nt().filter(t=>t!==e);t.length>0?localStorage.setItem(tZ,JSON.stringify(t)):localStorage.removeItem(tZ),window.dispatchEvent(new CustomEvent(tQ))}catch(e){console.warn("[import-maps] Failed to update import-map overrides in localStorage",e)}}let ns=!1;function nl(){!ns&&(ns=!0,(t0="development"===window.spaEnv)&&(t1=t8()))}function nc(e){return e.replace(/[\/\-@]/g,"_")}async function nu(e,t="./start",r){var o;let i,a=!r?.maxLoadingTime||r.maxLoadingTime<=0?6e5:r.maxLoadingTime;await Promise.race([nd(e,r?.importMap),new Promise((t,n)=>{i=setTimeout(()=>{var t;n(Error(`Could not resolve requested script, ${e}, within ${(t=a)<1e3?`${t} milliseconds`:t<6e4?`${Math.floor(t/1e3)} seconds`:t<36e5?`${Math.floor(t/6e4)} minutes`:t<864e5?`${Math.floor(t/36e5)} hours`:`${Math.floor(t/864e5)} days`}.`))},a)})]),i&&clearTimeout(i);let s=nc(e),l=window[s];if(!("object"==typeof(o=l)&&null!==o&&"init"in o&&"function"==typeof o.init&&"get"in o&&"function"==typeof o.get)){let e=`The global variable ${s} does not refer to a federated module`;throw console.error(e),Error(e)}l.init(n.S.default);let c=(await l.get(t))();if("object"!=typeof c||null===c){let t=`Container for ${e} did not return an ESM module as expected`;throw console.error(t),Error(t)}return c}async function nd(e,t){if("string"!=typeof e||0===e.trim().length){let e="Attempted to call importDynamic() without supplying a package to load";throw console.error(e),Error(e)}let n=nc(e);if(!window[n]){let n=t??await nm();if(!n.imports.hasOwnProperty(e)){let t=`Could not find the package ${e} defined in the current importmap`;throw console.error(t),Error(t)}let r=n.imports[e];r.startsWith("./")&&(r=window.spaBase+r.substring(1));let o=e in ne().imports;try{return await function(e){var t;let n=(t=window)[np]??(t[np]=new Map),r=n.get(e);if(r)return r;if(document.head.querySelector(`script[src="${e}"]`))return console.warn(`Script at ${e} already loaded. Not loading it again.`),Promise.resolve();let o=document.createElement("script");o.src=e,o.type="text/javascript",o.async=!0;let i=new Promise((t,r)=>{let i=setTimeout(()=>{console.error(`The script at ${e} did not load within 5 seconds. This may indicate an issue with the imports in the script's entry-point file or with the script's bundler configuration.`)},5e3);function a(){clearTimeout(i),o.removeEventListener("load",s),o.removeEventListener("error",l)}function s(){a(),t()}function l(t){a(),n.delete(e),o.remove();let i=`Failed to load script from ${e}`;console.error(i,t),r(t.message??i)}o.addEventListener("load",s),o.addEventListener("error",l),document.head.appendChild(o)});return n.set(e,i),i}(r)}catch(e){return o&&m({kind:"error",title:tc("scriptLoadingFailed","Error: Script failed to load"),description:tc("scriptLoadingError","Failed to load overridden script from {{- url}}. Please check that the bundled script is available at the expected URL. Click the button below to reset all import map overrides.",{url:r}),actionButtonLabel:tc("resetOverrides","Reset overrides"),onActionButtonClick(){ni(),window.location.reload()}}),Promise.reject(e)}}return Promise.resolve()}async function nm(){return t4()}let np=Symbol.for("__openmrs_script_loading");function nf(e){return!!e&&"object"==typeof e&&!(Object.hasOwn(e,"pages")&&(!e.pages||!Array.isArray(e.pages))||Object.hasOwn(e,"extensions")&&(!e.extensions||!Array.isArray(e.extensions))||Object.hasOwn(e,"workspaces")&&(!e.workspaces||!Array.isArray(e.workspaces))||Object.hasOwn(e,"modals")&&(!e.modals||!Array.isArray(e.modals)))}function ng(e){return!!e&&"object"==typeof e&&"routes"in e&&!!e.routes&&"object"==typeof e.routes&&Object.entries(e.routes).every(([e,t])=>"string"==typeof e&&nf(t))}let nh="openmrs-routes:",n_="openmrs-routes:change",nw=!1,ny=null,nv=null;async function nb(){return nv??(nv=nx().then(({map:e,complete:t})=>(t||(nv=null),e))),nv}async function nx(){let e=document.querySelectorAll("script[type='openmrs-routes']"),t=[],n=!0;for(let r=0;r<e.length;r++){let o=e[r];try{let e;if(o.src){let t=await fetch(o.src);if(!t.ok)throw Error(`Request for ${o.src} returned ${t.status} ${t.statusText}`);e=await t.json()}else o.textContent&&(e=JSON.parse(o.textContent));e&&ng(e)&&t.push(e)}catch(e){n=!1,console.warn(`[route-maps] Failed to parse routes from script tag at index ${r}`,e)}}return{map:nk(t),complete:n}}function nk(e){let t={routes:{}};for(let n of e)n&&"object"==typeof n&&!Array.isArray(n)&&(Object.assign(t.routes,n.routes),void 0===t.version&&void 0!==n.version&&(t.version=n.version));return t}async function nS(){let e={version:void 0,routes:{}};try{let t=[];for(let e=0;e<localStorage.length;e++){let n=localStorage.key(e);if(n?.startsWith(nh)){let e=localStorage.getItem(n);e&&t.push({moduleName:n.slice(nh.length),raw:e})}}for(let n of(await Promise.allSettled(t.map(async({moduleName:e,raw:t})=>{let n=JSON.parse(t);if(nf(n))return{moduleName:e,routes:n};if("string"==typeof n&&n.startsWith("http")){let t=await fetch(n),r=await t.json();if(nf(r))return{moduleName:e,routes:r};throw Error(`${n} did not resolve to a valid OpenmrsAppRoutes object`)}throw Error(`Override for ${e} is neither a valid routes object nor a URL`)}))))"fulfilled"===n.status?e.routes[n.value.moduleName]=n.value.routes:console.warn("[route-maps] Failed to load route override",n.reason)}catch(e){console.warn("[route-maps] Failed to read route overrides from localStorage",e)}return e}async function nj(){let e=await nb();return nw?nk([e,ny??await nS()]):e}async function nN(){return nb()}async function nC(){return nw?nk([await nb(),await nS()]):nb()}function nE(){if(!nw)return{};let e={};try{for(let t=0;t<localStorage.length;t++){let n=localStorage.key(t);if(n?.startsWith(nh)){let t=localStorage.getItem(n);t&&(e[n.slice(nh.length)]=t)}}}catch(e){console.warn("[route-maps] Failed to read route overrides from localStorage",e)}return e}function nI(e,t){if(!nw)return void console.warn("[Security] Route overrides are disabled outside development mode.");try{if("string"==typeof t)if(t.startsWith("http"))localStorage.setItem(nh+e,JSON.stringify(t));else{let n=JSON.parse(t);if(!nf(n))return void console.error(`The supplied routes for ${e} is not a valid OpenmrsAppRoutes object`,t);localStorage.setItem(nh+e,JSON.stringify(n))}else if(t instanceof URL)localStorage.setItem(nh+e,JSON.stringify(t.toString()));else{if(!nf(t))return void console.error(`Override for ${e} is not in a valid format. Expected either a Javascript Object, a JSON string of a Javascript object, or a URL`,t);localStorage.setItem(nh+e,JSON.stringify(t))}window.dispatchEvent(new CustomEvent(n_))}catch(e){console.warn("[route-maps] Failed to write route override to localStorage",e)}}function nA(e){if(!nw)return void console.warn("[Security] Route overrides are disabled outside development mode.");try{localStorage.removeItem(nh+e),window.dispatchEvent(new CustomEvent(n_))}catch(e){console.warn("[route-maps] Failed to remove route override from localStorage",e)}}function nP(){if(!nw)return void console.warn("[Security] Route overrides are disabled outside development mode.");try{let e=[];for(let t=0;t<localStorage.length;t++){let n=localStorage.key(t);n?.startsWith(nh)&&e.push(n)}e.forEach(e=>localStorage.removeItem(e)),window.dispatchEvent(new CustomEvent(n_))}catch(e){console.warn("[route-maps] Failed to clear route overrides from localStorage",e)}}let nO=null;function nT(){return nO||(nO=(nw="development"===window.spaEnv)?nS().then(e=>{ny=e}):Promise.resolve())}let nR=`${tx}/attachment`;function n$(e,t){return tN(`${nR}/${e}`,{signal:t.signal})}function nM(e,t,n,r){return tN(nW(e,t,r),{signal:n.signal})}function nW(e,t,n){return n?`${nR}?patient=${e}&encounter=${n}`:`${nR}?patient=${e}&includeEncounterless=${t}`}async function nL(e,t,n){let r=new FormData;return r.append("fileCaption",t.fileDescription),r.append("patient",e),n&&r.append("encounter",n),t.file?r.append("file",t.file,t.fileName):(r.append("file",new File([""],t.fileName),t.fileName),r.append("base64Content",t.base64Content)),tN(`${nR}`,{method:"POST",body:r})}function nD(e,t){return tN(`${nR}/${e}`,{method:"DELETE",signal:t.signal})}async function nB(e,t){return e?(await tN(`${tk}/Patient/${e}`,t)).data:null}function nU(e,t){let n=new CustomEvent(`openmrs:${e}`,{detail:t??void 0,cancelable:!0,bubbles:!0});return window.dispatchEvent(n)}function nF(e,t){let n=e=>{t("detail"in e&&null!==e.detail?e.detail:void 0)};return window.addEventListener(`openmrs:${e}`,n),()=>{window.removeEventListener(`openmrs:${e}`,n)}}function nH(e){return{uuid:e.uuid,display:e.display}}function nG(e=null,t=null){let n=new URLSearchParams;e&&n.set("tag",e),t&&n.set("q",t);let r=n.toString();return tN(`${tx}/location${r?"?"+r:""}`).then(e=>e.data.results.map(nH))}function nz(e){return{uuid:e.uuid,display:e.display,name:e.name}}let nV=`${tx}/visittype`;function nJ(e=nV){return tN(e).then(e=>e.data.results.map(nz))}var nq=((k={}).NEWVISIT="startVisit",k.EDITVISIT="editVisit",k.LOADING="loadingVisit",k),nK=((S={}).NOTSTARTED="notStarted",S.ONGOING="ongoing",S);let nX="custom:(uuid,display,voided,indication,startDatetime,stopDatetime,encounters:(uuid,display,encounterDatetime,form:(uuid,name),location:ref,encounterType:ref,encounterProviders:(uuid,display,provider:(uuid,display))),patient:(uuid,display),visitType:(uuid,name,display),attributes:(uuid,display,attributeType:(name,datatypeClassname,uuid),value),location:(uuid,name,display))",nY=function(){try{return JSON.parse(sessionStorage.getItem("openmrs:visitStoreState")||"null")}catch(e){return null}}()||{patientUuid:null,manuallySetVisitUuid:null};function nZ(){return R("visit",nY)}function nQ(e,t){nZ().setState({patientUuid:e,manuallySetVisitUuid:t})}function n0(e,t){return tN(`${tx}/visit`,{signal:t.signal,method:"POST",headers:{"Content-type":"application/json"},body:e})}function n1(e,t,n){return tN(`${tx}/visit/${e}`,{signal:n.signal,method:"POST",headers:{"Content-type":"application/json"},body:t})}function n2(e,t,n){return tN(`${tx}/visit?patient=${e}&v=${n??nX}`,{signal:t.signal,method:"GET",headers:{"Content-type":"application/json"}})}nZ().subscribe(e=>{var t;t=e,sessionStorage.setItem("openmrs:visitStoreState",JSON.stringify(t))});var n6=n(9225),n5=n(6881),n3=n(6828),n8=n(1956),n4=n(3635),n7=n(7839),n9=n(2298);let re={Array,Boolean,Symbol,Infinity,NaN,Math,Number,BigInt,String,RegExp,JSON,isFinite,isNaN,parseFloat,parseInt,decodeURI,encodeURI,encodeURIComponent,Object:{__proto__:void 0,assign:Object.assign.bind(null),fromEntries:Object.fromEntries.bind(null),hasOwn:Object.hasOwn.bind(null),keys:Object.keys.bind(null),is:Object.is.bind(null),values:Object.values.bind(null)}},rt={...re,Promise};function rn(e,t={}){return rl(e,t,rd)}async function rr(e,t={}){return rc(e,t,rd)}function ro(e,t={}){return rl(e,t,rm)}function ri(e,t={}){return rc(e,t,rm)}function ra(e,t={}){return rl(e,t,rp)}function rs(e,t={}){return rc(e,t,rp)}function rl(e,t={},n){if("string"!=typeof e&&("object"!=typeof e||!e||!("type"in e)))throw`Unknown expression type ${e}. Expressions must either be a string or pre-compiled string.`;if("string"==typeof e&&0===e.trim().length)throw{type:"Empty expression",message:"Expression cannot be an empty string"};null==t&&(t={});let r=rw(t,re),o=rf("string"==typeof e?(0,n6.A)(e):e,r);if(n(o))return o;throw{type:"Invalid result",message:"string"==typeof e?`The expression ${e} did not produce a valid result`:"The expression did not produce a valid result"}}async function rc(e,t={},n){if("string"!=typeof e&&("object"!=typeof e||!e||!("type"in e)))return Promise.reject(`Unknown expression type ${e}. Expressions must either be a string or pre-compiled string.`);if("string"==typeof e&&0===e.trim().length)throw{type:"Empty expression",message:"Expression cannot be an empty string"};null==t&&(t={});let r=rw(t,rt);return Promise.resolve(rf("string"==typeof e?(0,n6.A)(e):e,r)).then(t=>{if(n(t))return t;throw{type:"Invalid result",message:"string"==typeof e?`The expression ${e} did not produce a valid result`:"The expression did not produce a valid result"}})}function ru(e){return(0,n6.A)(e)}function rd(e){return"string"==typeof e||"number"==typeof e||"boolean"==typeof e||null==e||e instanceof Date}function rm(e){return"boolean"==typeof e}function rp(e){return"number"==typeof e}function rf(e,t){switch(e.type){case"UnaryExpression":var n,r,o,i,a,s,l,c,u,d,m,p,f,g=e,h=t;let _=rf(g.argument,h);switch(g.operator){case"+":return+_;case"-":return-_;case"~":return~_;case"!":return!_;default:throw`Expression evaluator does not support operator '${g.operator}''`}case"BinaryExpression":var w=e,y=t;switch(w.operator){case"&&":return rf(w.left,y)&&rf(w.right,y);case"||":return rf(w.left,y)||rf(w.right,y);case"??":return rf(w.left,y)??rf(w.right,y)}let v=rf(w.left,y),b=rf(w.right,y);switch(w.operator){case"+":return v+b;case"-":return v-b;case"*":return v*b;case"/":return v/b;case"%":return v%b;case"**":return v**b;case"==":return v==b;case"===":return v===b;case"!=":return v!=b;case"!==":return v!==b;case">":return v>b;case">=":return v>=b;case"<":return v<b;case"<=":return v<=b;case"in":return v in b;default:throw`Expression evaluator does not support operator '${w.operator}' operator`}case"ConditionalExpression":return n=e,r=t,rf(n.test,r)?rf(n.consequent,r):rf(n.alternate,r);case"CallExpression":return rb(rh(e,t));case"ArrowFunctionExpression":let x;return o=e,i=t,x=o.params?.map(e=>{if("Identifier"===e.type)return e.name;throw`Cannot handle parameter of type ${e.type}`})??[],(function(...e){if(e.length<x.length)throw`Required argument(s) ${x.slice(e.length,-1).join(", ")} were not provided`;let t=Object.fromEntries(x.reduce((t,n,r)=>{let o=e[r];return function e(t){if("string"==typeof t||"number"==typeof t||"boolean"==typeof t||"function"==typeof t||null===t||t instanceof RegExp)return!0;if("object"==typeof t){for(let n of Object.keys(t))if(!e(t[n]))return!1;return!0}if(Array.isArray(t)){for(let n of t)if(!e(n))break}return!1}(o)&&t.push([n,o]),t},[]));return rf(o.body,i.addVariables(t))}).bind(null);case"MemberExpression":return rb(r_(e,t));case"ArrayExpression":return a=e,s=t,a.elements?.map(rx(s));case"SequenceExpression":let k;return l=e,c=t,(k=l.expressions.map(rx(c)))[k.length-1];case"NewExpression":var S=e,j=t;if(S.callee&&"Identifier"===S.callee.type){let e=S.arguments?.map(rx(j));switch(S.callee.name){case"Date":return new Date(...e);case"RegExp":return new RegExp(...e);default:throw`Cannot instantiate object of type ${S.callee.name}`}}if(S.callee)throw"new must be called with either Date or RegExp";throw'Could not handle "new" without a specified class';case"Literal":return e.value;case"Identifier":return u=e,d=t,(rk(u.name),d.variables&&Object.hasOwn(d.variables,u.name))?d.variables[u.name]:Object.hasOwn(d.globals,u.name)?d.globals[u.name]:void 0;case"TemplateLiteral":let N,C;return m=e,p=t,N=m.expressions?.map(rx(p))??[],(C=m.quasis?.map(rx(p))??[]).filter(e=>!e.tail).map(e=>e.value).join("")+N.join("")+C.filter(e=>e.tail).map(e=>e.value).join("");case"TemplateElement":return{value:(f=e).cooked,tail:f.tail};default:throw`Expression evaluator does not support expression of type '${e.type}'`}}function rg(e,t){switch(e.type){case"Literal":return e.value;case"Identifier":return e.name;case"MemberExpression":return rg(e.property,t);default:throw`VisitExpressionName does not support expression of type '${e.type}'`}}function rh(e,t){let n=rv(e.callee,t);if(n===ry||e.optional&&null==n)return ry;let r=e.arguments?.map(rx(t));if(n){if("function"!=typeof n)throw`${rN(e.callee)} is not a function`}else throw`No function named ${rN(e.callee)} is defined in this context`;return n(...r)}function r_(e,t){let n=rv(e.object,t);if(n===ry||e.optional&&null==n)return ry;if(null===n)throw TypeError(`TypeError: cannot read properties of null (reading '${rj(e.property,t)}')`);if(void 0===n)switch(e.object.type){case"Identifier":{let n=rg(e.object,t);throw ReferenceError(`ReferenceError: ${n} is not defined`)}case"MemberExpression":throw TypeError(`TypeError: cannot read properties of undefined (reading '${rj(e.property,t)}')`);default:throw`VisitMemberExpression does not support operator '${e.object.type}' type`}if("object"!=typeof n&&"function"!=typeof n&&"string"!=typeof n&&"number"!=typeof n)throw`VisitMemberExpression does not support member access on type ${typeof n}`;let r=e.computed?function(e){if(void 0===e)throw{type:"Illegal property access",message:"No property was supplied to the property access"};if("string"!=typeof e&&"number"!=typeof e)throw{type:"Illegal property access",message:`Cannot use a value of type ${null===e?"null":typeof e} as a property name`};return e}(rf(e.property,t)):function(e){if("Identifier"!==e.type)throw`VisitMemberExpression does not support a property of type '${e.type}'`;return e.name}(e.property);rk(r),function(e,t){if(rS.has(String(t)))return;let n=Object(e);for(;null!==n;){if(Object.hasOwn(n,t)){if(n===Object.prototype||n===Function.prototype)throw{type:"Illegal property access",message:`Cannot access the ${t} property of objects`};return}n=Object.getPrototypeOf(n)}}(n,r);let o=n[r];return"function"==typeof o?o.bind(n):o}function rw(e,t){let n={variables:{...e},globals:{...t},addVariables(e){return this.variables={...this.variables,...e},this}};return n.addVariables.bind(n),n}n6.A.plugins.register(n5.A),n6.A.plugins.register(n3.A),n6.A.plugins.register(n8.A),n6.A.plugins.register(n4.A),n6.A.plugins.register(n7.A),n6.A.plugins.register(n9.A),n6.A.addBinaryOp("in",7),n6.A.addBinaryOp("??",1);let ry=Symbol("optional chain short-circuited");function rv(e,t){switch(e.type){case"MemberExpression":return r_(e,t);case"CallExpression":return rh(e,t);default:return rf(e,t)}}function rb(e){return e===ry?void 0:e}function rx(e){return function(t){return null===t?null:rf(t,e)}}function rk(e){if("__proto__"===e||"prototype"===e||"constructor"===e)throw{type:"Illegal property access",message:`Cannot access the ${e} property of objects`}}let rS=new Set(["toString","valueOf","hasOwnProperty"]);function rj(e,t){try{return rg(e,t)}catch{return"<computed>"}}function rN(e){return e?"MemberExpression"===e.type?e.property?.name:e.name:null}function rC(e){if("string"!=typeof e&&("object"!=typeof e||!e||!("type"in e)))throw`Unknown expression type ${e}. Expressions must either be a string or pre-compiled string.`;let t={globals:{...rt},isLocalExpression:!1,variables:new Set};return rE("string"==typeof e?(0,n6.A)(e):e,t),[...t.variables]}function rE(e,t){switch(e.type){case"UnaryExpression":return r=e,o=t,rE(r.argument,o);case"BinaryExpression":return i=e,a=t,[rE(i.left,a),rE(i.right,a)].filter(Boolean);case"ConditionalExpression":return s=e,l=t,[rE(s.consequent,l),rE(s.test,l),rE(s.alternate,l)].filter(Boolean);case"CallExpression":let n;return c=e,u=t,n=rE(c.callee,u),c.arguments?.map(rI(u)),n;case"ArrowFunctionExpression":var r,o,i,a,s,l,c,u,d,m,p,f,g,h,_,w,y=e,v=t;let b={...v};b.isLocalExpression=!0;let x=y.params?.map(rI(b))??[],k=rE(y.body,b)??[];if(k&&Array.isArray(k))for(let e of k)x.includes(e)||v.variables.add(e);return;case"MemberExpression":var S=e,j=t;if(rE(S.object,j),S.computed)return void rE(S.property,j);let N={...j};N.isLocalExpression=!0,rE(S.property,N);return;case"ArrayExpression":return d=e,m=t,void d.elements?.map(rI(m));case"SequenceExpression":return p=e,f=t,void p.expressions?.map(rI(f));case"NewExpression":return g=e,h=t,void g.arguments?.map(rI(h));case"Literal":case"TemplateElement":return;case"Identifier":var C=e,E=t;if(!(C.name in E.globals))if(E.isLocalExpression)return C.name;else E.variables.add(C.name);return;case"TemplateLiteral":return _=e,w=t,void(_.expressions?.map(rI(w)),_.quasis?.map(rI(w)));default:throw`Expression evaluator does not support expression of type '${e.type}'`}}function rI(e){return function(t){return null===t?null:rE(t,e)}}let rA=R("feature-flags",{flags:function(){let e={};for(let t of Object.keys(localStorage))if(t.startsWith("openmrs:feature-flag:")){let n=t.replace("openmrs:feature-flag:",""),r=JSON.parse(localStorage.getItem(`openmrs:feature-flag-meta:${n}`)||"{}");e[n]={enabled:"true"===localStorage.getItem(t),...r}}return e}()});function rP(e,t,n){rA.setState(r=>({flags:{...r.flags,[e]:{enabled:r.flags[e]?.enabled??!1,label:t,description:n}}}))}function rO(){let e=rA.getState().flags;Object.keys(localStorage).filter(e=>e.startsWith("openmrs:feature-flag:")).forEach(t=>{let n=t.replace("openmrs:feature-flag:","");e[n]||(localStorage.removeItem(t),localStorage.removeItem(`openmrs:feature-flag-meta:${n}`))})}function rT(e){return rA.getState().flags[e].enabled}function rR(e,t){rA.subscribe(n=>{t(n.flags[e].enabled)})}function r$(e,t){rA.setState(n=>({flags:{...n.flags,[e]:{...n.flags[e],enabled:t}}}))}rA.subscribe(e=>{for(let[t,n]of Object.entries(e.flags))localStorage.setItem(`openmrs:feature-flag:${t}`,n.enabled.toString()),localStorage.setItem(`openmrs:feature-flag-meta:${t}`,JSON.stringify({label:n.label,description:n.description}))});var rM=n(1216);let rW=O("extensionsInternal",{slots:{},extensions:{}}),rL=O("extensionRenderings",{renderings:new Map}),rD=()=>R("extensionsInternal",{slots:{},extensions:{}}),rB=()=>R("extensionRenderings",{renderings:new Map});function rU(e){let t=rW.getState(),n=e(t);n!==t&&rW.setState(n)}let rF=null,rH=null;function rG(){let e=rL.getState();return rF&&e===rH||(rF=new Map(e.renderings),rH=e,function(e){for(let t of(r0.clear(),e.values()))r2(t,1);r1=!0}(rF)),rF}function rz(e){rH={renderings:e},rL.setState(rH,!0)}function rV(e){let t=rG();t.has(e.renderingId)||(t.set(e.renderingId,e),r2(e,1),rz(t))}function rJ(e){let t=rG(),n=t.get(e);n&&(t.delete(e),r2(n,-1),rz(t))}let rq=()=>R("extensions",{slots:{}}),rK=0,rX=new Set;function rY(e){rK++;try{return e()}finally{if(0==--rK&&rX.size>0){let e=Array.from(rX);for(let t of(rX.clear(),e))rZ(t)}}}function rZ(e){try{e()}catch(t){console.error(`The extension system's '${e.name}' recomputation failed`,t)}}function rQ(e){rK>0?rX.add(e):rZ(e)}let r0=new Map,r1=!1;function r2(e,t){let n=JSON.stringify([e.slotName,e.extensionId,e.slotModuleName,e.extensionModuleName]),r=r0.get(n);if(!r){if(t<0)return;r0.set(n,{count:1,record:{slotModuleName:e.slotModuleName,extensionModuleName:e.extensionModuleName,slotName:e.slotName,extensionId:e.extensionId}}),r1=!0;return}r.count+=t,r.count<1&&(r0.delete(n),r1=!0)}function r6(){var e,t;if(rG(),!r1)return;r1=!1;let n=Array.from(r0.values(),({record:e})=>e);n.sort(r5),e=Q.getState().mountedExtensions,t=n,e.length===t.length&&e.every((e,n)=>0===r5(e,t[n]))||Q.setState({mountedExtensions:n})}function r5(e,t){return r3(e.slotName,t.slotName)||r3(e.extensionId,t.extensionId)||r3(e.slotModuleName,t.slotModuleName)||r3(e.extensionModuleName,t.extensionModuleName)}function r3(e,t){return e===t?0:e<t?-1:1}r6(),rL.subscribe(()=>rQ(r6));let r8=rD(),r4=rq(),r7=et(),r9=eo(),oe=new Set,ot=!1;function on(e){if(null===e)oe=null;else if(null!==oe)for(let t of e)oe.add(t);rQ(or)}function or(){if(!ot){ot=!0;try{for(let e=1;;e++){let t=oe;if(null!==t&&0===t.size)return;oe=new Set;try{!function(e,t,n,r,o,i=null){let a=r4.getState().slots,s={},l=!1,c=Object.entries(r.flags).filter(([,{enabled:e}])=>e).map(([e])=>e);for(let[r,u]of Object.entries(e.slots)){let d=a[r];if(d&&i&&!i.has(r)){s[r]=d;continue}let{config:m}=er(t,u.name),p=function(e,t,n,r,o,i){let a=function(e,t){let n=e.add||[],r=e.remove||[],o=e.order||[],{extensions:i}=r8.getState();return[...t,...n].filter(e=>!r.includes(e)).sort((e,n)=>op(e,o,i[oa(e)]?.order,t)-op(n,o,i[oa(n)]?.order,t))}(n,t.slots[e].attachedIds),s=[];for(let l of a){let{config:a}=ea(r,e,l),c=es(n,e,l),u=c?(0,rM.A)({},a,c):a,d=oa(l),m=t.extensions[d];if(m){let e=u?.["Display conditions"]?.privileges??m.privileges??[];if(e&&("string"==typeof e||Array.isArray(e)&&e.length>0)&&(!i?.user||!tW(e,i.user))||m.featureFlag&&!o.includes(m.featureFlag))continue;s.push({id:l,name:d,moduleName:m.moduleName,config:u,featureFlag:m.featureFlag,meta:m.meta,displayConditionExpression:u?.["Display conditions"]?.expression||m.displayExpression})}}return s}(r,e,m,n,c,o.session);d&&d.moduleName===u.moduleName&&(0,B.A)(d.candidateExtensions,p)?s[r]=d:(s[r]={moduleName:u.moduleName,candidateExtensions:p},l=!0)}(l||Object.keys(a).length!==Object.keys(s).length)&&r4.setState({slots:s})}(r8.getState(),r7.getState(),r9.getState(),rA.getState(),tE.getState(),t)}catch(e){throw oe=null===t||null===oe?null:new Set([...t,...oe]),e}if(e>=20)return void console.error("The extension system stopped recomputing after 20 passes because something keeps invalidating slots in response to the extension store being written. Some slots are left stale until the next write.")}}finally{ot=!1}}}function oo(e,t){let n=new Set;for(let r of Object.keys(e))e[r]!==t[r]&&n.add(r);for(let r of Object.keys(t))r in e||n.add(r);return n}function oi(e,t){return{moduleName:t,name:e,attachedIds:[]}}function oa(e){let[t]=e.split("#");return t}function os(e,t){let n=oa(t);return e.extensions[n]}function ol(e){return os(r8.getState(),e)}r8.subscribe((e,t)=>{on(e.extensions!==t.extensions?null:oo(e.slots,t.slots))}),r7.subscribe((e,t)=>{on(oo(e.slots,t.slots))}),r9.subscribe((e,t)=>{on(oo(e.configs,t.configs))}),rA.subscribe(()=>on(null)),tE.subscribe(()=>on(null)),on(null);let oc=e=>rU(t=>({...t,extensions:{...t.extensions,[e.name]:{...e}}}));function ou(e,t){rU(n=>{let r=n.slots[e];return r?{...n,slots:{...n.slots,[e]:{...r,attachedIds:[...r.attachedIds,t]}}}:{...n,slots:{...n.slots,[e]:{...oi(e),attachedIds:[t]}}}})}function od(e,t){rU(n=>{let r=n.slots[e];return r&&r.attachedIds.includes(t)?{...n,slots:{...n.slots,[e]:{...r,attachedIds:r.attachedIds.filter(e=>e!==t)}}}:n})}function om(e){rU(t=>{let n=t.slots[e];return n?{...t,slots:{...t.slots,[e]:{...n,attachedIds:[]}}}:t})}function op(e,t,n,r){let o=t.indexOf(e);if(-1!==o)return o;{if(void 0!==n)return 1e3+n;let t=r.indexOf(e);return -1!==t?2e3+t:3e3}}function of(e,t){return function(e,t,n=null,r){let o;return e.filter(e=>{let i=e.displayConditionExpression;if("string"!=typeof i||0===i.trim().length)return!0;o??(o=t&&"object"==typeof t?{session:n,...t}:{session:n});try{return!!ro(i,o)}catch(t){return console.error(`Error while evaluating expression '${i}' for ${e.id}`+(r?` in ${r}`:""),t),!1}})}(og(e),t,tE.getState().session,e)}function og(e){return r4.getState().slots[e]?.candidateExtensions??[]}let oh=(e,t)=>r8.setState(n=>{let r=n.slots[t]?.moduleName;if(r&&r!=e)return console.warn(`An extension slot with the name '${t}' already exists. Refusing to register the same slot name twice (in "registerExtensionSlot"). The existing one is from module ${r}.`),n;if(r&&r==e)return n;if(n.slots[t])return{...n,slots:{...n.slots,[t]:{...n.slots[t],moduleName:e}}};let o=oi(t,e);return{...n,slots:{...n.slots,[t]:{...o}}}}),o_=()=>{oe=null,rU(()=>({slots:{},extensions:{}})),rB().setState({renderings:new Map}),r4.setState({slots:{}})},ow=O("left-nav",{slotName:null,basePath:window.spaBase,mode:"normal"});function oy({name:e,basePath:t,mode:n,componentContext:r,state:o}){ow.setState({slotName:e,basePath:t,mode:n??"normal",componentContext:r,state:o})}function ov(e){ow.getState().slotName===e&&ow.setState(ow.getInitialState(),!0)}let ob=O("modalRegistry",{modals:{}});function ox(e){ob.setState(t=>(t.modals[e.name]=e,t))}function ok(e){let t=ob.getState().modals[e];if(!t){let n=ol(e);n&&(t={name:e,load:n.load,moduleName:n.moduleName},console.warn(`Modal ${e} was registered as an extension. This is deprecated and will be removed in the future. Please register it in the "modals" section of routes.json instead of the "extensions" section.`),ox(t))}return t}let oS=O("workspaceRegistrations",{workspaces:{}}),oj=O("workspaceGroups",{workspaceGroups:{}});function oN(e){oS.setState(t=>({workspaces:{...t.workspaces,[e.name]:{...e,load:e.load,preferredWindowSize:e.preferredWindowSize??"normal",type:e.type??"form",canHide:e.canHide??!1,canMaximize:e.canMaximize??!1,width:e.width??"narrow",groups:e.groups??[]}}}))}function oC(e){oj.setState(t=>{let n=t.workspaceGroups[e.name];return n?{workspaceGroups:{...t.workspaceGroups,[e.name]:{...n,members:Array.from(new Set([...n.members,...e.members]))}}}:{workspaceGroups:{...t.workspaceGroups,[e.name]:{name:e.name,members:e.members}}}})}let oE=new Set;function oI(e){let t=oS.getState().workspaces;if(t[e])return t[e];{let t=ol(e);if(t){var n;let r;return oE.has(e)||(console.warn(`The workspace '${e}' is registered as an extension. This is deprecated. Please register it in the "workspaces" section of the routes.json file.`),oE.add(e)),{name:t.name,title:(n=t,"string"==typeof(r=n?.meta?.title)?r:r&&"object"==typeof r?tl(n.moduleName,r.key,r.default):n.name),moduleName:t.moduleName,preferredWindowSize:t.meta?.screenSize??"normal",load:t.load,type:t.meta?.type??"form",canHide:t.meta?.canHide??!1,canMaximize:t.meta?.canMaximize??!1,width:t.meta?.width??"narrow",groups:t.meta?.groups??[]}}throw Error(`No workspace named '${e}' has been registered.`)}}function oA(e){let t=oj.getState().workspaceGroups;if(t[e])return t[e];throw Error(`No workspace group named '${e}' has been registered.`)}let oP=O("workspace2",{registeredGroupsByName:{},registeredWindowsByName:{},registeredWorkspacesByName:{},openedGroup:null,openedWindows:[],workspaceTitleByWorkspaceName:{},isMostRecentlyOpenedWindowHidden:!1});function oO(e){let{registeredWorkspacesByName:t,registeredWindowsByName:n}=oP.getState(),r=t[e];if(r){let t=n[r.window];if(t)return t;throw Error(`No workspace window found with name: ${r.window} for workspace: ${e}`)}throw Error(`No workspace found with name: ${e}`)}function oT(e){let{registeredGroupsByName:t,registeredWindowsByName:n}=oP.getState(),r=n[e];if(r){let n=t[r.group];if(n)return n;throw Error(`No workspace group found with name: ${r.group} for window: ${e}`)}throw Error(`No workspace window found with name: ${e}`)}function oR(e){let{openedWindows:t}=oP.getState();return t.findIndex(t=>t.openedWorkspaces.find(t=>t.workspaceName===e))}function o$(e,t){if(0==t.length)return;let{registeredGroupsByName:n}=oP.getState(),r={...n};for(let n of t){if(r[n.name])throw Error(`Cannot register workspace group ${n.name} more than once`);r[n.name]={...n,moduleName:e}}oP.setState({registeredGroupsByName:r})}function oM(e,t){if(0==t.length)return;let{registeredWindowsByName:n}=oP.getState(),r={...n};for(let n of t){if(r[n.name])throw Error(`Cannot register workspace window ${n.name} more than once`);let t={...n,moduleName:e};r[n.name]=t}oP.setState({registeredWindowsByName:r})}function oW(e,t){if(0==t.length)return;let{registeredWorkspacesByName:n}=oP.getState(),r={...n};for(let n of t){if(r[n.name])throw Error(`Cannot register workspace ${n.name} more than once`);let t={...n,moduleName:e};r[n.name]=t}oP.setState({registeredWorkspacesByName:r})}let oL=0,oD=null,oB={bootstrap:15e3,mount:15e3,unmount:15e3};function oU(e,t){if(e.timeouts)return e;let n=e.name??"parcel",r=Object.fromEntries(Object.keys(oB).filter(t=>e[t]).map(r=>{var o,i;let a,s;return[r,(o=e[r],i=oB[r],a=Array.isArray(o)?o:[o],s=e=>a.reduce((t,o,i)=>t.then(()=>{let t=o(e);return"function"==typeof t?.then&&"function"==typeof t?.catch?t:Promise.reject(Error(`Lifecycle function ${r} at array index ${i} for parcel ${n} did not return a promise`))}),Promise.resolve(void 0)),e=>{let o,a=new Promise((e,t)=>{o=setTimeout(()=>t(Error(`Lifecycle function ${r} for parcel ${n} did not settle within ${i}ms`)),i)});return Promise.race([s(e),a]).finally(()=>clearTimeout(o)).then(e=>(t(r,!1),e),e=>{throw t(r,!0),e})})]}));return{...e,...r}}async function oF(e,t){var n,r;let o,i,a,s,l,c=await (oD??(oD=new Promise((e,t)=>{(0,to.mountRootParcel)({name:"openmrs-extension-host",bootstrap:()=>Promise.resolve(),mount:t=>(e(t.mountParcel),Promise.resolve()),unmount:()=>Promise.resolve()},{domElement:document.createElement("div")}).mountPromise.catch(t)}).catch(e=>(console.error("The host parcel used to mount extensions could not be mounted. Falling back to mounting extensions as root parcels, which leaks their DOM elements.",e),to.mountRootParcel))),oD),u={...t},d=(o=u,i=!1,{retarget:e=>o={...e},release:a=()=>(function(e){for(let t of Object.keys(e))delete e[t]})(o),onSettled(e,t){switch(e){case"bootstrap":t&&a();return;case"mount":i||(i=t);return;case"unmount":(t||i)&&a();return}}});return r=c((n=d.onSettled,"function"==typeof e?()=>e().then(e=>oU(e,n)):oU(e,n)),u),s=e=>t=>e.call(r,d.retarget(t)).catch(e=>{throw"SKIP_BECAUSE_BROKEN"===r.getStatus()&&d.release(),e}),l=r.update&&s(r.update),Object.defineProperty(r,"update",{configurable:!0,enumerable:!0,get:()=>l,set:e=>{l=e&&s(e)}})}function oH(){return oG}function oG(e,t){let n,r=oF(e,t).then(e=>n=e);return{mount:()=>r.then(e=>e.mount()),unmount:()=>r.then(e=>e.unmount()),update:e=>r.then(t=>t.update?.(e)),getStatus:()=>n?.getStatus()??"LOADING_SOURCE_CODE",get loadPromise(){return r.then(e=>e.loadPromise)},get bootstrapPromise(){return r.then(e=>e.bootstrapPromise)},get mountPromise(){return r.then(e=>e.mountPromise)},get unmountPromise(){return r.then(e=>e.unmountPromise)}}}async function oz(e,t,n,r,o=e=>e,i={}){let a=oa(r),s=ol(r),l=null;if(e){let c;if(!s)throw Error(`Couldn't find extension '${a}' to attach to '${t}'`);let{meta:u,moduleName:d,load:m}=s,p=oL++,f=`${t}/${r}-${p}`;e.dataset.extensionRenderingId=f;let g=e=>{try{rJ(f)}catch(t){console.error(e,t)}};try{rV({renderingId:f,extensionName:a,extensionModuleName:d,extensionId:r,slotName:t,slotModuleName:n})}catch(e){throw g(`Recomputing configuration after registering '${r}' failed also failed`),e}try{c=await m()}catch(e){throw g(`Recomputing configuration after '${r}' failed to load also failed`),e}try{l=await oF(o({...c,name:`${t}/${a}-${p}`}),{...i,_meta:u,_extensionContext:{extensionId:r,extensionSlotName:t,extensionSlotModuleName:n,extensionModuleName:d,extensionMeta:u},domElement:e})}catch(e){throw g(`Recomputing configuration after '${r}' failed to mount also failed`),e}l.mountPromise.then(void 0,e=>{console.error(`Extension '${r}' in slot '${t}' failed to mount`,e),g(`Recomputing configuration after '${r}' failed to mount also failed`)}),l.unmountPromise.then(()=>g(`Recomputing configuration after unmounting '${r}' failed`),e=>{console.error(`Extension '${r}' in slot '${t}' failed to unmount`,e),g(`Recomputing configuration after '${r}' failed to unmount also failed`)})}else console.warn(`Tried to render ${r} into ${t} but no DOM element was available.`);return l}var oV=n(6925),oJ=n.n(oV);let oq=(0,oV.createContext)({moduleName:"",featureName:""});function oK({to:e,templateParams:t,onBeforeNavigate:n,children:r,...o}){return(0,oV.useEffect)(()=>{o.href&&console.warn(`ConfigurableLink does not support the href prop. Use the 'to' prop instead. The provided href value is '${o.href}'`),o.onClick&&console.warn(`ConfigurableLink does not support the onClick prop. Use the 'onBeforeNavigate' prop instead. The 'to' prop of the offending link is ${e}`)},[]),oJ().createElement("a",{onClick:r=>{0===r.button&&!r.ctrlKey&&!r.shiftKey&&!r.altKey&&!r.metaKey&&(r.preventDefault(),n?.(r),tm({to:e,templateParams:t})),0===r.button&&(r.ctrlKey||r.metaKey)&&n?.(r),0===r.button&&r.shiftKey&&n?.(r),1===r.button&&n?.(r)},href:tu(e,t),...o},r)}let oX=({state:e,children:t,...n})=>{let{extension:r}=(0,oV.useContext)(oq),o=(0,oV.useRef)(null),i=(0,oV.useRef)(Promise.resolve()),a=(0,oV.useRef)(!1),s=(0,oV.useRef)(!1),l=(0,oV.useRef)(e),c=(0,oV.useCallback)(e=>{if(!e)return;let t=()=>{"MOUNTED"===e.getStatus()&&e.unmount()};switch(e.getStatus()){case"MOUNTED":e.unmount();break;case"UPDATING":i.current?.then(t,t);break;default:e.mountPromise.then(t,()=>{})}},[]),u=(0,oV.useCallback)((e,t)=>{e.update&&"UNMOUNTING"!==e.getStatus()&&(i.current=Promise.all([e.mountPromise,i.current]).then(()=>{if(o.current?.getStatus()==="MOUNTED"&&o.current.update)return o.current.update({...t})}).catch(e=>{let t=o.current?.getStatus();"UNMOUNTING"!==t&&"NOT_MOUNTED"!==t&&"UNLOADING"!==t&&console.error(`The extension '${r?.extensionId}' failed to update`,e)}))},[]),d=(0,oV.useCallback)(t=>{t&&!o.current&&!s.current&&r?.extensionSlotName&&r.extensionSlotModuleName&&(s.current=!0,oz(t,r.extensionSlotName,r.extensionSlotModuleName,r.extensionId,void 0,e).then(t=>{(s.current=!1,o.current=t,a.current)?c(t):t&&l.current!==e&&u(t,l.current)},()=>{s.current=!1}))},[]);return(0,oV.useEffect)(()=>(a.current=!1,()=>{a.current=!0,c(o.current)}),[]),(0,oV.useEffect)(()=>{l.current=e,o.current&&u(o.current,e)},[e]),r?oJ().createElement("div",{ref:d,"data-extension-id":r?.extensionId,style:{position:"relative"},...n}):null};function oY(e){let t=(0,oV.useRef)(e);return b(t.current,e)||(t.current=e),t.current}function oZ(e,t){"function"==typeof t&&(t=t(e));let n={};for(let[r,o]of Object.entries(t)){let t=function(...t){e.setState(e=>o(e,...t))};n[r]=t}return n}let oQ=e=>e;function o0(e,t=oQ,n){let r=(0,oV.useCallback)(t=>e.subscribe(t),[e]),o=(0,oV.useCallback)(()=>t(e.getState()),[e,t]),i=(0,oV.useSyncExternalStore)(r,o,o),a=(0,oV.useMemo)(()=>n?oZ(e,n):null,[e,n]);return(0,oV.useMemo)(()=>a?{...i,...a}:i,[i,a])}function o1(e,t){return o0(e,oQ,t)}function o2(e){return function(t){let n=(0,oV.useCallback)(t=>e.subscribe(t),[]),r=(0,oV.useCallback)(()=>e.getState(),[]),o=(0,oV.useSyncExternalStore)(n,r,r),i=(0,oV.useMemo)(()=>t?oZ(e,t):null,[t]);return(0,oV.useMemo)(()=>i?{...o,...i}:o,[o,i])}}let o6=[];Object.freeze(o6);let o5={candidateExtensions:o6};Object.freeze(o5);let o3=e=>{let t=(0,oV.useCallback)(t=>t.slots?.[e]??o5,[e]);return o0(rq(),t)},o8=e=>e.session;function o4(e,t){let{candidateExtensions:n}=o3(e),r=o0(tE,o8),o=oY(t);return(0,oV.useMemo)(()=>of(e,o),[e,o,r,n])}function o7(e,t){let{moduleName:n}=(0,oV.useContext)(oq);if(!n)throw Error("ComponentContext has not been provided. This should come from @openmrs/esm-react-utils.");return(0,oV.useEffect)(()=>{oh(n,e)},[n,e]),{extensions:o4(e,t),extensionSlotName:e,extensionSlotModuleName:n}}function o9(e){return e}function ie({name:e,extensionSlotName:t,select:n=o9,children:r,state:o,style:i,...a}){if(r&&o)throw Error("Both children and state have been provided. If children are provided, the state must be passed as a prop to the `Extension` component.");let s=e??t,l=(0,oV.useRef)(null),{extensions:c,extensionSlotModuleName:u}=o7(s,o),d=(0,oV.useMemo)(()=>n(c),[n,c]),m=(0,oV.useMemo)(()=>{if("function"==typeof r&&!oJ().isValidElement(r))return d.map(e=>r(e,o))},[r,d]);return oJ().createElement("div",{ref:l,"data-extension-slot-name":s,"data-extension-slot-module-name":u,style:{...i,position:"relative"},...a},s&&d?.map((e,t)=>oJ().createElement(oq.Provider,{key:e.id,value:{moduleName:u,featureName:"",extension:{extensionId:e.id,extensionSlotName:s,extensionSlotModuleName:u,extensionMeta:e.meta}}},m?.[t]??("function"!=typeof r?r:null)??oJ().createElement(oX,{state:o}))))}var it=n(3776),ir=n(9568),io=n(9737),ii=n(2324),ia=n(242);let is={strictMode:!0,throwErrorsToConsole:!0,disableTranslations:!1},il=new Map;(0,ia.y)(il);let ic={errorRetryCount:3,fetcher:tN,focusThrottleInterval:18e5,revalidateIfStale:!0,revalidateOnFocus:!1,revalidateOnReconnect:!1,refreshInterval:0,shouldRetryOnError:e=>{if(e instanceof tC){let t=e.response.status;return!!(t>=500)||401===t||403===t||429===t}return!0},provider:()=>il};function iu(e){if("object"!=typeof e||"string"!=typeof e.featureName||"string"!=typeof e.moduleName)throw Error("Invalid options");let t=Object.assign({},is,e),n={...ic,...t.swrConfig};return function(e){var r,o,i,a,s;return i=o=class extends(r=oJ().Component){componentDidCatch(e,n){n&&n.componentStack&&(e.extra=Object.assign(e.extra||{},{componentStack:n.componentStack})),t.throwErrorsToConsole&&setTimeout(()=>{throw e}),this.setState({caughtError:e,caughtErrorInfo:n})}render(){if(this.state.caughtError)return oJ().createElement("div",null,"An error has occurred. Please try reloading the page.");{let r=oJ().createElement(oV.Suspense,{fallback:null},oJ().createElement(ii.S,{value:n},oJ().createElement(oq.Provider,{value:this.state.config},t.disableTranslations?oJ().createElement(e,this.props):oJ().createElement(io.I18nextProvider,{i18n:window.i18next,defaultNS:this.state.config.extension?`${this.state.config.moduleName}___${this.state.config.extension.extensionSlotName}___${this.state.config.extension.extensionId}`:this.state.config.moduleName},oJ().createElement(e,this.props)))));return t.strictMode&&oJ().StrictMode?oJ().createElement(oJ().StrictMode,null,r):r}}constructor(e){super(e),this.state={caughtError:null,caughtErrorInfo:null,config:{moduleName:t.moduleName,featureName:t.featureName,extension:e._extensionContext}}}},a="displayName",s=`OpenmrsReactComponent(${t.featureName})`,a in i?Object.defineProperty(i,a,{value:s,enumerable:!0,configurable:!0,writable:!0}):i[a]=s,o}}function id(e,t){return(0,ir.A)({React:oJ(),ReactDOMClient:it,rootComponent:iu(t)(e)})}function im(e,t){return()=>e().then(({default:e})=>id(e,t))}function ip(e,t){return()=>Promise.resolve(id(e,t))}let ig=im,ih=(0,N.y)()(()=>({}));T("openmrs-app-context",ih);let i_={};function iw(e,t=e=>e){let n=ih.getState();return e in n?Object.freeze(Object.assign({},t?t(n[e]):n[e])):null}function iy(e,t){ih.setState(n=>(e in n||(n[e]={}),n[e]=t(n[e]),Object.assign({},n)))}function iv(e){return null===e?null:Object.freeze(Object.assign({},e))}let ib=new Map;function ix(e,t){let n=(0,oV.useRef)(t??{}),r=(0,oV.useRef)(t=>iy(e,t)),o=(0,oV.useRef)(Symbol());return(0,oV.useEffect)(()=>{let n=t??{},r=o.current;return null===iw(e)?!function(e,t=i_){ih.setState(n=>{if(e in n)throw Error(`Attempted to re-register namespace ${e} in the app context. Each namespace must be unregistered before the name can be registered again.`);return Object.assign({},n,{[e]:t===i_?{}:t})})}(e,n):(console.warn(`Namespace ${e} is already registered in the app context. This is likely a race condition during navigation, but may indicate two components are trying to own the same namespace. Updating the existing context.`),iy(e,()=>n)),ib.set(e,r),()=>{ib.get(e)===r&&(ih.setState(t=>(e in t&&delete t[e],t)),ib.delete(e))}},[e]),(0,oV.useEffect)(()=>{let r=t??{};b(n.current,r)||(iy(e,()=>r),n.current=r)},[t]),r.current}function ik({namespace:e,value:t}){return ix(e,t),null}let iS=({children:e,value:t,fallback:n})=>t?oJ().createElement(oJ().Fragment,null,e):n?oJ().createElement(oJ().Fragment,null,n):null;function ij(){let e=(0,oV.useRef)();return(!e.current||e.current.signal.aborted)&&(e.current=new AbortController),(0,oV.useEffect)(()=>{let t=e.current;return()=>t?.abort()},[]),e.current}function iN(e,t=e=>e??{}){let[n,r]=(0,oV.useState)(()=>{if(iC(e))return;let n=iw(e);if(null!==n)return t?t(n):n});return(0,oV.useEffect)(()=>{if(iC(e))throw Error(`The namespace supplied to useAppContext must be a non-empty string, but was "${e}".`)},[e]),(0,oV.useEffect)(()=>{var n;let o;return(n=e=>{if(null==e)return void r(void 0);let n=t?t(e):e;r(e=>b(e,n)?e:n)})(iv(o=iw(e))),ih.subscribe(t=>{let r=e in t?t[e]:null;r!==o&&(o=r,n(iv(r)))})},[e,t]),n}function iC(e){return"string"!=typeof e||0===e.trim().length}function iE(e){let t=o4(e);return(0,oV.useMemo)(()=>t.map(e=>e.id),[t])}function iI(e){return o3(e).candidateExtensions}function iA(e,t,n){let{data:r,error:o,mutate:i,isLoading:a,isValidating:s}=(0,ii.u)(e?nW(e,t,n):null,tN);return(0,oV.useMemo)(()=>({isLoading:a,data:r?.data.results??[],error:o,mutate:i,isValidating:s}),[r,o,a,s,i])}function iP(e){(0,oV.useEffect)(()=>{if(e){let e=window.getComputedStyle(document.body).overflow;return document.body.style.overflow="hidden",()=>{document.body.style.overflow=e}}},[e])}let iO={},iT=`No ComponentContext has been provided. This should come from "openmrsComponentDecorator".
16
+ Usually this is already applied when using "getAsyncLifecycle" or "getSyncLifecycle".`;function iR(e){let{moduleName:t,extension:n}=(0,oV.useContext)(oq),r=e?.externalModuleName??t;if(!r&&!n)throw Error(iT);let o=function(e){let t=(0,oV.useMemo)(()=>ee(e),[e]),n=function(e){let[t,n]=(0,oV.useState)(()=>{let t=e.getState();return t.loaded&&t.config?t.config:null});return(0,oV.useEffect)(()=>e?.subscribe(e=>{e.loaded&&e.config&&n(e.config)}),[e]),t}(t);if(!n)throw iO[e]||(iO[e]=new Promise(e=>{let n=t.subscribe(t=>{t.loaded&&t.config&&(e(t.config),n())})})),iO[e];return n}(r),i=function(e){let t=(0,oV.useMemo)(eo,[]),n=function(e,t){let[n,r]=(0,oV.useState)(t?()=>{let n=ea(e.getState(),t.extensionSlotName,t.extensionId);if(n.loaded&&n.config)return n.config}:null);return(0,oV.useEffect)(()=>{if(t)return e.subscribe(e=>{let o=ea(e,t.extensionSlotName,t.extensionId);o.loaded&&o.config&&!(0,B.A)(o.config,n)&&r(o.config)})},[e,t,n]),n}(t,e);if(!n&&e){let n=`${e.extensionSlotName}-${e.extensionId}`;throw!iO[n]&&t&&(iO[n]=new Promise(n=>{let r=t.subscribe(t=>{let o=ea(t,e.extensionSlotName,e.extensionId);o.loaded&&o.config&&(n(o.config),r())})})),iO[n]}return n||{}}(n);return(0,oV.useMemo)(()=>e?.externalModuleName&&r===e.externalModuleName?{...o}:{...o,...i},[r,e?.externalModuleName,o,i])}let i$=o4;function iM(e,t=300){let[n,r]=(0,oV.useState)(e);return(0,oV.useEffect)(()=>{let n=setTimeout(()=>{r(e)},t);return()=>{clearTimeout(n)}},[e,t]),n}var iW=n(6269);let iL=`custom:${[["admissionDecisionConcept","ref"],["admissionEncounterType","ref"],["admissionForm","ref"],["atFacilityVisitType","ref"],["bedAssignmentEncounterType","ref"],["cancelADTRequestEncounterType","ref"],["checkInClerkEncounterRole","ref"],["checkInEncounterType","ref"],["clinicianEncounterRole","ref"],["conceptSourcesForDiagnosisSearch","ref"],["consultEncounterType","ref"],["consultFreeTextCommentsConcept","ref"],["denyAdmissionConcept","ref"],["diagnosisMetadata","ref"],["diagnosisSets","ref"],["dischargeForm","ref"],["dispositionDescriptor","ref"],["dispositions","ref"],["emrApiConceptSource","ref"],["exitFromInpatientEncounterType","ref"],["extraPatientIdentifierTypes","ref"],["fullPrivilegeLevel","ref"],["highPrivilegeLevel","ref"],["identifierTypesToSearch","ref"],["inpatientNoteEncounterType","ref"],["lastViewedPatientSizeLimit","ref"],["metadataSourceName","ref"],["motherChildRelationshipType","ref"],["narrowerThanConceptMapType","ref"],["nonDiagnosisConceptSets","ref"],["orderingProviderEncounterRole","ref"],["patientDiedConcept","ref"],["personImageDirectory","ref"],["primaryIdentifierType","ref"],["sameAsConceptMapType","ref"],["suppressedDiagnosisConcepts","ref"],["supportsAdmissionLocationTag","(uuid,display,name,links)"],["supportsLoginLocationTag","(uuid,display,name,links)"],["supportsTransferLocationTag","(uuid,display,name,links)"],["supportsVisitsLocationTag","(uuid,display,name,links)"],["telephoneAttributeType","ref"],["testPatientPersonAttributeType","ref"],["transferForm","ref"],["transferRequestEncounterType","ref"],["transferWithinHospitalEncounterType","ref"],["unknownCauseOfDeathConcept","ref"],["unknownLocation","ref"],["unknownPatientPersonAttributeType","ref"],["unknownProvider","ref"],["visitAssignmentHandlerAdjustEncounterTimeOfDayIfNecessary","ref"],["visitExpireHours","ref"],["visitNoteEncounterType","ref"]].map(([e,t])=>`${e}:${t}`).join(",")}`;function iD(){let e=`${tx}/emrapi/configuration?v=${iL}`,t=(0,iW.A)(e,tN);return(0,oV.useMemo)(()=>({emrConfiguration:t.data?.data,isLoadingEmrConfiguration:t.isLoading,mutateEmrConfiguration:t.mutate,errorFetchingEmrConfiguration:t.error}),[t])}function iB(){return(0,oV.useContext)(oq).extension}let iU=o2(rD());function iF(e){let t=o4(e);return(0,oV.useMemo)(()=>Object.fromEntries(t.map(e=>[e.name,e.meta])),[t])}let iH=o2(rq());function iG(e){let{flags:t}=o0(rA);return t[e]?.enabled??!1}function iz(){let[,e]=(0,oV.useState)(0);return(0,oV.useCallback)(()=>{e(e=>e+1)},[])}function iV(e,t,n={}){return iq(e,t,iJ,n)}let iJ={getPaginatedUrl:(e,t,n)=>{if(!e)return null;{let r=new URL(tj(e.toString()),window.location.toString());return r.searchParams.set("limit",""+t),r.searchParams.set("startIndex",""+n),r.searchParams.set("totalCount","true"),r.toString()}},getNextUrl:e=>{let t=e?.links?.find(e=>"next"==e.rel)?.uri;if(!t)return null;{let e=new URL(t);return e.host=window.location.host,e.protocol=window.location.protocol,e.toString()}},getTotalCount:e=>e?.totalCount??NaN,getCurrentPageSize:e=>e?.results?.length??NaN,getData:e=>e?.results};function iq(e,t,n,r={}){let{getPaginatedUrl:o,getTotalCount:i,getCurrentPageSize:a,getData:s}=n,{immutable:l,swrConfig:c}=r,u=r.fetcher??tN,[d,m]=(0,oV.useState)(1),p=(0,oV.useRef)(NaN),f=(0,oV.useRef)(NaN),g=(0,oV.useRef)(d),h=(0,oV.useRef)(!1),_=(0,oV.useRef)(!1),w=e?.toString()??"",[y,v]=(0,oV.useState)(w);w!==y&&(v(w),m(1),g.current=1,p.current=NaN,f.current=NaN,h.current=!1,_.current=!1);let b=(d-1)*t,x=(0,oV.useMemo)(()=>o(e,t,b),[e,t,b]),{data:k,...S}=(l?iW.A:ii.u)(x,u,c);k?.data&&(p.current=i(k?.data),f.current=a(k?.data),h.current=!0);let j=Math.ceil(p.current/t),N=(0,oV.useCallback)(e=>{if(!Number.isInteger(e)||e<1)return void console.warn(`useServerPagination: ignoring goTo(${e}); page must be a positive integer.`);let n=Math.ceil(p.current/t);!h.current||Number.isNaN(n)||e<=n?(g.current=e,m(e)):console.warn("Invalid attempt to go to out of bounds page: "+e)},[t]);(0,oV.useEffect)(()=>{if(!h.current)return;if(Number.isNaN(p.current)){_.current||(_.current=!0,console.warn(`useServerPagination: ${w} returned no total count, so out-of-range pages cannot be detected.`));return}let e=Math.max(1,Math.ceil(p.current/t));d>e&&(console.warn(`Invalid attempt to go to out of bounds page: ${d}; returning to page ${e}.`),g.current=e,m(e))},[d,t,w,k]);let C=(0,oV.useCallback)(()=>{N(g.current+1)},[N]),E=(0,oV.useCallback)(()=>{N(g.current-1)},[N]);return{data:s(k?.data),totalPages:j,totalCount:p.current,currentPage:d,currentPageSize:f.current,paginated:j>1,showNextButton:d<j,showPreviousButton:d>1,goTo:N,goToNext:C,goToPrevious:E,...S}}function iK(e,t,n={}){return iq(e,t,iX(),n)}function iX(){return{getPaginatedUrl:(e,t,n)=>{if(!e)return null;{let r=new URL(tj(e.toString()),window.location.toString());return r.searchParams.set("_count",""+t),r.searchParams.set("_getpagesoffset",""+n),r.toString()}},getNextUrl:e=>{let t=e?.link?.find(e=>"next"==e.relation)?.url;if(!t)return null;{let e=new URL(t);return e.host=window.location.host,e.protocol=window.location.protocol,e.toString()}},getTotalCount:e=>e?.total??NaN,getCurrentPageSize:e=>e?.entry?.length??NaN,getData:e=>e?.entry?.map(e=>e.resource)}}var iY=n(3709);function iZ(e,t={}){return iQ(e,iJ,t)}function iQ(e,t,n={}){let{swrInfiniteConfig:r,immutable:o}=n,{getNextUrl:i,getTotalCount:a,getData:s}=t,l=n.fetcher??tN,c=(0,oV.useCallback)((n,r)=>0==n?e?.toString()??null:t.getNextUrl(r.data),[e]),{data:u,size:d,setSize:m,...p}=(0,iY.Ay)(c,l,{...r,...o?{revalidateIfStale:!1,revalidateOnFocus:!1,revalidateOnReconnect:!1}:{}}),f=i(u?.[u.length-1].data),g=a(u?.[0]?.data);return{data:u?.flatMap(e=>s(e.data)),totalCount:g,hasMore:null!=f,loadMore:()=>{m((u?.length??0)+1)},nextUri:f,...p}}function i0(e,t={}){return i1(e,iJ,t)}function i1(e,t,n={}){let r=iQ(e,t,n),{hasMore:o,error:i,data:a,loadMore:s,isLoading:l,nextUri:c}=r;return((0,oV.useEffect)(()=>{o&&!i&&s()},[o,c]),n.partialData)?r:{...r,data:o||i?void 0:a,isLoading:l||o}}function i2(e,t={}){return i1(e,iX(),t)}function i6(e,t={}){return iQ(e,iX(),t)}function i5(){let e="tablet";return document.body.classList.forEach(t=>{switch(t){case"omrs-breakpoint-lt-tablet":e="phone";break;case"omrs-breakpoint-gt-small-desktop":e="large-desktop";break;case"omrs-breakpoint-gt-tablet":e="small-desktop"}}),e}function i3(){let[e,t]=(0,oV.useState)(i5);return(0,oV.useEffect)(()=>{let e=()=>{t(i5())};return window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]),e}let i8=e=>"small-desktop"===e||"large-desktop"===e;function i4(e){let t=(0,oV.useContext)(oq);(0,oV.useEffect)(()=>(t&&t.moduleName&&(e.componentContext=t),oy(e),()=>{ov(e.name)}),[t,e])}function i7(){return o0(ow)}let i9=[];function ae(e=null,t=null){let n=new URLSearchParams;e&&n.set("tag",e),t&&n.set("q",t);let r=n.toString(),{data:o}=i0(`${tx}/location${r?"?"+r:""}`,{immutable:!0});return o??i9}function at(e,t=!0){let n=(0,oV.useRef)(null);return(0,oV.useEffect)(()=>{let r=r=>{t&&n.current&&r.target&&r.target instanceof Node&&(n.current.contains(r.target)||e(r))};return window.addEventListener("mousedown",r),window.addEventListener("touchstart",r),()=>{window.removeEventListener("mousedown",r),window.removeEventListener("touchstart",r)}},[e,t]),n}function an(e){let t=(0,oV.useRef)();return(0,oV.useEffect)(()=>{let n=new IntersectionObserver(t=>{for(let n of t)if(n.isIntersecting)return void e()},{threshold:1});return t.current&&n.observe(t.current),()=>{t.current&&n.unobserve(t.current)}},[t.current,e]),t}function ar(e,t={}){let{abortController:n,fetchInit:r,url:o,swrConfig:i}=t,a=ij(),s=(0,oV.useMemo)(()=>r?.signal??n?.signal??a.signal,[n?.signal,r?.signal,a.signal]),l=(0,oV.useCallback)(e=>tN(function(e,t){if(t)return"function"==typeof t?t(e):t;if("string"==typeof e)return e;throw Error(`When using useOpenmrsSWR with a key that is not a string, you must provide a url() function that converts the key to a valid url. The key for this hook is ${e}.`)}(e,o),{...r,signal:s}),[s,r,o]);return(0,ii.u)(e,l,i)}function ao(e=[],t=10){let[n,r]=(0,oV.useState)(1),o=(0,oV.useMemo)(()=>"number"==typeof t&&t>0?Math.max(1,Math.ceil(e.length/t)):1,[e.length,t]);n>o&&r(o);let i=Math.min(Math.max(1,n),o),a=(0,oV.useMemo)(()=>{let n=(i-1)*t,r=(i+0)*t;return e.slice(n,r)},[e,i,t]),s=(0,oV.useCallback)(e=>{!Number.isInteger(e)||e<1?console.warn(`usePagination: ignoring goTo(${e}); page must be a positive integer.`):r(e)},[]),l=(0,oV.useCallback)(()=>{r(e=>e+1)},[]),c=(0,oV.useCallback)(()=>{r(e=>Math.max(1,e-1))},[]);return(0,oV.useMemo)(()=>({results:a,totalPages:o,currentPage:i,paginated:e.length>t,showNextButton:i<o,showPreviousButton:i>1,goTo:s,goToNext:l,goToPrevious:c}),[a,o,e.length,t,i,s,l,c])}function ai(e,t,n,r){return{pageSizes:(0,oV.useMemo)(()=>{let n=Math.ceil(t/e);return isNaN(n)&&(n=0),[...Array(n).keys()].map(t=>(t+1)*e)},[e,t]),pageItemsCount:(0,oV.useMemo)(()=>e>t?t:e*n>t?e*(n-1)+r:e*n,[e,t,n,r])}}function aa(){let e=/\/patient\/([a-zA-Z0-9\-]+)\/?/.exec(location.pathname);return e&&e[1]}function as(e){let[t,n]=(0,oV.useState)(e??aa()),{data:r,error:o,isValidating:i}=(0,ii.u)(t?["patient",t]:null,()=>nB(t,{}));return(0,oV.useEffect)(()=>{let e=()=>{let e=aa();e!==t&&n(e)};return window.addEventListener("single-spa:routing-event",e),()=>window.removeEventListener("single-spa:routing-event",e)},[t]),(0,oV.useMemo)(()=>({isLoading:i&&!o&&!r,patient:r,patientUuid:t,error:o}),[i,o,r,t])}function al(){let e=`${tx}/metadatamapping/termmapping?v=custom:(metadataUuid)&code=emr.primaryIdentifierType`,{data:t,error:n,isLoading:r}=(0,ii.u)(e,tN);return(0,oV.useMemo)(()=>({primaryIdentifierCode:t?.data?.results[0]?.metadataUuid,isLoading:r,error:n}),[t,n,r])}function ac(e){let{extensions:t,extensionSlotModuleName:n}=o7(e);return e?t.map(t=>({state:r})=>oJ().createElement(oq.Provider,{value:{moduleName:n,featureName:"",extension:{extensionId:t.id,extensionSlotName:e,extensionSlotModuleName:n,extensionMeta:t.meta}}},oJ().createElement(oX,{state:r}))):[]}function au(){let e=(0,oV.useRef)(),[t,n]=(0,oV.useState)(null),r=null;if(!t){if(o){let e=tT().getState();e.loaded&&(r=e.session)}else o=new Promise(t=>{let n=({loaded:n,session:o})=>{n&&(t(o),r=o,e.current&&(e.current(),e.current=void 0))};n(tT().getState()),r||(e.current=tT().subscribe(n))});if(r)n(r);else throw o}(0,oV.useEffect)(()=>(e.current||(e.current=tT().subscribe(({loaded:e,session:t})=>{e&&(r=t,n(t))})),()=>{e.current&&(e.current(),e.current=void 0)}),[]);let i=t||r;if(!i)if(o)throw console.warn("useSession is in an unexpected state. Attempting to recover."),o;else throw Error("useSession is in an invalid state.");return i}let ad=({privilege:e,fallback:t,children:n})=>{let[r,o]=(0,oV.useState)(null);return((0,oV.useEffect)(()=>{let e=tT(),t=e.subscribe(({loaded:e,session:t})=>{o(e?t?.user??null:null)}),{loaded:n,session:r}=e.getState();return n&&o(r?.user??null),t},[]),r&&tW(e,r))?oJ().createElement(oJ().Fragment,null,n):t?oJ().createElement(oJ().Fragment,null,t):null};var am=n(4343),ap=n.n(am),af=n(3355);let ag=new Map;function ah(){for(let e of Array.from(ag.values()))e()}let a_={setVisitContext:(e,t)=>null==t?{manuallySetVisitUuid:null}:{manuallySetVisitUuid:t.uuid,patientUuid:t.patient?.uuid}};function aw(e){let t=(0,oV.useId)();return(0,oV.useEffect)(()=>{if(e)return ag.set(t,e),()=>{ag.delete(t)}},[t,e]),{...o1(nZ(),a_),mutateVisit:ah}}function ay(e,t=nX){let n=(0,oV.useRef)(void 0),{patientUuid:r,manuallySetVisitUuid:o,setVisitContext:i}=aw((0,oV.useCallback)(()=>n.current?.(),[])),a=e&&r==e?o:null,s=`?patient=${e}&v=${t}&includeInactive=false`,l=`/${a}?v=${t}`,{data:c,error:u,mutate:d,isValidating:m}=(0,ii.u)(e?`${tx}/visit${s}`:null,tN),{data:p,error:f,mutate:g,isValidating:h}=(0,ii.u)(e&&a?`${tx}/visit${l}`:null,tN),_=(0,oV.useMemo)(()=>c?.data.results.find(e=>null===e.stopDatetime)??null,[c]),w=(0,oV.useMemo)(()=>a&&p?p.data:null,[p,a]),y=(0,oV.useRef)(null);(0,oV.useEffect)(()=>{!m&&_&&r===e&&null===o&&i(_),h||(y.current&&w&&y.current.uuid===w.uuid&&!y.current.stopDatetime&&w.stopDatetime&&i(null),y.current=w)},[w,o,_,m,h,r]);let v=(0,oV.useCallback)(()=>{d(),g()},[d,g]);(0,oV.useEffect)(()=>{n.current=v},[v]);let b=!!(!c||a&&!p),x=!!(a?f:u);return{error:u||f,mutate:v,isValidating:m||h,activeVisit:_,currentVisit:w,currentVisitIsRetrospective:!!a,isLoading:b&&!x}}am.extend(af);let av=[];function ab(){let{data:e}=(0,iW.A)(nV,nJ);return e??av}let ax=new Map;async function ak(e,t){let n=t.indexOf("#"),r=n>=0,o=r?t.substring(0,n):e,i=r?t.substring(n+1):t,a=await nu(o);return a&&Object.hasOwn(a,i)&&"function"==typeof a[i]?aj(o,a).then(()=>a[i]()):(a?a&&Object.hasOwn(a,i)?console.warn(`The export ${t}, defined in ${e}'s routes.json, is not a function`):console.warn(`${o} does not define a component called "${i}", referenced in ${e}'s routes.json. This cannot be loaded.`):console.warn(`Unknown app ${o} for ${t} defined in ${e}'s routes.json`),aS)}let aS={bootstrap:()=>Promise.resolve(),mount:()=>Promise.resolve(),unmount:()=>Promise.resolve()};async function aj(e,t){if(e in ax)await ax[e];else{let n=t??await nu(e);await (ax[e]=new Promise((t,r)=>{if(Object.hasOwn(n,"startupApp")){let o=n.startupApp;if("function"==typeof o)return Promise.resolve(o()).then(()=>{eC(e),t(null)}).catch(r)}eC(e),t(null)}))}}function aN(e,t){let n=t.name;if(!n)return void console.error(`An extension definition in ${e} is missing an name and thus cannot be
17
17
  registered. To fix this, ensure that you define the "name" field inside the
18
18
  extension definition.`,t);t.slots&&t.slot&&console.warn(`The extension ${n} from ${e} declares both a 'slots' property and
19
19
  a 'slot' property. Only the 'slots' property will be honored.`);let r=t.slots?t.slots:t.slot?[t.slot]:[];if(!t.component)return void console.error(`The extension ${n} from ${e} is missing a 'component' entry and thus cannot be registered.
20
- To fix this, ensure that you define a 'component' field inside the extension definition.`,t);for(let o of(oo({name:n,load:()=>aw(e,t.component),meta:t.meta||{},order:t.order,moduleName:e,privileges:t.privileges,featureFlag:t.featureFlag,displayExpression:t.displayExpression}),r))oi(o,n)}let ax=[];function ak(e,t){rV(()=>(function(e,t){if(e&&t&&"object"==typeof t){eN(e);let n=t.extensions??[],r=t.modals??[],o=t.workspaces??[],i=t.workspaceGroups??[],a=t.featureFlags??[],s=t.workspaceGroups2??[],l=t.workspaceWindows2??[],c=t.workspaces2??[];t.pages?.forEach(t=>{t&&"object"==typeof t&&Object.hasOwn(t,"component")&&(Object.hasOwn(t,"route")||Object.hasOwn(t,"routeRegex")||Object.hasOwn(t,"routes"))?ax.push({...t,appName:e}):console.warn(`A page for ${e} could not be registered as it does not appear to have the required properties`,t)}),n.forEach(t=>{t&&"object"==typeof t&&Object.hasOwn(t,"name")&&Object.hasOwn(t,"component")?ab(e,t):console.warn(`An extension for ${e} could not be registered as it does not appear to have the required properties`,t)}),r.forEach(t=>{if(t&&"object"==typeof t&&Object.hasOwn(t,"name")&&Object.hasOwn(t,"component")){let n;(n=t.name)?t.component?o_({name:n,moduleName:e,load:()=>aw(e,t.component)}):console.error(`The modal ${n} from ${e} is missing a 'component' entry and thus cannot be registered.
20
+ To fix this, ensure that you define a 'component' field inside the extension definition.`,t);for(let o of(oc({name:n,load:()=>ak(e,t.component),meta:t.meta||{},order:t.order,moduleName:e,privileges:t.privileges,featureFlag:t.featureFlag,displayExpression:t.displayExpression}),r))ou(o,n)}let aC=[];function aE(e,t){rY(()=>(function(e,t){if(e&&t&&"object"==typeof t){eN(e);let n=t.extensions??[],r=t.modals??[],o=t.workspaces??[],i=t.workspaceGroups??[],a=t.featureFlags??[],s=t.workspaceGroups2??[],l=t.workspaceWindows2??[],c=t.workspaces2??[];t.pages?.forEach(t=>{t&&"object"==typeof t&&Object.hasOwn(t,"component")&&(Object.hasOwn(t,"route")||Object.hasOwn(t,"routeRegex")||Object.hasOwn(t,"routes"))?aC.push({...t,appName:e}):console.warn(`A page for ${e} could not be registered as it does not appear to have the required properties`,t)}),n.forEach(t=>{t&&"object"==typeof t&&Object.hasOwn(t,"name")&&Object.hasOwn(t,"component")?aN(e,t):console.warn(`An extension for ${e} could not be registered as it does not appear to have the required properties`,t)}),r.forEach(t=>{if(t&&"object"==typeof t&&Object.hasOwn(t,"name")&&Object.hasOwn(t,"component")){let n;(n=t.name)?t.component?ox({name:n,moduleName:e,load:()=>ak(e,t.component)}):console.error(`The modal ${n} from ${e} is missing a 'component' entry and thus cannot be registered.
21
21
  To fix this, ensure that you define a 'component' field inside the modal definition.`,t):console.error(`A modal definition in ${e} is missing an name and thus cannot be
22
22
  registered. To fix this, ensure that you define the "name" field inside the
23
23
  modal definition.`,t)}else console.warn(`A modal for ${e} could not be registered as it does not appear to have the required properties`,t)}),o.forEach(t=>{t&&"object"==typeof t&&Object.hasOwn(t,"name")&&Object.hasOwn(t,"component")?function(e,t){let n=t.name;if(!n)return console.error(`A workspace definition in ${e} is missing a name and thus cannot be registered.
24
24
  To fix this, ensure that you define the "name" field inside the workspace definition.`,t);let r=t.title;if(!r)return console.error(`A workspace definition in ${e} is missing a title and thus cannot be registered.
25
25
  To fix this, ensure that you define the "title" field inside the workspace definition.`,t);if(!t.component)return console.error(`The workspace ${n} from ${e} is missing a 'component' entry and thus cannot be registered.
26
- To fix this, ensure that you define a 'component' field inside the workspace definition.`,t);for(let o of(ob({name:n,title:r,component:t.component,moduleName:e,type:t.type,canHide:t.canHide,canMaximize:t.canMaximize,width:t.width,preferredWindowSize:t.preferredWindowSize,groups:t.groups,load:()=>aw(e,t.component)}),t.groups||[]))ox({name:o,members:[n]})}(e,t):console.warn(`A workspace for ${e} could not be registered as it does not appear to have the required properties`,t)}),i.forEach(t=>{if(t&&"object"==typeof t&&Object.hasOwn(t,"name")){let n;(n=t.name)?ox({name:n,members:t.members??[]}):console.error(`A workspace group definition in ${e} is missing a name and thus cannot be registered.
27
- To fix this, ensure that you define the "name" field inside the workspace definition.`,t)}else console.warn(`A workspace group for ${e} could not be registered as it does not appear to have the required properties`,t)}),oP(e,s);for(let t of(oA(e,l),l))t.icon&&ab(e,{name:t.name,component:t.icon,slot:t.group,order:t.order});oO(e,c),a.forEach(t=>{if(t&&"object"==typeof t&&Object.hasOwn(t,"flagName"))t.flagName?t.label?t.description?rN(t.flagName,t.label,t.description):console.error(`A feature flag definition in ${e} is missing a description and thus cannot be registered.
26
+ To fix this, ensure that you define a 'component' field inside the workspace definition.`,t);for(let o of(oN({name:n,title:r,component:t.component,moduleName:e,type:t.type,canHide:t.canHide,canMaximize:t.canMaximize,width:t.width,preferredWindowSize:t.preferredWindowSize,groups:t.groups,load:()=>ak(e,t.component)}),t.groups||[]))oC({name:o,members:[n]})}(e,t):console.warn(`A workspace for ${e} could not be registered as it does not appear to have the required properties`,t)}),i.forEach(t=>{if(t&&"object"==typeof t&&Object.hasOwn(t,"name")){let n;(n=t.name)?oC({name:n,members:t.members??[]}):console.error(`A workspace group definition in ${e} is missing a name and thus cannot be registered.
27
+ To fix this, ensure that you define the "name" field inside the workspace definition.`,t)}else console.warn(`A workspace group for ${e} could not be registered as it does not appear to have the required properties`,t)}),o$(e,s);for(let t of(oM(e,l),l))t.icon&&aN(e,{name:t.name,component:t.icon,slot:t.group,order:t.order});oW(e,c),a.forEach(t=>{if(t&&"object"==typeof t&&Object.hasOwn(t,"flagName"))t.flagName?t.label?t.description?rP(t.flagName,t.label,t.description):console.error(`A feature flag definition in ${e} is missing a description and thus cannot be registered.
28
28
  To fix this, ensure that you define the "description" field inside the feature flag definition.`,t):console.error(`A feature flag definition in ${e} is missing a description and thus cannot be registered.
29
29
  To fix this, ensure that you define the "label" field inside the feature flag definition.`,t):console.error(`A feature flag definition in ${e} is missing a name and thus cannot be registered.
30
- To fix this, ensure that you define the "name" field inside the feature flag definition.`,t);else console.warn(`A feature flag for ${e} could not be registered as it does not appear to have the required properties`,t)})}})(e,t))}function aS(){ax.sort((e,t)=>e.appName.localeCompare(t.appName,"en"));let e=new Map;for(let t of ax){e.has(t.appName)?e.set(t.appName,e.get(t.appName)+1):e.set(t.appName,0);let n=e.get(t.appName),r=`${t.appName}-page-${n}`,o=t.containerDomId??"omrs-apps-container",i=document.getElementById(o),a=`single-spa-application:${r}`;if(i){let e=document.createElement("div");e.id=a,i?.appendChild(e)}else throw Error(`${t.appName} ${t.component} cannot be mounted to "${o}"; DOM element does not exist.`);!function(e,t){let n=void 0!==t.route?t.route:void 0!==t.routeRegex&&new RegExp(t.routeRegex);if(!1===n)return console.warn(`A registered page definition is missing a route and thus cannot be registered.
30
+ To fix this, ensure that you define the "name" field inside the feature flag definition.`,t);else console.warn(`A feature flag for ${e} could not be registered as it does not appear to have the required properties`,t)})}})(e,t))}function aI(){aC.sort((e,t)=>e.appName.localeCompare(t.appName,"en"));let e=new Map;for(let t of aC){e.has(t.appName)?e.set(t.appName,e.get(t.appName)+1):e.set(t.appName,0);let n=e.get(t.appName),r=`${t.appName}-page-${n}`,o=t.containerDomId??"omrs-apps-container",i=document.getElementById(o),a=`single-spa-application:${r}`;if(i){let e=document.createElement("div");e.id=a,i?.appendChild(e)}else throw Error(`${t.appName} ${t.component} cannot be mounted to "${o}"; DOM element does not exist.`);!function(e,t){let n=void 0!==t.route?t.route:void 0!==t.routeRegex&&new RegExp(t.routeRegex);if(!1===n)return console.warn(`A registered page definition is missing a route and thus cannot be registered.
31
31
  To fix this, ensure that you define the "route" (or alternatively the "routeRegex") field inside the extension definition.`,e);if(!t.component)return console.warn(`A registered page definition is missing a component and thus cannot be registered.
32
- To fix this, ensure that you define the "component" field inside the page definition.`,e);let r=function(e,{featureFlag:t}){return t?n=>!!rE(t)&&e(n):e}(function e(t){if(Array.isArray(t)){let n=t.map(e);return e=>n.some(t=>t(e))}return"string"==typeof t?(0,to.pathToActiveWhen)(window.getOpenmrsSpaBase()+t):t instanceof RegExp?e=>t.test(e.pathname.replace(window.getOpenmrsSpaBase(),"")):()=>t}(n),t);(0,to.registerApplication)(e,()=>aw(t.appName,t.component),r)}(r,t)}}let aj={PHONE_MIN:0,PHONE_MAX:600,TABLET_MIN:601,TABLET_MAX:1023,SMALL_DESKTOP_MIN:1024,SMALL_DESKTOP_MAX:1439,LARGE_DESKTOP_MIN:1440,LARGE_DESKTOP_MAX:Number.MAX_SAFE_INTEGER};function aN(){document.body.classList.toggle("omrs-breakpoint-lt-tablet",window.innerWidth<aj.TABLET_MIN),document.body.classList.toggle("omrs-breakpoint-gt-phone",window.innerWidth>aj.PHONE_MAX),document.body.classList.toggle("omrs-breakpoint-gt-tablet",window.innerWidth>aj.TABLET_MAX),document.body.classList.toggle("omrs-breakpoint-lt-desktop",window.innerWidth<aj.SMALL_DESKTOP_MIN),document.body.classList.toggle("omrs-breakpoint-lt-small-desktop",window.innerWidth<aj.SMALL_DESKTOP_MIN),document.body.classList.toggle("omrs-breakpoint-lt-large-desktop",window.innerWidth<aj.LARGE_DESKTOP_MIN),document.body.classList.toggle("omrs-breakpoint-gt-small-desktop",window.innerWidth>aj.SMALL_DESKTOP_MAX)}let aC=!1;function aE(){aC||(window.addEventListener("resize",aN),aN(),aC=!0)}var aI=n(6870),aP=n(5530),aA=n.n(aP);function aO({title:e,children:t}){let n="tablet"===i0();return(0,aI.jsxs)("div",{className:aA()({"-esm-primary-navigation__card-header-module__tabletHeader___Vkmd-":n,"-esm-primary-navigation__card-header-module__desktopHeader___ocWGq":!n}),children:[(0,aI.jsx)("h4",{children:e}),t]})}let aR=["red","magenta","purple","blue","teal","cyan","gray","green","warm-gray","cool-gray","high-contrast","outline"],a$={primaryColor:{_type:H.String,_description:"The color for displaying primary diagnoses tags",_default:"red",_validators:[e8.oneOf(aR)]},secondaryColor:{_type:H.String,_description:"The color for displaying secondary diagnoses tags",_default:"blue",_validators:[e8.oneOf(aR)]}},aT={"Brand color #1":{_default:"#005d5d",_type:H.String},"Brand color #2":{_default:"#004144",_type:H.String},"Brand color #3":{_default:"#007d79",_type:H.String},excludePatientIdentifierCodeTypes:{uuids:{_type:H.Array,_description:"List of UUIDs of patient identifier types to exclude from rendering in the patient banner",_default:[],_elements:{_type:H.UUID}}},implementationName:{_type:H.String,_description:"A name of the place (or authority) where all possible locations a user can choose are located.",_default:"Clinic"},patientPhotoConceptUuid:{_type:H.ConceptUuid,_default:"736e8771-e501-4615-bfa7-570c03f4bef5",_description:"Used to look up the patient photo, which is stored as an attachment obs. Set to `null` in order to disable the feature and use only generated avatars. To remove the avatars entirely, use extension configuration's `remove` feature."},preferredCalendar:{_type:H.Object,_description:"Keys should be locale codes, and values should be the preferred calendar for that locale. For example, {'am': 'ethiopic'}.",_default:{am:"ethiopic"},_elements:{_validators:[e8.oneOf(["buddhist","chinese","coptic","dangi","ethioaa","ethiopic","gregory","hebrew","indian","islamic","islamic-umalqura","islamic-tbla","islamic-civil","islamic-rgsa","iso8601","japanese","persian","roc","islamicc"])]}},preferredDateLocale:{_type:H.Object,_description:"Allows setting the locale used for date formatting for any browser locale. Does not affect time formatting. Keys should be locale codes, and values should be the preferred locale for formatting dates. For example, {'en': 'en-US', 'fr-CA': 'en-CA'}.",_default:{en:"en-GB"},_elements:{_type:H.String}},diagnosisTags:a$};var aM=n(8326);let aW={"carbon.table.batch.cancel":"cancel","carbon.table.batch.items.selected":"batchActionsItemsSelected","carbon.table.batch.item.selected":"batchActionItemSelected","carbon.table.batch.selectAll":"selectAll"},aL=e=>(0,aI.jsx)(aM.TableBatchActions,{translateWithId:(e,t)=>{let n=aW[e];return n?tc(n,e,t):e},...e}),aD="-esm-primary-navigation__custom-overflow-menu-module__container___8PykS",aB="-esm-primary-navigation__custom-overflow-menu-module__menu___qsOLn",aU="-esm-primary-navigation__custom-overflow-menu-module__show___BserJ",aF="-esm-primary-navigation__custom-overflow-menu-module__overflowMenuButton___n86Gz",aH=(0,oU.createContext)(null);function aG(){let e=(0,oU.useContext)(aH);if(!e)throw Error("useCustomOverflowMenu must be used within a CustomOverflowMenu");return e}function az({menuTitle:e,children:t}){let[n,r]=oF().useState(!1),o=i3(()=>r(!1),n),i="tablet"===i0(),a=(0,oU.useCallback)(()=>r(e=>!e),[]),s=(0,oU.useRef)(null),l=(0,oU.useRef)(null),c=(0,oU.useId)(),u=`custom-overflow-menu-trigger-${c}`,d=`custom-overflow-menu-${c}`,m=(0,oU.useCallback)(()=>{r(!1),s.current?.focus()},[]),p=(0,oU.useMemo)(()=>({closeMenu:m}),[m]),f=(0,oU.useCallback)(e=>{"Escape"===e.key&&n&&(e.stopPropagation(),m())},[m,n]),g=oU.Children.toArray(t);(0,oU.useEffect)(()=>{if(n&&l.current){let e=l.current.querySelector('[role="menuitem"]:not([disabled])');e?.focus()}},[n]);let h=(0,oU.useCallback)(({currentIndex:e,direction:t})=>{let n=l.current?.querySelectorAll('[role="menuitem"]:not([disabled])');if(!n?.length)return;let r=document.activeElement?.closest?.('[role="menuitem"]')??document.activeElement,o=Array.from(n).indexOf(r);if(-1===o)return void n[t>0?0:n.length-1]?.focus();let i=o+t,a=i<0?n.length-1:i>=n.length?0:i;n[a]?.focus()},[]),_=g.map((e,t)=>(0,oU.isValidElement)(e)?(0,oU.cloneElement)(e,{closeMenu:m,handleOverflowMenuItemFocus:h,index:t}):e);return(0,aI.jsxs)("div",{"data-overflow-menu":!0,className:aA()("cds--overflow-menu",aD),ref:o,children:[(0,aI.jsx)("button",{className:aA()("cds--btn","cds--btn--ghost","cds--overflow-menu__trigger",{"cds--overflow-menu--open":n},aF),"aria-controls":d,"aria-expanded":n,"aria-haspopup":"true",id:u,onClick:a,onKeyDown:f,ref:s,children:e}),(0,aI.jsxs)("div",{className:aA()("cds--overflow-menu-options","cds--overflow-menu--flip",aB,{[aU]:n}),"aria-labelledby":u,"data-floating-menu-direction":"bottom",id:d,onKeyDown:f,ref:l,role:"menu",tabIndex:-1,children:[(0,aI.jsx)("ul",{className:aA()("cds--overflow-menu-options__content",{"cds--overflow-menu-options--lg":i}),children:(0,aI.jsx)(aH.Provider,{value:p,children:_})}),(0,aI.jsx)("span",{})]})]})}function aV(e){let t=(0,oU.useContext)(aH);return(0,aI.jsx)(aM.OverflowMenuItem,{...e,closeMenu:t?.closeMenu})}var aJ=n(7665);let aq=["omrs-icon-activity","omrs-icon-add","omrs-icon-arrow-down","omrs-icon-arrow-left","omrs-icon-arrow-right","omrs-icon-arrow-up","omrs-icon-baby","omrs-icon-calendar-heat-map","omrs-icon-calendar","omrs-icon-caret-down","omrs-icon-caret-left","omrs-icon-caret-right","omrs-icon-caret-up","omrs-icon-chart-average","omrs-icon-chart-line","omrs-icon-checkmark-filled","omrs-icon-checkmark-outline","omrs-icon-chemistry","omrs-icon-chevron-down","omrs-icon-chevron-left","omrs-icon-chevron-right","omrs-icon-chevron-up","omrs-icon-close","omrs-icon-close-filled","omrs-icon-close-outline","omrs-icon-document","omrs-icon-document-attachment","omrs-icon-download","omrs-icon-drug-order","omrs-icon-edit","omrs-icon-event-schedule","omrs-icon-events","omrs-icon-gender-female","omrs-icon-gender-male","omrs-icon-gender-other","omrs-icon-gender-unknown","omrs-icon-generic-order-type","omrs-icon-group","omrs-icon-group-access","omrs-icon-hospital-bed","omrs-icon-image-medical","omrs-icon-information","omrs-icon-information-filled","omrs-icon-information-square","omrs-icon-inventory-management","omrs-icon-lab-order","omrs-icon-list-checked","omrs-icon-location","omrs-icon-material-order","omrs-icon-maximize","omrs-icon-medication","omrs-icon-message-queue","omrs-icon-microscope","omrs-icon-mobile-check","omrs-icon-money","omrs-icon-mother","omrs-icon-movement","omrs-icon-overflow-menu--horizontal","omrs-icon-overflow-menu--vertical","omrs-icon-password","omrs-icon-pedestrian-family","omrs-icon-pen","omrs-icon-printer","omrs-icon-procedure-order","omrs-icon-programs","omrs-icon-renew","omrs-icon-referral-order","omrs-icon-report","omrs-icon-reset","omrs-icon-save","omrs-icon-search","omrs-icon-settings","omrs-icon-shopping-cart","omrs-icon-shopping-cart--arrow-down","omrs-icon-sticky-note-add","omrs-icon-switcher","omrs-icon-syringe","omrs-icon-table-of-contents","omrs-icon-table","omrs-icon-time","omrs-icon-tools","omrs-icon-translate","omrs-icon-trash-can","omrs-icon-tree-view--alt","omrs-icon-two-factor-authentication","omrs-icon-user-avatar","omrs-icon-user-follow","omrs-icon-user-xray","omrs-icon-user","omrs-icon-view-off","omrs-icon-view","omrs-icon-warning"],aK=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-activity",iconProps:e})})),aX=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-add",iconProps:e})})),aY=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-arrow-down",iconProps:e})})),aZ=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-arrow-left",iconProps:e})})),aQ=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-arrow-right",iconProps:e})})),a0=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-arrow-up",iconProps:e})})),a1=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-baby",iconProps:e})})),a2=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-calendar-heat-map",iconProps:e})})),a6=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-calendar",iconProps:e})})),a5=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-caret-down",iconProps:e})})),a8=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-caret-left",iconProps:e})})),a3=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-caret-right",iconProps:e})})),a4=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-caret-up",iconProps:e})})),a7=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-chart-average",iconProps:e})})),a9=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-chart-line",iconProps:e})})),se=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-checkmark-filled",iconProps:e})})),st=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-checkmark-outline",iconProps:e})})),sn=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-chemistry",iconProps:e})})),sr=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-chevron-down",iconProps:e})})),so=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-chevron-left",iconProps:e})})),si=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-chevron-right",iconProps:e})})),sa=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-chevron-up",iconProps:e})})),ss=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-close",iconProps:e})})),sl=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-close-filled",iconProps:e})})),sc=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-close-outline",iconProps:e})})),su=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-document",iconProps:e})})),sd=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-document-attachment",iconProps:e})})),sm=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-download",iconProps:e})})),sp=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-drug-order",iconProps:e})})),sf=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-edit",iconProps:e})})),sg=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-event-schedule",iconProps:e})})),sh=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-events",iconProps:e})})),s_=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-gender-female",iconProps:e})})),sw=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-gender-male",iconProps:e})})),sy=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-gender-other",iconProps:e})})),sv=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-gender-unknown",iconProps:e})})),sb=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-generic-order-type",iconProps:e})})),sx=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-group",iconProps:e})})),sk=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-group-access",iconProps:e})})),sS=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-hospital-bed",iconProps:e})})),sj=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-image-medical",iconProps:e})})),sN=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-information",iconProps:e})})),sC=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-information-filled",iconProps:e})})),sE=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-information-square",iconProps:e})})),sI=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-inventory-management",iconProps:e})})),sP=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-lab-order",iconProps:e})})),sA=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-list-checked",iconProps:e})})),sO=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-location",iconProps:e})})),sR=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-material-order",iconProps:e})})),s$=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-maximize",iconProps:e})})),sT=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-medication",iconProps:e})})),sM=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-message-queue",iconProps:e})})),sW=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-microscope",iconProps:e})})),sL=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-mobile-check",iconProps:e})})),sD=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-money",iconProps:e})})),sB=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-mother",iconProps:e})})),sU=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-movement",iconProps:e})})),sF=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-overflow-menu--horizontal",iconProps:e})})),sH=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-overflow-menu--horizontal",iconProps:e})})),sG=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-password",iconProps:e})})),sz=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-pedestrian-family",iconProps:e})})),sV=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-pen",iconProps:e})})),sJ=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-printer",iconProps:e})})),sq=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-procedure-order",iconProps:e})})),sK=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-programs",iconProps:e})})),sX=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-referral-order",iconProps:e})})),sY=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-renew",iconProps:e})})),sZ=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-report",iconProps:e})})),sQ=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-reset",iconProps:e})})),s0=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-save",iconProps:e})})),s1=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-search",iconProps:e})})),s2=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-settings",iconProps:e})})),s6=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-switcher",iconProps:e})})),s5=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-shopping-cart",iconProps:e})})),s8=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-shopping-cart--arrow-down",iconProps:e})})),s3=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-sticky-note-add",iconProps:e})})),s4=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-syringe",iconProps:e})})),s7=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-table-of-contents",iconProps:e})})),s9=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-table",iconProps:e})})),le=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-time",iconProps:e})})),lt=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-tools",iconProps:e})})),ln=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-translate",iconProps:e})})),lr=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-trash-can",iconProps:e})})),lo=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-tree-view--alt",iconProps:e})})),li=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-two-factor-authentication",iconProps:e})})),la=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-user-avatar",iconProps:e})})),ls=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-user-follow",iconProps:e})})),ll=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-user-xray",iconProps:e})})),lc=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-user",iconProps:e})})),lu=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-view-off",iconProps:e})})),ld=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-view",iconProps:e})})),lm=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(ly,{ref:t,icon:"omrs-icon-warning",iconProps:e})})),lp=lm,lf=sd,lg=sA,lh=sj,l_=s8,lw=(0,oU.memo)((0,oU.forwardRef)(function({icon:e,fallback:t,...n},r){let o=(0,oU.useRef)(e?document.getElementById(e):void 0);return(0,oU.useEffect)(()=>{let t=document.getElementById("omrs-svgs-container"),n=new MutationObserver(t=>{for(let n of t)"childList"===n.type&&(o.current=e?document.getElementById(e):void 0)});return t&&n.observe(t,{childList:!0}),()=>n.disconnect()},[e]),(0,aI.jsx)(iy,{value:o.current,fallback:t,children:(0,aI.jsx)(ly,{ref:r,icon:e,iconProps:n})})})),ly=(0,oU.memo)((0,oU.forwardRef)(function({icon:e,iconProps:t},n){let{className:r,fill:o,size:i}=Object.assign({},{fill:"currentColor",size:20},t);(i<=0||i>72)&&(console.error(`Invalid size '${i}' specified for ${e}. Defaulting to 20.`),i=20);let a=(0,oU.useRef)(null);return(0,oU.useImperativeHandle)(n,()=>a.current),(0,oU.useEffect)(()=>{a.current&&"currentColor"!==o&&a.current.style.setProperty("--omrs-icon-fill",o)},[]),(0,aI.jsx)("svg",{ref:a,className:aA()("omrs-icon","-esm-primary-navigation__icons-module__icon___BfFhd",r),height:i,width:i,viewBox:"0 0 16 16",children:(0,aI.jsx)("use",{href:`#${e}`})})})),lv=({path:e,title:t,basePath:n,icon:r})=>{let{t:o}=(0,o7.useTranslation)(),i=(0,aJ.useLocation)(),a=(0,oU.useMemo)(()=>{if(!e)return!1;let t=e.startsWith("/")?e.slice(1):e;if(t.startsWith("http"))return t===window.location.href;let n=t.split("/").map(e=>decodeURIComponent(e)),r=(i.pathname??"").split("/").slice(1).map(e=>decodeURIComponent(e));return r.some((e,t)=>n.every((e,n)=>r[t+n]===e))},[i.pathname,e]);return(0,aI.jsx)("div",{children:(0,aI.jsx)(oG,{className:aA()("cds--side-nav__link",{"active-left-nav-link":a}),to:`${n}/${encodeURIComponent(e)}`,children:(0,aI.jsxs)("span",{className:"-esm-primary-navigation__dashboard-module__menu___ds1tf",children:[(0,aI.jsx)(lw,{icon:r,className:"-esm-primary-navigation__dashboard-module__icon___4Zrrh",size:16}),(0,aI.jsx)("span",{children:o(t)})]})})},e)};function lb(e){return function({basePath:t}){return(0,aI.jsx)(aJ.BrowserRouter,{children:(0,aI.jsx)(lv,{basePath:t,...e})})}}var lx=n(7715),lk=n(7532),lS=n(3692),lj=n(7615),lN=n(700),lC=n(6816),lE=n(1168);function lI(e){return oF().createElement(lE.C,e)}var lP=n(3010),lA=n(6513),lO=n(6190);function lR(e,t,n=!1){if(null==e)return n?e:void 0;if("string"==typeof e&&!e)return n?null:void 0;if(e instanceof lP.ng||e instanceof lP._l||e instanceof lP.Ip)return t?(0,lA.yP)(e,t):e;{let n=al()(e).toDate(),r=new lP.ng(n.getFullYear(),n.getMonth()+1,n.getDate());return t?(0,lA.yP)(r,t):r}}function l$(e){if(e)return e.toDate((0,lO.Xj)())}var lT=n(9002);function lM(e){if("string"==typeof e&&0!==e.trim().length)try{return new Intl.Locale(e.replace(/[_@]/g,"-")).toString()}catch{return}}function lW(e){let t=e??"",n=lM(t);if(!n)return t;try{return new Intl.DisplayNames([n],{type:"language"}).of(n)??t}catch{return t}}function lL(){let e=window.i18next.language,t=lM(e)??e;return"ht"===t&&(t="fr-HT"),t}var lD=n(7883),lB=n(424),lU=n(1492),lF=n(8271);function lH(e,t){var n=function(e,t){if(!t.has(e))throw TypeError("attempted to get private field on non-instance");return t.get(e)}(e,t);return n.get?n.get.call(e):n.value}as.extend(ac),as.extend(lU),as.extend(lB);let lG="YYYY-MM-DDTHH:mm:ss.SSSZZ";function lz(e){return null!=e&&28===e.trim().length&&"T"===(e=e.trim())[10]&&":"===e[13]&&":"===e[16]&&"."===e[19]&&("+"===e[23]||"-"===e[23])&&as(e,lG).isValid()}function lV(e){return as(e).isToday()}function lJ(e){return lz(e)?as(e,lG).toDate():null}function lq(e,t=!1){let n=as(e);return t&&(n=n.utc()),n.format(lG)}function lK(e){return as(e).toDate()}var lX=new WeakMap;let lY=new class{register(e,t){lH(this,lX).set(e,t)}getCalendar(e){if(!e)return;if(e.calendar)return e.calendar;if(e.region){let t=`${e.language}-${e.region}`;if(lH(this,lX).has(t))return lH(this,lX).get(t)}if(e.language&&lH(this,lX).has(e.language))return lH(this,lX).get(e.language);let t=new Intl.DateTimeFormat(e.toString()).resolvedOptions().calendar;return lH(this,lX).set(`${e.language}${e.region?`-${e.region}`:""}`,t),t}constructor(){!function(e,t,n){if(t.has(e))throw TypeError("Cannot initialize the same private elements twice on an object");t.set(e,n)}(this,lX,{writable:!0,value:new Map})}};function lZ(e,t){lY.register(e,t)}function lQ(e){let t=e??lL();return lY.getCalendar(t instanceof Intl.Locale?t:new Intl.Locale(t))}let l0={mode:"standard",time:"for today",day:!0,month:!0,year:!0,noToday:!1};function l1(e,t={}){let n=lL(),r=(0,lD.CD)(e,n);if(r.invalid)return console.warn(`Could not parse invalid date '${e}'`),null;!(0,lF.A)(r.day)&&(0,lF.A)(r.month)&&(r=Object.assign({},(0,U.A)(r,"day"),{month:r.day})),r.month&&(r.month-=1),r.day&&(r=Object.assign({},(0,U.A)(r,"day"),{date:r.day}));let o=as().set(r).toDate();return(0,lF.A)(r.year)&&(t.year=!1),(0,lF.A)(r.month)&&(t.month=!1),(0,lF.A)(r.date)&&(t.day=!1),l2(o,t)}function l2(e,t){let n,r=t?.locale??lL(),o=new Intl.Locale(r),{calendar:i,mode:a,time:s,day:l,month:c,year:u,noToday:d,numberingSystem:m}={...l0,...{noToday:"am"===o.language},...t},p={calendar:i??lQ(o),year:u?"numeric":void 0,month:c?"short":void 0,day:l?"2-digit":void 0,numberingSystem:m},f=as(e).isToday();if(f&&!d)n=(n=new Intl.RelativeTimeFormat(r,{numeric:"auto"}).format(0,"day"))[0].toLocaleUpperCase(r)+n.slice(1);else{"en"===o.language&&(r="en-GB");let t=new Intl.DateTimeFormat(r,p).formatToParts(e);("en"===o.language||"am"===o.language)&&"standard"==a&&u&&l&&(t=t.map(l6("-"))),"wide"==a&&(t=t.map(l6(" — "))),"ethiopic"===p.calendar&&(t=t.filter((e,t,n)=>"era"!==e.type&&("literal"!==e.type||!(t<n.length-1)||"era"!==n[t+1].type))),n=t.map(e=>e.value).join("")}return(!0===s||f&&"for today"===s)&&(n+=`, ${l5(e)}`),n}let l6=e=>(t,n,r)=>"literal"!==t.type||" "!==t.value||n<r.length-1&&"era"===r[n+1].type?t:{type:"literal",value:e};function l5(e){return e.toLocaleTimeString(lL(),{hour:"2-digit",minute:"2-digit"})}function l8(e,t){return l2(e,{...t,time:!0})}function l3(e,t){let n=lQ("string"==typeof t?new Intl.Locale(t):t);return n?(0,lA.yP)(e,(0,lT.d)(n)):e}function l4(e,t){return new Intl.DurationFormat(lL(),t).format(e)}function l7(e,t){if(null==e)return null;if("string"==typeof e){let n=lL(),r=(0,lD.CD)(e,n);return r.invalid?(console.warn(`Could not interpret '${e}' as a date`),null):(r.day&&!r.month&&(r={...(0,U.A)(r,"day"),...{month:r.day}}),r.month&&(r.month-=1),r.day&&(r={...(0,U.A)(r,"day"),...{date:r.day}}),as(t).set(r))}return as(e)}let l9=["years","months","days","hours","minutes","seconds"],ce={second:"seconds",minute:"minutes",hour:"hours",day:"days",month:"months",year:"years"},ct={seconds:45,minutes:45,hours:22,days:26,months:11,years:1/0};function cn(e,t=as(),n){let r,o=as(t),i=l7(e,o);if(null==i)return null;if("string"==typeof n){let e=ce[n]??n;return{[e]:o.diff(i,e)}}let{thresholds:a,largestUnit:s,smallestUnit:l}=n??{};if(void 0!==s||void 0!==l){let e,t=l?ce[l]??l:void 0;return e="auto"===s||void 0===s?function(e,t,n){let r=l9.indexOf(n);for(let o=0;o<l9.length;o++){let i=l9[o];if(t.diff(e,i)>0)return o<=r?i:n}return n}(i,o,t??"seconds"):ce[s]??s,function(e,t,n,r){let o=l9.indexOf(n),i=l9.indexOf(r),a=l9.slice(o,i+1),s={},l=e;for(let e of a){let n=t.diff(l,e);s[e]=n,l=l.add(n,e)}return s}(i,o,e,t??e)}let c=(r=function(e){let t={...ct};if(e)for(let[n,r]of Object.entries(e))void 0!==r&&(t[ce[n]??n]=r);return t}(a),o.diff(i,"seconds")<r.seconds?"seconds":o.diff(i,"minutes")<r.minutes?"minutes":o.diff(i,"hours")<r.hours?"hours":o.diff(i,"days")<r.days?"days":o.diff(i,"months")<r.months?"months":"years");return{[c]:o.diff(i,c)}}let cr={style:"short",localeMatcher:"lookup"};function co(e,t=as(),n){let r=cn(e,t,n);return null==r?null:l4(r,"object"==typeof n&&n.formatOptions?{...cr,...n.formatOptions}:cr)}let ci=(0,oU.createContext)(null);function ca(){let e=iI({externalModuleName:"@openmrs/esm-styleguide"}).preferredDateLocale,t=(0,oU.useMemo)(()=>{let t=lL();return e[t]&&(t=e[t]),t},[window.i18next.language]),n=(0,oU.useMemo)(()=>{let e=lQ(t);return void 0!==e?(0,lT.d)(e):void 0},[t]),r=(0,oU.useMemo)(()=>new Intl.Locale(t,{calendar:n?.identifier}),[t,n]),o=(0,oU.useMemo)(()=>n?(0,lA.yP)((0,lO.Ec)((0,lO.Xj)()),n):(0,lO.Ec)((0,lO.Xj)()),[n]);return{calendar:n,intlLocale:r,today_:o}}let cs=new lP.ng(1793,1,1);var cl=n(5830),cc=n(6156),cu=n(4745),cd=n(1202);function cm(e,t){return Number.parseInt(l2(e,{calendar:t.calendar,locale:t.baseName,day:!1,month:!1,noToday:!0,numberingSystem:"latn"}))}let cp=(0,oU.forwardRef)(function(e,t){let{className:n}=e,r=(0,oU.useContext)(cl.f2),o=(0,oU.useContext)(cl._I),i=r??o,a=(0,oU.useContext)(ci),s=(0,lO.Xj)(),l=l2(i.visibleRange.start.toDate(s),{calendar:a.calendar,locale:a.baseName,day:!1,year:!1,noToday:!0}),c=cm(i.visibleRange.start.toDate(s),a),u=i.maxValue?cm(i.maxValue.toDate(s),a):void 0,d=i.minValue?cm(i.minValue.toDate(s),a):void 0,m=(0,oU.useCallback)(e=>{i.setFocusedDate(i.focusedDate.cycle("year",e-i.focusedDate.year))},[]);return i&&(0,aI.jsxs)("span",{ref:t,className:n,children:[(0,aI.jsx)("span",{children:l}),(0,aI.jsxs)(cu.oz,{formatOptions:{useGrouping:!1},maxValue:u,minValue:d,onChange:m,value:c,children:[(0,aI.jsx)(cd.p,{}),(0,aI.jsxs)(lj.Y,{children:[(0,aI.jsx)(lN.$,{slot:"increment",children:(0,aI.jsx)(a4,{size:8})}),(0,aI.jsx)(lN.$,{slot:"decrement",children:(0,aI.jsx)(a5,{size:8})})]})]})]})});var cf=n(9588);let cg="-esm-primary-navigation__datepicker-module__inputGroup___+4zks",ch="-esm-primary-navigation__datepicker-module__inputSegment___wiExn",c_="-esm-primary-navigation__datepicker-module__dateInputWrapper___uiyAC",cw="-esm-primary-navigation__datepicker-module__invalidText___SxtTL",cy="-esm-primary-navigation__datepicker-module__flatButton___UU1Qp",cv="-esm-primary-navigation__datepicker-module__flatButtonMd___fhR-1",cb="-esm-primary-navigation__datepicker-module__flatButtonSm___5INZ7",cx="-esm-primary-navigation__datepicker-module__flatButtonLg___RFMrl";function ck({children:e}){let t=(0,oU.useContext)(lk.Pg),n=(0,oU.useContext)(lk.a8),r=t??n,o=i3(()=>r?.close());return(0,aI.jsx)(cf.lG,{className:"-esm-primary-navigation__datepicker-module__dialog___qllIf",ref:o,children:e})}let cS=(0,oU.forwardRef)(function({variant:e,today_:t,minDate:n,maxDate:r},o){let i="range"===e,a=i?cl._e:cl.Vv;return(0,aI.jsx)(cc.A,{ref:o,className:"-esm-primary-navigation__datepicker-module__popover___16UMX",placement:"bottom start",offset:1,isNonModal:!0,children:(0,aI.jsx)(ck,{children:(0,aI.jsxs)(a,{...i?{minValue:n,maxValue:r,className:"cds--date-picker__calendar"}:{},children:[(0,aI.jsxs)("header",{className:"-esm-primary-navigation__datepicker-module__header___WAVlD",children:[(0,aI.jsx)(lN.$,{className:aA()(cy,cv),slot:"previous",children:(0,aI.jsx)(so,{size:16})}),(0,aI.jsx)(cp,{className:"-esm-primary-navigation__datepicker-module__monthYear___A3aKF"}),(0,aI.jsx)(lN.$,{className:aA()(cy,cv),slot:"next",children:(0,aI.jsx)(si,{size:16})})]}),(0,aI.jsx)(cl.r8,{className:"-esm-primary-navigation__datepicker-module__calendarGrid___6qRB2",children:e=>(0,aI.jsx)(cl.Zr,{className:aA()("cds--date-picker__day",{"-esm-primary-navigation__datepicker-module__today___TZl6M":0===t.compare(e)}),date:e},e.toString())})]})})})});var cj=n(8017),cN=n(9774),cC=n(7956);let cE=(0,oU.forwardRef)(function(e,t){let n=(0,oU.useContext)(lk.Pg),[r,o]=(0,lx.JT)({slot:e.slot},t,cN.cQ),{locale:i}=(0,lE.Y)(),a=(0,cC.F)({...r,locale:i,createCalendar:lT.d}),s=(0,oU.useRef)(null),{fieldProps:l,inputProps:c}=(0,cj.cJ)({...r,inputRef:s},a,o),u=(0,oU.useCallback)(()=>{a.isDisabled||n.toggle()},[]);return(0,aI.jsxs)(lx.Kq,{values:[[cN.$,a],[cd.E,{...c,ref:s}],[lj.t,{...l,ref:o,isInvalid:a.isInvalid}]],children:[(0,aI.jsx)(lj.Y,{...e,id:e.id,ref:t,slot:e.slot||void 0,className:e.className,isDisabled:a.isDisabled,isInvalid:a.isInvalid,onClick:u,children:a.segments.map((t,n)=>(0,oU.cloneElement)(e.children(t),{key:n}))}),(0,aI.jsx)(cd.p,{})]})}),cI=(0,oU.forwardRef)(function(e,t){let n=(0,oU.useContext)(lk.Pg),r=(0,oU.useContext)(lk.a8);return(n??r).isInvalid?(0,aI.jsx)(lm,{ref:t,size:16,...e}):(0,aI.jsx)(a6,{ref:t,size:16,...e})});var cP=n(64),cA=n(5503),cO=n(1697),cR=n(7866),c$=n(8035),cT=n(2231);let cM=(0,oU.forwardRef)(function({segment:e,...t},n){let r=(0,oU.useContext)(cN.$),o=(0,cP.U)(n),{segmentProps:i}=(0,cA.V)(e,r,o),{focusProps:a,isFocused:s,isFocusVisible:l}=(0,cO.o)(),{hoverProps:c,isHovered:u}=(0,cR.M)({...t,isDisabled:r.isDisabled||"literal"===e.type}),d=function(e){let{className:t,style:n,children:r,defaultClassName:o,defaultChildren:i,defaultStyle:a,values:s}=e;return(0,oU.useMemo)(()=>{let e,l,c;return e="function"==typeof t?t({...s,defaultClassName:o}):t,l="function"==typeof n?n({...s,defaultStyle:a||{}}):n,c="function"==typeof r?r({...s,defaultChildren:i}):null==r?i:r,{className:e??o,style:l||a?{...a,...l}:void 0,children:c??i,"data-rac":""}},[t,n,r,o,i,a,s])}({...t,values:{...e,isReadOnly:!e.isEditable,isInvalid:r.isInvalid,isDisabled:r.isDisabled,isHovered:u,isFocused:s,isFocusVisible:l},defaultChildren:e.text}),m=(0,oU.useCallback)(e=>{e.stopPropagation()},[]);return(0,aI.jsx)("span",{...(0,c$.v)((0,cT.$)(t),i,a,c),...d,ref:o,style:i.style,"data-placeholder":e.isPlaceholder||void 0,"data-invalid":r.isInvalid||void 0,"data-readonly":!e.isEditable||void 0,"data-disabled":r.isDisabled||void 0,"data-type":e.type,"data-hovered":u||void 0,"data-focused":s||void 0,"data-focus-visible":l||void 0,onClick:m})}),cW={short:!1,size:"md"},cL=(0,oU.forwardRef)(function(e,t){let{className:n,defaultValue:r,isDisabled:o,invalid:i,invalidText:a,isInvalid:s,label:l,labelText:c,light:u,maxDate:d,minDate:m,onChange:p,onChangeRaw:f,short:g,size:h,value:_,...w}={...cW,...e},{calendar:y,intlLocale:v,today_:b}=ca(),x=(0,oU.useId)(),k=!!(c??l),S=(0,oU.useMemo)(()=>lR(r,y),[r,y]),j=(0,oU.useMemo)(()=>lR(_,y,!0),[_,y]),N=(0,oU.useMemo)(()=>lR(d,y),[d,y]),C=(0,oU.useMemo)(()=>lR(m??cs,y),[m,y]),E=(0,oU.useMemo)(()=>i||s,[i,s]),I=(0,oU.useMemo)(()=>(f&&p&&console.error("An OpenmrsDatePicker component was created with both onChange and onChangeRaw handlers defined. Only onChangeRaw will be used."),f??(e=>p?.(l$(e)))),[f,p]);return(0,aI.jsx)(lI,{locale:v.toString(),children:(0,aI.jsx)("div",{className:aA()("cds--form-item",n),children:(0,aI.jsx)(lx.Kq,{values:[[ci,v]],children:(0,aI.jsxs)(lk.lr,{className:aA()("cds--date-picker","cds--date-picker--single",{"cds--date-picker--short":g,"cds--date-picker--light":u}),defaultValue:S,isDisabled:o,isInvalid:E,maxValue:N,minValue:C,value:j,shouldForceLeadingZeros:"en"===v.language||void 0,...w,onChange:I,children:[(0,aI.jsxs)("div",{className:"cds--date-picker-container",children:[k&&(0,aI.jsx)(lS.J,{className:aA()("cds--label",{"cds--label--disabled":o}),htmlFor:x,children:c??l}),(0,aI.jsxs)(lj.Y,{className:cg,children:[(0,aI.jsx)(cE,{id:k?x:void 0,ref:t,className:aA()("cds--date-picker-input__wrapper","-esm-primary-navigation__datepicker-module__inputWrapper___kykar",{"-esm-primary-navigation__datepicker-module__inputWrapperSm___KJtg-":"sm"===h,"-esm-primary-navigation__datepicker-module__inputWrapperMd___ablE9":"md"===h||!h||0===h.length,"-esm-primary-navigation__datepicker-module__inputWrapperLg___5dkQp":"lg"===h}),children:e=>"era"!==e.type?(0,aI.jsx)(cM,{className:ch,segment:e}):(0,aI.jsx)(oF().Fragment,{})}),(0,aI.jsx)(lN.$,{className:aA()(cy,{[cb]:"sm"===h,[cv]:"md"===h||!h||0===h.length,[cx]:"lg"===h}),children:(0,aI.jsx)(cI,{})})]}),(0,aI.jsx)(lC.b,{className:cw,children:a})]}),(0,aI.jsx)(cS,{variant:"single",today_:b})]})})})})}),cD=(0,oU.forwardRef)(function({className:e,defaultValue:t,invalid:n,invalidText:r,isDisabled:o,isInvalid:i,label:a,labelText:s,light:l,maxDate:c,minDate:u,onChange:d,onChangeRaw:m,size:p="md",value:f,...g},h){let{calendar:_,intlLocale:w,today_:y}=ca(),v=(0,oU.useId)(),b=!!(s??a),x=(0,oU.useMemo)(()=>{if(f)return{start:lR(f[0],_,!1),end:lR(f[1],_,!1)}},[f,_]),k=(0,oU.useMemo)(()=>{if(t)return{start:lR(t[0],_,!1),end:lR(t[1],_,!1)}},[t,_]),S=(0,oU.useMemo)(()=>lR(u??cs,_,!0),[u,_]),j=(0,oU.useMemo)(()=>lR(c,_,!0),[c,_]),N=(0,oU.useMemo)(()=>n||i,[n,i]),C=(0,oU.useMemo)(()=>(m&&d&&console.error("An OpenmrsDateRangePicker component was created with both onChange and onChangeRaw handlers defined. Only onChangeRaw will be used."),m??(e=>d?.([l$(e.start),l$(e.end)]))),[m,d]);return(0,aI.jsx)(lI,{locale:w.toString(),children:(0,aI.jsx)("div",{className:aA()("cds--form-item",e),children:(0,aI.jsx)(lx.Kq,{values:[[ci,w]],children:(0,aI.jsx)(lk.Ur,{id:b?v:void 0,className:aA()("cds--date-picker",{"cds--date-picker--light":l,"cds--date-picker--disabled":o}),isInvalid:N,shouldForceLeadingZeros:"en"===w.language||void 0,maxValue:j,minValue:S,value:x,defaultValue:k,ref:h,isDisabled:o,...g,onChange:C,children:(0,aI.jsxs)("div",{className:"cds--date-picker-container",children:[b&&(0,aI.jsx)(lS.J,{className:aA()("cds--label",{"cds--label--disabled":o}),htmlFor:v,children:s??a}),(0,aI.jsxs)(lj.Y,{className:cg,children:[(0,aI.jsxs)("div",{className:aA()("-esm-primary-navigation__datepicker-module__inputsWrapper___YlkGh",{"-esm-primary-navigation__datepicker-module__inputsWrapperSm___fAKhS":"sm"===p,"-esm-primary-navigation__datepicker-module__inputsWrapperMd___XVgGP":"md"===p||!p||0===p.length,"-esm-primary-navigation__datepicker-module__inputsWrapperLg___UgHJ1":"lg"===p}),children:[(0,aI.jsx)(cN.J3,{className:aA()("cds--date-picker-input__wrapper","-esm-primary-navigation__datepicker-module__startInput___qgbQm",c_),slot:"start",children:e=>(0,aI.jsx)(cM,{className:ch,segment:e})}),(0,aI.jsx)("div",{className:"-esm-primary-navigation__datepicker-module__separator___79vXZ",children:(0,aI.jsx)("span",{"aria-hidden":"true","data-readonly":!0,children:"–"})}),(0,aI.jsx)(cN.J3,{className:aA()("cds--date-picker-input__wrapper","-esm-primary-navigation__datepicker-module__endInput___huv7x",c_),slot:"end",children:e=>(0,aI.jsx)(cM,{className:ch,segment:e})})]}),(0,aI.jsx)(lN.$,{className:aA()(cy,{[cb]:"sm"===p,[cv]:"md"===p||!p||0===p.length,[cx]:"lg"===p}),children:(0,aI.jsx)(cI,{})})]}),(0,aI.jsx)(lC.b,{className:cw,children:r}),(0,aI.jsx)(cS,{variant:"range",today_:y,minDate:S,maxDate:j})]})})})})})}),cB=({diagnoses:e})=>{let{diagnosisTags:t}=iI({externalModuleName:"@openmrs/esm-styleguide"});return(0,aI.jsx)("div",{className:"-esm-primary-navigation__diagnosis-tags-module__container___8kut8",children:e.map(e=>{let{rank:n,uuid:r,display:o}=e,i=t[1===n?"primaryColor":"secondaryColor"];return(0,aI.jsx)(aM.Tag,{type:i,children:o},r)})})},cU={action:"-esm-primary-navigation__empty-card-module__action___Y0dul",content:"-esm-primary-navigation__empty-card-module__content___fo0nB",desktopHeading:"-esm-primary-navigation__empty-card-module__desktopHeading___0Cg1N",tabletHeading:"-esm-primary-navigation__empty-card-module__tabletHeading___BogTF",tile:"-esm-primary-navigation__empty-card-module__tile___QB8Ld"},cF=({width:e="64",height:t="64"})=>(0,aI.jsx)("svg",{width:e,height:t,viewBox:"0 0 64 64",children:(0,aI.jsx)("use",{href:"#omrs-empty-data-illustration"})}),cH=e=>{let t="tablet"===i0(),n=e.launchForm;return(0,aI.jsx)(aM.Layer,{className:cU.layer,children:(0,aI.jsxs)(aM.Tile,{className:cU.tile,children:[(0,aI.jsx)("div",{className:t?cU.tabletHeading:cU.desktopHeading,children:(0,aI.jsx)("h4",{children:e.headerTitle})}),(0,aI.jsx)(cF,{}),(0,aI.jsx)("p",{className:cU.content,children:tc("emptyStateText","There are no {{displayText}} to display",{displayText:e.displayText})}),(0,aI.jsx)("p",{className:cU.action,children:n&&(0,aI.jsx)(aM.Button,{onClick:()=>n(),kind:"ghost",size:t?"lg":"sm",children:tc("recordNewEntry","Record {{ displayText }}",{displayText:e.displayText})})})]})})},cG=({error:e,headerTitle:t})=>{let n="tablet"===i0();return(0,aI.jsx)(aM.Layer,{children:(0,aI.jsxs)(aM.Tile,{className:"-esm-primary-navigation__error-state-module__tile___dd418",children:[(0,aI.jsx)("div",{className:n?"-esm-primary-navigation__error-state-module__tabletHeading___g5rjg":"-esm-primary-navigation__error-state-module__desktopHeading___Nd9u2",children:(0,aI.jsx)("h4",{children:t})}),(0,aI.jsxs)("p",{className:"-esm-primary-navigation__error-state-module__errorMessage___z2RiN",children:[tc("error","Error")," ",`${e?.response?.status}: `,e?.response?.statusText]}),(0,aI.jsx)("p",{className:"-esm-primary-navigation__error-state-module__errorCopy___dq+e2",children:tc("errorCopy")})]})})},cz=cG,cV=oF().forwardRef((e,t)=>{let{slotName:n,basePath:r,componentContext:o,state:i}=i6(),a=window.location??{pathname:""},s=o2(n??"");return e.isChildOfHeader&&n&&s.length>0?(0,aI.jsxs)(aM.SideNav,{"aria-label":tc("leftNavigation","Left navigation"),className:"-esm-primary-navigation__left-nav-module__leftNav___jzTJK",expanded:!0,isFixedNav:!0,ref:t,...e,children:[(0,aI.jsx)(o8,{name:"global-nav-menu-slot"}),n?(0,aI.jsx)(iy,{value:o,fallback:(0,aI.jsx)(o8,{name:n,state:{basePath:r,currentPath:a,...i}}),children:(0,aI.jsx)(oH.Provider,{value:o,children:(0,aI.jsx)(o8,{name:n,state:{basePath:r,currentPath:a,...i}})})}):null]}):null}),cJ=({selectedLocationUuid:e,defaultLocationUuid:t,locationTag:n,locationsPerRequest:r=50,onChange:o})=>{let[i,a]=(0,oU.useState)(""),s=(0,oU.useId)(),{location:l}=function(e){let t=e?`/ws/fhir2/R4/Location?_id=${e}`:null,{data:n,error:r,isLoading:o}=(0,iO.A)(t,tN,{shouldRetryOnError:e=>!!e?.response?.status&&e.response.status>=500});return(0,oU.useMemo)(()=>({location:n?.data?.entry?n.data.entry[0]:null,error:t?r:null,isLoading:!!t&&o}),[n,o,r,t])}(t),{locations:c,isLoading:u,hasMore:d,loadingNewData:m,error:p,setPage:f}=function(e,t=0,n=""){let r=iA(n),{data:o,isLoading:i,isValidating:a,setSize:s,error:l}=(0,iV.Ay)(function(n,o){if(o){let e=o.data?.link?.find(e=>"next"===e.relation);if(!e)return null;let t=new URL(e.url);return t.origin===window.location.origin?e.url:new URL(`${t.pathname}${t.search?`?${t.search}`:""}`,window.location.origin).toString()}let i=`${tk}/Location?`,a=new URLSearchParams;return a.append("_summary","data"),t&&a.append("_count",""+t),n&&a.append("_getpagesoffset",""+n*t),e&&a.append("_tag",e),"string"==typeof r&&""!==r&&a.append("name:contains",r),i+a.toString()},tN);return(0,oU.useMemo)(()=>({locations:o?.length?o?.flatMap(e=>e?.data?.entry??[]):[],isLoading:i,totalResults:o?.[0]?.data?.total,hasMore:!!o?.length&&o?.[o.length-1]?.data?.link?.some(e=>"next"===e.relation),loadingNewData:a,error:l||null,setPage:s}),[i,o,a,s,l])}(n,r,i),g=(0,oU.useMemo)(()=>l&&!i&&t?[l,...c.filter(({resource:e})=>e.id!==t)]:c??[],[l,c,t,i]),h=(0,oU.useCallback)(e=>{o(),a(e.trim())},[o]),_=i4((0,oU.useCallback)(()=>{!m&&d&&f(e=>e+1)},[m,d,f])),w=d?Math.max(0,Math.floor(g.length-r/2)):-1;return(0,aI.jsxs)(aI.Fragment,{children:[(0,aI.jsx)(aM.Search,{"aria-describedby":p?`${s}-error`:void 0,labelText:tc("searchForLocation"),id:s,placeholder:tc("searchForLocation"),onChange:e=>h(e.target.value),size:"lg"}),p&&(0,aI.jsx)("div",{className:"-esm-primary-navigation__location-picker-module__errorNotification___vWBFD",id:`${s}-error`,children:(0,aI.jsx)(aM.InlineNotification,{kind:"error",subtitle:tc("errorLoadingLoginLocations","Unable to load login locations. Please try again or contact support if the problem persists."),title:tc("error","Error")})}),(0,aI.jsx)("div",{className:"-esm-primary-navigation__location-picker-module__searchResults___Gbet+",children:u?(0,aI.jsx)("div",{className:"-esm-primary-navigation__location-picker-module__loadingContainer___QO-zj",children:Array.from({length:5}).map((e,t)=>(0,aI.jsx)(aM.RadioButtonSkeleton,{className:"-esm-primary-navigation__location-picker-module__radioButtonSkeleton___otoCy",role:"progressbar"},t))}):(0,aI.jsxs)(aI.Fragment,{children:[(0,aI.jsx)("div",{className:"-esm-primary-navigation__location-picker-module__locationResultsContainer___6Pasf",children:g.length>0?(0,aI.jsx)(aM.RadioButtonGroup,{name:"loginLocations",onChange:e=>{o(e?.toString())},orientation:"vertical",valueSelected:e,children:g.map((e,t)=>(0,aI.jsx)(aM.RadioButton,{className:"-esm-primary-navigation__location-picker-module__locationRadioButton___rTDPj",id:e.resource.id,labelText:(0,aI.jsx)("span",{ref:t===w?_:null,children:e.resource.name}),name:e.resource.name,value:e.resource.id},e.resource.id))}):(0,aI.jsx)("div",{className:"-esm-primary-navigation__location-picker-module__emptyState___w4-Ca",children:(0,aI.jsx)("p",{className:"-esm-primary-navigation__location-picker-module__locationNotFound___Of2MJ",children:tc("noResultsToDisplay")})})}),m&&(0,aI.jsx)("div",{className:"-esm-primary-navigation__location-picker-module__loadingIcon___NAwSB",children:(0,aI.jsx)(aM.InlineLoading,{description:tc("loading")})})]})})]})},cq=O("modalState",{modalContainer:null,modalStack:[]}),cK=0;async function cX(e,t,n={}){let r=ow(t),o=null;if(e){if(!r)throw Error(`No modal named '${t}' has been registered.`);let{load:i}=r,a=await i(),s=cK++;o=await oW({...a,name:`${t}-${s}`},{...n,domElement:e})}else w(`Failed to launch modal. Please notify your administrator. Modal name: ${t}`);return o}function cY(e){return"TO_BE_DELETED"===e.state||"DELETED"===e.state}function cZ(e,t){t?.unmount&&(t.unmountPromise?.catch(()=>{}),t.unmount().catch(t=>{console.error(`The modal '${e}' failed to unmount`,t)}))}function cQ(e){return e.find(e=>!cY(e))}function c0(e,t){e.container&&(e.container.style.visibility=t?"unset":"hidden")}let c1=window.getComputedStyle(document.body).overflow;function c2({modalStack:e,modalContainer:t}){if(t)if(e.length){t.style.visibility||(addEventListener("keydown",c5),document.body.style.overflow="hidden",t.style.visibility="unset");let n=cQ(e);e.forEach(e=>{switch(e.state){case"NEW":{let n=function({size:e}){let t=document.createElement("div");return t.className=`cds--modal-container cds--modal-container--${e}`,t.setAttribute("role","dialog"),t.setAttribute("tabindex","-1"),t.setAttribute("aria-modal","true"),t}({size:e.props?.size??"md"});e.container=n,e.state="MOUNTING",cX(n,e.modalName,e.props).then(r=>{cY(e)?cZ(e.modalName,r):r?(e.parcel=r,t.prepend(n),c0(e,cQ(cq.getState().modalStack)===e),r.mountPromise.then(()=>{cY(e)||(e.state="MOUNTED")},t=>{w(t),e.parcel=null,c6(e)})):c6(e)},t=>{w(t),c6(e)});break}case"MOUNTING":case"MOUNTED":c0(e,e===n);break;case"TO_BE_DELETED":e.state="DELETED",e.onClose(),cZ(e.modalName,e.parcel),e.container?.remove(),setTimeout(()=>{let t=cq.getState();cq.setState({...t,modalStack:t.modalStack.filter(t=>t!==e)})},0)}})}else t.style.removeProperty("visibility"),document.body.style.overflow=c1,removeEventListener("keydown",c5)}function c6(e){if(cY(e))return;e.state="TO_BE_DELETED";let t=cq.getState();cq.setState({...t,modalStack:[...t.modalStack]})}function c5(e){"Escape"===e.key&&function(){let[e]=cq.getState().modalStack;e&&c6(e)}()}function c8(e){cq.subscribe(c2),cq.setState({...cq.getState(),modalContainer:e})}function c3(e,t={},n=()=>{}){let r=()=>{let e=cq.getState().modalStack.find(e=>e.onClose===n);e&&c6(e)};if(ow(e)){var o;let i,a;o={state:"NEW",onClose:n,modalName:e,props:{close:r,...t}},a=[o,...(i=cq.getState()).modalStack],cq.setState({...i,modalStack:a})}else w(`Failed to launch modal. Please notify your administrator. Modal name: "${e}"`);return r}var c4=n(9685);let c7=({notification:e})=>{let{description:t,action:n,kind:r,critical:o,title:i,onAction:a}=e;return(0,aI.jsx)(aM.ActionableNotification,{actionButtonLabel:n,kind:r||"info",lowContrast:o,subtitle:t,title:i||"",inline:!0,onActionButtonClick:a})},c9=({subject:e})=>{let[t,n]=(0,oU.useState)([]);return(0,oU.useEffect)(()=>{let t=e.subscribe(e=>n(t=>[...t.filter(t=>t.description!==e.description||t.action!==e.action||t.kind!==e.kind||t.title!==e.title),e]));return()=>t.unsubscribe()},[e]),(0,aI.jsx)(aI.Fragment,{children:t.map(e=>(0,aI.jsx)(c7,{notification:e},e.id))})},ue=({notification:e})=>{let{actionButtonLabel:t,onActionButtonClick:n=()=>{},subtitle:r,kind:o,title:i,critical:a,progressActionLabel:s,id:l,...c}=e,[u,d]=(0,oU.useState)(t);return(0,aI.jsx)(aM.ActionableNotification,{kind:o||"info",actionButtonLabel:u,ariaLabel:tc("closesActionableNotification","Closes actionable notification"),onActionButtonClick:()=>{n(),s&&d(s)},statusIconDescription:tc("actionableNotification","Actionable notification"),subtitle:r,title:i,lowContrast:a,inline:!0,...c})},ut=({subject:e})=>{let[t,n]=(0,oU.useState)([]);return(0,oU.useEffect)(()=>{let t=e.subscribe(e=>n(t=>[...t.filter(t=>t.subtitle!==e.subtitle||t.actionButtonLabel!==e.actionButtonLabel||t.onActionButtonClick!==e.onActionButtonClick||t.kind!==e.kind||t.title!==e.title),e]));return()=>t.unsubscribe()},[e]),(0,aI.jsx)(aI.Fragment,{children:t.map(e=>(0,aI.jsx)(ue,{notification:e},e.id))})};class un{subscribe(e){return this.listeners.add(e),{unsubscribe:()=>{this.listeners.delete(e)}}}next(e){for(let t of[...this.listeners])t(e)}constructor(){!function(e,t,n){t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}(this,"listeners",new Set)}}let ur=new un,uo=0,ui=new un,ua=0;function us(e){e&&(0,o3.createRoot)(e).render((0,aI.jsx)(c9,{subject:ur}))}function ul(e){var t;e&&("string"==typeof(t=e.description)?t.trim().length>0:"object"==typeof t&&(t instanceof Error||!(0,c4.A)(t)))?(e.description instanceof Error&&(e.description=e.description.toLocaleString()),setTimeout(()=>{ur.next({...e,id:uo++})},0)):console.error("showNotification must be called with an object having a 'description' property that is a non-empty string or object")}function uc(e){e&&(0,o3.createRoot)(e).render((0,aI.jsx)(ut,{subject:ui}))}function uu(e){var t;e&&("string"==typeof(t=e.actionButtonLabel)?t.trim().length>0:"object"==typeof t&&!(0,c4.A)(t))?setTimeout(()=>{ui.next({...e,id:ua++})},0):console.error("showActionableNotification must be called with an actionButtonLabel that is a non-empty string")}let ud=["NORMAL","HIGH","CRITICALLY_HIGH","OFF_SCALE_HIGH","LOW","CRITICALLY_LOW","OFF_SCALE_LOW"],um=["critically_low","critically_high","high","low","normal","off_scale_low","off_scale_high"],up={container:"-esm-primary-navigation__numeric-observation-module__container___NfxbH",card:"-esm-primary-navigation__numeric-observation-module__card___9oQAh","abnormal-value":"-esm-primary-navigation__numeric-observation-module__abnormal-value___drvEi","critical-value":"-esm-primary-navigation__numeric-observation-module__critical-value___JAIHt",cell:"-esm-primary-navigation__numeric-observation-module__cell___lTunW","critically-high":"-esm-primary-navigation__numeric-observation-module__critically-high___aDUjc","critically-low":"-esm-primary-navigation__numeric-observation-module__critically-low___5srAK",high:"-esm-primary-navigation__numeric-observation-module__high___7KiyK",low:"-esm-primary-navigation__numeric-observation-module__low___Zs2ct","label-container":"-esm-primary-navigation__numeric-observation-module__label-container___lGnGH","value-container":"-esm-primary-navigation__numeric-observation-module__value-container___hHPXt",label:"-esm-primary-navigation__numeric-observation-module__label___WFuxk",value:"-esm-primary-navigation__numeric-observation-module__value___6fHUr",units:"-esm-primary-navigation__numeric-observation-module__units___EdVuw","pad-right":"-esm-primary-navigation__numeric-observation-module__pad-right___6T9Cd","off-scale-low":"-esm-primary-navigation__numeric-observation-module__off-scale-low___Sc1CV","off-scale-high":"-esm-primary-navigation__numeric-observation-module__off-scale-high___cWpU2",arrow:"-esm-primary-navigation__numeric-observation-module__arrow___SLGUh"},uf=({value:e,unit:t,label:n,interpretation:r,referenceRange:o,conceptUuid:i,variant:a="card",patientUuid:s})=>{let l=(0,oU.useId)(),{referenceRange:c,isLoading:u}=function(e,t){let n=null;e&&(n=t?`${tx}/conceptreferencerange/?patient=${t}&concept=${e}&v=full`:`${tx}/conceptreferencerange/?concept=${e}&v=full`);let{data:r,error:o,isLoading:i}=(0,iO.A)(n,tN),a=r?.data?.results?.[0];return{referenceRange:a?{hiNormal:a.hiNormal??null,hiAbsolute:a.hiAbsolute??null,hiCritical:a.hiCritical??null,lowNormal:a.lowNormal??null,lowAbsolute:a.lowAbsolute??null,lowCritical:a.lowCritical??null}:void 0,error:o,isLoading:i}}(o||r?void 0:i,s),d=o??c,m=(0,oU.useMemo)(()=>{if(r)return r?"--"===r?"normal":ud.includes(r)?r.toLowerCase():um.includes(r)?r:"normal":void 0;if(d&&!u){if(!d||null==e||""===e)return"normal";let t="string"==typeof e?Number.parseFloat(e):e;return Number.isNaN(t)?"normal":null!==d.hiAbsolute&&void 0!==d.hiAbsolute&&t>d.hiAbsolute?"off_scale_high":null!==d.hiCritical&&void 0!==d.hiCritical&&t>=d.hiCritical?"critically_high":null!==d.hiNormal&&void 0!==d.hiNormal&&t>d.hiNormal?"high":null!==d.lowAbsolute&&void 0!==d.lowAbsolute&&t<d.lowAbsolute?"off_scale_low":null!==d.lowCritical&&void 0!==d.lowCritical&&t<=d.lowCritical?"critically_low":null!==d.lowNormal&&void 0!==d.lowNormal&&t<d.lowNormal?"low":"normal"}return"normal"},[r,d,e,u])??"normal",p="critically_low"===m||"critically_high"===m||"off_scale_low"===m||"off_scale_high"===m,f="normal"!==m,g=n?`omrs-numeric-obs-label-${n.replaceAll(/\s+/g,"-").toLowerCase()}-${l}`:void 0,h=`omrs-numeric-obs-value-${l}`,_=`omrs-numeric-obs-unit-${l}`,w=null!=e&&""!==e,y=w?e:tc("notAvailable","Not available"),v=aA()({[up["critically-low"]]:"critically_low"===m||"off_scale_low"===m,[up["critically-high"]]:"critically_high"===m||"off_scale_high"===m,[up.low]:"low"===m,[up.high]:"high"===m,[up["off-scale-low"]]:"off_scale_low"===m,[up["off-scale-high"]]:"off_scale_high"===m}),b=aA()({[up.container]:!0,[up.card]:!0,[up["critical-value"]]:p,[up["abnormal-value"]]:f&&!p}),x=aA()({[up.cell]:!0,[v]:!0});return"cell"===a?(0,aI.jsxs)("div",{className:x,children:[y,w&&t?` ${t}`:""]}):(0,aI.jsxs)("section",{className:b,"data-testid":"numeric-observation-card",children:[n&&(0,aI.jsxs)("div",{className:up["label-container"],children:[(0,aI.jsx)("span",{id:g,className:up.label,children:n}),f&&(0,aI.jsx)("span",{className:up[m.replace("_","-")],title:tc("abnormalValue","Abnormal value")})]}),(0,aI.jsxs)("div",{className:up["value-container"],children:[(0,aI.jsx)("span",{id:h,"aria-labelledby":g&&_?`${g} ${_}`:g||_||void 0,className:up.value,children:y}),w&&t&&(0,aI.jsx)("span",{id:_,className:up.units,children:t})]})]})},ug="-esm-primary-navigation__page-header-module__pageHeader___YOpQL",uh=e=>{if("children"in e){let{children:t,className:n,...r}=e;return(0,aI.jsx)("div",{className:aA()(ug,n),...r,children:t})}{let{title:t,illustration:n,className:r,...o}=e;return(0,aI.jsx)("div",{className:aA()(ug,r),...o,children:(0,aI.jsx)(u_,{title:t,illustration:n})})}},u_=({title:e,illustration:t,className:n})=>{let[r,o]=(0,oU.useState)(null);return(0,oU.useEffect)(()=>{eO("@openmrs/esm-styleguide").then(e=>{o(e)})},[]),(0,aI.jsxs)("div",{className:aA()("-esm-primary-navigation__page-header-module__pageHeaderContent___PjsJm",n),children:[t,(0,aI.jsxs)("div",{className:"-esm-primary-navigation__page-header-module__pageLabels___pPcKj",children:[r?.implementationName&&(0,aI.jsx)("p",{children:tc(r.implementationName)}),(0,aI.jsx)("p",{className:"-esm-primary-navigation__page-header-module__pageName___3d4IC",children:e})]})]})},uw=({totalItems:e,pageSize:t,onPageNumberChange:n,pageNumber:r,dashboardLinkUrl:o,currentItems:i,dashboardLinkLabel:a})=>{let{pageSizes:s,pageItemsCount:l}=ae(t,e,r,i),c="tablet"===i0(),u=tc("paginationItemsCount","{{pageItemsCount}} / {{totalItems}} items",{totalItems:e,pageItemsCount:l});return(0,aI.jsx)(aI.Fragment,{children:e>0&&(0,aI.jsxs)("div",{className:aA()({"-esm-primary-navigation__pagination-module__tablet___lQ3ak":c,"-esm-primary-navigation__pagination-module__desktop___HfUTY":!c}),children:[(0,aI.jsxs)("div",{children:[u,o&&(0,aI.jsx)(oG,{to:o,className:"-esm-primary-navigation__pagination-module__configurableLink___NM9v7",children:a??tc("seeAll","See all")})]}),(0,aI.jsx)(aM.Pagination,{className:"-esm-primary-navigation__pagination-module__pagination___WzkBs",page:r,pageSize:t,pageSizes:s,totalItems:e,onChange:n,pageRangeText:(e,t)=>tc("paginationOfPages","of {{count}} pages",{count:t}),size:c?"lg":"sm"})]})})};function uy(e){return ub(uk(e,"usual","official"))}function uv(e){return uy(e)}function ub(e){var t;let n;return e?e.text??(n=(t=e).given??[],(t.family?n.concat(t.family):n).join(" ")):""}function ux(e){return ub(e)}function uk(e,...t){for(let n of(0==t.length&&(t=["usual"]),t)){let t=e.name?.find(e=>{var t,r;return t=e,r=n,t.use?t.use===r:"usual"===r});if(t)return t}}function uS(e,t=as()){let n=as(t),r=l7(e,n);if(null==r)return null;let o=n.diff(r,"hours"),i=n.diff(r,"days"),a=n.diff(r,"weeks"),s=n.diff(r,"months"),l=n.diff(r,"years"),c={};if(o<2)c.minutes=n.diff(r,"minutes");else if(i<2)c.hours=o;else if(a<4)c.days=i;else if(l<1){let e=n.subtract(a,"weeks").diff(r,"days");c.weeks=a,c.days=e}else if(l<2){let e=n.subtract(s,"months").diff(r,"days");c.months=s,c.days=e}else if(l<18){let e=n.subtract(l,"year").diff(r,"months");c.years=l,c.months=e}else c.years=l;return c}function uj(e,t=as()){let n=uS(e,t);if(null==n)return null;let r={style:"short",localeMatcher:"lookup"};return"minutes"in n&&0===n.minutes&&(r.minutesDisplay="always"),l4(n,r)}let uN={container:"-esm-primary-navigation__patient-banner-patient-info-module__container___Gjd-4",activePatientContainer:"-esm-primary-navigation__patient-banner-patient-info-module__activePatientContainer___QLcpg",patientBanner:"-esm-primary-navigation__patient-banner-patient-info-module__patientBanner___7nrgC",patientName:"-esm-primary-navigation__patient-banner-patient-info-module__patientName___-bF9a",patientAvatar:"-esm-primary-navigation__patient-banner-patient-info-module__patientAvatar___AkN3H",patientAvatarButton:"-esm-primary-navigation__patient-banner-patient-info-module__patientAvatarButton___KDxA6",patientInfo:"-esm-primary-navigation__patient-banner-patient-info-module__patientInfo___+WtDB",demographics:"-esm-primary-navigation__patient-banner-patient-info-module__demographics___Vtf3v",row:"-esm-primary-navigation__patient-banner-patient-info-module__row___NIOYI",flexRow:"-esm-primary-navigation__patient-banner-patient-info-module__flexRow___VxdGB",tagsSlot:"-esm-primary-navigation__patient-banner-patient-info-module__tagsSlot___lU6+4",identifiers:"-esm-primary-navigation__patient-banner-patient-info-module__identifiers___tehd8",identifier:"-esm-primary-navigation__patient-banner-patient-info-module__identifier___bSJIF",primaryIdentifier:"-esm-primary-navigation__patient-banner-patient-info-module__primaryIdentifier___yOV1B",secondaryIdentifier:"-esm-primary-navigation__patient-banner-patient-info-module__secondaryIdentifier___WvJbh",value:"-esm-primary-navigation__patient-banner-patient-info-module__value___sBM-q",tag:"-esm-primary-navigation__patient-banner-patient-info-module__tag___BEvEV",gender:"-esm-primary-navigation__patient-banner-patient-info-module__gender___4XkLq",separator:"-esm-primary-navigation__patient-banner-patient-info-module__separator___iYBA3",tooltipPadding:"-esm-primary-navigation__patient-banner-patient-info-module__tooltipPadding___EWVCK",tooltipSmallText:"-esm-primary-navigation__patient-banner-patient-info-module__tooltipSmallText___yDmRU",actionsButtonText:"-esm-primary-navigation__patient-banner-patient-info-module__actionsButtonText___mn139"};function uC({showIdentifierLabel:e,type:t,value:n}){return(0,aI.jsx)("span",{className:uN.primaryIdentifier,children:(0,aI.jsxs)(aM.Tag,{className:uN.tag,type:"gray",children:[e&&t?.text&&(0,aI.jsxs)("span",{className:uN.label,children:[t.text,": "]}),(0,aI.jsx)("span",{className:uN.value,children:n})]})})}function uE({showIdentifierLabel:e,type:t,value:n}){return(0,aI.jsxs)(aM.FormLabel,{className:uN.secondaryIdentifier,id:`patient-banner-identifier-${n}`,children:[e&&(0,aI.jsxs)("span",{className:uN.label,children:[t?.text,": "]}),(0,aI.jsx)("span",{className:uN.value,children:n})]})}function uI({identifiers:e,showIdentifierLabel:t}){let{excludePatientIdentifierCodeTypes:n}=iI(),{primaryIdentifierCode:r}=ar(),o=e?.filter(e=>{let t=e.type?.coding?.[0]?.code;return t&&!n?.uuids.includes(t)})??[];return(0,aI.jsx)(aI.Fragment,{children:o?.length?o.map(({value:e,type:n},i)=>(0,aI.jsxs)(oF().Fragment,{children:[(0,aI.jsx)("span",{className:uN.identifier,children:n?.coding?.[0]?.code===r?(0,aI.jsx)(uC,{showIdentifierLabel:t,type:n,value:e}):(0,aI.jsx)(uE,{showIdentifierLabel:t,type:n,value:e})}),i<o.length-1&&(0,aI.jsx)("span",{className:uN.separator,children:"\xb7"})]},e)):""})}let uP={Female:s_,Male:sw,Other:sy,Unknown:sv},uA=({gender:e})=>{let t=uP[e];return t?(0,aI.jsx)(t,{fill:"#525252"}):null},uO={male:"Male",female:"Female",other:"Other",unknown:"Unknown"};function uR({patient:e,renderedFrom:t}){var n;let r,o,i=uy(e),a=e?.gender&&(o=uO[r=(n=e.gender).toLowerCase()]??"Unknown",{displayText:tc(r,n),iconKey:o}),s=(0,oU.useMemo)(()=>({patientUuid:e.id,patient:e,renderedFrom:t}),[e.id,e,t]);return(0,aI.jsxs)("div",{className:uN.patientInfo,children:[(0,aI.jsx)("div",{className:aA()(uN.row,uN.patientNameRow),children:(0,aI.jsxs)("div",{className:uN.flexRow,children:[(0,aI.jsx)("span",{className:uN.patientName,children:i}),a&&(0,aI.jsxs)("div",{className:uN.gender,children:[(0,aI.jsx)(uA,{gender:a.iconKey}),(0,aI.jsx)("span",{children:a.displayText})]}),(0,aI.jsx)(o8,{className:uN.tagsSlot,name:"patient-banner-tags-slot",state:s})]})}),(0,aI.jsxs)("div",{className:uN.demographics,children:[e.birthDate&&(0,aI.jsxs)(aI.Fragment,{children:[(0,aI.jsx)("span",{children:uj(e.birthDate)}),(0,aI.jsx)("span",{className:uN.separator,children:"\xb7"}),(0,aI.jsx)("span",{children:l1(e.birthDate,{time:!1})}),(0,aI.jsx)("span",{className:uN.separator,children:"\xb7"})]}),(0,aI.jsx)(uI,{identifiers:e.identifier,showIdentifierLabel:!0}),(0,aI.jsx)(o8,{className:uN.extensionSlot,name:"patient-banner-bottom-slot",state:s})]})]})}var u$=n(7683);function uT({patient:e,patientUuid:t,actionsSlotName:n,additionalActionsSlotState:r}){let[o,i]=(0,oU.useState)(!1),{extensions:a}=o6(n),s="tablet"===i0(),l=i3(()=>i(!1),o),c=(0,oU.useRef)(null),u=(0,oU.useRef)(null),d=(0,oU.useId)(),m=`patient-actions-menu-trigger-${d}`,p=`patient-actions-menu-${d}`,f=(0,oU.useCallback)(()=>i(e=>!e),[]),g=(0,oU.useCallback)(()=>{i(!1),c.current?.focus()},[]),h=(0,oU.useCallback)(e=>{if("Escape"===e.key&&o){e.stopPropagation(),g();return}if(("ArrowDown"===e.key||"ArrowUp"===e.key)&&o){e.preventDefault();let t=u.current?.querySelectorAll('[role="menuitem"]:not([disabled])');if(!t?.length)return;let n=document.activeElement?.closest?.('[role="menuitem"]')??document.activeElement,r=Array.from(t).indexOf(n);if(-1===r)return void t["ArrowDown"===e.key?0:t.length-1]?.focus();let o=r+("ArrowDown"===e.key?1:-1),i=o<0?t.length-1:o>=t.length?0:o;t[i]?.focus()}},[g,o]);(0,oU.useEffect)(()=>{if(o&&u.current){let e=u.current.querySelector('[role="menuitem"]:not([disabled])');e?.focus()}},[o]);let _=(0,oU.useMemo)(()=>({patientUuid:t,patient:e,closeMenu:g,...r}),[t,e,g,r]);return 0===a.length?null:(0,aI.jsx)("div",{className:"-esm-primary-navigation__patient-banner-actions-menu-module__overflowMenuContainer___lXHHD",children:(0,aI.jsxs)("div",{"data-overflow-menu":!0,className:aA()("cds--overflow-menu",aD),ref:l,children:[(0,aI.jsxs)("button",{className:aA()("cds--btn","cds--btn--ghost","cds--overflow-menu__trigger",{"cds--overflow-menu--open":o},aF),"aria-controls":p,"aria-expanded":o,"aria-haspopup":"true",id:m,onClick:f,onKeyDown:h,ref:c,children:[(0,aI.jsx)("span",{className:"-esm-primary-navigation__patient-banner-actions-menu-module__actionsButtonText___SdOyM",children:tc("actions","Actions")})," ",(0,aI.jsx)(u$.CH,{size:16,style:{marginLeft:"0.5rem",fill:"#78A9FF"}})]}),(0,aI.jsxs)("div",{className:aA()("cds--overflow-menu-options","cds--overflow-menu--flip",aB,{[aU]:o}),"aria-labelledby":m,"data-floating-menu-direction":"bottom",id:p,onKeyDown:h,ref:u,role:"menu",tabIndex:-1,children:[(0,aI.jsx)("ul",{className:aA()("cds--overflow-menu-options__content",{"cds--overflow-menu-options--lg":s}),children:(0,aI.jsx)(o8,{name:n,state:_},n)}),(0,aI.jsx)("span",{})]})]})})}var uM=n(397),uW=n.n(uM);function uL(e){let{patientPhotoConceptUuid:t}=iI({externalModuleName:"@openmrs/esm-styleguide"}),n=t?`${tx}/obs?patient=${e}&concept=${t}&v=full`:null,{data:r,error:o,isLoading:i}=(0,o9.u)(e?n:null,tN),a=r?.data?.results[0];return{data:a?{dateTime:a?.obsDatetime,imageSrc:a?.value?.links?.uri}:null,error:o,isLoading:i}}let uD=({width:e=56,height:t=56,"aria-label":n})=>{let{t:r}=(0,o7.useTranslation)();return(0,aI.jsxs)("svg",{"aria-label":n??r("patientPhotoPlaceholder","Patient photo placeholder"),width:e,height:t,fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,aI.jsx)("path",{fill:"#ffffff",d:"M0 0h56v56H0z"}),(0,aI.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"m36.75 20.134-.884-.884L19.25 35.866l.884.884 1.25-1.25H34.25a1.252 1.252 0 0 0 1.25-1.25V21.384l1.25-1.25Zm-2.5 14.116H22.634l4.87-4.87 1.487 1.486a1.25 1.25 0 0 0 1.768 0l.991-.991 2.5 2.498v1.877Zm0-3.645-1.616-1.616a1.25 1.25 0 0 0-1.768 0l-.991.991-1.486-1.486 5.861-5.86v7.971Zm-12.5 1.145v-1.875l3.125-3.123.858.859.885-.885-.86-.86a1.25 1.25 0 0 0-1.767 0l-2.241 2.242V21.75h10V20.5h-10c-.69 0-1.25.56-1.25 1.25v10h1.25Z",fill:"#8D8D8D"})]})},uB="-esm-primary-navigation__patient-photo-module__avatar___t5TmZ";function uU({patientUuid:e,patientName:t,alt:n}){let{data:r,isLoading:o}=uL(e),[i,a]=(0,oU.useState)(null),[s,l]=(0,oU.useState)(!1),c=(0,oU.useMemo)(()=>uW().generate(e),[e]);(0,oU.useEffect)(()=>{if(r?.imageSrc){let e=new URL(r.imageSrc,window.location.origin).pathname;l(!0);let t=!1,n=new Image;return n.onload=()=>{t||(a(e),l(!1))},n.onerror=()=>{t||(a(null),l(!1))},n.src=e,()=>{t=!0}}a(null),l(!1)},[r?.imageSrc]);let u=(0,oU.useMemo)(()=>n||(i?tc("patientPhotoAlt","Profile photo of {{patientName}}",{patientName:t}):tc("patientAvatarAlt","Avatar for {{patientName}}",{patientName:t})),[n,i,t]);return o||s?(0,aI.jsx)(aM.SkeletonIcon,{className:"-esm-primary-navigation__patient-photo-module__skeleton___ueN8Q","data-testid":"skeleton-icon"}):r?.imageSrc&&!i?(0,aI.jsx)(uD,{"aria-label":tc("patientPhotoPlaceholder","Photo placeholder for {{patientName}}",{patientName:t})}):i?(0,aI.jsx)("div",{"aria-label":u,children:(0,aI.jsx)("img",{className:uB,src:i,alt:u,title:t})}):(0,aI.jsx)("div",{"aria-label":u,children:(0,aI.jsx)("div",{className:uB,title:t,style:{backgroundImage:c.toDataUrl(),backgroundRepeat:"no-repeat",backgroundSize:"cover"},children:(0,aI.jsx)("span",{className:"-esm-primary-navigation__patient-photo-module__initials___-k9Hv",children:function(e,t=3){return e.split(/\s+/).filter(Boolean).slice(0,t).map(e=>e[0]).join("")}(t)})})})}let uF=["omrs-pict-appointments","omrs-pict-assessment-1","omrs-pict-assessment-2","omrs-pict-blood-bank","omrs-pict-cardiology","omrs-pict-ct-scan","omrs-pict-dentistry","omrs-pict-digital-trust","omrs-pict-emergency-department","omrs-pict-facility","omrs-pict-geriatrics","omrs-pict-gynaecology","omrs-pict-in-patient","omrs-pict-laboratory","omrs-pict-labs-2","omrs-pict-metadata-export","omrs-pict-obstetrics","omrs-pict-patient-search","omrs-pict-patients","omrs-pict-payments-desk","omrs-pict-pharmacy","omrs-pict-pharmacy-2","omrs-pict-registration","omrs-pict-service-queues","omrs-pict-stock-management","omrs-pict-transfer","omrs-pict-triage","omrs-pict-x-ray"],uH=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-appointments",pictogramProps:e})})),uG=uH,uz=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-assessment-1",pictogramProps:e})})),uV=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-assessment-2",pictogramProps:e})})),uJ=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-blood-bank",pictogramProps:e})})),uq=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-cardiology",pictogramProps:e})})),uK=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-ct-scan",pictogramProps:e})})),uX=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-dentistry",pictogramProps:e})})),uY=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-digital-trust",pictogramProps:e})})),uZ=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-emergency-department",pictogramProps:e})})),uQ=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-facility",pictogramProps:e})})),u0=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-geriatrics",pictogramProps:e})})),u1=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-gynaecology",pictogramProps:e})})),u2=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-in-patient",pictogramProps:e})})),u6=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-laboratory",pictogramProps:e})})),u5=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-labs-2",pictogramProps:e})})),u8=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-metadata-export",pictogramProps:e})})),u3=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-obstetrics",pictogramProps:e})})),u4=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-patient-search",pictogramProps:e})})),u7=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-patients",pictogramProps:e})})),u9=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-payments-desk",pictogramProps:e})})),de=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-pharmacy",pictogramProps:e})})),dt=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-pharmacy-2",pictogramProps:e})})),dn=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-registration",pictogramProps:e})})),dr=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-service-queues",pictogramProps:e})})),di=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-stock-management",pictogramProps:e})})),da=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-transfer",pictogramProps:e})})),ds=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-triage",pictogramProps:e})})),dl=(0,oU.memo)((0,oU.forwardRef)(function(e,t){return(0,aI.jsx)(dm,{ref:t,pictogram:"omrs-pict-x-ray",pictogramProps:e})})),dc=uQ,du=u7,dd=(0,oU.memo)((0,oU.forwardRef)(function({pictogram:e,fallback:t,...n},r){let o=(0,oU.useRef)(document.getElementById(e));return(0,oU.useEffect)(()=>{let t=document.getElementById("omrs-svgs-container"),n=new MutationObserver(t=>{for(let n of t)"childList"===n.type&&(o.current=document.getElementById(e))});return t&&n.observe(t,{childList:!0}),()=>n.disconnect()},[e]),(0,aI.jsx)(iy,{value:o.current,fallback:t,children:(0,aI.jsx)(dm,{ref:r,pictogram:e,pictogramProps:n})})})),dm=(0,oU.memo)((0,oU.forwardRef)(function({pictogram:e,pictogramProps:t},n){let{className:r,size:o}=Object.assign({},{size:92},t);return(o<=26||o>144)&&(console.error(`Invalid size '${o}' specified for ${e}. Defaulting to 92.`),o=92),(0,aI.jsx)("svg",{ref:n,className:aA()("-esm-primary-navigation__pictograms-module__pictogram___wXX7t",r),height:o,width:o,children:(0,aI.jsx)("use",{href:`#${e}`})})})),dp=({children:e})=>"tablet"===i0()?(0,aI.jsx)(aM.Layer,{children:e}):(0,aI.jsx)(aI.Fragment,{children:e}),df=({snackbar:e,closeSnackbar:t})=>{let{actionButtonLabel:n="",kind:r="success",onActionButtonClick:o=()=>{},isLowContrast:i="error"!==r,progressActionLabel:a,subtitle:s="",timeoutInMs:l=5e3,autoClose:c="error"!==r,title:u,id:d,...m}=e,[p,f]=(0,oU.useState)(n),[g,h]=(0,oU.useState)(!0),[_,w]=(0,oU.useState)(!1),y=(0,oU.useCallback)(()=>{setTimeout(t,250)},[t]),v=(0,oU.useCallback)(()=>{w(!0),y()},[y]);return(0,oU.useEffect)(()=>{if(c){let e=setTimeout(v,l);return()=>clearTimeout(e)}},[l,c,v]),(0,oU.useEffect)(()=>{h(!1),window.setTimeout(()=>{h(!0)},0)},[]),(0,aI.jsx)(aM.ActionableNotification,{actionButtonLabel:p,"aria-label":tc("closeSnackbar","Close snackbar"),className:aA()("-esm-primary-navigation__snackbar-module__slideIn___-oZIt",{"-esm-primary-navigation__snackbar-module__animated___M2YBU":g,"-esm-primary-navigation__snackbar-module__slideOut___yEmGT":_}),kind:r,lowContrast:i,onActionButtonClick:()=>{o(),v(),a&&f(a)},onClose:y,statusIconDescription:tc("snackbarNotification","Snackbar notification"),subtitle:s,title:u,...m})},dg=({subject:e})=>{let[t,n]=(0,oU.useState)([]),r=(0,oU.useCallback)(e=>{n(t=>t.filter(t=>t!==e))},[]);return(0,oU.useEffect)(()=>{let t=e.subscribe(e=>n(t=>[...t.filter(t=>t.subtitle!==e.subtitle||t.actionButtonLabel!==e.actionButtonLabel||t.onActionButtonClick!==e.onActionButtonClick||t.kind!==e.kind||t.title!==e.title),e]));return()=>t.unsubscribe()},[e]),(0,aI.jsx)(aI.Fragment,{children:t.map(e=>(0,aI.jsx)(df,{snackbar:e,closeSnackbar:()=>r(e)},e.id))})},dh=new un,d_=0;function dw(e){e&&(0,o3.createRoot)(e).render((0,aI.jsx)(dg,{subject:dh}))}function dy(e){var t;e&&"string"==typeof(t=e.title)&&t.trim().length>0?setTimeout(()=>{dh.next({...e,id:d_++})},0):console.error("showSnackbar must be called with an object having a 'title' property that is a non-empty string")}let dv=({toast:e,closeToast:t})=>{let{description:n,kind:r,critical:o,title:i,actionButtonLabel:a,onActionButtonClick:s=()=>{}}=e,l=(0,oU.useCallback)(()=>{s(),t()},[t,s]);return(0,aI.jsx)("div",{children:(0,aI.jsx)(aM.ActionableNotification,{actionButtonLabel:a,kind:r||"info",lowContrast:o,subtitle:n,title:i||"",onActionButtonClick:l,onClose:t})})},db=({subject:e})=>{let[t,n]=(0,oU.useState)([]),r=(0,oU.useCallback)(e=>{n(t=>t.filter(t=>t!==e))},[]);return(0,oU.useEffect)(()=>{let t=e.subscribe(e=>n(t=>[...t.filter(t=>t.description!==e.description||t.kind!==e.kind||t.title!==e.title||t.actionButtonLabel!==e.actionButtonLabel||t.onActionButtonClick!==e.onActionButtonClick),e]));return()=>t.unsubscribe()},[e]),(0,aI.jsx)(aI.Fragment,{children:t.map(e=>(0,aI.jsx)(dv,{toast:e,closeToast:()=>r(e)},e.id))})},dx=new un,dk=0;function dS(e){e&&(0,o3.createRoot)(e).render((0,aI.jsx)(db,{subject:dx}))}function dj(e){var t;e&&("string"==typeof(t=e.description)?t.trim().length>0:"object"==typeof t&&!(0,c4.A)(t))?setTimeout(()=>{dx.next({...e,id:dk++})},0):console.error("showToast must be called with an object having a 'description' property that is a non-empty string or object")}function dN(e,t=!1){if(t)return!0;let n=dA[e];return!n||!n()}function dC(e,t){let n=dD.getState()?.workspaceGroup,r=n?.name;r&&e===r&&dH(()=>{let r=dq(e);r&&(r.setState({},!0),r.subscribe(()=>{})()),"function"==typeof n?.cleanup&&n.cleanup(),dD.setState(e=>({...e,workspaceGroup:void 0})),"function"==typeof t&&t()},r?e=>e.currentWorkspaceGroup===r:()=>!0)}function dE(e,t){let{name:n,additionalProps:r}=t;oS(n);let o=()=>{dM(e.name,{ignoreChanges:!0,onWorkspaceClose:()=>dI(n,r),closeWorkspaceGroup:!1})};dN(e.name)?o():dz("closing-workspace-launching-new-workspace",o,e.title??e.name)}function dI(e,t){let n=oS(e),r=dD.getState().workspaceGroup;if(r&&!r.members?.includes(e))return void dC(r.name,()=>{dI(e,t)});let o=dD.getState().workspaceGroup?.name,i={...n,title:dV(n,t),closeWorkspace:(t={})=>dM(e,t),closeWorkspaceWithSavedChanges:t=>dM(e,{ignoreChanges:!0,...t}),promptBeforeClosing:t=>{var n,r;return n=e,r=t,void(dA[n]=r)},setTitle:(t,n)=>{i.title=t,i.titleNode=n,dD.setState(t=>{let n=t.openWorkspaces.map(t=>t.name===e?i:t);return{...t,openWorkspaces:n}})},currentWorkspaceGroup:o,additionalProps:t??{}};function a(e,t){dD.setState(n=>{let r=[e,...t??n.openWorkspaces],o=dF(e);return{...n,openWorkspaces:r,workspaceWindowState:o}})}o&&dq(o,t);let s=dD.getState().openWorkspaces,l=s.findIndex(t=>t.name===e),c=s.find(e=>e.type==i.type);if(0===s.length)a(i);else if(s[0].canHide||0===l)if(l>=0){let t=s[l];a({...t,additionalProps:i.additionalProps,...t.title===dV(t,t.additionalProps)&&{title:dV(i,i.additionalProps)}},s.filter(t=>t.name!=e))}else c?(a(c,dD.getState().openWorkspaces.filter(e=>e.type!=i.type)),dE(c,{name:e,additionalProps:t})):a(i);else dE(s[0],{name:e,additionalProps:t})}function dP({targetUrl:e,contextKey:t,workspaceName:n,additionalProps:r}){dW(t),dI(n,r),tm({to:e})}let dA={};function dO(e,t){dA[e]=t}function dR(e){return dA[e]}function d$(){let e=dD.getState();dD.setState({...e,prompt:null})}let dT={ignoreChanges:!1,onWorkspaceClose:()=>{},closeWorkspaceGroup:!0};function dM(e,t={}){t={...dT,...t};let n=()=>{let n=dD.getState();n.openWorkspaces.find(t=>t.name===e);let r=n.openWorkspaces.filter(t=>t.name!=e),o=dD.getState().workspaceGroup?.name;o&&t.closeWorkspaceGroup&&dC(o),dA[e]=()=>!1,dD.setState(e=>({...e,prompt:null,openWorkspaces:r,workspaceWindowState:dF(r?.[0])})),t?.onWorkspaceClose?.()};return dN(e,t?.ignoreChanges)?(n(),!0):(dz("closing-workspace",n,oS(e).title??e),!1)}function dW(e){dD.getState().context!=e&&dD.setState({context:e,openWorkspaces:[],prompt:null})}let dL={context:"",openWorkspaces:[],prompt:null,workspaceWindowState:"normal",workspaceGroup:void 0},dD=O("workspace",dL);function dB(){return dD}function dU(e){let t=dD.getState();dD.setState({...t,workspaceWindowState:e})}function dF(e){return e?.preferredWindowSize??"normal"}function dH(e=()=>{},t=()=>!0){let n=dD.getState().openWorkspaces.filter(t).every(({name:e})=>dN(e)),r=()=>{dJ(),e?.()};n?r():dz("closing-all-workspaces",r)}function dG(){let{workspaceWindowState:e,openWorkspaces:t,prompt:n,workspaceGroup:r}=oK(dD);return(0,oU.useMemo)(()=>({active:t.length>0,prompt:n,workspaceWindowState:e,workspaces:t,workspaceGroup:r}),[t,e,n,r])}function dz(e,t=()=>{},n=""){let r;switch(e){case"closing-workspace":r={title:tc("unsavedChangesTitleText","Unsaved changes"),body:tc("unsavedChangesInOpenedWorkspace","You may have unsaved changes in the opened workspace. Do you want to discard these changes?"),onConfirm:()=>{t?.()},confirmText:tc("discard","Discard")};break;case"closing-all-workspaces":{let e=dD.getState().openWorkspaces.filter(({name:e})=>!dN(e)).map(({title:e},t)=>`${t+1}. ${e}`);r={title:tc("closingAllWorkspacesPromptTitle","You have unsaved changes"),body:tc("closingAllWorkspacesPromptBody","There may be unsaved changes in the following workspaces. Do you want to discard changes in the following workspaces? {{workspaceNames}}",{workspaceNames:e.join(",")}),onConfirm:()=>{t?.()},confirmText:tc("closeAllOpenedWorkspaces","Discard changes in {{count}} workspaces",{count:e.length})};break}case"closing-workspace-launching-new-workspace":r={title:tc("unsavedChangesTitleText","Unsaved changes"),body:tc("unsavedChangesInWorkspace",'There may be unsaved changes in "{{workspaceName}}". Please save them before opening another workspace.',{workspaceName:n}),onConfirm:()=>{dD.setState(e=>({...e,prompt:null})),t?.()},confirmText:tc("openAnyway","Open anyway")};break;default:console.error(`Workspace system trying to open unknown prompt type "${e}" in function "showWorkspacePrompts"`),t?.();return}dD.setState(e=>({...e,prompt:r}))}function dV(e,t){return t?.workspaceTitle??e.title}function dJ(){dD.setState(dL)}function dq(e,t={}){if(!e||"default"===e)return;let n=$(e,{});return t&&n.setState(e=>({...e,...t})),n}let dK="-esm-primary-navigation__action-menu-button-module__container___f7spB",dX="-esm-primary-navigation__action-menu-button-module__elementContainer___ZROo9",dY="-esm-primary-navigation__action-menu-button-module__active___+mcQh";function dZ({getIcon:e,formOpenInTheBackground:t,tagContent:n}){return(0,aI.jsxs)(aI.Fragment,{children:[e({size:16}),t?(0,aI.jsx)("span",{className:"-esm-primary-navigation__action-menu-button-module__interruptedTag___7695L",children:"!"}):(0,aI.jsx)("span",{className:"-esm-primary-navigation__action-menu-button-module__countTag___vo9ZX",children:n})]})}let dQ=({getIcon:e,label:t,iconDescription:n,handler:r,type:o,tagContent:i})=>{let a=i0(),{workspaces:s,workspaceWindowState:l}=dG(),c=s?.findIndex(({type:e})=>e===o)??-1,u="hidden"!==l&&0===c,d=c>0||0===c&&"hidden"===l;return"tablet"===a||"phone"===a?(0,aI.jsxs)(aM.Button,{className:aA()(dK,{[dY]:u}),iconDescription:n,kind:"ghost",onClick:r,role:"button",tabIndex:0,size:"md",children:[(0,aI.jsx)("span",{className:dX,children:(0,aI.jsx)(dZ,{formOpenInTheBackground:d,getIcon:e,tagContent:i})}),(0,aI.jsx)("span",{children:t})]}):(0,aI.jsx)(aM.IconButton,{align:"left","aria-label":n,className:aA()(dK,{[dY]:u}),enterDelayMs:300,kind:"ghost",label:t,onClick:r,size:"md",children:(0,aI.jsx)("div",{className:dX,children:(0,aI.jsx)(dZ,{formOpenInTheBackground:d,getIcon:e,tagContent:i})})})};var d0=n(3173),d1=n(185),d2=n(4564);function d6({contextKey:e}){let{prompt:t}=dG();return(0,oU.useEffect)(()=>{RegExp(`/${(0,d2.A)(e)}(/|$)`).test(window.location.pathname)||console.warn(`WorkspaceContainer has provided an invalid context key: "${e}". The context key must be part of the URL path, with no initial or trailing slash.`)},[]),(0,oU.useEffect)(()=>(dW(e),()=>{dW(null)}),[e]),(0,oU.useEffect)(()=>{let t=t=>{let{detail:{cancelNavigation:n,newUrl:r}}=t,o=RegExp(`/${(0,d2.A)(e)}(/|$)`),i=new URL(r),a=o.test(i.pathname),s=dD.getState().openWorkspaces.every(({name:e})=>dN(e));a||(s?dJ():(n?.(),dH(()=>{tm({to:r})})))};return window.addEventListener("single-spa:before-routing-event",t),()=>{window.removeEventListener("single-spa:before-routing-event",t)}},[]),null!=t?(0,aI.jsxs)(aM.ComposedModal,{open:!0,onClose:d$,children:[(0,aI.jsx)(aM.ModalHeader,{title:t.title}),(0,aI.jsx)(aM.ModalBody,{children:(0,aI.jsx)("p",{className:"-esm-primary-navigation__workspace-notification-module__messageBody___+SBeV",children:t.body})}),(0,aI.jsxs)(aM.ModalFooter,{children:[(0,aI.jsx)(aM.Button,{kind:"secondary",onClick:d$,children:t.cancelText??tc("cancel")}),(0,aI.jsx)(aM.Button,{kind:"danger",onClick:t.onConfirm,children:t.confirmText??tc("confirm")})]})]}):null}var d5=n(1820);function d8({workspace:e,additionalPropsFromPage:t}){let[n,r]=(0,oU.useState)(),o=function(e){let[t,n]=(0,oU.useState)({}),[r,o]=(0,oU.useState)(e);return(0,oU.useEffect)(()=>{r!==e&&o(e)},[e]),(0,oU.useEffect)(()=>{let e,t=dq(r);return t&&(n(t.getState()),e=t.subscribe(n)),()=>{t&&e?.()}},[r]),t}(e.currentWorkspaceGroup);(0,oU.useEffect)(()=>{let t=!0;return e.load().then(e=>{t&&r(e)}),()=>{t=!1}},[e]);let i=(0,oU.useMemo)(()=>e&&{closeWorkspace:e.closeWorkspace,closeWorkspaceWithSavedChanges:e.closeWorkspaceWithSavedChanges,promptBeforeClosing:e.promptBeforeClosing,setTitle:e.setTitle,...t,...o,...e.additionalProps},[e,t,o]);return n?(0,aI.jsx)(d5.A,{config:n,mountParcel:oD,...i},e.name):(0,aI.jsx)(aM.InlineLoading,{className:"-esm-primary-navigation__workspace-module__loader___H6dHj",description:`${tc("loading","Loading")} ...`})}function d3({isWithinWorkspace:e,name:t,actionMenuProps:n={}}){let[r,o]=(0,oU.useState)(!1),i=(0,oU.useRef)(window.innerHeight),{featureName:a}=(0,oU.useContext)(oH),s=i0();(0,oU.useEffect)(()=>{let e=()=>{o(!i1(s)&&i.current>window.innerHeight),i.current!=window.innerHeight&&(i.current=window.innerHeight)};return window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[i]);let l=`action-menu-${t&&"default"!=t?t:a}-items-slot`;return(0,aI.jsx)("aside",{className:aA()("-esm-primary-navigation__action-menu-module__sideRail___GJUJ7",{"-esm-primary-navigation__action-menu-module__withinWorkspace___7+TCf":e,"-esm-primary-navigation__action-menu-module__sideRailHidden___bQ0UM":r,"-esm-primary-navigation__action-menu-module__sideRailVisible___v-1cR":!r}),children:(0,aI.jsx)("div",{className:"-esm-primary-navigation__action-menu-module__container___WocuW",children:(0,aI.jsx)(o8,{className:"-esm-primary-navigation__action-menu-module__chartExtensions___Cn3Jb",name:l,state:n})})})}function d4({contextKey:e,overlay:t,showSiderailAndBottomNav:n,additionalWorkspaceProps:r,actionMenuProps:o}){let i=i0(),{workspaces:a,workspaceWindowState:s,workspaceGroup:l}=dG(),c=l?.name,u=a[0],d="hidden"===s||null==u,m=u?.width??(t?"wider":"narrow"),p=(0,oU.useMemo)(()=>n||c&&!d,[c,d,n]);return iN(!d&&!i1(i)),(0,aI.jsxs)(aI.Fragment,{children:[(0,aI.jsxs)("div",{className:n?"-esm-primary-navigation__workspace-module__workspaceContainerWithActionMenu___AHHuu":"-esm-primary-navigation__workspace-module__workspaceContainerWithoutActionMenu___E7yiH",children:[(0,aI.jsx)("aside",{className:aA()(t?"-esm-primary-navigation__workspace-module__workspaceOverlayOuterContainer___7nS96":"-esm-primary-navigation__workspace-module__workspaceWindowSpacer___l+rgk",{"-esm-primary-navigation__workspace-module__hiddenRelative___AJHmQ":d,"-esm-primary-navigation__workspace-module__narrowWorkspace___Vb16L":"narrow"===m,"-esm-primary-navigation__workspace-module__widerWorkspace___Bn7v8":"wider"===m,"-esm-primary-navigation__workspace-module__extraWideWorkspace___vN8kI":"extra-wide"===m}),children:(0,aI.jsx)("div",{className:aA()("-esm-primary-navigation__workspace-module__workspaceFixedContainer___pBPmo",{"-esm-primary-navigation__workspace-module__maximizedWindow___Sew5F":"maximized"===s,"-esm-primary-navigation__workspace-module__hiddenFixed___BxutH":d}),children:a.map((e,t)=>(0,aI.jsx)("div",{className:aA()("-esm-primary-navigation__workspace-module__workspaceInnerContainer___tYaVV",{"-esm-primary-navigation__workspace-module__hiddenExtraWorkspace___lBaWe":0!==t}),children:(0,aI.jsx)(oU.Suspense,{fallback:null,children:(0,aI.jsx)(o7.I18nextProvider,{i18n:window.i18next,defaultNS:e.moduleName,children:(0,aI.jsx)(d7,{workspaceInstance:e,additionalWorkspaceProps:r})})})},`workspace-container-${e?e.name:`empty-${t}`}`))})}),(0,aI.jsx)(d6,{contextKey:e})]}),p&&(0,aI.jsx)(d3,{name:c,isWithinWorkspace:!n,actionMenuProps:o})]})}function d7({workspaceInstance:e,additionalWorkspaceProps:t}){let{t:n}=(0,o7.useTranslation)(),r=i0(),{workspaceWindowState:o,workspaceGroup:i}=dG(),a=i?.name,s="maximized"===o;(0,oU.useEffect)(()=>{let t=n(e.title);t!==e.title&&e.setTitle(t)},[e.title,n,e.setTitle]);let{featureName:l}=(0,oU.useContext)(oH),c=(0,oU.useCallback)(()=>{dU(s?"normal":"maximized")},[s]),{canHide:u=!1,canMaximize:d=!1,currentWorkspaceGroup:m="",closeWorkspace:p}=(0,oU.useMemo)(()=>e??{},[e]),f=(0,oU.useMemo)(()=>({...t,...e?.additionalProps}),[t,e]);return e&&(0,aI.jsxs)(aI.Fragment,{children:[(0,aI.jsxs)(aM.Header,{"aria-label":tc("workspaceHeader","Workspace Header"),className:"-esm-primary-navigation__workspace-module__header___-3kjt",children:[!i1(r)&&!u&&(0,aI.jsx)(aM.HeaderMenuButton,{"aria-label":tc("close","Close"),renderMenuIcon:(0,aI.jsx)(aZ,{}),onClick:()=>p()}),(0,aI.jsx)(aM.HeaderName,{prefix:"",children:e.titleNode??n(e.title)}),(0,aI.jsx)("div",{className:"-esm-primary-navigation__workspace-module__overlayHeaderSpacer___2Zd7J"}),(0,aI.jsxs)(aM.HeaderGlobalBar,{className:"-esm-primary-navigation__workspace-module__headerButtons___ppNsY",children:[(0,aI.jsx)(o8,{name:`workspace-header-group-${e.currentWorkspaceGroup}-slot`,state:f}),(0,aI.jsx)(o8,{name:`workspace-header-type-${e.type}-slot`,state:f}),(0,aI.jsx)(o8,{name:`workspace-header-${l}-slot`,state:f}),i1(r)&&(0,aI.jsxs)(aI.Fragment,{children:[(d||s)&&(0,aI.jsx)(aM.HeaderGlobalAction,{"aria-label":s?tc("minimize","Minimize"):tc("maximize","Maximize"),onClick:c,children:s?(0,aI.jsx)(d0.Xj,{}):(0,aI.jsx)(d0.hz,{})}),u&&!a?(0,aI.jsx)(aM.HeaderGlobalAction,{"aria-label":tc("hide","Hide"),onClick:()=>dU("hidden"),children:(0,aI.jsx)(aQ,{})}):(0,aI.jsx)(aM.HeaderGlobalAction,{"aria-label":tc("close","Close"),onClick:()=>p?.(),children:(0,aI.jsx)(ss,{})})]}),"tablet"===r&&u&&(0,aI.jsx)(aM.HeaderGlobalAction,{"aria-label":tc("close","Close"),onClick:()=>p?.(),children:(0,aI.jsx)(d1.d3,{})})]})]}),(0,aI.jsx)("div",{className:aA()("-esm-primary-navigation__workspace-module__workspaceContent___cNdK1",{"-esm-primary-navigation__workspace-module__marginWorkspaceContent___RXftx":!!m}),children:(0,aI.jsx)(d8,{workspace:e,additionalPropsFromPage:t},e.name)})]})}var d9=n(4656);async function me(e,t){let{openedGroup:n}=oN.getState();if(n){if(n.groupName===e&&mr(n.props,t))return!0;else if(!await mo({reason:"CLOSE_WORKSPACE_GROUP",explicit:!1}))return!1}return oN.setState(n=>({...n,openedGroup:{groupName:e,props:t},openedWindows:[]})),!0}async function mt(e){let{openedGroup:t,openedWindows:n}=oN.getState();if(t){if(n.length>0&&!(e||await mo({reason:"CLOSE_WORKSPACE_GROUP",explicit:!0})))return!1;oN.setState(e=>({...e,openedGroup:null,openedWindows:[]}))}return!0}async function mn(e,t=null,n=null,r=null){let o=oN.getState();if(!o.registeredWorkspacesByName[e])throw Error(`Unable to launch workspace ${e}. Workspace is not registered`);let i=oC(e);if(!i)throw Error(`Unable to launch workspace ${e}. Workspace is not registered to a workspace window`);let{openedGroup:a}=o,{name:s}=i,l=oE(s);if(!l)throw Error(`Unable to launch workspace ${e}. Workspace window ${i.name} is not registered to a workspace group`);let c=oI(e);if(a&&(a.groupName!==l.name||!mr(a.props,r)))return!!await mo({reason:"CLOSE_WORKSPACE_GROUP",explicit:!0})&&(oN.setState({...o,openedGroup:{groupName:l.name,props:r},openedWindows:[{windowName:s,openedWorkspaces:[mc(e,t)],props:n,maximized:!1}],isMostRecentlyOpenedWindowHidden:!1}),!0);if(c>=0){let r=o.openedWindows[c],i=o.openedGroup?.props??{},a=o.isMostRecentlyOpenedWindowHidden,{openedWorkspaces:u}=r;if(mr(r.props,n)){let d=u.find(t=>t.workspaceName===e);return d&&mr(d.props,t)?((a||c!==o.openedWindows.length-1)&&oN.setState(mi.restoreWindow(o,s)),!0):!!await mo({reason:"CLOSE_WORKSPACE",explicit:!1,windowName:s,workspaceName:e})&&(oN.setState({...o,openedGroup:{groupName:l.name,props:o?.openedGroup?.props??i},openedWindows:[...o.openedWindows.filter((e,t)=>t!==c),{windowName:s,openedWorkspaces:[mc(e,t)],props:r?.props??n,maximized:!1}],isMostRecentlyOpenedWindowHidden:!1}),!0)}return!!await mo({reason:"CLOSE_WINDOW",explicit:!1,windowName:s})&&(oN.setState({...o,openedGroup:{groupName:l.name,props:i??o?.openedGroup?.props},openedWindows:[...o.openedWindows.filter((e,t)=>t!==c),{windowName:s,openedWorkspaces:[mc(e,t)],props:n,maximized:!1}],isMostRecentlyOpenedWindowHidden:!1}),!0)}return"closable"!=l.persistence?(oN.setState({...o,openedGroup:{groupName:l.name,props:r??o?.openedGroup?.props??null},openedWindows:[...o.openedWindows,{windowName:s,openedWorkspaces:[mc(e,t)],props:n,maximized:!1}],isMostRecentlyOpenedWindowHidden:!1}),!0):!!await mo({reason:"CLOSE_OTHER_WINDOWS",explicit:!1,windowNameToSpare:i.name})&&(oN.setState({...o,openedGroup:{groupName:l.name,props:r??o?.openedGroup?.props??null},openedWindows:[{windowName:s,openedWorkspaces:[mc(e,t)],props:n,maximized:!1}],isMostRecentlyOpenedWindowHidden:!1}),!0)}function mr(e,t){return null==e||null==t||b(e,t)}function mo(e){function t(e,t){let n=[];for(let r=e.openedWorkspaces.length-1;r>=0;r--){let o=e.openedWorkspaces[r];if(o.hasUnsavedChanges&&n.push(o),t&&o.workspaceName===t)break}return n}let{openedWindows:n,workspaceTitleByWorkspaceName:r}=oN.getState(),o=[];switch(e.reason){case"CLOSE_WORKSPACE_GROUP":o=n.flatMap(e=>t(e));break;case"CLOSE_WINDOW":{let r=n.find(t=>t.windowName===e.windowName);if(!r)throw Error(`Window ${e.windowName} not found in opened windows.`);o=t(r);break}case"CLOSE_WORKSPACE":{let r=n.find(t=>t.windowName===e.windowName);if(!r)throw Error(`Window ${e.windowName} not found in opened windows.`);o=t(r,e.workspaceName);break}case"CLOSE_OTHER_WINDOWS":o=n.filter(t=>t.windowName!==e.windowNameToSpare).flatMap(e=>t(e))}return 0===o.length?Promise.resolve(!0):new Promise(e=>{let t=c3("workspace2-close-prompt",{size:"sm",onConfirm:()=>{t(),e(!0)},onCancel:()=>{t(),e(!1)},affectedWorkspaceTitles:o.map(e=>r[e.workspaceName])})})}let mi={setWindowMaximized(e,t,n){let r=e.openedWindows.findIndex(e=>e.windowName===t),o=[...e.openedWindows],i={...o[r],maximized:n};return o[r]=i,{...e,openedWindows:o}},hideWindow:e=>({...e,isMostRecentlyOpenedWindowHidden:!0}),restoreWindow(e,t){let n=e.openedWindows.findIndex(e=>e.windowName===t),r=e.openedWindows[n],o=[...e.openedWindows.filter((e,t)=>t!==n),r];return{...e,openedWindows:o,isMostRecentlyOpenedWindowHidden:!1}},closeWorkspace(e,t){let n=oI(t);if(n<0)return e;let r={...e.openedWindows[n]},o=r.openedWorkspaces.findIndex(e=>e.workspaceName===t),i=[...e.openedWindows];r.openedWorkspaces=r.openedWorkspaces.slice(0,o);let a=e.isMostRecentlyOpenedWindowHidden;if(0===r.openedWorkspaces.length){let t=n===e.openedWindows.length-1;i.splice(n,1),t&&i.length>0&&(a=!1)}else i[n]=r;return{...e,openedWindows:i,isMostRecentlyOpenedWindowHidden:a}},openChildWorkspace(e,t,n,r){let o=e.registeredWorkspacesByName[n];if(!o)throw Error(`No workspace named "${n}" registered`);let i=e.registeredWorkspacesByName[t];if(!i)throw Error(`No workspace named "${t}" registered`);if(i.window!==o.window)throw Error(`Child workspace ${n} does not belong to the same workspace window as parent workspace ${t}`);let a=e.openedWindows.findIndex(e=>e.windowName===o.window);if(-1==a)throw Error(`Cannot open child workspace ${n} as window ${o.window} is not opened`);let{openedWorkspaces:s}=e.openedWindows[a],l=s.findIndex(e=>e.workspaceName===t);if(-1===l)throw Error(`Cannot open child workspace ${n} from parent workspace ${t} as the parent is not opened within the workspace window`);let c=s.slice(0,l+1);return{openedWindows:e.openedWindows.map((e,t)=>t==a?{...e,openedWorkspaces:[...c,mc(n,r)]}:e)}},setHasUnsavedChanges(e,t,n){let r=oI(t);if(r<0)return e;let o={...e.openedWindows[r]},i=o.openedWorkspaces.findIndex(e=>e.workspaceName===t);if(i<0)return e;o.openedWorkspaces[i]={...o.openedWorkspaces[i],hasUnsavedChanges:n};let a=[...e.openedWindows];return a[r]=o,{...e,openedWindows:a}},setWorkspaceTitle(e,t,n){let r={...e.workspaceTitleByWorkspaceName};return null===n?delete r[t]:r[t]=n,{...e,workspaceTitleByWorkspaceName:r}}};function ma(){return oX(oN,mi)}let ms=()=>(0,oU.useContext)(o4.i),ml=()=>Object.keys(oN.getState().registeredWorkspacesByName);function mc(e,t){return{workspaceName:e,props:t??{},hasUnsavedChanges:!1,uuid:(0,d9.A)()}}let mu={workspaceOuterContainer:"-esm-primary-navigation__workspace2-module__workspaceOuterContainer___bPVpy",narrowWorkspace:"-esm-primary-navigation__workspace2-module__narrowWorkspace___kSYS7",widerWorkspace:"-esm-primary-navigation__workspace2-module__widerWorkspace___nW2HB",extraWideWorkspace:"-esm-primary-navigation__workspace2-module__extraWideWorkspace___em5yA",workspaceMiddleContainer:"-esm-primary-navigation__workspace2-module__workspaceMiddleContainer___Bx1i6",maximized:"-esm-primary-navigation__workspace2-module__maximized___Kfygr",hidden:"-esm-primary-navigation__workspace2-module__hidden___RPimX",workspaceInnerContainer:"-esm-primary-navigation__workspace2-module__workspaceInnerContainer___5zxpt",workspaceSpacer:"-esm-primary-navigation__workspace2-module__workspaceSpacer___E+982",loader:"-esm-primary-navigation__workspace2-module__loader___vmBQn",hiddenExtraWorkspace:"-esm-primary-navigation__workspace2-module__hiddenExtraWorkspace___qkbMG",header:"-esm-primary-navigation__workspace2-module__header___IZ-2+",headerButtons:"-esm-primary-navigation__workspace2-module__headerButtons___81a2N",workspaceContent:"-esm-primary-navigation__workspace2-module__workspaceContent___eetPy",overlayHeaderSpacer:"-esm-primary-navigation__workspace2-module__overlayHeaderSpacer___ruc6r",isActionMenuOpened:"-esm-primary-navigation__workspace2-module__isActionMenuOpened___XgCkc",showActionMenu:"-esm-primary-navigation__workspace2-module__showActionMenu___sHRt1",marginWorkspaceContent:"-esm-primary-navigation__workspace2-module__marginWorkspaceContent___TN+S+",workspaceContainerWithActionMenu:"-esm-primary-navigation__workspace2-module__workspaceContainerWithActionMenu___xLg8e",workspaceFixedContainer:"-esm-primary-navigation__workspace2-module__workspaceFixedContainer___W9cgZ",workspaceContainerWithoutActionMenu:"-esm-primary-navigation__workspace2-module__workspaceContainerWithoutActionMenu___fRrxd"},md=({title:e,children:t,hasUnsavedChanges:n=!1})=>{let r=i0(),{setWindowMaximized:o,hideWindow:i,setHasUnsavedChanges:a,openedWindows:s,openedGroup:l,registeredGroupsByName:c,registeredWindowsByName:u,registeredWorkspacesByName:d,workspaceTitleByWorkspaceName:m,setWorkspaceTitle:p,isMostRecentlyOpenedWindowHidden:f}=ma(),{workspaceName:g,isRootWorkspace:h,closeWorkspace:_,showActionMenu:w}=ms(),y=oI(g),v=s[y],b=v?.openedWorkspaces.find(e=>e.workspaceName===g);if((0,oU.useEffect)(()=>{b?.hasUnsavedChanges!=n&&a(g,n??!1)},[b?.hasUnsavedChanges,n,g,a]),(0,oU.useEffect)(()=>{m[g]!==e&&p(g,e)},[m,g,e,p]),y<0||null==l||null==b)return null;let x=c[l.groupName];if(!x)throw Error(`Cannot find registered workspace group ${l.groupName}`);let k=d[g].window,S=u[k];if(!S)throw Error(`Cannot find registered workspace window ${k}`);let{icon:j,canMaximize:N}=S,C="closable"===x.persistence,E=!!j&&!C,{maximized:I}=v,P=S?.width??"narrow",A=Object.values(u).some(e=>e.group===l.groupName&&void 0!==e.icon),O=y<s.length-1||f;return(0,aI.jsxs)("div",{className:aA()(mu.workspaceOuterContainer,{[mu.narrowWorkspace]:"narrow"===P,[mu.widerWorkspace]:"wider"===P,[mu.extraWideWorkspace]:"extra-wide"===P,[mu.isActionMenuOpened]:A}),children:[(0,aI.jsx)("div",{className:aA()(mu.workspaceSpacer,{[mu.hidden]:O})}),(0,aI.jsx)("div",{className:aA()(mu.workspaceMiddleContainer,{[mu.maximized]:I,[mu.hidden]:O,[mu.isRootWorkspace]:h,[mu.showActionMenu]:w}),children:(0,aI.jsxs)("div",{className:aA()(mu.workspaceInnerContainer,{[mu.maximized]:I,[mu.hidden]:O,[mu.isRootWorkspace]:h}),children:[(0,aI.jsxs)(aM.Header,{"aria-label":tc("workspaceHeader"),className:mu.header,children:[(0,aI.jsx)(aM.HeaderName,{prefix:"",children:e}),(0,aI.jsx)("div",{className:mu.overlayHeaderSpacer}),(0,aI.jsx)(aM.HeaderGlobalBar,{className:mu.headerButtons,children:i1(r)?(0,aI.jsxs)(aI.Fragment,{children:[(N||I)&&(0,aI.jsx)(aM.HeaderGlobalAction,{"aria-label":I?tc("minimize"):tc("maximize"),onClick:()=>o(k,!I),children:I?(0,aI.jsx)(d0.Xj,{}):(0,aI.jsx)(d0.hz,{})}),E&&(0,aI.jsx)(aM.HeaderGlobalAction,{"aria-label":tc("hide"),onClick:()=>i(),children:(0,aI.jsx)(aQ,{})}),!C&&(0,aI.jsx)(aM.HeaderGlobalAction,{"aria-label":tc("close"),onClick:()=>_({closeWindow:!0}),children:(0,aI.jsx)(ss,{})})]}):(0,aI.jsxs)(aI.Fragment,{children:[E&&(0,aI.jsx)(aM.HeaderGlobalAction,{"aria-label":tc("hide"),onClick:()=>i(),children:(0,aI.jsx)(d1.d3,{})}),(0,aI.jsx)(aM.HeaderGlobalAction,{"aria-label":tc("close"),onClick:()=>{C?mt():_({closeWindow:!0})},children:(0,aI.jsx)(ss,{})})]})})]}),(0,aI.jsx)("div",{className:aA()(mu.workspaceContent),children:t})]})})]})},mm="-esm-primary-navigation__action-menu-button2-module__container___jc6--",mp="-esm-primary-navigation__action-menu-button2-module__elementContainer___whLL8",mf="-esm-primary-navigation__action-menu-button2-module__active___fbyFm",mg="-esm-primary-navigation__action-menu-button2-module__focused___+aVpz";function mh({getIcon:e,hasUnsavedChanges:t,tagContent:n}){return(0,aI.jsxs)(aI.Fragment,{children:[e({size:16}),t?(0,aI.jsx)("span",{className:"-esm-primary-navigation__action-menu-button2-module__interruptedTag___sRkvS",children:"!"}):(0,aI.jsx)("span",{className:"-esm-primary-navigation__action-menu-button2-module__countTag___XMH0D",children:n})]})}let m_=({icon:e,label:t,tagContent:n,workspaceToLaunch:r,onBeforeWorkspaceLaunch:o})=>{let i=i0(),{openedWindows:a,restoreWindow:s,hideWindow:l,isMostRecentlyOpenedWindowHidden:c}=ma(),{extension:u}=(0,oU.useContext)(oH),d=a.findIndex(e=>e.windowName===u?.extensionId),m=a[d],p=null!=m,f=p&&(d<a.length-1||c),g=p&&!f,h=m?.openedWorkspaces.some(e=>e.hasUnsavedChanges)??!1,_=async()=>{if(p)f?s(m.windowName):l();else if(await (o?.()??!0)){let{workspaceName:e,workspaceProps:t,windowProps:n}=r;mn(e,t,n)}};return"tablet"===i||"phone"===i?(0,aI.jsxs)(aM.Button,{className:aA()(mm,{[mf]:p&&!g,[mg]:g}),iconDescription:t,kind:"ghost",onClick:_,role:"button",tabIndex:0,size:"md",children:[(0,aI.jsx)("span",{className:mp,children:(0,aI.jsx)(mh,{hasUnsavedChanges:h,getIcon:e,tagContent:n})}),(0,aI.jsx)("span",{children:t})]}):(0,aI.jsx)(aM.IconButton,{align:"left","aria-label":t,className:aA()(mm,{[mf]:p&&!g,[mg]:g}),enterDelayMs:300,kind:"ghost",label:t,onClick:_,size:"md",children:(0,aI.jsx)("div",{className:mp,children:(0,aI.jsx)(mh,{hasUnsavedChanges:h,getIcon:e,tagContent:n})})})};function mw({showContactDetails:e,toggleContactDetails:t,className:n}){return(0,aI.jsx)(aM.Button,{className:n,iconDescription:"Toggle contact details",kind:"ghost",onClick:t,renderIcon:e?sa:sr,children:e?tc("showLess","Show less"):tc("showMore","Show more")})}let my={contactDetails:"-esm-primary-navigation__patient-banner-contact-details-module__contactDetails___R7vfY",deceased:"-esm-primary-navigation__patient-banner-contact-details-module__deceased___nTt+l",heading:"-esm-primary-navigation__patient-banner-contact-details-module__heading___x7UoT",row:"-esm-primary-navigation__patient-banner-contact-details-module__row___qFgIi",col:"-esm-primary-navigation__patient-banner-contact-details-module__col___JXUlg",relationship:"-esm-primary-navigation__patient-banner-contact-details-module__relationship___T3LO-"},mv=({patientUuid:e})=>{let{cohorts:t=[],isLoading:n}=function(e){let t=e?`${tx}/cohortm/cohortmember?patient=${e}&v=custom:(uuid,patient:ref,cohort:(uuid,name,startDate,endDate))`:null,{data:n,isLoading:r}=(0,o9.u)(t,tN),o=n?.data?.results.map(e=>({uuid:e.cohort.uuid,name:e.cohort.name,startDate:e.cohort.startDate,endDate:e.cohort.endDate}));return(0,oU.useMemo)(()=>({cohorts:o,isLoading:r}),[r,o])}(e);return(0,aI.jsxs)(aI.Fragment,{children:[(0,aI.jsxs)("p",{className:my.heading,children:[tc("patientLists","Patient Lists")," (",t?.length??0,")"]}),n?(0,aI.jsx)(aM.InlineLoading,{description:`${tc("loading","Loading")} ...`,role:"progressbar"}):(0,aI.jsxs)("ul",{children:[(()=>{if(t?.length>0){let e=t.sort((e,t)=>lK(e?.startDate).getTime()-lK(t?.startDate).getTime()).slice(0,3);return e?.map(e=>(0,aI.jsx)("li",{children:(0,aI.jsx)(oG,{to:`${window.spaBase}/home/patient-lists/${e.uuid}`,children:e.name},e.uuid)},e.uuid))}return(0,aI.jsx)("li",{children:"--"})})(),t.length>3&&(0,aI.jsx)("li",{className:my.link,children:(0,aI.jsx)(oG,{to:`${window.spaBase}/home/patient-lists`,children:tc("seeMoreLists","See {{count}} more lists",{count:t?.length-3})})})]})]})},mb=({patientId:e})=>{let{patient:t,isLoading:n}=an(e),r=t?.address?.find(e=>"home"===e.use),o=e=>e.split("#")[1];return n?(0,aI.jsx)(aM.InlineLoading,{description:`${tc("loading","Loading")} ...`,role:"progressbar"}):(0,aI.jsxs)(aI.Fragment,{children:[(0,aI.jsx)("p",{className:my.heading,children:tc("address","Address")}),(0,aI.jsx)("ul",{children:r?Object.entries(r).filter(([e])=>"id"!==e&&"use"!==e).map(([e,t])=>"extension"===e?r.extension?.[0]?.extension?.map((t,n)=>(0,aI.jsxs)("li",{children:[tc(o(t.url),o(t.url)),": ",t.valueString]},`address-${e}-${n}`)):(0,aI.jsxs)("li",{children:[tc(e,e),": ",t]},`address-${e}`)):(0,aI.jsx)("li",{children:"--"})})]})},mx=({patientUuid:e})=>{let{isLoading:t,contactAttributes:n}=(e=>{let{contactAttributeTypes:t=[]}=iI({externalModuleName:"@openmrs/esm-patient-banner-app"}),{attributes:n,error:r,isLoading:o}=(e=>{let{data:t,error:n,isLoading:r}=(0,iO.A)(`${tx}/patient/${e}?v=custom:(uuid,display,identifiers:(identifier,uuid,preferred,location:(uuid,name),identifierType:(uuid,name,format,formatDescription,validator)),person:(uuid,display,gender,birthdate,dead,age,deathDate,birthdateEstimated,causeOfDeath,preferredName:(uuid,preferred,givenName,middleName,familyName),attributes,preferredAddress:(uuid,preferred,address1,address2,cityVillage,longitude,stateProvince,latitude,country,postalCode,countyDistrict,address3,address4,address5,address6,address7)))`,tN);return{isLoading:r,attributes:t?.data.person.attributes??[],error:n}})(e);return{contactAttributes:(0,oU.useMemo)(()=>n.filter(({attributeType:e})=>t?.some(t=>e.uuid===t)),[n,t]),isLoading:o,error:r}})(e),r=(0,oU.useMemo)(()=>n?[...n?.map(e=>[e.attributeType.display?tc(e.attributeType.display,e.attributeType.display):"",e.value])]:[],[n]);return(0,aI.jsxs)(aI.Fragment,{children:[(0,aI.jsx)("p",{className:my.heading,children:tc("contactDetails","Contact Details")}),t?(0,aI.jsx)(aM.InlineLoading,{description:`${tc("loading","Loading")} ...`,role:"progressbar"}):(0,aI.jsx)("ul",{children:r.length?r.map(([e,t],n)=>(0,aI.jsxs)("li",{children:[e,": ",t]},`${e}-${t}-${n}`)):(0,aI.jsx)("li",{children:"--"})})]})},mk=({patientId:e})=>{let{data:t,isLoading:n}=function(e){let t=`${tx}/relationship?v=custom:(display,uuid,personA:(age,display,birthdate,uuid),personB:(age,display,birthdate,uuid),relationshipType:(uuid,display,description,aIsToB,bIsToA))&person=${e}`,{data:n,error:r,isLoading:o,isValidating:i}=(0,o9.u)(e?t:null,tN),a=n?.data?.results?.length?function(e,t){let n=[];for(let r of t)e===r.personA.uuid?n.push({uuid:`${r.uuid}`,display:r.personB.display,relativeAge:r.personB.age,relativeUuid:r.personB.uuid,relationshipType:r.relationshipType.bIsToA}):n.push({uuid:`${r.uuid}`,display:r.personA.display,relativeAge:r.personA.age,relativeUuid:r.personA.uuid,relationshipType:r.relationshipType.aIsToB});return n}(e,n.data.results):null;return{data:n?a:null,error:r,isLoading:o,isValidating:i}}(e);return(0,aI.jsxs)(aI.Fragment,{children:[(0,aI.jsx)("p",{className:my.heading,children:tc("relationships","Relationships")}),n?(0,aI.jsx)(aM.InlineLoading,{description:`${tc("loading","Loading")} ...`,role:"progressbar"}):(0,aI.jsx)("ul",{children:t&&t.length>0?(0,aI.jsx)(aI.Fragment,{children:t.map(e=>(0,aI.jsxs)("li",{className:my.relationship,children:[(0,aI.jsx)("div",{children:(0,aI.jsx)(oG,{to:`${window.spaBase}/patient/${e.relativeUuid}/chart`,children:e.display})}),(0,aI.jsx)("div",{children:e.relationshipType}),(0,aI.jsx)("div",{children:`${e.relativeAge?e.relativeAge:"--"} ${e.relativeAge?1===e.relativeAge?tc("yearAbbreviation","yr"):tc("yearsAbbreviation","yrs"):""}`})]},e.uuid))}):(0,aI.jsx)("li",{children:"--"})})]})};function mS({patientId:e,deceased:t}){return(0,aI.jsxs)("div",{className:aA()(my.contactDetails,{[my.deceased]:t}),children:[(0,aI.jsxs)("div",{className:my.row,children:[(0,aI.jsx)("div",{className:my.col,children:(0,aI.jsx)(mb,{patientId:e})}),(0,aI.jsx)("div",{className:my.col,children:(0,aI.jsx)(mx,{patientUuid:e})})]}),(0,aI.jsxs)("div",{className:my.row,children:[(0,aI.jsx)("div",{className:my.col,children:(0,aI.jsx)(mk,{patientId:e})}),(0,aI.jsx)("div",{className:my.col,children:(0,aI.jsx)(mv,{patientUuid:e})})]})]})}function mj(e){let t=document.querySelector("template#loading-spinner");if(t){let n=t.content.cloneNode(!0),r=Array.prototype.map.call(n.childNodes,e=>e);return e.appendChild(n),()=>r.forEach(e=>e.remove())}return()=>{}}let mN="-esm-primary-navigation__action-menu2-module__container___6Gke0";function mC({workspaceGroup:e,groupProps:t}){let n=i0(),{persistence:r}=e;return(0,aI.jsx)("aside",{className:"-esm-primary-navigation__action-menu2-module__sideRail___T2lMV",children:(0,aI.jsxs)("div",{className:mN,children:["closable"==r&&i1(n)&&(0,aI.jsx)(aM.IconButton,{align:"left",onClick:()=>mt(),label:tc("close"),kind:"ghost",children:(0,aI.jsx)(ss,{})}),(0,aI.jsx)(oH.Provider,{value:{moduleName:e.moduleName,featureName:e.name},children:(0,aI.jsx)(o8,{className:mN,name:e.name,state:{groupProps:t}})})]})})}function mE(e){let t=new URL(e,window.location.origin).pathname,n=new URL(window.getOpenmrsSpaBase?.()??"/",window.location.origin).pathname,r=n.endsWith("/")?n.slice(0,-1):n,o=null;return r?r===t?o="/":t.startsWith(`${r}/`)&&(o=t.slice(r.length)):o=t,{full:t,spaRelative:o}}let mI=({lifeCycle:e,openedWorkspace:t,openedWindow:n,isRootWorkspace:r,isLeafWorkspace:o,showActionMenu:i})=>{let{openedGroup:a,closeWorkspace:s,openChildWorkspace:l}=ma(),c=(0,oU.useMemo)(()=>t&&{closeWorkspace:async(e={})=>{let{closeWindow:r=!1,discardUnsavedChanges:o=!1}=e;return r?!!(o||await mo({reason:"CLOSE_WINDOW",explicit:!0,windowName:n.windowName}))&&(s(n.openedWorkspaces[0].workspaceName),!0):!!(o||await mo({reason:"CLOSE_WORKSPACE",explicit:!0,windowName:n.windowName,workspaceName:t.workspaceName}))&&(s(t.workspaceName),!0)},launchChildWorkspace:async(e,r)=>{let o=t.workspaceName,{openedWorkspaces:i}=n,a=i.findIndex(e=>e.workspaceName===o);-1===a||a!==i.length-1&&i.slice(a+1).some(e=>e.hasUnsavedChanges)&&!await mo({reason:"CLOSE_WORKSPACE",explicit:!0,windowName:n.windowName,workspaceName:i[a+1].workspaceName})||l(o,e,r||{})},workspaceName:t.workspaceName,workspaceProps:t.props,windowProps:n.props,groupProps:a&&a.props?a.props:null,workspaceMeta:oN.getState().registeredWorkspacesByName[t.workspaceName]?.meta??{},isRootWorkspace:r,isLeafWorkspace:o,windowName:n.windowName,showActionMenu:i},[t,s,a,n]);if(!e){let{registeredWorkspacesByName:e}=oN.getState(),n=e[t.workspaceName],o=n&&n.window?n.window:void 0,{registeredWindowsByName:s}=oN.getState(),l=o?s[o]:void 0,c=l&&l.width?l.width:"narrow",u=Object.values(s).some(e=>e.group===a?.groupName&&void 0!==e.icon);return(0,aI.jsxs)("div",{className:aA()(mu.workspaceOuterContainer,{[mu.narrowWorkspace]:"narrow"===c,[mu.widerWorkspace]:"wider"===c,[mu.extraWideWorkspace]:"extra-wide"===c,[mu.isActionMenuOpened]:u}),children:[(0,aI.jsx)("div",{className:mu.workspaceSpacer}),(0,aI.jsx)("div",{className:aA()(mu.workspaceMiddleContainer,{[mu.isRootWorkspace]:r,[mu.showActionMenu]:i}),children:(0,aI.jsx)("div",{className:aA()(mu.workspaceInnerContainer,{[mu.isRootWorkspace]:r}),children:(0,aI.jsx)(aM.InlineLoading,{className:mu.loader,description:`${tc("loading")} ...`})})})]})}return(0,aI.jsx)(d5.A,{config:e,mountParcel:oD,...c},t.workspaceName)},mP=({openedWindow:e,showActionMenu:t})=>{let{openedWorkspaces:n}=e,[r,o]=(0,oU.useState)({}),{registeredWorkspacesByName:i}=oN.getState();return(0,oU.useEffect)(()=>{let e=!1;return Promise.all(n.map(async e=>{let{moduleName:t,component:n}=i[e.workspaceName];return[e.uuid,await aw(t,n)]})).then(t=>{e||o(Object.fromEntries(t))}),()=>{e=!0}},[n]),(0,aI.jsx)(aI.Fragment,{children:n.map((o,i)=>(0,aI.jsx)(mI,{openedWorkspace:o,openedWindow:e,lifeCycle:r[o.uuid],isRootWorkspace:0===i,isLeafWorkspace:i===n.length-1,showActionMenu:t},o.uuid))})};function mA(e){e&&(0,o3.createRoot)(e).render((0,aI.jsx)(mO,{}))}function mO(){let{openedGroup:e,openedWindows:t,registeredGroupsByName:n,registeredWindowsByName:r}=ma();if((0,oU.useEffect)(()=>nW("before-page-changed",t=>{let{newPage:r,cancelNavigation:o,oldUrl:i,newUrl:a}=t;if(!e)return;if(r)return void o(mt().then(e=>!e));let s=n[e.groupName],l=s?.scopePattern;l&&function(e,t,n){try{let r=new RegExp(e),o=mE(t),i=mE(n);if(null===o.spaRelative||null===i.spaRelative)return!0;let a=r.exec(o.spaRelative),s=r.exec(i.spaRelative);if(a&&s||(a=r.exec(o.full),s=r.exec(i.full)),!a||!s)return!0;if(a.length>1)return!a.slice(1).every((e,t)=>e===s[t+1]);return!1}catch{return!0}}(l,i,a)&&o(mt().then(e=>!e))}),[e,n]),!e)return null;let o=n[e.groupName],i=t.some(e=>e.maximized),{name:a}=o,s=Object.values(r).filter(e=>e.group===a&&void 0!==e.icon).sort((e,t)=>(e.order??Number.MAX_VALUE)-(t.order??Number.MAX_VALUE)).length>0;return(0,aI.jsxs)("div",{className:aA()("-esm-primary-navigation__workspace-windows-and-menu-module__workspaceWindowsAndMenuContainer___2u2mc",{"-esm-primary-navigation__workspace-windows-and-menu-module__overlay___7RHYZ":o.overlay,"-esm-primary-navigation__workspace-windows-and-menu-module__hasMaximizedWindow___gvJRd":i}),children:[(0,aI.jsx)("div",{className:"-esm-primary-navigation__workspace-windows-and-menu-module__workspaceWindowsContainer___40ITO",children:t.map(e=>(0,aI.jsx)(mP,{openedWindow:e,showActionMenu:s},e.windowName))}),s&&(0,aI.jsx)(mC,{workspaceGroup:o,groupProps:e.props})]})}function mR(e,t,n){if(null==e)return n;let r=lM(e);if(!r)return console.warn(`matchLocale: invalid requested locale tag: ${JSON.stringify(e)}`),n;let o=[];for(let e of t){let t=lM(e);if(!t){console.warn(`matchLocale: skipping invalid available locale tag: ${JSON.stringify(e)}`);continue}o.push({canonical:t,original:e})}let i=r;for(;i;){let e=o.find(e=>e.canonical===i);if(e)return e.original;let t=i+"-",n=o.find(e=>e.canonical.startsWith(t));if(n)return n.original;if("ht"===i){i="fr-HT";continue}let r=i.lastIndexOf("-");if(-1===r)break;let a=(i=i.slice(0,r)).lastIndexOf("-");-1!==a&&i.length-a==2&&(i=i.slice(0,a))}return n}function m$(e=window.localStorage){try{return e.getItem("test"),!0}catch{return!1}}function mT(e){return!!e&&e.constructor===Object}var mM=n(3376);function mW(e){let[t,n,r]=e.split(".");return`${t}.${n}.${r}`}function mL(e,t){return mM(function(e){let t=e.indexOf("-");if(t>=0){let n=mW(e.slice(0,t)),r=e.slice(t+1);return`${n}-${r}`}return mW(e)}(t),e,{includePrerelease:!0})}async function mD(e,t={}){let n,{shouldRetry:r,getDelay:o,onError:i}=t;r=r??(e=>e<=5),o=o??(e=>(function(e,t=!1){return 1e3*Math.pow(2,t?e+1:e)})(e));let a=0;do try{return await mB(o(a)),await e()}catch(e){i?.(e,a),n=e}while(r(a++));throw n}async function mB(e){if(!(e<=0))return new Promise(t=>setTimeout(t,e))}function mU(e,t,n,r){}function mF(e){}function mH(e){return Promise.resolve([])}function mG(e){return Promise.resolve([])}function mz(e){return Promise.resolve({success:!1,result:void 0,error:"No service worker has been registered. Offline-related features have been removed from the framework."})}function mV(e){return()=>{}}function mJ(){return!0}}}]);
32
+ To fix this, ensure that you define the "component" field inside the page definition.`,e);let r=function(e,{featureFlag:t}){return t?n=>!!rT(t)&&e(n):e}(function e(t){if(Array.isArray(t)){let n=t.map(e);return e=>n.some(t=>t(e))}return"string"==typeof t?(0,to.pathToActiveWhen)(window.getOpenmrsSpaBase()+t):t instanceof RegExp?e=>t.test(e.pathname.replace(window.getOpenmrsSpaBase(),"")):()=>t}(n),t);(0,to.registerApplication)(e,()=>ak(t.appName,t.component),r)}(r,t)}}let aA={PHONE_MIN:0,PHONE_MAX:600,TABLET_MIN:601,TABLET_MAX:1023,SMALL_DESKTOP_MIN:1024,SMALL_DESKTOP_MAX:1439,LARGE_DESKTOP_MIN:1440,LARGE_DESKTOP_MAX:Number.MAX_SAFE_INTEGER};function aP(){document.body.classList.toggle("omrs-breakpoint-lt-tablet",window.innerWidth<aA.TABLET_MIN),document.body.classList.toggle("omrs-breakpoint-gt-phone",window.innerWidth>aA.PHONE_MAX),document.body.classList.toggle("omrs-breakpoint-gt-tablet",window.innerWidth>aA.TABLET_MAX),document.body.classList.toggle("omrs-breakpoint-lt-desktop",window.innerWidth<aA.SMALL_DESKTOP_MIN),document.body.classList.toggle("omrs-breakpoint-lt-small-desktop",window.innerWidth<aA.SMALL_DESKTOP_MIN),document.body.classList.toggle("omrs-breakpoint-lt-large-desktop",window.innerWidth<aA.LARGE_DESKTOP_MIN),document.body.classList.toggle("omrs-breakpoint-gt-small-desktop",window.innerWidth>aA.SMALL_DESKTOP_MAX)}let aO=!1;function aT(){aO||(window.addEventListener("resize",aP),aP(),aO=!0)}var aR=n(6870),a$=n(5530),aM=n.n(a$);function aW({title:e,children:t}){let n="tablet"===i3();return(0,aR.jsxs)("div",{className:aM()({"-esm-primary-navigation__card-header-module__tabletHeader___Vkmd-":n,"-esm-primary-navigation__card-header-module__desktopHeader___ocWGq":!n}),children:[(0,aR.jsx)("h4",{children:e}),t]})}let aL=["red","magenta","purple","blue","teal","cyan","gray","green","warm-gray","cool-gray","high-contrast","outline"],aD={primaryColor:{_type:H.String,_description:"The color for displaying primary diagnoses tags",_default:"red",_validators:[e3.oneOf(aL)]},secondaryColor:{_type:H.String,_description:"The color for displaying secondary diagnoses tags",_default:"blue",_validators:[e3.oneOf(aL)]}},aB={"Brand color #1":{_default:"#005d5d",_type:H.String},"Brand color #2":{_default:"#004144",_type:H.String},"Brand color #3":{_default:"#007d79",_type:H.String},excludePatientIdentifierCodeTypes:{uuids:{_type:H.Array,_description:"List of UUIDs of patient identifier types to exclude from rendering in the patient banner",_default:[],_elements:{_type:H.UUID}}},implementationName:{_type:H.String,_description:"A name of the place (or authority) where all possible locations a user can choose are located.",_default:"Clinic"},patientPhotoConceptUuid:{_type:H.ConceptUuid,_default:"736e8771-e501-4615-bfa7-570c03f4bef5",_description:"Used to look up the patient photo, which is stored as an attachment obs. Set to `null` in order to disable the feature and use only generated avatars. To remove the avatars entirely, use extension configuration's `remove` feature."},preferredCalendar:{_type:H.Object,_description:"Keys should be locale codes, and values should be the preferred calendar for that locale. For example, {'am': 'ethiopic'}.",_default:{am:"ethiopic"},_elements:{_validators:[e3.oneOf(["buddhist","chinese","coptic","dangi","ethioaa","ethiopic","gregory","hebrew","indian","islamic","islamic-umalqura","islamic-tbla","islamic-civil","islamic-rgsa","iso8601","japanese","persian","roc","islamicc"])]}},preferredDateLocale:{_type:H.Object,_description:"Allows setting the locale used for date formatting for any browser locale. Does not affect time formatting. Keys should be locale codes, and values should be the preferred locale for formatting dates. For example, {'en': 'en-US', 'fr-CA': 'en-CA'}.",_default:{en:"en-GB"},_elements:{_type:H.String}},diagnosisTags:aD};var aU=n(8326);let aF={"carbon.table.batch.cancel":"cancel","carbon.table.batch.items.selected":"batchActionsItemsSelected","carbon.table.batch.item.selected":"batchActionItemSelected","carbon.table.batch.selectAll":"selectAll"},aH=e=>(0,aR.jsx)(aU.TableBatchActions,{translateWithId:(e,t)=>{let n=aF[e];return n?tc(n,e,t):e},...e}),aG="-esm-primary-navigation__custom-overflow-menu-module__container___8PykS",az="-esm-primary-navigation__custom-overflow-menu-module__menu___qsOLn",aV="-esm-primary-navigation__custom-overflow-menu-module__show___BserJ",aJ="-esm-primary-navigation__custom-overflow-menu-module__overflowMenuButton___n86Gz",aq=(0,oV.createContext)(null);function aK(){let e=(0,oV.useContext)(aq);if(!e)throw Error("useCustomOverflowMenu must be used within a CustomOverflowMenu");return e}function aX({menuTitle:e,children:t}){let[n,r]=oJ().useState(!1),o=at(()=>r(!1),n),i="tablet"===i3(),a=(0,oV.useCallback)(()=>r(e=>!e),[]),s=(0,oV.useRef)(null),l=(0,oV.useRef)(null),c=(0,oV.useId)(),u=`custom-overflow-menu-trigger-${c}`,d=`custom-overflow-menu-${c}`,m=(0,oV.useCallback)(()=>{r(!1),s.current?.focus()},[]),p=(0,oV.useMemo)(()=>({closeMenu:m}),[m]),f=(0,oV.useCallback)(e=>{"Escape"===e.key&&n&&(e.stopPropagation(),m())},[m,n]),g=oV.Children.toArray(t);(0,oV.useEffect)(()=>{if(n&&l.current){let e=l.current.querySelector('[role="menuitem"]:not([disabled])');e?.focus()}},[n]);let h=(0,oV.useCallback)(({currentIndex:e,direction:t})=>{let n=l.current?.querySelectorAll('[role="menuitem"]:not([disabled])');if(!n?.length)return;let r=document.activeElement?.closest?.('[role="menuitem"]')??document.activeElement,o=Array.from(n).indexOf(r);if(-1===o)return void n[t>0?0:n.length-1]?.focus();let i=o+t,a=i<0?n.length-1:i>=n.length?0:i;n[a]?.focus()},[]),_=g.map((e,t)=>(0,oV.isValidElement)(e)?(0,oV.cloneElement)(e,{closeMenu:m,handleOverflowMenuItemFocus:h,index:t}):e);return(0,aR.jsxs)("div",{"data-overflow-menu":!0,className:aM()("cds--overflow-menu",aG),ref:o,children:[(0,aR.jsx)("button",{className:aM()("cds--btn","cds--btn--ghost","cds--overflow-menu__trigger",{"cds--overflow-menu--open":n},aJ),"aria-controls":d,"aria-expanded":n,"aria-haspopup":"true",id:u,onClick:a,onKeyDown:f,ref:s,children:e}),(0,aR.jsxs)("div",{className:aM()("cds--overflow-menu-options","cds--overflow-menu--flip",az,{[aV]:n}),"aria-labelledby":u,"data-floating-menu-direction":"bottom",id:d,onKeyDown:f,ref:l,role:"menu",tabIndex:-1,children:[(0,aR.jsx)("ul",{className:aM()("cds--overflow-menu-options__content",{"cds--overflow-menu-options--lg":i}),children:(0,aR.jsx)(aq.Provider,{value:p,children:_})}),(0,aR.jsx)("span",{})]})]})}function aY(e){let t=(0,oV.useContext)(aq);return(0,aR.jsx)(aU.OverflowMenuItem,{...e,closeMenu:t?.closeMenu})}var aZ=n(7665);let aQ=["omrs-icon-activity","omrs-icon-add","omrs-icon-arrow-down","omrs-icon-arrow-left","omrs-icon-arrow-right","omrs-icon-arrow-up","omrs-icon-baby","omrs-icon-calendar-heat-map","omrs-icon-calendar","omrs-icon-caret-down","omrs-icon-caret-left","omrs-icon-caret-right","omrs-icon-caret-up","omrs-icon-chart-average","omrs-icon-chart-line","omrs-icon-checkmark-filled","omrs-icon-checkmark-outline","omrs-icon-chemistry","omrs-icon-chevron-down","omrs-icon-chevron-left","omrs-icon-chevron-right","omrs-icon-chevron-up","omrs-icon-close","omrs-icon-close-filled","omrs-icon-close-outline","omrs-icon-document","omrs-icon-document-attachment","omrs-icon-download","omrs-icon-drug-order","omrs-icon-edit","omrs-icon-event-schedule","omrs-icon-events","omrs-icon-gender-female","omrs-icon-gender-male","omrs-icon-gender-other","omrs-icon-gender-unknown","omrs-icon-generic-order-type","omrs-icon-group","omrs-icon-group-access","omrs-icon-hospital-bed","omrs-icon-image-medical","omrs-icon-information","omrs-icon-information-filled","omrs-icon-information-square","omrs-icon-inventory-management","omrs-icon-lab-order","omrs-icon-list-checked","omrs-icon-location","omrs-icon-material-order","omrs-icon-maximize","omrs-icon-medication","omrs-icon-message-queue","omrs-icon-microscope","omrs-icon-mobile-check","omrs-icon-money","omrs-icon-mother","omrs-icon-movement","omrs-icon-overflow-menu--horizontal","omrs-icon-overflow-menu--vertical","omrs-icon-password","omrs-icon-pedestrian-family","omrs-icon-pen","omrs-icon-printer","omrs-icon-procedure-order","omrs-icon-programs","omrs-icon-renew","omrs-icon-referral-order","omrs-icon-report","omrs-icon-reset","omrs-icon-save","omrs-icon-search","omrs-icon-settings","omrs-icon-shopping-cart","omrs-icon-shopping-cart--arrow-down","omrs-icon-sticky-note-add","omrs-icon-switcher","omrs-icon-syringe","omrs-icon-table-of-contents","omrs-icon-table","omrs-icon-time","omrs-icon-tools","omrs-icon-translate","omrs-icon-trash-can","omrs-icon-tree-view--alt","omrs-icon-two-factor-authentication","omrs-icon-user-avatar","omrs-icon-user-follow","omrs-icon-user-xray","omrs-icon-user","omrs-icon-view-off","omrs-icon-view","omrs-icon-warning"],a0=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-activity",iconProps:e})})),a1=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-add",iconProps:e})})),a2=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-arrow-down",iconProps:e})})),a6=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-arrow-left",iconProps:e})})),a5=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-arrow-right",iconProps:e})})),a3=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-arrow-up",iconProps:e})})),a8=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-baby",iconProps:e})})),a4=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-calendar-heat-map",iconProps:e})})),a7=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-calendar",iconProps:e})})),a9=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-caret-down",iconProps:e})})),se=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-caret-left",iconProps:e})})),st=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-caret-right",iconProps:e})})),sn=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-caret-up",iconProps:e})})),sr=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-chart-average",iconProps:e})})),so=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-chart-line",iconProps:e})})),si=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-checkmark-filled",iconProps:e})})),sa=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-checkmark-outline",iconProps:e})})),ss=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-chemistry",iconProps:e})})),sl=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-chevron-down",iconProps:e})})),sc=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-chevron-left",iconProps:e})})),su=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-chevron-right",iconProps:e})})),sd=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-chevron-up",iconProps:e})})),sm=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-close",iconProps:e})})),sp=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-close-filled",iconProps:e})})),sf=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-close-outline",iconProps:e})})),sg=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-document",iconProps:e})})),sh=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-document-attachment",iconProps:e})})),s_=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-download",iconProps:e})})),sw=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-drug-order",iconProps:e})})),sy=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-edit",iconProps:e})})),sv=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-event-schedule",iconProps:e})})),sb=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-events",iconProps:e})})),sx=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-gender-female",iconProps:e})})),sk=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-gender-male",iconProps:e})})),sS=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-gender-other",iconProps:e})})),sj=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-gender-unknown",iconProps:e})})),sN=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-generic-order-type",iconProps:e})})),sC=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-group",iconProps:e})})),sE=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-group-access",iconProps:e})})),sI=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-hospital-bed",iconProps:e})})),sA=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-image-medical",iconProps:e})})),sP=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-information",iconProps:e})})),sO=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-information-filled",iconProps:e})})),sT=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-information-square",iconProps:e})})),sR=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-inventory-management",iconProps:e})})),s$=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-lab-order",iconProps:e})})),sM=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-list-checked",iconProps:e})})),sW=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-location",iconProps:e})})),sL=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-material-order",iconProps:e})})),sD=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-maximize",iconProps:e})})),sB=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-medication",iconProps:e})})),sU=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-message-queue",iconProps:e})})),sF=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-microscope",iconProps:e})})),sH=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-mobile-check",iconProps:e})})),sG=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-money",iconProps:e})})),sz=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-mother",iconProps:e})})),sV=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-movement",iconProps:e})})),sJ=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-overflow-menu--horizontal",iconProps:e})})),sq=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-overflow-menu--horizontal",iconProps:e})})),sK=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-password",iconProps:e})})),sX=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-pedestrian-family",iconProps:e})})),sY=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-pen",iconProps:e})})),sZ=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-printer",iconProps:e})})),sQ=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-procedure-order",iconProps:e})})),s0=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-programs",iconProps:e})})),s1=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-referral-order",iconProps:e})})),s2=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-renew",iconProps:e})})),s6=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-report",iconProps:e})})),s5=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-reset",iconProps:e})})),s3=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-save",iconProps:e})})),s8=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-search",iconProps:e})})),s4=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-settings",iconProps:e})})),s7=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-switcher",iconProps:e})})),s9=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-shopping-cart",iconProps:e})})),le=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-shopping-cart--arrow-down",iconProps:e})})),lt=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-sticky-note-add",iconProps:e})})),ln=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-syringe",iconProps:e})})),lr=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-table-of-contents",iconProps:e})})),lo=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-table",iconProps:e})})),li=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-time",iconProps:e})})),la=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-tools",iconProps:e})})),ls=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-translate",iconProps:e})})),ll=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-trash-can",iconProps:e})})),lc=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-tree-view--alt",iconProps:e})})),lu=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-two-factor-authentication",iconProps:e})})),ld=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-user-avatar",iconProps:e})})),lm=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-user-follow",iconProps:e})})),lp=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-user-xray",iconProps:e})})),lf=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-user",iconProps:e})})),lg=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-view-off",iconProps:e})})),lh=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-view",iconProps:e})})),l_=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(lS,{ref:t,icon:"omrs-icon-warning",iconProps:e})})),lw=l_,ly=sh,lv=sM,lb=sA,lx=le,lk=(0,oV.memo)((0,oV.forwardRef)(function({icon:e,fallback:t,...n},r){let o=(0,oV.useRef)(e?document.getElementById(e):void 0);return(0,oV.useEffect)(()=>{let t=document.getElementById("omrs-svgs-container"),n=new MutationObserver(t=>{for(let n of t)"childList"===n.type&&(o.current=e?document.getElementById(e):void 0)});return t&&n.observe(t,{childList:!0}),()=>n.disconnect()},[e]),(0,aR.jsx)(iS,{value:o.current,fallback:t,children:(0,aR.jsx)(lS,{ref:r,icon:e,iconProps:n})})})),lS=(0,oV.memo)((0,oV.forwardRef)(function({icon:e,iconProps:t},n){let{className:r,fill:o,size:i}=Object.assign({},{fill:"currentColor",size:20},t);(i<=0||i>72)&&(console.error(`Invalid size '${i}' specified for ${e}. Defaulting to 20.`),i=20);let a=(0,oV.useRef)(null);return(0,oV.useImperativeHandle)(n,()=>a.current),(0,oV.useEffect)(()=>{a.current&&"currentColor"!==o&&a.current.style.setProperty("--omrs-icon-fill",o)},[]),(0,aR.jsx)("svg",{ref:a,className:aM()("omrs-icon","-esm-primary-navigation__icons-module__icon___BfFhd",r),height:i,width:i,viewBox:"0 0 16 16",children:(0,aR.jsx)("use",{href:`#${e}`})})})),lj=({path:e,title:t,basePath:n,icon:r})=>{let{t:o}=(0,io.useTranslation)(),i=(0,aZ.useLocation)(),a=(0,oV.useMemo)(()=>{if(!e)return!1;let t=e.startsWith("/")?e.slice(1):e;if(t.startsWith("http"))return t===window.location.href;let n=t.split("/").map(e=>decodeURIComponent(e)),r=(i.pathname??"").split("/").slice(1).map(e=>decodeURIComponent(e));return r.some((e,t)=>n.every((e,n)=>r[t+n]===e))},[i.pathname,e]);return(0,aR.jsx)("div",{children:(0,aR.jsx)(oK,{className:aM()("cds--side-nav__link",{"active-left-nav-link":a}),to:`${n}/${encodeURIComponent(e)}`,children:(0,aR.jsxs)("span",{className:"-esm-primary-navigation__dashboard-module__menu___ds1tf",children:[(0,aR.jsx)(lk,{icon:r,className:"-esm-primary-navigation__dashboard-module__icon___4Zrrh",size:16}),(0,aR.jsx)("span",{children:o(t)})]})})},e)};function lN(e){return function({basePath:t}){return(0,aR.jsx)(aZ.BrowserRouter,{children:(0,aR.jsx)(lj,{basePath:t,...e})})}}var lC=n(7715),lE=n(7532),lI=n(3692),lA=n(7615),lP=n(700),lO=n(6816),lT=n(1168);function lR(e){return oJ().createElement(lT.C,e)}var l$=n(3010),lM=n(6513),lW=n(6190);function lL(e,t,n=!1){if(null==e)return n?e:void 0;if("string"==typeof e&&!e)return n?null:void 0;if(e instanceof l$.ng||e instanceof l$._l||e instanceof l$.Ip)return t?(0,lM.yP)(e,t):e;{let n=ap()(e).toDate(),r=new l$.ng(n.getFullYear(),n.getMonth()+1,n.getDate());return t?(0,lM.yP)(r,t):r}}function lD(e){if(e)return e.toDate((0,lW.Xj)())}var lB=n(9002);function lU(e){if("string"==typeof e&&0!==e.trim().length)try{return new Intl.Locale(e.replace(/[_@]/g,"-")).toString()}catch{return}}function lF(e){let t=e??"",n=lU(t);if(!n)return t;try{return new Intl.DisplayNames([n],{type:"language"}).of(n)??t}catch{return t}}function lH(){let e=window.i18next.language,t=lU(e)??e;return"ht"===t&&(t="fr-HT"),t}var lG=n(7883),lz=n(424),lV=n(1492),lJ=n(8271);function lq(e,t){var n=function(e,t){if(!t.has(e))throw TypeError("attempted to get private field on non-instance");return t.get(e)}(e,t);return n.get?n.get.call(e):n.value}am.extend(af),am.extend(lV),am.extend(lz);let lK="YYYY-MM-DDTHH:mm:ss.SSSZZ";function lX(e){return null!=e&&28===e.trim().length&&"T"===(e=e.trim())[10]&&":"===e[13]&&":"===e[16]&&"."===e[19]&&("+"===e[23]||"-"===e[23])&&am(e,lK).isValid()}function lY(e){return am(e).isToday()}function lZ(e){return lX(e)?am(e,lK).toDate():null}function lQ(e,t=!1){let n=am(e);return t&&(n=n.utc()),n.format(lK)}function l0(e){return am(e).toDate()}var l1=new WeakMap;let l2=new class{register(e,t){lq(this,l1).set(e,t)}getCalendar(e){if(!e)return;if(e.calendar)return e.calendar;if(e.region){let t=`${e.language}-${e.region}`;if(lq(this,l1).has(t))return lq(this,l1).get(t)}if(e.language&&lq(this,l1).has(e.language))return lq(this,l1).get(e.language);let t=new Intl.DateTimeFormat(e.toString()).resolvedOptions().calendar;return lq(this,l1).set(`${e.language}${e.region?`-${e.region}`:""}`,t),t}constructor(){!function(e,t,n){if(t.has(e))throw TypeError("Cannot initialize the same private elements twice on an object");t.set(e,n)}(this,l1,{writable:!0,value:new Map})}};function l6(e,t){l2.register(e,t)}function l5(e){let t=e??lH();return l2.getCalendar(t instanceof Intl.Locale?t:new Intl.Locale(t))}let l3={mode:"standard",time:"for today",day:!0,month:!0,year:!0,noToday:!1};function l8(e,t={}){let n=lH(),r=(0,lG.CD)(e,n);if(r.invalid)return console.warn(`Could not parse invalid date '${e}'`),null;!(0,lJ.A)(r.day)&&(0,lJ.A)(r.month)&&(r=Object.assign({},(0,U.A)(r,"day"),{month:r.day})),r.month&&(r.month-=1),r.day&&(r=Object.assign({},(0,U.A)(r,"day"),{date:r.day}));let o=am().set(r).toDate();return(0,lJ.A)(r.year)&&(t.year=!1),(0,lJ.A)(r.month)&&(t.month=!1),(0,lJ.A)(r.date)&&(t.day=!1),l4(o,t)}function l4(e,t){let n,r=t?.locale??lH(),o=new Intl.Locale(r),{calendar:i,mode:a,time:s,day:l,month:c,year:u,noToday:d,numberingSystem:m}={...l3,...{noToday:"am"===o.language},...t},p={calendar:i??l5(o),year:u?"numeric":void 0,month:c?"short":void 0,day:l?"2-digit":void 0,numberingSystem:m},f=am(e).isToday();if(f&&!d)n=(n=new Intl.RelativeTimeFormat(r,{numeric:"auto"}).format(0,"day"))[0].toLocaleUpperCase(r)+n.slice(1);else{"en"===o.language&&(r="en-GB");let t=new Intl.DateTimeFormat(r,p).formatToParts(e);("en"===o.language||"am"===o.language)&&"standard"==a&&u&&l&&(t=t.map(l7("-"))),"wide"==a&&(t=t.map(l7(" — "))),"ethiopic"===p.calendar&&(t=t.filter((e,t,n)=>"era"!==e.type&&("literal"!==e.type||!(t<n.length-1)||"era"!==n[t+1].type))),n=t.map(e=>e.value).join("")}return(!0===s||f&&"for today"===s)&&(n+=`, ${l9(e)}`),n}let l7=e=>(t,n,r)=>"literal"!==t.type||" "!==t.value||n<r.length-1&&"era"===r[n+1].type?t:{type:"literal",value:e};function l9(e){return e.toLocaleTimeString(lH(),{hour:"2-digit",minute:"2-digit"})}function ce(e,t){return l4(e,{...t,time:!0})}function ct(e,t){let n=l5("string"==typeof t?new Intl.Locale(t):t);return n?(0,lM.yP)(e,(0,lB.d)(n)):e}function cn(e,t){return new Intl.DurationFormat(lH(),t).format(e)}function cr(e,t){if(null==e)return null;if("string"==typeof e){let n=lH(),r=(0,lG.CD)(e,n);return r.invalid?(console.warn(`Could not interpret '${e}' as a date`),null):(r.day&&!r.month&&(r={...(0,U.A)(r,"day"),...{month:r.day}}),r.month&&(r.month-=1),r.day&&(r={...(0,U.A)(r,"day"),...{date:r.day}}),am(t).set(r))}return am(e)}let co=["years","months","days","hours","minutes","seconds"],ci={second:"seconds",minute:"minutes",hour:"hours",day:"days",month:"months",year:"years"},ca={seconds:45,minutes:45,hours:22,days:26,months:11,years:1/0};function cs(e,t=am(),n){let r,o=am(t),i=cr(e,o);if(null==i)return null;if("string"==typeof n){let e=ci[n]??n;return{[e]:o.diff(i,e)}}let{thresholds:a,largestUnit:s,smallestUnit:l}=n??{};if(void 0!==s||void 0!==l){let e,t=l?ci[l]??l:void 0;return e="auto"===s||void 0===s?function(e,t,n){let r=co.indexOf(n);for(let o=0;o<co.length;o++){let i=co[o];if(t.diff(e,i)>0)return o<=r?i:n}return n}(i,o,t??"seconds"):ci[s]??s,function(e,t,n,r){let o=co.indexOf(n),i=co.indexOf(r),a=co.slice(o,i+1),s={},l=e;for(let e of a){let n=t.diff(l,e);s[e]=n,l=l.add(n,e)}return s}(i,o,e,t??e)}let c=(r=function(e){let t={...ca};if(e)for(let[n,r]of Object.entries(e))void 0!==r&&(t[ci[n]??n]=r);return t}(a),o.diff(i,"seconds")<r.seconds?"seconds":o.diff(i,"minutes")<r.minutes?"minutes":o.diff(i,"hours")<r.hours?"hours":o.diff(i,"days")<r.days?"days":o.diff(i,"months")<r.months?"months":"years");return{[c]:o.diff(i,c)}}let cl={style:"short",localeMatcher:"lookup"};function cc(e,t=am(),n){let r=cs(e,t,n);return null==r?null:cn(r,"object"==typeof n&&n.formatOptions?{...cl,...n.formatOptions}:cl)}let cu=(0,oV.createContext)(null);function cd(){let e=iR({externalModuleName:"@openmrs/esm-styleguide"}).preferredDateLocale,t=(0,oV.useMemo)(()=>{let t=lH();return e[t]&&(t=e[t]),t},[window.i18next.language]),n=(0,oV.useMemo)(()=>{let e=l5(t);return void 0!==e?(0,lB.d)(e):void 0},[t]),r=(0,oV.useMemo)(()=>new Intl.Locale(t,{calendar:n?.identifier}),[t,n]),o=(0,oV.useMemo)(()=>n?(0,lM.yP)((0,lW.Ec)((0,lW.Xj)()),n):(0,lW.Ec)((0,lW.Xj)()),[n]);return{calendar:n,intlLocale:r,today_:o}}let cm=new l$.ng(1793,1,1);var cp=n(5830),cf=n(6156),cg=n(4745),ch=n(1202);function c_(e,t){return Number.parseInt(l4(e,{calendar:t.calendar,locale:t.baseName,day:!1,month:!1,noToday:!0,numberingSystem:"latn"}))}let cw=(0,oV.forwardRef)(function(e,t){let{className:n}=e,r=(0,oV.useContext)(cp.f2),o=(0,oV.useContext)(cp._I),i=r??o,a=(0,oV.useContext)(cu),s=(0,lW.Xj)(),l=l4(i.visibleRange.start.toDate(s),{calendar:a.calendar,locale:a.baseName,day:!1,year:!1,noToday:!0}),c=c_(i.visibleRange.start.toDate(s),a),u=i.maxValue?c_(i.maxValue.toDate(s),a):void 0,d=i.minValue?c_(i.minValue.toDate(s),a):void 0,m=(0,oV.useCallback)(e=>{i.setFocusedDate(i.focusedDate.cycle("year",e-i.focusedDate.year))},[]);return i&&(0,aR.jsxs)("span",{ref:t,className:n,children:[(0,aR.jsx)("span",{children:l}),(0,aR.jsxs)(cg.oz,{formatOptions:{useGrouping:!1},maxValue:u,minValue:d,onChange:m,value:c,children:[(0,aR.jsx)(ch.p,{}),(0,aR.jsxs)(lA.Y,{children:[(0,aR.jsx)(lP.$,{slot:"increment",children:(0,aR.jsx)(sn,{size:8})}),(0,aR.jsx)(lP.$,{slot:"decrement",children:(0,aR.jsx)(a9,{size:8})})]})]})]})});var cy=n(9588);let cv="-esm-primary-navigation__datepicker-module__inputGroup___+4zks",cb="-esm-primary-navigation__datepicker-module__inputSegment___wiExn",cx="-esm-primary-navigation__datepicker-module__dateInputWrapper___uiyAC",ck="-esm-primary-navigation__datepicker-module__invalidText___SxtTL",cS="-esm-primary-navigation__datepicker-module__flatButton___UU1Qp",cj="-esm-primary-navigation__datepicker-module__flatButtonMd___fhR-1",cN="-esm-primary-navigation__datepicker-module__flatButtonSm___5INZ7",cC="-esm-primary-navigation__datepicker-module__flatButtonLg___RFMrl";function cE({children:e}){let t=(0,oV.useContext)(lE.Pg),n=(0,oV.useContext)(lE.a8),r=t??n,o=at(()=>r?.close());return(0,aR.jsx)(cy.lG,{className:"-esm-primary-navigation__datepicker-module__dialog___qllIf",ref:o,children:e})}let cI=(0,oV.forwardRef)(function({variant:e,today_:t,minDate:n,maxDate:r},o){let i="range"===e,a=i?cp._e:cp.Vv;return(0,aR.jsx)(cf.A,{ref:o,className:"-esm-primary-navigation__datepicker-module__popover___16UMX",placement:"bottom start",offset:1,isNonModal:!0,children:(0,aR.jsx)(cE,{children:(0,aR.jsxs)(a,{...i?{minValue:n,maxValue:r,className:"cds--date-picker__calendar"}:{},children:[(0,aR.jsxs)("header",{className:"-esm-primary-navigation__datepicker-module__header___WAVlD",children:[(0,aR.jsx)(lP.$,{className:aM()(cS,cj),slot:"previous",children:(0,aR.jsx)(sc,{size:16})}),(0,aR.jsx)(cw,{className:"-esm-primary-navigation__datepicker-module__monthYear___A3aKF"}),(0,aR.jsx)(lP.$,{className:aM()(cS,cj),slot:"next",children:(0,aR.jsx)(su,{size:16})})]}),(0,aR.jsx)(cp.r8,{className:"-esm-primary-navigation__datepicker-module__calendarGrid___6qRB2",children:e=>(0,aR.jsx)(cp.Zr,{className:aM()("cds--date-picker__day",{"-esm-primary-navigation__datepicker-module__today___TZl6M":0===t.compare(e)}),date:e},e.toString())})]})})})});var cA=n(8017),cP=n(9774),cO=n(7956);let cT=(0,oV.forwardRef)(function(e,t){let n=(0,oV.useContext)(lE.Pg),[r,o]=(0,lC.JT)({slot:e.slot},t,cP.cQ),{locale:i}=(0,lT.Y)(),a=(0,cO.F)({...r,locale:i,createCalendar:lB.d}),s=(0,oV.useRef)(null),{fieldProps:l,inputProps:c}=(0,cA.cJ)({...r,inputRef:s},a,o),u=(0,oV.useCallback)(()=>{a.isDisabled||n.toggle()},[]);return(0,aR.jsxs)(lC.Kq,{values:[[cP.$,a],[ch.E,{...c,ref:s}],[lA.t,{...l,ref:o,isInvalid:a.isInvalid}]],children:[(0,aR.jsx)(lA.Y,{...e,id:e.id,ref:t,slot:e.slot||void 0,className:e.className,isDisabled:a.isDisabled,isInvalid:a.isInvalid,onClick:u,children:a.segments.map((t,n)=>(0,oV.cloneElement)(e.children(t),{key:n}))}),(0,aR.jsx)(ch.p,{})]})}),cR=(0,oV.forwardRef)(function(e,t){let n=(0,oV.useContext)(lE.Pg),r=(0,oV.useContext)(lE.a8);return(n??r).isInvalid?(0,aR.jsx)(l_,{ref:t,size:16,...e}):(0,aR.jsx)(a7,{ref:t,size:16,...e})});var c$=n(64),cM=n(5503),cW=n(1697),cL=n(7866),cD=n(8035),cB=n(2231);let cU=(0,oV.forwardRef)(function({segment:e,...t},n){let r=(0,oV.useContext)(cP.$),o=(0,c$.U)(n),{segmentProps:i}=(0,cM.V)(e,r,o),{focusProps:a,isFocused:s,isFocusVisible:l}=(0,cW.o)(),{hoverProps:c,isHovered:u}=(0,cL.M)({...t,isDisabled:r.isDisabled||"literal"===e.type}),d=function(e){let{className:t,style:n,children:r,defaultClassName:o,defaultChildren:i,defaultStyle:a,values:s}=e;return(0,oV.useMemo)(()=>{let e,l,c;return e="function"==typeof t?t({...s,defaultClassName:o}):t,l="function"==typeof n?n({...s,defaultStyle:a||{}}):n,c="function"==typeof r?r({...s,defaultChildren:i}):null==r?i:r,{className:e??o,style:l||a?{...a,...l}:void 0,children:c??i,"data-rac":""}},[t,n,r,o,i,a,s])}({...t,values:{...e,isReadOnly:!e.isEditable,isInvalid:r.isInvalid,isDisabled:r.isDisabled,isHovered:u,isFocused:s,isFocusVisible:l},defaultChildren:e.text}),m=(0,oV.useCallback)(e=>{e.stopPropagation()},[]);return(0,aR.jsx)("span",{...(0,cD.v)((0,cB.$)(t),i,a,c),...d,ref:o,style:i.style,"data-placeholder":e.isPlaceholder||void 0,"data-invalid":r.isInvalid||void 0,"data-readonly":!e.isEditable||void 0,"data-disabled":r.isDisabled||void 0,"data-type":e.type,"data-hovered":u||void 0,"data-focused":s||void 0,"data-focus-visible":l||void 0,onClick:m})}),cF={short:!1,size:"md"},cH=(0,oV.forwardRef)(function(e,t){let{className:n,defaultValue:r,isDisabled:o,invalid:i,invalidText:a,isInvalid:s,label:l,labelText:c,light:u,maxDate:d,minDate:m,onChange:p,onChangeRaw:f,short:g,size:h,value:_,...w}={...cF,...e},{calendar:y,intlLocale:v,today_:b}=cd(),x=(0,oV.useId)(),k=!!(c??l),S=(0,oV.useMemo)(()=>lL(r,y),[r,y]),j=(0,oV.useMemo)(()=>lL(_,y,!0),[_,y]),N=(0,oV.useMemo)(()=>lL(d,y),[d,y]),C=(0,oV.useMemo)(()=>lL(m??cm,y),[m,y]),E=(0,oV.useMemo)(()=>i||s,[i,s]),I=(0,oV.useMemo)(()=>(f&&p&&console.error("An OpenmrsDatePicker component was created with both onChange and onChangeRaw handlers defined. Only onChangeRaw will be used."),f??(e=>p?.(lD(e)))),[f,p]);return(0,aR.jsx)(lR,{locale:v.toString(),children:(0,aR.jsx)("div",{className:aM()("cds--form-item",n),children:(0,aR.jsx)(lC.Kq,{values:[[cu,v]],children:(0,aR.jsxs)(lE.lr,{className:aM()("cds--date-picker","cds--date-picker--single",{"cds--date-picker--short":g,"cds--date-picker--light":u}),defaultValue:S,isDisabled:o,isInvalid:E,maxValue:N,minValue:C,value:j,shouldForceLeadingZeros:"en"===v.language||void 0,...w,onChange:I,children:[(0,aR.jsxs)("div",{className:"cds--date-picker-container",children:[k&&(0,aR.jsx)(lI.J,{className:aM()("cds--label",{"cds--label--disabled":o}),htmlFor:x,children:c??l}),(0,aR.jsxs)(lA.Y,{className:cv,children:[(0,aR.jsx)(cT,{id:k?x:void 0,ref:t,className:aM()("cds--date-picker-input__wrapper","-esm-primary-navigation__datepicker-module__inputWrapper___kykar",{"-esm-primary-navigation__datepicker-module__inputWrapperSm___KJtg-":"sm"===h,"-esm-primary-navigation__datepicker-module__inputWrapperMd___ablE9":"md"===h||!h||0===h.length,"-esm-primary-navigation__datepicker-module__inputWrapperLg___5dkQp":"lg"===h}),children:e=>"era"!==e.type?(0,aR.jsx)(cU,{className:cb,segment:e}):(0,aR.jsx)(oJ().Fragment,{})}),(0,aR.jsx)(lP.$,{className:aM()(cS,{[cN]:"sm"===h,[cj]:"md"===h||!h||0===h.length,[cC]:"lg"===h}),children:(0,aR.jsx)(cR,{})})]}),(0,aR.jsx)(lO.b,{className:ck,children:a})]}),(0,aR.jsx)(cI,{variant:"single",today_:b})]})})})})}),cG=(0,oV.forwardRef)(function({className:e,defaultValue:t,invalid:n,invalidText:r,isDisabled:o,isInvalid:i,label:a,labelText:s,light:l,maxDate:c,minDate:u,onChange:d,onChangeRaw:m,size:p="md",value:f,...g},h){let{calendar:_,intlLocale:w,today_:y}=cd(),v=(0,oV.useId)(),b=!!(s??a),x=(0,oV.useMemo)(()=>{if(f)return{start:lL(f[0],_,!1),end:lL(f[1],_,!1)}},[f,_]),k=(0,oV.useMemo)(()=>{if(t)return{start:lL(t[0],_,!1),end:lL(t[1],_,!1)}},[t,_]),S=(0,oV.useMemo)(()=>lL(u??cm,_,!0),[u,_]),j=(0,oV.useMemo)(()=>lL(c,_,!0),[c,_]),N=(0,oV.useMemo)(()=>n||i,[n,i]),C=(0,oV.useMemo)(()=>(m&&d&&console.error("An OpenmrsDateRangePicker component was created with both onChange and onChangeRaw handlers defined. Only onChangeRaw will be used."),m??(e=>d?.([lD(e.start),lD(e.end)]))),[m,d]);return(0,aR.jsx)(lR,{locale:w.toString(),children:(0,aR.jsx)("div",{className:aM()("cds--form-item",e),children:(0,aR.jsx)(lC.Kq,{values:[[cu,w]],children:(0,aR.jsx)(lE.Ur,{id:b?v:void 0,className:aM()("cds--date-picker",{"cds--date-picker--light":l,"cds--date-picker--disabled":o}),isInvalid:N,shouldForceLeadingZeros:"en"===w.language||void 0,maxValue:j,minValue:S,value:x,defaultValue:k,ref:h,isDisabled:o,...g,onChange:C,children:(0,aR.jsxs)("div",{className:"cds--date-picker-container",children:[b&&(0,aR.jsx)(lI.J,{className:aM()("cds--label",{"cds--label--disabled":o}),htmlFor:v,children:s??a}),(0,aR.jsxs)(lA.Y,{className:cv,children:[(0,aR.jsxs)("div",{className:aM()("-esm-primary-navigation__datepicker-module__inputsWrapper___YlkGh",{"-esm-primary-navigation__datepicker-module__inputsWrapperSm___fAKhS":"sm"===p,"-esm-primary-navigation__datepicker-module__inputsWrapperMd___XVgGP":"md"===p||!p||0===p.length,"-esm-primary-navigation__datepicker-module__inputsWrapperLg___UgHJ1":"lg"===p}),children:[(0,aR.jsx)(cP.J3,{className:aM()("cds--date-picker-input__wrapper","-esm-primary-navigation__datepicker-module__startInput___qgbQm",cx),slot:"start",children:e=>(0,aR.jsx)(cU,{className:cb,segment:e})}),(0,aR.jsx)("div",{className:"-esm-primary-navigation__datepicker-module__separator___79vXZ",children:(0,aR.jsx)("span",{"aria-hidden":"true","data-readonly":!0,children:"–"})}),(0,aR.jsx)(cP.J3,{className:aM()("cds--date-picker-input__wrapper","-esm-primary-navigation__datepicker-module__endInput___huv7x",cx),slot:"end",children:e=>(0,aR.jsx)(cU,{className:cb,segment:e})})]}),(0,aR.jsx)(lP.$,{className:aM()(cS,{[cN]:"sm"===p,[cj]:"md"===p||!p||0===p.length,[cC]:"lg"===p}),children:(0,aR.jsx)(cR,{})})]}),(0,aR.jsx)(lO.b,{className:ck,children:r}),(0,aR.jsx)(cI,{variant:"range",today_:y,minDate:S,maxDate:j})]})})})})})}),cz=({diagnoses:e})=>{let{diagnosisTags:t}=iR({externalModuleName:"@openmrs/esm-styleguide"});return(0,aR.jsx)("div",{className:"-esm-primary-navigation__diagnosis-tags-module__container___8kut8",children:e.map(e=>{let{rank:n,uuid:r,display:o}=e,i=t[1===n?"primaryColor":"secondaryColor"];return(0,aR.jsx)(aU.Tag,{type:i,children:o},r)})})},cV={action:"-esm-primary-navigation__empty-card-module__action___Y0dul",content:"-esm-primary-navigation__empty-card-module__content___fo0nB",desktopHeading:"-esm-primary-navigation__empty-card-module__desktopHeading___0Cg1N",tabletHeading:"-esm-primary-navigation__empty-card-module__tabletHeading___BogTF",tile:"-esm-primary-navigation__empty-card-module__tile___QB8Ld"},cJ=({width:e="64",height:t="64"})=>(0,aR.jsx)("svg",{width:e,height:t,viewBox:"0 0 64 64",children:(0,aR.jsx)("use",{href:"#omrs-empty-data-illustration"})}),cq=e=>{let t="tablet"===i3(),n=e.launchForm;return(0,aR.jsx)(aU.Layer,{className:cV.layer,children:(0,aR.jsxs)(aU.Tile,{className:cV.tile,children:[(0,aR.jsx)("div",{className:t?cV.tabletHeading:cV.desktopHeading,children:(0,aR.jsx)("h4",{children:e.headerTitle})}),(0,aR.jsx)(cJ,{}),(0,aR.jsx)("p",{className:cV.content,children:tc("emptyStateText","There are no {{displayText}} to display",{displayText:e.displayText})}),(0,aR.jsx)("p",{className:cV.action,children:n&&(0,aR.jsx)(aU.Button,{onClick:()=>n(),kind:"ghost",size:t?"lg":"sm",children:tc("recordNewEntry","Record {{ displayText }}",{displayText:e.displayText})})})]})})},cK=({error:e,headerTitle:t})=>{let n="tablet"===i3();return(0,aR.jsx)(aU.Layer,{children:(0,aR.jsxs)(aU.Tile,{className:"-esm-primary-navigation__error-state-module__tile___dd418",children:[(0,aR.jsx)("div",{className:n?"-esm-primary-navigation__error-state-module__tabletHeading___g5rjg":"-esm-primary-navigation__error-state-module__desktopHeading___Nd9u2",children:(0,aR.jsx)("h4",{children:t})}),(0,aR.jsxs)("p",{className:"-esm-primary-navigation__error-state-module__errorMessage___z2RiN",children:[tc("error","Error")," ",`${e?.response?.status}: `,e?.response?.statusText]}),(0,aR.jsx)("p",{className:"-esm-primary-navigation__error-state-module__errorCopy___dq+e2",children:tc("errorCopy")})]})})},cX=cK,cY=oJ().forwardRef((e,t)=>{let{slotName:n,basePath:r,componentContext:o,state:i}=i7(),a=window.location??{pathname:""},s=o4(n??"");return e.isChildOfHeader&&n&&s.length>0?(0,aR.jsxs)(aU.SideNav,{"aria-label":tc("leftNavigation","Left navigation"),className:"-esm-primary-navigation__left-nav-module__leftNav___jzTJK",expanded:!0,isFixedNav:!0,ref:t,...e,children:[(0,aR.jsx)(ie,{name:"global-nav-menu-slot"}),n?(0,aR.jsx)(iS,{value:o,fallback:(0,aR.jsx)(ie,{name:n,state:{basePath:r,currentPath:a,...i}}),children:(0,aR.jsx)(oq.Provider,{value:o,children:(0,aR.jsx)(ie,{name:n,state:{basePath:r,currentPath:a,...i}})})}):null]}):null}),cZ=({selectedLocationUuid:e,defaultLocationUuid:t,locationTag:n,locationsPerRequest:r=50,onChange:o})=>{let[i,a]=(0,oV.useState)(""),s=(0,oV.useId)(),{location:l}=function(e){let t=e?`/ws/fhir2/R4/Location?_id=${e}`:null,{data:n,error:r,isLoading:o}=(0,iW.A)(t,tN,{shouldRetryOnError:e=>!!e?.response?.status&&e.response.status>=500});return(0,oV.useMemo)(()=>({location:n?.data?.entry?n.data.entry[0]:null,error:t?r:null,isLoading:!!t&&o}),[n,o,r,t])}(t),{locations:c,isLoading:u,hasMore:d,loadingNewData:m,error:p,setPage:f}=function(e,t=0,n=""){let r=iM(n),{data:o,isLoading:i,isValidating:a,setSize:s,error:l}=(0,iY.Ay)(function(n,o){if(o){let e=o.data?.link?.find(e=>"next"===e.relation);if(!e)return null;let t=new URL(e.url);return t.origin===window.location.origin?e.url:new URL(`${t.pathname}${t.search?`?${t.search}`:""}`,window.location.origin).toString()}let i=`${tk}/Location?`,a=new URLSearchParams;return a.append("_summary","data"),t&&a.append("_count",""+t),n&&a.append("_getpagesoffset",""+n*t),e&&a.append("_tag",e),"string"==typeof r&&""!==r&&a.append("name:contains",r),i+a.toString()},tN);return(0,oV.useMemo)(()=>({locations:o?.length?o?.flatMap(e=>e?.data?.entry??[]):[],isLoading:i,totalResults:o?.[0]?.data?.total,hasMore:!!o?.length&&o?.[o.length-1]?.data?.link?.some(e=>"next"===e.relation),loadingNewData:a,error:l||null,setPage:s}),[i,o,a,s,l])}(n,r,i),g=(0,oV.useMemo)(()=>l&&!i&&t?[l,...c.filter(({resource:e})=>e.id!==t)]:c??[],[l,c,t,i]),h=(0,oV.useCallback)(e=>{o(),a(e.trim())},[o]),_=an((0,oV.useCallback)(()=>{!m&&d&&f(e=>e+1)},[m,d,f])),w=d?Math.max(0,Math.floor(g.length-r/2)):-1;return(0,aR.jsxs)(aR.Fragment,{children:[(0,aR.jsx)(aU.Search,{"aria-describedby":p?`${s}-error`:void 0,labelText:tc("searchForLocation"),id:s,placeholder:tc("searchForLocation"),onChange:e=>h(e.target.value),size:"lg"}),p&&(0,aR.jsx)("div",{className:"-esm-primary-navigation__location-picker-module__errorNotification___vWBFD",id:`${s}-error`,children:(0,aR.jsx)(aU.InlineNotification,{kind:"error",subtitle:tc("errorLoadingLoginLocations","Unable to load login locations. Please try again or contact support if the problem persists."),title:tc("error","Error")})}),(0,aR.jsx)("div",{className:"-esm-primary-navigation__location-picker-module__searchResults___Gbet+",children:u?(0,aR.jsx)("div",{className:"-esm-primary-navigation__location-picker-module__loadingContainer___QO-zj",children:Array.from({length:5}).map((e,t)=>(0,aR.jsx)(aU.RadioButtonSkeleton,{className:"-esm-primary-navigation__location-picker-module__radioButtonSkeleton___otoCy",role:"progressbar"},t))}):(0,aR.jsxs)(aR.Fragment,{children:[(0,aR.jsx)("div",{className:"-esm-primary-navigation__location-picker-module__locationResultsContainer___6Pasf",children:g.length>0?(0,aR.jsx)(aU.RadioButtonGroup,{name:"loginLocations",onChange:e=>{o(e?.toString())},orientation:"vertical",valueSelected:e,children:g.map((e,t)=>(0,aR.jsx)(aU.RadioButton,{className:"-esm-primary-navigation__location-picker-module__locationRadioButton___rTDPj",id:e.resource.id,labelText:(0,aR.jsx)("span",{ref:t===w?_:null,children:e.resource.name}),name:e.resource.name,value:e.resource.id},e.resource.id))}):(0,aR.jsx)("div",{className:"-esm-primary-navigation__location-picker-module__emptyState___w4-Ca",children:(0,aR.jsx)("p",{className:"-esm-primary-navigation__location-picker-module__locationNotFound___Of2MJ",children:tc("noResultsToDisplay")})})}),m&&(0,aR.jsx)("div",{className:"-esm-primary-navigation__location-picker-module__loadingIcon___NAwSB",children:(0,aR.jsx)(aU.InlineLoading,{description:tc("loading")})})]})})]})},cQ=O("modalState",{modalContainer:null,modalStack:[]}),c0=0;async function c1(e,t,n={}){let r=ok(t),o=null;if(e){if(!r)throw Error(`No modal named '${t}' has been registered.`);let{load:i}=r,a=await i(),s=c0++;o=await oF({...a,name:`${t}-${s}`},{...n,domElement:e})}else w(`Failed to launch modal. Please notify your administrator. Modal name: ${t}`);return o}function c2(e){return"TO_BE_DELETED"===e.state||"DELETED"===e.state}function c6(e,t){t?.unmount&&(t.unmountPromise?.catch(()=>{}),t.unmount().catch(t=>{console.error(`The modal '${e}' failed to unmount`,t)}))}function c5(e){return e.find(e=>!c2(e))}function c3(e,t){e.container&&(e.container.style.visibility=t?"unset":"hidden")}let c8=window.getComputedStyle(document.body).overflow;function c4({modalStack:e,modalContainer:t}){if(t)if(e.length){t.style.visibility||(addEventListener("keydown",c9),document.body.style.overflow="hidden",t.style.visibility="unset");let n=c5(e);e.forEach(e=>{switch(e.state){case"NEW":{let n=function({size:e}){let t=document.createElement("div");return t.className=`cds--modal-container cds--modal-container--${e}`,t.setAttribute("role","dialog"),t.setAttribute("tabindex","-1"),t.setAttribute("aria-modal","true"),t}({size:e.props?.size??"md"});e.container=n,e.state="MOUNTING",c1(n,e.modalName,e.props).then(r=>{c2(e)?c6(e.modalName,r):r?(e.parcel=r,t.prepend(n),c3(e,c5(cQ.getState().modalStack)===e),r.mountPromise.then(()=>{c2(e)||(e.state="MOUNTED")},t=>{w(t),e.parcel=null,c7(e)})):c7(e)},t=>{w(t),c7(e)});break}case"MOUNTING":case"MOUNTED":c3(e,e===n);break;case"TO_BE_DELETED":e.state="DELETED",e.onClose(),c6(e.modalName,e.parcel),e.container?.remove(),setTimeout(()=>{let t=cQ.getState();cQ.setState({...t,modalStack:t.modalStack.filter(t=>t!==e)})},0)}})}else t.style.removeProperty("visibility"),document.body.style.overflow=c8,removeEventListener("keydown",c9)}function c7(e){if(c2(e))return;e.state="TO_BE_DELETED";let t=cQ.getState();cQ.setState({...t,modalStack:[...t.modalStack]})}function c9(e){"Escape"===e.key&&function(){let[e]=cQ.getState().modalStack;e&&c7(e)}()}function ue(e){cQ.subscribe(c4),cQ.setState({...cQ.getState(),modalContainer:e})}function ut(e,t={},n=()=>{}){let r=()=>{let e=cQ.getState().modalStack.find(e=>e.onClose===n);e&&c7(e)};if(ok(e)){var o;let i,a;o={state:"NEW",onClose:n,modalName:e,props:{close:r,...t}},a=[o,...(i=cQ.getState()).modalStack],cQ.setState({...i,modalStack:a})}else w(`Failed to launch modal. Please notify your administrator. Modal name: "${e}"`);return r}var un=n(9685);let ur=({notification:e})=>{let{description:t,action:n,kind:r,critical:o,title:i,onAction:a}=e;return(0,aR.jsx)(aU.ActionableNotification,{actionButtonLabel:n,kind:r||"info",lowContrast:o,subtitle:t,title:i||"",inline:!0,onActionButtonClick:a})},uo=({subject:e})=>{let[t,n]=(0,oV.useState)([]);return(0,oV.useEffect)(()=>{let t=e.subscribe(e=>n(t=>[...t.filter(t=>t.description!==e.description||t.action!==e.action||t.kind!==e.kind||t.title!==e.title),e]));return()=>t.unsubscribe()},[e]),(0,aR.jsx)(aR.Fragment,{children:t.map(e=>(0,aR.jsx)(ur,{notification:e},e.id))})},ui=({notification:e})=>{let{actionButtonLabel:t,onActionButtonClick:n=()=>{},subtitle:r,kind:o,title:i,critical:a,progressActionLabel:s,id:l,...c}=e,[u,d]=(0,oV.useState)(t);return(0,aR.jsx)(aU.ActionableNotification,{kind:o||"info",actionButtonLabel:u,ariaLabel:tc("closesActionableNotification","Closes actionable notification"),onActionButtonClick:()=>{n(),s&&d(s)},statusIconDescription:tc("actionableNotification","Actionable notification"),subtitle:r,title:i,lowContrast:a,inline:!0,...c})},ua=({subject:e})=>{let[t,n]=(0,oV.useState)([]);return(0,oV.useEffect)(()=>{let t=e.subscribe(e=>n(t=>[...t.filter(t=>t.subtitle!==e.subtitle||t.actionButtonLabel!==e.actionButtonLabel||t.onActionButtonClick!==e.onActionButtonClick||t.kind!==e.kind||t.title!==e.title),e]));return()=>t.unsubscribe()},[e]),(0,aR.jsx)(aR.Fragment,{children:t.map(e=>(0,aR.jsx)(ui,{notification:e},e.id))})};class us{subscribe(e){return this.listeners.add(e),{unsubscribe:()=>{this.listeners.delete(e)}}}next(e){for(let t of[...this.listeners])t(e)}constructor(){!function(e,t,n){t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}(this,"listeners",new Set)}}let ul=new us,uc=0,uu=new us,ud=0;function um(e){e&&(0,it.createRoot)(e).render((0,aR.jsx)(uo,{subject:ul}))}function up(e){var t;e&&("string"==typeof(t=e.description)?t.trim().length>0:"object"==typeof t&&(t instanceof Error||!(0,un.A)(t)))?(e.description instanceof Error&&(e.description=e.description.toLocaleString()),setTimeout(()=>{ul.next({...e,id:uc++})},0)):console.error("showNotification must be called with an object having a 'description' property that is a non-empty string or object")}function uf(e){e&&(0,it.createRoot)(e).render((0,aR.jsx)(ua,{subject:uu}))}function ug(e){var t;e&&("string"==typeof(t=e.actionButtonLabel)?t.trim().length>0:"object"==typeof t&&!(0,un.A)(t))?setTimeout(()=>{uu.next({...e,id:ud++})},0):console.error("showActionableNotification must be called with an actionButtonLabel that is a non-empty string")}let uh=["NORMAL","HIGH","CRITICALLY_HIGH","OFF_SCALE_HIGH","LOW","CRITICALLY_LOW","OFF_SCALE_LOW"],u_=["critically_low","critically_high","high","low","normal","off_scale_low","off_scale_high"],uw={container:"-esm-primary-navigation__numeric-observation-module__container___NfxbH",card:"-esm-primary-navigation__numeric-observation-module__card___9oQAh","abnormal-value":"-esm-primary-navigation__numeric-observation-module__abnormal-value___drvEi","critical-value":"-esm-primary-navigation__numeric-observation-module__critical-value___JAIHt",cell:"-esm-primary-navigation__numeric-observation-module__cell___lTunW","critically-high":"-esm-primary-navigation__numeric-observation-module__critically-high___aDUjc","critically-low":"-esm-primary-navigation__numeric-observation-module__critically-low___5srAK",high:"-esm-primary-navigation__numeric-observation-module__high___7KiyK",low:"-esm-primary-navigation__numeric-observation-module__low___Zs2ct","label-container":"-esm-primary-navigation__numeric-observation-module__label-container___lGnGH","value-container":"-esm-primary-navigation__numeric-observation-module__value-container___hHPXt",label:"-esm-primary-navigation__numeric-observation-module__label___WFuxk",value:"-esm-primary-navigation__numeric-observation-module__value___6fHUr",units:"-esm-primary-navigation__numeric-observation-module__units___EdVuw","pad-right":"-esm-primary-navigation__numeric-observation-module__pad-right___6T9Cd","off-scale-low":"-esm-primary-navigation__numeric-observation-module__off-scale-low___Sc1CV","off-scale-high":"-esm-primary-navigation__numeric-observation-module__off-scale-high___cWpU2",arrow:"-esm-primary-navigation__numeric-observation-module__arrow___SLGUh"},uy=({value:e,unit:t,label:n,interpretation:r,referenceRange:o,conceptUuid:i,variant:a="card",patientUuid:s})=>{let l=(0,oV.useId)(),{referenceRange:c,isLoading:u}=function(e,t){let n=null;e&&(n=t?`${tx}/conceptreferencerange/?patient=${t}&concept=${e}&v=full`:`${tx}/conceptreferencerange/?concept=${e}&v=full`);let{data:r,error:o,isLoading:i}=(0,iW.A)(n,tN),a=r?.data?.results?.[0];return{referenceRange:a?{hiNormal:a.hiNormal??null,hiAbsolute:a.hiAbsolute??null,hiCritical:a.hiCritical??null,lowNormal:a.lowNormal??null,lowAbsolute:a.lowAbsolute??null,lowCritical:a.lowCritical??null}:void 0,error:o,isLoading:i}}(o||r?void 0:i,s),d=o??c,m=(0,oV.useMemo)(()=>{if(r)return r?"--"===r?"normal":uh.includes(r)?r.toLowerCase():u_.includes(r)?r:"normal":void 0;if(d&&!u){if(!d||null==e||""===e)return"normal";let t="string"==typeof e?Number.parseFloat(e):e;return Number.isNaN(t)?"normal":null!==d.hiAbsolute&&void 0!==d.hiAbsolute&&t>d.hiAbsolute?"off_scale_high":null!==d.hiCritical&&void 0!==d.hiCritical&&t>=d.hiCritical?"critically_high":null!==d.hiNormal&&void 0!==d.hiNormal&&t>d.hiNormal?"high":null!==d.lowAbsolute&&void 0!==d.lowAbsolute&&t<d.lowAbsolute?"off_scale_low":null!==d.lowCritical&&void 0!==d.lowCritical&&t<=d.lowCritical?"critically_low":null!==d.lowNormal&&void 0!==d.lowNormal&&t<d.lowNormal?"low":"normal"}return"normal"},[r,d,e,u])??"normal",p="critically_low"===m||"critically_high"===m||"off_scale_low"===m||"off_scale_high"===m,f="normal"!==m,g=n?`omrs-numeric-obs-label-${n.replaceAll(/\s+/g,"-").toLowerCase()}-${l}`:void 0,h=`omrs-numeric-obs-value-${l}`,_=`omrs-numeric-obs-unit-${l}`,w=null!=e&&""!==e,y=w?e:tc("notAvailable","Not available"),v=aM()({[uw["critically-low"]]:"critically_low"===m||"off_scale_low"===m,[uw["critically-high"]]:"critically_high"===m||"off_scale_high"===m,[uw.low]:"low"===m,[uw.high]:"high"===m,[uw["off-scale-low"]]:"off_scale_low"===m,[uw["off-scale-high"]]:"off_scale_high"===m}),b=aM()({[uw.container]:!0,[uw.card]:!0,[uw["critical-value"]]:p,[uw["abnormal-value"]]:f&&!p}),x=aM()({[uw.cell]:!0,[v]:!0});return"cell"===a?(0,aR.jsxs)("div",{className:x,children:[y,w&&t?` ${t}`:""]}):(0,aR.jsxs)("section",{className:b,"data-testid":"numeric-observation-card",children:[n&&(0,aR.jsxs)("div",{className:uw["label-container"],children:[(0,aR.jsx)("span",{id:g,className:uw.label,children:n}),f&&(0,aR.jsx)("span",{className:uw[m.replace("_","-")],title:tc("abnormalValue","Abnormal value")})]}),(0,aR.jsxs)("div",{className:uw["value-container"],children:[(0,aR.jsx)("span",{id:h,"aria-labelledby":g&&_?`${g} ${_}`:g||_||void 0,className:uw.value,children:y}),w&&t&&(0,aR.jsx)("span",{id:_,className:uw.units,children:t})]})]})},uv="-esm-primary-navigation__page-header-module__pageHeader___YOpQL",ub=e=>{if("children"in e){let{children:t,className:n,...r}=e;return(0,aR.jsx)("div",{className:aM()(uv,n),...r,children:t})}{let{title:t,illustration:n,className:r,...o}=e;return(0,aR.jsx)("div",{className:aM()(uv,r),...o,children:(0,aR.jsx)(ux,{title:t,illustration:n})})}},ux=({title:e,illustration:t,className:n})=>{let[r,o]=(0,oV.useState)(null);return(0,oV.useEffect)(()=>{eO("@openmrs/esm-styleguide").then(e=>{o(e)})},[]),(0,aR.jsxs)("div",{className:aM()("-esm-primary-navigation__page-header-module__pageHeaderContent___PjsJm",n),children:[t,(0,aR.jsxs)("div",{className:"-esm-primary-navigation__page-header-module__pageLabels___pPcKj",children:[r?.implementationName&&(0,aR.jsx)("p",{children:tc(r.implementationName)}),(0,aR.jsx)("p",{className:"-esm-primary-navigation__page-header-module__pageName___3d4IC",children:e})]})]})},uk=({totalItems:e,pageSize:t,onPageNumberChange:n,pageNumber:r,dashboardLinkUrl:o,currentItems:i,dashboardLinkLabel:a})=>{let{pageSizes:s,pageItemsCount:l}=ai(t,e,r,i),c="tablet"===i3(),u=tc("paginationItemsCount","{{pageItemsCount}} / {{totalItems}} items",{totalItems:e,pageItemsCount:l});return(0,aR.jsx)(aR.Fragment,{children:e>0&&(0,aR.jsxs)("div",{className:aM()({"-esm-primary-navigation__pagination-module__tablet___lQ3ak":c,"-esm-primary-navigation__pagination-module__desktop___HfUTY":!c}),children:[(0,aR.jsxs)("div",{children:[u,o&&(0,aR.jsx)(oK,{to:o,className:"-esm-primary-navigation__pagination-module__configurableLink___NM9v7",children:a??tc("seeAll","See all")})]}),(0,aR.jsx)(aU.Pagination,{className:"-esm-primary-navigation__pagination-module__pagination___WzkBs",page:r,pageSize:t,pageSizes:s,totalItems:e,onChange:n,pageRangeText:(e,t)=>tc("paginationOfPages","of {{count}} pages",{count:t}),size:c?"lg":"sm"})]})})};function uS(e){return uN(uE(e,"usual","official"))}function uj(e){return uS(e)}function uN(e){var t;let n;return e?e.text??(n=(t=e).given??[],(t.family?n.concat(t.family):n).join(" ")):""}function uC(e){return uN(e)}function uE(e,...t){for(let n of(0==t.length&&(t=["usual"]),t)){let t=e.name?.find(e=>{var t,r;return t=e,r=n,t.use?t.use===r:"usual"===r});if(t)return t}}function uI(e,t=am()){let n=am(t),r=cr(e,n);if(null==r)return null;let o=n.diff(r,"hours"),i=n.diff(r,"days"),a=n.diff(r,"weeks"),s=n.diff(r,"months"),l=n.diff(r,"years"),c={};if(o<2)c.minutes=n.diff(r,"minutes");else if(i<2)c.hours=o;else if(a<4)c.days=i;else if(l<1){let e=n.subtract(a,"weeks").diff(r,"days");c.weeks=a,c.days=e}else if(l<2){let e=n.subtract(s,"months").diff(r,"days");c.months=s,c.days=e}else if(l<18){let e=n.subtract(l,"year").diff(r,"months");c.years=l,c.months=e}else c.years=l;return c}function uA(e,t=am()){let n=uI(e,t);if(null==n)return null;let r={style:"short",localeMatcher:"lookup"};return"minutes"in n&&0===n.minutes&&(r.minutesDisplay="always"),cn(n,r)}let uP={container:"-esm-primary-navigation__patient-banner-patient-info-module__container___Gjd-4",activePatientContainer:"-esm-primary-navigation__patient-banner-patient-info-module__activePatientContainer___QLcpg",patientBanner:"-esm-primary-navigation__patient-banner-patient-info-module__patientBanner___7nrgC",patientName:"-esm-primary-navigation__patient-banner-patient-info-module__patientName___-bF9a",patientAvatar:"-esm-primary-navigation__patient-banner-patient-info-module__patientAvatar___AkN3H",patientAvatarButton:"-esm-primary-navigation__patient-banner-patient-info-module__patientAvatarButton___KDxA6",patientInfo:"-esm-primary-navigation__patient-banner-patient-info-module__patientInfo___+WtDB",demographics:"-esm-primary-navigation__patient-banner-patient-info-module__demographics___Vtf3v",row:"-esm-primary-navigation__patient-banner-patient-info-module__row___NIOYI",flexRow:"-esm-primary-navigation__patient-banner-patient-info-module__flexRow___VxdGB",tagsSlot:"-esm-primary-navigation__patient-banner-patient-info-module__tagsSlot___lU6+4",identifiers:"-esm-primary-navigation__patient-banner-patient-info-module__identifiers___tehd8",identifier:"-esm-primary-navigation__patient-banner-patient-info-module__identifier___bSJIF",primaryIdentifier:"-esm-primary-navigation__patient-banner-patient-info-module__primaryIdentifier___yOV1B",secondaryIdentifier:"-esm-primary-navigation__patient-banner-patient-info-module__secondaryIdentifier___WvJbh",value:"-esm-primary-navigation__patient-banner-patient-info-module__value___sBM-q",tag:"-esm-primary-navigation__patient-banner-patient-info-module__tag___BEvEV",gender:"-esm-primary-navigation__patient-banner-patient-info-module__gender___4XkLq",separator:"-esm-primary-navigation__patient-banner-patient-info-module__separator___iYBA3",tooltipPadding:"-esm-primary-navigation__patient-banner-patient-info-module__tooltipPadding___EWVCK",tooltipSmallText:"-esm-primary-navigation__patient-banner-patient-info-module__tooltipSmallText___yDmRU",actionsButtonText:"-esm-primary-navigation__patient-banner-patient-info-module__actionsButtonText___mn139"};function uO({showIdentifierLabel:e,type:t,value:n}){return(0,aR.jsx)("span",{className:uP.primaryIdentifier,children:(0,aR.jsxs)(aU.Tag,{className:uP.tag,type:"gray",children:[e&&t?.text&&(0,aR.jsxs)("span",{className:uP.label,children:[t.text,": "]}),(0,aR.jsx)("span",{className:uP.value,children:n})]})})}function uT({showIdentifierLabel:e,type:t,value:n}){return(0,aR.jsxs)(aU.FormLabel,{className:uP.secondaryIdentifier,id:`patient-banner-identifier-${n}`,children:[e&&(0,aR.jsxs)("span",{className:uP.label,children:[t?.text,": "]}),(0,aR.jsx)("span",{className:uP.value,children:n})]})}function uR({identifiers:e,showIdentifierLabel:t}){let{excludePatientIdentifierCodeTypes:n}=iR(),{primaryIdentifierCode:r}=al(),o=e?.filter(e=>{let t=e.type?.coding?.[0]?.code;return t&&!n?.uuids.includes(t)})??[];return(0,aR.jsx)(aR.Fragment,{children:o?.length?o.map(({value:e,type:n},i)=>(0,aR.jsxs)(oJ().Fragment,{children:[(0,aR.jsx)("span",{className:uP.identifier,children:n?.coding?.[0]?.code===r?(0,aR.jsx)(uO,{showIdentifierLabel:t,type:n,value:e}):(0,aR.jsx)(uT,{showIdentifierLabel:t,type:n,value:e})}),i<o.length-1&&(0,aR.jsx)("span",{className:uP.separator,children:"\xb7"})]},e)):""})}let u$={Female:sx,Male:sk,Other:sS,Unknown:sj},uM=({gender:e})=>{let t=u$[e];return t?(0,aR.jsx)(t,{fill:"#525252"}):null},uW={male:"Male",female:"Female",other:"Other",unknown:"Unknown"};function uL({patient:e,renderedFrom:t}){var n;let r,o,i=uS(e),a=e?.gender&&(o=uW[r=(n=e.gender).toLowerCase()]??"Unknown",{displayText:tc(r,n),iconKey:o}),s=(0,oV.useMemo)(()=>({patientUuid:e.id,patient:e,renderedFrom:t}),[e.id,e,t]);return(0,aR.jsxs)("div",{className:uP.patientInfo,children:[(0,aR.jsx)("div",{className:aM()(uP.row,uP.patientNameRow),children:(0,aR.jsxs)("div",{className:uP.flexRow,children:[(0,aR.jsx)("span",{className:uP.patientName,children:i}),a&&(0,aR.jsxs)("div",{className:uP.gender,children:[(0,aR.jsx)(uM,{gender:a.iconKey}),(0,aR.jsx)("span",{children:a.displayText})]}),(0,aR.jsx)(ie,{className:uP.tagsSlot,name:"patient-banner-tags-slot",state:s})]})}),(0,aR.jsxs)("div",{className:uP.demographics,children:[e.birthDate&&(0,aR.jsxs)(aR.Fragment,{children:[(0,aR.jsx)("span",{children:uA(e.birthDate)}),(0,aR.jsx)("span",{className:uP.separator,children:"\xb7"}),(0,aR.jsx)("span",{children:l8(e.birthDate,{time:!1})}),(0,aR.jsx)("span",{className:uP.separator,children:"\xb7"})]}),(0,aR.jsx)(uR,{identifiers:e.identifier,showIdentifierLabel:!0}),(0,aR.jsx)(ie,{className:uP.extensionSlot,name:"patient-banner-bottom-slot",state:s})]})]})}var uD=n(7683);function uB({patient:e,patientUuid:t,actionsSlotName:n,additionalActionsSlotState:r}){let[o,i]=(0,oV.useState)(!1),{extensions:a}=o7(n),s="tablet"===i3(),l=at(()=>i(!1),o),c=(0,oV.useRef)(null),u=(0,oV.useRef)(null),d=(0,oV.useId)(),m=`patient-actions-menu-trigger-${d}`,p=`patient-actions-menu-${d}`,f=(0,oV.useCallback)(()=>i(e=>!e),[]),g=(0,oV.useCallback)(()=>{i(!1),c.current?.focus()},[]),h=(0,oV.useCallback)(e=>{if("Escape"===e.key&&o){e.stopPropagation(),g();return}if(("ArrowDown"===e.key||"ArrowUp"===e.key)&&o){e.preventDefault();let t=u.current?.querySelectorAll('[role="menuitem"]:not([disabled])');if(!t?.length)return;let n=document.activeElement?.closest?.('[role="menuitem"]')??document.activeElement,r=Array.from(t).indexOf(n);if(-1===r)return void t["ArrowDown"===e.key?0:t.length-1]?.focus();let o=r+("ArrowDown"===e.key?1:-1),i=o<0?t.length-1:o>=t.length?0:o;t[i]?.focus()}},[g,o]);(0,oV.useEffect)(()=>{if(o&&u.current){let e=u.current.querySelector('[role="menuitem"]:not([disabled])');e?.focus()}},[o]);let _=(0,oV.useMemo)(()=>({patientUuid:t,patient:e,closeMenu:g,...r}),[t,e,g,r]);return 0===a.length?null:(0,aR.jsx)("div",{className:"-esm-primary-navigation__patient-banner-actions-menu-module__overflowMenuContainer___lXHHD",children:(0,aR.jsxs)("div",{"data-overflow-menu":!0,className:aM()("cds--overflow-menu",aG),ref:l,children:[(0,aR.jsxs)("button",{className:aM()("cds--btn","cds--btn--ghost","cds--overflow-menu__trigger",{"cds--overflow-menu--open":o},aJ),"aria-controls":p,"aria-expanded":o,"aria-haspopup":"true",id:m,onClick:f,onKeyDown:h,ref:c,children:[(0,aR.jsx)("span",{className:"-esm-primary-navigation__patient-banner-actions-menu-module__actionsButtonText___SdOyM",children:tc("actions","Actions")})," ",(0,aR.jsx)(uD.CH,{size:16,style:{marginLeft:"0.5rem",fill:"#78A9FF"}})]}),(0,aR.jsxs)("div",{className:aM()("cds--overflow-menu-options","cds--overflow-menu--flip",az,{[aV]:o}),"aria-labelledby":m,"data-floating-menu-direction":"bottom",id:p,onKeyDown:h,ref:u,role:"menu",tabIndex:-1,children:[(0,aR.jsx)("ul",{className:aM()("cds--overflow-menu-options__content",{"cds--overflow-menu-options--lg":s}),children:(0,aR.jsx)(ie,{name:n,state:_},n)}),(0,aR.jsx)("span",{})]})]})})}var uU=n(397),uF=n.n(uU);function uH(e){let{patientPhotoConceptUuid:t}=iR({externalModuleName:"@openmrs/esm-styleguide"}),n=t?`${tx}/obs?patient=${e}&concept=${t}&v=full`:null,{data:r,error:o,isLoading:i}=(0,ii.u)(e?n:null,tN),a=r?.data?.results[0];return{data:a?{dateTime:a?.obsDatetime,imageSrc:a?.value?.links?.uri}:null,error:o,isLoading:i}}let uG=({width:e=56,height:t=56,"aria-label":n})=>{let{t:r}=(0,io.useTranslation)();return(0,aR.jsxs)("svg",{"aria-label":n??r("patientPhotoPlaceholder","Patient photo placeholder"),width:e,height:t,fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,aR.jsx)("path",{fill:"#ffffff",d:"M0 0h56v56H0z"}),(0,aR.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"m36.75 20.134-.884-.884L19.25 35.866l.884.884 1.25-1.25H34.25a1.252 1.252 0 0 0 1.25-1.25V21.384l1.25-1.25Zm-2.5 14.116H22.634l4.87-4.87 1.487 1.486a1.25 1.25 0 0 0 1.768 0l.991-.991 2.5 2.498v1.877Zm0-3.645-1.616-1.616a1.25 1.25 0 0 0-1.768 0l-.991.991-1.486-1.486 5.861-5.86v7.971Zm-12.5 1.145v-1.875l3.125-3.123.858.859.885-.885-.86-.86a1.25 1.25 0 0 0-1.767 0l-2.241 2.242V21.75h10V20.5h-10c-.69 0-1.25.56-1.25 1.25v10h1.25Z",fill:"#8D8D8D"})]})},uz="-esm-primary-navigation__patient-photo-module__avatar___t5TmZ";function uV({patientUuid:e,patientName:t,alt:n}){let{data:r,isLoading:o}=uH(e),[i,a]=(0,oV.useState)(null),[s,l]=(0,oV.useState)(!1),c=(0,oV.useMemo)(()=>uF().generate(e),[e]);(0,oV.useEffect)(()=>{if(r?.imageSrc){let e=new URL(r.imageSrc,window.location.origin).pathname;l(!0);let t=!1,n=new Image;return n.onload=()=>{t||(a(e),l(!1))},n.onerror=()=>{t||(a(null),l(!1))},n.src=e,()=>{t=!0}}a(null),l(!1)},[r?.imageSrc]);let u=(0,oV.useMemo)(()=>n||(i?tc("patientPhotoAlt","Profile photo of {{patientName}}",{patientName:t}):tc("patientAvatarAlt","Avatar for {{patientName}}",{patientName:t})),[n,i,t]);return o||s?(0,aR.jsx)(aU.SkeletonIcon,{className:"-esm-primary-navigation__patient-photo-module__skeleton___ueN8Q","data-testid":"skeleton-icon"}):r?.imageSrc&&!i?(0,aR.jsx)(uG,{"aria-label":tc("patientPhotoPlaceholder","Photo placeholder for {{patientName}}",{patientName:t})}):i?(0,aR.jsx)("div",{"aria-label":u,children:(0,aR.jsx)("img",{className:uz,src:i,alt:u,title:t})}):(0,aR.jsx)("div",{"aria-label":u,children:(0,aR.jsx)("div",{className:uz,title:t,style:{backgroundImage:c.toDataUrl(),backgroundRepeat:"no-repeat",backgroundSize:"cover"},children:(0,aR.jsx)("span",{className:"-esm-primary-navigation__patient-photo-module__initials___-k9Hv",children:function(e,t=3){return e.split(/\s+/).filter(Boolean).slice(0,t).map(e=>e[0]).join("")}(t)})})})}let uJ=["omrs-pict-appointments","omrs-pict-assessment-1","omrs-pict-assessment-2","omrs-pict-blood-bank","omrs-pict-cardiology","omrs-pict-ct-scan","omrs-pict-dentistry","omrs-pict-digital-trust","omrs-pict-emergency-department","omrs-pict-facility","omrs-pict-geriatrics","omrs-pict-gynaecology","omrs-pict-in-patient","omrs-pict-laboratory","omrs-pict-labs-2","omrs-pict-metadata-export","omrs-pict-obstetrics","omrs-pict-patient-search","omrs-pict-patients","omrs-pict-payments-desk","omrs-pict-pharmacy","omrs-pict-pharmacy-2","omrs-pict-registration","omrs-pict-service-queues","omrs-pict-stock-management","omrs-pict-transfer","omrs-pict-triage","omrs-pict-x-ray"],uq=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-appointments",pictogramProps:e})})),uK=uq,uX=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-assessment-1",pictogramProps:e})})),uY=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-assessment-2",pictogramProps:e})})),uZ=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-blood-bank",pictogramProps:e})})),uQ=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-cardiology",pictogramProps:e})})),u0=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-ct-scan",pictogramProps:e})})),u1=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-dentistry",pictogramProps:e})})),u2=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-digital-trust",pictogramProps:e})})),u6=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-emergency-department",pictogramProps:e})})),u5=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-facility",pictogramProps:e})})),u3=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-geriatrics",pictogramProps:e})})),u8=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-gynaecology",pictogramProps:e})})),u4=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-in-patient",pictogramProps:e})})),u7=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-laboratory",pictogramProps:e})})),u9=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-labs-2",pictogramProps:e})})),de=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-metadata-export",pictogramProps:e})})),dt=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-obstetrics",pictogramProps:e})})),dn=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-patient-search",pictogramProps:e})})),dr=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-patients",pictogramProps:e})})),di=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-payments-desk",pictogramProps:e})})),da=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-pharmacy",pictogramProps:e})})),ds=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-pharmacy-2",pictogramProps:e})})),dl=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-registration",pictogramProps:e})})),dc=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-service-queues",pictogramProps:e})})),du=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-stock-management",pictogramProps:e})})),dd=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-transfer",pictogramProps:e})})),dm=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-triage",pictogramProps:e})})),dp=(0,oV.memo)((0,oV.forwardRef)(function(e,t){return(0,aR.jsx)(d_,{ref:t,pictogram:"omrs-pict-x-ray",pictogramProps:e})})),df=u5,dg=dr,dh=(0,oV.memo)((0,oV.forwardRef)(function({pictogram:e,fallback:t,...n},r){let o=(0,oV.useRef)(document.getElementById(e));return(0,oV.useEffect)(()=>{let t=document.getElementById("omrs-svgs-container"),n=new MutationObserver(t=>{for(let n of t)"childList"===n.type&&(o.current=document.getElementById(e))});return t&&n.observe(t,{childList:!0}),()=>n.disconnect()},[e]),(0,aR.jsx)(iS,{value:o.current,fallback:t,children:(0,aR.jsx)(d_,{ref:r,pictogram:e,pictogramProps:n})})})),d_=(0,oV.memo)((0,oV.forwardRef)(function({pictogram:e,pictogramProps:t},n){let{className:r,size:o}=Object.assign({},{size:92},t);return(o<=26||o>144)&&(console.error(`Invalid size '${o}' specified for ${e}. Defaulting to 92.`),o=92),(0,aR.jsx)("svg",{ref:n,className:aM()("-esm-primary-navigation__pictograms-module__pictogram___wXX7t",r),height:o,width:o,children:(0,aR.jsx)("use",{href:`#${e}`})})})),dw=({children:e})=>"tablet"===i3()?(0,aR.jsx)(aU.Layer,{children:e}):(0,aR.jsx)(aR.Fragment,{children:e}),dy=({snackbar:e,closeSnackbar:t})=>{let{actionButtonLabel:n="",kind:r="success",onActionButtonClick:o=()=>{},isLowContrast:i="error"!==r,progressActionLabel:a,subtitle:s="",timeoutInMs:l=5e3,autoClose:c="error"!==r,title:u,id:d,...m}=e,[p,f]=(0,oV.useState)(n),[g,h]=(0,oV.useState)(!0),[_,w]=(0,oV.useState)(!1),y=(0,oV.useCallback)(()=>{setTimeout(t,250)},[t]),v=(0,oV.useCallback)(()=>{w(!0),y()},[y]);return(0,oV.useEffect)(()=>{if(c){let e=setTimeout(v,l);return()=>clearTimeout(e)}},[l,c,v]),(0,oV.useEffect)(()=>{h(!1),window.setTimeout(()=>{h(!0)},0)},[]),(0,aR.jsx)(aU.ActionableNotification,{actionButtonLabel:p,"aria-label":tc("closeSnackbar","Close snackbar"),className:aM()("-esm-primary-navigation__snackbar-module__slideIn___-oZIt",{"-esm-primary-navigation__snackbar-module__animated___M2YBU":g,"-esm-primary-navigation__snackbar-module__slideOut___yEmGT":_}),kind:r,lowContrast:i,onActionButtonClick:()=>{o(),v(),a&&f(a)},onClose:y,statusIconDescription:tc("snackbarNotification","Snackbar notification"),subtitle:s,title:u,...m})},dv=({subject:e})=>{let[t,n]=(0,oV.useState)([]),r=(0,oV.useCallback)(e=>{n(t=>t.filter(t=>t!==e))},[]);return(0,oV.useEffect)(()=>{let t=e.subscribe(e=>n(t=>[...t.filter(t=>t.subtitle!==e.subtitle||t.actionButtonLabel!==e.actionButtonLabel||t.onActionButtonClick!==e.onActionButtonClick||t.kind!==e.kind||t.title!==e.title),e]));return()=>t.unsubscribe()},[e]),(0,aR.jsx)(aR.Fragment,{children:t.map(e=>(0,aR.jsx)(dy,{snackbar:e,closeSnackbar:()=>r(e)},e.id))})},db=new us,dx=0;function dk(e){e&&(0,it.createRoot)(e).render((0,aR.jsx)(dv,{subject:db}))}function dS(e){var t;e&&"string"==typeof(t=e.title)&&t.trim().length>0?setTimeout(()=>{db.next({...e,id:dx++})},0):console.error("showSnackbar must be called with an object having a 'title' property that is a non-empty string")}let dj=({toast:e,closeToast:t})=>{let{description:n,kind:r,critical:o,title:i,actionButtonLabel:a,onActionButtonClick:s=()=>{}}=e,l=(0,oV.useCallback)(()=>{s(),t()},[t,s]);return(0,aR.jsx)("div",{children:(0,aR.jsx)(aU.ActionableNotification,{actionButtonLabel:a,kind:r||"info",lowContrast:o,subtitle:n,title:i||"",onActionButtonClick:l,onClose:t})})},dN=({subject:e})=>{let[t,n]=(0,oV.useState)([]),r=(0,oV.useCallback)(e=>{n(t=>t.filter(t=>t!==e))},[]);return(0,oV.useEffect)(()=>{let t=e.subscribe(e=>n(t=>[...t.filter(t=>t.description!==e.description||t.kind!==e.kind||t.title!==e.title||t.actionButtonLabel!==e.actionButtonLabel||t.onActionButtonClick!==e.onActionButtonClick),e]));return()=>t.unsubscribe()},[e]),(0,aR.jsx)(aR.Fragment,{children:t.map(e=>(0,aR.jsx)(dj,{toast:e,closeToast:()=>r(e)},e.id))})},dC=new us,dE=0;function dI(e){e&&(0,it.createRoot)(e).render((0,aR.jsx)(dN,{subject:dC}))}function dA(e){var t;e&&("string"==typeof(t=e.description)?t.trim().length>0:"object"==typeof t&&!(0,un.A)(t))?setTimeout(()=>{dC.next({...e,id:dE++})},0):console.error("showToast must be called with an object having a 'description' property that is a non-empty string or object")}function dP(e,t=!1){if(t)return!0;let n=dM[e];return!n||!n()}function dO(e,t){let n=dG.getState()?.workspaceGroup,r=n?.name;r&&e===r&&dq(()=>{let r=dQ(e);r&&(r.setState({},!0),r.subscribe(()=>{})()),"function"==typeof n?.cleanup&&n.cleanup(),dG.setState(e=>({...e,workspaceGroup:void 0})),"function"==typeof t&&t()},r?e=>e.currentWorkspaceGroup===r:()=>!0)}function dT(e,t){let{name:n,additionalProps:r}=t;oI(n);let o=()=>{dU(e.name,{ignoreChanges:!0,onWorkspaceClose:()=>dR(n,r),closeWorkspaceGroup:!1})};dP(e.name)?o():dX("closing-workspace-launching-new-workspace",o,e.title??e.name)}function dR(e,t){let n=oI(e),r=dG.getState().workspaceGroup;if(r&&!r.members?.includes(e))return void dO(r.name,()=>{dR(e,t)});let o=dG.getState().workspaceGroup?.name,i={...n,title:dY(n,t),closeWorkspace:(t={})=>dU(e,t),closeWorkspaceWithSavedChanges:t=>dU(e,{ignoreChanges:!0,...t}),promptBeforeClosing:t=>{var n,r;return n=e,r=t,void(dM[n]=r)},setTitle:(t,n)=>{i.title=t,i.titleNode=n,dG.setState(t=>{let n=t.openWorkspaces.map(t=>t.name===e?i:t);return{...t,openWorkspaces:n}})},currentWorkspaceGroup:o,additionalProps:t??{}};function a(e,t){dG.setState(n=>{let r=[e,...t??n.openWorkspaces],o=dJ(e);return{...n,openWorkspaces:r,workspaceWindowState:o}})}o&&dQ(o,t);let s=dG.getState().openWorkspaces,l=s.findIndex(t=>t.name===e),c=s.find(e=>e.type==i.type);if(0===s.length)a(i);else if(s[0].canHide||0===l)if(l>=0){let t=s[l];a({...t,additionalProps:i.additionalProps,...t.title===dY(t,t.additionalProps)&&{title:dY(i,i.additionalProps)}},s.filter(t=>t.name!=e))}else c?(a(c,dG.getState().openWorkspaces.filter(e=>e.type!=i.type)),dT(c,{name:e,additionalProps:t})):a(i);else dT(s[0],{name:e,additionalProps:t})}function d$({targetUrl:e,contextKey:t,workspaceName:n,additionalProps:r}){dF(t),dR(n,r),tm({to:e})}let dM={};function dW(e,t){dM[e]=t}function dL(e){return dM[e]}function dD(){let e=dG.getState();dG.setState({...e,prompt:null})}let dB={ignoreChanges:!1,onWorkspaceClose:()=>{},closeWorkspaceGroup:!0};function dU(e,t={}){t={...dB,...t};let n=()=>{let n=dG.getState();n.openWorkspaces.find(t=>t.name===e);let r=n.openWorkspaces.filter(t=>t.name!=e),o=dG.getState().workspaceGroup?.name;o&&t.closeWorkspaceGroup&&dO(o),dM[e]=()=>!1,dG.setState(e=>({...e,prompt:null,openWorkspaces:r,workspaceWindowState:dJ(r?.[0])})),t?.onWorkspaceClose?.()};return dP(e,t?.ignoreChanges)?(n(),!0):(dX("closing-workspace",n,oI(e).title??e),!1)}function dF(e){dG.getState().context!=e&&dG.setState({context:e,openWorkspaces:[],prompt:null})}let dH={context:"",openWorkspaces:[],prompt:null,workspaceWindowState:"normal",workspaceGroup:void 0},dG=O("workspace",dH);function dz(){return dG}function dV(e){let t=dG.getState();dG.setState({...t,workspaceWindowState:e})}function dJ(e){return e?.preferredWindowSize??"normal"}function dq(e=()=>{},t=()=>!0){let n=dG.getState().openWorkspaces.filter(t).every(({name:e})=>dP(e)),r=()=>{dZ(),e?.()};n?r():dX("closing-all-workspaces",r)}function dK(){let{workspaceWindowState:e,openWorkspaces:t,prompt:n,workspaceGroup:r}=o0(dG);return(0,oV.useMemo)(()=>({active:t.length>0,prompt:n,workspaceWindowState:e,workspaces:t,workspaceGroup:r}),[t,e,n,r])}function dX(e,t=()=>{},n=""){let r;switch(e){case"closing-workspace":r={title:tc("unsavedChangesTitleText","Unsaved changes"),body:tc("unsavedChangesInOpenedWorkspace","You may have unsaved changes in the opened workspace. Do you want to discard these changes?"),onConfirm:()=>{t?.()},confirmText:tc("discard","Discard")};break;case"closing-all-workspaces":{let e=dG.getState().openWorkspaces.filter(({name:e})=>!dP(e)).map(({title:e},t)=>`${t+1}. ${e}`);r={title:tc("closingAllWorkspacesPromptTitle","You have unsaved changes"),body:tc("closingAllWorkspacesPromptBody","There may be unsaved changes in the following workspaces. Do you want to discard changes in the following workspaces? {{workspaceNames}}",{workspaceNames:e.join(",")}),onConfirm:()=>{t?.()},confirmText:tc("closeAllOpenedWorkspaces","Discard changes in {{count}} workspaces",{count:e.length})};break}case"closing-workspace-launching-new-workspace":r={title:tc("unsavedChangesTitleText","Unsaved changes"),body:tc("unsavedChangesInWorkspace",'There may be unsaved changes in "{{workspaceName}}". Please save them before opening another workspace.',{workspaceName:n}),onConfirm:()=>{dG.setState(e=>({...e,prompt:null})),t?.()},confirmText:tc("openAnyway","Open anyway")};break;default:console.error(`Workspace system trying to open unknown prompt type "${e}" in function "showWorkspacePrompts"`),t?.();return}dG.setState(e=>({...e,prompt:r}))}function dY(e,t){return t?.workspaceTitle??e.title}function dZ(){dG.setState(dH)}function dQ(e,t={}){if(!e||"default"===e)return;let n=R(e,{});return t&&n.setState(e=>({...e,...t})),n}let d0="-esm-primary-navigation__action-menu-button-module__container___f7spB",d1="-esm-primary-navigation__action-menu-button-module__elementContainer___ZROo9",d2="-esm-primary-navigation__action-menu-button-module__active___+mcQh";function d6({getIcon:e,formOpenInTheBackground:t,tagContent:n}){return(0,aR.jsxs)(aR.Fragment,{children:[e({size:16}),t?(0,aR.jsx)("span",{className:"-esm-primary-navigation__action-menu-button-module__interruptedTag___7695L",children:"!"}):(0,aR.jsx)("span",{className:"-esm-primary-navigation__action-menu-button-module__countTag___vo9ZX",children:n})]})}let d5=({getIcon:e,label:t,iconDescription:n,handler:r,type:o,tagContent:i})=>{let a=i3(),{workspaces:s,workspaceWindowState:l}=dK(),c=s?.findIndex(({type:e})=>e===o)??-1,u="hidden"!==l&&0===c,d=c>0||0===c&&"hidden"===l;return"tablet"===a||"phone"===a?(0,aR.jsxs)(aU.Button,{className:aM()(d0,{[d2]:u}),iconDescription:n,kind:"ghost",onClick:r,role:"button",tabIndex:0,size:"md",children:[(0,aR.jsx)("span",{className:d1,children:(0,aR.jsx)(d6,{formOpenInTheBackground:d,getIcon:e,tagContent:i})}),(0,aR.jsx)("span",{children:t})]}):(0,aR.jsx)(aU.IconButton,{align:"left","aria-label":n,className:aM()(d0,{[d2]:u}),enterDelayMs:300,kind:"ghost",label:t,onClick:r,size:"md",children:(0,aR.jsx)("div",{className:d1,children:(0,aR.jsx)(d6,{formOpenInTheBackground:d,getIcon:e,tagContent:i})})})};var d3=n(3173),d8=n(185),d4=n(4564);function d7({contextKey:e}){let{prompt:t}=dK();return(0,oV.useEffect)(()=>{RegExp(`/${(0,d4.A)(e)}(/|$)`).test(window.location.pathname)||console.warn(`WorkspaceContainer has provided an invalid context key: "${e}". The context key must be part of the URL path, with no initial or trailing slash.`)},[]),(0,oV.useEffect)(()=>(dF(e),()=>{dF(null)}),[e]),(0,oV.useEffect)(()=>{let t=t=>{let{detail:{cancelNavigation:n,newUrl:r}}=t,o=RegExp(`/${(0,d4.A)(e)}(/|$)`),i=new URL(r),a=o.test(i.pathname),s=dG.getState().openWorkspaces.every(({name:e})=>dP(e));a||(s?dZ():(n?.(),dq(()=>{tm({to:r})})))};return window.addEventListener("single-spa:before-routing-event",t),()=>{window.removeEventListener("single-spa:before-routing-event",t)}},[]),null!=t?(0,aR.jsxs)(aU.ComposedModal,{open:!0,onClose:dD,children:[(0,aR.jsx)(aU.ModalHeader,{title:t.title}),(0,aR.jsx)(aU.ModalBody,{children:(0,aR.jsx)("p",{className:"-esm-primary-navigation__workspace-notification-module__messageBody___+SBeV",children:t.body})}),(0,aR.jsxs)(aU.ModalFooter,{children:[(0,aR.jsx)(aU.Button,{kind:"secondary",onClick:dD,children:t.cancelText??tc("cancel")}),(0,aR.jsx)(aU.Button,{kind:"danger",onClick:t.onConfirm,children:t.confirmText??tc("confirm")})]})]}):null}var d9=n(1820);function me({workspace:e,additionalPropsFromPage:t}){let[n,r]=(0,oV.useState)(),o=function(e){let[t,n]=(0,oV.useState)({}),[r,o]=(0,oV.useState)(e);return(0,oV.useEffect)(()=>{r!==e&&o(e)},[e]),(0,oV.useEffect)(()=>{let e,t=dQ(r);return t&&(n(t.getState()),e=t.subscribe(n)),()=>{t&&e?.()}},[r]),t}(e.currentWorkspaceGroup);(0,oV.useEffect)(()=>{let t=!0;return e.load().then(e=>{t&&r(e)}),()=>{t=!1}},[e]);let i=(0,oV.useMemo)(()=>e&&{closeWorkspace:e.closeWorkspace,closeWorkspaceWithSavedChanges:e.closeWorkspaceWithSavedChanges,promptBeforeClosing:e.promptBeforeClosing,setTitle:e.setTitle,...t,...o,...e.additionalProps},[e,t,o]);return n?(0,aR.jsx)(d9.A,{config:n,mountParcel:oG,...i},e.name):(0,aR.jsx)(aU.InlineLoading,{className:"-esm-primary-navigation__workspace-module__loader___H6dHj",description:`${tc("loading","Loading")} ...`})}function mt({isWithinWorkspace:e,name:t,actionMenuProps:n={}}){let[r,o]=(0,oV.useState)(!1),i=(0,oV.useRef)(window.innerHeight),{featureName:a}=(0,oV.useContext)(oq),s=i3();(0,oV.useEffect)(()=>{let e=()=>{o(!i8(s)&&i.current>window.innerHeight),i.current!=window.innerHeight&&(i.current=window.innerHeight)};return window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[i]);let l=`action-menu-${t&&"default"!=t?t:a}-items-slot`;return(0,aR.jsx)("aside",{className:aM()("-esm-primary-navigation__action-menu-module__sideRail___GJUJ7",{"-esm-primary-navigation__action-menu-module__withinWorkspace___7+TCf":e,"-esm-primary-navigation__action-menu-module__sideRailHidden___bQ0UM":r,"-esm-primary-navigation__action-menu-module__sideRailVisible___v-1cR":!r}),children:(0,aR.jsx)("div",{className:"-esm-primary-navigation__action-menu-module__container___WocuW",children:(0,aR.jsx)(ie,{className:"-esm-primary-navigation__action-menu-module__chartExtensions___Cn3Jb",name:l,state:n})})})}function mn({contextKey:e,overlay:t,showSiderailAndBottomNav:n,additionalWorkspaceProps:r,actionMenuProps:o}){let i=i3(),{workspaces:a,workspaceWindowState:s,workspaceGroup:l}=dK(),c=l?.name,u=a[0],d="hidden"===s||null==u,m=u?.width??(t?"wider":"narrow"),p=(0,oV.useMemo)(()=>n||c&&!d,[c,d,n]);return iP(!d&&!i8(i)),(0,aR.jsxs)(aR.Fragment,{children:[(0,aR.jsxs)("div",{className:n?"-esm-primary-navigation__workspace-module__workspaceContainerWithActionMenu___AHHuu":"-esm-primary-navigation__workspace-module__workspaceContainerWithoutActionMenu___E7yiH",children:[(0,aR.jsx)("aside",{className:aM()(t?"-esm-primary-navigation__workspace-module__workspaceOverlayOuterContainer___7nS96":"-esm-primary-navigation__workspace-module__workspaceWindowSpacer___l+rgk",{"-esm-primary-navigation__workspace-module__hiddenRelative___AJHmQ":d,"-esm-primary-navigation__workspace-module__narrowWorkspace___Vb16L":"narrow"===m,"-esm-primary-navigation__workspace-module__widerWorkspace___Bn7v8":"wider"===m,"-esm-primary-navigation__workspace-module__extraWideWorkspace___vN8kI":"extra-wide"===m}),children:(0,aR.jsx)("div",{className:aM()("-esm-primary-navigation__workspace-module__workspaceFixedContainer___pBPmo",{"-esm-primary-navigation__workspace-module__maximizedWindow___Sew5F":"maximized"===s,"-esm-primary-navigation__workspace-module__hiddenFixed___BxutH":d}),children:a.map((e,t)=>(0,aR.jsx)("div",{className:aM()("-esm-primary-navigation__workspace-module__workspaceInnerContainer___tYaVV",{"-esm-primary-navigation__workspace-module__hiddenExtraWorkspace___lBaWe":0!==t}),children:(0,aR.jsx)(oV.Suspense,{fallback:null,children:(0,aR.jsx)(io.I18nextProvider,{i18n:window.i18next,defaultNS:e.moduleName,children:(0,aR.jsx)(mr,{workspaceInstance:e,additionalWorkspaceProps:r})})})},`workspace-container-${e?e.name:`empty-${t}`}`))})}),(0,aR.jsx)(d7,{contextKey:e})]}),p&&(0,aR.jsx)(mt,{name:c,isWithinWorkspace:!n,actionMenuProps:o})]})}function mr({workspaceInstance:e,additionalWorkspaceProps:t}){let{t:n}=(0,io.useTranslation)(),r=i3(),{workspaceWindowState:o,workspaceGroup:i}=dK(),a=i?.name,s="maximized"===o;(0,oV.useEffect)(()=>{let t=n(e.title);t!==e.title&&e.setTitle(t)},[e.title,n,e.setTitle]);let{featureName:l}=(0,oV.useContext)(oq),c=(0,oV.useCallback)(()=>{dV(s?"normal":"maximized")},[s]),{canHide:u=!1,canMaximize:d=!1,currentWorkspaceGroup:m="",closeWorkspace:p}=(0,oV.useMemo)(()=>e??{},[e]),f=(0,oV.useMemo)(()=>({...t,...e?.additionalProps}),[t,e]);return e&&(0,aR.jsxs)(aR.Fragment,{children:[(0,aR.jsxs)(aU.Header,{"aria-label":tc("workspaceHeader","Workspace Header"),className:"-esm-primary-navigation__workspace-module__header___-3kjt",children:[!i8(r)&&!u&&(0,aR.jsx)(aU.HeaderMenuButton,{"aria-label":tc("close","Close"),renderMenuIcon:(0,aR.jsx)(a6,{}),onClick:()=>p()}),(0,aR.jsx)(aU.HeaderName,{prefix:"",children:e.titleNode??n(e.title)}),(0,aR.jsx)("div",{className:"-esm-primary-navigation__workspace-module__overlayHeaderSpacer___2Zd7J"}),(0,aR.jsxs)(aU.HeaderGlobalBar,{className:"-esm-primary-navigation__workspace-module__headerButtons___ppNsY",children:[(0,aR.jsx)(ie,{name:`workspace-header-group-${e.currentWorkspaceGroup}-slot`,state:f}),(0,aR.jsx)(ie,{name:`workspace-header-type-${e.type}-slot`,state:f}),(0,aR.jsx)(ie,{name:`workspace-header-${l}-slot`,state:f}),i8(r)&&(0,aR.jsxs)(aR.Fragment,{children:[(d||s)&&(0,aR.jsx)(aU.HeaderGlobalAction,{"aria-label":s?tc("minimize","Minimize"):tc("maximize","Maximize"),onClick:c,children:s?(0,aR.jsx)(d3.Xj,{}):(0,aR.jsx)(d3.hz,{})}),u&&!a?(0,aR.jsx)(aU.HeaderGlobalAction,{"aria-label":tc("hide","Hide"),onClick:()=>dV("hidden"),children:(0,aR.jsx)(a5,{})}):(0,aR.jsx)(aU.HeaderGlobalAction,{"aria-label":tc("close","Close"),onClick:()=>p?.(),children:(0,aR.jsx)(sm,{})})]}),"tablet"===r&&u&&(0,aR.jsx)(aU.HeaderGlobalAction,{"aria-label":tc("close","Close"),onClick:()=>p?.(),children:(0,aR.jsx)(d8.d3,{})})]})]}),(0,aR.jsx)("div",{className:aM()("-esm-primary-navigation__workspace-module__workspaceContent___cNdK1",{"-esm-primary-navigation__workspace-module__marginWorkspaceContent___RXftx":!!m}),children:(0,aR.jsx)(me,{workspace:e,additionalPropsFromPage:t},e.name)})]})}var mo=n(4656);async function mi(e,t){let{openedGroup:n}=oP.getState();if(n){if(n.groupName===e&&ml(n.props,t))return!0;else if(!await mc({reason:"CLOSE_WORKSPACE_GROUP",explicit:!1}))return!1}return oP.setState(n=>({...n,openedGroup:{groupName:e,props:t},openedWindows:[]})),!0}async function ma(e){let{openedGroup:t,openedWindows:n}=oP.getState();if(t){if(n.length>0&&!(e||await mc({reason:"CLOSE_WORKSPACE_GROUP",explicit:!0})))return!1;oP.setState(e=>({...e,openedGroup:null,openedWindows:[]}))}return!0}async function ms(e,t=null,n=null,r=null){let o=oP.getState();if(!o.registeredWorkspacesByName[e])throw Error(`Unable to launch workspace ${e}. Workspace is not registered`);let i=oO(e);if(!i)throw Error(`Unable to launch workspace ${e}. Workspace is not registered to a workspace window`);let{openedGroup:a}=o,{name:s}=i,l=oT(s);if(!l)throw Error(`Unable to launch workspace ${e}. Workspace window ${i.name} is not registered to a workspace group`);let c=oR(e);if(a&&(a.groupName!==l.name||!ml(a.props,r)))return!!await mc({reason:"CLOSE_WORKSPACE_GROUP",explicit:!0})&&(oP.setState({...o,openedGroup:{groupName:l.name,props:r},openedWindows:[{windowName:s,openedWorkspaces:[mf(e,t)],props:n,maximized:!1}],isMostRecentlyOpenedWindowHidden:!1}),!0);if(c>=0){let r=o.openedWindows[c],i=o.openedGroup?.props??{},a=o.isMostRecentlyOpenedWindowHidden,{openedWorkspaces:u}=r;if(ml(r.props,n)){let d=u.find(t=>t.workspaceName===e);return d&&ml(d.props,t)?((a||c!==o.openedWindows.length-1)&&oP.setState(mu.restoreWindow(o,s)),!0):!!await mc({reason:"CLOSE_WORKSPACE",explicit:!1,windowName:s,workspaceName:e})&&(oP.setState({...o,openedGroup:{groupName:l.name,props:o?.openedGroup?.props??i},openedWindows:[...o.openedWindows.filter((e,t)=>t!==c),{windowName:s,openedWorkspaces:[mf(e,t)],props:r?.props??n,maximized:!1}],isMostRecentlyOpenedWindowHidden:!1}),!0)}return!!await mc({reason:"CLOSE_WINDOW",explicit:!1,windowName:s})&&(oP.setState({...o,openedGroup:{groupName:l.name,props:i??o?.openedGroup?.props},openedWindows:[...o.openedWindows.filter((e,t)=>t!==c),{windowName:s,openedWorkspaces:[mf(e,t)],props:n,maximized:!1}],isMostRecentlyOpenedWindowHidden:!1}),!0)}return"closable"!=l.persistence?(oP.setState({...o,openedGroup:{groupName:l.name,props:r??o?.openedGroup?.props??null},openedWindows:[...o.openedWindows,{windowName:s,openedWorkspaces:[mf(e,t)],props:n,maximized:!1}],isMostRecentlyOpenedWindowHidden:!1}),!0):!!await mc({reason:"CLOSE_OTHER_WINDOWS",explicit:!1,windowNameToSpare:i.name})&&(oP.setState({...o,openedGroup:{groupName:l.name,props:r??o?.openedGroup?.props??null},openedWindows:[{windowName:s,openedWorkspaces:[mf(e,t)],props:n,maximized:!1}],isMostRecentlyOpenedWindowHidden:!1}),!0)}function ml(e,t){return null==e||null==t||b(e,t)}function mc(e){function t(e,t){let n=[];for(let r=e.openedWorkspaces.length-1;r>=0;r--){let o=e.openedWorkspaces[r];if(o.hasUnsavedChanges&&n.push(o),t&&o.workspaceName===t)break}return n}let{openedWindows:n,workspaceTitleByWorkspaceName:r}=oP.getState(),o=[];switch(e.reason){case"CLOSE_WORKSPACE_GROUP":o=n.flatMap(e=>t(e));break;case"CLOSE_WINDOW":{let r=n.find(t=>t.windowName===e.windowName);if(!r)throw Error(`Window ${e.windowName} not found in opened windows.`);o=t(r);break}case"CLOSE_WORKSPACE":{let r=n.find(t=>t.windowName===e.windowName);if(!r)throw Error(`Window ${e.windowName} not found in opened windows.`);o=t(r,e.workspaceName);break}case"CLOSE_OTHER_WINDOWS":o=n.filter(t=>t.windowName!==e.windowNameToSpare).flatMap(e=>t(e))}return 0===o.length?Promise.resolve(!0):new Promise(e=>{let t=ut("workspace2-close-prompt",{size:"sm",onConfirm:()=>{t(),e(!0)},onCancel:()=>{t(),e(!1)},affectedWorkspaceTitles:o.map(e=>r[e.workspaceName])})})}let mu={setWindowMaximized(e,t,n){let r=e.openedWindows.findIndex(e=>e.windowName===t),o=[...e.openedWindows],i={...o[r],maximized:n};return o[r]=i,{...e,openedWindows:o}},hideWindow:e=>({...e,isMostRecentlyOpenedWindowHidden:!0}),restoreWindow(e,t){let n=e.openedWindows.findIndex(e=>e.windowName===t),r=e.openedWindows[n],o=[...e.openedWindows.filter((e,t)=>t!==n),r];return{...e,openedWindows:o,isMostRecentlyOpenedWindowHidden:!1}},closeWorkspace(e,t){let n=oR(t);if(n<0)return e;let r={...e.openedWindows[n]},o=r.openedWorkspaces.findIndex(e=>e.workspaceName===t),i=[...e.openedWindows];r.openedWorkspaces=r.openedWorkspaces.slice(0,o);let a=e.isMostRecentlyOpenedWindowHidden;if(0===r.openedWorkspaces.length){let t=n===e.openedWindows.length-1;i.splice(n,1),t&&i.length>0&&(a=!1)}else i[n]=r;return{...e,openedWindows:i,isMostRecentlyOpenedWindowHidden:a}},openChildWorkspace(e,t,n,r){let o=e.registeredWorkspacesByName[n];if(!o)throw Error(`No workspace named "${n}" registered`);let i=e.registeredWorkspacesByName[t];if(!i)throw Error(`No workspace named "${t}" registered`);if(i.window!==o.window)throw Error(`Child workspace ${n} does not belong to the same workspace window as parent workspace ${t}`);let a=e.openedWindows.findIndex(e=>e.windowName===o.window);if(-1==a)throw Error(`Cannot open child workspace ${n} as window ${o.window} is not opened`);let{openedWorkspaces:s}=e.openedWindows[a],l=s.findIndex(e=>e.workspaceName===t);if(-1===l)throw Error(`Cannot open child workspace ${n} from parent workspace ${t} as the parent is not opened within the workspace window`);let c=s.slice(0,l+1);return{openedWindows:e.openedWindows.map((e,t)=>t==a?{...e,openedWorkspaces:[...c,mf(n,r)]}:e)}},setHasUnsavedChanges(e,t,n){let r=oR(t);if(r<0)return e;let o={...e.openedWindows[r]},i=o.openedWorkspaces.findIndex(e=>e.workspaceName===t);if(i<0)return e;o.openedWorkspaces[i]={...o.openedWorkspaces[i],hasUnsavedChanges:n};let a=[...e.openedWindows];return a[r]=o,{...e,openedWindows:a}},setWorkspaceTitle(e,t,n){let r={...e.workspaceTitleByWorkspaceName};return null===n?delete r[t]:r[t]=n,{...e,workspaceTitleByWorkspaceName:r}}};function md(){return o1(oP,mu)}let mm=()=>(0,oV.useContext)(ir.i),mp=()=>Object.keys(oP.getState().registeredWorkspacesByName);function mf(e,t){return{workspaceName:e,props:t??{},hasUnsavedChanges:!1,uuid:(0,mo.A)()}}let mg={workspaceOuterContainer:"-esm-primary-navigation__workspace2-module__workspaceOuterContainer___bPVpy",narrowWorkspace:"-esm-primary-navigation__workspace2-module__narrowWorkspace___kSYS7",widerWorkspace:"-esm-primary-navigation__workspace2-module__widerWorkspace___nW2HB",extraWideWorkspace:"-esm-primary-navigation__workspace2-module__extraWideWorkspace___em5yA",workspaceMiddleContainer:"-esm-primary-navigation__workspace2-module__workspaceMiddleContainer___Bx1i6",maximized:"-esm-primary-navigation__workspace2-module__maximized___Kfygr",hidden:"-esm-primary-navigation__workspace2-module__hidden___RPimX",workspaceInnerContainer:"-esm-primary-navigation__workspace2-module__workspaceInnerContainer___5zxpt",workspaceSpacer:"-esm-primary-navigation__workspace2-module__workspaceSpacer___E+982",loader:"-esm-primary-navigation__workspace2-module__loader___vmBQn",hiddenExtraWorkspace:"-esm-primary-navigation__workspace2-module__hiddenExtraWorkspace___qkbMG",header:"-esm-primary-navigation__workspace2-module__header___IZ-2+",headerButtons:"-esm-primary-navigation__workspace2-module__headerButtons___81a2N",workspaceContent:"-esm-primary-navigation__workspace2-module__workspaceContent___eetPy",overlayHeaderSpacer:"-esm-primary-navigation__workspace2-module__overlayHeaderSpacer___ruc6r",isActionMenuOpened:"-esm-primary-navigation__workspace2-module__isActionMenuOpened___XgCkc",showActionMenu:"-esm-primary-navigation__workspace2-module__showActionMenu___sHRt1",marginWorkspaceContent:"-esm-primary-navigation__workspace2-module__marginWorkspaceContent___TN+S+",workspaceContainerWithActionMenu:"-esm-primary-navigation__workspace2-module__workspaceContainerWithActionMenu___xLg8e",workspaceFixedContainer:"-esm-primary-navigation__workspace2-module__workspaceFixedContainer___W9cgZ",workspaceContainerWithoutActionMenu:"-esm-primary-navigation__workspace2-module__workspaceContainerWithoutActionMenu___fRrxd"},mh=({title:e,children:t,hasUnsavedChanges:n=!1})=>{let r=i3(),{setWindowMaximized:o,hideWindow:i,setHasUnsavedChanges:a,openedWindows:s,openedGroup:l,registeredGroupsByName:c,registeredWindowsByName:u,registeredWorkspacesByName:d,workspaceTitleByWorkspaceName:m,setWorkspaceTitle:p,isMostRecentlyOpenedWindowHidden:f}=md(),{workspaceName:g,isRootWorkspace:h,closeWorkspace:_,showActionMenu:w}=mm(),y=oR(g),v=s[y],b=v?.openedWorkspaces.find(e=>e.workspaceName===g);if((0,oV.useEffect)(()=>{b?.hasUnsavedChanges!=n&&a(g,n??!1)},[b?.hasUnsavedChanges,n,g,a]),(0,oV.useEffect)(()=>{m[g]!==e&&p(g,e)},[m,g,e,p]),y<0||null==l||null==b)return null;let x=c[l.groupName];if(!x)throw Error(`Cannot find registered workspace group ${l.groupName}`);let k=d[g].window,S=u[k];if(!S)throw Error(`Cannot find registered workspace window ${k}`);let{icon:j,canMaximize:N}=S,C="closable"===x.persistence,E=!!j&&!C,{maximized:I}=v,A=S?.width??"narrow",P=Object.values(u).some(e=>e.group===l.groupName&&void 0!==e.icon),O=y<s.length-1||f;return(0,aR.jsxs)("div",{className:aM()(mg.workspaceOuterContainer,{[mg.narrowWorkspace]:"narrow"===A,[mg.widerWorkspace]:"wider"===A,[mg.extraWideWorkspace]:"extra-wide"===A,[mg.isActionMenuOpened]:P}),children:[(0,aR.jsx)("div",{className:aM()(mg.workspaceSpacer,{[mg.hidden]:O})}),(0,aR.jsx)("div",{className:aM()(mg.workspaceMiddleContainer,{[mg.maximized]:I,[mg.hidden]:O,[mg.isRootWorkspace]:h,[mg.showActionMenu]:w}),children:(0,aR.jsxs)("div",{className:aM()(mg.workspaceInnerContainer,{[mg.maximized]:I,[mg.hidden]:O,[mg.isRootWorkspace]:h}),children:[(0,aR.jsxs)(aU.Header,{"aria-label":tc("workspaceHeader"),className:mg.header,children:[(0,aR.jsx)(aU.HeaderName,{prefix:"",children:e}),(0,aR.jsx)("div",{className:mg.overlayHeaderSpacer}),(0,aR.jsx)(aU.HeaderGlobalBar,{className:mg.headerButtons,children:i8(r)?(0,aR.jsxs)(aR.Fragment,{children:[(N||I)&&(0,aR.jsx)(aU.HeaderGlobalAction,{"aria-label":I?tc("minimize"):tc("maximize"),onClick:()=>o(k,!I),children:I?(0,aR.jsx)(d3.Xj,{}):(0,aR.jsx)(d3.hz,{})}),E&&(0,aR.jsx)(aU.HeaderGlobalAction,{"aria-label":tc("hide"),onClick:()=>i(),children:(0,aR.jsx)(a5,{})}),!C&&(0,aR.jsx)(aU.HeaderGlobalAction,{"aria-label":tc("close"),onClick:()=>_({closeWindow:!0}),children:(0,aR.jsx)(sm,{})})]}):(0,aR.jsxs)(aR.Fragment,{children:[E&&(0,aR.jsx)(aU.HeaderGlobalAction,{"aria-label":tc("hide"),onClick:()=>i(),children:(0,aR.jsx)(d8.d3,{})}),(0,aR.jsx)(aU.HeaderGlobalAction,{"aria-label":tc("close"),onClick:()=>{C?ma():_({closeWindow:!0})},children:(0,aR.jsx)(sm,{})})]})})]}),(0,aR.jsx)("div",{className:aM()(mg.workspaceContent),children:t})]})})]})},m_="-esm-primary-navigation__action-menu-button2-module__container___jc6--",mw="-esm-primary-navigation__action-menu-button2-module__elementContainer___whLL8",my="-esm-primary-navigation__action-menu-button2-module__active___fbyFm",mv="-esm-primary-navigation__action-menu-button2-module__focused___+aVpz";function mb({getIcon:e,hasUnsavedChanges:t,tagContent:n}){return(0,aR.jsxs)(aR.Fragment,{children:[e({size:16}),t?(0,aR.jsx)("span",{className:"-esm-primary-navigation__action-menu-button2-module__interruptedTag___sRkvS",children:"!"}):(0,aR.jsx)("span",{className:"-esm-primary-navigation__action-menu-button2-module__countTag___XMH0D",children:n})]})}let mx=({icon:e,label:t,tagContent:n,workspaceToLaunch:r,onBeforeWorkspaceLaunch:o})=>{let i=i3(),{openedWindows:a,restoreWindow:s,hideWindow:l,isMostRecentlyOpenedWindowHidden:c}=md(),{extension:u}=(0,oV.useContext)(oq),d=a.findIndex(e=>e.windowName===u?.extensionId),m=a[d],p=null!=m,f=p&&(d<a.length-1||c),g=p&&!f,h=m?.openedWorkspaces.some(e=>e.hasUnsavedChanges)??!1,_=async()=>{if(p)f?s(m.windowName):l();else if(await (o?.()??!0)){let{workspaceName:e,workspaceProps:t,windowProps:n}=r;ms(e,t,n)}};return"tablet"===i||"phone"===i?(0,aR.jsxs)(aU.Button,{className:aM()(m_,{[my]:p&&!g,[mv]:g}),iconDescription:t,kind:"ghost",onClick:_,role:"button",tabIndex:0,size:"md",children:[(0,aR.jsx)("span",{className:mw,children:(0,aR.jsx)(mb,{hasUnsavedChanges:h,getIcon:e,tagContent:n})}),(0,aR.jsx)("span",{children:t})]}):(0,aR.jsx)(aU.IconButton,{align:"left","aria-label":t,className:aM()(m_,{[my]:p&&!g,[mv]:g}),enterDelayMs:300,kind:"ghost",label:t,onClick:_,size:"md",children:(0,aR.jsx)("div",{className:mw,children:(0,aR.jsx)(mb,{hasUnsavedChanges:h,getIcon:e,tagContent:n})})})};function mk({showContactDetails:e,toggleContactDetails:t,className:n}){return(0,aR.jsx)(aU.Button,{className:n,iconDescription:"Toggle contact details",kind:"ghost",onClick:t,renderIcon:e?sd:sl,children:e?tc("showLess","Show less"):tc("showMore","Show more")})}let mS={contactDetails:"-esm-primary-navigation__patient-banner-contact-details-module__contactDetails___R7vfY",deceased:"-esm-primary-navigation__patient-banner-contact-details-module__deceased___nTt+l",heading:"-esm-primary-navigation__patient-banner-contact-details-module__heading___x7UoT",row:"-esm-primary-navigation__patient-banner-contact-details-module__row___qFgIi",col:"-esm-primary-navigation__patient-banner-contact-details-module__col___JXUlg",relationship:"-esm-primary-navigation__patient-banner-contact-details-module__relationship___T3LO-"},mj=({patientUuid:e})=>{let{cohorts:t=[],isLoading:n}=function(e){let t=e?`${tx}/cohortm/cohortmember?patient=${e}&v=custom:(uuid,patient:ref,cohort:(uuid,name,startDate,endDate))`:null,{data:n,isLoading:r}=(0,ii.u)(t,tN),o=n?.data?.results.map(e=>({uuid:e.cohort.uuid,name:e.cohort.name,startDate:e.cohort.startDate,endDate:e.cohort.endDate}));return(0,oV.useMemo)(()=>({cohorts:o,isLoading:r}),[r,o])}(e);return(0,aR.jsxs)(aR.Fragment,{children:[(0,aR.jsxs)("p",{className:mS.heading,children:[tc("patientLists","Patient Lists")," (",t?.length??0,")"]}),n?(0,aR.jsx)(aU.InlineLoading,{description:`${tc("loading","Loading")} ...`,role:"progressbar"}):(0,aR.jsxs)("ul",{children:[(()=>{if(t?.length>0){let e=t.sort((e,t)=>l0(e?.startDate).getTime()-l0(t?.startDate).getTime()).slice(0,3);return e?.map(e=>(0,aR.jsx)("li",{children:(0,aR.jsx)(oK,{to:`${window.spaBase}/home/patient-lists/${e.uuid}`,children:e.name},e.uuid)},e.uuid))}return(0,aR.jsx)("li",{children:"--"})})(),t.length>3&&(0,aR.jsx)("li",{className:mS.link,children:(0,aR.jsx)(oK,{to:`${window.spaBase}/home/patient-lists`,children:tc("seeMoreLists","See {{count}} more lists",{count:t?.length-3})})})]})]})},mN=({patientId:e})=>{let{patient:t,isLoading:n}=as(e),r=t?.address?.find(e=>"home"===e.use),o=e=>e.split("#")[1];return n?(0,aR.jsx)(aU.InlineLoading,{description:`${tc("loading","Loading")} ...`,role:"progressbar"}):(0,aR.jsxs)(aR.Fragment,{children:[(0,aR.jsx)("p",{className:mS.heading,children:tc("address","Address")}),(0,aR.jsx)("ul",{children:r?Object.entries(r).filter(([e])=>"id"!==e&&"use"!==e).map(([e,t])=>"extension"===e?r.extension?.[0]?.extension?.map((t,n)=>(0,aR.jsxs)("li",{children:[tc(o(t.url),o(t.url)),": ",t.valueString]},`address-${e}-${n}`)):(0,aR.jsxs)("li",{children:[tc(e,e),": ",t]},`address-${e}`)):(0,aR.jsx)("li",{children:"--"})})]})},mC=({patientUuid:e})=>{let{isLoading:t,contactAttributes:n}=(e=>{let{contactAttributeTypes:t=[]}=iR({externalModuleName:"@openmrs/esm-patient-banner-app"}),{attributes:n,error:r,isLoading:o}=(e=>{let{data:t,error:n,isLoading:r}=(0,iW.A)(`${tx}/patient/${e}?v=custom:(uuid,display,identifiers:(identifier,uuid,preferred,location:(uuid,name),identifierType:(uuid,name,format,formatDescription,validator)),person:(uuid,display,gender,birthdate,dead,age,deathDate,birthdateEstimated,causeOfDeath,preferredName:(uuid,preferred,givenName,middleName,familyName),attributes,preferredAddress:(uuid,preferred,address1,address2,cityVillage,longitude,stateProvince,latitude,country,postalCode,countyDistrict,address3,address4,address5,address6,address7)))`,tN);return{isLoading:r,attributes:t?.data.person.attributes??[],error:n}})(e);return{contactAttributes:(0,oV.useMemo)(()=>n.filter(({attributeType:e})=>t?.some(t=>e.uuid===t)),[n,t]),isLoading:o,error:r}})(e),r=(0,oV.useMemo)(()=>n?[...n?.map(e=>[e.attributeType.display?tc(e.attributeType.display,e.attributeType.display):"",e.value])]:[],[n]);return(0,aR.jsxs)(aR.Fragment,{children:[(0,aR.jsx)("p",{className:mS.heading,children:tc("contactDetails","Contact Details")}),t?(0,aR.jsx)(aU.InlineLoading,{description:`${tc("loading","Loading")} ...`,role:"progressbar"}):(0,aR.jsx)("ul",{children:r.length?r.map(([e,t],n)=>(0,aR.jsxs)("li",{children:[e,": ",t]},`${e}-${t}-${n}`)):(0,aR.jsx)("li",{children:"--"})})]})},mE=({patientId:e})=>{let{data:t,isLoading:n}=function(e){let t=`${tx}/relationship?v=custom:(display,uuid,personA:(age,display,birthdate,uuid),personB:(age,display,birthdate,uuid),relationshipType:(uuid,display,description,aIsToB,bIsToA))&person=${e}`,{data:n,error:r,isLoading:o,isValidating:i}=(0,ii.u)(e?t:null,tN),a=n?.data?.results?.length?function(e,t){let n=[];for(let r of t)e===r.personA.uuid?n.push({uuid:`${r.uuid}`,display:r.personB.display,relativeAge:r.personB.age,relativeUuid:r.personB.uuid,relationshipType:r.relationshipType.bIsToA}):n.push({uuid:`${r.uuid}`,display:r.personA.display,relativeAge:r.personA.age,relativeUuid:r.personA.uuid,relationshipType:r.relationshipType.aIsToB});return n}(e,n.data.results):null;return{data:n?a:null,error:r,isLoading:o,isValidating:i}}(e);return(0,aR.jsxs)(aR.Fragment,{children:[(0,aR.jsx)("p",{className:mS.heading,children:tc("relationships","Relationships")}),n?(0,aR.jsx)(aU.InlineLoading,{description:`${tc("loading","Loading")} ...`,role:"progressbar"}):(0,aR.jsx)("ul",{children:t&&t.length>0?(0,aR.jsx)(aR.Fragment,{children:t.map(e=>(0,aR.jsxs)("li",{className:mS.relationship,children:[(0,aR.jsx)("div",{children:(0,aR.jsx)(oK,{to:`${window.spaBase}/patient/${e.relativeUuid}/chart`,children:e.display})}),(0,aR.jsx)("div",{children:e.relationshipType}),(0,aR.jsx)("div",{children:`${e.relativeAge?e.relativeAge:"--"} ${e.relativeAge?1===e.relativeAge?tc("yearAbbreviation","yr"):tc("yearsAbbreviation","yrs"):""}`})]},e.uuid))}):(0,aR.jsx)("li",{children:"--"})})]})};function mI({patientId:e,deceased:t}){return(0,aR.jsxs)("div",{className:aM()(mS.contactDetails,{[mS.deceased]:t}),children:[(0,aR.jsxs)("div",{className:mS.row,children:[(0,aR.jsx)("div",{className:mS.col,children:(0,aR.jsx)(mN,{patientId:e})}),(0,aR.jsx)("div",{className:mS.col,children:(0,aR.jsx)(mC,{patientUuid:e})})]}),(0,aR.jsxs)("div",{className:mS.row,children:[(0,aR.jsx)("div",{className:mS.col,children:(0,aR.jsx)(mE,{patientId:e})}),(0,aR.jsx)("div",{className:mS.col,children:(0,aR.jsx)(mj,{patientUuid:e})})]})]})}function mA(e){let t=document.querySelector("template#loading-spinner");if(t){let n=t.content.cloneNode(!0),r=Array.prototype.map.call(n.childNodes,e=>e);return e.appendChild(n),()=>r.forEach(e=>e.remove())}return()=>{}}let mP="-esm-primary-navigation__action-menu2-module__container___6Gke0";function mO({workspaceGroup:e,groupProps:t}){let n=i3(),{persistence:r}=e;return(0,aR.jsx)("aside",{className:"-esm-primary-navigation__action-menu2-module__sideRail___T2lMV",children:(0,aR.jsxs)("div",{className:mP,children:["closable"==r&&i8(n)&&(0,aR.jsx)(aU.IconButton,{align:"left",onClick:()=>ma(),label:tc("close"),kind:"ghost",children:(0,aR.jsx)(sm,{})}),(0,aR.jsx)(oq.Provider,{value:{moduleName:e.moduleName,featureName:e.name},children:(0,aR.jsx)(ie,{className:mP,name:e.name,state:{groupProps:t}})})]})})}function mT(e){let t=new URL(e,window.location.origin).pathname,n=new URL(window.getOpenmrsSpaBase?.()??"/",window.location.origin).pathname,r=n.endsWith("/")?n.slice(0,-1):n,o=null;return r?r===t?o="/":t.startsWith(`${r}/`)&&(o=t.slice(r.length)):o=t,{full:t,spaRelative:o}}let mR=({lifeCycle:e,openedWorkspace:t,openedWindow:n,isRootWorkspace:r,isLeafWorkspace:o,showActionMenu:i})=>{let{openedGroup:a,closeWorkspace:s,openChildWorkspace:l}=md(),c=(0,oV.useMemo)(()=>t&&{closeWorkspace:async(e={})=>{let{closeWindow:r=!1,discardUnsavedChanges:o=!1}=e;return r?!!(o||await mc({reason:"CLOSE_WINDOW",explicit:!0,windowName:n.windowName}))&&(s(n.openedWorkspaces[0].workspaceName),!0):!!(o||await mc({reason:"CLOSE_WORKSPACE",explicit:!0,windowName:n.windowName,workspaceName:t.workspaceName}))&&(s(t.workspaceName),!0)},launchChildWorkspace:async(e,r)=>{let o=t.workspaceName,{openedWorkspaces:i}=n,a=i.findIndex(e=>e.workspaceName===o);-1===a||a!==i.length-1&&i.slice(a+1).some(e=>e.hasUnsavedChanges)&&!await mc({reason:"CLOSE_WORKSPACE",explicit:!0,windowName:n.windowName,workspaceName:i[a+1].workspaceName})||l(o,e,r||{})},workspaceName:t.workspaceName,workspaceProps:t.props,windowProps:n.props,groupProps:a&&a.props?a.props:null,workspaceMeta:oP.getState().registeredWorkspacesByName[t.workspaceName]?.meta??{},isRootWorkspace:r,isLeafWorkspace:o,windowName:n.windowName,showActionMenu:i},[t,s,a,n]);if(!e){let{registeredWorkspacesByName:e}=oP.getState(),n=e[t.workspaceName],o=n&&n.window?n.window:void 0,{registeredWindowsByName:s}=oP.getState(),l=o?s[o]:void 0,c=l&&l.width?l.width:"narrow",u=Object.values(s).some(e=>e.group===a?.groupName&&void 0!==e.icon);return(0,aR.jsxs)("div",{className:aM()(mg.workspaceOuterContainer,{[mg.narrowWorkspace]:"narrow"===c,[mg.widerWorkspace]:"wider"===c,[mg.extraWideWorkspace]:"extra-wide"===c,[mg.isActionMenuOpened]:u}),children:[(0,aR.jsx)("div",{className:mg.workspaceSpacer}),(0,aR.jsx)("div",{className:aM()(mg.workspaceMiddleContainer,{[mg.isRootWorkspace]:r,[mg.showActionMenu]:i}),children:(0,aR.jsx)("div",{className:aM()(mg.workspaceInnerContainer,{[mg.isRootWorkspace]:r}),children:(0,aR.jsx)(aU.InlineLoading,{className:mg.loader,description:`${tc("loading")} ...`})})})]})}return(0,aR.jsx)(d9.A,{config:e,mountParcel:oG,...c},t.workspaceName)},m$=({openedWindow:e,showActionMenu:t})=>{let{openedWorkspaces:n}=e,[r,o]=(0,oV.useState)({}),{registeredWorkspacesByName:i}=oP.getState();return(0,oV.useEffect)(()=>{let e=!1;return Promise.all(n.map(async e=>{let{moduleName:t,component:n}=i[e.workspaceName];return[e.uuid,await ak(t,n)]})).then(t=>{e||o(Object.fromEntries(t))}),()=>{e=!0}},[n]),(0,aR.jsx)(aR.Fragment,{children:n.map((o,i)=>(0,aR.jsx)(mR,{openedWorkspace:o,openedWindow:e,lifeCycle:r[o.uuid],isRootWorkspace:0===i,isLeafWorkspace:i===n.length-1,showActionMenu:t},o.uuid))})};function mM(e){e&&(0,it.createRoot)(e).render((0,aR.jsx)(mW,{}))}function mW(){let{openedGroup:e,openedWindows:t,registeredGroupsByName:n,registeredWindowsByName:r}=md();if((0,oV.useEffect)(()=>nF("before-page-changed",t=>{let{newPage:r,cancelNavigation:o,oldUrl:i,newUrl:a}=t;if(!e)return;if(r)return void o(ma().then(e=>!e));let s=n[e.groupName],l=s?.scopePattern;l&&function(e,t,n){try{let r=new RegExp(e),o=mT(t),i=mT(n);if(null===o.spaRelative||null===i.spaRelative)return!0;let a=r.exec(o.spaRelative),s=r.exec(i.spaRelative);if(a&&s||(a=r.exec(o.full),s=r.exec(i.full)),!a||!s)return!0;if(a.length>1)return!a.slice(1).every((e,t)=>e===s[t+1]);return!1}catch{return!0}}(l,i,a)&&o(ma().then(e=>!e))}),[e,n]),!e)return null;let o=n[e.groupName],i=t.some(e=>e.maximized),{name:a}=o,s=Object.values(r).filter(e=>e.group===a&&void 0!==e.icon).sort((e,t)=>(e.order??Number.MAX_VALUE)-(t.order??Number.MAX_VALUE)).length>0;return(0,aR.jsxs)("div",{className:aM()("-esm-primary-navigation__workspace-windows-and-menu-module__workspaceWindowsAndMenuContainer___2u2mc",{"-esm-primary-navigation__workspace-windows-and-menu-module__overlay___7RHYZ":o.overlay,"-esm-primary-navigation__workspace-windows-and-menu-module__hasMaximizedWindow___gvJRd":i}),children:[(0,aR.jsx)("div",{className:"-esm-primary-navigation__workspace-windows-and-menu-module__workspaceWindowsContainer___40ITO",children:t.map(e=>(0,aR.jsx)(m$,{openedWindow:e,showActionMenu:s},e.windowName))}),s&&(0,aR.jsx)(mO,{workspaceGroup:o,groupProps:e.props})]})}function mL(e,t,n){if(null==e)return n;let r=lU(e);if(!r)return console.warn(`matchLocale: invalid requested locale tag: ${JSON.stringify(e)}`),n;let o=[];for(let e of t){let t=lU(e);if(!t){console.warn(`matchLocale: skipping invalid available locale tag: ${JSON.stringify(e)}`);continue}o.push({canonical:t,original:e})}let i=r;for(;i;){let e=o.find(e=>e.canonical===i);if(e)return e.original;let t=i+"-",n=o.find(e=>e.canonical.startsWith(t));if(n)return n.original;if("ht"===i){i="fr-HT";continue}let r=i.lastIndexOf("-");if(-1===r)break;let a=(i=i.slice(0,r)).lastIndexOf("-");-1!==a&&i.length-a==2&&(i=i.slice(0,a))}return n}function mD(e=window.localStorage){try{return e.getItem("test"),!0}catch{return!1}}function mB(e){return!!e&&e.constructor===Object}var mU=n(3376);function mF(e){let[t,n,r]=e.split(".");return`${t}.${n}.${r}`}function mH(e,t){return mU(function(e){let t=e.indexOf("-");if(t>=0){let n=mF(e.slice(0,t)),r=e.slice(t+1);return`${n}-${r}`}return mF(e)}(t),e,{includePrerelease:!0})}async function mG(e,t={}){let n,{shouldRetry:r,getDelay:o,onError:i}=t;r=r??(e=>e<=5),o=o??(e=>(function(e,t=!1){return 1e3*Math.pow(2,t?e+1:e)})(e));let a=0;do try{return await mz(o(a)),await e()}catch(e){i?.(e,a),n=e}while(r(a++));throw n}async function mz(e){if(!(e<=0))return new Promise(t=>setTimeout(t,e))}function mV(e,t,n,r){}function mJ(e){}function mq(e){return Promise.resolve([])}function mK(e){return Promise.resolve([])}function mX(e){return Promise.resolve({success:!1,result:void 0,error:"No service worker has been registered. Offline-related features have been removed from the framework."})}function mY(e){return()=>{}}function mZ(){return!0}}}]);