@openmrs/esm-patient-tests-app 12.2.0 → 12.2.1

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.
@@ -3,4 +3,4 @@ var _openmrs_esm_patient_tests_app;(()=>{"use strict";var __webpack_modules__={6
3
3
  ${n.safeToString(this.remoteInfo)}`),this.remoteEntryExports=e),this.remoteEntryExports}async get(e,t,r,n){let i,{loadFactory:a=!0}=r||{loadFactory:!0},c=await this.getEntry();if(!this.inited){let t=this.host.shareScopeMap,r=Array.isArray(this.remoteInfo.shareScope)?this.remoteInfo.shareScope:[this.remoteInfo.shareScope];r.length||r.push("default"),r.forEach(e=>{t[e]||(t[e]={})});let i=t[r[0]],a=[],s={version:this.remoteInfo.version||"",shareScopeKeys:Array.isArray(this.remoteInfo.shareScope)?r:this.remoteInfo.shareScope||"default"};Object.defineProperty(s,"shareScopeMap",{value:t,enumerable:!1});let u=await this.host.hooks.lifecycle.beforeInitContainer.emit({shareScope:i,remoteEntryInitOptions:s,initScope:a,remoteInfo:this.remoteInfo,origin:this.host});void 0===c?.init&&l(o.getShortErrorMsg(o.RUNTIME_002,o.runtimeDescMap,{hostName:this.host.name,remoteName:this.remoteInfo.name,remoteEntryUrl:this.remoteInfo.entry,remoteEntryKey:this.remoteInfo.entryGlobalName})),await c.init(u.shareScope,u.initScope,u.remoteEntryInitOptions),await this.host.hooks.lifecycle.initContainer.emit({...u,id:e,remoteSnapshot:n,remoteEntryExports:c})}this.lib=c,this.inited=!0,(i=await this.host.loaderHook.lifecycle.getModuleFactory.emit({remoteEntryExports:c,expose:t,moduleInfo:this.remoteInfo}))||(i=await c.get(t)),s(i,`${f(this.remoteInfo)} remote don't export ${t}.`);let u=S(this.remoteInfo.name,t),h=this.wraperFactory(i,u);return a?await h():h}wraperFactory(e,t){function r(e,t){e&&"object"==typeof e&&Object.isExtensible(e)&&!Object.getOwnPropertyDescriptor(e,Symbol.for("mf_module_id"))&&Object.defineProperty(e,Symbol.for("mf_module_id"),{value:t,enumerable:!1})}return e instanceof Promise?async()=>{let n=await e();return r(n,t),n}:()=>{let n=e();return r(n,t),n}}}class tu{constructor(e){this.type="",this.listeners=new Set,e&&(this.type=e)}on(e){"function"==typeof e&&this.listeners.add(e)}once(e){let t=this;this.on(function r(...n){return t.remove(r),e.apply(null,n)})}emit(...e){let t;return this.listeners.size>0&&this.listeners.forEach(r=>{t=r(...e)}),t}remove(e){this.listeners.delete(e)}removeAll(){this.listeners.clear()}}class tf extends tu{emit(...e){let t,r=Array.from(this.listeners);if(r.length>0){let n=0,o=t=>!1!==t&&(n<r.length?Promise.resolve(r[n++].apply(null,e)).then(o):t);t=o()}return Promise.resolve(t)}}function th(e,t){if(!d(t))return!1;if(e!==t){for(let r in e)if(!(r in t))return!1}return!0}class tp extends tu{constructor(e){super(),this.onerror=l,this.type=e}emit(e){for(let t of(d(e)||l(`The data for the "${this.type}" hook should be an object.`),this.listeners))try{let r=t(e);if(th(e,r))e=r;else{this.onerror(`A plugin returned an unacceptable value for the "${this.type}" type.`);break}}catch(e){c(e),this.onerror(e)}return e}}class tm extends tu{constructor(e){super(),this.onerror=l,this.type=e}emit(e){d(e)||l(`The response data for the "${this.type}" hook must be an object.`);let t=Array.from(this.listeners);if(t.length>0){let r=0,n=t=>(c(t),this.onerror(t),e),o=i=>{if(th(e,i)){if(e=i,r<t.length)try{return Promise.resolve(t[r++](e)).then(o,n)}catch(e){return n(e)}}else this.onerror(`A plugin returned an incorrect value for the "${this.type}" type.`);return e};return Promise.resolve(o(e))}return Promise.resolve(e)}}class td{constructor(e){this.registerPlugins={},this.lifecycle=e,this.lifecycleKeys=Object.keys(e)}applyPlugin(e,t){s(y(e),"Plugin configuration is invalid.");let r=e.name;s(r,"A name must be provided by the plugin."),this.registerPlugins[r]||(this.registerPlugins[r]=e,e.apply?.(t),Object.keys(this.lifecycle).forEach(t=>{let r=e[t];r&&this.lifecycle[t].on(r)}))}removePlugin(e){s(e,"A name is required.");let t=this.registerPlugins[e];s(t,`The plugin "${e}" is not registered.`),Object.keys(t).forEach(e=>{"name"!==e&&this.lifecycle[e].remove(t[e])})}}function tg(e,t){let r=b(t);r.url||l(`The attribute remoteEntry of ${e.name} must not be undefined.`);let o=n.getResourceUrl(t,r.url);n.isBrowserEnv()||o.startsWith("http")||(o=`https:${o}`),e.type=r.type,e.entryGlobalName=r.globalName,e.entry=o,e.version=t.version,e.buildVersion=t.buildVersion}function ty(){return{name:"snapshot-plugin",async afterResolve(e){let{remote:t,pkgNameOrAlias:r,expose:n,origin:o,remoteInfo:i,id:a}=e;if(!h(t)||!p(t)){let{remoteSnapshot:s,globalSnapshot:l}=await o.snapshotHandler.loadRemoteSnapshotInfo({moduleInfo:t,id:a});tg(i,s);let c={remote:t,preloadConfig:{nameOrAlias:r,exposes:[n],resourceCategory:"sync",share:!1,depsRemote:!1}},u=await o.remoteHandler.hooks.lifecycle.generatePreloadAssets.emit({origin:o,preloadOptions:c,remoteInfo:i,remote:t,remoteSnapshot:s,globalSnapshot:l});return u&&ts(i,o,u,!1),{...e,remoteSnapshot:s}}return e}}}function t_(e){let t=e.split(":");return 1===t.length?{name:t[0],version:void 0}:2===t.length?{name:t[0],version:t[1]}:{name:t[1],version:t[2]}}function tE(e,t,r,o,i={},a){let{value:s}=D(e,f(t)),l=a||s;if(l&&!n.isManifestProvider(l)&&(r(l,t,o),l.remotesInfo))for(let t of Object.keys(l.remotesInfo)){if(i[t])continue;i[t]=!0;let n=t_(t),o=l.remotesInfo[t];tE(e,{name:n.name,version:o.matchedVersion},r,!1,i,void 0)}}let tb=(e,t)=>document.querySelector(`${e}[${"link"===e?"href":"src"}="${t}"]`);function tS(e,t,r,o,i){let a=[],s=[],l=[],c=new Set,u=new Set,{options:f}=e,{preloadConfig:h}=t,{depsRemote:p}=h;if(tE(o,r,(t,r,o)=>{let i;if(o)i=h;else if(Array.isArray(p)){let e=p.find(e=>e.nameOrAlias===r.name||e.nameOrAlias===r.alias);if(!e)return;i=to(e)}else{if(!0!==p)return;i=h}let c=n.getResourceUrl(t,b(t).url);c&&l.push({name:r.name,moduleInfo:{name:r.name,entry:c,type:"remoteEntryType"in t?t.remoteEntryType:"global",entryGlobalName:"globalName"in t?t.globalName:r.name,shareScope:"",version:"version"in t?t.version:void 0},url:c});let u="modules"in t?t.modules:[],f=ta(i.exposes);function m(e){let r=e.map(e=>n.getResourceUrl(t,e));return i.filter?r.filter(i.filter):r}if(f.length&&"modules"in t&&(u=t?.modules?.reduce((e,t)=>(f?.indexOf(t.moduleName)!==-1&&e.push(t),e),[])),u){let n=u.length;for(let o=0;o<n;o++){let n=u[o],l=`${r.name}/${n.moduleName}`;e.remoteHandler.hooks.lifecycle.handlePreloadModule.emit({id:"."===n.moduleName?r.name:l,name:r.name,remoteSnapshot:t,preloadConfig:i,remote:r,origin:e}),V(l)||("all"===i.resourceCategory?(a.push(...m(n.assets.css.async)),a.push(...m(n.assets.css.sync)),s.push(...m(n.assets.js.async))):(i.resourceCategory="sync",a.push(...m(n.assets.css.sync))),s.push(...m(n.assets.js.sync)),G(l))}}},!0,{},i),i.shared&&i.shared.length>0){let t=(t,r)=>{let n=eJ(e.shareScopeMap,r.sharedName,t,e.sharedHandler.hooks.lifecycle.resolveShare);n&&"function"==typeof n.lib&&(r.assets.js.sync.forEach(e=>{c.add(e)}),r.assets.css.sync.forEach(e=>{u.add(e)}))};i.shared.forEach(e=>{let r=f.shared?.[e.sharedName];if(!r)return;let n=e.version?r.find(t=>t.version===e.version):r;n&&E(n).forEach(r=>{t(r,e)})})}let m=s.filter(e=>!c.has(e)&&!tb("script",e));return{cssAssets:a.filter(e=>!u.has(e)&&!tb("link",e)),jsAssetsWithoutEntry:m,entryAssets:l.filter(e=>!tb("script",e.url))}}let tI=function(){return{name:"generate-preload-assets-plugin",async generatePreloadAssets(e){let{origin:t,preloadOptions:r,remoteInfo:o,remote:i,globalSnapshot:a,remoteSnapshot:s}=e;return n.isBrowserEnv()?h(i)&&p(i)?{cssAssets:[],jsAssetsWithoutEntry:[],entryAssets:[{name:i.name,url:i.entry,moduleInfo:{name:o.name,entry:i.entry,type:o.type||"global",entryGlobalName:"",shareScope:""}}]}:(tg(o,s),tS(t,r,o,a,s)):{cssAssets:[],jsAssetsWithoutEntry:[],entryAssets:[]}}}};function tv(e,t){let r=x({name:t.name,version:t.options.version}),n=r&&"remotesInfo"in r&&r.remotesInfo&&D(r.remotesInfo,e.name).value;return n&&n.matchedVersion?{hostGlobalSnapshot:r,globalSnapshot:P(),remoteSnapshot:x({name:e.name,version:n.matchedVersion})}:{hostGlobalSnapshot:void 0,globalSnapshot:P(),remoteSnapshot:x({name:e.name,version:"version"in e?e.version:void 0})}}class tR{constructor(e){this.loadingHostSnapshot=null,this.manifestCache=new Map,this.hooks=new td({beforeLoadRemoteSnapshot:new tf("beforeLoadRemoteSnapshot"),loadSnapshot:new tm("loadGlobalSnapshot"),loadRemoteSnapshot:new tm("loadRemoteSnapshot"),afterLoadSnapshot:new tm("afterLoadSnapshot")}),this.manifestLoading=R.__FEDERATION__.__MANIFEST_LOADING__,this.HostInstance=e,this.loaderHook=e.loaderHook}async loadRemoteSnapshotInfo({moduleInfo:e,id:t,expose:r}){let i,a,{options:s}=this.HostInstance;await this.hooks.lifecycle.beforeLoadRemoteSnapshot.emit({options:s,moduleInfo:e});let c=x({name:this.HostInstance.options.name,version:this.HostInstance.options.version});c||(c={version:this.HostInstance.options.version||"",remoteEntry:"",remotesInfo:{}},j({[this.HostInstance.options.name]:c})),c&&"remotesInfo"in c&&!D(c.remotesInfo,e.name).value&&("version"in e||"entry"in e)&&(c.remotesInfo={...c?.remotesInfo,[e.name]:{matchedVersion:"version"in e?e.version:e.entry}});let{hostGlobalSnapshot:u,remoteSnapshot:f,globalSnapshot:p}=this.getGlobalRemoteInfo(e),{remoteSnapshot:m,globalSnapshot:d}=await this.hooks.lifecycle.loadSnapshot.emit({options:s,moduleInfo:e,hostGlobalSnapshot:u,remoteSnapshot:f,globalSnapshot:p});if(m)if(n.isManifestProvider(m)){let t=n.isBrowserEnv()?m.remoteEntry:m.ssrRemoteEntry||m.remoteEntry||"",r=await this.getManifestJson(t,e,{}),o=F({...e,entry:t},r);i=r,a=o}else{let{remoteSnapshot:t}=await this.hooks.lifecycle.loadRemoteSnapshot.emit({options:this.HostInstance.options,moduleInfo:e,remoteSnapshot:m,from:"global"});i=t,a=d}else if(h(e)){let t=await this.getManifestJson(e.entry,e,{}),r=F(e,t),{remoteSnapshot:n}=await this.hooks.lifecycle.loadRemoteSnapshot.emit({options:this.HostInstance.options,moduleInfo:e,remoteSnapshot:t,from:"global"});i=n,a=r}else l(o.getShortErrorMsg(o.RUNTIME_007,o.runtimeDescMap,{hostName:e.name,hostVersion:e.version,globalSnapshot:JSON.stringify(d)}));return await this.hooks.lifecycle.afterLoadSnapshot.emit({id:t,host:this.HostInstance,options:s,moduleInfo:e,remoteSnapshot:i}),{remoteSnapshot:i,globalSnapshot:a}}getGlobalRemoteInfo(e){return tv(e,this.HostInstance)}async getManifestJson(e,t,r){let i=async()=>{let r=this.manifestCache.get(e);if(r)return r;try{let t=await this.loaderHook.lifecycle.fetch.emit(e,{});t&&t instanceof Response||(t=await fetch(e,{})),r=await t.json()}catch(n){(r=await this.HostInstance.remoteHandler.hooks.lifecycle.errorLoadRemote.emit({id:e,error:n,from:"runtime",lifecycle:"afterResolve",origin:this.HostInstance}))||(delete this.manifestLoading[e],l(o.getShortErrorMsg(o.RUNTIME_003,o.runtimeDescMap,{manifestUrl:e,moduleName:t.name,hostName:this.HostInstance.options.name},`${n}`)))}return s(r.metaData&&r.exposes&&r.shared,`${e} is not a federation manifest`),this.manifestCache.set(e,r),r},a=async()=>{let r=await i(),o=n.generateSnapshotFromManifest(r,{version:e}),{remoteSnapshot:a}=await this.hooks.lifecycle.loadRemoteSnapshot.emit({options:this.HostInstance.options,moduleInfo:t,manifestJson:r,remoteSnapshot:o,manifestUrl:e,from:"manifest"});return a};return this.manifestLoading[e]||(this.manifestLoading[e]=a().then(e=>e)),this.manifestLoading[e]}}class tN{constructor(e){this.hooks=new td({afterResolve:new tm("afterResolve"),beforeLoadShare:new tm("beforeLoadShare"),loadShare:new tf,resolveShare:new tp("resolveShare"),initContainerShareScopeMap:new tp("initContainerShareScopeMap")}),this.host=e,this.shareScopeMap={},this.initTokens={},this._setGlobalShareScopeMap(e.options)}registerShared(e,t){let{shareInfos:r,shared:n}=eG(e,t);return Object.keys(r).forEach(e=>{r[e].forEach(r=>{r.scope.forEach(n=>{this.shareScopeMap[n]?.[e]||this.setShared({pkgName:e,lib:r.lib,get:r.get,loaded:r.loaded||!!r.lib,shared:r,from:t.name})})})}),{shareInfos:r,shared:n}}async loadShare(e,t){let{host:r}=this,n=eQ({pkgName:e,extraOptions:t,shareInfos:r.options.shared});n?.scope&&await Promise.all(n.scope.map(async e=>{await Promise.all(this.initializeSharing(e,{strategy:n.strategy}))}));let{shareInfo:o}=await this.hooks.lifecycle.beforeLoadShare.emit({pkgName:e,shareInfo:n,shared:r.options.shared,origin:r});s(o,`Cannot find ${e} Share in the ${r.options.name}. Please ensure that the ${e} Share parameters have been injected`);let i=eJ(this.shareScopeMap,e,o,this.hooks.lifecycle.resolveShare),a=e=>{e.useIn||(e.useIn=[]),u(e.useIn,r.options.name)};if(i&&i.lib)return a(i),i.lib;if(i&&i.loading&&!i.loaded){let e=await i.loading;return i.loaded=!0,i.lib||(i.lib=e),a(i),e}if(i){let t=(async()=>{let e=await i.get();return a(i),i.loaded=!0,i.lib=e,e})();return this.setShared({pkgName:e,loaded:!1,shared:i,from:r.options.name,lib:null,loading:t}),t}{if(t?.customShareInfo)return!1;let n=(async()=>{let t=await o.get();o.lib=t,o.loaded=!0,a(o);let r=eJ(this.shareScopeMap,e,o,this.hooks.lifecycle.resolveShare);return r&&(r.lib=t,r.loaded=!0,r.from=o.from),t})();return this.setShared({pkgName:e,loaded:!1,shared:o,from:r.options.name,lib:null,loading:n}),n}}initializeSharing(e=q,t){let{host:r}=this,n=t?.from,o=t?.strategy,i=t?.initScope,a=[];if("build"!==n){let{initTokens:t}=this;i||(i=[]);let r=t[e];if(r||(r=t[e]={from:this.host.name}),i.indexOf(r)>=0)return a;i.push(r)}let s=this.shareScopeMap,l=r.options.name;s[e]||(s[e]={});let c=s[e],u=(e,t)=>{let{version:r,eager:n}=t;c[e]=c[e]||{};let o=c[e],i=o[r],a=!!(i&&(i.eager||i.shareConfig?.eager));(!i||"loaded-first"!==i.strategy&&!i.loaded&&(!n!=!a?n:l>i.from))&&(o[r]=t)},f=t=>t&&t.init&&t.init(s[e],i),h=async e=>{let{module:t}=await r.remoteHandler.getRemoteModuleAndOptions({id:e});if(t.getEntry){let n;try{n=await t.getEntry()}catch(t){n=await r.remoteHandler.hooks.lifecycle.errorLoadRemote.emit({id:e,error:t,from:"runtime",lifecycle:"beforeLoadShare",origin:r})}t.inited||(await f(n),t.inited=!0)}};return Object.keys(r.options.shared).forEach(t=>{r.options.shared[t].forEach(r=>{r.scope.includes(e)&&u(t,r)})}),("version-first"===r.options.shareStrategy||"version-first"===o)&&r.options.remotes.forEach(t=>{t.shareScope===e&&a.push(h(t.name))}),a}loadShareSync(e,t){let{host:r}=this,n=eQ({pkgName:e,extraOptions:t,shareInfos:r.options.shared});n?.scope&&n.scope.forEach(e=>{this.initializeSharing(e,{strategy:n.strategy})});let i=eJ(this.shareScopeMap,e,n,this.hooks.lifecycle.resolveShare),a=e=>{e.useIn||(e.useIn=[]),u(e.useIn,r.options.name)};if(i){if("function"==typeof i.lib)return a(i),i.loaded||(i.loaded=!0,i.from===r.options.name&&(n.loaded=!0)),i.lib;if("function"==typeof i.get){let t=i.get();if(!(t instanceof Promise))return a(i),this.setShared({pkgName:e,loaded:!0,from:r.options.name,lib:t,shared:i}),t}}if(n.lib)return n.loaded||(n.loaded=!0),n.lib;if(n.get){let i=n.get();if(i instanceof Promise){let n=t?.from==="build"?o.RUNTIME_005:o.RUNTIME_006;throw Error(o.getShortErrorMsg(n,o.runtimeDescMap,{hostName:r.options.name,sharedPkgName:e}))}return n.lib=i,this.setShared({pkgName:e,loaded:!0,from:r.options.name,lib:n.lib,shared:n}),n.lib}throw Error(o.getShortErrorMsg(o.RUNTIME_006,o.runtimeDescMap,{hostName:r.options.name,sharedPkgName:e}))}initShareScopeMap(e,t,r={}){let{host:n}=this;this.shareScopeMap[e]=t,this.hooks.lifecycle.initContainerShareScopeMap.emit({shareScope:t,options:n.options,origin:n,scopeName:e,hostShareScopeMap:r.hostShareScopeMap})}setShared({pkgName:e,shared:t,from:r,lib:n,loading:o,loaded:i,get:a}){let{version:s,scope:l="default",...c}=t;(Array.isArray(l)?l:[l]).forEach(t=>{if(this.shareScopeMap[t]||(this.shareScopeMap[t]={}),this.shareScopeMap[t][e]||(this.shareScopeMap[t][e]={}),!this.shareScopeMap[t][e][s]){this.shareScopeMap[t][e][s]={version:s,scope:[t],...c,lib:n,loaded:i,loading:o},a&&(this.shareScopeMap[t][e][s].get=a);return}let l=this.shareScopeMap[t][e][s];o&&!l.loading&&(l.loading=o),i&&!l.loaded&&(l.loaded=i),r&&l.from!==r&&(l.from=r)})}_setGlobalShareScopeMap(e){let t=eZ(),r=e.id||e.name;r&&!t[r]&&(t[r]=this.shareScopeMap)}}class t${constructor(e){this.hooks=new td({beforeRegisterRemote:new tp("beforeRegisterRemote"),registerRemote:new tp("registerRemote"),beforeRequest:new tm("beforeRequest"),onLoad:new tf("onLoad"),handlePreloadModule:new tu("handlePreloadModule"),errorLoadRemote:new tf("errorLoadRemote"),beforePreloadRemote:new tf("beforePreloadRemote"),generatePreloadAssets:new tf("generatePreloadAssets"),afterPreloadRemote:new tf,loadEntry:new tf}),this.host=e,this.idToRemoteMap={}}formatAndRegisterRemote(e,t){return(t.remotes||[]).reduce((e,t)=>(this.registerRemote(t,e,{force:!1}),e),e.remotes)}setIdToRemoteMap(e,t){let{remote:r,expose:n}=t,{name:o,alias:i}=r;if(this.idToRemoteMap[e]={name:r.name,expose:n},i&&e.startsWith(o)){let t=e.replace(o,i);this.idToRemoteMap[t]={name:r.name,expose:n};return}if(i&&e.startsWith(i)){let t=e.replace(i,o);this.idToRemoteMap[t]={name:r.name,expose:n}}}async loadRemote(e,t){let{host:r}=this;try{let{loadFactory:n=!0}=t||{loadFactory:!0},{module:o,moduleOptions:i,remoteMatchInfo:a}=await this.getRemoteModuleAndOptions({id:e}),{pkgNameOrAlias:s,remote:l,expose:c,id:u,remoteSnapshot:f}=a,h=await o.get(u,c,t,f),p=await this.hooks.lifecycle.onLoad.emit({id:u,pkgNameOrAlias:s,expose:c,exposeModule:n?h:void 0,exposeModuleFactory:n?void 0:h,remote:l,options:i,moduleInstance:o,origin:r});if(this.setIdToRemoteMap(e,a),"function"==typeof p)return p;return h}catch(i){let{from:n="runtime"}=t||{from:"runtime"},o=await this.hooks.lifecycle.errorLoadRemote.emit({id:e,error:i,from:n,lifecycle:"onLoad",origin:r});if(!o)throw i;return o}}async preloadRemote(e){let{host:t}=this;await this.hooks.lifecycle.beforePreloadRemote.emit({preloadOps:e,options:t.options,origin:t});let r=ti(t.options.remotes,e);await Promise.all(r.map(async e=>{let{remote:r}=e,n=tn(r),{globalSnapshot:o,remoteSnapshot:i}=await t.snapshotHandler.loadRemoteSnapshotInfo({moduleInfo:r}),a=await this.hooks.lifecycle.generatePreloadAssets.emit({origin:t,preloadOptions:e,remote:r,remoteInfo:n,globalSnapshot:o,remoteSnapshot:i});a&&ts(n,t,a)}))}registerRemotes(e,t){let{host:r}=this;e.forEach(e=>{this.registerRemote(e,r.options.remotes,{force:t?.force})})}async getRemoteModuleAndOptions(e){let t,{host:r}=this,{id:n}=e;try{t=await this.hooks.lifecycle.beforeRequest.emit({id:n,options:r.options,origin:r})}catch(e){if(!(t=await this.hooks.lifecycle.errorLoadRemote.emit({id:n,options:r.options,origin:r,from:"runtime",error:e,lifecycle:"beforeRequest"})))throw e}let{id:i}=t,a=e1(r.options.remotes,i);s(a,o.getShortErrorMsg(o.RUNTIME_004,o.runtimeDescMap,{hostName:r.options.name,requestId:i}));let{remote:l}=a,c=tn(l),u=await r.sharedHandler.hooks.lifecycle.afterResolve.emit({id:i,...a,options:r.options,origin:r,remoteInfo:c}),{remote:f,expose:h}=u;s(f&&h,`The 'beforeRequest' hook was executed, but it failed to return the correct 'remote' and 'expose' values while loading ${i}.`);let p=r.moduleCache.get(f.name),m={host:r,remoteInfo:c};return p||(p=new tc(m),r.moduleCache.set(f.name,p)),{module:p,moduleOptions:m,remoteMatchInfo:u}}registerRemote(e,t,r){let{host:o}=this,i=()=>{if(e.alias){let r=t.find(t=>e.alias&&(t.name.startsWith(e.alias)||t.alias?.startsWith(e.alias)));s(!r,`The alias ${e.alias} of remote ${e.name} is not allowed to be the prefix of ${r&&r.name} name or alias`)}"entry"in e&&n.isBrowserEnv()&&!e.entry.startsWith("http")&&(e.entry=new URL(e.entry,window.location.origin).href),e.shareScope||(e.shareScope=q),e.type||(e.type=B)};this.hooks.lifecycle.beforeRegisterRemote.emit({remote:e,origin:o});let a=t.find(t=>t.name===e.name);if(a){let s=[`The remote "${e.name}" is already registered.`,"Please note that overriding it may cause unexpected errors."];r?.force&&(this.removeRemote(a),i(),t.push(e),this.hooks.lifecycle.registerRemote.emit({remote:e,origin:o}),n.warn(s.join(" ")))}else i(),t.push(e),this.hooks.lifecycle.registerRemote.emit({remote:e,origin:o})}removeRemote(e){try{let{host:t}=this,{name:r}=e,o=t.options.remotes.findIndex(e=>e.name===r);-1!==o&&t.options.remotes.splice(o,1);let i=t.moduleCache.get(e.name);if(i){let r=i.remoteInfo,o=r.entryGlobalName;I[o]&&(Object.getOwnPropertyDescriptor(I,o)?.configurable?delete I[o]:I[o]=void 0);let a=tt(i.remoteInfo);M[a]&&delete M[a],t.snapshotHandler.manifestCache.delete(r.entry);let s=r.buildVersion?n.composeKeyWithSeparator(r.name,r.buildVersion):r.name,l=I.__FEDERATION__.__INSTANCES__.findIndex(e=>r.buildVersion?e.options.id===s:e.name===s);if(-1!==l){let e=I.__FEDERATION__.__INSTANCES__[l];s=e.options.id||s;let t=eZ(),n=!0,o=[];Object.keys(t).forEach(e=>{let i=t[e];i&&Object.keys(i).forEach(t=>{let a=i[t];a&&Object.keys(a).forEach(i=>{let s=a[i];s&&Object.keys(s).forEach(a=>{let l=s[a];l&&"object"==typeof l&&l.from===r.name&&(l.loaded||l.loading?(l.useIn=l.useIn.filter(e=>e!==r.name),l.useIn.length?n=!1:o.push([e,t,i,a])):o.push([e,t,i,a]))})})})}),n&&(e.shareScopeMap={},delete t[s]),o.forEach(([e,r,n,o])=>{delete t[e]?.[r]?.[n]?.[o]}),I.__FEDERATION__.__INSTANCES__.splice(l,1)}let{hostGlobalSnapshot:c}=tv(e,t);if(c){let t=c&&"remotesInfo"in c&&c.remotesInfo&&D(c.remotesInfo,e.name).key;t&&(delete c.remotesInfo[t],R.__FEDERATION__.__MANIFEST_LOADING__[t]&&delete R.__FEDERATION__.__MANIFEST_LOADING__[t])}t.moduleCache.delete(e.name)}}catch(e){a.log("removeRemote fail: ",e)}}}let tM="boolean"!=typeof FEDERATION_OPTIMIZE_NO_SNAPSHOT_PLUGIN||!FEDERATION_OPTIMIZE_NO_SNAPSHOT_PLUGIN;class tw{constructor(e){this.hooks=new td({beforeInit:new tp("beforeInit"),init:new tu,beforeInitContainer:new tm("beforeInitContainer"),initContainer:new tm("initContainer")}),this.version="0.22.0",this.moduleCache=new Map,this.loaderHook=new td({getModuleInfo:new tu,createScript:new tu,createLink:new tu,fetch:new tf,loadEntryError:new tf,getModuleFactory:new tf}),this.bridgeHook=new td({beforeBridgeRender:new tu,afterBridgeRender:new tu,beforeBridgeDestroy:new tu,afterBridgeDestroy:new tu});const t=tM?[ty(),tI()]:[],r={id:e0(),name:e.name,plugins:t,remotes:[],shared:{},inBrowser:n.isBrowserEnv()};this.name=e.name,this.options=r,this.snapshotHandler=new tR(this),this.sharedHandler=new tN(this),this.remoteHandler=new t$(this),this.shareScopeMap=this.sharedHandler.shareScopeMap,this.registerPlugins([...r.plugins,...e.plugins||[]]),this.options=this.formatOptions(r,e)}initOptions(e){this.registerPlugins(e.plugins);let t=this.formatOptions(this.options,e);return this.options=t,t}async loadShare(e,t){return this.sharedHandler.loadShare(e,t)}loadShareSync(e,t){return this.sharedHandler.loadShareSync(e,t)}initializeSharing(e=q,t){return this.sharedHandler.initializeSharing(e,t)}initRawContainer(e,t,r){let n=new tc({host:this,remoteInfo:tn({name:e,entry:t})});return n.remoteEntryExports=r,this.moduleCache.set(e,n),n}async loadRemote(e,t){return this.remoteHandler.loadRemote(e,t)}async preloadRemote(e){return this.remoteHandler.preloadRemote(e)}initShareScopeMap(e,t,r={}){this.sharedHandler.initShareScopeMap(e,t,r)}formatOptions(e,t){let{shared:r}=eG(e,t),{userOptions:n,options:o}=this.hooks.lifecycle.beforeInit.emit({origin:this,userOptions:t,options:e,shareInfo:r}),i=this.remoteHandler.formatAndRegisterRemote(o,n),{shared:a}=this.sharedHandler.registerShared(o,n),s=[...o.plugins];n.plugins&&n.plugins.forEach(e=>{s.includes(e)||s.push(e)});let l={...e,...t,plugins:s,remotes:i,shared:a};return this.hooks.lifecycle.init.emit({origin:this,options:l}),l}registerPlugins(e){let t=e9(e,this);this.options.plugins=this.options.plugins.reduce((e,t)=>(t&&e&&!e.find(e=>e.name===t.name)&&e.push(t),e),t||[])}registerRemotes(e,t){return this.remoteHandler.registerRemotes(e,t)}registerShared(e){this.sharedHandler.registerShared(this.options,{...this.options,shared:e})}}var tT=Object.freeze({__proto__:null});t.loadScript=n.loadScript,t.loadScriptNode=n.loadScriptNode,t.CurrentGlobal=I,t.Global=R,t.Module=tc,t.ModuleFederation=tw,t.addGlobalSnapshot=j,t.assert=s,t.getGlobalFederationConstructor=A,t.getGlobalSnapshot=P,t.getInfoWithoutType=D,t.getRegisteredShare=eJ,t.getRemoteEntry=tr,t.getRemoteInfo=tn,t.helpers=tl,t.isStaticResourcesEqual=_,t.matchRemoteWithNameAndExpose=e1,t.registerGlobalPlugins=H,t.resetFederationGlobalInfo=T,t.safeWrapper=m,t.satisfy=eU,t.setGlobalFederationConstructor=k,t.setGlobalFederationInstance=O,t.types=tT},86490(e,t,r){var n=r(35822),o=r(63767),i=r(6197);function a(e){let t=new(n.getGlobalFederationConstructor()||n.ModuleFederation)(e);return n.setGlobalFederationInstance(t),t}let s=null;function l(e){let t=i.getGlobalFederationInstance(e.name,e.version);return t?(t.initOptions(e),s||(s=t),t):s=a(e)}function c(...e){return n.assert(s,o.getShortErrorMsg(o.RUNTIME_009,o.runtimeDescMap)),s.loadRemote.apply(s,e)}function u(...e){return n.assert(s,o.getShortErrorMsg(o.RUNTIME_009,o.runtimeDescMap)),s.loadShare.apply(s,e)}function f(...e){return n.assert(s,o.getShortErrorMsg(o.RUNTIME_009,o.runtimeDescMap)),s.loadShareSync.apply(s,e)}function h(...e){return n.assert(s,o.getShortErrorMsg(o.RUNTIME_009,o.runtimeDescMap)),s.preloadRemote.apply(s,e)}function p(...e){return n.assert(s,o.getShortErrorMsg(o.RUNTIME_009,o.runtimeDescMap)),s.registerRemotes.apply(s,e)}function m(...e){return n.assert(s,o.getShortErrorMsg(o.RUNTIME_009,o.runtimeDescMap)),s.registerPlugins.apply(s,e)}function d(){return s}function g(...e){return n.assert(s,o.getShortErrorMsg(o.RUNTIME_009,o.runtimeDescMap)),s.registerShared.apply(s,e)}n.setGlobalFederationConstructor(n.ModuleFederation),t.Module=n.Module,t.ModuleFederation=n.ModuleFederation,t.getRemoteEntry=n.getRemoteEntry,t.getRemoteInfo=n.getRemoteInfo,t.loadScript=n.loadScript,t.loadScriptNode=n.loadScriptNode,t.registerGlobalPlugins=n.registerGlobalPlugins,t.createInstance=a,t.getInstance=d,t.init=l,t.loadRemote=c,t.loadShare=u,t.loadShareSync=f,t.preloadRemote=h,t.registerPlugins=m,t.registerRemotes=p,t.registerShared=g},6197(e,t,r){var n=r(35822);function o(){return"u">typeof FEDERATION_BUILD_IDENTIFIER?FEDERATION_BUILD_IDENTIFIER:""}t.getGlobalFederationInstance=function(e,t){let r=o();return n.CurrentGlobal.__FEDERATION__.__INSTANCES__.find(n=>!!r&&n.options.id===r||n.options.name===e&&!n.options.version&&!t||n.options.name===e&&!!t&&n.options.version===t)}},45882(__unused_rspack_module,exports){let FederationModuleManifest="federation-manifest.json",MANIFEST_EXT=".json",BROWSER_LOG_KEY="FEDERATION_DEBUG",NameTransformSymbol={AT:"@",HYPHEN:"-",SLASH:"/"},NameTransformMap={[NameTransformSymbol.AT]:"scope_",[NameTransformSymbol.HYPHEN]:"_",[NameTransformSymbol.SLASH]:"__"},EncodedNameTransformMap={[NameTransformMap[NameTransformSymbol.AT]]:NameTransformSymbol.AT,[NameTransformMap[NameTransformSymbol.HYPHEN]]:NameTransformSymbol.HYPHEN,[NameTransformMap[NameTransformSymbol.SLASH]]:NameTransformSymbol.SLASH},SEPARATOR=":",ManifestFileName="mf-manifest.json",StatsFileName="mf-stats.json",MFModuleType={NPM:"npm",APP:"app"},MODULE_DEVTOOL_IDENTIFIER="__MF_DEVTOOLS_MODULE_INFO__",ENCODE_NAME_PREFIX="ENCODE_NAME_PREFIX",TEMP_DIR=".federation",MFPrefetchCommon={identifier:"MFDataPrefetch",globalKey:"__PREFETCH__",library:"mf-data-prefetch",exportsKey:"__PREFETCH_EXPORTS__",fileName:"bootstrap.js"};var ContainerPlugin=Object.freeze({__proto__:null}),ContainerReferencePlugin=Object.freeze({__proto__:null}),ModuleFederationPlugin=Object.freeze({__proto__:null}),SharePlugin=Object.freeze({__proto__:null});function isBrowserEnv(){return"u">typeof window&&void 0!==window.document}function isReactNativeEnv(){return"u">typeof navigator&&navigator?.product==="ReactNative"}function isBrowserDebug(){try{if(isBrowserEnv()&&window.localStorage)return!!localStorage.getItem(BROWSER_LOG_KEY)}catch(e){}return!1}function isDebugMode(){return"u">typeof process&&process.env&&process.env.FEDERATION_DEBUG?!!process.env.FEDERATION_DEBUG:!!("u">typeof FEDERATION_DEBUG&&FEDERATION_DEBUG)||isBrowserDebug()}let getProcessEnv=function(){return"u">typeof process&&process.env?process.env:{}},LOG_CATEGORY="[ Federation Runtime ]",parseEntry=(e,t,r=SEPARATOR)=>{let n=e.split(r),o="development"===getProcessEnv().NODE_ENV&&t,i="*",a=e=>e.startsWith("http")||e.includes(MANIFEST_EXT);if(n.length>=2){let[t,...s]=n;e.startsWith(r)&&(t=n.slice(0,2).join(r),s=[o||n.slice(2).join(r)]);let l=o||s.join(r);return a(l)?{name:t,entry:l}:{name:t,version:l||i}}if(1===n.length){let[e]=n;return o&&a(o)?{name:e,entry:o}:{name:e,version:o||i}}throw`Invalid entry value: ${e}`},composeKeyWithSeparator=function(...e){return e.length?e.reduce((e,t)=>t?e?`${e}${SEPARATOR}${t}`:t:e,""):""},encodeName=function(e,t="",r=!1){try{let n=r?".js":"";return`${t}${e.replace(RegExp(`${NameTransformSymbol.AT}`,"g"),NameTransformMap[NameTransformSymbol.AT]).replace(RegExp(`${NameTransformSymbol.HYPHEN}`,"g"),NameTransformMap[NameTransformSymbol.HYPHEN]).replace(RegExp(`${NameTransformSymbol.SLASH}`,"g"),NameTransformMap[NameTransformSymbol.SLASH])}${n}`}catch(e){throw e}},decodeName=function(e,t,r){try{let n=e;if(t){if(!n.startsWith(t))return n;n=n.replace(RegExp(t,"g"),"")}return n=n.replace(RegExp(`${NameTransformMap[NameTransformSymbol.AT]}`,"g"),EncodedNameTransformMap[NameTransformMap[NameTransformSymbol.AT]]).replace(RegExp(`${NameTransformMap[NameTransformSymbol.SLASH]}`,"g"),EncodedNameTransformMap[NameTransformMap[NameTransformSymbol.SLASH]]).replace(RegExp(`${NameTransformMap[NameTransformSymbol.HYPHEN]}`,"g"),EncodedNameTransformMap[NameTransformMap[NameTransformSymbol.HYPHEN]]),r&&(n=n.replace(".js","")),n}catch(e){throw e}},generateExposeFilename=(e,t)=>{if(!e)return"";let r=e;return"."===r&&(r="default_export"),r.startsWith("./")&&(r=r.replace("./","")),encodeName(r,"__federation_expose_",t)},generateShareFilename=(e,t)=>e?encodeName(e,"__federation_shared_",t):"",getResourceUrl=(e,t)=>{if("getPublicPath"in e){let r;return r=e.getPublicPath.startsWith("function")?Function("return "+e.getPublicPath)()():Function(e.getPublicPath)(),`${r}${t}`}return"publicPath"in e?!isBrowserEnv()&&!isReactNativeEnv()&&"ssrPublicPath"in e?`${e.ssrPublicPath}${t}`:`${e.publicPath}${t}`:(console.warn("Cannot get resource URL. If in debug mode, please ignore.",e,t),"")},assert=(e,t)=>{e||error(t)},error=e=>{throw Error(`${LOG_CATEGORY}: ${e}`)},warn=e=>{console.warn(`${LOG_CATEGORY}: ${e}`)};function safeToString(e){try{return JSON.stringify(e,null,2)}catch(e){return""}}let VERSION_PATTERN_REGEXP=/^([\d^=v<>~]|[*xX]$)/;function isRequiredVersion(e){return VERSION_PATTERN_REGEXP.test(e)}let simpleJoinRemoteEntry=(e,t)=>{if(!e)return t;let r=(e=>{if("."===e)return"";if(e.startsWith("./"))return e.replace("./","");if(e.startsWith("/")){let t=e.slice(1);return t.endsWith("/")?t.slice(0,-1):t}return e})(e);return r?r.endsWith("/")?`${r}${t}`:`${r}/${t}`:t};function inferAutoPublicPath(e){return e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/")}function generateSnapshotFromManifest(e,t={}){let r,{remotes:n={},overrides:o={},version:i}=t,a=()=>"publicPath"in e.metaData?"auto"===e.metaData.publicPath&&i?inferAutoPublicPath(i):e.metaData.publicPath:e.metaData.getPublicPath,s=Object.keys(o),l={};Object.keys(n).length||(l=e.remotes?.reduce((e,t)=>{let r,n=t.federationContainerName;return r=s.includes(n)?o[n]:"version"in t?t.version:t.entry,e[n]={matchedVersion:r},e},{})||{}),Object.keys(n).forEach(e=>l[e]={matchedVersion:s.includes(e)?o[e]:n[e]});let{remoteEntry:{path:c,name:u,type:f},types:h={path:"",name:"",zip:"",api:""},buildInfo:{buildVersion:p},globalName:m,ssrRemoteEntry:d}=e.metaData,{exposes:g}=e,y={version:i||"",buildVersion:p,globalName:m,remoteEntry:simpleJoinRemoteEntry(c,u),remoteEntryType:f,remoteTypes:simpleJoinRemoteEntry(h.path,h.name),remoteTypesZip:h.zip||"",remoteTypesAPI:h.api||"",remotesInfo:l,shared:e?.shared.map(e=>({assets:e.assets,sharedName:e.name,version:e.version})),modules:g?.map(e=>({moduleName:e.name,modulePath:e.path,assets:e.assets}))};if(e.metaData?.prefetchInterface){let t=e.metaData.prefetchInterface;y={...y,prefetchInterface:t}}if(e.metaData?.prefetchEntry){let{path:t,name:r,type:n}=e.metaData.prefetchEntry;y={...y,prefetchEntry:simpleJoinRemoteEntry(t,r),prefetchEntryType:n}}return r="publicPath"in e.metaData?{...y,publicPath:a(),ssrPublicPath:e.metaData.ssrPublicPath}:{...y,getPublicPath:a()},d&&(r.ssrRemoteEntry=simpleJoinRemoteEntry(d.path,d.name),r.ssrRemoteEntryType=d.type||"commonjs-module"),r}function isManifestProvider(e){return!!("remoteEntry"in e&&e.remoteEntry.includes(MANIFEST_EXT))}function getManifestFileName(e){if(!e)return{statsFileName:StatsFileName,manifestFileName:ManifestFileName};let t="boolean"==typeof e?"":e.filePath||"",r="boolean"==typeof e?"":e.fileName||"",n=".json",o=e=>e.endsWith(n)?e:`${e}${n}`,i=(e,t)=>e.replace(n,`${t}${n}`),a=r?o(r):ManifestFileName;return{statsFileName:simpleJoinRemoteEntry(t,r?i(a,"-stats"):StatsFileName),manifestFileName:simpleJoinRemoteEntry(t,a)}}let PREFIX="[ Module Federation ]",DEFAULT_DELEGATE=console,LOGGER_STACK_SKIP_TOKENS=["logger.ts","logger.js","captureStackTrace","Logger.emit","Logger.log","Logger.info","Logger.warn","Logger.error","Logger.debug"];function captureStackTrace(){try{let e=Error().stack;if(!e)return;let[,...t]=e.split("\n"),r=t.filter(e=>!LOGGER_STACK_SKIP_TOKENS.some(t=>e.includes(t)));if(!r.length)return;let n=r.slice(0,5).join("\n");return`Stack trace:
4
4
  ${n}`}catch{return}}class Logger{constructor(e,t=DEFAULT_DELEGATE){this.prefix=e,this.delegate=t??DEFAULT_DELEGATE}setPrefix(e){this.prefix=e}setDelegate(e){this.delegate=e??DEFAULT_DELEGATE}emit(e,t){let r=this.delegate,n=isDebugMode()?captureStackTrace():void 0,o=n?[...t,n]:t,i=(()=>{switch(e){case"log":return["log","info"];case"info":return["info","log"];case"warn":return["warn","info","log"];case"error":return["error","warn","log"];default:return["debug","log"]}})();for(let e of i){let t=r[e];if("function"==typeof t)return void t.call(r,this.prefix,...o)}for(let e of i){let t=DEFAULT_DELEGATE[e];if("function"==typeof t)return void t.call(DEFAULT_DELEGATE,this.prefix,...o)}}log(...e){this.emit("log",e)}warn(...e){this.emit("warn",e)}error(...e){this.emit("error",e)}success(...e){this.emit("info",e)}info(...e){this.emit("info",e)}ready(...e){this.emit("info",e)}debug(...e){isDebugMode()&&this.emit("debug",e)}}function createLogger(e){return new Logger(e)}function createInfrastructureLogger(e){let t=new Logger(e);return Object.defineProperty(t,"__mf_infrastructure_logger__",{value:!0,enumerable:!1,configurable:!1}),t}function bindLoggerToCompiler(e,t,r){if(e.__mf_infrastructure_logger__&&t?.getInfrastructureLogger)try{let n=t.getInfrastructureLogger(r);n&&"object"==typeof n&&("function"==typeof n.log||"function"==typeof n.info||"function"==typeof n.warn||"function"==typeof n.error)&&e.setDelegate(n)}catch{e.setDelegate(void 0)}}let logger=createLogger(PREFIX),infrastructureLogger=createInfrastructureLogger(PREFIX);async function safeWrapper(e,t){try{return await e()}catch(e){t||warn(e);return}}function isStaticResourcesEqual(e,t){let r=/^(https?:)?\/\//i;return e.replace(r,"").replace(/\/$/,"")===t.replace(r,"").replace(/\/$/,"")}function createScript(e){let t,r=null,n=!0,o=2e4,i=document.getElementsByTagName("script");for(let t=0;t<i.length;t++){let o=i[t],a=o.getAttribute("src");if(a&&isStaticResourcesEqual(a,e.url)){r=o,n=!1;break}}if(!r){let t,n=e.attrs;(r=document.createElement("script")).type=n?.type==="module"?"module":"text/javascript",e.createScriptHook&&((t=e.createScriptHook(e.url,e.attrs))instanceof HTMLScriptElement?r=t:"object"==typeof t&&("script"in t&&t.script&&(r=t.script),"timeout"in t&&t.timeout&&(o=t.timeout))),r.src||(r.src=e.url),n&&!t&&Object.keys(n).forEach(e=>{r&&("async"===e||"defer"===e?r[e]=n[e]:r.getAttribute(e)||r.setAttribute(e,n[e]))})}let a=async(n,o)=>{clearTimeout(t);let i=()=>{o?.type==="error"?e?.onErrorCallback&&e?.onErrorCallback(o):e?.cb&&e?.cb()};if(r&&(r.onerror=null,r.onload=null,safeWrapper(()=>{let{needDeleteScript:t=!0}=e;t&&r?.parentNode&&r.parentNode.removeChild(r)}),n&&"function"==typeof n)){let e=n(o);if(e instanceof Promise){let t=await e;return i(),t}return i(),e}i()};return r.onerror=a.bind(null,r.onerror),r.onload=a.bind(null,r.onload),t=setTimeout(()=>{a(null,Error(`Remote script "${e.url}" time-outed.`))},o),{script:r,needAttach:n}}function createLink(e){let t=null,r=!0,n=document.getElementsByTagName("link");for(let o=0;o<n.length;o++){let i=n[o],a=i.getAttribute("href"),s=i.getAttribute("rel");if(a&&isStaticResourcesEqual(a,e.url)&&s===e.attrs.rel){t=i,r=!1;break}}if(!t){let r;(t=document.createElement("link")).setAttribute("href",e.url);let n=e.attrs;e.createLinkHook&&(r=e.createLinkHook(e.url,n))instanceof HTMLLinkElement&&(t=r),n&&!r&&Object.keys(n).forEach(e=>{t&&!t.getAttribute(e)&&t.setAttribute(e,n[e])})}let o=(r,n)=>{let o=()=>{n?.type==="error"?e?.onErrorCallback&&e?.onErrorCallback(n):e?.cb&&e?.cb()};if(t&&(t.onerror=null,t.onload=null,safeWrapper(()=>{let{needDeleteLink:r=!0}=e;r&&t?.parentNode&&t.parentNode.removeChild(t)}),r)){let e=r(n);return o(),e}o()};return t.onerror=o.bind(null,t.onerror),t.onload=o.bind(null,t.onload),{link:t,needAttach:r}}function loadScript(e,t){let{attrs:r={},createScriptHook:n}=t;return new Promise((t,o)=>{let{script:i,needAttach:a}=createScript({url:e,cb:t,onErrorCallback:o,attrs:{fetchpriority:"high",...r},createScriptHook:n,needDeleteScript:!0});a&&document.head.appendChild(i)})}let sdkImportCache=new Map;function importNodeModule(e){if(!e)throw Error("import specifier is required");if(sdkImportCache.has(e))return sdkImportCache.get(e);let t=Function("name","return import(name)")(e).then(e=>e).catch(t=>{throw console.error(`Error importing module ${e}:`,t),sdkImportCache.delete(e),t});return sdkImportCache.set(e,t),t}let loadNodeFetch=async()=>{let e=await importNodeModule("node-fetch");return e.default||e},lazyLoaderHookFetch=async(e,t,r)=>{let n=(e,t)=>r.lifecycle.fetch.emit(e,t),o=await n(e,t||{});return o&&o instanceof Response?o:("u"<typeof fetch?await loadNodeFetch():fetch)(e,t||{})},createScriptNode="u"<typeof ENV_TARGET||"web"!==ENV_TARGET?(url,cb,attrs,loaderHook)=>{let urlObj;if(loaderHook?.createScriptHook){let hookResult=loaderHook.createScriptHook(url);hookResult&&"object"==typeof hookResult&&"url"in hookResult&&(url=hookResult.url)}try{urlObj=new URL(url)}catch(e){console.error("Error constructing URL:",e),cb(Error(`Invalid URL: ${e}`));return}let getFetch=async()=>loaderHook?.fetch?(e,t)=>lazyLoaderHookFetch(e,t,loaderHook):"u"<typeof fetch?loadNodeFetch():fetch,handleScriptFetch=async(f,urlObj)=>{try{let res=await f(urlObj.href),data=await res.text(),[path,vm]=await Promise.all([importNodeModule("path"),importNodeModule("vm")]),scriptContext={exports:{},module:{exports:{}}},urlDirname=urlObj.pathname.split("/").slice(0,-1).join("/"),filename=path.basename(urlObj.pathname),script=new vm.Script(`(function(exports, module, require, __dirname, __filename) {${data}
5
5
  })`,{filename,importModuleDynamically:vm.constants?.USE_MAIN_CONTEXT_DEFAULT_LOADER??importNodeModule});script.runInThisContext()(scriptContext.exports,scriptContext.module,eval("require"),urlDirname,filename);let exportedInterface=scriptContext.module.exports||scriptContext.exports;if(attrs&&exportedInterface&&attrs.globalName){let container=exportedInterface[attrs.globalName]||exportedInterface;cb(void 0,container);return}cb(void 0,exportedInterface)}catch(e){cb(e instanceof Error?e:Error(`Script execution error: ${e}`))}};getFetch().then(async e=>{if(attrs?.type==="esm"||attrs?.type==="module")return loadModule(urlObj.href,{fetch:e,vm:await importNodeModule("vm")}).then(async e=>{await e.evaluate(),cb(void 0,e.namespace)}).catch(e=>{cb(e instanceof Error?e:Error(`Script execution error: ${e}`))});handleScriptFetch(e,urlObj)}).catch(e=>{cb(e)})}:(e,t,r,n)=>{t(Error("createScriptNode is disabled in non-Node.js environment"))},loadScriptNode="u"<typeof ENV_TARGET||"web"!==ENV_TARGET?(e,t)=>new Promise((r,n)=>{createScriptNode(e,(e,o)=>{if(e)n(e);else{let e=t?.attrs?.globalName||`__FEDERATION_${t?.attrs?.name}:custom__`;r(globalThis[e]=o)}},t.attrs,t.loaderHook)}):(e,t)=>{throw Error("loadScriptNode is disabled in non-Node.js environment")},esmModuleCache=new Map;async function loadModule(e,t){if(esmModuleCache.has(e))return esmModuleCache.get(e);let{fetch:r,vm:n}=t,o=await r(e),i=await o.text(),a=new n.SourceTextModule(i,{importModuleDynamically:async(r,n)=>loadModule(new URL(r,e).href,t)});return esmModuleCache.set(e,a),await a.link(async r=>{let n=new URL(r,e).href;return await loadModule(n,t)}),a}function normalizeOptions(e,t,r){return function(n){if(!1===n)return!1;if(void 0===n)if(e)return t;else return!1;if(!0===n)return t;if(n&&"object"==typeof n)return{...t,...n};throw Error(`Unexpected type for \`${r}\`, expect boolean/undefined/object, got: ${typeof n}`)}}let createModuleFederationConfig=e=>e;exports.BROWSER_LOG_KEY=BROWSER_LOG_KEY,exports.ENCODE_NAME_PREFIX=ENCODE_NAME_PREFIX,exports.EncodedNameTransformMap=EncodedNameTransformMap,exports.FederationModuleManifest=FederationModuleManifest,exports.MANIFEST_EXT=MANIFEST_EXT,exports.MFModuleType=MFModuleType,exports.MFPrefetchCommon=MFPrefetchCommon,exports.MODULE_DEVTOOL_IDENTIFIER=MODULE_DEVTOOL_IDENTIFIER,exports.ManifestFileName=ManifestFileName,exports.NameTransformMap=NameTransformMap,exports.NameTransformSymbol=NameTransformSymbol,exports.SEPARATOR=SEPARATOR,exports.StatsFileName=StatsFileName,exports.TEMP_DIR=TEMP_DIR,exports.assert=assert,exports.bindLoggerToCompiler=bindLoggerToCompiler,exports.composeKeyWithSeparator=composeKeyWithSeparator,exports.containerPlugin=ContainerPlugin,exports.containerReferencePlugin=ContainerReferencePlugin,exports.createInfrastructureLogger=createInfrastructureLogger,exports.createLink=createLink,exports.createLogger=createLogger,exports.createModuleFederationConfig=createModuleFederationConfig,exports.createScript=createScript,exports.createScriptNode=createScriptNode,exports.decodeName=decodeName,exports.encodeName=encodeName,exports.error=error,exports.generateExposeFilename=generateExposeFilename,exports.generateShareFilename=generateShareFilename,exports.generateSnapshotFromManifest=generateSnapshotFromManifest,exports.getManifestFileName=getManifestFileName,exports.getProcessEnv=getProcessEnv,exports.getResourceUrl=getResourceUrl,exports.inferAutoPublicPath=inferAutoPublicPath,exports.infrastructureLogger=infrastructureLogger,exports.isBrowserEnv=isBrowserEnv,exports.isDebugMode=isDebugMode,exports.isManifestProvider=isManifestProvider,exports.isReactNativeEnv=isReactNativeEnv,exports.isRequiredVersion=isRequiredVersion,exports.isStaticResourcesEqual=isStaticResourcesEqual,exports.loadScript=loadScript,exports.loadScriptNode=loadScriptNode,exports.logger=logger,exports.moduleFederationPlugin=ModuleFederationPlugin,exports.normalizeOptions=normalizeOptions,exports.parseEntry=parseEntry,exports.safeToString=safeToString,exports.safeWrapper=safeWrapper,exports.sharePlugin=SharePlugin,exports.simpleJoinRemoteEntry=simpleJoinRemoteEntry,exports.warn=warn},31629(e,t){t.FEDERATION_SUPPORTED_TYPES=["script"]},82707(e,t,r){var n=r(86490),o=r(31629),i=r(45882);function a(e){e.S&&!e.federation.hasAttachShareScopeMap&&e.federation.instance&&e.federation.instance.shareScopeMap&&(e.S=e.federation.instance.shareScopeMap,e.federation.hasAttachShareScopeMap=!0)}function s(e){let{webpackRequire:t,moduleToHandlerMapping:r}=e,{consumesLoadingData:n,initializeSharingData:o}=t;if(n&&!n._updated){let{moduleIdToConsumeDataMapping:t={},initialConsumes:o=[],chunkMapping:i={}}=n;if(Object.entries(t).forEach(([e,t])=>{r[e]||(r[e]={getter:t.fallback,shareInfo:{shareConfig:{requiredVersion:t.requiredVersion,strictVersion:t.strictVersion,singleton:t.singleton,eager:t.eager,layer:t.layer},scope:Array.isArray(t.shareScope)?t.shareScope:[t.shareScope||"default"]},shareKey:t.shareKey})}),"initialConsumes"in e){let{initialConsumes:t=[]}=e;o.forEach(e=>{t.includes(e)||t.push(e)})}if("chunkMapping"in e){let{chunkMapping:t={}}=e;Object.entries(i).forEach(([e,r])=>{t[e]||(t[e]=[]),r.forEach(r=>{t[e].includes(r)||t[e].push(r)})})}n._updated=1}if(o&&!o._updated){let{federation:e}=t;if(!e.instance||!o.scopeToSharingDataMapping)return;let r={};for(let[e,t]of Object.entries(o.scopeToSharingDataMapping))for(let n of t)if("object"==typeof n&&null!==n){let{name:t,version:o,factory:i,eager:a,singleton:s,requiredVersion:l,strictVersion:c}=n,u={requiredVersion:`^${o}`},f=function(e){return void 0!==e};f(s)&&(u.singleton=s),f(l)&&(u.requiredVersion=l),f(a)&&(u.eager=a),f(c)&&(u.strictVersion=c);let h={version:o,scope:[e],shareConfig:u,get:i};r[t]?r[t].push(h):r[t]=[h]}e.instance.registerShared(r),o._updated=1}}function l(e){let{webpackRequire:t,idToExternalAndNameMapping:r={},idToRemoteMap:n={},chunkMapping:o={}}=e,{remotesLoadingData:i}=t,a=t.federation?.bundlerRuntimeOptions?.remotes?.remoteInfos;if(!i||i._updated||!a)return;let{chunkMapping:s,moduleIdToRemoteDataMapping:l}=i;if(s&&l){for(let[e,t]of Object.entries(l))if(r[e]||(r[e]=[t.shareScope,t.name,t.externalModuleId]),!n[e]&&a[t.remoteName]){let r=a[t.remoteName];n[e]||=[],r.forEach(t=>{n[e].includes(t)||n[e].push(t)})}o&&Object.entries(s).forEach(([e,t])=>{o[e]||(o[e]=[]),t.forEach(t=>{o[e].includes(t)||o[e].push(t)})}),i._updated=1}}function c(e){l(e);let{chunkId:t,promises:r,webpackRequire:n,chunkMapping:s,idToExternalAndNameMapping:c,idToRemoteMap:u}=e;a(n),n.o(s,t)&&s[t].forEach(e=>{let t=n.R;t||(t=[]);let a=c[e],s=u[e]||[];if(t.indexOf(a)>=0)return;if(t.push(a),a.p)return r.push(a.p);let l=t=>{t||(t=Error("Container missing")),"string"==typeof t.message&&(t.message+=`
6
- while loading "${a[1]}" from ${a[2]}`),n.m[e]=()=>{throw t},a.p=0},f=(e,t,n,o,i,s)=>{try{let c=e(t,n);if(!c||!c.then)return i(c,o,s);{let e=c.then(e=>i(e,o),l);if(!s)return e;r.push(a.p=e)}}catch(e){l(e)}},h=(e,t,r)=>e?f(n.I,a[0],0,e,p,r):l();var p=(e,r,n)=>f(r.get,a[1],t,0,m,n),m=t=>{a.p=1,n.m[e]=e=>{e.exports=t()}};let d=()=>{try{let e=i.decodeName(s[0].name,i.ENCODE_NAME_PREFIX)+a[1].slice(1),t=n.federation.instance,r=()=>n.federation.instance.loadRemote(e,{loadFactory:!1,from:"build"});if("version-first"===t.options.shareStrategy)return Promise.all(t.sharedHandler.initializeSharing(a[0])).then(()=>r());return r()}catch(e){l(e)}};1===s.length&&o.FEDERATION_SUPPORTED_TYPES.includes(s[0].externalType)&&s[0].name?f(d,a[2],0,0,m,1):f(n,a[2],0,0,h,1)})}function u(e){s(e);let{chunkId:t,promises:r,installedModules:n,webpackRequire:o,chunkMapping:i,moduleToHandlerMapping:l}=e;a(o),o.o(i,t)&&i[t].forEach(e=>{if(o.o(n,e))return r.push(n[e]);let t=t=>{n[e]=0,o.m[e]=r=>{delete o.c[e];let n=t(),{shareInfo:i}=l[e];if(i?.shareConfig?.layer&&n&&"object"==typeof n)try{n.hasOwnProperty("layer")&&void 0!==n.layer||(n.layer=i.shareConfig.layer)}catch(e){}r.exports=n}},i=t=>{delete n[e],o.m[e]=r=>{throw delete o.c[e],t}};try{let a=o.federation.instance;if(!a)throw Error("Federation instance not found!");let{shareKey:s,getter:c,shareInfo:u}=l[e],f=a.loadShare(s,{customShareInfo:u}).then(e=>!1===e?c():e);f.then?r.push(n[e]=f.then(t).catch(i)):t(f)}catch(e){i(e)}})}function f({shareScopeName:e,webpackRequire:t,initPromises:r,initTokens:n,initScope:i}){let s=Array.isArray(e)?e:[e];var l=[],c=function(s){i||(i=[]);let l=t.federation.instance;var c=n[s];if(c||(c=n[s]={from:l.name}),i.indexOf(c)>=0)return;i.push(c);let u=r[s];if(u)return u;var f=e=>"u">typeof console&&console.warn&&console.warn(e),h=r=>{var n=e=>f("Initialization of sharing external failed: "+e);try{var o=t(r);if(!o)return;var a=r=>r&&r.init&&r.init(t.S[s],i,{shareScopeMap:t.S||{},shareScopeKeys:e});if(o.then)return p.push(o.then(a,n));var l=a(o);if(l&&"boolean"!=typeof l&&l.then)return p.push(l.catch(n))}catch(e){n(e)}};let p=l.initializeSharing(s,{strategy:l.options.shareStrategy,initScope:i,from:"build"});a(t);let m=t.federation.bundlerRuntimeOptions.remotes;return(m&&Object.keys(m.idToRemoteMap).forEach(e=>{let t=m.idToRemoteMap[e],r=m.idToExternalAndNameMapping[e][2];if(t.length>1)h(r);else if(1===t.length){let e=t[0];o.FEDERATION_SUPPORTED_TYPES.includes(e.externalType)||h(r)}}),p.length)?r[s]=Promise.all(p).then(()=>r[s]=!0):r[s]=!0};return s.forEach(e=>{l.push(c(e))}),Promise.all(l).then(()=>!0)}function h(e){let{moduleId:t,moduleToHandlerMapping:r,webpackRequire:n}=e,o=n.federation.instance;if(!o)throw Error("Federation instance not found!");let{shareKey:i,shareInfo:a}=r[t];try{return o.loadShareSync(i,{customShareInfo:a})}catch(e){throw console.error('loadShareSync failed! The function should not be called unless you set "eager:true". If you do not set it, and encounter this issue, you can check whether an async boundary is implemented.'),console.error("The original error message is as follows: "),e}}function p(e){let{webpackRequire:t}=e;s(e);let{initialConsumes:r,moduleToHandlerMapping:n,installedModules:o}=e;r.forEach(e=>{t.m[e]=r=>{o[e]=0,delete t.c[e];let i=h({moduleId:e,moduleToHandlerMapping:n,webpackRequire:t});if("function"!=typeof i)throw Error(`Shared module is not available for eager consumption: ${e}`);let a=i(),{shareInfo:s}=n[e];if(s?.shareConfig?.layer&&a&&"object"==typeof a)try{a.hasOwnProperty("layer")&&void 0!==a.layer||(a.layer=s.shareConfig.layer)}catch(e){}r.exports=a}})}function m(e){let{webpackRequire:t,shareScope:r,initScope:n,shareScopeKey:o,remoteEntryInitOptions:i}=e;if(!t.S||!t.federation||!t.federation.instance||!t.federation.initOptions)return;let a=t.federation.instance;a.initOptions({name:t.federation.initOptions.name,remotes:[],...i});let s=i?.shareScopeKeys,l=i?.shareScopeMap;if(o&&"string"!=typeof o)o.forEach(e=>{if(!s||!l)return void a.initShareScopeMap(e,r,{hostShareScopeMap:i?.shareScopeMap||{}});l[e]||(l[e]={});let t=l[e];a.initShareScopeMap(e,t,{hostShareScopeMap:i?.shareScopeMap||{}})});else{let e=o||"default";Array.isArray(s)?s.forEach(e=>{l[e]||(l[e]={});let t=l[e];a.initShareScopeMap(e,t,{hostShareScopeMap:i?.shareScopeMap||{}})}):a.initShareScopeMap(e,r,{hostShareScopeMap:i?.shareScopeMap||{}})}return(t.federation.attachShareScopeMap&&t.federation.attachShareScopeMap(t),"function"==typeof t.federation.prefetch&&t.federation.prefetch(),Array.isArray(o))?t.federation.initOptions.shared?t.I(o,n):Promise.all(o.map(e=>t.I(e,n))).then(()=>!0):t.I(o||"default",n)}e.exports={runtime:function(e){var t=Object.create(null);if(e)for(var r in e)t[r]=e[r];return t.default=e,Object.freeze(t)}(n),instance:void 0,initOptions:void 0,bundlerRuntime:{remotes:c,consumes:u,I:f,S:{},installInitialConsumes:p,initContainerEntry:m},attachShareScopeMap:a,bundlerRuntimeOptions:{}}}},__webpack_module_cache__={};function __webpack_require__(e){var t=__webpack_module_cache__[e];if(void 0!==t)return t.exports;var r=__webpack_module_cache__[e]={id:e,exports:{}};return __webpack_modules__[e].call(r.exports,r,r.exports,__webpack_require__),r.exports}__webpack_require__.m=__webpack_modules__,__webpack_require__.c=__webpack_module_cache__,__webpack_require__.x=()=>__webpack_require__(59800),(()=>{__webpack_require__.federation||(__webpack_require__.federation={chunkMatcher:function(e){return!/^(1391|4006|5023|5265|8652|9837)$/.test(e)},rootOutputDir:""})})(),(()=>{__webpack_require__.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(t,{a:t}),t}})(),(()=>{__webpack_require__.d=(e,t)=>{for(var r in t)__webpack_require__.o(t,r)&&!__webpack_require__.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}})(),(()=>{__webpack_require__.f={},__webpack_require__.e=e=>Promise.all(Object.keys(__webpack_require__.f).reduce((t,r)=>(__webpack_require__.f[r](e,t),t),[]))})(),(()=>{__webpack_require__.u=e=>""+e+".js"})(),(()=>{__webpack_require__.g=(()=>{if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}})()})(),(()=>{__webpack_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})(),(()=>{var e={},t="@openmrs/esm-patient-tests-app:";__webpack_require__.l=function(r,n,o,i){if(e[r])return void e[r].push(n);if(void 0!==o)for(var a,s,l=document.getElementsByTagName("script"),c=0;c<l.length;c++){var u=l[c];if(u.getAttribute("src")==r||u.getAttribute("data-rspack")==t+o){a=u;break}}a||(s=!0,(a=document.createElement("script")).timeout=120,__webpack_require__.nc&&a.setAttribute("nonce",__webpack_require__.nc),a.setAttribute("data-rspack",t+o),a.src=r),e[r]=[n];var f=function(t,n){a.onerror=a.onload=null,clearTimeout(h);var o=e[r];if(delete e[r],a.parentNode&&a.parentNode.removeChild(a),o&&o.forEach(function(e){return e(n)}),t)return t(n)},h=setTimeout(f.bind(null,void 0,{type:"timeout",target:a}),12e4);a.onerror=f.bind(null,a.onerror),a.onload=f.bind(null,a.onload),s&&document.head.appendChild(a)}})(),(()=>{__webpack_require__.r=e=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})(),(()=>{__webpack_require__.nc=void 0})(),(()=>{__webpack_require__.rv=()=>"1.7.9"})(),(()=>{__webpack_require__.S={},__webpack_require__.initializeSharingData={scopeToSharingDataMapping:{default:[{name:"@openmrs/esm-framework",version:"10.0.1-pre.4866",factory:()=>Promise.all([__webpack_require__.e("2544"),__webpack_require__.e("8939"),__webpack_require__.e("7646"),__webpack_require__.e("8652"),__webpack_require__.e("9837"),__webpack_require__.e("5265"),__webpack_require__.e("5023"),__webpack_require__.e("1391")]).then(()=>()=>__webpack_require__(52957)),eager:0,singleton:1,requiredVersion:"10.x",strictVersion:0},{name:"@openmrs/esm-patient-common-lib",version:"12.2.0",factory:()=>Promise.all([__webpack_require__.e("2544"),__webpack_require__.e("8939"),__webpack_require__.e("8652"),__webpack_require__.e("9837"),__webpack_require__.e("5265"),__webpack_require__.e("5023"),__webpack_require__.e("1391"),__webpack_require__.e("4289"),__webpack_require__.e("4006"),__webpack_require__.e("1984")]).then(()=>()=>__webpack_require__(95848)),eager:0,singleton:1,requiredVersion:"12.x",strictVersion:0},{name:"react-i18next",version:"16.0.0",factory:()=>Promise.all([__webpack_require__.e("1789"),__webpack_require__.e("8652")]).then(()=>()=>__webpack_require__(42348)),eager:0,singleton:1,requiredVersion:"16.x",strictVersion:0},{name:"react-router-dom",version:"6.16.0",factory:()=>Promise.all([__webpack_require__.e("9712"),__webpack_require__.e("8652")]).then(()=>()=>__webpack_require__(27059)),eager:0,singleton:1,requiredVersion:"6.x",strictVersion:0},{name:"react",version:"18.3.1",factory:()=>__webpack_require__.e("466").then(()=>()=>__webpack_require__(14041)),eager:0,singleton:1,requiredVersion:"18.x",strictVersion:0},{name:"rxjs",version:"6.6.7",factory:()=>__webpack_require__.e("9105").then(()=>()=>__webpack_require__(37864)),eager:0,singleton:1,requiredVersion:"6.x",strictVersion:0},{name:"swr/_internal",version:"2.2.5",factory:()=>Promise.all([__webpack_require__.e("3989"),__webpack_require__.e("8652")]).then(()=>()=>__webpack_require__(42372)),eager:0,singleton:1,requiredVersion:"2.x",strictVersion:0},{name:"swr/immutable",version:"2.2.5",factory:()=>Promise.all([__webpack_require__.e("9061"),__webpack_require__.e("8652"),__webpack_require__.e("5265"),__webpack_require__.e("3720")]).then(()=>()=>__webpack_require__(29876)),eager:0,singleton:1,requiredVersion:"2.x",strictVersion:0},{name:"swr/infinite",version:"2.2.5",factory:()=>Promise.all([__webpack_require__.e("9771"),__webpack_require__.e("8652"),__webpack_require__.e("5265"),__webpack_require__.e("1339")]).then(()=>()=>__webpack_require__(52470)),eager:0,singleton:1,requiredVersion:"2.x",strictVersion:0}]},uniqueName:"@openmrs/esm-patient-tests-app"},__webpack_require__.I=__webpack_require__.I||function(){throw Error("should have __webpack_require__.I")}})(),(()=>{__webpack_require__.g.importScripts&&(e=__webpack_require__.g.location+"");var e,t=__webpack_require__.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var r=t.getElementsByTagName("script");if(r.length)for(var n=r.length-1;n>-1&&(!e||!/^http(s?):/.test(e));)e=r[n--].src}if(!e)throw Error("Automatic publicPath is not supported in this browser");__webpack_require__.p=e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/")})(),(()=>{__webpack_require__.consumesLoadingData={chunkMapping:{9837:["13660"],8652:["35399"],4006:["92293"],2315:["13040"],5023:["24354"],5265:["43432"],1391:["27807","95571","30682"]},moduleIdToConsumeDataMapping:{30682:{shareScope:"default",shareKey:"swr/infinite",import:"swr/infinite",requiredVersion:"2.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>__webpack_require__.e("9771").then(()=>()=>__webpack_require__(52470))},35399:{shareScope:"default",shareKey:"react",import:"react",requiredVersion:"18.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>__webpack_require__.e("466").then(()=>()=>__webpack_require__(14041))},92293:{shareScope:"default",shareKey:"@openmrs/esm-framework",import:"@openmrs/esm-framework",requiredVersion:"10.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>Promise.all([__webpack_require__.e("2544"),__webpack_require__.e("7646"),__webpack_require__.e("9837"),__webpack_require__.e("5023")]).then(()=>()=>__webpack_require__(52957))},24354:{shareScope:"default",shareKey:"rxjs",import:"rxjs",requiredVersion:"6.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>__webpack_require__.e("9105").then(()=>()=>__webpack_require__(37864))},13040:{shareScope:"default",shareKey:"@openmrs/esm-patient-common-lib",import:"@openmrs/esm-patient-common-lib",requiredVersion:"12.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>Promise.all([__webpack_require__.e("2544"),__webpack_require__.e("9837"),__webpack_require__.e("5023"),__webpack_require__.e("4289")]).then(()=>()=>__webpack_require__(95848))},27807:{shareScope:"default",shareKey:"react-i18next",import:"react-i18next",requiredVersion:"16.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>__webpack_require__.e("1789").then(()=>()=>__webpack_require__(42348))},43432:{shareScope:"default",shareKey:"swr/_internal",import:"swr/_internal",requiredVersion:"2.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>__webpack_require__.e("3989").then(()=>()=>__webpack_require__(42372))},95571:{shareScope:"default",shareKey:"react-router-dom",import:"react-router-dom",requiredVersion:"6.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>__webpack_require__.e("9712").then(()=>()=>__webpack_require__(27059))},13660:{shareScope:"default",shareKey:"swr/immutable",import:"swr/immutable",requiredVersion:"2.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>__webpack_require__.e("9061").then(()=>()=>__webpack_require__(29876))}},initialConsumes:[]},__webpack_require__.f.consumes=__webpack_require__.f.consumes||function(){throw Error("should have __webpack_require__.f.consumes")}})(),(()=>{__webpack_require__.initializeExposesData={moduleMap:{"./start":()=>Promise.all([__webpack_require__.e("8939"),__webpack_require__.e("1215"),__webpack_require__.e("8652"),__webpack_require__.e("5265"),__webpack_require__.e("1391"),__webpack_require__.e("4006"),__webpack_require__.e("2315")]).then(()=>()=>__webpack_require__(49446))},shareScope:"default"},__webpack_require__.getContainer=__webpack_require__.getContainer||function(){throw Error("should have __webpack_require__.getContainer")},__webpack_require__.initContainer=__webpack_require__.initContainer||function(){throw Error("should have __webpack_require__.initContainer")}})(),(()=>{var e={510:0};__webpack_require__.f.j=function(t,r){var n=__webpack_require__.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else if(/^(1391|4006|5023|5265|8652|9837)$/.test(t))e[t]=0;else{var o=new Promise((r,o)=>n=e[t]=[r,o]);r.push(n[2]=o);var i=__webpack_require__.p+__webpack_require__.u(t),a=Error(),s=function(r){if(__webpack_require__.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),i=r&&r.target&&r.target.src;a.message="Loading chunk "+t+" failed.\n("+o+": "+i+")",a.name="ChunkLoadError",a.type=o,a.request=i,n[1](a)}};__webpack_require__.l(i,s,"chunk-"+t,t)}};var t=(t,r)=>{var n,o,[i,a,s]=r,l=0;if(i.some(t=>0!==e[t])){for(n in a)__webpack_require__.o(a,n)&&(__webpack_require__.m[n]=a[n]);s&&s(__webpack_require__)}for(t&&t(r);l<i.length;l++)o=i[l],__webpack_require__.o(e,o)&&e[o]&&e[o][0](),e[o]=0},r=globalThis.webpackChunk_openmrs_esm_patient_tests_app=globalThis.webpackChunk_openmrs_esm_patient_tests_app||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=>{__webpack_require__.ruid="bundler=rspack@1.7.9"})(),(()=>{var e=__webpack_require__.x,t=!1;__webpack_require__.x=function(){if(t||(t=!0,__webpack_require__(94071)),"function"==typeof e)return e();console.warn("[MF] Invalid prevStartup")}})();var __webpack_exports__=__webpack_require__.x();_openmrs_esm_patient_tests_app=__webpack_exports__})();
6
+ while loading "${a[1]}" from ${a[2]}`),n.m[e]=()=>{throw t},a.p=0},f=(e,t,n,o,i,s)=>{try{let c=e(t,n);if(!c||!c.then)return i(c,o,s);{let e=c.then(e=>i(e,o),l);if(!s)return e;r.push(a.p=e)}}catch(e){l(e)}},h=(e,t,r)=>e?f(n.I,a[0],0,e,p,r):l();var p=(e,r,n)=>f(r.get,a[1],t,0,m,n),m=t=>{a.p=1,n.m[e]=e=>{e.exports=t()}};let d=()=>{try{let e=i.decodeName(s[0].name,i.ENCODE_NAME_PREFIX)+a[1].slice(1),t=n.federation.instance,r=()=>n.federation.instance.loadRemote(e,{loadFactory:!1,from:"build"});if("version-first"===t.options.shareStrategy)return Promise.all(t.sharedHandler.initializeSharing(a[0])).then(()=>r());return r()}catch(e){l(e)}};1===s.length&&o.FEDERATION_SUPPORTED_TYPES.includes(s[0].externalType)&&s[0].name?f(d,a[2],0,0,m,1):f(n,a[2],0,0,h,1)})}function u(e){s(e);let{chunkId:t,promises:r,installedModules:n,webpackRequire:o,chunkMapping:i,moduleToHandlerMapping:l}=e;a(o),o.o(i,t)&&i[t].forEach(e=>{if(o.o(n,e))return r.push(n[e]);let t=t=>{n[e]=0,o.m[e]=r=>{delete o.c[e];let n=t(),{shareInfo:i}=l[e];if(i?.shareConfig?.layer&&n&&"object"==typeof n)try{n.hasOwnProperty("layer")&&void 0!==n.layer||(n.layer=i.shareConfig.layer)}catch(e){}r.exports=n}},i=t=>{delete n[e],o.m[e]=r=>{throw delete o.c[e],t}};try{let a=o.federation.instance;if(!a)throw Error("Federation instance not found!");let{shareKey:s,getter:c,shareInfo:u}=l[e],f=a.loadShare(s,{customShareInfo:u}).then(e=>!1===e?c():e);f.then?r.push(n[e]=f.then(t).catch(i)):t(f)}catch(e){i(e)}})}function f({shareScopeName:e,webpackRequire:t,initPromises:r,initTokens:n,initScope:i}){let s=Array.isArray(e)?e:[e];var l=[],c=function(s){i||(i=[]);let l=t.federation.instance;var c=n[s];if(c||(c=n[s]={from:l.name}),i.indexOf(c)>=0)return;i.push(c);let u=r[s];if(u)return u;var f=e=>"u">typeof console&&console.warn&&console.warn(e),h=r=>{var n=e=>f("Initialization of sharing external failed: "+e);try{var o=t(r);if(!o)return;var a=r=>r&&r.init&&r.init(t.S[s],i,{shareScopeMap:t.S||{},shareScopeKeys:e});if(o.then)return p.push(o.then(a,n));var l=a(o);if(l&&"boolean"!=typeof l&&l.then)return p.push(l.catch(n))}catch(e){n(e)}};let p=l.initializeSharing(s,{strategy:l.options.shareStrategy,initScope:i,from:"build"});a(t);let m=t.federation.bundlerRuntimeOptions.remotes;return(m&&Object.keys(m.idToRemoteMap).forEach(e=>{let t=m.idToRemoteMap[e],r=m.idToExternalAndNameMapping[e][2];if(t.length>1)h(r);else if(1===t.length){let e=t[0];o.FEDERATION_SUPPORTED_TYPES.includes(e.externalType)||h(r)}}),p.length)?r[s]=Promise.all(p).then(()=>r[s]=!0):r[s]=!0};return s.forEach(e=>{l.push(c(e))}),Promise.all(l).then(()=>!0)}function h(e){let{moduleId:t,moduleToHandlerMapping:r,webpackRequire:n}=e,o=n.federation.instance;if(!o)throw Error("Federation instance not found!");let{shareKey:i,shareInfo:a}=r[t];try{return o.loadShareSync(i,{customShareInfo:a})}catch(e){throw console.error('loadShareSync failed! The function should not be called unless you set "eager:true". If you do not set it, and encounter this issue, you can check whether an async boundary is implemented.'),console.error("The original error message is as follows: "),e}}function p(e){let{webpackRequire:t}=e;s(e);let{initialConsumes:r,moduleToHandlerMapping:n,installedModules:o}=e;r.forEach(e=>{t.m[e]=r=>{o[e]=0,delete t.c[e];let i=h({moduleId:e,moduleToHandlerMapping:n,webpackRequire:t});if("function"!=typeof i)throw Error(`Shared module is not available for eager consumption: ${e}`);let a=i(),{shareInfo:s}=n[e];if(s?.shareConfig?.layer&&a&&"object"==typeof a)try{a.hasOwnProperty("layer")&&void 0!==a.layer||(a.layer=s.shareConfig.layer)}catch(e){}r.exports=a}})}function m(e){let{webpackRequire:t,shareScope:r,initScope:n,shareScopeKey:o,remoteEntryInitOptions:i}=e;if(!t.S||!t.federation||!t.federation.instance||!t.federation.initOptions)return;let a=t.federation.instance;a.initOptions({name:t.federation.initOptions.name,remotes:[],...i});let s=i?.shareScopeKeys,l=i?.shareScopeMap;if(o&&"string"!=typeof o)o.forEach(e=>{if(!s||!l)return void a.initShareScopeMap(e,r,{hostShareScopeMap:i?.shareScopeMap||{}});l[e]||(l[e]={});let t=l[e];a.initShareScopeMap(e,t,{hostShareScopeMap:i?.shareScopeMap||{}})});else{let e=o||"default";Array.isArray(s)?s.forEach(e=>{l[e]||(l[e]={});let t=l[e];a.initShareScopeMap(e,t,{hostShareScopeMap:i?.shareScopeMap||{}})}):a.initShareScopeMap(e,r,{hostShareScopeMap:i?.shareScopeMap||{}})}return(t.federation.attachShareScopeMap&&t.federation.attachShareScopeMap(t),"function"==typeof t.federation.prefetch&&t.federation.prefetch(),Array.isArray(o))?t.federation.initOptions.shared?t.I(o,n):Promise.all(o.map(e=>t.I(e,n))).then(()=>!0):t.I(o||"default",n)}e.exports={runtime:function(e){var t=Object.create(null);if(e)for(var r in e)t[r]=e[r];return t.default=e,Object.freeze(t)}(n),instance:void 0,initOptions:void 0,bundlerRuntime:{remotes:c,consumes:u,I:f,S:{},installInitialConsumes:p,initContainerEntry:m},attachShareScopeMap:a,bundlerRuntimeOptions:{}}}},__webpack_module_cache__={};function __webpack_require__(e){var t=__webpack_module_cache__[e];if(void 0!==t)return t.exports;var r=__webpack_module_cache__[e]={id:e,exports:{}};return __webpack_modules__[e].call(r.exports,r,r.exports,__webpack_require__),r.exports}__webpack_require__.m=__webpack_modules__,__webpack_require__.c=__webpack_module_cache__,__webpack_require__.x=()=>__webpack_require__(59800),(()=>{__webpack_require__.federation||(__webpack_require__.federation={chunkMatcher:function(e){return!/^(1391|4006|5023|5265|8652|9837)$/.test(e)},rootOutputDir:""})})(),(()=>{__webpack_require__.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(t,{a:t}),t}})(),(()=>{__webpack_require__.d=(e,t)=>{for(var r in t)__webpack_require__.o(t,r)&&!__webpack_require__.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}})(),(()=>{__webpack_require__.f={},__webpack_require__.e=e=>Promise.all(Object.keys(__webpack_require__.f).reduce((t,r)=>(__webpack_require__.f[r](e,t),t),[]))})(),(()=>{__webpack_require__.u=e=>""+e+".js"})(),(()=>{__webpack_require__.g=(()=>{if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}})()})(),(()=>{__webpack_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})(),(()=>{var e={},t="@openmrs/esm-patient-tests-app:";__webpack_require__.l=function(r,n,o,i){if(e[r])return void e[r].push(n);if(void 0!==o)for(var a,s,l=document.getElementsByTagName("script"),c=0;c<l.length;c++){var u=l[c];if(u.getAttribute("src")==r||u.getAttribute("data-rspack")==t+o){a=u;break}}a||(s=!0,(a=document.createElement("script")).timeout=120,__webpack_require__.nc&&a.setAttribute("nonce",__webpack_require__.nc),a.setAttribute("data-rspack",t+o),a.src=r),e[r]=[n];var f=function(t,n){a.onerror=a.onload=null,clearTimeout(h);var o=e[r];if(delete e[r],a.parentNode&&a.parentNode.removeChild(a),o&&o.forEach(function(e){return e(n)}),t)return t(n)},h=setTimeout(f.bind(null,void 0,{type:"timeout",target:a}),12e4);a.onerror=f.bind(null,a.onerror),a.onload=f.bind(null,a.onload),s&&document.head.appendChild(a)}})(),(()=>{__webpack_require__.r=e=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})(),(()=>{__webpack_require__.nc=void 0})(),(()=>{__webpack_require__.rv=()=>"1.7.9"})(),(()=>{__webpack_require__.S={},__webpack_require__.initializeSharingData={scopeToSharingDataMapping:{default:[{name:"@openmrs/esm-framework",version:"10.0.1-pre.4866",factory:()=>Promise.all([__webpack_require__.e("2544"),__webpack_require__.e("8939"),__webpack_require__.e("7646"),__webpack_require__.e("8652"),__webpack_require__.e("9837"),__webpack_require__.e("5265"),__webpack_require__.e("5023"),__webpack_require__.e("1391")]).then(()=>()=>__webpack_require__(52957)),eager:0,singleton:1,requiredVersion:"10.x",strictVersion:0},{name:"@openmrs/esm-patient-common-lib",version:"12.2.1",factory:()=>Promise.all([__webpack_require__.e("2544"),__webpack_require__.e("8939"),__webpack_require__.e("8652"),__webpack_require__.e("9837"),__webpack_require__.e("5265"),__webpack_require__.e("5023"),__webpack_require__.e("1391"),__webpack_require__.e("4289"),__webpack_require__.e("4006"),__webpack_require__.e("1984")]).then(()=>()=>__webpack_require__(95848)),eager:0,singleton:1,requiredVersion:"12.x",strictVersion:0},{name:"react-i18next",version:"16.0.0",factory:()=>Promise.all([__webpack_require__.e("1789"),__webpack_require__.e("8652")]).then(()=>()=>__webpack_require__(42348)),eager:0,singleton:1,requiredVersion:"16.x",strictVersion:0},{name:"react-router-dom",version:"6.16.0",factory:()=>Promise.all([__webpack_require__.e("9712"),__webpack_require__.e("8652")]).then(()=>()=>__webpack_require__(27059)),eager:0,singleton:1,requiredVersion:"6.x",strictVersion:0},{name:"react",version:"18.3.1",factory:()=>__webpack_require__.e("466").then(()=>()=>__webpack_require__(14041)),eager:0,singleton:1,requiredVersion:"18.x",strictVersion:0},{name:"rxjs",version:"6.6.7",factory:()=>__webpack_require__.e("9105").then(()=>()=>__webpack_require__(37864)),eager:0,singleton:1,requiredVersion:"6.x",strictVersion:0},{name:"swr/_internal",version:"2.2.5",factory:()=>Promise.all([__webpack_require__.e("3989"),__webpack_require__.e("8652")]).then(()=>()=>__webpack_require__(42372)),eager:0,singleton:1,requiredVersion:"2.x",strictVersion:0},{name:"swr/immutable",version:"2.2.5",factory:()=>Promise.all([__webpack_require__.e("9061"),__webpack_require__.e("8652"),__webpack_require__.e("5265"),__webpack_require__.e("3720")]).then(()=>()=>__webpack_require__(29876)),eager:0,singleton:1,requiredVersion:"2.x",strictVersion:0},{name:"swr/infinite",version:"2.2.5",factory:()=>Promise.all([__webpack_require__.e("9771"),__webpack_require__.e("8652"),__webpack_require__.e("5265"),__webpack_require__.e("1339")]).then(()=>()=>__webpack_require__(52470)),eager:0,singleton:1,requiredVersion:"2.x",strictVersion:0}]},uniqueName:"@openmrs/esm-patient-tests-app"},__webpack_require__.I=__webpack_require__.I||function(){throw Error("should have __webpack_require__.I")}})(),(()=>{__webpack_require__.g.importScripts&&(e=__webpack_require__.g.location+"");var e,t=__webpack_require__.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var r=t.getElementsByTagName("script");if(r.length)for(var n=r.length-1;n>-1&&(!e||!/^http(s?):/.test(e));)e=r[n--].src}if(!e)throw Error("Automatic publicPath is not supported in this browser");__webpack_require__.p=e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/")})(),(()=>{__webpack_require__.consumesLoadingData={chunkMapping:{9837:["13660"],8652:["35399"],4006:["92293"],2315:["13040"],5023:["24354"],5265:["43432"],1391:["27807","95571","30682"]},moduleIdToConsumeDataMapping:{30682:{shareScope:"default",shareKey:"swr/infinite",import:"swr/infinite",requiredVersion:"2.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>__webpack_require__.e("9771").then(()=>()=>__webpack_require__(52470))},35399:{shareScope:"default",shareKey:"react",import:"react",requiredVersion:"18.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>__webpack_require__.e("466").then(()=>()=>__webpack_require__(14041))},92293:{shareScope:"default",shareKey:"@openmrs/esm-framework",import:"@openmrs/esm-framework",requiredVersion:"10.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>Promise.all([__webpack_require__.e("2544"),__webpack_require__.e("7646"),__webpack_require__.e("9837"),__webpack_require__.e("5023")]).then(()=>()=>__webpack_require__(52957))},24354:{shareScope:"default",shareKey:"rxjs",import:"rxjs",requiredVersion:"6.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>__webpack_require__.e("9105").then(()=>()=>__webpack_require__(37864))},13040:{shareScope:"default",shareKey:"@openmrs/esm-patient-common-lib",import:"@openmrs/esm-patient-common-lib",requiredVersion:"12.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>Promise.all([__webpack_require__.e("2544"),__webpack_require__.e("9837"),__webpack_require__.e("5023"),__webpack_require__.e("4289")]).then(()=>()=>__webpack_require__(95848))},27807:{shareScope:"default",shareKey:"react-i18next",import:"react-i18next",requiredVersion:"16.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>__webpack_require__.e("1789").then(()=>()=>__webpack_require__(42348))},43432:{shareScope:"default",shareKey:"swr/_internal",import:"swr/_internal",requiredVersion:"2.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>__webpack_require__.e("3989").then(()=>()=>__webpack_require__(42372))},95571:{shareScope:"default",shareKey:"react-router-dom",import:"react-router-dom",requiredVersion:"6.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>__webpack_require__.e("9712").then(()=>()=>__webpack_require__(27059))},13660:{shareScope:"default",shareKey:"swr/immutable",import:"swr/immutable",requiredVersion:"2.x",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>__webpack_require__.e("9061").then(()=>()=>__webpack_require__(29876))}},initialConsumes:[]},__webpack_require__.f.consumes=__webpack_require__.f.consumes||function(){throw Error("should have __webpack_require__.f.consumes")}})(),(()=>{__webpack_require__.initializeExposesData={moduleMap:{"./start":()=>Promise.all([__webpack_require__.e("8939"),__webpack_require__.e("1215"),__webpack_require__.e("8652"),__webpack_require__.e("5265"),__webpack_require__.e("1391"),__webpack_require__.e("4006"),__webpack_require__.e("2315")]).then(()=>()=>__webpack_require__(49446))},shareScope:"default"},__webpack_require__.getContainer=__webpack_require__.getContainer||function(){throw Error("should have __webpack_require__.getContainer")},__webpack_require__.initContainer=__webpack_require__.initContainer||function(){throw Error("should have __webpack_require__.initContainer")}})(),(()=>{var e={510:0};__webpack_require__.f.j=function(t,r){var n=__webpack_require__.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else if(/^(1391|4006|5023|5265|8652|9837)$/.test(t))e[t]=0;else{var o=new Promise((r,o)=>n=e[t]=[r,o]);r.push(n[2]=o);var i=__webpack_require__.p+__webpack_require__.u(t),a=Error(),s=function(r){if(__webpack_require__.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),i=r&&r.target&&r.target.src;a.message="Loading chunk "+t+" failed.\n("+o+": "+i+")",a.name="ChunkLoadError",a.type=o,a.request=i,n[1](a)}};__webpack_require__.l(i,s,"chunk-"+t,t)}};var t=(t,r)=>{var n,o,[i,a,s]=r,l=0;if(i.some(t=>0!==e[t])){for(n in a)__webpack_require__.o(a,n)&&(__webpack_require__.m[n]=a[n]);s&&s(__webpack_require__)}for(t&&t(r);l<i.length;l++)o=i[l],__webpack_require__.o(e,o)&&e[o]&&e[o][0](),e[o]=0},r=globalThis.webpackChunk_openmrs_esm_patient_tests_app=globalThis.webpackChunk_openmrs_esm_patient_tests_app||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=>{__webpack_require__.ruid="bundler=rspack@1.7.9"})(),(()=>{var e=__webpack_require__.x,t=!1;__webpack_require__.x=function(){if(t||(t=!0,__webpack_require__(94071)),"function"==typeof e)return e();console.warn("[MF] Invalid prevStartup")}})();var __webpack_exports__=__webpack_require__.x();_openmrs_esm_patient_tests_app=__webpack_exports__})();
@@ -247,10 +247,10 @@
247
247
  "rendered": true,
248
248
  "initial": true,
249
249
  "entry": true,
250
- "size": 3966293,
250
+ "size": 3971267,
251
251
  "sizes": {
252
252
  "consume-shared": 294,
253
- "javascript": 3965621,
253
+ "javascript": 3970595,
254
254
  "runtime": 14473,
255
255
  "share-init": 378
256
256
  },
@@ -267,7 +267,7 @@
267
267
  "auxiliaryFiles": [
268
268
  "main.js.map"
269
269
  ],
270
- "hash": "34f53363d1013bed",
270
+ "hash": "f680b6d07eb67fc5",
271
271
  "childrenByOrder": {}
272
272
  },
273
273
  {
@@ -299,10 +299,10 @@
299
299
  "rendered": true,
300
300
  "initial": false,
301
301
  "entry": false,
302
- "size": 773609,
302
+ "size": 778583,
303
303
  "sizes": {
304
304
  "consume-shared": 42,
305
- "javascript": 773567
305
+ "javascript": 778541
306
306
  },
307
307
  "names": [],
308
308
  "idHints": [],
@@ -315,7 +315,7 @@
315
315
  "auxiliaryFiles": [
316
316
  "2315.js.map"
317
317
  ],
318
- "hash": "3bdac0c3f36b7d58",
318
+ "hash": "9f46d336a56cd1d5",
319
319
  "childrenByOrder": {}
320
320
  },
321
321
  {
@@ -854,7 +854,7 @@
854
854
  "auxiliaryFiles": [
855
855
  "openmrs-esm-patient-tests-app.js.map"
856
856
  ],
857
- "hash": "6a3e1aab4129f439",
857
+ "hash": "bb9fd09e11558e5a",
858
858
  "childrenByOrder": {}
859
859
  },
860
860
  {
package/dist/routes.json CHANGED
@@ -1 +1 @@
1
- {"$schema":"https://json.openmrs.org/routes.schema.json","backendDependencies":{"fhir2":">=1.2","webservices.rest":">=2.2.0"},"extensions":[{"name":"test-results-summary-dashboard","component":"testResultsDashboardLink","slot":"patient-chart-dashboard-slot","meta":{"slot":"patient-chart-test-results-dashboard-slot","path":"results","hideDashboardTitle":true,"layoutMode":"anchored"},"order":4},{"name":"test-results-filtered-overview","slot":"test-results-filtered-overview-slot","component":"externalOverview"},{"name":"results-viewer","slots":["patient-chart-results-viewer-slot","patient-chart-test-results-dashboard-slot"],"component":"resultsViewer"},{"name":"lab-order-panel","component":"labOrderPanel","slots":["order-basket-slot","result-order-basket-slot"],"order":2}],"modals":[{"name":"timeline-results-modal","component":"timelineResultsModal"},{"name":"print-modal","component":"printModal"},{"name":"edit-lab-results-modal","component":"editLabResultsModal"}],"workspaces2":[{"name":"add-lab-order","component":"addLabOrderWorkspace","window":"patient-chart-order-basket"}],"version":"12.2.0"}
1
+ {"$schema":"https://json.openmrs.org/routes.schema.json","backendDependencies":{"fhir2":">=1.2","webservices.rest":">=2.2.0"},"extensions":[{"name":"test-results-summary-dashboard","component":"testResultsDashboardLink","slot":"patient-chart-dashboard-slot","meta":{"slot":"patient-chart-test-results-dashboard-slot","path":"results","hideDashboardTitle":true,"layoutMode":"anchored"},"order":4},{"name":"test-results-filtered-overview","slot":"test-results-filtered-overview-slot","component":"externalOverview"},{"name":"results-viewer","slots":["patient-chart-results-viewer-slot","patient-chart-test-results-dashboard-slot"],"component":"resultsViewer"},{"name":"lab-order-panel","component":"labOrderPanel","slots":["order-basket-slot","result-order-basket-slot"],"order":2}],"modals":[{"name":"timeline-results-modal","component":"timelineResultsModal"},{"name":"print-modal","component":"printModal"},{"name":"edit-lab-results-modal","component":"editLabResultsModal"}],"workspaces2":[{"name":"add-lab-order","component":"addLabOrderWorkspace","window":"patient-chart-order-basket"}],"version":"12.2.1"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openmrs/esm-patient-tests-app",
3
- "version": "12.2.0",
3
+ "version": "12.2.1",
4
4
  "license": "MPL-2.0",
5
5
  "description": "Patient test order and results microfrontend for the OpenMRS SPA",
6
6
  "browser": "dist/openmrs-esm-patient-tests-app.js",
@@ -53,7 +53,7 @@
53
53
  "swr": "2.x"
54
54
  },
55
55
  "devDependencies": {
56
- "@openmrs/esm-patient-common-lib": "12.2.0",
56
+ "@openmrs/esm-patient-common-lib": "12.2.1",
57
57
  "openmrs": "next",
58
58
  "vitest": "^4.1.2"
59
59
  }
@@ -262,6 +262,91 @@ describe('FilterContext', () => {
262
262
  });
263
263
  });
264
264
 
265
+ it('should collapse duplicate branches in timeline data and keep alias filters working', async () => {
266
+ const user = userEvent.setup();
267
+ const sharedConceptUuid = '729AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA';
268
+ const primaryFlatName = 'Hematology-Complete blood count-Platelets';
269
+ const selectedFlatName = 'Chemistry-Complete blood count-Platelets';
270
+ const sharedObs = [{ obsDatetime: '2024-11-04T05:48:00.000Z', value: '56.0', interpretation: 'LOW' as const }];
271
+
272
+ const roots: Array<TreeNode> = [
273
+ {
274
+ display: 'Hematology',
275
+ flatName: 'Hematology',
276
+ hasData: true,
277
+ subSets: [
278
+ {
279
+ display: 'Complete blood count',
280
+ flatName: 'Hematology-Complete blood count',
281
+ hasData: true,
282
+ subSets: [
283
+ {
284
+ display: 'Platelets',
285
+ flatName: primaryFlatName,
286
+ conceptUuid: sharedConceptUuid,
287
+ hasData: true,
288
+ obs: sharedObs,
289
+ subSets: [],
290
+ },
291
+ ],
292
+ },
293
+ ],
294
+ },
295
+ {
296
+ display: 'Chemistry',
297
+ flatName: 'Chemistry',
298
+ hasData: true,
299
+ subSets: [
300
+ {
301
+ display: 'Complete blood count',
302
+ flatName: 'Chemistry-Complete blood count',
303
+ hasData: true,
304
+ subSets: [
305
+ {
306
+ display: 'Platelets',
307
+ flatName: selectedFlatName,
308
+ conceptUuid: sharedConceptUuid,
309
+ hasData: true,
310
+ obs: sharedObs,
311
+ subSets: [],
312
+ },
313
+ ],
314
+ },
315
+ ],
316
+ },
317
+ ];
318
+
319
+ const TimelineAliasConsumer = () => {
320
+ const { toggleVal, timelineData } = useContext(FilterContext);
321
+ const rows = timelineData?.data?.rowData ?? [];
322
+
323
+ return (
324
+ <div>
325
+ <div data-testid="timeline-rows">{rows.length}</div>
326
+ <div data-testid="timeline-flat-names">{rows.flatMap((row) => row.flatNames ?? []).join(',')}</div>
327
+ <button onClick={() => toggleVal(selectedFlatName)}>Toggle Chemistry Platelets</button>
328
+ </div>
329
+ );
330
+ };
331
+
332
+ render(
333
+ <FilterProvider roots={roots} isLoading={false}>
334
+ <TimelineAliasConsumer />
335
+ </FilterProvider>,
336
+ );
337
+
338
+ await waitFor(() => {
339
+ expect(screen.getByTestId('timeline-rows')).toHaveTextContent('1');
340
+ });
341
+ expect(screen.getByTestId('timeline-flat-names')).toHaveTextContent(selectedFlatName);
342
+
343
+ await user.click(screen.getByRole('button', { name: /toggle chemistry platelets/i }));
344
+
345
+ await waitFor(() => {
346
+ expect(screen.getByTestId('timeline-rows')).toHaveTextContent('1');
347
+ });
348
+ });
349
+
265
350
  it('should sort timeline observations by date descending', async () => {
266
351
  const TimelineDetailsComponent = () => {
267
352
  const { timelineData } = useContext(FilterContext);
@@ -486,6 +571,161 @@ describe('FilterContext', () => {
486
571
  });
487
572
  });
488
573
 
574
+ describe('Normalized branch counts and true duplicate results', () => {
575
+ const sharedConceptUuid = '729AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA';
576
+ const obsAt = (value: string) => ({
577
+ obsDatetime: '2024-11-04T05:48:00.000Z',
578
+ value,
579
+ interpretation: 'LOW' as const,
580
+ });
581
+
582
+ const CountsConsumer = () => {
583
+ const { tableData, totalResultsCount } = useContext(FilterContext);
584
+ const plateletEntries = (tableData ?? [])
585
+ .flatMap((group) => group.entries)
586
+ .filter((entry) => entry.conceptUuid === sharedConceptUuid);
587
+
588
+ return (
589
+ <div>
590
+ <div data-testid="platelet-entry-count">{plateletEntries.length}</div>
591
+ <div data-testid="total-results-count">{totalResultsCount}</div>
592
+ </div>
593
+ );
594
+ };
595
+
596
+ const plateletLeaf = (flatName: string, obs: Array<ReturnType<typeof obsAt>>) => ({
597
+ display: 'Platelets',
598
+ flatName,
599
+ conceptUuid: sharedConceptUuid,
600
+ hasData: true,
601
+ obs,
602
+ subSets: [],
603
+ });
604
+
605
+ it('keeps the header count aligned with rendered rows when duplicate branches differ in flatName', async () => {
606
+ // Two branches with different flatNames resolve to the same rendered
607
+ // panel ("Complete blood count") and carry copies of the same obs list.
608
+ // They collapse to one row, and the count must follow the rows.
609
+ const roots: Array<TreeNode> = [
610
+ {
611
+ display: 'Hematology',
612
+ flatName: 'Hematology',
613
+ hasData: true,
614
+ subSets: [
615
+ {
616
+ display: 'Complete blood count',
617
+ flatName: 'Hematology-Complete blood count',
618
+ hasData: true,
619
+ subSets: [plateletLeaf('Hematology-Complete blood count-Platelets', [obsAt('56.0')])],
620
+ },
621
+ ],
622
+ },
623
+ {
624
+ display: 'Chemistry',
625
+ flatName: 'Chemistry',
626
+ hasData: true,
627
+ subSets: [
628
+ {
629
+ display: 'Complete blood count',
630
+ flatName: 'Chemistry-Complete blood count',
631
+ hasData: true,
632
+ subSets: [plateletLeaf('Chemistry-Complete blood count-Platelets', [obsAt('56.0')])],
633
+ },
634
+ ],
635
+ },
636
+ ];
637
+
638
+ render(
639
+ <FilterProvider roots={roots} isLoading={false}>
640
+ <CountsConsumer />
641
+ </FilterProvider>,
642
+ );
643
+
644
+ await waitFor(() => {
645
+ expect(screen.getByTestId('platelet-entry-count')).toHaveTextContent('1');
646
+ });
647
+ expect(screen.getByTestId('total-results-count')).toHaveTextContent('1');
648
+ });
649
+
650
+ it('keeps the header count aligned with rendered rows when duplicate branches share a flatName', async () => {
651
+ // Two roots produce the identical leaf flatName, mirroring the default
652
+ // Hematology + Bloodwork config after augmentation drops the Bloodwork
653
+ // prefix. One result must render as one row and count as one result,
654
+ // regardless of which layer collapses the duplicate.
655
+ const roots: Array<TreeNode> = [
656
+ {
657
+ display: 'Hematology',
658
+ flatName: 'Hematology',
659
+ hasData: true,
660
+ subSets: [
661
+ {
662
+ display: 'Complete blood count',
663
+ flatName: 'Hematology-Complete blood count',
664
+ hasData: true,
665
+ subSets: [plateletLeaf('Hematology-Complete blood count-Platelets', [obsAt('56.0')])],
666
+ },
667
+ ],
668
+ },
669
+ {
670
+ display: 'Bloodwork',
671
+ flatName: 'Bloodwork',
672
+ hasData: true,
673
+ subSets: [
674
+ {
675
+ display: 'Complete blood count',
676
+ flatName: 'Hematology-Complete blood count',
677
+ hasData: true,
678
+ subSets: [plateletLeaf('Hematology-Complete blood count-Platelets', [obsAt('56.0')])],
679
+ },
680
+ ],
681
+ },
682
+ ];
683
+
684
+ render(
685
+ <FilterProvider roots={roots} isLoading={false}>
686
+ <CountsConsumer />
687
+ </FilterProvider>,
688
+ );
689
+
690
+ await waitFor(() => {
691
+ expect(screen.getByTestId('platelet-entry-count')).toHaveTextContent('1');
692
+ });
693
+ expect(screen.getByTestId('total-results-count')).toHaveTextContent('1');
694
+ });
695
+
696
+ it('keeps two genuinely distinct results with equal value and datetime as two rows', async () => {
697
+ // Equal obs within a single branch's list are distinct real results
698
+ // (e.g. one result per order, entered against the same encounter), not
699
+ // copies. Both must render and both must count.
700
+ const roots: Array<TreeNode> = [
701
+ {
702
+ display: 'Hematology',
703
+ flatName: 'Hematology',
704
+ hasData: true,
705
+ subSets: [
706
+ {
707
+ display: 'Complete blood count',
708
+ flatName: 'Hematology-Complete blood count',
709
+ hasData: true,
710
+ subSets: [plateletLeaf('Hematology-Complete blood count-Platelets', [obsAt('56.0'), obsAt('56.0')])],
711
+ },
712
+ ],
713
+ },
714
+ ];
715
+
716
+ render(
717
+ <FilterProvider roots={roots} isLoading={false}>
718
+ <CountsConsumer />
719
+ </FilterProvider>,
720
+ );
721
+
722
+ await waitFor(() => {
723
+ expect(screen.getByTestId('platelet-entry-count')).toHaveTextContent('2');
724
+ });
725
+ expect(screen.getByTestId('total-results-count')).toHaveTextContent('2');
726
+ });
727
+ });
728
+
489
729
  describe('Actions', () => {
490
730
  it('should toggle individual test via toggleVal', async () => {
491
731
  const user = userEvent.setup();