@openmrs/esm-app-shell 4.1.1-pre.588 → 4.1.1-pre.591

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.
@@ -1,9 +1,9 @@
1
- @openmrs/esm-app-shell:build: cache hit, replaying output f6d4e4a762e3fffb
1
+ @openmrs/esm-app-shell:build: cache hit, replaying output dc6611fca16901a4
2
2
  @openmrs/esm-app-shell:build: 
3
- @openmrs/esm-app-shell:build: > @openmrs/esm-app-shell@4.1.1-pre.588 build:production
3
+ @openmrs/esm-app-shell:build: > @openmrs/esm-app-shell@4.1.1-pre.591 build:production
4
4
  @openmrs/esm-app-shell:build: > cross-env OMRS_ESM_IMPORTMAP_URL="https://dev3.openmrs.org/openmrs/spa/importmap.json" OMRS_OFFLINE="enable" NODE_ENV="production" webpack --mode production
5
5
  @openmrs/esm-app-shell:build: 
6
- @openmrs/esm-app-shell:build: (node:3050) [DEP_WEBPACK_COMPILATION_ASSETS] DeprecationWarning: Compilation.assets will be frozen in future, all modifications are deprecated.
6
+ @openmrs/esm-app-shell:build: (node:2969) [DEP_WEBPACK_COMPILATION_ASSETS] DeprecationWarning: Compilation.assets will be frozen in future, all modifications are deprecated.
7
7
  @openmrs/esm-app-shell:build: BREAKING CHANGE: No more changes should happen to Compilation.assets after sealing the Compilation.
8
8
  @openmrs/esm-app-shell:build:  Do changes to assets earlier, e. g. in Compilation.hooks.processAssets.
9
9
  @openmrs/esm-app-shell:build:  Make sure to select an appropriate stage from Compilation.PROCESS_ASSETS_STAGE_*.
@@ -23,7 +23,7 @@
23
23
  @openmrs/esm-app-shell:build: asset logo.svg 1.33 KiB [emitted] [from: src/assets/logo.svg] [copied]
24
24
  @openmrs/esm-app-shell:build: asset manifest.c61e464ba60302bdc2442acdd49954f1.json 1.2 KiB [emitted]
25
25
  @openmrs/esm-app-shell:build: asset favicon.ico 1.12 KiB [emitted] [from: src/assets/favicon.ico] [copied]
26
- @openmrs/esm-app-shell:build: Entrypoint main [big] 1.83 MiB (1.54 MiB) = openmrs.4f0169b191f2e8a9ab65.css 659 KiB openmrs.22c29def2ea54d1512cc.js 1.19 MiB 2 auxiliary assets
26
+ @openmrs/esm-app-shell:build: Entrypoint main [big] 1.83 MiB (1.54 MiB) = openmrs.4f0169b191f2e8a9ab65.css 659 KiB openmrs.9ce0b5c2a3de4f089a36.js 1.19 MiB 2 auxiliary assets
27
27
  @openmrs/esm-app-shell:build: orphan modules 5.68 MiB (javascript) 2.4 MiB (asset) 8.23 KiB (runtime) [orphan] 1240 modules
28
28
  @openmrs/esm-app-shell:build: runtime modules 19.2 KiB 15 modules
29
29
  @openmrs/esm-app-shell:build: built modules 3.92 MiB (javascript) 666 KiB (css/mini-extract) 420 bytes (share-init) 420 bytes (consume-shared) [built]
@@ -48,21 +48,21 @@
48
48
  @openmrs/esm-app-shell:build: This can impact web performance.
49
49
  @openmrs/esm-app-shell:build: Assets:
50
50
  @openmrs/esm-app-shell:build:  openmrs.4f0169b191f2e8a9ab65.css (659 KiB)
51
- @openmrs/esm-app-shell:build:  openmrs.22c29def2ea54d1512cc.js (1.19 MiB)
51
+ @openmrs/esm-app-shell:build:  openmrs.9ce0b5c2a3de4f089a36.js (1.19 MiB)
52
52
  @openmrs/esm-app-shell:build: 
53
53
  @openmrs/esm-app-shell:build: WARNING in entrypoint size limit: The following entrypoint(s) combined asset size exceeds the recommended limit (244 KiB). This can impact web performance.
54
54
  @openmrs/esm-app-shell:build: Entrypoints:
55
55
  @openmrs/esm-app-shell:build:  main (1.83 MiB)
56
56
  @openmrs/esm-app-shell:build:  openmrs.4f0169b191f2e8a9ab65.css
57
- @openmrs/esm-app-shell:build:  openmrs.22c29def2ea54d1512cc.js
57
+ @openmrs/esm-app-shell:build:  openmrs.9ce0b5c2a3de4f089a36.js
58
58
  @openmrs/esm-app-shell:build: 
59
59
  @openmrs/esm-app-shell:build: 
60
- @openmrs/esm-app-shell:build: webpack 5.74.0 compiled with 2 warnings in 56472 ms
60
+ @openmrs/esm-app-shell:build: webpack 5.74.0 compiled with 2 warnings in 130087 ms
61
61
  @openmrs/esm-app-shell:build: 
62
- @openmrs/esm-app-shell:build: > @openmrs/esm-app-shell@4.1.1-pre.588 build:development
62
+ @openmrs/esm-app-shell:build: > @openmrs/esm-app-shell@4.1.1-pre.591 build:development
63
63
  @openmrs/esm-app-shell:build: > cross-env OMRS_OFFLINE="enable" NODE_ENV="development" webpack --mode development
64
64
  @openmrs/esm-app-shell:build: 
65
- @openmrs/esm-app-shell:build: (node:3119) [DEP_WEBPACK_COMPILATION_ASSETS] DeprecationWarning: Compilation.assets will be frozen in future, all modifications are deprecated.
65
+ @openmrs/esm-app-shell:build: (node:3201) [DEP_WEBPACK_COMPILATION_ASSETS] DeprecationWarning: Compilation.assets will be frozen in future, all modifications are deprecated.
66
66
  @openmrs/esm-app-shell:build: BREAKING CHANGE: No more changes should happen to Compilation.assets after sealing the Compilation.
67
67
  @openmrs/esm-app-shell:build:  Do changes to assets earlier, e. g. in Compilation.hooks.processAssets.
68
68
  @openmrs/esm-app-shell:build:  Make sure to select an appropriate stage from Compilation.PROCESS_ASSETS_STAGE_*.
@@ -99,4 +99,4 @@
99
99
  @openmrs/esm-app-shell:build: <i> The service worker at service-worker.js will precache
100
100
  @openmrs/esm-app-shell:build: <i>  187 URLs, totaling 26.7 MB.
101
101
  @openmrs/esm-app-shell:build: 
102
- @openmrs/esm-app-shell:build: webpack 5.74.0 compiled successfully in 11803 ms
102
+ @openmrs/esm-app-shell:build: webpack 5.74.0 compiled successfully in 12982 ms
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_openmrs_esm_app_shell=self.webpackChunk_openmrs_esm_app_shell||[]).push([[533],{8533:(e,t,r)=>{r.r(t),r.d(t,{Breadcrumbs:()=>y,CustomBreadcrumbItem:()=>v,default:()=>w});var n=r(7959),s=r.n(n),a=r(3866),o=r(3963),i=Object.defineProperty,c=Object.defineProperties,l=Object.getOwnPropertyDescriptors,u=Object.getOwnPropertySymbols,p=Object.prototype.hasOwnProperty,m=Object.prototype.propertyIsEnumerable,b=(e,t,r)=>t in e?i(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,f=(e,t)=>{for(var r in t||(t={}))p.call(t,r)&&b(e,r,t[r]);if(u)for(var r of u(t))m.call(t,r)&&b(e,r,t[r]);return e},d=(e,t)=>c(e,l(t));function g(e,t){const r=[...t];return e.replace(/:([A-Za-z0-9_]+)/g,(e=>{var t;return null!=(t=r.shift())?t:e}))}function h(e,t){const r=null==t?void 0:t.exec(e);if(r){const[,...e]=r;return e}{const r=e.split("/");if(r.pop(),r.length>1)return h(r.join("/"),t)}return[]}const v=({breadcrumbRegistration:e,params:t})=>{const[r,i]=(0,n.useState)("");return(0,n.useEffect)((()=>{"function"==typeof e.settings.title?Promise.resolve(e.settings.title(t)).then((e=>i(e))):i(e.settings.title)}),[e,t]),s().createElement(a.BreadcrumbItem,{key:e.settings.path},s().createElement(o.ConfigurableLink,{to:g(e.settings.path,t)},r||s().createElement(a.InlineLoading,null)))},y=()=>{const[e,t]=(0,n.useState)(location.pathname),r=(0,o.getBreadcrumbsFor)(e),i=r[r.length-1],c=h(e,null==i?void 0:i.matcher);return(0,n.useEffect)((()=>{const e=()=>t(location.pathname);return window.addEventListener("popstate",e),()=>window.removeEventListener("popstate",e)}),[]),r.length>4&&r.splice(1,r.length-3,d(f({},r[1]),{settings:d(f({},r[1].settings),{title:"..."})})),s().createElement(a.Breadcrumb,{className:"breadcrumbs-container"},r.map(((e,t)=>s().createElement(v,{key:`breadcrumb-item-${t}`,breadcrumbRegistration:e,params:c}))))},w=y}}]);
1
+ "use strict";(self.webpackChunk_openmrs_esm_app_shell=self.webpackChunk_openmrs_esm_app_shell||[]).push([[533],{8533:(e,t,r)=>{r.r(t),r.d(t,{Breadcrumbs:()=>y,CustomBreadcrumbItem:()=>v,default:()=>w});var n=r(7959),s=r.n(n),a=r(3866),o=r(4954),i=Object.defineProperty,c=Object.defineProperties,l=Object.getOwnPropertyDescriptors,u=Object.getOwnPropertySymbols,p=Object.prototype.hasOwnProperty,m=Object.prototype.propertyIsEnumerable,b=(e,t,r)=>t in e?i(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,f=(e,t)=>{for(var r in t||(t={}))p.call(t,r)&&b(e,r,t[r]);if(u)for(var r of u(t))m.call(t,r)&&b(e,r,t[r]);return e},d=(e,t)=>c(e,l(t));function g(e,t){const r=[...t];return e.replace(/:([A-Za-z0-9_]+)/g,(e=>{var t;return null!=(t=r.shift())?t:e}))}function h(e,t){const r=null==t?void 0:t.exec(e);if(r){const[,...e]=r;return e}{const r=e.split("/");if(r.pop(),r.length>1)return h(r.join("/"),t)}return[]}const v=({breadcrumbRegistration:e,params:t})=>{const[r,i]=(0,n.useState)("");return(0,n.useEffect)((()=>{"function"==typeof e.settings.title?Promise.resolve(e.settings.title(t)).then((e=>i(e))):i(e.settings.title)}),[e,t]),s().createElement(a.BreadcrumbItem,{key:e.settings.path},s().createElement(o.ConfigurableLink,{to:g(e.settings.path,t)},r||s().createElement(a.InlineLoading,null)))},y=()=>{const[e,t]=(0,n.useState)(location.pathname),r=(0,o.getBreadcrumbsFor)(e),i=r[r.length-1],c=h(e,null==i?void 0:i.matcher);return(0,n.useEffect)((()=>{const e=()=>t(location.pathname);return window.addEventListener("popstate",e),()=>window.removeEventListener("popstate",e)}),[]),r.length>4&&r.splice(1,r.length-3,d(f({},r[1]),{settings:d(f({},r[1].settings),{title:"..."})})),s().createElement(a.Breadcrumb,{className:"breadcrumbs-container"},r.map(((e,t)=>s().createElement(v,{key:`breadcrumb-item-${t}`,breadcrumbRegistration:e,params:c}))))},w=y}}]);
@@ -1 +1 @@
1
- {"version":3,"file":"db11b7b4e81b8454c61c.js","mappings":"8oBAQA,SAASA,EAAQC,EAAcC,GAC7B,MAAMC,EAAQ,IAAID,GAClB,OAAOD,EAAKG,QAAQ,qBAAsBC,IAV5C,MAUkD,gBAAAF,EAAMG,SAAN,EAAiBD,CAAC,GACpE,CAEA,SAASE,EAAUN,EAAcO,GAC/B,MAAMC,EAAQ,MAAAD,OAAA,EAAAA,EAASE,KAAKT,GAE5B,GAAIQ,EAAO,CACT,MAAO,IAAKP,GAAUO,EACtB,OAAOP,CACT,CAAO,CACL,MAAMS,EAAWV,EAAKW,MAAM,KAG5B,GAFAD,EAASE,MAELF,EAASG,OAAS,EAEpB,OAAOP,EADSI,EAASI,KAAK,KACJP,EAE9B,CAEA,MAAO,EACT,CAOO,MAAMQ,EAA4D,EACvEC,yBACAf,aAEA,MAAOgB,EAAOC,IAAY,IAAAC,UAAS,IAYnC,OAVA,IAAAC,YAAU,KAC6C,mBAA1CJ,EAAuBK,SAASJ,MACzCK,QAAQC,QAAQP,EAAuBK,SAASJ,MAAMhB,IAASuB,MAC5DC,GAAQP,EAASO,KAGpBP,EAASF,EAAuBK,SAASJ,MAC3C,GACC,CAACD,EAAwBf,IAG1B,kBAAC,EAAAyB,eAAc,CAACC,IAAKX,EAAuBK,SAASrB,MACnD,kBAAC,EAAA4B,iBAAgB,CACfC,GAAI9B,EAAQiB,EAAuBK,SAASrB,KAAMC,IAEjDgB,GAAgB,kBAAC,EAAAa,cAAa,OAEnC,EAISC,EAAwB,KACnC,MAAO/B,EAAMgC,IAAW,IAAAb,UAASc,SAASC,UACpCC,GAAc,IAAAC,mBAAkBpC,GAChCqC,EAAYF,EAAYA,EAAYtB,OAAS,GAC7CZ,EAASK,EAAUN,EAAM,MAAAqC,OAAA,EAAAA,EAAW9B,SAkB1C,OAhBA,IAAAa,YAAU,KACR,MAAMkB,EAAU,IAAMN,EAAQC,SAASC,UAEvC,OADAK,OAAOC,iBAAiB,WAAYF,GAC7B,IAAMC,OAAOE,oBAAoB,WAAYH,EAAQ,GAC3D,IAECH,EAAYtB,OAAS,GACvBsB,EAAYO,OAAO,EAAGP,EAAYtB,OAAS,EAAG,OACzCsB,EAAY,IAD6B,CAE5Cd,SAAU,OACLc,EAAY,GAAGd,UADV,CAERJ,MAAO,WAMX,kBAAC,EAAA0B,WAAU,CAACC,UAAU,yBACnBT,EAAYU,KAAI,CAACC,EAAIC,IACpB,kBAAChC,EAAA,CACCY,IAAK,mBAAmBoB,IACxB/B,uBAAwB8B,EACxB7C,aAGN,EAIJ,G","sources":["webpack://@openmrs/esm-app-shell/./src/ui/breadcrumbs.tsx"],"names":["getPath","path","params","parts","replace","s","shift","getParams","matcher","match","exec","segments","split","pop","length","join","CustomBreadcrumbItem","breadcrumbRegistration","title","setTitle","useState","useEffect","settings","Promise","resolve","then","res","BreadcrumbItem","key","ConfigurableLink","to","InlineLoading","Breadcrumbs","setPath","location","pathname","breadcrumbs","getBreadcrumbsFor","currentBc","handler","window","addEventListener","removeEventListener","splice","Breadcrumb","className","map","bc","index"],"sourceRoot":""}
1
+ {"version":3,"file":"6ca6c96aba55ce824592.js","mappings":"8oBAQA,SAASA,EAAQC,EAAcC,GAC7B,MAAMC,EAAQ,IAAID,GAClB,OAAOD,EAAKG,QAAQ,qBAAsBC,IAV5C,MAUkD,gBAAAF,EAAMG,SAAN,EAAiBD,CAAC,GACpE,CAEA,SAASE,EAAUN,EAAcO,GAC/B,MAAMC,EAAQ,MAAAD,OAAA,EAAAA,EAASE,KAAKT,GAE5B,GAAIQ,EAAO,CACT,MAAO,IAAKP,GAAUO,EACtB,OAAOP,CACT,CAAO,CACL,MAAMS,EAAWV,EAAKW,MAAM,KAG5B,GAFAD,EAASE,MAELF,EAASG,OAAS,EAEpB,OAAOP,EADSI,EAASI,KAAK,KACJP,EAE9B,CAEA,MAAO,EACT,CAOO,MAAMQ,EAA4D,EACvEC,yBACAf,aAEA,MAAOgB,EAAOC,IAAY,IAAAC,UAAS,IAYnC,OAVA,IAAAC,YAAU,KAC6C,mBAA1CJ,EAAuBK,SAASJ,MACzCK,QAAQC,QAAQP,EAAuBK,SAASJ,MAAMhB,IAASuB,MAC5DC,GAAQP,EAASO,KAGpBP,EAASF,EAAuBK,SAASJ,MAC3C,GACC,CAACD,EAAwBf,IAG1B,kBAAC,EAAAyB,eAAc,CAACC,IAAKX,EAAuBK,SAASrB,MACnD,kBAAC,EAAA4B,iBAAgB,CACfC,GAAI9B,EAAQiB,EAAuBK,SAASrB,KAAMC,IAEjDgB,GAAgB,kBAAC,EAAAa,cAAa,OAEnC,EAISC,EAAwB,KACnC,MAAO/B,EAAMgC,IAAW,IAAAb,UAASc,SAASC,UACpCC,GAAc,IAAAC,mBAAkBpC,GAChCqC,EAAYF,EAAYA,EAAYtB,OAAS,GAC7CZ,EAASK,EAAUN,EAAM,MAAAqC,OAAA,EAAAA,EAAW9B,SAkB1C,OAhBA,IAAAa,YAAU,KACR,MAAMkB,EAAU,IAAMN,EAAQC,SAASC,UAEvC,OADAK,OAAOC,iBAAiB,WAAYF,GAC7B,IAAMC,OAAOE,oBAAoB,WAAYH,EAAQ,GAC3D,IAECH,EAAYtB,OAAS,GACvBsB,EAAYO,OAAO,EAAGP,EAAYtB,OAAS,EAAG,OACzCsB,EAAY,IAD6B,CAE5Cd,SAAU,OACLc,EAAY,GAAGd,UADV,CAERJ,MAAO,WAMX,kBAAC,EAAA0B,WAAU,CAACC,UAAU,yBACnBT,EAAYU,KAAI,CAACC,EAAIC,IACpB,kBAAChC,EAAA,CACCY,IAAK,mBAAmBoB,IACxB/B,uBAAwB8B,EACxB7C,aAGN,EAIJ,G","sources":["webpack://@openmrs/esm-app-shell/./src/ui/breadcrumbs.tsx"],"names":["getPath","path","params","parts","replace","s","shift","getParams","matcher","match","exec","segments","split","pop","length","join","CustomBreadcrumbItem","breadcrumbRegistration","title","setTitle","useState","useEffect","settings","Promise","resolve","then","res","BreadcrumbItem","key","ConfigurableLink","to","InlineLoading","Breadcrumbs","setPath","location","pathname","breadcrumbs","getBreadcrumbsFor","currentBc","handler","window","addEventListener","removeEventListener","splice","Breadcrumb","className","map","bc","index"],"sourceRoot":""}
package/dist/index.html CHANGED
@@ -1,4 +1,4 @@
1
- <!doctype html><html><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><title>OpenMRS</title><link rel="shortcut icon" type="image/x-icon" href="favicon.ico"><meta name="viewport" content="width=device-width,initial-scale=1"><meta name="importmap-type" content="systemjs-importmap"><link href="/openmrs/spa/openmrs.4f0169b191f2e8a9ab65.css" rel="stylesheet"><link rel="preload" href="https://dev3.openmrs.org/openmrs/spa/importmap.json" as="fetch" crossorigin="anonymous"><script type="systemjs-importmap" src="https://dev3.openmrs.org/openmrs/spa/importmap.json"></script><meta name="theme-color" content="#000000" /><link rel="manifest" href="manifest.c61e464ba60302bdc2442acdd49954f1.json" /></head><body><script src="/openmrs/spa/openmrs.22c29def2ea54d1512cc.js"></script><div class="omrs-toasts-container"></div><div class="omrs-inline-notifications-container"></div><div class="omrs-actionable-notifications-container"></div><div class="omrs-modals-container"></div><template id="loading-spinner"><div class="omrs-loading-spinner"><div data-inline-loading="" class="cds--inline-loading" role="alert" aria-live="assertive"><div class="cds--inline-loading__animation"><div data-inline-loading-spinner="" class="cds--loading cds--loading--small"><svg class="cds--loading__svg" viewBox="-75 -75 150 150"><circle class="cds--loading__background" cx="0" cy="0" r="26.8125"></circle><circle class="cds--loading__stroke" cx="0" cy="0" r="26.8125"></circle></svg></div></div><p data-inline-loading-text-active="" class="cds--inline-loading__text">Loading ...</p></div></div></template><template id="app-error"><div class="omrs-app-error"><h1>Application Error</h1><p>Something went wrong. Please try reloading.</p><p>If the problem persists contact your system administrator.</p><div id="buttons"><button class="cds--btn cds--btn--primary" onclick="location.reload()">Reload</button></div><div class="cds--snippet cds--snippet--single"><div tabindex="0" class="cds--snippet-container" aria-label="Code Snippet Text"><pre>
1
+ <!doctype html><html><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><title>OpenMRS</title><link rel="shortcut icon" type="image/x-icon" href="favicon.ico"><meta name="viewport" content="width=device-width,initial-scale=1"><meta name="importmap-type" content="systemjs-importmap"><link href="/openmrs/spa/openmrs.4f0169b191f2e8a9ab65.css" rel="stylesheet"><link rel="preload" href="https://dev3.openmrs.org/openmrs/spa/importmap.json" as="fetch" crossorigin="anonymous"><script type="systemjs-importmap" src="https://dev3.openmrs.org/openmrs/spa/importmap.json"></script><meta name="theme-color" content="#000000" /><link rel="manifest" href="manifest.c61e464ba60302bdc2442acdd49954f1.json" /></head><body><script src="/openmrs/spa/openmrs.9ce0b5c2a3de4f089a36.js"></script><div class="omrs-toasts-container"></div><div class="omrs-inline-notifications-container"></div><div class="omrs-actionable-notifications-container"></div><div class="omrs-modals-container"></div><template id="loading-spinner"><div class="omrs-loading-spinner"><div data-inline-loading="" class="cds--inline-loading" role="alert" aria-live="assertive"><div class="cds--inline-loading__animation"><div data-inline-loading-spinner="" class="cds--loading cds--loading--small"><svg class="cds--loading__svg" viewBox="-75 -75 150 150"><circle class="cds--loading__background" cx="0" cy="0" r="26.8125"></circle><circle class="cds--loading__stroke" cx="0" cy="0" r="26.8125"></circle></svg></div></div><p data-inline-loading-text-active="" class="cds--inline-loading__text">Loading ...</p></div></div></template><template id="app-error"><div class="omrs-app-error"><h1>Application Error</h1><p>Something went wrong. Please try reloading.</p><p>If the problem persists contact your system administrator.</p><div id="buttons"><button class="cds--btn cds--btn--primary" onclick="location.reload()">Reload</button></div><div class="cds--snippet cds--snippet--single"><div tabindex="0" class="cds--snippet-container" aria-label="Code Snippet Text"><pre>
2
2
  <code data-var="message"></code>
3
3
  </pre></div><button data-copy-btn class="cds--copy-btn" type="button" tabindex="0" onclick="copyText(this.parentElement)"><span class="cds--assistive-text cds--copy-btn__feedback">Copied!</span> <svg focusable="false" preserveAspectRatio="xMidYMid meet" style="will-change: transform;" xmlns="http://www.w3.org/2000/svg" class="cds--snippet__icon" width="16" height="16" viewBox="0 0 16 16" aria-hidden="true"><path d="M14,5v9H5V5h9m0-1H5A1,1,0,0,0,4,5v9a1,1,0,0,0,1,1h9a1,1,0,0,0,1-1V5a1,1,0,0,0-1-1Z"></path><path d="M2,9H1V2A1,1,0,0,1,2,1H9V2H2Z"></path></svg></button></div></div></template><script>initializeSpa({
4
4
  apiUrl: "/openmrs",