@openmrs/esm-config 4.0.0-pre.0 → 4.0.0-pre.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.
Files changed (31) hide show
  1. package/.turbo/turbo-build.log +10 -10
  2. package/.turbo/turbo-lint.log +1 -1
  3. package/.turbo/turbo-test.log +9 -8
  4. package/.turbo/turbo-typescript.log +2 -2
  5. package/dist/__mocks__/openmrs-esm-state.mock.d.ts +12 -0
  6. package/dist/openmrs-esm-module-config.js +1 -1
  7. package/dist/openmrs-esm-module-config.js.map +1 -1
  8. package/dist/src/index.d.ts +7 -0
  9. package/dist/src/module-config/module-config.d.ts +57 -0
  10. package/dist/src/module-config/module-config.test.d.ts +1 -0
  11. package/dist/src/module-config/state.d.ts +109 -0
  12. package/dist/src/navigation/interpolate-string.d.ts +34 -0
  13. package/dist/src/navigation/interpolate-string.test.d.ts +1 -0
  14. package/dist/src/navigation/navigate.d.ts +26 -0
  15. package/dist/src/navigation/navigate.test.d.ts +1 -0
  16. package/dist/src/public.d.ts +7 -0
  17. package/dist/src/types.d.ts +49 -0
  18. package/dist/src/validators/type-validators.d.ts +6 -0
  19. package/dist/src/validators/type-validators.test.d.ts +1 -0
  20. package/dist/src/validators/validator.d.ts +24 -0
  21. package/dist/src/validators/validators.d.ts +32 -0
  22. package/dist/src/validators/validators.test.d.ts +1 -0
  23. package/package.json +4 -4
  24. package/src/module-config/module-config.test.ts +63 -5
  25. package/src/module-config/module-config.ts +100 -42
  26. package/src/navigation/interpolate-string.test.ts +3 -3
  27. package/src/navigation/interpolate-string.ts +10 -2
  28. package/src/navigation/navigate.ts +10 -4
  29. package/src/validators/validator.ts +27 -2
  30. package/src/validators/validators.test.ts +18 -1
  31. package/src/validators/validators.ts +13 -1
@@ -1,10 +1,10 @@
1
- @openmrs/esm-config:build: cache hit, replaying output c9610a44a657f39e
2
- @openmrs/esm-config:build: $ webpack --mode=production
3
- @openmrs/esm-config:build: asset openmrs-esm-module-config.js 23.9 KiB [emitted] [minimized] (name: main) 1 related asset
4
- @openmrs/esm-config:build: orphan modules 372 KiB [orphan] 337 modules
5
- @openmrs/esm-config:build: runtime modules 670 bytes 3 modules
6
- @openmrs/esm-config:build: built modules 73.7 KiB [built]
7
- @openmrs/esm-config:build:  ./src/index.ts + 37 modules 73.6 KiB [built] [code generated]
8
- @openmrs/esm-config:build:  external "@openmrs/esm-state" 42 bytes [built] [code generated]
9
- @openmrs/esm-config:build:  external "single-spa" 42 bytes [built] [code generated]
10
- @openmrs/esm-config:build: webpack 5.70.0 compiled successfully in 7070 ms
1
+ @openmrs/esm-config:build: cache hit, replaying output 964e0b77adc5be1a
2
+ @openmrs/esm-config:build: $ webpack --mode=production
3
+ @openmrs/esm-config:build: asset openmrs-esm-module-config.js 25.1 KiB [emitted] [minimized] (name: main) 1 related asset
4
+ @openmrs/esm-config:build: orphan modules 377 KiB [orphan] 337 modules
5
+ @openmrs/esm-config:build: runtime modules 670 bytes 3 modules
6
+ @openmrs/esm-config:build: built modules 78.4 KiB [built]
7
+ @openmrs/esm-config:build:  ./src/index.ts + 37 modules 78.3 KiB [built] [code generated]
8
+ @openmrs/esm-config:build:  external "@openmrs/esm-state" 42 bytes [built] [code generated]
9
+ @openmrs/esm-config:build:  external "single-spa" 42 bytes [built] [code generated]
10
+ @openmrs/esm-config:build: webpack 5.70.0 compiled successfully in 19284 ms
@@ -1,2 +1,2 @@
1
- @openmrs/esm-config:lint: cache hit, replaying output e059960089b05a38
1
+ @openmrs/esm-config:lint: cache hit, replaying output ac36db9f16ee508a
2
2
  @openmrs/esm-config:lint: $ eslint src --ext ts,tsx
@@ -1,13 +1,14 @@
1
- @openmrs/esm-config:test: cache hit, replaying output 938f45b775e0cbf4
1
+ @openmrs/esm-config:test: cache hit, replaying output 32d5ac35904e3f38
2
2
  @openmrs/esm-config:test: $ jest --config jest.config.js --passWithNoTests
3
- @openmrs/esm-config:test: PASS src/navigation/navigate.test.ts
4
- @openmrs/esm-config:test: PASS src/validators/validators.test.ts
5
- @openmrs/esm-config:test: PASS src/navigation/interpolate-string.test.ts
6
- @openmrs/esm-config:test: PASS src/validators/type-validators.test.ts
7
- @openmrs/esm-config:test: PASS src/module-config/module-config.test.ts
3
+ @openmrs/esm-config:test: PASS src/navigation/interpolate-string.test.ts (9.469 s)
4
+ @openmrs/esm-config:test: PASS src/navigation/navigate.test.ts (9.834 s)
5
+ @openmrs/esm-config:test: PASS src/validators/type-validators.test.ts (11.882 s)
6
+ @openmrs/esm-config:test: PASS src/validators/validators.test.ts (11.453 s)
7
+ @openmrs/esm-config:test: PASS src/module-config/module-config.test.ts (14.864 s)
8
+ @openmrs/esm-config:test: A worker process has failed to exit gracefully and has been force exited. This is likely caused by tests leaking due to improper teardown. Try running with --detectOpenHandles to find leaks. Active timers can also cause this, ensure that .unref() was called on them.
8
9
  @openmrs/esm-config:test: 
9
10
  @openmrs/esm-config:test: Test Suites: 5 passed, 5 total
10
- @openmrs/esm-config:test: Tests: 1 skipped, 85 passed, 86 total
11
+ @openmrs/esm-config:test: Tests: 1 skipped, 90 passed, 91 total
11
12
  @openmrs/esm-config:test: Snapshots: 0 total
12
- @openmrs/esm-config:test: Time: 9.879 s
13
+ @openmrs/esm-config:test: Time: 25.459 s
13
14
  @openmrs/esm-config:test: Ran all test suites.
@@ -1,2 +1,2 @@
1
- @openmrs/esm-config:typescript: cache hit, replaying output 2eb1242b6e77246a
2
- @openmrs/esm-config:typescript: $ tsc
1
+ @openmrs/esm-config:typescript: cache hit, replaying output c85bbabc15f153a5
2
+ @openmrs/esm-config:typescript: $ tsc
@@ -0,0 +1,12 @@
1
+ import { Store } from "unistore";
2
+ interface StoreEntity {
3
+ value: Store<any>;
4
+ active: boolean;
5
+ }
6
+ export declare type MockedStore<T> = Store<T> & {
7
+ resetMock: () => void;
8
+ };
9
+ export declare const mockStores: Record<string, StoreEntity>;
10
+ export declare function createGlobalStore<TState>(name: string, initialState: TState): Store<TState>;
11
+ export declare function getGlobalStore<TState = any>(name: string, fallbackState?: TState): Store<TState>;
12
+ export {};
@@ -1,2 +1,2 @@
1
- System.register(["@openmrs/esm-state","single-spa"],(function(e,t){var n={},r={};return{setters:[function(e){n.createGlobalStore=e.createGlobalStore,n.getGlobalStore=e.getGlobalStore},function(e){r.navigateToUrl=e.navigateToUrl}],execute:function(){e((()=>{"use strict";var e={685:e=>{e.exports=n},645:e=>{e.exports=r}},t={};function o(n){var r=t[n];if(void 0!==r)return r.exports;var a=t[n]={exports:{}};return e[n](a,a.exports,o),a.exports}o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};return(()=>{function e(e){return null!=e&&"object"==typeof e&&!0===e["@@functional/placeholder"]}function t(t){return function n(r){return 0===arguments.length||e(r)?n:t.apply(this,arguments)}}function n(n){return function r(o,a){switch(arguments.length){case 0:return r;case 1:return e(o)?r:t((function(e){return n(o,e)}));default:return e(o)&&e(a)?r:e(o)?t((function(e){return n(e,a)})):e(a)?t((function(e){return n(o,e)})):n(o,a)}}}function r(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}function i(e,t,n){for(var r=0,o=n.length;r<o;){if(e(t,n[r]))return!0;r+=1}return!1}function u(e,t){return Object.prototype.hasOwnProperty.call(t,e)}o.r(a),o.d(a,{Type:()=>G,configExtensionStore:()=>Y,configInternalStore:()=>H,defineConfigSchema:()=>be,defineExtensionConfigSchema:()=>me,getConfig:()=>Se,getConfigStore:()=>Z,getExtensionConfig:()=>oe,getExtensionConfigFromStore:()=>ae,getExtensionSlotConfig:()=>te,getExtensionSlotConfigFromStore:()=>ne,getExtensionSlotsConfigStore:()=>ee,getExtensionsConfigStore:()=>re,implementerToolsConfigStore:()=>ie,inRange:()=>Fe,interpolateString:()=>$e,interpolateUrl:()=>Me,isUrl:()=>ze,isUrlWithTemplateParameters:()=>We,navigate:()=>Je,processConfig:()=>Oe,provide:()=>he,temporaryConfigStore:()=>V,validator:()=>R,validators:()=>Le});const c="function"==typeof Object.is?Object.is:function(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t};var l=Object.prototype.toString,s=function(){return"[object Arguments]"===l.call(arguments)?function(e){return"[object Arguments]"===l.call(e)}:function(e){return u("callee",e)}}();const f=s;var y=!{toString:null}.propertyIsEnumerable("toString"),d=["constructor","valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],v=function(){return arguments.propertyIsEnumerable("length")}(),g=function(e,t){for(var n=0;n<e.length;){if(e[n]===t)return!0;n+=1}return!1};const p="function"!=typeof Object.keys||v?t((function(e){if(Object(e)!==e)return[];var t,n,r=[],o=v&&f(e);for(t in e)!u(t,e)||o&&"length"===t||(r[r.length]=t);if(y)for(n=d.length-1;n>=0;)u(t=d[n],e)&&!g(r,t)&&(r[r.length]=t),n-=1;return r})):t((function(e){return Object(e)!==e?[]:Object.keys(e)})),b=t((function(e){return null===e?"Null":void 0===e?"Undefined":Object.prototype.toString.call(e).slice(8,-1)}));function m(e,t,n,o){var a=r(e);function u(e,t){return h(e,t,n.slice(),o.slice())}return!i((function(e,t){return!i(u,t,e)}),r(t),a)}function h(e,t,n,r){if(c(e,t))return!0;var o,a,i=b(e);if(i!==b(t))return!1;if(null==e||null==t)return!1;if("function"==typeof e["fantasy-land/equals"]||"function"==typeof t["fantasy-land/equals"])return"function"==typeof e["fantasy-land/equals"]&&e["fantasy-land/equals"](t)&&"function"==typeof t["fantasy-land/equals"]&&t["fantasy-land/equals"](e);if("function"==typeof e.equals||"function"==typeof t.equals)return"function"==typeof e.equals&&e.equals(t)&&"function"==typeof t.equals&&t.equals(e);switch(i){case"Arguments":case"Array":case"Object":if("function"==typeof e.constructor&&"Promise"===(o=e.constructor,null==(a=String(o).match(/^function (\w*)/))?"":a[1]))return e===t;break;case"Boolean":case"Number":case"String":if(typeof e!=typeof t||!c(e.valueOf(),t.valueOf()))return!1;break;case"Date":if(!c(e.valueOf(),t.valueOf()))return!1;break;case"Error":return e.name===t.name&&e.message===t.message;case"RegExp":if(e.source!==t.source||e.global!==t.global||e.ignoreCase!==t.ignoreCase||e.multiline!==t.multiline||e.sticky!==t.sticky||e.unicode!==t.unicode)return!1}for(var l=n.length-1;l>=0;){if(n[l]===e)return r[l]===t;l-=1}switch(i){case"Map":return e.size===t.size&&m(e.entries(),t.entries(),n.concat([e]),r.concat([t]));case"Set":return e.size===t.size&&m(e.values(),t.values(),n.concat([e]),r.concat([t]));case"Arguments":case"Array":case"Object":case"Boolean":case"Number":case"String":case"Date":case"Error":case"RegExp":case"Int8Array":case"Uint8Array":case"Uint8ClampedArray":case"Int16Array":case"Uint16Array":case"Int32Array":case"Uint32Array":case"Float32Array":case"Float64Array":case"ArrayBuffer":break;default:return!1}var s=p(e);if(s.length!==p(t).length)return!1;var f=n.concat([e]),y=r.concat([t]);for(l=s.length-1;l>=0;){var d=s[l];if(!u(d,t)||!h(t[d],e[d],f,y))return!1;l-=1}return!0}const S=n((function(e,t){return h(e,t,[],[])}));function O(e,t,n,r){var o,a=function(o){for(var a=t.length,i=0;i<a;){if(e===t[i])return n[i];i+=1}for(var u in t[i+1]=e,n[i+1]=o,e)o[u]=r?O(e[u],t,n,!0):e[u];return o};switch(b(e)){case"Object":return a({});case"Array":return a([]);case"Date":return new Date(e.valueOf());case"RegExp":return o=e,new RegExp(o.source,(o.global?"g":"")+(o.ignoreCase?"i":"")+(o.multiline?"m":"")+(o.sticky?"y":"")+(o.unicode?"u":""));default:return e}}const j=t((function(e){return null!=e&&"function"==typeof e.clone?e.clone():O(e,[],[],!0)}));function w(r){return function o(a,i,u){switch(arguments.length){case 0:return o;case 1:return e(a)?o:n((function(e,t){return r(a,e,t)}));case 2:return e(a)&&e(i)?o:e(a)?n((function(e,t){return r(e,i,t)})):e(i)?n((function(e,t){return r(a,e,t)})):t((function(e){return r(a,i,e)}));default:return e(a)&&e(i)&&e(u)?o:e(a)&&e(i)?n((function(e,t){return r(e,t,u)})):e(a)&&e(u)?n((function(e,t){return r(e,i,t)})):e(i)&&e(u)?n((function(e,t){return r(a,e,t)})):e(a)?t((function(e){return r(e,i,u)})):e(i)?t((function(e){return r(a,e,u)})):e(u)?t((function(e){return r(a,i,e)})):r(a,i,u)}}}const x=Array.isArray||function(e){return null!=e&&e.length>=0&&"[object Array]"===Object.prototype.toString.call(e)},A=t((function(e){return!!x(e)||!!e&&"object"==typeof e&&!function(e){return"[object String]"===Object.prototype.toString.call(e)}(e)&&(1===e.nodeType?!!e.length:0===e.length||e.length>0&&e.hasOwnProperty(0)&&e.hasOwnProperty(e.length-1))}));var _=function(){function e(e){this.f=e}return e.prototype["@@transducer/init"]=function(){throw new Error("init not implemented on XWrap")},e.prototype["@@transducer/result"]=function(e){return e},e.prototype["@@transducer/step"]=function(e,t){return this.f(e,t)},e}(),k=n((function(e,t){return function(e,t){switch(e){case 0:return function(){return t.apply(this,arguments)};case 1:return function(e){return t.apply(this,arguments)};case 2:return function(e,n){return t.apply(this,arguments)};case 3:return function(e,n,r){return t.apply(this,arguments)};case 4:return function(e,n,r,o){return t.apply(this,arguments)};case 5:return function(e,n,r,o,a){return t.apply(this,arguments)};case 6:return function(e,n,r,o,a,i){return t.apply(this,arguments)};case 7:return function(e,n,r,o,a,i,u){return t.apply(this,arguments)};case 8:return function(e,n,r,o,a,i,u,c){return t.apply(this,arguments)};case 9:return function(e,n,r,o,a,i,u,c,l){return t.apply(this,arguments)};case 10:return function(e,n,r,o,a,i,u,c,l,s){return t.apply(this,arguments)};default:throw new Error("First argument to _arity must be a non-negative integer no greater than ten")}}(e.length,(function(){return e.apply(t,arguments)}))}));const I=k;function U(e,t,n){for(var r=n.next();!r.done;){if((t=e["@@transducer/step"](t,r.value))&&t["@@transducer/reduced"]){t=t["@@transducer/value"];break}r=n.next()}return e["@@transducer/result"](t)}function P(e,t,n,r){return e["@@transducer/result"](n[r](I(e["@@transducer/step"],e),t))}var C="undefined"!=typeof Symbol?Symbol.iterator:"@@iterator";function E(e,t,n){if("function"==typeof e&&(e=function(e){return new _(e)}(e)),A(n))return function(e,t,n){for(var r=0,o=n.length;r<o;){if((t=e["@@transducer/step"](t,n[r]))&&t["@@transducer/reduced"]){t=t["@@transducer/value"];break}r+=1}return e["@@transducer/result"](t)}(e,t,n);if("function"==typeof n["fantasy-land/reduce"])return P(e,t,n,"fantasy-land/reduce");if(null!=n[C])return U(e,t,n[C]());if("function"==typeof n.next)return U(e,t,n);if("function"==typeof n.reduce)return P(e,t,n,"reduce");throw new TypeError("reduce: list must be array or iterable")}const D=w(E);function T(e){return"[object Object]"===Object.prototype.toString.call(e)}const N=w((function(e,t,n){var r,o={};for(r in t)u(r,t)&&(o[r]=u(r,n)?e(r,t[r],n[r]):t[r]);for(r in n)u(r,n)&&!u(r,o)&&(o[r]=n[r]);return o})),q=w((function e(t,n,r){return N((function(n,r,o){return T(r)&&T(o)?e(t,r,o):t(n,r,o)}),n,r)})),B=n((function(e,t){return q((function(e,t,n){return n}),e,t)}));var G;function R(e,t){return function(n){if(!e(n))return t}}!function(e){e.Array="Array",e.Boolean="Boolean",e.ConceptUuid="ConceptUuid",e.Number="Number",e.Object="Object",e.String="String",e.UUID="UUID",e.PersonAttributeTypeUuid="PersonAttributeTypeUuid",e.PatientIdentifierTypeUuid="PatientIdentifierTypeUuid"}(G||(G={}));var M=R((function(e){return Array.isArray(e)}),"must be an array"),$=R((function(e){return"boolean"==typeof e}),"must be a boolean"),J=R((function(e){return"number"==typeof e}),"must be a number"),F=R((function(e){return"string"==typeof e}),"must be a string"),W=R((function(e){return"object"==typeof e&&!Array.isArray(e)&&null!==e}),"must be an object (not an array or null)"),z=R((function(e){return/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(e)||/^[0-9a-f]{36}$/i.test(e)}),"must be a valid UUID or a 36-character hexadecimal string"),L=o(685),X={providedConfigs:[],schemas:{},devDefaultsAreOn:Q()},H=(0,L.createGlobalStore)("config-internal",X),K=Q();function Q(){try{return JSON.parse(localStorage.getItem("openmrs:configAreDevDefaultsOn")||"false")}catch(e){return!1}}H.subscribe((function(e){var t;e.devDefaultsAreOn!=K&&(t=e.devDefaultsAreOn,localStorage.setItem("openmrs:configAreDevDefaultsOn",JSON.stringify(t)),K=e.devDefaultsAreOn)}));var V=(0,L.createGlobalStore)("temporary-config",{config:function(){try{return JSON.parse(localStorage.getItem("openmrs:temporaryConfig")||"{}")}catch(e){return{}}}()});V.subscribe((function(e){var t;t=e.config,localStorage.setItem("openmrs:temporaryConfig",JSON.stringify(t))}));var Y=(0,L.createGlobalStore)("config-store-of-extension-state",{mountedExtensions:[]});function Z(e){return(0,L.getGlobalStore)("config-module-".concat(e),{config:null,loaded:!1})}function ee(){return(0,L.getGlobalStore)("config-extension-slots",{slots:{}})}function te(e){return ne(ee().getState(),e)}function ne(e,t){var n=e.slots[t];return null!=n?n:{loaded:!1,config:{}}}function re(){return(0,L.getGlobalStore)("config-extensions",{configs:{}})}function oe(e,t){return ae(re().getState(),e,t)}function ae(e,t,n){var r,o=null===(r=e.configs[t])||void 0===r?void 0:r[n];return null!=o?o:{loaded:!1,config:null}}var ie=(0,L.createGlobalStore)("config-implementer-tools",{config:{}});function ue(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function ce(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function le(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),r.forEach((function(t){ce(e,t,n[t])}))}return e}function se(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,u=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){u=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(u)throw o}}return a}}(e,t)||ye(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function fe(e){return function(e){if(Array.isArray(e))return ue(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||ye(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ye(e,t){if(e){if("string"==typeof e)return ue(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(n):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ue(e,t):void 0}}function de(e,t){var n=!0,r=!1,o=void 0;try{for(var a,i=Object.keys(e.schemas)[Symbol.iterator]();!(n=(a=i.next()).done);n=!0){var u=a.value,c=Ie(u,e,t);Z(u).setState({loaded:!0,config:c})}}catch(e){r=!0,o=e}finally{try{n||null==i.return||i.return()}finally{if(r)throw o}}}function ve(e,t){var n,r,o=(n=Pe(_e(e,t)),function(e){var t=!0,n=!1,r=void 0;try{for(var o,a=Object.entries(e)[Symbol.iterator]();!(t=(o=a.next()).done);t=!0){var i=se(o.value,2),u=i[0],c=i[1],l=!0,s=!1,f=void 0;try{for(var y,d=Object.entries(c)[Symbol.iterator]();!(l=(y=d.next()).done);l=!0){var v=se(y.value,2),g=v[0];Ae(v[1],u,g)}}catch(e){s=!0,f=e}finally{try{l||null==d.return||d.return()}finally{if(s)throw f}}}}catch(e){n=!0,r=e}finally{try{t||null==a.return||a.return()}finally{if(n)throw r}}}(r=Object.keys(n).reduce((function(e,t){var r,o;return(null===(r=n[t])||void 0===r?void 0:r.extensionSlots)&&(e[t]=null===(o=n[t])||void 0===o?void 0:o.extensionSlots),e}),{})),Object.keys(r).reduce((function(e,t){return le({},e,r[t])}),{})),a=Object.fromEntries(Object.entries(o).map((function(e){var t=se(e,2);return[t[0],{loaded:!0,config:t[1]}]}))),i=ee(),u=i.getState(),c={slots:le({},u.slots,a)};S(u,c)||i.setState(c)}function ge(e,t){var n=function(e,t){var n=we(j(e.schemas)),r=fe(e.providedConfigs.map((function(e){return[e.config,e.source]}))).concat([[t.config,"temporary config"]]),o=!0,a=!1,i=void 0;try{for(var u,c=r[Symbol.iterator]();!(o=(u=c.next()).done);o=!0){var l=se(u.value,2);n=Pe([n,xe(l[0],l[1])])}}catch(e){a=!0,i=e}finally{try{o||null==c.return||c.return()}finally{if(a)throw i}}return n}(e,t);ie.setState({config:n})}function pe(e,t,n){var r={},o=!0,a=!1,i=void 0;try{for(var u,c=t.mountedExtensions[Symbol.iterator]();!(o=(u=c.next()).done);o=!0){var l=u.value,s=je(l.slotModuleName,l.extensionModuleName,l.slotName,l.extensionId,e,n);r[l.slotName]=le({},r[l.slotName],ce({},l.extensionId,{config:s,loaded:!0}))}}catch(e){a=!0,i=e}finally{try{o||null==c.return||c.return()}finally{if(a)throw i}}re().setState({configs:r})}function be(e,t){ke(e,t);var n=H.getState();H.setState({schemas:le({},n.schemas,ce({},e,t))})}function me(e,t){ke(e,t);var n=H.getState();n.schemas[e]&&console.warn("Config schema for extension ".concat(e," already exists. If there are multiple extensions with this same name, one will probably crash.")),H.setState({schemas:le({},n.schemas,ce({},e,t))})}function he(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"provided",n=H.getState();H.setState({providedConfigs:fe(n.providedConfigs).concat([{source:t,config:e}])})}function Se(e){return new Promise((function(t){var n=function(e){e.loaded&&e.config&&(t(e.config),o&&o())},r=Z(e);n(r.getState());var o=r.subscribe(n)}))}function Oe(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]&&arguments[3];Ce(e,t,n);var o=qe(e,t,r);return o}function je(e,t,n,r,o,a){var i,u,c,l,s=function(e){return se(e.split("#"),1)[0]}(r),f=o.schemas[s],y=f?s:t,d=_e(o,a),v=Ue(e,d),g=null!==(l=null==v||null===(i=v.extensionSlots)||void 0===i||null===(u=i[n])||void 0===u||null===(c=u.configure)||void 0===c?void 0:c[r])&&void 0!==l?l:{},p=Pe([Ue(y,d),g]),b=null!=f?f:o.schemas[t];Ce(b,p,y);var m=qe(b,p,o.devDefaultsAreOn);return delete m.extensionSlots,m}function we(e){return e.hasOwnProperty("_default")?le({},e,{_value:e._default,_source:"default"}):Ge(e)?Object.keys(e).reduce((function(t,n){return t[n]=we(e[n]),t}),{}):{}}function xe(e,t){return Ge(e)?Object.keys(e).reduce((function(n,r){return n[r]=xe(e[r],t),n}),{}):{_value:e,_source:t}}function Ae(e,t,n){var r="Extension slot config '".concat(t,".extensionSlots.").concat(n),o=Object.keys(e).filter((function(e){return!["add","remove","order","configure"].includes(e)}));o.length&&console.error(r+"' contains invalid keys '".concat(o.join("', '"),"'")),e.add&&(Array.isArray(e.add)&&e.add.every((function(e){return"string"==typeof e}))||console.error(r+".add' is invalid. Must be an array of strings (extension IDs)")),e.remove&&(Array.isArray(e.remove)&&e.remove.every((function(e){return"string"==typeof e}))||console.error(r+".remove' is invalid. Must be an array of strings (extension IDs)")),e.order&&(Array.isArray(e.order)&&e.order.every((function(e){return"string"==typeof e}))||console.error(r+".order' is invalid. Must be an array of strings (extension IDs)")),e.configure&&(Ge(e.configure)||console.error(r+".configure' is invalid. Must be an object with extension IDs for keys"))}function _e(e,t){return fe(e.providedConfigs.map((function(e){return e.config}))).concat([t.config])}function ke(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",r="Please verify that you are running the latest version and, if so, alert the maintainer.",o=!0,a=!1,i=void 0;try{for(var u,c=function(o,a){var i=a.value,u=n+(n&&".")+i,c=t[i];if(!Ge(c))return console.error("".concat(e," has bad config schema definition for key '").concat(u,"'. ").concat(r)),"continue";c.hasOwnProperty("_default")||ke(e,c,u);var l=c._elements;if(Be(l)&&ke(e,l,u+"._elements"),c._validators){var s=!0,f=!1,y=void 0;try{for(var d,v=c._validators[Symbol.iterator]();!(s=(d=v.next()).done);s=!0){var g=d.value;"function"!=typeof g&&console.error("".concat(e," has invalid validator for key '").concat(u,"' ").concat(r,".")+"\n\nIf you're the maintainer: validators must be functions that return either "+"undefined or an error string. Received ".concat(g,"."))}}catch(e){f=!0,y=e}finally{try{s||null==v.return||v.return()}finally{if(f)throw y}}}var p=c._type;p&&!Object.values(G).includes(p)&&console.error("".concat(e," has invalid type for key '").concat(u,"' ").concat(r,".")+"\n\nIf you're the maintainer: the allowed types are ".concat(Object.values(G).join(", "),". ")+"Received '".concat(p,"'")),Object.keys(c).every((function(e){return["_description","_validators","_elements","_type"].includes(e)}))&&!n.includes("._elements")&&console.error("".concat(e," has bad config schema definition for key '").concat(u,"'. ").concat(r,".")+"\n\nIf you're the maintainer: all config elements must have a default. "+"Received ".concat(JSON.stringify(c))),l&&p&&![G.Array,G.Object].includes(p)&&console.error("".concat(e," has bad config schema definition for key '").concat(u,"'. ").concat(r,".")+"\n\nIf you're the maintainer: the 'elements' key only works with '_type' equal to 'Array' or 'Object'. "+"Received ".concat(JSON.stringify(p)))},l=Object.keys(t).filter((function(e){return!e.startsWith("_")}))[Symbol.iterator]();!(o=(u=l.next()).done);o=!0)c(l,u)}catch(e){a=!0,i=e}finally{try{o||null==l.return||l.return()}finally{if(a)throw i}}}function Ie(e,t,n){if(!t.schemas.hasOwnProperty(e))throw Error("No config schema has been defined for "+e);var r=t.schemas[e],o=Ue(e,_e(t,n));Ce(r,o,e);var a=qe(r,o,t.devDefaultsAreOn);return delete a.extensionSlots,a}function Ue(e,t){return Pe(t.map((function(t){return t[e]})).filter((function(e){return!!e})))}function Pe(e){return D(B)({},e)}de(H.getState(),V.getState()),H.subscribe((function(e){return de(e,V.getState())})),V.subscribe((function(e){return de(H.getState(),e)})),ge(H.getState(),V.getState()),H.subscribe((function(e){return ge(e,V.getState())})),V.subscribe((function(e){return ge(H.getState(),e)})),ve(H.getState(),V.getState()),H.subscribe((function(e){return ve(e,V.getState())})),V.subscribe((function(e){return ve(H.getState(),e)})),pe(H.getState(),Y.getState(),V.getState()),H.subscribe((function(e){pe(e,Y.getState(),V.getState())})),Y.subscribe((function(e){pe(H.getState(),e,V.getState())})),V.subscribe((function(e){pe(H.getState(),Y.getState(),e)}));var Ce=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",r=!0,o=!1,a=void 0;try{for(var i,u=Object.keys(t)[Symbol.iterator]();!(r=(i=u.next()).done);r=!0){var c=i.value,l=t[c],s=n+"."+c,f=e[c];e.hasOwnProperty(c)?(Te(s,f._type,l),Ne(s,f._validators,l),Ge(l)?f._type===G.Object?Ee(f,l,s):f.hasOwnProperty("_default")||Ce(f,l,s):f._type===G.Array&&De(f,l,s)):"extensionSlots"!==c&&console.error("Unknown config key '".concat(s,"' provided. Ignoring."))}}catch(e){o=!0,a=e}finally{try{r||null==u.return||u.return()}finally{if(o)throw a}}};function Ee(e,t,n){if(e._elements){var r=!0,o=!1,a=void 0;try{for(var i,u=Object.keys(t)[Symbol.iterator]();!(r=(i=u.next()).done);r=!0){var c=i.value,l=t[c];Ce(e._elements,l,"".concat(n,".").concat(c))}}catch(e){o=!0,a=e}finally{try{r||null==u.return||u.return()}finally{if(o)throw a}}}}function De(e,t,n){if(Be(e._elements))for(var r=0;r<t.length;r++)Ce(e._elements,t[r],"".concat(n,"[").concat(r,"]"));for(var o=0;o<t.length;o++){var a,i;Te("".concat(n,"[").concat(o,"]"),null===(a=e._elements)||void 0===a?void 0:a._type,t[o]),Ne("".concat(n,"[").concat(o,"]"),null===(i=e._elements)||void 0===i?void 0:i._validators,t[o])}}function Te(e,t,n){t&&Ne(e,[{Array:M,Boolean:$,ConceptUuid:z,Number:J,Object:W,String:F,UUID:z,PersonAttributeTypeUuid:z,PatientIdentifierTypeUuid:z}[t]],n)}function Ne(e,t,n){if(t)try{var r=!0,o=!1,a=void 0;try{for(var i,u=t[Symbol.iterator]();!(r=(i=u.next()).done);r=!0){var c=(0,i.value)(n);if("string"==typeof c){var l="object"==typeof n?JSON.stringify(n):n;console.error("Invalid configuration value ".concat(l," for ").concat(e,": ").concat(c))}}}catch(e){o=!0,a=e}finally{try{r||null==u.return||u.return()}finally{if(o)throw a}}}catch(t){console.error('Skipping invalid validator at "'.concat(e,'".'))}}var qe=function(e,t,n){var r=j(t);if(!e)return r;var o=!0,a=!1,i=void 0;try{for(var u,c=function(t,o){var a=o.value,i=r[a],u=e[a];if(u&&u.hasOwnProperty("_default")){if(!r.hasOwnProperty(a)){var c=u._devDefault||u._default;r[a]=n?c:u._default}var l=u._elements;if(i&&Be(l))if(u._type===G.Array){var s=i.map((function(e){return qe(l,e,n)}));r[a]=s}else if(u._type===G.Object){var f=!0,y=!1,d=void 0;try{for(var v,g=Object.keys(i)[Symbol.iterator]();!(f=(v=g.next()).done);f=!0){var p=v.value;i[p]=qe(l,i[p],n)}}catch(e){y=!0,d=e}finally{try{f||null==g.return||g.return()}finally{if(y)throw d}}}}else if(Ge(u)){var b=r.hasOwnProperty(a)?i:{};Ge(b)&&(r[a]=qe(u,b,n))}},l=Object.keys(e)[Symbol.iterator]();!(o=(u=l.next()).done);o=!0)c(0,u)}catch(e){a=!0,i=e}finally{try{o||null==l.return||l.return()}finally{if(a)throw i}}return r};function Be(e){return!!e&&Object.keys(e).filter((function(e){return!["_default","_validators"].includes(e)})).length>0}function Ge(e){return"object"==typeof e&&!Array.isArray(e)&&null!==e}var Re=o(645);function Me(e){var t=window.getOpenmrsSpaBase().replace(/\/$/,"");return $e(e,{openmrsBase:window.openmrsBase,openmrsSpaBase:t}).replace(/^\/\//,"/")}function $e(e,t){return Object.keys(t).reduce((function(e,n){return e.split("${"+n+"}").join(t[n])}),e)}function Je(e){var t=e.to,n=window.getOpenmrsSpaBase().replace(/\/$/,""),r=Me(t);r.startsWith(n)?(0,Re.navigateToUrl)(r):window.location.assign(r)}var Fe=function(e,t){return R((function(n){return e<=n&&n<=t}),"must be between ".concat(e," and ").concat(t))},We=function(e){var t=e.concat(["openmrsBase","openmrsSpaBase"]);return R((function(e){if(!e||"string"!=typeof e)return!1;for(var n=/\${(.*?)}/g,r=n.exec(e);r;){if(!t.includes(r[1]))return!1;r=n.exec(e)}return!0}),"should be a URL or path. The allowed template parameters are "+t.map((function(e){return"${"+e+"}"})).join(", "))},ze=We([]),Le={inRange:Fe,isUrl:ze,isUrlWithTemplateParameters:We}})(),a})())}}}));
1
+ System.register(["@openmrs/esm-state","single-spa"],(function(e,t){var n={},r={};return{setters:[function(e){n.createGlobalStore=e.createGlobalStore,n.getGlobalStore=e.getGlobalStore},function(e){r.navigateToUrl=e.navigateToUrl}],execute:function(){e((()=>{"use strict";var e={685:e=>{e.exports=n},645:e=>{e.exports=r}},t={};function o(n){var r=t[n];if(void 0!==r)return r.exports;var a=t[n]={exports:{}};return e[n](a,a.exports,o),a.exports}o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};return(()=>{function e(e){return null!=e&&"object"==typeof e&&!0===e["@@functional/placeholder"]}function t(t){return function n(r){return 0===arguments.length||e(r)?n:t.apply(this,arguments)}}function n(n){return function r(o,a){switch(arguments.length){case 0:return r;case 1:return e(o)?r:t((function(e){return n(o,e)}));default:return e(o)&&e(a)?r:e(o)?t((function(e){return n(e,a)})):e(a)?t((function(e){return n(o,e)})):n(o,a)}}}function r(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}function i(e,t,n){for(var r=0,o=n.length;r<o;){if(e(t,n[r]))return!0;r+=1}return!1}function u(e,t){return Object.prototype.hasOwnProperty.call(t,e)}o.r(a),o.d(a,{Type:()=>G,configExtensionStore:()=>Y,configInternalStore:()=>H,defineConfigSchema:()=>be,defineExtensionConfigSchema:()=>me,getConfig:()=>Se,getConfigStore:()=>Z,getExtensionConfig:()=>oe,getExtensionConfigFromStore:()=>ae,getExtensionSlotConfig:()=>te,getExtensionSlotConfigFromStore:()=>ne,getExtensionSlotsConfigStore:()=>ee,getExtensionsConfigStore:()=>re,implementerToolsConfigStore:()=>ie,inRange:()=>We,interpolateString:()=>Je,interpolateUrl:()=>$e,isUrl:()=>Le,isUrlWithTemplateParameters:()=>ze,navigate:()=>Fe,oneOf:()=>Xe,processConfig:()=>Oe,provide:()=>he,temporaryConfigStore:()=>V,validator:()=>M,validators:()=>He});const c="function"==typeof Object.is?Object.is:function(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t};var l=Object.prototype.toString,f=function(){return"[object Arguments]"===l.call(arguments)?function(e){return"[object Arguments]"===l.call(e)}:function(e){return u("callee",e)}}();const s=f;var y=!{toString:null}.propertyIsEnumerable("toString"),d=["constructor","valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],v=function(){return arguments.propertyIsEnumerable("length")}(),g=function(e,t){for(var n=0;n<e.length;){if(e[n]===t)return!0;n+=1}return!1};const p="function"!=typeof Object.keys||v?t((function(e){if(Object(e)!==e)return[];var t,n,r=[],o=v&&s(e);for(t in e)!u(t,e)||o&&"length"===t||(r[r.length]=t);if(y)for(n=d.length-1;n>=0;)u(t=d[n],e)&&!g(r,t)&&(r[r.length]=t),n-=1;return r})):t((function(e){return Object(e)!==e?[]:Object.keys(e)})),b=t((function(e){return null===e?"Null":void 0===e?"Undefined":Object.prototype.toString.call(e).slice(8,-1)}));function m(e,t,n,o){var a=r(e);function u(e,t){return h(e,t,n.slice(),o.slice())}return!i((function(e,t){return!i(u,t,e)}),r(t),a)}function h(e,t,n,r){if(c(e,t))return!0;var o,a,i=b(e);if(i!==b(t))return!1;if(null==e||null==t)return!1;if("function"==typeof e["fantasy-land/equals"]||"function"==typeof t["fantasy-land/equals"])return"function"==typeof e["fantasy-land/equals"]&&e["fantasy-land/equals"](t)&&"function"==typeof t["fantasy-land/equals"]&&t["fantasy-land/equals"](e);if("function"==typeof e.equals||"function"==typeof t.equals)return"function"==typeof e.equals&&e.equals(t)&&"function"==typeof t.equals&&t.equals(e);switch(i){case"Arguments":case"Array":case"Object":if("function"==typeof e.constructor&&"Promise"===(o=e.constructor,null==(a=String(o).match(/^function (\w*)/))?"":a[1]))return e===t;break;case"Boolean":case"Number":case"String":if(typeof e!=typeof t||!c(e.valueOf(),t.valueOf()))return!1;break;case"Date":if(!c(e.valueOf(),t.valueOf()))return!1;break;case"Error":return e.name===t.name&&e.message===t.message;case"RegExp":if(e.source!==t.source||e.global!==t.global||e.ignoreCase!==t.ignoreCase||e.multiline!==t.multiline||e.sticky!==t.sticky||e.unicode!==t.unicode)return!1}for(var l=n.length-1;l>=0;){if(n[l]===e)return r[l]===t;l-=1}switch(i){case"Map":return e.size===t.size&&m(e.entries(),t.entries(),n.concat([e]),r.concat([t]));case"Set":return e.size===t.size&&m(e.values(),t.values(),n.concat([e]),r.concat([t]));case"Arguments":case"Array":case"Object":case"Boolean":case"Number":case"String":case"Date":case"Error":case"RegExp":case"Int8Array":case"Uint8Array":case"Uint8ClampedArray":case"Int16Array":case"Uint16Array":case"Int32Array":case"Uint32Array":case"Float32Array":case"Float64Array":case"ArrayBuffer":break;default:return!1}var f=p(e);if(f.length!==p(t).length)return!1;var s=n.concat([e]),y=r.concat([t]);for(l=f.length-1;l>=0;){var d=f[l];if(!u(d,t)||!h(t[d],e[d],s,y))return!1;l-=1}return!0}const S=n((function(e,t){return h(e,t,[],[])}));function O(e,t,n,r){var o,a=function(o){for(var a=t.length,i=0;i<a;){if(e===t[i])return n[i];i+=1}for(var u in t[i+1]=e,n[i+1]=o,e)o[u]=r?O(e[u],t,n,!0):e[u];return o};switch(b(e)){case"Object":return a({});case"Array":return a([]);case"Date":return new Date(e.valueOf());case"RegExp":return o=e,new RegExp(o.source,(o.global?"g":"")+(o.ignoreCase?"i":"")+(o.multiline?"m":"")+(o.sticky?"y":"")+(o.unicode?"u":""));default:return e}}const j=t((function(e){return null!=e&&"function"==typeof e.clone?e.clone():O(e,[],[],!0)}));function w(r){return function o(a,i,u){switch(arguments.length){case 0:return o;case 1:return e(a)?o:n((function(e,t){return r(a,e,t)}));case 2:return e(a)&&e(i)?o:e(a)?n((function(e,t){return r(e,i,t)})):e(i)?n((function(e,t){return r(a,e,t)})):t((function(e){return r(a,i,e)}));default:return e(a)&&e(i)&&e(u)?o:e(a)&&e(i)?n((function(e,t){return r(e,t,u)})):e(a)&&e(u)?n((function(e,t){return r(e,i,t)})):e(i)&&e(u)?n((function(e,t){return r(a,e,t)})):e(a)?t((function(e){return r(e,i,u)})):e(i)?t((function(e){return r(a,e,u)})):e(u)?t((function(e){return r(a,i,e)})):r(a,i,u)}}}const x=Array.isArray||function(e){return null!=e&&e.length>=0&&"[object Array]"===Object.prototype.toString.call(e)},A=t((function(e){return!!x(e)||!!e&&"object"==typeof e&&!function(e){return"[object String]"===Object.prototype.toString.call(e)}(e)&&(1===e.nodeType?!!e.length:0===e.length||e.length>0&&e.hasOwnProperty(0)&&e.hasOwnProperty(e.length-1))}));var _=function(){function e(e){this.f=e}return e.prototype["@@transducer/init"]=function(){throw new Error("init not implemented on XWrap")},e.prototype["@@transducer/result"]=function(e){return e},e.prototype["@@transducer/step"]=function(e,t){return this.f(e,t)},e}(),k=n((function(e,t){return function(e,t){switch(e){case 0:return function(){return t.apply(this,arguments)};case 1:return function(e){return t.apply(this,arguments)};case 2:return function(e,n){return t.apply(this,arguments)};case 3:return function(e,n,r){return t.apply(this,arguments)};case 4:return function(e,n,r,o){return t.apply(this,arguments)};case 5:return function(e,n,r,o,a){return t.apply(this,arguments)};case 6:return function(e,n,r,o,a,i){return t.apply(this,arguments)};case 7:return function(e,n,r,o,a,i,u){return t.apply(this,arguments)};case 8:return function(e,n,r,o,a,i,u,c){return t.apply(this,arguments)};case 9:return function(e,n,r,o,a,i,u,c,l){return t.apply(this,arguments)};case 10:return function(e,n,r,o,a,i,u,c,l,f){return t.apply(this,arguments)};default:throw new Error("First argument to _arity must be a non-negative integer no greater than ten")}}(e.length,(function(){return e.apply(t,arguments)}))}));const I=k;function P(e,t,n){for(var r=n.next();!r.done;){if((t=e["@@transducer/step"](t,r.value))&&t["@@transducer/reduced"]){t=t["@@transducer/value"];break}r=n.next()}return e["@@transducer/result"](t)}function U(e,t,n,r){return e["@@transducer/result"](n[r](I(e["@@transducer/step"],e),t))}var E="undefined"!=typeof Symbol?Symbol.iterator:"@@iterator";function C(e,t,n){if("function"==typeof e&&(e=function(e){return new _(e)}(e)),A(n))return function(e,t,n){for(var r=0,o=n.length;r<o;){if((t=e["@@transducer/step"](t,n[r]))&&t["@@transducer/reduced"]){t=t["@@transducer/value"];break}r+=1}return e["@@transducer/result"](t)}(e,t,n);if("function"==typeof n["fantasy-land/reduce"])return U(e,t,n,"fantasy-land/reduce");if(null!=n[E])return P(e,t,n[E]());if("function"==typeof n.next)return P(e,t,n);if("function"==typeof n.reduce)return U(e,t,n,"reduce");throw new TypeError("reduce: list must be array or iterable")}const D=w(C);function T(e){return"[object Object]"===Object.prototype.toString.call(e)}const N=w((function(e,t,n){var r,o={};for(r in t)u(r,t)&&(o[r]=u(r,n)?e(r,t[r],n[r]):t[r]);for(r in n)u(r,n)&&!u(r,o)&&(o[r]=n[r]);return o})),q=w((function e(t,n,r){return N((function(n,r,o){return T(r)&&T(o)?e(t,r,o):t(n,r,o)}),n,r)})),B=n((function(e,t){return q((function(e,t,n){return n}),e,t)}));var G;function M(e,t){return function(n){if(!e(n))return"function"==typeof t?t(n):t}}!function(e){e.Array="Array",e.Boolean="Boolean",e.ConceptUuid="ConceptUuid",e.Number="Number",e.Object="Object",e.String="String",e.UUID="UUID",e.PersonAttributeTypeUuid="PersonAttributeTypeUuid",e.PatientIdentifierTypeUuid="PatientIdentifierTypeUuid"}(G||(G={}));var R=M((function(e){return Array.isArray(e)}),"must be an array"),$=M((function(e){return"boolean"==typeof e}),"must be a boolean"),J=M((function(e){return"number"==typeof e}),"must be a number"),F=M((function(e){return"string"==typeof e}),"must be a string"),W=M((function(e){return"object"==typeof e&&!Array.isArray(e)&&null!==e}),"must be an object (not an array or null)"),z=M((function(e){return/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(e)||/^[0-9a-f]{36}$/i.test(e)}),"must be a valid UUID or a 36-character hexadecimal string"),L=o(685),X={providedConfigs:[],schemas:{},devDefaultsAreOn:Q()},H=(0,L.createGlobalStore)("config-internal",X),K=Q();function Q(){try{return JSON.parse(localStorage.getItem("openmrs:configAreDevDefaultsOn")||"false")}catch(e){return!1}}H.subscribe((function(e){var t;e.devDefaultsAreOn!=K&&(t=e.devDefaultsAreOn,localStorage.setItem("openmrs:configAreDevDefaultsOn",JSON.stringify(t)),K=e.devDefaultsAreOn)}));var V=(0,L.createGlobalStore)("temporary-config",{config:function(){try{return JSON.parse(localStorage.getItem("openmrs:temporaryConfig")||"{}")}catch(e){return{}}}()});V.subscribe((function(e){var t;t=e.config,localStorage.setItem("openmrs:temporaryConfig",JSON.stringify(t))}));var Y=(0,L.createGlobalStore)("config-store-of-extension-state",{mountedExtensions:[]});function Z(e){return(0,L.getGlobalStore)("config-module-".concat(e),{config:null,loaded:!1})}function ee(){return(0,L.getGlobalStore)("config-extension-slots",{slots:{}})}function te(e){return ne(ee().getState(),e)}function ne(e,t){var n=e.slots[t];return null!=n?n:{loaded:!1,config:{}}}function re(){return(0,L.getGlobalStore)("config-extensions",{configs:{}})}function oe(e,t){return ae(re().getState(),e,t)}function ae(e,t,n){var r,o=null===(r=e.configs[t])||void 0===r?void 0:r[n];return null!=o?o:{loaded:!1,config:null}}var ie=(0,L.createGlobalStore)("config-implementer-tools",{config:{}});function ue(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function ce(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function le(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),r.forEach((function(t){ce(e,t,n[t])}))}return e}function fe(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a=[],i=!0,u=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){u=!0,o=e}finally{try{i||null==n.return||n.return()}finally{if(u)throw o}}return a}}(e,t)||ye(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function se(e){return function(e){if(Array.isArray(e))return ue(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||ye(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ye(e,t){if(e){if("string"==typeof e)return ue(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(n):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ue(e,t):void 0}}function de(e,t){var n=!0,r=!1,o=void 0;try{for(var a,i=Object.keys(e.schemas)[Symbol.iterator]();!(n=(a=i.next()).done);n=!0){var u=a.value,c=Ie(u,e,t);Z(u).setState({loaded:!0,config:c})}}catch(e){r=!0,o=e}finally{try{n||null==i.return||i.return()}finally{if(r)throw o}}}function ve(e,t){var n,r,o=(n=Ue(_e(e,t)),function(e){var t=!0,n=!1,r=void 0;try{for(var o,a=Object.entries(e)[Symbol.iterator]();!(t=(o=a.next()).done);t=!0){var i=fe(o.value,2),u=i[0],c=i[1],l=!0,f=!1,s=void 0;try{for(var y,d=Object.entries(c)[Symbol.iterator]();!(l=(y=d.next()).done);l=!0){var v=fe(y.value,2),g=v[0];Ae(v[1],u,g)}}catch(e){f=!0,s=e}finally{try{l||null==d.return||d.return()}finally{if(f)throw s}}}}catch(e){n=!0,r=e}finally{try{t||null==a.return||a.return()}finally{if(n)throw r}}}(r=Object.keys(n).reduce((function(e,t){var r,o;return(null===(r=n[t])||void 0===r?void 0:r.extensionSlots)&&(e[t]=null===(o=n[t])||void 0===o?void 0:o.extensionSlots),e}),{})),Object.keys(r).reduce((function(e,t){return le({},e,r[t])}),{})),a=Object.fromEntries(Object.entries(o).map((function(e){var t=fe(e,2);return[t[0],{loaded:!0,config:t[1]}]}))),i=ee(),u=i.getState(),c={slots:le({},u.slots,a)};S(u,c)||i.setState(c)}function ge(e,t){var n=function(e,t){var n=we(j(e.schemas)),r=se(e.providedConfigs.map((function(e){return[e.config,e.source]}))).concat([[t.config,"temporary config"]]),o=!0,a=!1,i=void 0;try{for(var u,c=r[Symbol.iterator]();!(o=(u=c.next()).done);o=!0){var l=fe(u.value,2);n=Ue([n,xe(l[0],l[1])])}}catch(e){a=!0,i=e}finally{try{o||null==c.return||c.return()}finally{if(a)throw i}}return n}(e,t);ie.setState({config:n})}function pe(e,t,n){var r={},o=!0,a=!1,i=void 0;try{for(var u,c=t.mountedExtensions[Symbol.iterator]();!(o=(u=c.next()).done);o=!0){var l=u.value,f=je(l.slotModuleName,l.extensionModuleName,l.slotName,l.extensionId,e,n);r[l.slotName]=le({},r[l.slotName],ce({},l.extensionId,{config:f,loaded:!0}))}}catch(e){a=!0,i=e}finally{try{o||null==c.return||c.return()}finally{if(a)throw i}}re().setState({configs:r})}function be(e,t){ke(e,t);var n=H.getState();H.setState({schemas:le({},n.schemas,ce({},e,t))})}function me(e,t){ke(e,t);var n=H.getState();n.schemas[e]&&console.warn("Config schema for extension ".concat(e," already exists. If there are multiple extensions with this same name, one will probably crash.")),H.setState({schemas:le({},n.schemas,ce({},e,t))})}function he(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"provided",n=H.getState();H.setState({providedConfigs:se(n.providedConfigs).concat([{source:t,config:e}])})}function Se(e){return new Promise((function(t){var n=function(e){e.loaded&&e.config&&(t(e.config),o&&o())},r=Z(e);n(r.getState());var o=r.subscribe(n)}))}function Oe(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]&&arguments[3];Ee(e,t,n);var o=qe(e,t,r);return De(e,o,n),o}function je(e,t,n,r,o,a){var i,u,c,l,f=function(e){return fe(e.split("#"),1)[0]}(r),s=o.schemas[f],y=s?f:t,d=_e(o,a),v=Pe(e,d),g=null!==(l=null==v||null===(i=v.extensionSlots)||void 0===i||null===(u=i[n])||void 0===u||null===(c=u.configure)||void 0===c?void 0:c[r])&&void 0!==l?l:{},p=Ue([Pe(y,d),g]),b=null!=s?s:o.schemas[t];Ee(b,p,y);var m=qe(b,p,o.devDefaultsAreOn);return De(b,m,y),delete m.extensionSlots,m}function we(e){return e.hasOwnProperty("_default")?le({},e,{_value:e._default,_source:"default"}):Ge(e)?Object.keys(e).reduce((function(t,n){return t[n]=we(e[n]),t}),{}):{}}function xe(e,t){return Ge(e)?Object.keys(e).reduce((function(n,r){return n[r]=xe(e[r],t),n}),{}):{_value:e,_source:t}}function Ae(e,t,n){var r="Extension slot config '".concat(t,".extensionSlots.").concat(n),o=Object.keys(e).filter((function(e){return!["add","remove","order","configure"].includes(e)}));o.length&&console.error(r+"' contains invalid keys '".concat(o.join("', '"),"'")),e.add&&(Array.isArray(e.add)&&e.add.every((function(e){return"string"==typeof e}))||console.error(r+".add' is invalid. Must be an array of strings (extension IDs)")),e.remove&&(Array.isArray(e.remove)&&e.remove.every((function(e){return"string"==typeof e}))||console.error(r+".remove' is invalid. Must be an array of strings (extension IDs)")),e.order&&(Array.isArray(e.order)&&e.order.every((function(e){return"string"==typeof e}))||console.error(r+".order' is invalid. Must be an array of strings (extension IDs)")),e.configure&&(Ge(e.configure)||console.error(r+".configure' is invalid. Must be an object with extension IDs for keys"))}function _e(e,t){return se(e.providedConfigs.map((function(e){return e.config}))).concat([t.config])}function ke(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",r="Please verify that you are running the latest version and, if so, alert the maintainer.",o=!0,a=!1,i=void 0;try{for(var u,c=function(o,a){var i=a.value,u=n+(n&&".")+i,c=t[i];if(!Ge(c))return console.error("".concat(e," has bad config schema definition for key '").concat(u,"'. ").concat(r)),"continue";c.hasOwnProperty("_default")||ke(e,c,u);var l=c._elements;if(Be(l)&&ke(e,l,u+"._elements"),c._validators){var f=!0,s=!1,y=void 0;try{for(var d,v=c._validators[Symbol.iterator]();!(f=(d=v.next()).done);f=!0){var g=d.value;"function"!=typeof g&&console.error("".concat(e," has invalid validator for key '").concat(u,"' ").concat(r,".")+"\n\nIf you're the maintainer: validators must be functions that return either "+"undefined or an error string. Received ".concat(g,"."))}}catch(e){s=!0,y=e}finally{try{f||null==v.return||v.return()}finally{if(s)throw y}}}var p=c._type;p&&!Object.values(G).includes(p)&&console.error("".concat(e," has invalid type for key '").concat(u,"' ").concat(r,".")+"\n\nIf you're the maintainer: the allowed types are ".concat(Object.values(G).join(", "),". ")+"Received '".concat(p,"'")),Object.keys(c).every((function(e){return["_description","_validators","_elements","_type"].includes(e)}))&&!n.includes("._elements")&&console.error("".concat(e," has bad config schema definition for key '").concat(u,"'. ").concat(r,".")+"\n\nIf you're the maintainer: all config elements must have a default. "+"Received ".concat(JSON.stringify(c))),l&&p&&![G.Array,G.Object].includes(p)&&console.error("".concat(e," has bad config schema definition for key '").concat(u,"'. ").concat(r,".")+"\n\nIf you're the maintainer: the 'elements' key only works with '_type' equal to 'Array' or 'Object'. "+"Received ".concat(JSON.stringify(p)))},l=Object.keys(t).filter((function(e){return!e.startsWith("_")}))[Symbol.iterator]();!(o=(u=l.next()).done);o=!0)c(l,u)}catch(e){a=!0,i=e}finally{try{o||null==l.return||l.return()}finally{if(a)throw i}}}function Ie(e,t,n){if(!t.schemas.hasOwnProperty(e))throw Error("No config schema has been defined for "+e);var r=t.schemas[e],o=Pe(e,_e(t,n));Ee(r,o,e);var a=qe(r,o,t.devDefaultsAreOn);return De(r,a,e),delete a.extensionSlots,a}function Pe(e,t){return Ue(t.map((function(t){return t[e]})).filter((function(e){return!!e})))}function Ue(e){return D(B)({},e)}function Ee(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",r=!0,o=!1,a=void 0;try{for(var i,u=Object.keys(t)[Symbol.iterator]();!(r=(i=u.next()).done);r=!0){var c=i.value,l=t[c],f=n+"."+c,s=e[c];e.hasOwnProperty(c)?Ce(s,l,f):"extensionSlots"===c&&""!==n||console.error("Unknown config key '".concat(f,"' provided. Ignoring."))}}catch(e){o=!0,a=e}finally{try{r||null==u.return||u.return()}finally{if(o)throw a}}}function Ce(e,t,n){Te(n,e._type,t),Ge(t)?e._type===G.Object?function(e,t,n){if(e._elements){var r=!0,o=!1,a=void 0;try{for(var i,u=Object.keys(t)[Symbol.iterator]();!(r=(i=u.next()).done);r=!0){var c=i.value,l=t[c];Ee(e._elements,l,"".concat(n,".").concat(c))}}catch(e){o=!0,a=e}finally{try{r||null==u.return||u.return()}finally{if(o)throw a}}}}(e,t,n):e.hasOwnProperty("_default")||Ee(e,t,n):e._type===G.Array&&function(e,t,n){if(Be(e._elements))for(var r=0;r<t.length;r++)Ce(e._elements,t[r],"".concat(n,"[").concat(r,"]"));for(var o=0;o<t.length;o++){var a;Te("".concat(n,"[").concat(o,"]"),null===(a=e._elements)||void 0===a?void 0:a._type,t[o])}}(e,t,n)}function De(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";if(e)if(t!==e._default&&Ne(n,e._validators,t),Ge(t)){var r=!0,o=!1,a=void 0;try{for(var i,u=Object.keys(t)[Symbol.iterator]();!(r=(i=u.next()).done);r=!0){var c=i.value,l=t[c],f=n+"."+c,s=e[c];e._type===G.Object&&e._elements?De(e._elements,l,f):De(s,l,f)}}catch(e){o=!0,a=e}finally{try{r||null==u.return||u.return()}finally{if(o)throw a}}}else if(Array.isArray(t)&&e._elements)for(var y=0;y<t.length;y++)De(e._elements,t[y],"".concat(n,"[").concat(y,"]"))}function Te(e,t,n){t&&Ne(e,[{Array:R,Boolean:$,ConceptUuid:z,Number:J,Object:W,String:F,UUID:z,PersonAttributeTypeUuid:z,PatientIdentifierTypeUuid:z}[t]],n)}function Ne(e,t,n){if(t)try{var r=!0,o=!1,a=void 0;try{for(var i,u=t[Symbol.iterator]();!(r=(i=u.next()).done);r=!0){var c=(0,i.value)(n);"string"==typeof c&&("object"==typeof n?console.error("Invalid configuration for ".concat(e,": ").concat(c)):console.error("Invalid configuration value ".concat(n," for ").concat(e,": ").concat(c)))}}catch(e){o=!0,a=e}finally{try{r||null==u.return||u.return()}finally{if(o)throw a}}}catch(t){console.error('Skipping invalid validator at "'.concat(e,'". Encountered error\n\t').concat(t))}}de(H.getState(),V.getState()),H.subscribe((function(e){return de(e,V.getState())})),V.subscribe((function(e){return de(H.getState(),e)})),ge(H.getState(),V.getState()),H.subscribe((function(e){return ge(e,V.getState())})),V.subscribe((function(e){return ge(H.getState(),e)})),ve(H.getState(),V.getState()),H.subscribe((function(e){return ve(e,V.getState())})),V.subscribe((function(e){return ve(H.getState(),e)})),pe(H.getState(),Y.getState(),V.getState()),H.subscribe((function(e){pe(e,Y.getState(),V.getState())})),Y.subscribe((function(e){pe(H.getState(),e,V.getState())})),V.subscribe((function(e){pe(H.getState(),Y.getState(),e)}));var qe=function(e,t,n){var r=j(t);if(!e)return r;var o=!0,a=!1,i=void 0;try{for(var u,c=function(t,o){var a=o.value,i=r[a],u=e[a];if(u&&u.hasOwnProperty("_default")){if(!r.hasOwnProperty(a)){var c=u._devDefault||u._default;r[a]=n?c:u._default}var l=u._elements;if(i&&Be(l))if(u._type===G.Array&&Array.isArray(i)){var f=i.map((function(e){return qe(l,e,n)}));r[a]=f}else if(u._type===G.Object){var s=!0,y=!1,d=void 0;try{for(var v,g=Object.keys(i)[Symbol.iterator]();!(s=(v=g.next()).done);s=!0){var p=v.value;i[p]=qe(l,i[p],n)}}catch(e){y=!0,d=e}finally{try{s||null==g.return||g.return()}finally{if(y)throw d}}}}else if(Ge(u)){var b=r.hasOwnProperty(a)?i:{};Ge(b)&&(r[a]=qe(u,b,n))}},l=Object.keys(e)[Symbol.iterator]();!(o=(u=l.next()).done);o=!0)c(0,u)}catch(e){a=!0,i=e}finally{try{o||null==l.return||l.return()}finally{if(a)throw i}}return r};function Be(e){return!!e&&Object.keys(e).filter((function(e){return!["_default","_validators"].includes(e)})).length>0}function Ge(e){return"object"==typeof e&&!Array.isArray(e)&&null!==e}var Me=o(645);function Re(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function $e(e,t){var n=window.getOpenmrsSpaBase().replace(/\/$/,"");return Je(e,function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),r.forEach((function(t){Re(e,t,n[t])}))}return e}({openmrsBase:window.openmrsBase,openmrsSpaBase:n},t)).replace(/^\/\//,"/")}function Je(e,t){return Object.keys(t).reduce((function(e,n){return e.split("${"+n+"}").join(t[n])}),e)}function Fe(e){var t=e.to,n=e.templateParams,r=window.getOpenmrsSpaBase().replace(/\/$/,""),o=$e(t,n);o.startsWith(r)?(0,Me.navigateToUrl)(o):window.location.assign(o)}var We=function(e,t){return M((function(n){return e<=n&&n<=t}),"must be between ".concat(e," and ").concat(t))},ze=function(e){var t=e.concat(["openmrsBase","openmrsSpaBase"]);return M((function(e){if(!e||"string"!=typeof e)return!1;for(var n=/\${(.*?)}/g,r=n.exec(e);r;){if(!t.includes(r[1]))return!1;r=n.exec(e)}return!0}),"Should be a URL or path. The allowed template parameters are "+t.map((function(e){return"${"+e+"}"})).join(", "))},Le=ze([]),Xe=function(e){return M((function(t){return e.includes(t)}),"Must be one of the following: '".concat(e.join("', '"),"'."))},He={inRange:We,isUrl:Le,isUrlWithTemplateParameters:ze,oneOf:Xe}})(),a})())}}}));
2
2
  //# sourceMappingURL=openmrs-esm-module-config.js.map