@openmrs/esm-app-shell 10.0.1-pre.5299 → 10.0.1-pre.5316

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.
@@ -5615,7 +5615,7 @@ eval("{__webpack_require__.r(__webpack_exports__);\n__webpack_require__.d(__webp
5615
5615
  },
5616
5616
  "../../framework/esm-dynamic-loading/dist/dynamic-loading.js"(__unused_rspack___webpack_module__, __webpack_exports__, __webpack_require__) {
5617
5617
  "use strict";
5618
- eval("{__webpack_require__.r(__webpack_exports__);\n__webpack_require__.d(__webpack_exports__, {\n getCurrentImportMap: () => (getCurrentImportMap),\n importDynamic: () => (importDynamic),\n preloadImport: () => (preloadImport),\n slugify: () => (slugify)\n});\n/* import */ var _openmrs_esm_globals__rspack_import_0 = __webpack_require__(\"../../framework/esm-globals/dist/index.js\");\n/* import */ var _openmrs_esm_translations__rspack_import_1 = __webpack_require__(\"../../framework/esm-translations/dist/index.js\");\n/* import */ var _import_maps_js__rspack_import_2 = __webpack_require__(\"../../framework/esm-dynamic-loading/dist/import-maps.js\");\n/** @module @category Dynamic Loading */ \nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _async_to_generator(fn) {\n return function() {\n var self = this, args = arguments;\n return new Promise(function(resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nfunction _ts_generator(thisArg, body) {\n var f, y, t, _ = {\n label: 0,\n sent: function() {\n if (t[0] & 1) throw t[1];\n return t[1];\n },\n trys: [],\n ops: []\n }, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype), d = Object.defineProperty;\n return d(g, \"next\", {\n value: verb(0)\n }), d(g, \"throw\", {\n value: verb(1)\n }), d(g, \"return\", {\n value: verb(2)\n }), typeof Symbol === \"function\" && d(g, Symbol.iterator, {\n value: function() {\n return this;\n }\n }), g;\n function verb(n) {\n return function(v) {\n return step([\n n,\n v\n ]);\n };\n }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while(g && (g = 0, op[0] && (_ = 0)), _)try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [\n op[0] & 2,\n t.value\n ];\n switch(op[0]){\n case 0:\n case 1:\n t = op;\n break;\n case 4:\n _.label++;\n return {\n value: op[1],\n done: false\n };\n case 5:\n _.label++;\n y = op[1];\n op = [\n 0\n ];\n continue;\n case 7:\n op = _.ops.pop();\n _.trys.pop();\n continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {\n _.label = op[1];\n break;\n }\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n if (t && _.label < t[2]) {\n _.label = t[2];\n _.ops.push(op);\n break;\n }\n if (t[2]) _.ops.pop();\n _.trys.pop();\n continue;\n }\n op = body.call(thisArg, _);\n } catch (e) {\n op = [\n 6,\n e\n ];\n y = 0;\n } finally{\n f = t = 0;\n }\n if (op[0] & 5) throw op[1];\n return {\n value: op[0] ? op[1] : void 0,\n done: true\n };\n }\n}\n\n\n\n/**\n * @internal\n *\n * Transforms an ESM module name to a valid JS identifier\n *\n * @param name the name of a module\n * @returns An opaque, equivalent JS identifier for the module\n */ function slugify(name) {\n return name.replace(/[\\/\\-@]/g, '_');\n}\n/**\n * Loads the named export from a named package. This might be used like:\n *\n * ```js\n * const { someComponent } = importDynamic(\"@openmrs/esm-template-app\")\n * ```\n *\n * @param jsPackage The package to load the export from.\n * @param share Indicates the name of the shared module; this is an advanced feature if the package you are loading\n * doesn't use the default OpenMRS shared module name \"./start\".\n * @param options Additional options to control loading this script.\n * @param options.importMap The import map to use to load the script. This is useful for situations where you're\n * loading multiple scripts at a time, since it allows the calling code to supply an importMap, saving multiple\n * calls to `getCurrentImportMap()`.\n * @param options.maxLoadingTime A positive integer representing the maximum number of milliseconds to wait for the\n * script to load before the promise returned from this function will be rejected. Defaults to 600,000 milliseconds,\n * i.e., 10 minutes.\n */ function importDynamic(jsPackage) {\n var share = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : './start', options = arguments.length > 2 ? arguments[2] : void 0;\n return _async_to_generator(function() {\n var maxLoadingTime, timeout, jsPackageSlug, container, error, factory, module, error1;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n // default to 10 minutes\n maxLoadingTime = !(options === null || options === void 0 ? void 0 : options.maxLoadingTime) || options.maxLoadingTime <= 0 ? 600000 : options.maxLoadingTime;\n timeout = undefined;\n return [\n 4,\n Promise.race([\n preloadImport(jsPackage, options === null || options === void 0 ? void 0 : options.importMap),\n new Promise(function(_, reject) {\n timeout = setTimeout(function() {\n reject(new Error(\"Could not resolve requested script, \".concat(jsPackage, \", within \").concat(humanReadableMs(maxLoadingTime), \".\")));\n }, maxLoadingTime);\n })\n ])\n ];\n case 1:\n _state.sent();\n if (timeout) {\n clearTimeout(timeout);\n }\n jsPackageSlug = slugify(jsPackage);\n container = window[jsPackageSlug];\n if (!isFederatedModule(container)) {\n error = \"The global variable \".concat(jsPackageSlug, \" does not refer to a federated module\");\n console.error(error);\n throw new Error(error);\n }\n container.init(__webpack_require__.S.default);\n return [\n 4,\n container.get(share)\n ];\n case 2:\n factory = _state.sent();\n module = factory();\n if (!((typeof module === \"undefined\" ? \"undefined\" : _type_of(module)) === 'object') || module === null) {\n error1 = \"Container for \".concat(jsPackage, \" did not return an ESM module as expected\");\n console.error(error1);\n throw new Error(error1);\n }\n return [\n 2,\n module\n ];\n }\n });\n })();\n}\n/**\n * Utility function to convert milliseconds into human-readable strings with rather absurd\n * levels of precision.\n *\n * @param ms Number of milliseconds\n * @returns A human-readable string useful only for error logging, where we can assume English\n */ function humanReadableMs(ms) {\n if (ms < 1000) {\n return \"\".concat(ms, \" milliseconds\");\n } else if (ms < 60000) {\n return \"\".concat(Math.floor(ms / 1000), \" seconds\");\n } else if (ms < 3600000) {\n return \"\".concat(Math.floor(ms / 60000), \" minutes\");\n } else if (ms < 86400000) {\n return \"\".concat(Math.floor(ms / 3600000), \" hours\");\n } else {\n return \"\".concat(Math.floor(ms / 86400000), \" days\");\n }\n}\n/**\n * @internal\n *\n * This internal method is used to ensure that the script belonging\n * to the given package is loaded and added to the head.\n *\n * @param jsPackage The package to load\n * @param importMap The import map to use for loading this package.\n * The main reason for specifying this is to avoid needing to call\n * `getCurrentPageMap()` for every script when bulk loading.\n */ function preloadImport(jsPackage, importMap) {\n return _async_to_generator(function() {\n var error, jsPackageSlug, activeImportMap, _tmp, error1, url, isOverridden, err;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n if (typeof jsPackage !== 'string' || jsPackage.trim().length === 0) {\n error = 'Attempted to call importDynamic() without supplying a package to load';\n console.error(error);\n throw new Error(error);\n }\n jsPackageSlug = slugify(jsPackage);\n if (!!window[jsPackageSlug]) return [\n 3,\n 7\n ];\n if (!(importMap !== null && importMap !== void 0)) return [\n 3,\n 1\n ];\n _tmp = importMap;\n return [\n 3,\n 3\n ];\n case 1:\n return [\n 4,\n getCurrentImportMap()\n ];\n case 2:\n _tmp = _state.sent();\n _state.label = 3;\n case 3:\n activeImportMap = _tmp;\n if (!activeImportMap.imports.hasOwnProperty(jsPackage)) {\n error1 = \"Could not find the package \".concat(jsPackage, \" defined in the current importmap\");\n console.error(error1);\n throw new Error(error1);\n }\n url = activeImportMap.imports[jsPackage];\n if (url.startsWith('./')) {\n url = window.spaBase + url.substring(1);\n }\n isOverridden = jsPackage in (0,_import_maps_js__rspack_import_2.getImportMapOverrideMap)().imports;\n _state.label = 4;\n case 4:\n _state.trys.push([\n 4,\n 6,\n ,\n 7\n ]);\n return [\n 4,\n new Promise(function(resolve, reject) {\n loadScript(url, resolve, reject);\n })\n ];\n case 5:\n return [\n 2,\n _state.sent()\n ];\n case 6:\n err = _state.sent();\n if (isOverridden) {\n (0,_openmrs_esm_globals__rspack_import_0.dispatchToastShown)({\n kind: 'error',\n title: (0,_openmrs_esm_translations__rspack_import_1.getCoreTranslation)('scriptLoadingFailed', 'Error: Script failed to load'),\n description: (0,_openmrs_esm_translations__rspack_import_1.getCoreTranslation)('scriptLoadingError', 'Failed to load overridden script from {{- url}}. Please check that the bundled script is available at the expected URL. Click the button below to reset all import map overrides.', {\n url: url\n }),\n actionButtonLabel: (0,_openmrs_esm_translations__rspack_import_1.getCoreTranslation)('resetOverrides', 'Reset overrides'),\n onActionButtonClick: function onActionButtonClick() {\n (0,_import_maps_js__rspack_import_2.resetImportMapOverrides)();\n window.location.reload();\n }\n });\n }\n return [\n 2,\n Promise.reject(err)\n ];\n case 7:\n return [\n 2,\n Promise.resolve()\n ];\n }\n });\n })();\n}\n/**\n * @internal\n *\n * Used to load the current import map.\n *\n * @returns The current import map.\n */ function getCurrentImportMap() {\n return _async_to_generator(function() {\n return _ts_generator(this, function(_state) {\n return [\n 2,\n (0,_import_maps_js__rspack_import_2.getCurrentPageMap)()\n ];\n });\n })();\n}\nfunction isFederatedModule(a) {\n return (typeof a === \"undefined\" ? \"undefined\" : _type_of(a)) === 'object' && a !== null && 'init' in a && typeof a['init'] === 'function' && 'get' in a && typeof a['get'] === 'function';\n}\n// internals to track script loading\n// basically, if we're already loading a script, we should wait until the script is loaded\n// we use a global to track this\nvar OPENMRS_SCRIPT_LOADING = Symbol('__openmrs_script_loading');\n/**\n * Appends a `<script>` to the DOM with the given URL.\n */ function loadScript(url, resolve, reject) {\n var scriptElement = document.head.querySelector('script[src=\"'.concat(url, '\"]'));\n var scriptLoading = window[OPENMRS_SCRIPT_LOADING];\n if (!scriptLoading) {\n scriptLoading = window[OPENMRS_SCRIPT_LOADING] = new Set([]);\n }\n if (!scriptElement) {\n scriptLoading.add(url);\n var element = document.createElement('script');\n element.src = url;\n element.type = 'text/javascript';\n element.async = true;\n // loadTime() displays an error if a script takes more than 5 seconds to load\n var loadTimeout = setTimeout(function() {\n console.error(\"The script at \".concat(url, \" did not load within 5 seconds. This may indicate an issue with the imports in the script's entry-point file or with the script's bundler configuration.\"));\n }, 5000); // 5 seconds; this is arbitrary\n var loadFn, errFn, finishScriptLoading;\n finishScriptLoading = function finishScriptLoading() {\n clearTimeout(loadTimeout);\n scriptLoading.delete(url);\n if (loadFn) {\n element.removeEventListener('load', loadFn);\n }\n if (errFn) {\n element.removeEventListener('error', errFn);\n }\n };\n loadFn = function loadFn() {\n finishScriptLoading();\n resolve(null);\n };\n errFn = function errFn(ev) {\n var _ev_message;\n finishScriptLoading();\n var msg = \"Failed to load script from \".concat(url);\n console.error(msg, ev);\n reject((_ev_message = ev.message) !== null && _ev_message !== void 0 ? _ev_message : msg);\n };\n element.addEventListener('load', loadFn);\n element.addEventListener('error', errFn);\n document.head.appendChild(element);\n } else {\n if (scriptLoading.has(url)) {\n var loadFn1, errFn1, finishScriptLoading1;\n finishScriptLoading1 = function finishScriptLoading() {\n if (loadFn1) {\n scriptElement.removeEventListener('load', loadFn1);\n }\n if (errFn1) {\n scriptElement.removeEventListener('error', errFn1);\n }\n };\n loadFn1 = function loadFn() {\n finishScriptLoading1();\n resolve(null);\n };\n // this errFn does not log anything\n errFn1 = function errFn(ev) {\n finishScriptLoading1();\n reject(ev.message);\n };\n scriptElement.addEventListener('load', loadFn1);\n scriptElement.addEventListener('error', errFn1);\n } else {\n console.warn(\"Script at \".concat(url, \" already loaded. Not loading it again.\"));\n resolve(null);\n }\n }\n}\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiamF2YXNjcmlwdC9lc218YnVpbHRpbjpzd2MtbG9hZGVyIS9ob21lL3J1bm5lci93b3JrL29wZW5tcnMtZXNtLWNvcmUvb3Blbm1ycy1lc20tY29yZS9wYWNrYWdlcy9mcmFtZXdvcmsvZXNtLWR5bmFtaWMtbG9hZGluZy9kaXN0L2R5bmFtaWMtbG9hZGluZy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovL0BvcGVubXJzL2VzbS1hcHAtc2hlbGwvLi4vLi4vZnJhbWV3b3JrL2VzbS1keW5hbWljLWxvYWRpbmcvZGlzdC9keW5hbWljLWxvYWRpbmcuanM/MTkyMiJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiogQG1vZHVsZSBAY2F0ZWdvcnkgRHluYW1pYyBMb2FkaW5nICovICd1c2Ugc3RyaWN0JztcbmltcG9ydCB7IGRpc3BhdGNoVG9hc3RTaG93biB9IGZyb20gXCJAb3Blbm1ycy9lc20tZ2xvYmFsc1wiO1xuaW1wb3J0IHsgZ2V0Q29yZVRyYW5zbGF0aW9uIH0gZnJvbSBcIkBvcGVubXJzL2VzbS10cmFuc2xhdGlvbnNcIjtcbmltcG9ydCB7IGdldEN1cnJlbnRQYWdlTWFwLCBnZXRJbXBvcnRNYXBPdmVycmlkZU1hcCwgcmVzZXRJbXBvcnRNYXBPdmVycmlkZXMgfSBmcm9tIFwiLi9pbXBvcnQtbWFwcy5qc1wiO1xuLyoqXG4gKiBAaW50ZXJuYWxcbiAqXG4gKiBUcmFuc2Zvcm1zIGFuIEVTTSBtb2R1bGUgbmFtZSB0byBhIHZhbGlkIEpTIGlkZW50aWZpZXJcbiAqXG4gKiBAcGFyYW0gbmFtZSB0aGUgbmFtZSBvZiBhIG1vZHVsZVxuICogQHJldHVybnMgQW4gb3BhcXVlLCBlcXVpdmFsZW50IEpTIGlkZW50aWZpZXIgZm9yIHRoZSBtb2R1bGVcbiAqLyBleHBvcnQgZnVuY3Rpb24gc2x1Z2lmeShuYW1lKSB7XG4gICAgcmV0dXJuIG5hbWUucmVwbGFjZSgvW1xcL1xcLUBdL2csICdfJyk7XG59XG4vKipcbiAqIExvYWRzIHRoZSBuYW1lZCBleHBvcnQgZnJvbSBhIG5hbWVkIHBhY2thZ2UuIFRoaXMgbWlnaHQgYmUgdXNlZCBsaWtlOlxuICpcbiAqIGBgYGpzXG4gKiBjb25zdCB7IHNvbWVDb21wb25lbnQgfSA9IGltcG9ydER5bmFtaWMoXCJAb3Blbm1ycy9lc20tdGVtcGxhdGUtYXBwXCIpXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0ganNQYWNrYWdlIFRoZSBwYWNrYWdlIHRvIGxvYWQgdGhlIGV4cG9ydCBmcm9tLlxuICogQHBhcmFtIHNoYXJlIEluZGljYXRlcyB0aGUgbmFtZSBvZiB0aGUgc2hhcmVkIG1vZHVsZTsgdGhpcyBpcyBhbiBhZHZhbmNlZCBmZWF0dXJlIGlmIHRoZSBwYWNrYWdlIHlvdSBhcmUgbG9hZGluZ1xuICogICBkb2Vzbid0IHVzZSB0aGUgZGVmYXVsdCBPcGVuTVJTIHNoYXJlZCBtb2R1bGUgbmFtZSBcIi4vc3RhcnRcIi5cbiAqIEBwYXJhbSBvcHRpb25zIEFkZGl0aW9uYWwgb3B0aW9ucyB0byBjb250cm9sIGxvYWRpbmcgdGhpcyBzY3JpcHQuXG4gKiBAcGFyYW0gb3B0aW9ucy5pbXBvcnRNYXAgVGhlIGltcG9ydCBtYXAgdG8gdXNlIHRvIGxvYWQgdGhlIHNjcmlwdC4gVGhpcyBpcyB1c2VmdWwgZm9yIHNpdHVhdGlvbnMgd2hlcmUgeW91J3JlXG4gKiAgIGxvYWRpbmcgbXVsdGlwbGUgc2NyaXB0cyBhdCBhIHRpbWUsIHNpbmNlIGl0IGFsbG93cyB0aGUgY2FsbGluZyBjb2RlIHRvIHN1cHBseSBhbiBpbXBvcnRNYXAsIHNhdmluZyBtdWx0aXBsZVxuICogICBjYWxscyB0byBgZ2V0Q3VycmVudEltcG9ydE1hcCgpYC5cbiAqIEBwYXJhbSBvcHRpb25zLm1heExvYWRpbmdUaW1lIEEgcG9zaXRpdmUgaW50ZWdlciByZXByZXNlbnRpbmcgdGhlIG1heGltdW0gbnVtYmVyIG9mIG1pbGxpc2Vjb25kcyB0byB3YWl0IGZvciB0aGVcbiAqICAgc2NyaXB0IHRvIGxvYWQgYmVmb3JlIHRoZSBwcm9taXNlIHJldHVybmVkIGZyb20gdGhpcyBmdW5jdGlvbiB3aWxsIGJlIHJlamVjdGVkLiBEZWZhdWx0cyB0byA2MDAsMDAwIG1pbGxpc2Vjb25kcyxcbiAqICAgaS5lLiwgMTAgbWludXRlcy5cbiAqLyBleHBvcnQgYXN5bmMgZnVuY3Rpb24gaW1wb3J0RHluYW1pYyhqc1BhY2thZ2UsIHNoYXJlID0gJy4vc3RhcnQnLCBvcHRpb25zKSB7XG4gICAgLy8gZGVmYXVsdCB0byAxMCBtaW51dGVzXG4gICAgY29uc3QgbWF4TG9hZGluZ1RpbWUgPSAhb3B0aW9ucz8ubWF4TG9hZGluZ1RpbWUgfHwgb3B0aW9ucy5tYXhMb2FkaW5nVGltZSA8PSAwID8gNjAwMDAwIDogb3B0aW9ucy5tYXhMb2FkaW5nVGltZTtcbiAgICBsZXQgdGltZW91dCA9IHVuZGVmaW5lZDtcbiAgICBhd2FpdCBQcm9taXNlLnJhY2UoW1xuICAgICAgICBwcmVsb2FkSW1wb3J0KGpzUGFja2FnZSwgb3B0aW9ucz8uaW1wb3J0TWFwKSxcbiAgICAgICAgbmV3IFByb21pc2UoKF8sIHJlamVjdCk9PntcbiAgICAgICAgICAgIHRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpPT57XG4gICAgICAgICAgICAgICAgcmVqZWN0KG5ldyBFcnJvcihgQ291bGQgbm90IHJlc29sdmUgcmVxdWVzdGVkIHNjcmlwdCwgJHtqc1BhY2thZ2V9LCB3aXRoaW4gJHtodW1hblJlYWRhYmxlTXMobWF4TG9hZGluZ1RpbWUpfS5gKSk7XG4gICAgICAgICAgICB9LCBtYXhMb2FkaW5nVGltZSk7XG4gICAgICAgIH0pXG4gICAgXSk7XG4gICAgaWYgKHRpbWVvdXQpIHtcbiAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXQpO1xuICAgIH1cbiAgICBjb25zdCBqc1BhY2thZ2VTbHVnID0gc2x1Z2lmeShqc1BhY2thZ2UpO1xuICAgIGNvbnN0IGNvbnRhaW5lciA9IHdpbmRvd1tqc1BhY2thZ2VTbHVnXTtcbiAgICBpZiAoIWlzRmVkZXJhdGVkTW9kdWxlKGNvbnRhaW5lcikpIHtcbiAgICAgICAgY29uc3QgZXJyb3IgPSBgVGhlIGdsb2JhbCB2YXJpYWJsZSAke2pzUGFja2FnZVNsdWd9IGRvZXMgbm90IHJlZmVyIHRvIGEgZmVkZXJhdGVkIG1vZHVsZWA7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoZXJyb3IpO1xuICAgIH1cbiAgICBjb250YWluZXIuaW5pdChfX3dlYnBhY2tfc2hhcmVfc2NvcGVzX18uZGVmYXVsdCk7XG4gICAgY29uc3QgZmFjdG9yeSA9IGF3YWl0IGNvbnRhaW5lci5nZXQoc2hhcmUpO1xuICAgIGNvbnN0IG1vZHVsZSA9IGZhY3RvcnkoKTtcbiAgICBpZiAoISh0eXBlb2YgbW9kdWxlID09PSAnb2JqZWN0JykgfHwgbW9kdWxlID09PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IGVycm9yID0gYENvbnRhaW5lciBmb3IgJHtqc1BhY2thZ2V9IGRpZCBub3QgcmV0dXJuIGFuIEVTTSBtb2R1bGUgYXMgZXhwZWN0ZWRgO1xuICAgICAgICBjb25zb2xlLmVycm9yKGVycm9yKTtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGVycm9yKTtcbiAgICB9XG4gICAgcmV0dXJuIG1vZHVsZTtcbn1cbi8qKlxuICogVXRpbGl0eSBmdW5jdGlvbiB0byBjb252ZXJ0IG1pbGxpc2Vjb25kcyBpbnRvIGh1bWFuLXJlYWRhYmxlIHN0cmluZ3Mgd2l0aCByYXRoZXIgYWJzdXJkXG4gKiBsZXZlbHMgb2YgcHJlY2lzaW9uLlxuICpcbiAqIEBwYXJhbSBtcyBOdW1iZXIgb2YgbWlsbGlzZWNvbmRzXG4gKiBAcmV0dXJucyBBIGh1bWFuLXJlYWRhYmxlIHN0cmluZyB1c2VmdWwgb25seSBmb3IgZXJyb3IgbG9nZ2luZywgd2hlcmUgd2UgY2FuIGFzc3VtZSBFbmdsaXNoXG4gKi8gZnVuY3Rpb24gaHVtYW5SZWFkYWJsZU1zKG1zKSB7XG4gICAgaWYgKG1zIDwgMTAwMCkge1xuICAgICAgICByZXR1cm4gYCR7bXN9IG1pbGxpc2Vjb25kc2A7XG4gICAgfSBlbHNlIGlmIChtcyA8IDYwMDAwKSB7XG4gICAgICAgIHJldHVybiBgJHtNYXRoLmZsb29yKG1zIC8gMTAwMCl9IHNlY29uZHNgO1xuICAgIH0gZWxzZSBpZiAobXMgPCAzNjAwMDAwKSB7XG4gICAgICAgIHJldHVybiBgJHtNYXRoLmZsb29yKG1zIC8gNjAwMDApfSBtaW51dGVzYDtcbiAgICB9IGVsc2UgaWYgKG1zIDwgODY0MDAwMDApIHtcbiAgICAgICAgcmV0dXJuIGAke01hdGguZmxvb3IobXMgLyAzNjAwMDAwKX0gaG91cnNgO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBgJHtNYXRoLmZsb29yKG1zIC8gODY0MDAwMDApfSBkYXlzYDtcbiAgICB9XG59XG4vKipcbiAqIEBpbnRlcm5hbFxuICpcbiAqIFRoaXMgaW50ZXJuYWwgbWV0aG9kIGlzIHVzZWQgdG8gZW5zdXJlIHRoYXQgdGhlIHNjcmlwdCBiZWxvbmdpbmdcbiAqIHRvIHRoZSBnaXZlbiBwYWNrYWdlIGlzIGxvYWRlZCBhbmQgYWRkZWQgdG8gdGhlIGhlYWQuXG4gKlxuICogQHBhcmFtIGpzUGFja2FnZSBUaGUgcGFja2FnZSB0byBsb2FkXG4gKiBAcGFyYW0gaW1wb3J0TWFwIFRoZSBpbXBvcnQgbWFwIHRvIHVzZSBmb3IgbG9hZGluZyB0aGlzIHBhY2thZ2UuXG4gKiAgVGhlIG1haW4gcmVhc29uIGZvciBzcGVjaWZ5aW5nIHRoaXMgaXMgdG8gYXZvaWQgbmVlZGluZyB0byBjYWxsXG4gKiAgYGdldEN1cnJlbnRQYWdlTWFwKClgIGZvciBldmVyeSBzY3JpcHQgd2hlbiBidWxrIGxvYWRpbmcuXG4gKi8gZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHByZWxvYWRJbXBvcnQoanNQYWNrYWdlLCBpbXBvcnRNYXApIHtcbiAgICBpZiAodHlwZW9mIGpzUGFja2FnZSAhPT0gJ3N0cmluZycgfHwganNQYWNrYWdlLnRyaW0oKS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgY29uc3QgZXJyb3IgPSAnQXR0ZW1wdGVkIHRvIGNhbGwgaW1wb3J0RHluYW1pYygpIHdpdGhvdXQgc3VwcGx5aW5nIGEgcGFja2FnZSB0byBsb2FkJztcbiAgICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihlcnJvcik7XG4gICAgfVxuICAgIGNvbnN0IGpzUGFja2FnZVNsdWcgPSBzbHVnaWZ5KGpzUGFja2FnZSk7XG4gICAgaWYgKCF3aW5kb3dbanNQYWNrYWdlU2x1Z10pIHtcbiAgICAgICAgY29uc3QgYWN0aXZlSW1wb3J0TWFwID0gaW1wb3J0TWFwID8/IGF3YWl0IGdldEN1cnJlbnRJbXBvcnRNYXAoKTtcbiAgICAgICAgaWYgKCFhY3RpdmVJbXBvcnRNYXAuaW1wb3J0cy5oYXNPd25Qcm9wZXJ0eShqc1BhY2thZ2UpKSB7XG4gICAgICAgICAgICBjb25zdCBlcnJvciA9IGBDb3VsZCBub3QgZmluZCB0aGUgcGFja2FnZSAke2pzUGFja2FnZX0gZGVmaW5lZCBpbiB0aGUgY3VycmVudCBpbXBvcnRtYXBgO1xuICAgICAgICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoZXJyb3IpO1xuICAgICAgICB9XG4gICAgICAgIGxldCB1cmwgPSBhY3RpdmVJbXBvcnRNYXAuaW1wb3J0c1tqc1BhY2thZ2VdO1xuICAgICAgICBpZiAodXJsLnN0YXJ0c1dpdGgoJy4vJykpIHtcbiAgICAgICAgICAgIHVybCA9IHdpbmRvdy5zcGFCYXNlICsgdXJsLnN1YnN0cmluZygxKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBpc092ZXJyaWRkZW4gPSBqc1BhY2thZ2UgaW4gZ2V0SW1wb3J0TWFwT3ZlcnJpZGVNYXAoKS5pbXBvcnRzO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgcmV0dXJuIGF3YWl0IG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpPT57XG4gICAgICAgICAgICAgICAgbG9hZFNjcmlwdCh1cmwsIHJlc29sdmUsIHJlamVjdCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICBpZiAoaXNPdmVycmlkZGVuKSB7XG4gICAgICAgICAgICAgICAgZGlzcGF0Y2hUb2FzdFNob3duKHtcbiAgICAgICAgICAgICAgICAgICAga2luZDogJ2Vycm9yJyxcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6IGdldENvcmVUcmFuc2xhdGlvbignc2NyaXB0TG9hZGluZ0ZhaWxlZCcsICdFcnJvcjogU2NyaXB0IGZhaWxlZCB0byBsb2FkJyksXG4gICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBnZXRDb3JlVHJhbnNsYXRpb24oJ3NjcmlwdExvYWRpbmdFcnJvcicsICdGYWlsZWQgdG8gbG9hZCBvdmVycmlkZGVuIHNjcmlwdCBmcm9tIHt7LSB1cmx9fS4gUGxlYXNlIGNoZWNrIHRoYXQgdGhlIGJ1bmRsZWQgc2NyaXB0IGlzIGF2YWlsYWJsZSBhdCB0aGUgZXhwZWN0ZWQgVVJMLiBDbGljayB0aGUgYnV0dG9uIGJlbG93IHRvIHJlc2V0IGFsbCBpbXBvcnQgbWFwIG92ZXJyaWRlcy4nLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB1cmxcbiAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbkJ1dHRvbkxhYmVsOiBnZXRDb3JlVHJhbnNsYXRpb24oJ3Jlc2V0T3ZlcnJpZGVzJywgJ1Jlc2V0IG92ZXJyaWRlcycpLFxuICAgICAgICAgICAgICAgICAgICBvbkFjdGlvbkJ1dHRvbkNsaWNrICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc2V0SW1wb3J0TWFwT3ZlcnJpZGVzKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3cubG9jYXRpb24ucmVsb2FkKCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChlcnIpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbn1cbi8qKlxuICogQGludGVybmFsXG4gKlxuICogVXNlZCB0byBsb2FkIHRoZSBjdXJyZW50IGltcG9ydCBtYXAuXG4gKlxuICogQHJldHVybnMgVGhlIGN1cnJlbnQgaW1wb3J0IG1hcC5cbiAqLyBleHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0Q3VycmVudEltcG9ydE1hcCgpIHtcbiAgICByZXR1cm4gZ2V0Q3VycmVudFBhZ2VNYXAoKTtcbn1cbmZ1bmN0aW9uIGlzRmVkZXJhdGVkTW9kdWxlKGEpIHtcbiAgICByZXR1cm4gdHlwZW9mIGEgPT09ICdvYmplY3QnICYmIGEgIT09IG51bGwgJiYgJ2luaXQnIGluIGEgJiYgdHlwZW9mIGFbJ2luaXQnXSA9PT0gJ2Z1bmN0aW9uJyAmJiAnZ2V0JyBpbiBhICYmIHR5cGVvZiBhWydnZXQnXSA9PT0gJ2Z1bmN0aW9uJztcbn1cbi8vIGludGVybmFscyB0byB0cmFjayBzY3JpcHQgbG9hZGluZ1xuLy8gYmFzaWNhbGx5LCBpZiB3ZSdyZSBhbHJlYWR5IGxvYWRpbmcgYSBzY3JpcHQsIHdlIHNob3VsZCB3YWl0IHVudGlsIHRoZSBzY3JpcHQgaXMgbG9hZGVkXG4vLyB3ZSB1c2UgYSBnbG9iYWwgdG8gdHJhY2sgdGhpc1xuY29uc3QgT1BFTk1SU19TQ1JJUFRfTE9BRElORyA9IFN5bWJvbCgnX19vcGVubXJzX3NjcmlwdF9sb2FkaW5nJyk7XG4vKipcbiAqIEFwcGVuZHMgYSBgPHNjcmlwdD5gIHRvIHRoZSBET00gd2l0aCB0aGUgZ2l2ZW4gVVJMLlxuICovIGZ1bmN0aW9uIGxvYWRTY3JpcHQodXJsLCByZXNvbHZlLCByZWplY3QpIHtcbiAgICBjb25zdCBzY3JpcHRFbGVtZW50ID0gZG9jdW1lbnQuaGVhZC5xdWVyeVNlbGVjdG9yKGBzY3JpcHRbc3JjPVwiJHt1cmx9XCJdYCk7XG4gICAgbGV0IHNjcmlwdExvYWRpbmcgPSB3aW5kb3dbT1BFTk1SU19TQ1JJUFRfTE9BRElOR107XG4gICAgaWYgKCFzY3JpcHRMb2FkaW5nKSB7XG4gICAgICAgIHNjcmlwdExvYWRpbmcgPSB3aW5kb3dbT1BFTk1SU19TQ1JJUFRfTE9BRElOR10gPSBuZXcgU2V0KFtdKTtcbiAgICB9XG4gICAgaWYgKCFzY3JpcHRFbGVtZW50KSB7XG4gICAgICAgIHNjcmlwdExvYWRpbmcuYWRkKHVybCk7XG4gICAgICAgIGNvbnN0IGVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcbiAgICAgICAgZWxlbWVudC5zcmMgPSB1cmw7XG4gICAgICAgIGVsZW1lbnQudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnO1xuICAgICAgICBlbGVtZW50LmFzeW5jID0gdHJ1ZTtcbiAgICAgICAgLy8gbG9hZFRpbWUoKSBkaXNwbGF5cyBhbiBlcnJvciBpZiBhIHNjcmlwdCB0YWtlcyBtb3JlIHRoYW4gNSBzZWNvbmRzIHRvIGxvYWRcbiAgICAgICAgY29uc3QgbG9hZFRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpPT57XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGBUaGUgc2NyaXB0IGF0ICR7dXJsfSBkaWQgbm90IGxvYWQgd2l0aGluIDUgc2Vjb25kcy4gVGhpcyBtYXkgaW5kaWNhdGUgYW4gaXNzdWUgd2l0aCB0aGUgaW1wb3J0cyBpbiB0aGUgc2NyaXB0J3MgZW50cnktcG9pbnQgZmlsZSBvciB3aXRoIHRoZSBzY3JpcHQncyBidW5kbGVyIGNvbmZpZ3VyYXRpb24uYCk7XG4gICAgICAgIH0sIDUwMDApOyAvLyA1IHNlY29uZHM7IHRoaXMgaXMgYXJiaXRyYXJ5XG4gICAgICAgIGxldCBsb2FkRm4sIGVyckZuLCBmaW5pc2hTY3JpcHRMb2FkaW5nO1xuICAgICAgICBmaW5pc2hTY3JpcHRMb2FkaW5nID0gKCk9PntcbiAgICAgICAgICAgIGNsZWFyVGltZW91dChsb2FkVGltZW91dCk7XG4gICAgICAgICAgICBzY3JpcHRMb2FkaW5nLmRlbGV0ZSh1cmwpO1xuICAgICAgICAgICAgaWYgKGxvYWRGbikge1xuICAgICAgICAgICAgICAgIGVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbG9hZCcsIGxvYWRGbik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoZXJyRm4pIHtcbiAgICAgICAgICAgICAgICBlbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgZXJyRm4pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgICBsb2FkRm4gPSAoKT0+e1xuICAgICAgICAgICAgZmluaXNoU2NyaXB0TG9hZGluZygpO1xuICAgICAgICAgICAgcmVzb2x2ZShudWxsKTtcbiAgICAgICAgfTtcbiAgICAgICAgZXJyRm4gPSAoZXYpPT57XG4gICAgICAgICAgICBmaW5pc2hTY3JpcHRMb2FkaW5nKCk7XG4gICAgICAgICAgICBjb25zdCBtc2cgPSBgRmFpbGVkIHRvIGxvYWQgc2NyaXB0IGZyb20gJHt1cmx9YDtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IobXNnLCBldik7XG4gICAgICAgICAgICByZWplY3QoZXYubWVzc2FnZSA/PyBtc2cpO1xuICAgICAgICB9O1xuICAgICAgICBlbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBsb2FkRm4pO1xuICAgICAgICBlbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgZXJyRm4pO1xuICAgICAgICBkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKGVsZW1lbnQpO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIGlmIChzY3JpcHRMb2FkaW5nLmhhcyh1cmwpKSB7XG4gICAgICAgICAgICBsZXQgbG9hZEZuLCBlcnJGbiwgZmluaXNoU2NyaXB0TG9hZGluZztcbiAgICAgICAgICAgIGZpbmlzaFNjcmlwdExvYWRpbmcgPSAoKT0+e1xuICAgICAgICAgICAgICAgIGlmIChsb2FkRm4pIHtcbiAgICAgICAgICAgICAgICAgICAgc2NyaXB0RWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdsb2FkJywgbG9hZEZuKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGVyckZuKSB7XG4gICAgICAgICAgICAgICAgICAgIHNjcmlwdEVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignZXJyb3InLCBlcnJGbik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGxvYWRGbiA9ICgpPT57XG4gICAgICAgICAgICAgICAgZmluaXNoU2NyaXB0TG9hZGluZygpO1xuICAgICAgICAgICAgICAgIHJlc29sdmUobnVsbCk7XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLy8gdGhpcyBlcnJGbiBkb2VzIG5vdCBsb2cgYW55dGhpbmdcbiAgICAgICAgICAgIGVyckZuID0gKGV2KT0+e1xuICAgICAgICAgICAgICAgIGZpbmlzaFNjcmlwdExvYWRpbmcoKTtcbiAgICAgICAgICAgICAgICByZWplY3QoZXYubWVzc2FnZSk7XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgc2NyaXB0RWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgbG9hZEZuKTtcbiAgICAgICAgICAgIHNjcmlwdEVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignZXJyb3InLCBlcnJGbik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oYFNjcmlwdCBhdCAke3VybH0gYWxyZWFkeSBsb2FkZWQuIE5vdCBsb2FkaW5nIGl0IGFnYWluLmApO1xuICAgICAgICAgICAgcmVzb2x2ZShudWxsKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdLCJuYW1lcyI6WyJkaXNwYXRjaFRvYXN0U2hvd24iLCJnZXRDb3JlVHJhbnNsYXRpb24iLCJnZXRDdXJyZW50UGFnZU1hcCIsImdldEltcG9ydE1hcE92ZXJyaWRlTWFwIiwicmVzZXRJbXBvcnRNYXBPdmVycmlkZXMiLCJzbHVnaWZ5IiwibmFtZSIsImltcG9ydER5bmFtaWMiLCJqc1BhY2thZ2UiLCJzaGFyZSIsIm9wdGlvbnMiLCJtYXhMb2FkaW5nVGltZSIsInRpbWVvdXQiLCJqc1BhY2thZ2VTbHVnIiwiY29udGFpbmVyIiwiZXJyb3IiLCJmYWN0b3J5IiwibW9kdWxlIiwiZXJyb3IxIiwidW5kZWZpbmVkIiwiUHJvbWlzZSIsInByZWxvYWRJbXBvcnQiLCJfIiwicmVqZWN0Iiwic2V0VGltZW91dCIsIkVycm9yIiwiaHVtYW5SZWFkYWJsZU1zIiwiY2xlYXJUaW1lb3V0Iiwid2luZG93IiwiaXNGZWRlcmF0ZWRNb2R1bGUiLCJjb25zb2xlIiwiX193ZWJwYWNrX3NoYXJlX3Njb3Blc19fIiwiX3R5cGVfb2YiLCJtcyIsIk1hdGgiLCJpbXBvcnRNYXAiLCJhY3RpdmVJbXBvcnRNYXAiLCJ1cmwiLCJpc092ZXJyaWRkZW4iLCJlcnIiLCJnZXRDdXJyZW50SW1wb3J0TWFwIiwicmVzb2x2ZSIsImxvYWRTY3JpcHQiLCJvbkFjdGlvbkJ1dHRvbkNsaWNrIiwiYSIsIk9QRU5NUlNfU0NSSVBUX0xPQURJTkciLCJTeW1ib2wiLCJzY3JpcHRFbGVtZW50IiwiZG9jdW1lbnQiLCJzY3JpcHRMb2FkaW5nIiwiU2V0IiwiZWxlbWVudCIsImxvYWRUaW1lb3V0IiwibG9hZEZuIiwiZXJyRm4iLCJmaW5pc2hTY3JpcHRMb2FkaW5nIiwiZXYiLCJfZXZfbWVzc2FnZSIsIm1zZyIsImxvYWRGbjEiLCJlcnJGbjEiLCJmaW5pc2hTY3JpcHRMb2FkaW5nMSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFBLHNDQUFzQyxHQUFnQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNJO0FBQ0s7QUFDd0M7QUFDdkc7Ozs7Ozs7Q0FPQyxHQUFVLFNBQVNLLFFBQVFDLElBQUk7SUFDNUIsT0FBT0Es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\n//# sourceURL=webpack-internal:///../../framework/esm-dynamic-loading/dist/dynamic-loading.js\n\n}");
5618
+ eval("{__webpack_require__.r(__webpack_exports__);\n__webpack_require__.d(__webpack_exports__, {\n getCurrentImportMap: () => (getCurrentImportMap),\n importDynamic: () => (importDynamic),\n preloadImport: () => (preloadImport),\n slugify: () => (slugify)\n});\n/* import */ var _openmrs_esm_globals__rspack_import_0 = __webpack_require__(\"../../framework/esm-globals/dist/index.js\");\n/* import */ var _openmrs_esm_translations__rspack_import_1 = __webpack_require__(\"../../framework/esm-translations/dist/index.js\");\n/* import */ var _import_maps_js__rspack_import_2 = __webpack_require__(\"../../framework/esm-dynamic-loading/dist/import-maps.js\");\n/** @module @category Dynamic Loading */ \nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _async_to_generator(fn) {\n return function() {\n var self = this, args = arguments;\n return new Promise(function(resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nfunction _ts_generator(thisArg, body) {\n var f, y, t, _ = {\n label: 0,\n sent: function() {\n if (t[0] & 1) throw t[1];\n return t[1];\n },\n trys: [],\n ops: []\n }, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype), d = Object.defineProperty;\n return d(g, \"next\", {\n value: verb(0)\n }), d(g, \"throw\", {\n value: verb(1)\n }), d(g, \"return\", {\n value: verb(2)\n }), typeof Symbol === \"function\" && d(g, Symbol.iterator, {\n value: function() {\n return this;\n }\n }), g;\n function verb(n) {\n return function(v) {\n return step([\n n,\n v\n ]);\n };\n }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while(g && (g = 0, op[0] && (_ = 0)), _)try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [\n op[0] & 2,\n t.value\n ];\n switch(op[0]){\n case 0:\n case 1:\n t = op;\n break;\n case 4:\n _.label++;\n return {\n value: op[1],\n done: false\n };\n case 5:\n _.label++;\n y = op[1];\n op = [\n 0\n ];\n continue;\n case 7:\n op = _.ops.pop();\n _.trys.pop();\n continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {\n _.label = op[1];\n break;\n }\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n if (t && _.label < t[2]) {\n _.label = t[2];\n _.ops.push(op);\n break;\n }\n if (t[2]) _.ops.pop();\n _.trys.pop();\n continue;\n }\n op = body.call(thisArg, _);\n } catch (e) {\n op = [\n 6,\n e\n ];\n y = 0;\n } finally{\n f = t = 0;\n }\n if (op[0] & 5) throw op[1];\n return {\n value: op[0] ? op[1] : void 0,\n done: true\n };\n }\n}\n\n\n\n/**\n * @internal\n *\n * Transforms an ESM module name to a valid JS identifier\n *\n * @param name the name of a module\n * @returns An opaque, equivalent JS identifier for the module\n */ function slugify(name) {\n return name.replace(/[\\/\\-@]/g, '_');\n}\n/**\n * Loads the named export from a named package. This might be used like:\n *\n * ```js\n * const { someComponent } = importDynamic(\"@openmrs/esm-template-app\")\n * ```\n *\n * @param jsPackage The package to load the export from.\n * @param share Indicates the name of the shared module; this is an advanced feature if the package you are loading\n * doesn't use the default OpenMRS shared module name \"./start\".\n * @param options Additional options to control loading this script.\n * @param options.importMap The import map to use to load the script. This is useful for situations where you're\n * loading multiple scripts at a time, since it allows the calling code to supply an importMap, saving multiple\n * calls to `getCurrentImportMap()`.\n * @param options.maxLoadingTime A positive integer representing the maximum number of milliseconds to wait for the\n * script to load before the promise returned from this function will be rejected. Defaults to 600,000 milliseconds,\n * i.e., 10 minutes.\n */ function importDynamic(jsPackage) {\n var share = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : './start', options = arguments.length > 2 ? arguments[2] : void 0;\n return _async_to_generator(function() {\n var maxLoadingTime, timeout, jsPackageSlug, container, error, factory, module, error1;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n // default to 10 minutes\n maxLoadingTime = !(options === null || options === void 0 ? void 0 : options.maxLoadingTime) || options.maxLoadingTime <= 0 ? 600000 : options.maxLoadingTime;\n timeout = undefined;\n return [\n 4,\n Promise.race([\n preloadImport(jsPackage, options === null || options === void 0 ? void 0 : options.importMap),\n new Promise(function(_, reject) {\n timeout = setTimeout(function() {\n reject(new Error(\"Could not resolve requested script, \".concat(jsPackage, \", within \").concat(humanReadableMs(maxLoadingTime), \".\")));\n }, maxLoadingTime);\n })\n ])\n ];\n case 1:\n _state.sent();\n if (timeout) {\n clearTimeout(timeout);\n }\n jsPackageSlug = slugify(jsPackage);\n container = window[jsPackageSlug];\n if (!isFederatedModule(container)) {\n error = \"The global variable \".concat(jsPackageSlug, \" does not refer to a federated module\");\n console.error(error);\n throw new Error(error);\n }\n container.init(__webpack_require__.S.default);\n return [\n 4,\n container.get(share)\n ];\n case 2:\n factory = _state.sent();\n module = factory();\n if (!((typeof module === \"undefined\" ? \"undefined\" : _type_of(module)) === 'object') || module === null) {\n error1 = \"Container for \".concat(jsPackage, \" did not return an ESM module as expected\");\n console.error(error1);\n throw new Error(error1);\n }\n return [\n 2,\n module\n ];\n }\n });\n })();\n}\n/**\n * Utility function to convert milliseconds into human-readable strings with rather absurd\n * levels of precision.\n *\n * @param ms Number of milliseconds\n * @returns A human-readable string useful only for error logging, where we can assume English\n */ function humanReadableMs(ms) {\n if (ms < 1000) {\n return \"\".concat(ms, \" milliseconds\");\n } else if (ms < 60000) {\n return \"\".concat(Math.floor(ms / 1000), \" seconds\");\n } else if (ms < 3600000) {\n return \"\".concat(Math.floor(ms / 60000), \" minutes\");\n } else if (ms < 86400000) {\n return \"\".concat(Math.floor(ms / 3600000), \" hours\");\n } else {\n return \"\".concat(Math.floor(ms / 86400000), \" days\");\n }\n}\n/**\n * @internal\n *\n * This internal method is used to ensure that the script belonging\n * to the given package is loaded and added to the head. Concurrent and\n * repeat calls for the same package share a single request for it.\n *\n * @param jsPackage The package to load\n * @param importMap The import map to use for loading this package.\n * The main reason for specifying this is to avoid needing to call\n * `getCurrentPageMap()` for every script when bulk loading.\n */ function preloadImport(jsPackage, importMap) {\n return _async_to_generator(function() {\n var error, jsPackageSlug, activeImportMap, _tmp, error1, url, isOverridden, err;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n if (typeof jsPackage !== 'string' || jsPackage.trim().length === 0) {\n error = 'Attempted to call importDynamic() without supplying a package to load';\n console.error(error);\n throw new Error(error);\n }\n jsPackageSlug = slugify(jsPackage);\n if (!!window[jsPackageSlug]) return [\n 3,\n 7\n ];\n if (!(importMap !== null && importMap !== void 0)) return [\n 3,\n 1\n ];\n _tmp = importMap;\n return [\n 3,\n 3\n ];\n case 1:\n return [\n 4,\n getCurrentImportMap()\n ];\n case 2:\n _tmp = _state.sent();\n _state.label = 3;\n case 3:\n activeImportMap = _tmp;\n if (!activeImportMap.imports.hasOwnProperty(jsPackage)) {\n error1 = \"Could not find the package \".concat(jsPackage, \" defined in the current importmap\");\n console.error(error1);\n throw new Error(error1);\n }\n url = activeImportMap.imports[jsPackage];\n if (url.startsWith('./')) {\n url = window.spaBase + url.substring(1);\n }\n isOverridden = jsPackage in (0,_import_maps_js__rspack_import_2.getImportMapOverrideMap)().imports;\n _state.label = 4;\n case 4:\n _state.trys.push([\n 4,\n 6,\n ,\n 7\n ]);\n return [\n 4,\n loadScript(url)\n ];\n case 5:\n return [\n 2,\n _state.sent()\n ];\n case 6:\n err = _state.sent();\n if (isOverridden) {\n (0,_openmrs_esm_globals__rspack_import_0.dispatchToastShown)({\n kind: 'error',\n title: (0,_openmrs_esm_translations__rspack_import_1.getCoreTranslation)('scriptLoadingFailed', 'Error: Script failed to load'),\n description: (0,_openmrs_esm_translations__rspack_import_1.getCoreTranslation)('scriptLoadingError', 'Failed to load overridden script from {{- url}}. Please check that the bundled script is available at the expected URL. Click the button below to reset all import map overrides.', {\n url: url\n }),\n actionButtonLabel: (0,_openmrs_esm_translations__rspack_import_1.getCoreTranslation)('resetOverrides', 'Reset overrides'),\n onActionButtonClick: function onActionButtonClick() {\n (0,_import_maps_js__rspack_import_2.resetImportMapOverrides)();\n window.location.reload();\n }\n });\n }\n return [\n 2,\n Promise.reject(err)\n ];\n case 7:\n return [\n 2,\n Promise.resolve()\n ];\n }\n });\n })();\n}\n/**\n * @internal\n *\n * Used to load the current import map.\n *\n * @returns The current import map.\n */ function getCurrentImportMap() {\n return _async_to_generator(function() {\n return _ts_generator(this, function(_state) {\n return [\n 2,\n (0,_import_maps_js__rspack_import_2.getCurrentPageMap)()\n ];\n });\n })();\n}\nfunction isFederatedModule(a) {\n return (typeof a === \"undefined\" ? \"undefined\" : _type_of(a)) === 'object' && a !== null && 'init' in a && typeof a['init'] === 'function' && 'get' in a && typeof a['get'] === 'function';\n}\n// internals to track script loading\n// if we're already loading a script, we should wait until the script is loaded\n// we use a global to track this; we use `Symbol.for()` in case this gets loaded\n// twice\nvar OPENMRS_SCRIPT_LOADING = Symbol.for('__openmrs_script_loading');\n/**\n * The scripts this loader has requested, keyed by URL. A pending entry is in flight and a settled\n * one has loaded; failed requests are removed, so any entry can be awaited rather than re-requested.\n */ function getScriptRegistry() {\n var _;\n var _window, _OPENMRS_SCRIPT_LOADING;\n return (_ = (_window = window)[_OPENMRS_SCRIPT_LOADING = OPENMRS_SCRIPT_LOADING]) !== null && _ !== void 0 ? _ : _window[_OPENMRS_SCRIPT_LOADING] = new Map();\n}\n/**\n * Appends a `<script>` to the DOM with the given URL, unless it has been requested already, and\n * resolves once it has loaded. Callers arriving at any point in a script's lifecycle share one\n * request for it.\n *\n * A script which fails loading is removed from the DOM and can be retried. A script which throws\n * when loading, however, will remain in the DOM as the script loaded.\n */ function loadScript(url) {\n var registry = getScriptRegistry();\n var requested = registry.get(url);\n if (requested) {\n return requested;\n }\n if (document.head.querySelector('script[src=\"'.concat(url, '\"]'))) {\n // something other than this loader put the script in the document, so assume it's usable\n console.warn(\"Script at \".concat(url, \" already loaded. Not loading it again.\"));\n return Promise.resolve();\n }\n var element = document.createElement('script');\n element.src = url;\n element.type = 'text/javascript';\n element.async = true;\n var request = new Promise(function(resolve, reject) {\n var finishScriptLoading = function finishScriptLoading() {\n clearTimeout(loadTimeout);\n element.removeEventListener('load', loadFn);\n element.removeEventListener('error', errFn);\n };\n var loadFn = function loadFn() {\n finishScriptLoading();\n resolve();\n };\n var errFn = function errFn(ev) {\n var _ev_message;\n finishScriptLoading();\n registry.delete(url);\n element.remove();\n var msg = \"Failed to load script from \".concat(url);\n console.error(msg, ev);\n reject((_ev_message = ev.message) !== null && _ev_message !== void 0 ? _ev_message : msg);\n };\n // displays an error if a script takes more than 5 seconds to load\n var loadTimeout = setTimeout(function() {\n console.error(\"The script at \".concat(url, \" did not load within 5 seconds. This may indicate an issue with the imports in the script's entry-point file or with the script's bundler configuration.\"));\n }, 5000); // 5 seconds; this is arbitrary\n element.addEventListener('load', loadFn);\n element.addEventListener('error', errFn);\n document.head.appendChild(element);\n });\n registry.set(url, request);\n return request;\n}\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiamF2YXNjcmlwdC9lc218YnVpbHRpbjpzd2MtbG9hZGVyIS9ob21lL3J1bm5lci93b3JrL29wZW5tcnMtZXNtLWNvcmUvb3Blbm1ycy1lc20tY29yZS9wYWNrYWdlcy9mcmFtZXdvcmsvZXNtLWR5bmFtaWMtbG9hZGluZy9kaXN0L2R5bmFtaWMtbG9hZGluZy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovL0BvcGVubXJzL2VzbS1hcHAtc2hlbGwvLi4vLi4vZnJhbWV3b3JrL2VzbS1keW5hbWljLWxvYWRpbmcvZGlzdC9keW5hbWljLWxvYWRpbmcuanM/MTkyMiJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiogQG1vZHVsZSBAY2F0ZWdvcnkgRHluYW1pYyBMb2FkaW5nICovICd1c2Ugc3RyaWN0JztcbmltcG9ydCB7IGRpc3BhdGNoVG9hc3RTaG93biB9IGZyb20gXCJAb3Blbm1ycy9lc20tZ2xvYmFsc1wiO1xuaW1wb3J0IHsgZ2V0Q29yZVRyYW5zbGF0aW9uIH0gZnJvbSBcIkBvcGVubXJzL2VzbS10cmFuc2xhdGlvbnNcIjtcbmltcG9ydCB7IGdldEN1cnJlbnRQYWdlTWFwLCBnZXRJbXBvcnRNYXBPdmVycmlkZU1hcCwgcmVzZXRJbXBvcnRNYXBPdmVycmlkZXMgfSBmcm9tIFwiLi9pbXBvcnQtbWFwcy5qc1wiO1xuLyoqXG4gKiBAaW50ZXJuYWxcbiAqXG4gKiBUcmFuc2Zvcm1zIGFuIEVTTSBtb2R1bGUgbmFtZSB0byBhIHZhbGlkIEpTIGlkZW50aWZpZXJcbiAqXG4gKiBAcGFyYW0gbmFtZSB0aGUgbmFtZSBvZiBhIG1vZHVsZVxuICogQHJldHVybnMgQW4gb3BhcXVlLCBlcXVpdmFsZW50IEpTIGlkZW50aWZpZXIgZm9yIHRoZSBtb2R1bGVcbiAqLyBleHBvcnQgZnVuY3Rpb24gc2x1Z2lmeShuYW1lKSB7XG4gICAgcmV0dXJuIG5hbWUucmVwbGFjZSgvW1xcL1xcLUBdL2csICdfJyk7XG59XG4vKipcbiAqIExvYWRzIHRoZSBuYW1lZCBleHBvcnQgZnJvbSBhIG5hbWVkIHBhY2thZ2UuIFRoaXMgbWlnaHQgYmUgdXNlZCBsaWtlOlxuICpcbiAqIGBgYGpzXG4gKiBjb25zdCB7IHNvbWVDb21wb25lbnQgfSA9IGltcG9ydER5bmFtaWMoXCJAb3Blbm1ycy9lc20tdGVtcGxhdGUtYXBwXCIpXG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0ganNQYWNrYWdlIFRoZSBwYWNrYWdlIHRvIGxvYWQgdGhlIGV4cG9ydCBmcm9tLlxuICogQHBhcmFtIHNoYXJlIEluZGljYXRlcyB0aGUgbmFtZSBvZiB0aGUgc2hhcmVkIG1vZHVsZTsgdGhpcyBpcyBhbiBhZHZhbmNlZCBmZWF0dXJlIGlmIHRoZSBwYWNrYWdlIHlvdSBhcmUgbG9hZGluZ1xuICogICBkb2Vzbid0IHVzZSB0aGUgZGVmYXVsdCBPcGVuTVJTIHNoYXJlZCBtb2R1bGUgbmFtZSBcIi4vc3RhcnRcIi5cbiAqIEBwYXJhbSBvcHRpb25zIEFkZGl0aW9uYWwgb3B0aW9ucyB0byBjb250cm9sIGxvYWRpbmcgdGhpcyBzY3JpcHQuXG4gKiBAcGFyYW0gb3B0aW9ucy5pbXBvcnRNYXAgVGhlIGltcG9ydCBtYXAgdG8gdXNlIHRvIGxvYWQgdGhlIHNjcmlwdC4gVGhpcyBpcyB1c2VmdWwgZm9yIHNpdHVhdGlvbnMgd2hlcmUgeW91J3JlXG4gKiAgIGxvYWRpbmcgbXVsdGlwbGUgc2NyaXB0cyBhdCBhIHRpbWUsIHNpbmNlIGl0IGFsbG93cyB0aGUgY2FsbGluZyBjb2RlIHRvIHN1cHBseSBhbiBpbXBvcnRNYXAsIHNhdmluZyBtdWx0aXBsZVxuICogICBjYWxscyB0byBgZ2V0Q3VycmVudEltcG9ydE1hcCgpYC5cbiAqIEBwYXJhbSBvcHRpb25zLm1heExvYWRpbmdUaW1lIEEgcG9zaXRpdmUgaW50ZWdlciByZXByZXNlbnRpbmcgdGhlIG1heGltdW0gbnVtYmVyIG9mIG1pbGxpc2Vjb25kcyB0byB3YWl0IGZvciB0aGVcbiAqICAgc2NyaXB0IHRvIGxvYWQgYmVmb3JlIHRoZSBwcm9taXNlIHJldHVybmVkIGZyb20gdGhpcyBmdW5jdGlvbiB3aWxsIGJlIHJlamVjdGVkLiBEZWZhdWx0cyB0byA2MDAsMDAwIG1pbGxpc2Vjb25kcyxcbiAqICAgaS5lLiwgMTAgbWludXRlcy5cbiAqLyBleHBvcnQgYXN5bmMgZnVuY3Rpb24gaW1wb3J0RHluYW1pYyhqc1BhY2thZ2UsIHNoYXJlID0gJy4vc3RhcnQnLCBvcHRpb25zKSB7XG4gICAgLy8gZGVmYXVsdCB0byAxMCBtaW51dGVzXG4gICAgY29uc3QgbWF4TG9hZGluZ1RpbWUgPSAhb3B0aW9ucz8ubWF4TG9hZGluZ1RpbWUgfHwgb3B0aW9ucy5tYXhMb2FkaW5nVGltZSA8PSAwID8gNjAwMDAwIDogb3B0aW9ucy5tYXhMb2FkaW5nVGltZTtcbiAgICBsZXQgdGltZW91dCA9IHVuZGVmaW5lZDtcbiAgICBhd2FpdCBQcm9taXNlLnJhY2UoW1xuICAgICAgICBwcmVsb2FkSW1wb3J0KGpzUGFja2FnZSwgb3B0aW9ucz8uaW1wb3J0TWFwKSxcbiAgICAgICAgbmV3IFByb21pc2UoKF8sIHJlamVjdCk9PntcbiAgICAgICAgICAgIHRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpPT57XG4gICAgICAgICAgICAgICAgcmVqZWN0KG5ldyBFcnJvcihgQ291bGQgbm90IHJlc29sdmUgcmVxdWVzdGVkIHNjcmlwdCwgJHtqc1BhY2thZ2V9LCB3aXRoaW4gJHtodW1hblJlYWRhYmxlTXMobWF4TG9hZGluZ1RpbWUpfS5gKSk7XG4gICAgICAgICAgICB9LCBtYXhMb2FkaW5nVGltZSk7XG4gICAgICAgIH0pXG4gICAgXSk7XG4gICAgaWYgKHRpbWVvdXQpIHtcbiAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXQpO1xuICAgIH1cbiAgICBjb25zdCBqc1BhY2thZ2VTbHVnID0gc2x1Z2lmeShqc1BhY2thZ2UpO1xuICAgIGNvbnN0IGNvbnRhaW5lciA9IHdpbmRvd1tqc1BhY2thZ2VTbHVnXTtcbiAgICBpZiAoIWlzRmVkZXJhdGVkTW9kdWxlKGNvbnRhaW5lcikpIHtcbiAgICAgICAgY29uc3QgZXJyb3IgPSBgVGhlIGdsb2JhbCB2YXJpYWJsZSAke2pzUGFja2FnZVNsdWd9IGRvZXMgbm90IHJlZmVyIHRvIGEgZmVkZXJhdGVkIG1vZHVsZWA7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoZXJyb3IpO1xuICAgIH1cbiAgICBjb250YWluZXIuaW5pdChfX3dlYnBhY2tfc2hhcmVfc2NvcGVzX18uZGVmYXVsdCk7XG4gICAgY29uc3QgZmFjdG9yeSA9IGF3YWl0IGNvbnRhaW5lci5nZXQoc2hhcmUpO1xuICAgIGNvbnN0IG1vZHVsZSA9IGZhY3RvcnkoKTtcbiAgICBpZiAoISh0eXBlb2YgbW9kdWxlID09PSAnb2JqZWN0JykgfHwgbW9kdWxlID09PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IGVycm9yID0gYENvbnRhaW5lciBmb3IgJHtqc1BhY2thZ2V9IGRpZCBub3QgcmV0dXJuIGFuIEVTTSBtb2R1bGUgYXMgZXhwZWN0ZWRgO1xuICAgICAgICBjb25zb2xlLmVycm9yKGVycm9yKTtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGVycm9yKTtcbiAgICB9XG4gICAgcmV0dXJuIG1vZHVsZTtcbn1cbi8qKlxuICogVXRpbGl0eSBmdW5jdGlvbiB0byBjb252ZXJ0IG1pbGxpc2Vjb25kcyBpbnRvIGh1bWFuLXJlYWRhYmxlIHN0cmluZ3Mgd2l0aCByYXRoZXIgYWJzdXJkXG4gKiBsZXZlbHMgb2YgcHJlY2lzaW9uLlxuICpcbiAqIEBwYXJhbSBtcyBOdW1iZXIgb2YgbWlsbGlzZWNvbmRzXG4gKiBAcmV0dXJucyBBIGh1bWFuLXJlYWRhYmxlIHN0cmluZyB1c2VmdWwgb25seSBmb3IgZXJyb3IgbG9nZ2luZywgd2hlcmUgd2UgY2FuIGFzc3VtZSBFbmdsaXNoXG4gKi8gZnVuY3Rpb24gaHVtYW5SZWFkYWJsZU1zKG1zKSB7XG4gICAgaWYgKG1zIDwgMTAwMCkge1xuICAgICAgICByZXR1cm4gYCR7bXN9IG1pbGxpc2Vjb25kc2A7XG4gICAgfSBlbHNlIGlmIChtcyA8IDYwMDAwKSB7XG4gICAgICAgIHJldHVybiBgJHtNYXRoLmZsb29yKG1zIC8gMTAwMCl9IHNlY29uZHNgO1xuICAgIH0gZWxzZSBpZiAobXMgPCAzNjAwMDAwKSB7XG4gICAgICAgIHJldHVybiBgJHtNYXRoLmZsb29yKG1zIC8gNjAwMDApfSBtaW51dGVzYDtcbiAgICB9IGVsc2UgaWYgKG1zIDwgODY0MDAwMDApIHtcbiAgICAgICAgcmV0dXJuIGAke01hdGguZmxvb3IobXMgLyAzNjAwMDAwKX0gaG91cnNgO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBgJHtNYXRoLmZsb29yKG1zIC8gODY0MDAwMDApfSBkYXlzYDtcbiAgICB9XG59XG4vKipcbiAqIEBpbnRlcm5hbFxuICpcbiAqIFRoaXMgaW50ZXJuYWwgbWV0aG9kIGlzIHVzZWQgdG8gZW5zdXJlIHRoYXQgdGhlIHNjcmlwdCBiZWxvbmdpbmdcbiAqIHRvIHRoZSBnaXZlbiBwYWNrYWdlIGlzIGxvYWRlZCBhbmQgYWRkZWQgdG8gdGhlIGhlYWQuIENvbmN1cnJlbnQgYW5kXG4gKiByZXBlYXQgY2FsbHMgZm9yIHRoZSBzYW1lIHBhY2thZ2Ugc2hhcmUgYSBzaW5nbGUgcmVxdWVzdCBmb3IgaXQuXG4gKlxuICogQHBhcmFtIGpzUGFja2FnZSBUaGUgcGFja2FnZSB0byBsb2FkXG4gKiBAcGFyYW0gaW1wb3J0TWFwIFRoZSBpbXBvcnQgbWFwIHRvIHVzZSBmb3IgbG9hZGluZyB0aGlzIHBhY2thZ2UuXG4gKiAgVGhlIG1haW4gcmVhc29uIGZvciBzcGVjaWZ5aW5nIHRoaXMgaXMgdG8gYXZvaWQgbmVlZGluZyB0byBjYWxsXG4gKiAgYGdldEN1cnJlbnRQYWdlTWFwKClgIGZvciBldmVyeSBzY3JpcHQgd2hlbiBidWxrIGxvYWRpbmcuXG4gKi8gZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHByZWxvYWRJbXBvcnQoanNQYWNrYWdlLCBpbXBvcnRNYXApIHtcbiAgICBpZiAodHlwZW9mIGpzUGFja2FnZSAhPT0gJ3N0cmluZycgfHwganNQYWNrYWdlLnRyaW0oKS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgY29uc3QgZXJyb3IgPSAnQXR0ZW1wdGVkIHRvIGNhbGwgaW1wb3J0RHluYW1pYygpIHdpdGhvdXQgc3VwcGx5aW5nIGEgcGFja2FnZSB0byBsb2FkJztcbiAgICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihlcnJvcik7XG4gICAgfVxuICAgIGNvbnN0IGpzUGFja2FnZVNsdWcgPSBzbHVnaWZ5KGpzUGFja2FnZSk7XG4gICAgaWYgKCF3aW5kb3dbanNQYWNrYWdlU2x1Z10pIHtcbiAgICAgICAgY29uc3QgYWN0aXZlSW1wb3J0TWFwID0gaW1wb3J0TWFwID8/IGF3YWl0IGdldEN1cnJlbnRJbXBvcnRNYXAoKTtcbiAgICAgICAgaWYgKCFhY3RpdmVJbXBvcnRNYXAuaW1wb3J0cy5oYXNPd25Qcm9wZXJ0eShqc1BhY2thZ2UpKSB7XG4gICAgICAgICAgICBjb25zdCBlcnJvciA9IGBDb3VsZCBub3QgZmluZCB0aGUgcGFja2FnZSAke2pzUGFja2FnZX0gZGVmaW5lZCBpbiB0aGUgY3VycmVudCBpbXBvcnRtYXBgO1xuICAgICAgICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoZXJyb3IpO1xuICAgICAgICB9XG4gICAgICAgIGxldCB1cmwgPSBhY3RpdmVJbXBvcnRNYXAuaW1wb3J0c1tqc1BhY2thZ2VdO1xuICAgICAgICBpZiAodXJsLnN0YXJ0c1dpdGgoJy4vJykpIHtcbiAgICAgICAgICAgIHVybCA9IHdpbmRvdy5zcGFCYXNlICsgdXJsLnN1YnN0cmluZygxKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBpc092ZXJyaWRkZW4gPSBqc1BhY2thZ2UgaW4gZ2V0SW1wb3J0TWFwT3ZlcnJpZGVNYXAoKS5pbXBvcnRzO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgcmV0dXJuIGF3YWl0IGxvYWRTY3JpcHQodXJsKTtcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICBpZiAoaXNPdmVycmlkZGVuKSB7XG4gICAgICAgICAgICAgICAgZGlzcGF0Y2hUb2FzdFNob3duKHtcbiAgICAgICAgICAgICAgICAgICAga2luZDogJ2Vycm9yJyxcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6IGdldENvcmVUcmFuc2xhdGlvbignc2NyaXB0TG9hZGluZ0ZhaWxlZCcsICdFcnJvcjogU2NyaXB0IGZhaWxlZCB0byBsb2FkJyksXG4gICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBnZXRDb3JlVHJhbnNsYXRpb24oJ3NjcmlwdExvYWRpbmdFcnJvcicsICdGYWlsZWQgdG8gbG9hZCBvdmVycmlkZGVuIHNjcmlwdCBmcm9tIHt7LSB1cmx9fS4gUGxlYXNlIGNoZWNrIHRoYXQgdGhlIGJ1bmRsZWQgc2NyaXB0IGlzIGF2YWlsYWJsZSBhdCB0aGUgZXhwZWN0ZWQgVVJMLiBDbGljayB0aGUgYnV0dG9uIGJlbG93IHRvIHJlc2V0IGFsbCBpbXBvcnQgbWFwIG92ZXJyaWRlcy4nLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB1cmxcbiAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbkJ1dHRvbkxhYmVsOiBnZXRDb3JlVHJhbnNsYXRpb24oJ3Jlc2V0T3ZlcnJpZGVzJywgJ1Jlc2V0IG92ZXJyaWRlcycpLFxuICAgICAgICAgICAgICAgICAgICBvbkFjdGlvbkJ1dHRvbkNsaWNrICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc2V0SW1wb3J0TWFwT3ZlcnJpZGVzKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3cubG9jYXRpb24ucmVsb2FkKCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChlcnIpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbn1cbi8qKlxuICogQGludGVybmFsXG4gKlxuICogVXNlZCB0byBsb2FkIHRoZSBjdXJyZW50IGltcG9ydCBtYXAuXG4gKlxuICogQHJldHVybnMgVGhlIGN1cnJlbnQgaW1wb3J0IG1hcC5cbiAqLyBleHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0Q3VycmVudEltcG9ydE1hcCgpIHtcbiAgICByZXR1cm4gZ2V0Q3VycmVudFBhZ2VNYXAoKTtcbn1cbmZ1bmN0aW9uIGlzRmVkZXJhdGVkTW9kdWxlKGEpIHtcbiAgICByZXR1cm4gdHlwZW9mIGEgPT09ICdvYmplY3QnICYmIGEgIT09IG51bGwgJiYgJ2luaXQnIGluIGEgJiYgdHlwZW9mIGFbJ2luaXQnXSA9PT0gJ2Z1bmN0aW9uJyAmJiAnZ2V0JyBpbiBhICYmIHR5cGVvZiBhWydnZXQnXSA9PT0gJ2Z1bmN0aW9uJztcbn1cbi8vIGludGVybmFscyB0byB0cmFjayBzY3JpcHQgbG9hZGluZ1xuLy8gaWYgd2UncmUgYWxyZWFkeSBsb2FkaW5nIGEgc2NyaXB0LCB3ZSBzaG91bGQgd2FpdCB1bnRpbCB0aGUgc2NyaXB0IGlzIGxvYWRlZFxuLy8gd2UgdXNlIGEgZ2xvYmFsIHRvIHRyYWNrIHRoaXM7IHdlIHVzZSBgU3ltYm9sLmZvcigpYCBpbiBjYXNlIHRoaXMgZ2V0cyBsb2FkZWRcbi8vIHR3aWNlXG5jb25zdCBPUEVOTVJTX1NDUklQVF9MT0FESU5HID0gU3ltYm9sLmZvcignX19vcGVubXJzX3NjcmlwdF9sb2FkaW5nJyk7XG4vKipcbiAqIFRoZSBzY3JpcHRzIHRoaXMgbG9hZGVyIGhhcyByZXF1ZXN0ZWQsIGtleWVkIGJ5IFVSTC4gQSBwZW5kaW5nIGVudHJ5IGlzIGluIGZsaWdodCBhbmQgYSBzZXR0bGVkXG4gKiBvbmUgaGFzIGxvYWRlZDsgZmFpbGVkIHJlcXVlc3RzIGFyZSByZW1vdmVkLCBzbyBhbnkgZW50cnkgY2FuIGJlIGF3YWl0ZWQgcmF0aGVyIHRoYW4gcmUtcmVxdWVzdGVkLlxuICovIGZ1bmN0aW9uIGdldFNjcmlwdFJlZ2lzdHJ5KCkge1xuICAgIHZhciBfd2luZG93LCBfT1BFTk1SU19TQ1JJUFRfTE9BRElORztcbiAgICByZXR1cm4gKF93aW5kb3cgPSB3aW5kb3cpW19PUEVOTVJTX1NDUklQVF9MT0FESU5HID0gT1BFTk1SU19TQ1JJUFRfTE9BRElOR10gPz8gKF93aW5kb3dbX09QRU5NUlNfU0NSSVBUX0xPQURJTkddID0gbmV3IE1hcCgpKTtcbn1cbi8qKlxuICogQXBwZW5kcyBhIGA8c2NyaXB0PmAgdG8gdGhlIERPTSB3aXRoIHRoZSBnaXZlbiBVUkwsIHVubGVzcyBpdCBoYXMgYmVlbiByZXF1ZXN0ZWQgYWxyZWFkeSwgYW5kXG4gKiByZXNvbHZlcyBvbmNlIGl0IGhhcyBsb2FkZWQuIENhbGxlcnMgYXJyaXZpbmcgYXQgYW55IHBvaW50IGluIGEgc2NyaXB0J3MgbGlmZWN5Y2xlIHNoYXJlIG9uZVxuICogcmVxdWVzdCBmb3IgaXQuXG4gKlxuICogQSBzY3JpcHQgd2hpY2ggZmFpbHMgbG9hZGluZyBpcyByZW1vdmVkIGZyb20gdGhlIERPTSBhbmQgY2FuIGJlIHJldHJpZWQuIEEgc2NyaXB0IHdoaWNoIHRocm93c1xuICogd2hlbiBsb2FkaW5nLCBob3dldmVyLCB3aWxsIHJlbWFpbiBpbiB0aGUgRE9NIGFzIHRoZSBzY3JpcHQgbG9hZGVkLlxuICovIGZ1bmN0aW9uIGxvYWRTY3JpcHQodXJsKSB7XG4gICAgY29uc3QgcmVnaXN0cnkgPSBnZXRTY3JpcHRSZWdpc3RyeSgpO1xuICAgIGNvbnN0IHJlcXVlc3RlZCA9IHJlZ2lzdHJ5LmdldCh1cmwpO1xuICAgIGlmIChyZXF1ZXN0ZWQpIHtcbiAgICAgICAgcmV0dXJuIHJlcXVlc3RlZDtcbiAgICB9XG4gICAgaWYgKGRvY3VtZW50LmhlYWQucXVlcnlTZWxlY3Rvcihgc2NyaXB0W3NyYz1cIiR7dXJsfVwiXWApKSB7XG4gICAgICAgIC8vIHNvbWV0aGluZyBvdGhlciB0aGFuIHRoaXMgbG9hZGVyIHB1dCB0aGUgc2NyaXB0IGluIHRoZSBkb2N1bWVudCwgc28gYXNzdW1lIGl0J3MgdXNhYmxlXG4gICAgICAgIGNvbnNvbGUud2FybihgU2NyaXB0IGF0ICR7dXJsfSBhbHJlYWR5IGxvYWRlZC4gTm90IGxvYWRpbmcgaXQgYWdhaW4uYCk7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICB9XG4gICAgY29uc3QgZWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpO1xuICAgIGVsZW1lbnQuc3JjID0gdXJsO1xuICAgIGVsZW1lbnQudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnO1xuICAgIGVsZW1lbnQuYXN5bmMgPSB0cnVlO1xuICAgIGNvbnN0IHJlcXVlc3QgPSBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KT0+e1xuICAgICAgICAvLyBkaXNwbGF5cyBhbiBlcnJvciBpZiBhIHNjcmlwdCB0YWtlcyBtb3JlIHRoYW4gNSBzZWNvbmRzIHRvIGxvYWRcbiAgICAgICAgY29uc3QgbG9hZFRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpPT57XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGBUaGUgc2NyaXB0IGF0ICR7dXJsfSBkaWQgbm90IGxvYWQgd2l0aGluIDUgc2Vjb25kcy4gVGhpcyBtYXkgaW5kaWNhdGUgYW4gaXNzdWUgd2l0aCB0aGUgaW1wb3J0cyBpbiB0aGUgc2NyaXB0J3MgZW50cnktcG9pbnQgZmlsZSBvciB3aXRoIHRoZSBzY3JpcHQncyBidW5kbGVyIGNvbmZpZ3VyYXRpb24uYCk7XG4gICAgICAgIH0sIDUwMDApOyAvLyA1IHNlY29uZHM7IHRoaXMgaXMgYXJiaXRyYXJ5XG4gICAgICAgIGZ1bmN0aW9uIGZpbmlzaFNjcmlwdExvYWRpbmcoKSB7XG4gICAgICAgICAgICBjbGVhclRpbWVvdXQobG9hZFRpbWVvdXQpO1xuICAgICAgICAgICAgZWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdsb2FkJywgbG9hZEZuKTtcbiAgICAgICAgICAgIGVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignZXJyb3InLCBlcnJGbik7XG4gICAgICAgIH1cbiAgICAgICAgZnVuY3Rpb24gbG9hZEZuKCkge1xuICAgICAgICAgICAgZmluaXNoU2NyaXB0TG9hZGluZygpO1xuICAgICAgICAgICAgcmVzb2x2ZSgpO1xuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIGVyckZuKGV2KSB7XG4gICAgICAgICAgICBmaW5pc2hTY3JpcHRMb2FkaW5nKCk7XG4gICAgICAgICAgICByZWdpc3RyeS5kZWxldGUodXJsKTtcbiAgICAgICAgICAgIGVsZW1lbnQucmVtb3ZlKCk7XG4gICAgICAgICAgICBjb25zdCBtc2cgPSBgRmFpbGVkIHRvIGxvYWQgc2NyaXB0IGZyb20gJHt1cmx9YDtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IobXNnLCBldik7XG4gICAgICAgICAgICByZWplY3QoZXYubWVzc2FnZSA/PyBtc2cpO1xuICAgICAgICB9XG4gICAgICAgIGVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGxvYWRGbik7XG4gICAgICAgIGVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignZXJyb3InLCBlcnJGbik7XG4gICAgICAgIGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoZWxlbWVudCk7XG4gICAgfSk7XG4gICAgcmVnaXN0cnkuc2V0KHVybCwgcmVxdWVzdCk7XG4gICAgcmV0dXJuIHJlcXVlc3Q7XG59XG4iXSwibmFtZXMiOlsiZGlzcGF0Y2hUb2FzdFNob3duIiwiZ2V0Q29yZVRyYW5zbGF0aW9uIiwiZ2V0Q3VycmVudFBhZ2VNYXAiLCJnZXRJbXBvcnRNYXBPdmVycmlkZU1hcCIsInJlc2V0SW1wb3J0TWFwT3ZlcnJpZGVzIiwic2x1Z2lmeSIsIm5hbWUiLCJpbXBvcnREeW5hbWljIiwianNQYWNrYWdlIiwic2hhcmUiLCJvcHRpb25zIiwibWF4TG9hZGluZ1RpbWUiLCJ0aW1lb3V0IiwianNQYWNrYWdlU2x1ZyIsImNvbnRhaW5lciIsImVycm9yIiwiZmFjdG9yeSIsIm1vZHVsZSIsImVycm9yMSIsInVuZGVmaW5lZCIsIlByb21pc2UiLCJwcmVsb2FkSW1wb3J0IiwiXyIsInJlamVjdCIsInNldFRpbWVvdXQiLCJFcnJvciIsImh1bWFuUmVhZGFibGVNcyIsImNsZWFyVGltZW91dCIsIndpbmRvdyIsImlzRmVkZXJhdGVkTW9kdWxlIiwiY29uc29sZSIsIl9fd2VicGFja19zaGFyZV9zY29wZXNfXyIsIl90eXBlX29mIiwibXMiLCJNYXRoIiwiaW1wb3J0TWFwIiwiYWN0aXZlSW1wb3J0TWFwIiwidXJsIiwiaXNPdmVycmlkZGVuIiwiZXJyIiwiZ2V0Q3VycmVudEltcG9ydE1hcCIsImxvYWRTY3JpcHQiLCJvbkFjdGlvbkJ1dHRvbkNsaWNrIiwiYSIsIk9QRU5NUlNfU0NSSVBUX0xPQURJTkciLCJTeW1ib2wiLCJnZXRTY3JpcHRSZWdpc3RyeSIsIl93aW5kb3ciLCJfT1BFTk1SU19TQ1JJUFRfTE9BRElORyIsIk1hcCIsInJlZ2lzdHJ5IiwicmVxdWVzdGVkIiwiZG9jdW1lbnQiLCJlbGVtZW50IiwicmVxdWVzdCIsInJlc29sdmUiLCJmaW5pc2hTY3JpcHRMb2FkaW5nIiwibG9hZFRpbWVvdXQiLCJsb2FkRm4iLCJlcnJGbiIsImV2IiwiX2V2X21lc3NhZ2UiLCJtc2ciXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQSxzQ0FBc0MsR0FBZ0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDSTtBQUNLO0FBQ3dDO0FBQ3ZHOzs7Ozs7O0NBT0MsR0FBVSxTQUFTSyxRQUFRQyxJQUFJO0lBQzVCLE9BQU9BLEtBQUssT0FBTyxDQUFDLFlBQVk7QUFDcEM7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0Fp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\n//# sourceURL=webpack-internal:///../../framework/esm-dynamic-loading/dist/dynamic-loading.js\n\n}");
5619
5619
 
5620
5620
  },
5621
5621
  "../../framework/esm-dynamic-loading/dist/import-maps.js"(__unused_rspack___webpack_module__, __webpack_exports__, __webpack_require__) {
@@ -6220,7 +6220,7 @@ eval("{__webpack_require__.r(__webpack_exports__);\n__webpack_require__.d(__webp
6220
6220
  },
6221
6221
  "../../framework/esm-state/dist/state.js"(__unused_rspack___webpack_module__, __webpack_exports__, __webpack_require__) {
6222
6222
  "use strict";
6223
- eval("{__webpack_require__.r(__webpack_exports__);\n__webpack_require__.d(__webpack_exports__, {\n createGlobalStore: () => (createGlobalStore),\n getGlobalStore: () => (getGlobalStore),\n registerGlobalStore: () => (registerGlobalStore),\n subscribeTo: () => (subscribeTo)\n});\n/* import */ var _openmrs_esm_utils__rspack_import_1 = __webpack_require__(\"../../framework/esm-utils/dist/shallowEqual.js\");\n/* import */ var zustand_middleware__rspack_import_3 = __webpack_require__(\"../../../node_modules/zustand/esm/middleware.mjs\");\n/* import */ var zustand_vanilla__rspack_import_2 = __webpack_require__(\"../../../node_modules/zustand/esm/vanilla.mjs\");\n/* import */ var _utils_js__rspack_import_0 = __webpack_require__(\"../../framework/esm-state/dist/utils.js\");\nfunction _array_like_to_array(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];\n return arr2;\n}\nfunction _array_with_holes(arr) {\n if (Array.isArray(arr)) return arr;\n}\nfunction _iterable_to_array_limit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _s, _e;\n try {\n for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){\n _arr.push(_s.value);\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally{\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally{\n if (_d) throw _e;\n }\n }\n return _arr;\n}\nfunction _non_iterable_rest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nfunction _sliced_to_array(arr, i) {\n return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();\n}\nfunction _unsupported_iterable_to_array(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _array_like_to_array(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(n);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);\n}\nvar // spaEnv isn't available immediately. Wait a bit before making stores available\n// on window in development mode.\n_globalThis_setTimeout, _globalThis;\n/** @module @category Store */ \n\n\n\nvar availableStores = {};\n(_globalThis_setTimeout = (_globalThis = globalThis).setTimeout) === null || _globalThis_setTimeout === void 0 ? void 0 : _globalThis_setTimeout.call(_globalThis, function() {\n if (typeof window !== 'undefined' && window.spaEnv === 'development') {\n window['stores'] = availableStores;\n }\n}, 1000);\n/**\n * Creates a Zustand store.\n *\n * @param name A name by which the store can be looked up later.\n * Must be unique across the entire application.\n * @param storageType The type of storage to use for persisting the store's state. Defaults to 'none'.\n * @param initialState An object which will be the initial state of the store.\n * @returns The newly created store.\n */ function createGlobalStore(name, initialState) {\n var storageType = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 'none';\n var available = availableStores[name];\n if (available) {\n if (available.active) {\n if (!(0,_utils_js__rspack_import_0.isTestEnvironment)()) {\n console.error(\"Attempted to override the existing store \".concat(name, \". Make sure that stores are only created once.\"));\n }\n } else {\n available.value.setState(initialState, true);\n }\n available.active = true;\n return available.value;\n } else {\n var store = createStoreHelper(name, initialState, storageType);\n availableStores[name] = {\n value: store,\n active: true\n };\n return store;\n }\n}\n/**\n * Registers an existing Zustand store.\n *\n * @param name A name by which the store can be looked up later.\n * Must be unique across the entire application.\n * @param store The Zustand store to use for this.\n * @returns The newly registered store.\n */ function registerGlobalStore(name, store) {\n var available = availableStores[name];\n if (available) {\n if (available.active) {\n if (!(0,_utils_js__rspack_import_0.isTestEnvironment)()) {\n console.error(\"Attempted to override the existing store \".concat(name, \". Make sure that stores are only created once.\"));\n }\n } else {\n available.value = store;\n }\n available.active = true;\n return available.value;\n } else {\n availableStores[name] = {\n value: store,\n active: true\n };\n return store;\n }\n}\n/**\n * Returns the existing store named `name`,\n * or creates a new store named `name` if none exists.\n *\n * @param name The name of the store to look up.\n * @param fallbackState The initial value of the new store if no store named `name` exists.\n * @param fallbackStorageType The type of storage to use for the new store if no store named `name` exists. Defaults to 'none'.\n * @returns The found or newly created store.\n */ function getGlobalStore(name, fallbackState) {\n var fallbackStorageType = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 'none';\n var available = availableStores[name];\n if (!available) {\n var store = createStoreHelper(name, fallbackState !== null && fallbackState !== void 0 ? fallbackState : {}, fallbackStorageType);\n availableStores[name] = {\n value: store,\n active: false\n };\n return store;\n }\n return available.value;\n}\nfunction subscribeTo() {\n for(var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){\n args[_key] = arguments[_key];\n }\n var _args = _sliced_to_array(args, 3), store = _args[0], select = _args[1], handle = _args[2];\n var handler = typeof handle === 'undefined' ? select : handle;\n var selector = typeof handle === 'undefined' ? function(state) {\n return state;\n } : select;\n var previous = selector(store.getState());\n handler(previous);\n return store.subscribe(function(state) {\n var current = selector(state);\n if (!(0,_openmrs_esm_utils__rspack_import_1.shallowEqual)(previous, current)) {\n previous = current;\n handler(current);\n }\n });\n}\n/**\n * @internal\n */ function createStoreHelper(name, initialState, storageType) {\n var store;\n if (storageType === 'sessionStorage') {\n store = (0,zustand_vanilla__rspack_import_2.createStore)()((0,zustand_middleware__rspack_import_3.persist)(function() {\n return initialState;\n }, {\n name: name,\n storage: (0,zustand_middleware__rspack_import_3.createJSONStorage)(function() {\n return sessionStorage;\n })\n }));\n } else {\n store = (0,zustand_vanilla__rspack_import_2.createStore)()(function() {\n return initialState;\n });\n }\n return store;\n}\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiamF2YXNjcmlwdC9lc218YnVpbHRpbjpzd2MtbG9hZGVyIS9ob21lL3J1bm5lci93b3JrL29wZW5tcnMtZXNtLWNvcmUvb3Blbm1ycy1lc20tY29yZS9wYWNrYWdlcy9mcmFtZXdvcmsvZXNtLXN0YXRlL2Rpc3Qvc3RhdGUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9Ab3Blbm1ycy9lc20tYXBwLXNoZWxsLy4uLy4uL2ZyYW1ld29yay9lc20tc3RhdGUvZGlzdC9zdGF0ZS5qcz9iZTJkIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKiBAbW9kdWxlIEBjYXRlZ29yeSBTdG9yZSAqLyBpbXBvcnQgeyBzaGFsbG93RXF1YWwgfSBmcm9tIFwiQG9wZW5tcnMvZXNtLXV0aWxzXCI7XG5pbXBvcnQgeyBwZXJzaXN0LCBjcmVhdGVKU09OU3RvcmFnZSB9IGZyb20gXCJ6dXN0YW5kL21pZGRsZXdhcmVcIjtcbmltcG9ydCB7IGNyZWF0ZVN0b3JlIH0gZnJvbSBcInp1c3RhbmQvdmFuaWxsYVwiO1xuaW1wb3J0IHsgaXNUZXN0RW52aXJvbm1lbnQgfSBmcm9tIFwiLi91dGlscy5qc1wiO1xuY29uc3QgYXZhaWxhYmxlU3RvcmVzID0ge307XG4vLyBzcGFFbnYgaXNuJ3QgYXZhaWxhYmxlIGltbWVkaWF0ZWx5LiBXYWl0IGEgYml0IGJlZm9yZSBtYWtpbmcgc3RvcmVzIGF2YWlsYWJsZVxuLy8gb24gd2luZG93IGluIGRldmVsb3BtZW50IG1vZGUuXG5nbG9iYWxUaGlzLnNldFRpbWVvdXQ/LigoKT0+e1xuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cuc3BhRW52ID09PSAnZGV2ZWxvcG1lbnQnKSB7XG4gICAgICAgIHdpbmRvd1snc3RvcmVzJ10gPSBhdmFpbGFibGVTdG9yZXM7XG4gICAgfVxufSwgMTAwMCk7XG4vKipcbiAqIENyZWF0ZXMgYSBadXN0YW5kIHN0b3JlLlxuICpcbiAqIEBwYXJhbSBuYW1lIEEgbmFtZSBieSB3aGljaCB0aGUgc3RvcmUgY2FuIGJlIGxvb2tlZCB1cCBsYXRlci5cbiAqICAgIE11c3QgYmUgdW5pcXVlIGFjcm9zcyB0aGUgZW50aXJlIGFwcGxpY2F0aW9uLlxuICogQHBhcmFtIHN0b3JhZ2VUeXBlIFRoZSB0eXBlIG9mIHN0b3JhZ2UgdG8gdXNlIGZvciBwZXJzaXN0aW5nIHRoZSBzdG9yZSdzIHN0YXRlLiBEZWZhdWx0cyB0byAnbm9uZScuXG4gKiBAcGFyYW0gaW5pdGlhbFN0YXRlIEFuIG9iamVjdCB3aGljaCB3aWxsIGJlIHRoZSBpbml0aWFsIHN0YXRlIG9mIHRoZSBzdG9yZS5cbiAqIEByZXR1cm5zIFRoZSBuZXdseSBjcmVhdGVkIHN0b3JlLlxuICovIGV4cG9ydCBmdW5jdGlvbiBjcmVhdGVHbG9iYWxTdG9yZShuYW1lLCBpbml0aWFsU3RhdGUsIHN0b3JhZ2VUeXBlID0gJ25vbmUnKSB7XG4gICAgY29uc3QgYXZhaWxhYmxlID0gYXZhaWxhYmxlU3RvcmVzW25hbWVdO1xuICAgIGlmIChhdmFpbGFibGUpIHtcbiAgICAgICAgaWYgKGF2YWlsYWJsZS5hY3RpdmUpIHtcbiAgICAgICAgICAgIGlmICghaXNUZXN0RW52aXJvbm1lbnQoKSkge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoYEF0dGVtcHRlZCB0byBvdmVycmlkZSB0aGUgZXhpc3Rpbmcgc3RvcmUgJHtuYW1lfS4gTWFrZSBzdXJlIHRoYXQgc3RvcmVzIGFyZSBvbmx5IGNyZWF0ZWQgb25jZS5gKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGF2YWlsYWJsZS52YWx1ZS5zZXRTdGF0ZShpbml0aWFsU3RhdGUsIHRydWUpO1xuICAgICAgICB9XG4gICAgICAgIGF2YWlsYWJsZS5hY3RpdmUgPSB0cnVlO1xuICAgICAgICByZXR1cm4gYXZhaWxhYmxlLnZhbHVlO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHN0b3JlID0gY3JlYXRlU3RvcmVIZWxwZXIobmFtZSwgaW5pdGlhbFN0YXRlLCBzdG9yYWdlVHlwZSk7XG4gICAgICAgIGF2YWlsYWJsZVN0b3Jlc1tuYW1lXSA9IHtcbiAgICAgICAgICAgIHZhbHVlOiBzdG9yZSxcbiAgICAgICAgICAgIGFjdGl2ZTogdHJ1ZVxuICAgICAgICB9O1xuICAgICAgICByZXR1cm4gc3RvcmU7XG4gICAgfVxufVxuLyoqXG4gKiBSZWdpc3RlcnMgYW4gZXhpc3RpbmcgWnVzdGFuZCBzdG9yZS5cbiAqXG4gKiBAcGFyYW0gbmFtZSBBIG5hbWUgYnkgd2hpY2ggdGhlIHN0b3JlIGNhbiBiZSBsb29rZWQgdXAgbGF0ZXIuXG4gKiAgICBNdXN0IGJlIHVuaXF1ZSBhY3Jvc3MgdGhlIGVudGlyZSBhcHBsaWNhdGlvbi5cbiAqIEBwYXJhbSBzdG9yZSBUaGUgWnVzdGFuZCBzdG9yZSB0byB1c2UgZm9yIHRoaXMuXG4gKiBAcmV0dXJucyBUaGUgbmV3bHkgcmVnaXN0ZXJlZCBzdG9yZS5cbiAqLyBleHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJHbG9iYWxTdG9yZShuYW1lLCBzdG9yZSkge1xuICAgIGNvbnN0IGF2YWlsYWJsZSA9IGF2YWlsYWJsZVN0b3Jlc1tuYW1lXTtcbiAgICBpZiAoYXZhaWxhYmxlKSB7XG4gICAgICAgIGlmIChhdmFpbGFibGUuYWN0aXZlKSB7XG4gICAgICAgICAgICBpZiAoIWlzVGVzdEVudmlyb25tZW50KCkpIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGBBdHRlbXB0ZWQgdG8gb3ZlcnJpZGUgdGhlIGV4aXN0aW5nIHN0b3JlICR7bmFtZX0uIE1ha2Ugc3VyZSB0aGF0IHN0b3JlcyBhcmUgb25seSBjcmVhdGVkIG9uY2UuYCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBhdmFpbGFibGUudmFsdWUgPSBzdG9yZTtcbiAgICAgICAgfVxuICAgICAgICBhdmFpbGFibGUuYWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgcmV0dXJuIGF2YWlsYWJsZS52YWx1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBhdmFpbGFibGVTdG9yZXNbbmFtZV0gPSB7XG4gICAgICAgICAgICB2YWx1ZTogc3RvcmUsXG4gICAgICAgICAgICBhY3RpdmU6IHRydWVcbiAgICAgICAgfTtcbiAgICAgICAgcmV0dXJuIHN0b3JlO1xuICAgIH1cbn1cbi8qKlxuICogUmV0dXJucyB0aGUgZXhpc3Rpbmcgc3RvcmUgbmFtZWQgYG5hbWVgLFxuICogb3IgY3JlYXRlcyBhIG5ldyBzdG9yZSBuYW1lZCBgbmFtZWAgaWYgbm9uZSBleGlzdHMuXG4gKlxuICogQHBhcmFtIG5hbWUgVGhlIG5hbWUgb2YgdGhlIHN0b3JlIHRvIGxvb2sgdXAuXG4gKiBAcGFyYW0gZmFsbGJhY2tTdGF0ZSBUaGUgaW5pdGlhbCB2YWx1ZSBvZiB0aGUgbmV3IHN0b3JlIGlmIG5vIHN0b3JlIG5hbWVkIGBuYW1lYCBleGlzdHMuXG4gKiBAcGFyYW0gZmFsbGJhY2tTdG9yYWdlVHlwZSBUaGUgdHlwZSBvZiBzdG9yYWdlIHRvIHVzZSBmb3IgdGhlIG5ldyBzdG9yZSBpZiBubyBzdG9yZSBuYW1lZCBgbmFtZWAgZXhpc3RzLiBEZWZhdWx0cyB0byAnbm9uZScuXG4gKiBAcmV0dXJucyBUaGUgZm91bmQgb3IgbmV3bHkgY3JlYXRlZCBzdG9yZS5cbiAqLyBleHBvcnQgZnVuY3Rpb24gZ2V0R2xvYmFsU3RvcmUobmFtZSwgZmFsbGJhY2tTdGF0ZSwgZmFsbGJhY2tTdG9yYWdlVHlwZSA9ICdub25lJykge1xuICAgIGNvbnN0IGF2YWlsYWJsZSA9IGF2YWlsYWJsZVN0b3Jlc1tuYW1lXTtcbiAgICBpZiAoIWF2YWlsYWJsZSkge1xuICAgICAgICBjb25zdCBzdG9yZSA9IGNyZWF0ZVN0b3JlSGVscGVyKG5hbWUsIGZhbGxiYWNrU3RhdGUgPz8ge30sIGZhbGxiYWNrU3RvcmFnZVR5cGUpO1xuICAgICAgICBhdmFpbGFibGVTdG9yZXNbbmFtZV0gPSB7XG4gICAgICAgICAgICB2YWx1ZTogc3RvcmUsXG4gICAgICAgICAgICBhY3RpdmU6IGZhbHNlXG4gICAgICAgIH07XG4gICAgICAgIHJldHVybiBzdG9yZTtcbiAgICB9XG4gICAgcmV0dXJuIGF2YWlsYWJsZS52YWx1ZTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBzdWJzY3JpYmVUbyguLi5hcmdzKSB7XG4gICAgY29uc3QgW3N0b3JlLCBzZWxlY3QsIGhhbmRsZV0gPSBhcmdzO1xuICAgIGNvbnN0IGhhbmRsZXIgPSB0eXBlb2YgaGFuZGxlID09PSAndW5kZWZpbmVkJyA/IHNlbGVjdCA6IGhhbmRsZTtcbiAgICBjb25zdCBzZWxlY3RvciA9IHR5cGVvZiBoYW5kbGUgPT09ICd1bmRlZmluZWQnID8gKHN0YXRlKT0+c3RhdGUgOiBzZWxlY3Q7XG4gICAgbGV0IHByZXZpb3VzID0gc2VsZWN0b3Ioc3RvcmUuZ2V0U3RhdGUoKSk7XG4gICAgaGFuZGxlcihwcmV2aW91cyk7XG4gICAgcmV0dXJuIHN0b3JlLnN1YnNjcmliZSgoc3RhdGUpPT57XG4gICAgICAgIGNvbnN0IGN1cnJlbnQgPSBzZWxlY3RvcihzdGF0ZSk7XG4gICAgICAgIGlmICghc2hhbGxvd0VxdWFsKHByZXZpb3VzLCBjdXJyZW50KSkge1xuICAgICAgICAgICAgcHJldmlvdXMgPSBjdXJyZW50O1xuICAgICAgICAgICAgaGFuZGxlcihjdXJyZW50KTtcbiAgICAgICAgfVxuICAgIH0pO1xufVxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqLyBmdW5jdGlvbiBjcmVhdGVTdG9yZUhlbHBlcihuYW1lLCBpbml0aWFsU3RhdGUsIHN0b3JhZ2VUeXBlKSB7XG4gICAgbGV0IHN0b3JlO1xuICAgIGlmIChzdG9yYWdlVHlwZSA9PT0gJ3Nlc3Npb25TdG9yYWdlJykge1xuICAgICAgICBzdG9yZSA9IGNyZWF0ZVN0b3JlKCkocGVyc2lzdCgoKT0+aW5pdGlhbFN0YXRlLCB7XG4gICAgICAgICAgICBuYW1lLFxuICAgICAgICAgICAgc3RvcmFnZTogY3JlYXRlSlNPTlN0b3JhZ2UoKCk9PnNlc3Npb25TdG9yYWdlKVxuICAgICAgICB9KSk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgc3RvcmUgPSBjcmVhdGVTdG9yZSgpKCgpPT5pbml0aWFsU3RhdGUpO1xuICAgIH1cbiAgICByZXR1cm4gc3RvcmU7XG59XG4iXSwibmFtZXMiOlsiX2dsb2JhbFRoaXMiLCJzaGFsbG93RXF1YWwiLCJwZXJzaXN0IiwiY3JlYXRlSlNPTlN0b3JhZ2UiLCJjcmVhdGVTdG9yZSIsImlzVGVzdEVudmlyb25tZW50IiwiYXZhaWxhYmxlU3RvcmVzIiwid2luZG93IiwiY3JlYXRlR2xvYmFsU3RvcmUiLCJuYW1lIiwiaW5pdGlhbFN0YXRlIiwic3RvcmFnZVR5cGUiLCJhdmFpbGFibGUiLCJjb25zb2xlIiwic3RvcmUiLCJjcmVhdGVTdG9yZUhlbHBlciIsInJlZ2lzdGVyR2xvYmFsU3RvcmUiLCJnZXRHbG9iYWxTdG9yZSIsImZhbGxiYWNrU3RhdGUiLCJmYWxsYmFja1N0b3JhZ2VUeXBlIiwic3Vic2NyaWJlVG8iLCJfa2V5IiwiYXJncyIsIl9hcmdzIiwic2VsZWN0IiwiaGFuZGxlIiwiaGFuZGxlciIsInNlbGVjdG9yIiwic3RhdGUiLCJwcmV2aW91cyIsImN1cnJlbnQiLCJzZXNzaW9uU3RvcmFnZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBS0EsZ0ZBQWdGO0FBQ2hGLGlDQUFpQztBQUNqQ0Esd0JBQUFBO0FBUEEsNEJBQTRCLEdBQXFEO0FBQ2pCO0FBQ2xCO0FBQ0M7QUFDL0MsSUFBTU0sa0JBQWtCLENBQUM7Q0FHekJOLHlCQUFBQSxDQUFBQSxjQUFBQSxZQUFXLFVBQVUsY0FBckJBLDZDQUFBQSw0QkFBQUEsYUFBd0I7SUFDcEIsSUFBSSxPQUFPTyxXQUFXLGVBQWVBLE9BQU8sTUFBTSxLQUFLLGVBQWU7UUFDbEVBLE1BQU0sQ0FBQyxTQUFTLEdBQUdEO0lBQ3ZCO0FBQ0osR0FBRztBQUNIOzs7Ozs7OztDQVFDLEdBQVUsU0FBU0Usa0JBQWtCQyxJQUFJLEVBQUVDLFlBQVk7UUFBRUMsY0FBQUEsaUVBQWM7SUFDcEUsSUFBTUMsWUFBWU4sZUFBZSxDQUFDRyxLQUFLO0lBQ3ZDLElBQUlHLFdBQVc7UUFDWCxJQUFJQSxVQUFVLE1BQU0sRUFBRTtZQUNsQixJQUFJLENBQUNQLGdEQUFpQkEsSUFBSTtnQkFDdEJRLFFBQVEsS0FBSyxDQUFFLDRDQUFnRCxPQUFMSixNQUFLO1lBQ25FO1FBQ0osT0FBTztZQUNIRyxVQUFVLEtBQUssQ0FBQyxRQUFRLENBQUNGLGNBQWM7UUFDM0M7UUFDQUUsVUFBVSxNQUFNLEdBQUc7UUFDbkIsT0FBT0EsVUFBVSxLQUFLO0lBQzFCLE9BQU87UUFDSCxJQUFNRSxRQUFRQyxrQkFBa0JOLE1BQU1DLGNBQWNDO1FBQ3BETCxlQUFlLENBQUNHLEtBQUssR0FBRztZQUNwQixPQUFPSztZQUNQLFFBQVE7UUFDWjtRQUNBLE9BQU9BO0lBQ1g7QUFDSjtBQUNBOzs7Ozs7O0NBT0MsR0FBVSxTQUFTRSxvQkFBb0JQLElBQUksRUFBRUssS0FBSztJQUMvQyxJQUFNRixZQUFZTixlQUFlLENBQUNHLEtBQUs7SUFDdkMsSUFBSUcsV0FBVztRQUNYLElBQUlBLFVBQVUsTUFBTSxFQUFFO1lBQ2xCLElBQUksQ0FBQ1AsZ0RBQWlCQSxJQUFJO2dCQUN0QlEsUUFBUSxLQUFLLENBQUUsNENBQWdELE9BQUxKLE1BQUs7WUFDbkU7UUFDSixPQUFPO1lBQ0hHLFVBQVUsS0FBSyxHQUFHRTtRQUN0QjtRQUNBRixVQUFVLE1BQU0sR0FBRztRQUNuQixPQUFPQSxVQUFVLEtBQUs7SUFDMUIsT0FBTztRQUNITixlQUFlLENBQUNHLEtBQUssR0FBRztZQUNwQixPQUFPSztZQUNQLFFBQVE7UUFDWjtRQUNBLE9BQU9BO0lBQ1g7QUFDSjtBQUNBOzs7Ozs7OztDQVFDLEdBQVUsU0FBU0csZUFBZVIsSUFBSSxFQUFFUyxhQUFhO1FBQUVDLHNCQUFBQSxpRUFBc0I7SUFDMUUsSUFBTVAsWUFBWU4sZUFBZSxDQUFDRyxLQUFLO0lBQ3ZDLElBQUksQ0FBQ0csV0FBVztRQUNaLElBQU1FLFFBQVFDLGtCQUFrQk4sTUFBTVMsMEJBQUFBLDJCQUFBQSxnQkFBaUIsQ0FBQyxHQUFHQztRQUMzRGIsZUFBZSxDQUFDRyxLQUFLLEdBQUc7WUFDcEIsT0FBT0s7WUFDUCxRQUFRO1FBQ1o7UUFDQSxPQUFPQTtJQUNYO0lBQ0EsT0FBT0YsVUFBVSxLQUFLO0FBQzFCO0FBQ08sU0FBU1E7SUFBWUMsSUFBQUEsSUFBQUEsT0FBQUEsVUFBQUEsUUFBR0MsT0FBSEQsVUFBQUEsT0FBQUEsT0FBQUEsR0FBQUEsT0FBQUEsTUFBQUE7UUFBR0MsS0FBSEQsUUFBQUEsU0FBQUEsQ0FBQUEsS0FBTzs7SUFDL0IsSUFBZ0NFLHlCQUFBQSxVQUF6QlQsUUFBeUJTLFVBQWxCQyxTQUFrQkQsVUFBVkUsU0FBVUY7SUFDaEMsSUFBTUcsVUFBVSxPQUFPRCxXQUFXLGNBQWNELFNBQVNDO0lBQ3pELElBQU1FLFdBQVcsT0FBT0YsV0FBVyxjQUFjLFNBQUNHO2VBQVFBO1FBQVFKO0lBQ2xFLElBQUlLLFdBQVdGLFNBQVNiLE1BQU0sUUFBUTtJQUN0Q1ksUUFBUUc7SUFDUixPQUFPZixNQUFNLFNBQVMsQ0FBQyxTQUFDYztRQUNwQixJQUFNRSxVQUFVSCxTQUFTQztRQUN6QixJQUFJLENBQUMzQixvREFBWUEsQ0FBQzRCLFVBQVVDLFVBQVU7WUFDbENELFdBQVdDO1lBQ1hKLFFBQVFJO1FBQ1o7SUFDSjtBQUNKO0FBQ0E7O0NBRUMsR0FBRyxTQUFTZixrQkFBa0JOLElBQUksRUFBRUMsWUFBWSxFQUFFQyxXQUFXO0lBQzFELElBQUlHO0lBQ0osSUFBSUgsZ0JBQWdCLGtCQUFrQjtRQUNsQ0csUUFBUVYsZ0RBQVdBLEdBQUdGLCtDQUFPQSxDQUFDO21CQUFJUTtXQUFjO1lBQzVDRCxNQUFBQTtZQUNBLFNBQVNOLHlEQUFpQkEsQ0FBQzt1QkFBSTRCOztRQUNuQztJQUNKLE9BQU87UUFDSGpCLFFBQVFWLGdEQUFXQSxHQUFHO21CQUFJTTs7SUFDOUI7SUFDQSxPQUFPSTtBQUNYIn0=\n//# sourceURL=webpack-internal:///../../framework/esm-state/dist/state.js\n\n}");
6223
+ eval("{__webpack_require__.r(__webpack_exports__);\n__webpack_require__.d(__webpack_exports__, {\n createGlobalStore: () => (createGlobalStore),\n getGlobalStore: () => (getGlobalStore),\n registerGlobalStore: () => (registerGlobalStore),\n subscribeTo: () => (subscribeTo)\n});\n/* import */ var _openmrs_esm_utils__rspack_import_1 = __webpack_require__(\"../../framework/esm-utils/dist/shallowEqual.js\");\n/* import */ var zustand_middleware__rspack_import_3 = __webpack_require__(\"../../../node_modules/zustand/esm/middleware.mjs\");\n/* import */ var zustand_vanilla__rspack_import_2 = __webpack_require__(\"../../../node_modules/zustand/esm/vanilla.mjs\");\n/* import */ var _utils_js__rspack_import_0 = __webpack_require__(\"../../framework/esm-state/dist/utils.js\");\nfunction _array_like_to_array(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];\n return arr2;\n}\nfunction _array_with_holes(arr) {\n if (Array.isArray(arr)) return arr;\n}\nfunction _iterable_to_array_limit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _s, _e;\n try {\n for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){\n _arr.push(_s.value);\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally{\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally{\n if (_d) throw _e;\n }\n }\n return _arr;\n}\nfunction _non_iterable_rest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nfunction _sliced_to_array(arr, i) {\n return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();\n}\nfunction _unsupported_iterable_to_array(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _array_like_to_array(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(n);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);\n}\nvar _globalCounters_instanceCountKey;\nvar // spaEnv isn't available immediately. Wait a bit before making stores available\n// on window in development mode.\n_globalThis_setTimeout, _globalThis;\n/** @module @category Store */ \n\n\n\nvar availableStores = {};\n/**\n * Each copy of this module owns a separate `availableStores`, so a page running more than one copy\n * has stores, config and extension state that cannot see each other. Nothing fails outright, which\n * is what makes it expensive: the symptoms are missing state and \"store already exists\" errors far\n * from the cause. The count lives on a global registry key rather than in module scope, since a\n * second copy would not share module scope — that is the whole problem being detected.\n *\n * A hot reload re-evaluates this module and so also trips this, which is the honest answer: after a\n * hot reload the page really is running two copies.\n */ var instanceCountKey = Symbol.for('openmrs.esm-state.instanceCount');\nvar globalCounters = globalThis;\nvar instanceCount = ((_globalCounters_instanceCountKey = globalCounters[instanceCountKey]) !== null && _globalCounters_instanceCountKey !== void 0 ? _globalCounters_instanceCountKey : 0) + 1;\nglobalCounters[instanceCountKey] = instanceCount;\nif (instanceCount > 1 && !(0,_utils_js__rspack_import_0.isTestEnvironment)()) {\n console.error(\"Detected \".concat(instanceCount, \" copies of @openmrs/esm-framework running on this page. Each copy keeps \") + 'its own store registry, so stores, configuration and extension state are not shared between ' + 'them. This usually means a frontend module loaded its own bundled framework instead of the one ' + 'the app shell provides.');\n}\n(_globalThis_setTimeout = (_globalThis = globalThis).setTimeout) === null || _globalThis_setTimeout === void 0 ? void 0 : _globalThis_setTimeout.call(_globalThis, function() {\n if (typeof window !== 'undefined' && window.spaEnv === 'development') {\n window['stores'] = availableStores;\n }\n}, 1000);\n/**\n * Creates a Zustand store.\n *\n * @param name A name by which the store can be looked up later.\n * Must be unique across the entire application.\n * @param storageType The type of storage to use for persisting the store's state. Defaults to 'none'.\n * @param initialState An object which will be the initial state of the store.\n * @returns The newly created store.\n */ function createGlobalStore(name, initialState) {\n var storageType = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 'none';\n var available = availableStores[name];\n if (available) {\n if (available.active) {\n if (!(0,_utils_js__rspack_import_0.isTestEnvironment)()) {\n console.error(\"Attempted to override the existing store \".concat(name, \". Make sure that stores are only created once.\"));\n }\n } else {\n available.value.setState(initialState, true);\n }\n available.active = true;\n return available.value;\n } else {\n var store = createStoreHelper(name, initialState, storageType);\n availableStores[name] = {\n value: store,\n active: true\n };\n return store;\n }\n}\n/**\n * Registers an existing Zustand store.\n *\n * @param name A name by which the store can be looked up later.\n * Must be unique across the entire application.\n * @param store The Zustand store to use for this.\n * @returns The newly registered store.\n */ function registerGlobalStore(name, store) {\n var available = availableStores[name];\n if (available) {\n if (available.active) {\n if (!(0,_utils_js__rspack_import_0.isTestEnvironment)()) {\n console.error(\"Attempted to override the existing store \".concat(name, \". Make sure that stores are only created once.\"));\n }\n } else {\n available.value = store;\n }\n available.active = true;\n return available.value;\n } else {\n availableStores[name] = {\n value: store,\n active: true\n };\n return store;\n }\n}\n/**\n * Returns the existing store named `name`,\n * or creates a new store named `name` if none exists.\n *\n * @param name The name of the store to look up.\n * @param fallbackState The initial value of the new store if no store named `name` exists.\n * @param fallbackStorageType The type of storage to use for the new store if no store named `name` exists. Defaults to 'none'.\n * @returns The found or newly created store.\n */ function getGlobalStore(name, fallbackState) {\n var fallbackStorageType = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 'none';\n var available = availableStores[name];\n if (!available) {\n var store = createStoreHelper(name, fallbackState !== null && fallbackState !== void 0 ? fallbackState : {}, fallbackStorageType);\n availableStores[name] = {\n value: store,\n active: false\n };\n return store;\n }\n return available.value;\n}\nfunction subscribeTo() {\n for(var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){\n args[_key] = arguments[_key];\n }\n var _args = _sliced_to_array(args, 3), store = _args[0], select = _args[1], handle = _args[2];\n var handler = typeof handle === 'undefined' ? select : handle;\n var selector = typeof handle === 'undefined' ? function(state) {\n return state;\n } : select;\n var previous = selector(store.getState());\n handler(previous);\n return store.subscribe(function(state) {\n var current = selector(state);\n if (!(0,_openmrs_esm_utils__rspack_import_1.shallowEqual)(previous, current)) {\n previous = current;\n handler(current);\n }\n });\n}\n/**\n * @internal\n */ function createStoreHelper(name, initialState, storageType) {\n var store;\n if (storageType === 'sessionStorage') {\n store = (0,zustand_vanilla__rspack_import_2.createStore)()((0,zustand_middleware__rspack_import_3.persist)(function() {\n return initialState;\n }, {\n name: name,\n storage: (0,zustand_middleware__rspack_import_3.createJSONStorage)(function() {\n return sessionStorage;\n })\n }));\n } else {\n store = (0,zustand_vanilla__rspack_import_2.createStore)()(function() {\n return initialState;\n });\n }\n return store;\n}\n\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiamF2YXNjcmlwdC9lc218YnVpbHRpbjpzd2MtbG9hZGVyIS9ob21lL3J1bm5lci93b3JrL29wZW5tcnMtZXNtLWNvcmUvb3Blbm1ycy1lc20tY29yZS9wYWNrYWdlcy9mcmFtZXdvcmsvZXNtLXN0YXRlL2Rpc3Qvc3RhdGUuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9Ab3Blbm1ycy9lc20tYXBwLXNoZWxsLy4uLy4uL2ZyYW1ld29yay9lc20tc3RhdGUvZGlzdC9zdGF0ZS5qcz9iZTJkIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKiBAbW9kdWxlIEBjYXRlZ29yeSBTdG9yZSAqLyBpbXBvcnQgeyBzaGFsbG93RXF1YWwgfSBmcm9tIFwiQG9wZW5tcnMvZXNtLXV0aWxzXCI7XG5pbXBvcnQgeyBwZXJzaXN0LCBjcmVhdGVKU09OU3RvcmFnZSB9IGZyb20gXCJ6dXN0YW5kL21pZGRsZXdhcmVcIjtcbmltcG9ydCB7IGNyZWF0ZVN0b3JlIH0gZnJvbSBcInp1c3RhbmQvdmFuaWxsYVwiO1xuaW1wb3J0IHsgaXNUZXN0RW52aXJvbm1lbnQgfSBmcm9tIFwiLi91dGlscy5qc1wiO1xuY29uc3QgYXZhaWxhYmxlU3RvcmVzID0ge307XG4vKipcbiAqIEVhY2ggY29weSBvZiB0aGlzIG1vZHVsZSBvd25zIGEgc2VwYXJhdGUgYGF2YWlsYWJsZVN0b3Jlc2AsIHNvIGEgcGFnZSBydW5uaW5nIG1vcmUgdGhhbiBvbmUgY29weVxuICogaGFzIHN0b3JlcywgY29uZmlnIGFuZCBleHRlbnNpb24gc3RhdGUgdGhhdCBjYW5ub3Qgc2VlIGVhY2ggb3RoZXIuIE5vdGhpbmcgZmFpbHMgb3V0cmlnaHQsIHdoaWNoXG4gKiBpcyB3aGF0IG1ha2VzIGl0IGV4cGVuc2l2ZTogdGhlIHN5bXB0b21zIGFyZSBtaXNzaW5nIHN0YXRlIGFuZCBcInN0b3JlIGFscmVhZHkgZXhpc3RzXCIgZXJyb3JzIGZhclxuICogZnJvbSB0aGUgY2F1c2UuIFRoZSBjb3VudCBsaXZlcyBvbiBhIGdsb2JhbCByZWdpc3RyeSBrZXkgcmF0aGVyIHRoYW4gaW4gbW9kdWxlIHNjb3BlLCBzaW5jZSBhXG4gKiBzZWNvbmQgY29weSB3b3VsZCBub3Qgc2hhcmUgbW9kdWxlIHNjb3BlIOKAlCB0aGF0IGlzIHRoZSB3aG9sZSBwcm9ibGVtIGJlaW5nIGRldGVjdGVkLlxuICpcbiAqIEEgaG90IHJlbG9hZCByZS1ldmFsdWF0ZXMgdGhpcyBtb2R1bGUgYW5kIHNvIGFsc28gdHJpcHMgdGhpcywgd2hpY2ggaXMgdGhlIGhvbmVzdCBhbnN3ZXI6IGFmdGVyIGFcbiAqIGhvdCByZWxvYWQgdGhlIHBhZ2UgcmVhbGx5IGlzIHJ1bm5pbmcgdHdvIGNvcGllcy5cbiAqLyBjb25zdCBpbnN0YW5jZUNvdW50S2V5ID0gU3ltYm9sLmZvcignb3Blbm1ycy5lc20tc3RhdGUuaW5zdGFuY2VDb3VudCcpO1xuY29uc3QgZ2xvYmFsQ291bnRlcnMgPSBnbG9iYWxUaGlzO1xuY29uc3QgaW5zdGFuY2VDb3VudCA9IChnbG9iYWxDb3VudGVyc1tpbnN0YW5jZUNvdW50S2V5XSA/PyAwKSArIDE7XG5nbG9iYWxDb3VudGVyc1tpbnN0YW5jZUNvdW50S2V5XSA9IGluc3RhbmNlQ291bnQ7XG5pZiAoaW5zdGFuY2VDb3VudCA+IDEgJiYgIWlzVGVzdEVudmlyb25tZW50KCkpIHtcbiAgICBjb25zb2xlLmVycm9yKGBEZXRlY3RlZCAke2luc3RhbmNlQ291bnR9IGNvcGllcyBvZiBAb3Blbm1ycy9lc20tZnJhbWV3b3JrIHJ1bm5pbmcgb24gdGhpcyBwYWdlLiBFYWNoIGNvcHkga2VlcHMgYCArICdpdHMgb3duIHN0b3JlIHJlZ2lzdHJ5LCBzbyBzdG9yZXMsIGNvbmZpZ3VyYXRpb24gYW5kIGV4dGVuc2lvbiBzdGF0ZSBhcmUgbm90IHNoYXJlZCBiZXR3ZWVuICcgKyAndGhlbS4gVGhpcyB1c3VhbGx5IG1lYW5zIGEgZnJvbnRlbmQgbW9kdWxlIGxvYWRlZCBpdHMgb3duIGJ1bmRsZWQgZnJhbWV3b3JrIGluc3RlYWQgb2YgdGhlIG9uZSAnICsgJ3RoZSBhcHAgc2hlbGwgcHJvdmlkZXMuJyk7XG59XG4vLyBzcGFFbnYgaXNuJ3QgYXZhaWxhYmxlIGltbWVkaWF0ZWx5LiBXYWl0IGEgYml0IGJlZm9yZSBtYWtpbmcgc3RvcmVzIGF2YWlsYWJsZVxuLy8gb24gd2luZG93IGluIGRldmVsb3BtZW50IG1vZGUuXG5nbG9iYWxUaGlzLnNldFRpbWVvdXQ/LigoKT0+e1xuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cuc3BhRW52ID09PSAnZGV2ZWxvcG1lbnQnKSB7XG4gICAgICAgIHdpbmRvd1snc3RvcmVzJ10gPSBhdmFpbGFibGVTdG9yZXM7XG4gICAgfVxufSwgMTAwMCk7XG4vKipcbiAqIENyZWF0ZXMgYSBadXN0YW5kIHN0b3JlLlxuICpcbiAqIEBwYXJhbSBuYW1lIEEgbmFtZSBieSB3aGljaCB0aGUgc3RvcmUgY2FuIGJlIGxvb2tlZCB1cCBsYXRlci5cbiAqICAgIE11c3QgYmUgdW5pcXVlIGFjcm9zcyB0aGUgZW50aXJlIGFwcGxpY2F0aW9uLlxuICogQHBhcmFtIHN0b3JhZ2VUeXBlIFRoZSB0eXBlIG9mIHN0b3JhZ2UgdG8gdXNlIGZvciBwZXJzaXN0aW5nIHRoZSBzdG9yZSdzIHN0YXRlLiBEZWZhdWx0cyB0byAnbm9uZScuXG4gKiBAcGFyYW0gaW5pdGlhbFN0YXRlIEFuIG9iamVjdCB3aGljaCB3aWxsIGJlIHRoZSBpbml0aWFsIHN0YXRlIG9mIHRoZSBzdG9yZS5cbiAqIEByZXR1cm5zIFRoZSBuZXdseSBjcmVhdGVkIHN0b3JlLlxuICovIGV4cG9ydCBmdW5jdGlvbiBjcmVhdGVHbG9iYWxTdG9yZShuYW1lLCBpbml0aWFsU3RhdGUsIHN0b3JhZ2VUeXBlID0gJ25vbmUnKSB7XG4gICAgY29uc3QgYXZhaWxhYmxlID0gYXZhaWxhYmxlU3RvcmVzW25hbWVdO1xuICAgIGlmIChhdmFpbGFibGUpIHtcbiAgICAgICAgaWYgKGF2YWlsYWJsZS5hY3RpdmUpIHtcbiAgICAgICAgICAgIGlmICghaXNUZXN0RW52aXJvbm1lbnQoKSkge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoYEF0dGVtcHRlZCB0byBvdmVycmlkZSB0aGUgZXhpc3Rpbmcgc3RvcmUgJHtuYW1lfS4gTWFrZSBzdXJlIHRoYXQgc3RvcmVzIGFyZSBvbmx5IGNyZWF0ZWQgb25jZS5gKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGF2YWlsYWJsZS52YWx1ZS5zZXRTdGF0ZShpbml0aWFsU3RhdGUsIHRydWUpO1xuICAgICAgICB9XG4gICAgICAgIGF2YWlsYWJsZS5hY3RpdmUgPSB0cnVlO1xuICAgICAgICByZXR1cm4gYXZhaWxhYmxlLnZhbHVlO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHN0b3JlID0gY3JlYXRlU3RvcmVIZWxwZXIobmFtZSwgaW5pdGlhbFN0YXRlLCBzdG9yYWdlVHlwZSk7XG4gICAgICAgIGF2YWlsYWJsZVN0b3Jlc1tuYW1lXSA9IHtcbiAgICAgICAgICAgIHZhbHVlOiBzdG9yZSxcbiAgICAgICAgICAgIGFjdGl2ZTogdHJ1ZVxuICAgICAgICB9O1xuICAgICAgICByZXR1cm4gc3RvcmU7XG4gICAgfVxufVxuLyoqXG4gKiBSZWdpc3RlcnMgYW4gZXhpc3RpbmcgWnVzdGFuZCBzdG9yZS5cbiAqXG4gKiBAcGFyYW0gbmFtZSBBIG5hbWUgYnkgd2hpY2ggdGhlIHN0b3JlIGNhbiBiZSBsb29rZWQgdXAgbGF0ZXIuXG4gKiAgICBNdXN0IGJlIHVuaXF1ZSBhY3Jvc3MgdGhlIGVudGlyZSBhcHBsaWNhdGlvbi5cbiAqIEBwYXJhbSBzdG9yZSBUaGUgWnVzdGFuZCBzdG9yZSB0byB1c2UgZm9yIHRoaXMuXG4gKiBAcmV0dXJucyBUaGUgbmV3bHkgcmVnaXN0ZXJlZCBzdG9yZS5cbiAqLyBleHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJHbG9iYWxTdG9yZShuYW1lLCBzdG9yZSkge1xuICAgIGNvbnN0IGF2YWlsYWJsZSA9IGF2YWlsYWJsZVN0b3Jlc1tuYW1lXTtcbiAgICBpZiAoYXZhaWxhYmxlKSB7XG4gICAgICAgIGlmIChhdmFpbGFibGUuYWN0aXZlKSB7XG4gICAgICAgICAgICBpZiAoIWlzVGVzdEVudmlyb25tZW50KCkpIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGBBdHRlbXB0ZWQgdG8gb3ZlcnJpZGUgdGhlIGV4aXN0aW5nIHN0b3JlICR7bmFtZX0uIE1ha2Ugc3VyZSB0aGF0IHN0b3JlcyBhcmUgb25seSBjcmVhdGVkIG9uY2UuYCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBhdmFpbGFibGUudmFsdWUgPSBzdG9yZTtcbiAgICAgICAgfVxuICAgICAgICBhdmFpbGFibGUuYWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgcmV0dXJuIGF2YWlsYWJsZS52YWx1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBhdmFpbGFibGVTdG9yZXNbbmFtZV0gPSB7XG4gICAgICAgICAgICB2YWx1ZTogc3RvcmUsXG4gICAgICAgICAgICBhY3RpdmU6IHRydWVcbiAgICAgICAgfTtcbiAgICAgICAgcmV0dXJuIHN0b3JlO1xuICAgIH1cbn1cbi8qKlxuICogUmV0dXJucyB0aGUgZXhpc3Rpbmcgc3RvcmUgbmFtZWQgYG5hbWVgLFxuICogb3IgY3JlYXRlcyBhIG5ldyBzdG9yZSBuYW1lZCBgbmFtZWAgaWYgbm9uZSBleGlzdHMuXG4gKlxuICogQHBhcmFtIG5hbWUgVGhlIG5hbWUgb2YgdGhlIHN0b3JlIHRvIGxvb2sgdXAuXG4gKiBAcGFyYW0gZmFsbGJhY2tTdGF0ZSBUaGUgaW5pdGlhbCB2YWx1ZSBvZiB0aGUgbmV3IHN0b3JlIGlmIG5vIHN0b3JlIG5hbWVkIGBuYW1lYCBleGlzdHMuXG4gKiBAcGFyYW0gZmFsbGJhY2tTdG9yYWdlVHlwZSBUaGUgdHlwZSBvZiBzdG9yYWdlIHRvIHVzZSBmb3IgdGhlIG5ldyBzdG9yZSBpZiBubyBzdG9yZSBuYW1lZCBgbmFtZWAgZXhpc3RzLiBEZWZhdWx0cyB0byAnbm9uZScuXG4gKiBAcmV0dXJucyBUaGUgZm91bmQgb3IgbmV3bHkgY3JlYXRlZCBzdG9yZS5cbiAqLyBleHBvcnQgZnVuY3Rpb24gZ2V0R2xvYmFsU3RvcmUobmFtZSwgZmFsbGJhY2tTdGF0ZSwgZmFsbGJhY2tTdG9yYWdlVHlwZSA9ICdub25lJykge1xuICAgIGNvbnN0IGF2YWlsYWJsZSA9IGF2YWlsYWJsZVN0b3Jlc1tuYW1lXTtcbiAgICBpZiAoIWF2YWlsYWJsZSkge1xuICAgICAgICBjb25zdCBzdG9yZSA9IGNyZWF0ZVN0b3JlSGVscGVyKG5hbWUsIGZhbGxiYWNrU3RhdGUgPz8ge30sIGZhbGxiYWNrU3RvcmFnZVR5cGUpO1xuICAgICAgICBhdmFpbGFibGVTdG9yZXNbbmFtZV0gPSB7XG4gICAgICAgICAgICB2YWx1ZTogc3RvcmUsXG4gICAgICAgICAgICBhY3RpdmU6IGZhbHNlXG4gICAgICAgIH07XG4gICAgICAgIHJldHVybiBzdG9yZTtcbiAgICB9XG4gICAgcmV0dXJuIGF2YWlsYWJsZS52YWx1ZTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBzdWJzY3JpYmVUbyguLi5hcmdzKSB7XG4gICAgY29uc3QgW3N0b3JlLCBzZWxlY3QsIGhhbmRsZV0gPSBhcmdzO1xuICAgIGNvbnN0IGhhbmRsZXIgPSB0eXBlb2YgaGFuZGxlID09PSAndW5kZWZpbmVkJyA/IHNlbGVjdCA6IGhhbmRsZTtcbiAgICBjb25zdCBzZWxlY3RvciA9IHR5cGVvZiBoYW5kbGUgPT09ICd1bmRlZmluZWQnID8gKHN0YXRlKT0+c3RhdGUgOiBzZWxlY3Q7XG4gICAgbGV0IHByZXZpb3VzID0gc2VsZWN0b3Ioc3RvcmUuZ2V0U3RhdGUoKSk7XG4gICAgaGFuZGxlcihwcmV2aW91cyk7XG4gICAgcmV0dXJuIHN0b3JlLnN1YnNjcmliZSgoc3RhdGUpPT57XG4gICAgICAgIGNvbnN0IGN1cnJlbnQgPSBzZWxlY3RvcihzdGF0ZSk7XG4gICAgICAgIGlmICghc2hhbGxvd0VxdWFsKHByZXZpb3VzLCBjdXJyZW50KSkge1xuICAgICAgICAgICAgcHJldmlvdXMgPSBjdXJyZW50O1xuICAgICAgICAgICAgaGFuZGxlcihjdXJyZW50KTtcbiAgICAgICAgfVxuICAgIH0pO1xufVxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqLyBmdW5jdGlvbiBjcmVhdGVTdG9yZUhlbHBlcihuYW1lLCBpbml0aWFsU3RhdGUsIHN0b3JhZ2VUeXBlKSB7XG4gICAgbGV0IHN0b3JlO1xuICAgIGlmIChzdG9yYWdlVHlwZSA9PT0gJ3Nlc3Npb25TdG9yYWdlJykge1xuICAgICAgICBzdG9yZSA9IGNyZWF0ZVN0b3JlKCkocGVyc2lzdCgoKT0+aW5pdGlhbFN0YXRlLCB7XG4gICAgICAgICAgICBuYW1lLFxuICAgICAgICAgICAgc3RvcmFnZTogY3JlYXRlSlNPTlN0b3JhZ2UoKCk9PnNlc3Npb25TdG9yYWdlKVxuICAgICAgICB9KSk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgc3RvcmUgPSBjcmVhdGVTdG9yZSgpKCgpPT5pbml0aWFsU3RhdGUpO1xuICAgIH1cbiAgICByZXR1cm4gc3RvcmU7XG59XG4iXSwibmFtZXMiOlsiX2dsb2JhbENvdW50ZXJzX2luc3RhbmNlQ291bnRLZXkiLCJfZ2xvYmFsVGhpcyIsInNoYWxsb3dFcXVhbCIsInBlcnNpc3QiLCJjcmVhdGVKU09OU3RvcmFnZSIsImNyZWF0ZVN0b3JlIiwiaXNUZXN0RW52aXJvbm1lbnQiLCJhdmFpbGFibGVTdG9yZXMiLCJpbnN0YW5jZUNvdW50S2V5IiwiU3ltYm9sIiwiZ2xvYmFsQ291bnRlcnMiLCJnbG9iYWxUaGlzIiwiaW5zdGFuY2VDb3VudCIsImNvbnNvbGUiLCJ3aW5kb3ciLCJjcmVhdGVHbG9iYWxTdG9yZSIsIm5hbWUiLCJpbml0aWFsU3RhdGUiLCJzdG9yYWdlVHlwZSIsImF2YWlsYWJsZSIsInN0b3JlIiwiY3JlYXRlU3RvcmVIZWxwZXIiLCJyZWdpc3Rlckdsb2JhbFN0b3JlIiwiZ2V0R2xvYmFsU3RvcmUiLCJmYWxsYmFja1N0YXRlIiwiZmFsbGJhY2tTdG9yYWdlVHlwZSIsInN1YnNjcmliZVRvIiwiX2tleSIsImFyZ3MiLCJfYXJncyIsInNlbGVjdCIsImhhbmRsZSIsImhhbmRsZXIiLCJzZWxlY3RvciIsInN0YXRlIiwicHJldmlvdXMiLCJjdXJyZW50Iiwic2Vzc2lvblN0b3JhZ2UiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQWdCdUJBO0lBS3ZCLGdGQUFnRjtBQUNoRixpQ0FBaUM7QUFDakNDLHdCQUFBQTtBQXZCQSw0QkFBNEIsR0FBcUQ7QUFDakI7QUFDbEI7QUFDQztBQUMvQyxJQUFNTSxrQkFBa0IsQ0FBQztBQUN6Qjs7Ozs7Ozs7O0NBU0MsR0FBRyxJQUFNQyxtQkFBbUJDLE9BQU8sR0FBRyxDQUFDO0FBQ3hDLElBQU1DLGlCQUFpQkM7QUFDdkIsSUFBTUMsZ0JBQWdCLEVBQUNaLG1DQUFBQSxjQUFjLENBQUNRLGlCQUFpQixjQUFoQ1IsOENBQUFBLG1DQUFvQyxLQUFLO0FBQ2hFVSxjQUFjLENBQUNGLGlCQUFpQixHQUFHSTtBQUNuQyxJQUFJQSxnQkFBZ0IsS0FBSyxDQUFDTixnREFBaUJBLElBQUk7SUFDM0NPLFFBQVEsS0FBSyxDQUFFLFlBQXlCLE9BQWRELGVBQWMsOEVBQTRFLGlHQUFpRyxvR0FBb0c7QUFDN1Q7Q0FHQVgseUJBQUFBLENBQUFBLGNBQUFBLFlBQVcsVUFBVSxjQUFyQkEsNkNBQUFBLDRCQUFBQSxhQUF3QjtJQUNwQixJQUFJLE9BQU9hLFdBQVcsZUFBZUEsT0FBTyxNQUFNLEtBQUssZUFBZTtRQUNsRUEsTUFBTSxDQUFDLFNBQVMsR0FBR1A7SUFDdkI7QUFDSixHQUFHO0FBQ0g7Ozs7Ozs7O0NBUUMsR0FBVSxTQUFTUSxrQkFBa0JDLElBQUksRUFBRUMsWUFBWTtRQUFFQyxjQUFBQSxpRUFBYztJQUNwRSxJQUFNQyxZQUFZWixlQUFlLENBQUNTLEtBQUs7SUFDdkMsSUFBSUcsV0FBVztRQUNYLElBQUlBLFVBQVUsTUFBTSxFQUFF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\n//# sourceURL=webpack-internal:///../../framework/esm-state/dist/state.js\n\n}");
6224
6224
 
6225
6225
  },
6226
6226
  "../../framework/esm-state/dist/utils.js"(__unused_rspack___webpack_module__, __webpack_exports__, __webpack_require__) {