@openmrs/esm-dynamic-loading 5.0.1-pre.813 → 5.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
- @openmrs/esm-dynamic-loading:build: cache hit, replaying output dceade42d53ac1ad
2
- @openmrs/esm-dynamic-loading:build: asset openmrs-esm-dynamic-loading.js 2.97 KiB [emitted] [minimized] (name: main) 1 related asset
1
+ @openmrs/esm-dynamic-loading:build: cache hit, replaying output 92be682322bced21
2
+ @openmrs/esm-dynamic-loading:build: asset openmrs-esm-dynamic-loading.js 2.98 KiB [emitted] [minimized] (name: main) 1 related asset
3
3
  @openmrs/esm-dynamic-loading:build: runtime modules 2.47 KiB 4 modules
4
4
  @openmrs/esm-dynamic-loading:build: orphan modules 5.7 KiB [orphan] 1 module
5
5
  @openmrs/esm-dynamic-loading:build: ./src/index.ts + 1 modules 5.73 KiB [built] [code generated]
6
- @openmrs/esm-dynamic-loading:build: webpack 5.88.0 compiled successfully in 13698 ms
6
+ @openmrs/esm-dynamic-loading:build: webpack 5.88.0 compiled successfully in 18706 ms
@@ -1,2 +1,2 @@
1
- var _openmrs_esm_dynamic_loading;(()=>{"use strict";var e={d:(t,r)=>{for(var o in r)e.o(r,o)&&!e.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:r[o]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}};(()=>{e.S={};var t={},r={};e.I=(o,n)=>{n||(n=[]);var i=r[o];if(i||(i=r[o]={}),!(n.indexOf(i)>=0)){if(n.push(i),t[o])return t[o];e.o(e.S,o)||(e.S[o]={}),e.S[o];var a=[];return t[o]=a.length?Promise.all(a).then((()=>t[o]=1)):1}}})();var t={};function r(e,t,r,o,n,i,a){try{var s=e[i](a),l=s.value}catch(e){return void r(e)}s.done?t(l):Promise.resolve(l).then(o,n)}function o(e){return e.replace(/[\/\-@]/g,"_")}function n(e){return i.apply(this,arguments)}function i(){var t;return t=function*(t,r="./start"){if("string"!=typeof t||0===t.trim().length){const e="Attempted to call importDynamic() without supplying a package to load";throw console.error(e),new Error(e)}const n=o(t);if(!window[n]){const e=yield window.importMapOverrides.getCurrentPageMap();if(!e.imports.hasOwnProperty(t)){const e=`Could not find the package ${t} defined in the current importmap`;throw console.error(e),new Error(e)}let r=e.imports[t];r.startsWith("./")&&(r=window.spaBase+r.substring(1)),yield new Promise(((e,t)=>{!function(e,t,r){const o=document.head.querySelector(`script[src="${e}"]`);let n=window[a];if(n||(n=window[a]=new Set([])),o)if(n.has(e)){const n=()=>{null==o||o.removeEventListener("load",n),t(null)};o.addEventListener("load",n);const i=t=>{console.error(`Failed to load script from ${e}`,t),null==o||o.removeEventListener("error",i),r(t.message)};o.addEventListener("error",i)}else console.warn("Script already loaded. Not loading it again.",e),t(null);else{n.add(e);const o=document.createElement("script");o.src=e,o.type="text/javascript",o.async=!0;const i=()=>{n.delete(e),o.removeEventListener("load",i),t(null)};o.addEventListener("load",i);const a=t=>{n.delete(e),console.error(`Failed to load script from ${e}`,t),o.removeEventListener("error",a),r(t.message)};o.addEventListener("error",a),document.head.appendChild(o)}}(r,e,t)}))}const i=window[n];if("object"!=typeof(s=i)||null===s||!("init"in s)||"function"!=typeof s.init||!("get"in s)||"function"!=typeof s.get){const e=`The global variable ${n} does not refer to a federated module`;throw console.error(e),new Error(e)}var s;i.init(e.S.default);const l=(yield i.get(r))();if("object"!=typeof l||null===l){const e=`Container for ${t} did not return an ESM module as expected`;throw console.error(e),new Error(e)}return l},i=function(){var e=this,o=arguments;return new Promise((function(n,i){var a=t.apply(e,o);function s(e){r(a,n,i,s,l,"next",e)}function l(e){r(a,n,i,s,l,"throw",e)}s(void 0)}))},i.apply(this,arguments)}e.r(t),e.d(t,{importDynamic:()=>n,slugify:()=>o});const a="__openmrs_script_loading";_openmrs_esm_dynamic_loading=t})();
1
+ System.register([],(function(e,t){return{execute:function(){e((()=>{"use strict";var e={d:(t,r)=>{for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}};(()=>{e.S={};var t={},r={};e.I=(n,o)=>{o||(o=[]);var i=r[n];if(i||(i=r[n]={}),!(o.indexOf(i)>=0)){if(o.push(i),t[n])return t[n];e.o(e.S,n)||(e.S[n]={}),e.S[n];var a=[];return t[n]=a.length?Promise.all(a).then((()=>t[n]=1)):1}}})();var t={};function r(e,t,r,n,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void r(e)}s.done?t(l):Promise.resolve(l).then(n,o)}function n(e){return e.replace(/[\/\-@]/g,"_")}function o(e){return i.apply(this,arguments)}function i(){var t;return t=function*(t,r="./start"){if("string"!=typeof t||0===t.trim().length){const e="Attempted to call importDynamic() without supplying a package to load";throw console.error(e),new Error(e)}const o=n(t);if(!window[o]){const e=yield window.importMapOverrides.getCurrentPageMap();if(!e.imports.hasOwnProperty(t)){const e=`Could not find the package ${t} defined in the current importmap`;throw console.error(e),new Error(e)}let r=e.imports[t];r.startsWith("./")&&(r=window.spaBase+r.substring(1)),yield new Promise(((e,t)=>{!function(e,t,r){const n=document.head.querySelector(`script[src="${e}"]`);let o=window[a];if(o||(o=window[a]=new Set([])),n)if(o.has(e)){const o=()=>{null==n||n.removeEventListener("load",o),t(null)};n.addEventListener("load",o);const i=t=>{console.error(`Failed to load script from ${e}`,t),null==n||n.removeEventListener("error",i),r(t.message)};n.addEventListener("error",i)}else console.warn("Script already loaded. Not loading it again.",e),t(null);else{o.add(e);const n=document.createElement("script");n.src=e,n.type="text/javascript",n.async=!0;const i=()=>{o.delete(e),n.removeEventListener("load",i),t(null)};n.addEventListener("load",i);const a=t=>{o.delete(e),console.error(`Failed to load script from ${e}`,t),n.removeEventListener("error",a),r(t.message)};n.addEventListener("error",a),document.head.appendChild(n)}}(r,e,t)}))}const i=window[o];if("object"!=typeof(s=i)||null===s||!("init"in s)||"function"!=typeof s.init||!("get"in s)||"function"!=typeof s.get){const e=`The global variable ${o} does not refer to a federated module`;throw console.error(e),new Error(e)}var s;i.init(e.S.default);const l=(yield i.get(r))();if("object"!=typeof l||null===l){const e=`Container for ${t} did not return an ESM module as expected`;throw console.error(e),new Error(e)}return l},i=function(){var e=this,n=arguments;return new Promise((function(o,i){var a=t.apply(e,n);function s(e){r(a,o,i,s,l,"next",e)}function l(e){r(a,o,i,s,l,"throw",e)}s(void 0)}))},i.apply(this,arguments)}e.r(t),e.d(t,{importDynamic:()=>o,slugify:()=>n});const a="__openmrs_script_loading";return t})())}}}));
2
2
  //# sourceMappingURL=openmrs-esm-dynamic-loading.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"openmrs-esm-dynamic-loading.js","mappings":"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","sources":["webpack://_openmrs_esm_dynamic_loading/webpack/bootstrap","webpack://_openmrs_esm_dynamic_loading/webpack/runtime/define property getters","webpack://_openmrs_esm_dynamic_loading/webpack/runtime/hasOwnProperty shorthand","webpack://_openmrs_esm_dynamic_loading/webpack/runtime/make namespace object","webpack://_openmrs_esm_dynamic_loading/webpack/runtime/sharing","webpack://_openmrs_esm_dynamic_loading/./src/dynamic-loading.ts"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.S = {};\nvar initPromises = {};\nvar initTokens = {};\n__webpack_require__.I = (name, initScope) => {\n\tif(!initScope) initScope = [];\n\t// handling circular init calls\n\tvar initToken = initTokens[name];\n\tif(!initToken) initToken = initTokens[name] = {};\n\tif(initScope.indexOf(initToken) >= 0) return;\n\tinitScope.push(initToken);\n\t// only runs once\n\tif(initPromises[name]) return initPromises[name];\n\t// creates a new share scope if needed\n\tif(!__webpack_require__.o(__webpack_require__.S, name)) __webpack_require__.S[name] = {};\n\t// runs all init snippets from all modules reachable\n\tvar scope = __webpack_require__.S[name];\n\tvar warn = (msg) => {\n\t\tif (typeof console !== \"undefined\" && console.warn) console.warn(msg);\n\t};\n\tvar uniqueName = \"_openmrs_esm_dynamic_loading\";\n\tvar register = (name, version, factory, eager) => {\n\t\tvar versions = scope[name] = scope[name] || {};\n\t\tvar activeVersion = versions[version];\n\t\tif(!activeVersion || (!activeVersion.loaded && (!eager != !activeVersion.eager ? eager : uniqueName > activeVersion.from))) versions[version] = { get: factory, from: uniqueName, eager: !!eager };\n\t};\n\tvar initExternal = (id) => {\n\t\tvar handleError = (err) => (warn(\"Initialization of sharing external failed: \" + err));\n\t\ttry {\n\t\t\tvar module = __webpack_require__(id);\n\t\t\tif(!module) return;\n\t\t\tvar initFn = (module) => (module && module.init && module.init(__webpack_require__.S[name], initScope))\n\t\t\tif(module.then) return promises.push(module.then(initFn, handleError));\n\t\t\tvar initResult = initFn(module);\n\t\t\tif(initResult && initResult.then) return promises.push(initResult['catch'](handleError));\n\t\t} catch(err) { handleError(err); }\n\t}\n\tvar promises = [];\n\tswitch(name) {\n\t}\n\tif(!promises.length) return initPromises[name] = 1;\n\treturn initPromises[name] = Promise.all(promises).then(() => (initPromises[name] = 1));\n};","/** @module @category Dynamic Loading */ \"use strict\";\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}\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 */ export 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 */ export function importDynamic(jsPackage) {\n return _importDynamic.apply(this, arguments);\n}\nfunction _importDynamic() {\n _importDynamic = _async_to_generator(function*(jsPackage, share = \"./start\") {\n if (typeof jsPackage !== \"string\" || jsPackage.trim().length === 0) {\n const error = \"Attempted to call importDynamic() without supplying a package to load\";\n console.error(error);\n throw new Error(error);\n }\n const jsPackageSlug = slugify(jsPackage);\n if (!window[jsPackageSlug]) {\n const importMap = yield window.importMapOverrides.getCurrentPageMap();\n if (!importMap.imports.hasOwnProperty(jsPackage)) {\n const error = `Could not find the package ${jsPackage} defined in the current importmap`;\n console.error(error);\n throw new Error(error);\n }\n let url = importMap.imports[jsPackage];\n if (url.startsWith(\"./\")) {\n url = window.spaBase + url.substring(1);\n }\n yield new Promise((resolve, reject)=>{\n loadScript(url, resolve, reject);\n });\n }\n const container = window[jsPackageSlug];\n if (!isFederatedModule(container)) {\n const error = `The global variable ${jsPackageSlug} does not refer to a federated module`;\n console.error(error);\n throw new Error(error);\n }\n container.init(__webpack_share_scopes__.default);\n const factory = yield container.get(share);\n const module = factory();\n if (!(typeof module === \"object\") || module === null) {\n const error = `Container for ${jsPackage} did not return an ESM module as expected`;\n console.error(error);\n throw new Error(error);\n }\n return module;\n });\n return _importDynamic.apply(this, arguments);\n}\nfunction isFederatedModule(a) {\n return typeof 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\nconst OPENMRS_SCRIPT_LOADING = \"__openmrs_script_loading\";\n/**\n * Appends a `<script>` to the DOM with the given URL.\n */ function loadScript(url, resolve, reject) {\n const scriptElement = document.head.querySelector(`script[src=\"${url}\"]`);\n let 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 const element = document.createElement(\"script\");\n element.src = url;\n element.type = \"text/javascript\";\n element.async = true;\n const loadFn = ()=>{\n scriptLoading.delete(url);\n element.removeEventListener(\"load\", loadFn);\n resolve(null);\n };\n element.addEventListener(\"load\", loadFn);\n const errFn = (ev)=>{\n scriptLoading.delete(url);\n console.error(`Failed to load script from ${url}`, ev);\n element.removeEventListener(\"error\", errFn);\n reject(ev.message);\n };\n element.addEventListener(\"error\", errFn);\n document.head.appendChild(element);\n } else {\n if (scriptLoading.has(url)) {\n const loadFn = ()=>{\n scriptElement === null || scriptElement === void 0 ? void 0 : scriptElement.removeEventListener(\"load\", loadFn);\n resolve(null);\n };\n scriptElement.addEventListener(\"load\", loadFn);\n const errFn = (ev)=>{\n console.error(`Failed to load script from ${url}`, ev);\n scriptElement === null || scriptElement === void 0 ? void 0 : scriptElement.removeEventListener(\"error\", errFn);\n reject(ev.message);\n };\n scriptElement.addEventListener(\"error\", errFn);\n } else {\n console.warn(\"Script already loaded. Not loading it again.\", url);\n resolve(null);\n }\n }\n}\n"],"names":["__webpack_require__","exports","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","Symbol","toStringTag","value","S","initPromises","initTokens","I","name","initScope","initToken","indexOf","push","promises","length","Promise","all","then","asyncGeneratorStep","gen","resolve","reject","_next","_throw","arg","info","error","done","slugify","replace","importDynamic","jsPackage","_importDynamic","apply","this","arguments","fn","share","trim","console","Error","jsPackageSlug","window","importMap","importMapOverrides","getCurrentPageMap","imports","url","startsWith","spaBase","substring","scriptElement","document","head","querySelector","scriptLoading","OPENMRS_SCRIPT_LOADING","Set","has","loadFn","removeEventListener","addEventListener","errFn","ev","message","warn","add","element","createElement","src","type","async","delete","appendChild","loadScript","container","a","init","default","module","self","args","err","undefined"],"sourceRoot":""}
1
+ {"version":3,"file":"openmrs-esm-dynamic-loading.js","mappings":"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","sources":["webpack://@openmrs/esm-dynamic-loading/webpack/bootstrap","webpack://@openmrs/esm-dynamic-loading/webpack/runtime/define property getters","webpack://@openmrs/esm-dynamic-loading/webpack/runtime/hasOwnProperty shorthand","webpack://@openmrs/esm-dynamic-loading/webpack/runtime/make namespace object","webpack://@openmrs/esm-dynamic-loading/webpack/runtime/sharing","webpack://@openmrs/esm-dynamic-loading/./src/dynamic-loading.ts"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.S = {};\nvar initPromises = {};\nvar initTokens = {};\n__webpack_require__.I = (name, initScope) => {\n\tif(!initScope) initScope = [];\n\t// handling circular init calls\n\tvar initToken = initTokens[name];\n\tif(!initToken) initToken = initTokens[name] = {};\n\tif(initScope.indexOf(initToken) >= 0) return;\n\tinitScope.push(initToken);\n\t// only runs once\n\tif(initPromises[name]) return initPromises[name];\n\t// creates a new share scope if needed\n\tif(!__webpack_require__.o(__webpack_require__.S, name)) __webpack_require__.S[name] = {};\n\t// runs all init snippets from all modules reachable\n\tvar scope = __webpack_require__.S[name];\n\tvar warn = (msg) => {\n\t\tif (typeof console !== \"undefined\" && console.warn) console.warn(msg);\n\t};\n\tvar uniqueName = \"@openmrs/esm-dynamic-loading\";\n\tvar register = (name, version, factory, eager) => {\n\t\tvar versions = scope[name] = scope[name] || {};\n\t\tvar activeVersion = versions[version];\n\t\tif(!activeVersion || (!activeVersion.loaded && (!eager != !activeVersion.eager ? eager : uniqueName > activeVersion.from))) versions[version] = { get: factory, from: uniqueName, eager: !!eager };\n\t};\n\tvar initExternal = (id) => {\n\t\tvar handleError = (err) => (warn(\"Initialization of sharing external failed: \" + err));\n\t\ttry {\n\t\t\tvar module = __webpack_require__(id);\n\t\t\tif(!module) return;\n\t\t\tvar initFn = (module) => (module && module.init && module.init(__webpack_require__.S[name], initScope))\n\t\t\tif(module.then) return promises.push(module.then(initFn, handleError));\n\t\t\tvar initResult = initFn(module);\n\t\t\tif(initResult && initResult.then) return promises.push(initResult['catch'](handleError));\n\t\t} catch(err) { handleError(err); }\n\t}\n\tvar promises = [];\n\tswitch(name) {\n\t}\n\tif(!promises.length) return initPromises[name] = 1;\n\treturn initPromises[name] = Promise.all(promises).then(() => (initPromises[name] = 1));\n};","/** @module @category Dynamic Loading */ \"use strict\";\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}\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 */ export 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 */ export function importDynamic(jsPackage) {\n return _importDynamic.apply(this, arguments);\n}\nfunction _importDynamic() {\n _importDynamic = _async_to_generator(function*(jsPackage, share = \"./start\") {\n if (typeof jsPackage !== \"string\" || jsPackage.trim().length === 0) {\n const error = \"Attempted to call importDynamic() without supplying a package to load\";\n console.error(error);\n throw new Error(error);\n }\n const jsPackageSlug = slugify(jsPackage);\n if (!window[jsPackageSlug]) {\n const importMap = yield window.importMapOverrides.getCurrentPageMap();\n if (!importMap.imports.hasOwnProperty(jsPackage)) {\n const error = `Could not find the package ${jsPackage} defined in the current importmap`;\n console.error(error);\n throw new Error(error);\n }\n let url = importMap.imports[jsPackage];\n if (url.startsWith(\"./\")) {\n url = window.spaBase + url.substring(1);\n }\n yield new Promise((resolve, reject)=>{\n loadScript(url, resolve, reject);\n });\n }\n const container = window[jsPackageSlug];\n if (!isFederatedModule(container)) {\n const error = `The global variable ${jsPackageSlug} does not refer to a federated module`;\n console.error(error);\n throw new Error(error);\n }\n container.init(__webpack_share_scopes__.default);\n const factory = yield container.get(share);\n const module = factory();\n if (!(typeof module === \"object\") || module === null) {\n const error = `Container for ${jsPackage} did not return an ESM module as expected`;\n console.error(error);\n throw new Error(error);\n }\n return module;\n });\n return _importDynamic.apply(this, arguments);\n}\nfunction isFederatedModule(a) {\n return typeof 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\nconst OPENMRS_SCRIPT_LOADING = \"__openmrs_script_loading\";\n/**\n * Appends a `<script>` to the DOM with the given URL.\n */ function loadScript(url, resolve, reject) {\n const scriptElement = document.head.querySelector(`script[src=\"${url}\"]`);\n let 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 const element = document.createElement(\"script\");\n element.src = url;\n element.type = \"text/javascript\";\n element.async = true;\n const loadFn = ()=>{\n scriptLoading.delete(url);\n element.removeEventListener(\"load\", loadFn);\n resolve(null);\n };\n element.addEventListener(\"load\", loadFn);\n const errFn = (ev)=>{\n scriptLoading.delete(url);\n console.error(`Failed to load script from ${url}`, ev);\n element.removeEventListener(\"error\", errFn);\n reject(ev.message);\n };\n element.addEventListener(\"error\", errFn);\n document.head.appendChild(element);\n } else {\n if (scriptLoading.has(url)) {\n const loadFn = ()=>{\n scriptElement === null || scriptElement === void 0 ? void 0 : scriptElement.removeEventListener(\"load\", loadFn);\n resolve(null);\n };\n scriptElement.addEventListener(\"load\", loadFn);\n const errFn = (ev)=>{\n console.error(`Failed to load script from ${url}`, ev);\n scriptElement === null || scriptElement === void 0 ? void 0 : scriptElement.removeEventListener(\"error\", errFn);\n reject(ev.message);\n };\n scriptElement.addEventListener(\"error\", errFn);\n } else {\n console.warn(\"Script already loaded. Not loading it again.\", url);\n resolve(null);\n }\n }\n}\n"],"names":["__webpack_require__","exports","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","Symbol","toStringTag","value","S","initPromises","initTokens","I","name","initScope","initToken","indexOf","push","promises","length","Promise","all","then","asyncGeneratorStep","gen","resolve","reject","_next","_throw","arg","info","error","done","slugify","replace","importDynamic","jsPackage","_importDynamic","apply","this","arguments","fn","share","trim","console","Error","jsPackageSlug","window","importMap","importMapOverrides","getCurrentPageMap","imports","url","startsWith","spaBase","substring","scriptElement","document","head","querySelector","scriptLoading","OPENMRS_SCRIPT_LOADING","Set","has","loadFn","removeEventListener","addEventListener","errFn","ev","message","warn","add","element","createElement","src","type","async","delete","appendChild","loadScript","container","a","init","default","module","self","args","err","undefined"],"sourceRoot":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openmrs/esm-dynamic-loading",
3
- "version": "5.0.1-pre.813",
3
+ "version": "5.0.1",
4
4
  "license": "MPL-2.0",
5
5
  "description": "Utilities for dynamically loading code in OpenMRS",
6
6
  "browser": "dist/openmrs-esm-dynamic-loading.js",
@@ -38,10 +38,10 @@
38
38
  "access": "public"
39
39
  },
40
40
  "devDependencies": {
41
- "@openmrs/esm-globals": "^5.0.1-pre.813"
41
+ "@openmrs/esm-globals": "^5.0.1"
42
42
  },
43
43
  "peerDependencies": {
44
44
  "@openmrs/esm-globals": "4.x"
45
45
  },
46
- "gitHead": "0987145a28a9cddc5dca2eb63fc0728c0bc0e2fe"
46
+ "gitHead": "c29b88275be224849a36fcad074af34e3f30f495"
47
47
  }
package/webpack.config.js CHANGED
@@ -10,18 +10,19 @@ module.exports = (env) => ({
10
10
  output: {
11
11
  filename: basename(browser),
12
12
  path: resolve(__dirname, "dist"),
13
- library: { type: "var", name: "_openmrs_esm_dynamic_loading" },
13
+ libraryTarget: "system",
14
14
  },
15
15
  devtool: "source-map",
16
16
  module: {
17
17
  rules: [
18
18
  {
19
19
  test: /\.m?(js|ts|tsx)$/,
20
- exclude: /(node_modules|bower_components)/,
20
+ exclude: /node_modules/,
21
21
  use: "@swc-node/loader",
22
22
  },
23
23
  ],
24
24
  },
25
+ externals: Object.keys(peerDependencies || {}),
25
26
  resolve: {
26
27
  extensions: [".ts", ".js", ".tsx", ".jsx"],
27
28
  },