@softarc/native-federation-orchestrator 4.0.0-RC1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/LICENSE.md +9 -0
  2. package/README.md +142 -0
  3. package/fesm2022/@softarc/native-federation-orchestrator.mjs +2539 -0
  4. package/fesm2022/@softarc/native-federation-orchestrator.mjs.map +7 -0
  5. package/fesm2022/audit.mjs +67 -0
  6. package/fesm2022/audit.mjs.map +7 -0
  7. package/fesm2022/options.mjs +173 -0
  8. package/fesm2022/options.mjs.map +7 -0
  9. package/fesm2022/registry.mjs +110 -0
  10. package/fesm2022/registry.mjs.map +7 -0
  11. package/fesm2022/sdk.mjs +99 -0
  12. package/fesm2022/sdk.mjs.map +7 -0
  13. package/init-registry.mjs +1 -0
  14. package/package.json +58 -0
  15. package/quickstart.mjs +18 -0
  16. package/types/init-registry.d.ts +6 -0
  17. package/types/lib/1.domain/externals/external.contract.d.ts +14 -0
  18. package/types/lib/1.domain/externals/version.contract.d.ts +21 -0
  19. package/types/lib/1.domain/import-map/import-map.contract.d.ts +7 -0
  20. package/types/lib/1.domain/index.d.ts +7 -0
  21. package/types/lib/1.domain/registry/event-registry.contract.d.ts +8 -0
  22. package/types/lib/1.domain/registry/event.contract.d.ts +15 -0
  23. package/types/lib/1.domain/registry/index.d.ts +3 -0
  24. package/types/lib/1.domain/registry/registry-options.contract.d.ts +11 -0
  25. package/types/lib/1.domain/remote/remote-info.contract.d.ts +8 -0
  26. package/types/lib/1.domain/remote/remote-module.contract.d.ts +4 -0
  27. package/types/lib/1.domain/remote-entry/manifest.contract.d.ts +3 -0
  28. package/types/lib/1.domain/remote-entry/remote-entry.contract.d.ts +30 -0
  29. package/types/lib/2.app/config/config.contract.d.ts +7 -0
  30. package/types/lib/2.app/config/host.contract.d.ts +14 -0
  31. package/types/lib/2.app/config/import-map.contract.d.ts +9 -0
  32. package/types/lib/2.app/config/index.d.ts +6 -0
  33. package/types/lib/2.app/config/log.contract.d.ts +21 -0
  34. package/types/lib/2.app/config/mode.contract.d.ts +19 -0
  35. package/types/lib/2.app/config/registry.contract.d.ts +6 -0
  36. package/types/lib/2.app/config/storage.contract.d.ts +18 -0
  37. package/types/lib/2.app/driver-ports/audit/for-auditing-externals.port.d.ts +2 -0
  38. package/types/lib/2.app/driver-ports/audit/index.d.ts +1 -0
  39. package/types/lib/2.app/driver-ports/dynamic-init/drivers.contract.d.ts +13 -0
  40. package/types/lib/2.app/driver-ports/dynamic-init/flow.contract.d.ts +4 -0
  41. package/types/lib/2.app/driver-ports/dynamic-init/for-converting-to-import-map.d.ts +6 -0
  42. package/types/lib/2.app/driver-ports/dynamic-init/for-getting-remote-entry.port.d.ts +3 -0
  43. package/types/lib/2.app/driver-ports/dynamic-init/for-updating-cache.d.ts +5 -0
  44. package/types/lib/2.app/driver-ports/dynamic-init/index.d.ts +5 -0
  45. package/types/lib/2.app/driver-ports/flow-factory.contract.d.ts +7 -0
  46. package/types/lib/2.app/driver-ports/init/drivers.contract.d.ts +17 -0
  47. package/types/lib/2.app/driver-ports/init/flow.contract.d.ts +6 -0
  48. package/types/lib/2.app/driver-ports/init/for-committing-changes.port.d.ts +2 -0
  49. package/types/lib/2.app/driver-ports/init/for-determining-shared-externals.port.d.ts +1 -0
  50. package/types/lib/2.app/driver-ports/init/for-exposing-module-loader.port.d.ts +2 -0
  51. package/types/lib/2.app/driver-ports/init/for-generating-import-map.d.ts +2 -0
  52. package/types/lib/2.app/driver-ports/init/for-getting-remote-entries.port.d.ts +3 -0
  53. package/types/lib/2.app/driver-ports/init/for-processing-remote-entries.port.d.ts +2 -0
  54. package/types/lib/2.app/driver-ports/init/index.d.ts +8 -0
  55. package/types/lib/2.app/driver-ports/registry/for-managing-events.port.d.ts +2 -0
  56. package/types/lib/2.app/driving-ports/driving.contract.d.ts +16 -0
  57. package/types/lib/2.app/driving-ports/for-browser-tasks.d.ts +7 -0
  58. package/types/lib/2.app/driving-ports/for-providing-manifest.port.d.ts +4 -0
  59. package/types/lib/2.app/driving-ports/for-providing-remote-entries.port.d.ts +4 -0
  60. package/types/lib/2.app/driving-ports/for-remote-info-storage.port.d.ts +11 -0
  61. package/types/lib/2.app/driving-ports/for-scoped-externals-storage.port.d.ts +9 -0
  62. package/types/lib/2.app/driving-ports/for-shared-externals-storage.port.d.ts +13 -0
  63. package/types/lib/2.app/driving-ports/for-version-checking.port.d.ts +6 -0
  64. package/types/lib/2.app/driving-ports/index.d.ts +8 -0
  65. package/types/lib/2.app/flows/audit/externals-audit.d.ts +4 -0
  66. package/types/lib/2.app/flows/dynamic-init/convert-to-import-map.d.ts +3 -0
  67. package/types/lib/2.app/flows/dynamic-init/get-remote-entry.d.ts +5 -0
  68. package/types/lib/2.app/flows/dynamic-init/update-cache.d.ts +5 -0
  69. package/types/lib/2.app/flows/init/commit-changes.d.ts +4 -0
  70. package/types/lib/2.app/flows/init/determine-shared-externals.d.ts +5 -0
  71. package/types/lib/2.app/flows/init/expose-module-loader.d.ts +4 -0
  72. package/types/lib/2.app/flows/init/generate-import-map.d.ts +5 -0
  73. package/types/lib/2.app/flows/init/get-remote-entries.d.ts +6 -0
  74. package/types/lib/2.app/flows/init/process-remote-entries.d.ts +5 -0
  75. package/types/lib/2.app/flows/registry/setup-registry.d.ts +3 -0
  76. package/types/lib/3.adapters/browser/browser.d.ts +4 -0
  77. package/types/lib/3.adapters/checks/version.check.d.ts +3 -0
  78. package/types/lib/3.adapters/http/manifest-provider.d.ts +3 -0
  79. package/types/lib/3.adapters/http/remote-entry-provider.d.ts +3 -0
  80. package/types/lib/3.adapters/storage/remote-info.repository.d.ts +4 -0
  81. package/types/lib/3.adapters/storage/scoped-externals.repository.d.ts +4 -0
  82. package/types/lib/3.adapters/storage/shared-externals.repository.d.ts +4 -0
  83. package/types/lib/4.config/host/host.config.d.ts +2 -0
  84. package/types/lib/4.config/import-map/import-map.config.d.ts +2 -0
  85. package/types/lib/4.config/import-map/index.d.ts +3 -0
  86. package/types/lib/4.config/import-map/replace-in-dom.d.ts +2 -0
  87. package/types/lib/4.config/import-map/use-default.d.ts +3 -0
  88. package/types/lib/4.config/import-map/use-import-shim.d.ts +5 -0
  89. package/types/lib/4.config/logging/console.logger.d.ts +3 -0
  90. package/types/lib/4.config/logging/index.d.ts +2 -0
  91. package/types/lib/4.config/logging/log.config.d.ts +2 -0
  92. package/types/lib/4.config/logging/log.handler.d.ts +3 -0
  93. package/types/lib/4.config/logging/noop.logger.d.ts +3 -0
  94. package/types/lib/4.config/mode/caching.profile.d.ts +2 -0
  95. package/types/lib/4.config/mode/default.profile.d.ts +2 -0
  96. package/types/lib/4.config/mode/index.d.ts +2 -0
  97. package/types/lib/4.config/mode/mode.config.d.ts +2 -0
  98. package/types/lib/4.config/storage/global-this.storage.d.ts +3 -0
  99. package/types/lib/4.config/storage/index.d.ts +3 -0
  100. package/types/lib/4.config/storage/local.storage.d.ts +3 -0
  101. package/types/lib/4.config/storage/session.storage.d.ts +3 -0
  102. package/types/lib/4.config/storage/storage.config.d.ts +2 -0
  103. package/types/lib/5.di/config.factory.d.ts +2 -0
  104. package/types/lib/5.di/driving.factory.d.ts +6 -0
  105. package/types/lib/5.di/flows/dynamic-init.factory.d.ts +14 -0
  106. package/types/lib/5.di/flows/init.factory.d.ts +14 -0
  107. package/types/lib/6.mocks/handlers/log.handler.d.ts +2 -0
  108. package/types/lib/audit.index.d.ts +2 -0
  109. package/types/lib/index.d.ts +7 -0
  110. package/types/lib/init-federation.contract.d.ts +15 -0
  111. package/types/lib/init-federation.d.ts +4 -0
  112. package/types/lib/native-federation.error.d.ts +4 -0
  113. package/types/lib/options.index.d.ts +5 -0
  114. package/types/lib/registry.index.d.ts +4 -0
  115. package/types/lib/sdk.index.d.ts +8 -0
  116. package/types/lib/utils/clone-entry.d.ts +4 -0
  117. package/types/lib/utils/optional.d.ts +13 -0
  118. package/types/lib/utils/path.d.ts +3 -0
  119. package/types/quickstart.d.ts +1 -0
package/quickstart.mjs ADDED
@@ -0,0 +1,18 @@
1
+ var Ji=Object.create;var Eo=Object.defineProperty;var zi=Object.getOwnPropertyDescriptor;var Ki=Object.getOwnPropertyNames;var Zi=Object.getPrototypeOf,Qi=Object.prototype.hasOwnProperty;var te=(o,t)=>()=>(t||o((t={exports:{}}).exports,t),t.exports);var es=(o,t,i,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let c of Ki(t))!Qi.call(o,c)&&c!==i&&Eo(o,c,{get:()=>t[c],enumerable:!(s=zi(t,c))||s.enumerable});return o};var gt=(o,t,i)=>(i=o!=null?Ji(Zi(o)):{},es(t||!o||!o.__esModule?Eo(i,"default",{value:o,enumerable:!0}):i,o));var Et=te((Ua,ko)=>{"use strict";var rs=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...o)=>console.error("SEMVER",...o):()=>{};ko.exports=rs});var _t=te((Xa,Lo)=>{"use strict";var os="2.0.0",ns=Number.MAX_SAFE_INTEGER||9007199254740991,is=16,ss=250,as=["major","premajor","minor","preminor","patch","prepatch","prerelease"];Lo.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:is,MAX_SAFE_BUILD_LENGTH:ss,MAX_SAFE_INTEGER:ns,RELEASE_TYPES:as,SEMVER_SPEC_VERSION:os,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var Dt=te((Ne,Oo)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:Er,MAX_SAFE_BUILD_LENGTH:cs,MAX_LENGTH:ls}=_t(),fs=Et();Ne=Oo.exports={};var ps=Ne.re=[],ms=Ne.safeRe=[],O=Ne.src=[],us=Ne.safeSrc=[],T=Ne.t={},ds=0,yr="[a-zA-Z0-9-]",hs=[["\\s",1],["\\d",ls],[yr,cs]],gs=o=>{for(let[t,i]of hs)o=o.split(`${t}*`).join(`${t}{0,${i}}`).split(`${t}+`).join(`${t}{1,${i}}`);return o},V=(o,t,i)=>{let s=gs(t),c=ds++;fs(o,c,t),T[o]=c,O[c]=t,us[c]=s,ps[c]=new RegExp(t,i?"g":void 0),ms[c]=new RegExp(s,i?"g":void 0)};V("NUMERICIDENTIFIER","0|[1-9]\\d*");V("NUMERICIDENTIFIERLOOSE","\\d+");V("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${yr}*`);V("MAINVERSION",`(${O[T.NUMERICIDENTIFIER]})\\.(${O[T.NUMERICIDENTIFIER]})\\.(${O[T.NUMERICIDENTIFIER]})`);V("MAINVERSIONLOOSE",`(${O[T.NUMERICIDENTIFIERLOOSE]})\\.(${O[T.NUMERICIDENTIFIERLOOSE]})\\.(${O[T.NUMERICIDENTIFIERLOOSE]})`);V("PRERELEASEIDENTIFIER",`(?:${O[T.NONNUMERICIDENTIFIER]}|${O[T.NUMERICIDENTIFIER]})`);V("PRERELEASEIDENTIFIERLOOSE",`(?:${O[T.NONNUMERICIDENTIFIER]}|${O[T.NUMERICIDENTIFIERLOOSE]})`);V("PRERELEASE",`(?:-(${O[T.PRERELEASEIDENTIFIER]}(?:\\.${O[T.PRERELEASEIDENTIFIER]})*))`);V("PRERELEASELOOSE",`(?:-?(${O[T.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${O[T.PRERELEASEIDENTIFIERLOOSE]})*))`);V("BUILDIDENTIFIER",`${yr}+`);V("BUILD",`(?:\\+(${O[T.BUILDIDENTIFIER]}(?:\\.${O[T.BUILDIDENTIFIER]})*))`);V("FULLPLAIN",`v?${O[T.MAINVERSION]}${O[T.PRERELEASE]}?${O[T.BUILD]}?`);V("FULL",`^${O[T.FULLPLAIN]}$`);V("LOOSEPLAIN",`[v=\\s]*${O[T.MAINVERSIONLOOSE]}${O[T.PRERELEASELOOSE]}?${O[T.BUILD]}?`);V("LOOSE",`^${O[T.LOOSEPLAIN]}$`);V("GTLT","((?:<|>)?=?)");V("XRANGEIDENTIFIERLOOSE",`${O[T.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);V("XRANGEIDENTIFIER",`${O[T.NUMERICIDENTIFIER]}|x|X|\\*`);V("XRANGEPLAIN",`[v=\\s]*(${O[T.XRANGEIDENTIFIER]})(?:\\.(${O[T.XRANGEIDENTIFIER]})(?:\\.(${O[T.XRANGEIDENTIFIER]})(?:${O[T.PRERELEASE]})?${O[T.BUILD]}?)?)?`);V("XRANGEPLAINLOOSE",`[v=\\s]*(${O[T.XRANGEIDENTIFIERLOOSE]})(?:\\.(${O[T.XRANGEIDENTIFIERLOOSE]})(?:\\.(${O[T.XRANGEIDENTIFIERLOOSE]})(?:${O[T.PRERELEASELOOSE]})?${O[T.BUILD]}?)?)?`);V("XRANGE",`^${O[T.GTLT]}\\s*${O[T.XRANGEPLAIN]}$`);V("XRANGELOOSE",`^${O[T.GTLT]}\\s*${O[T.XRANGEPLAINLOOSE]}$`);V("COERCEPLAIN",`(^|[^\\d])(\\d{1,${Er}})(?:\\.(\\d{1,${Er}}))?(?:\\.(\\d{1,${Er}}))?`);V("COERCE",`${O[T.COERCEPLAIN]}(?:$|[^\\d])`);V("COERCEFULL",O[T.COERCEPLAIN]+`(?:${O[T.PRERELEASE]})?(?:${O[T.BUILD]})?(?:$|[^\\d])`);V("COERCERTL",O[T.COERCE],!0);V("COERCERTLFULL",O[T.COERCEFULL],!0);V("LONETILDE","(?:~>?)");V("TILDETRIM",`(\\s*)${O[T.LONETILDE]}\\s+`,!0);Ne.tildeTrimReplace="$1~";V("TILDE",`^${O[T.LONETILDE]}${O[T.XRANGEPLAIN]}$`);V("TILDELOOSE",`^${O[T.LONETILDE]}${O[T.XRANGEPLAINLOOSE]}$`);V("LONECARET","(?:\\^)");V("CARETTRIM",`(\\s*)${O[T.LONECARET]}\\s+`,!0);Ne.caretTrimReplace="$1^";V("CARET",`^${O[T.LONECARET]}${O[T.XRANGEPLAIN]}$`);V("CARETLOOSE",`^${O[T.LONECARET]}${O[T.XRANGEPLAINLOOSE]}$`);V("COMPARATORLOOSE",`^${O[T.GTLT]}\\s*(${O[T.LOOSEPLAIN]})$|^$`);V("COMPARATOR",`^${O[T.GTLT]}\\s*(${O[T.FULLPLAIN]})$|^$`);V("COMPARATORTRIM",`(\\s*)${O[T.GTLT]}\\s*(${O[T.LOOSEPLAIN]}|${O[T.XRANGEPLAIN]})`,!0);Ne.comparatorTrimReplace="$1$2$3";V("HYPHENRANGE",`^\\s*(${O[T.XRANGEPLAIN]})\\s+-\\s+(${O[T.XRANGEPLAIN]})\\s*$`);V("HYPHENRANGELOOSE",`^\\s*(${O[T.XRANGEPLAINLOOSE]})\\s+-\\s+(${O[T.XRANGEPLAINLOOSE]})\\s*$`);V("STAR","(<|>)?=?\\s*\\*");V("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");V("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var jt=te((Wa,To)=>{"use strict";var Es=Object.freeze({loose:!0}),ys=Object.freeze({}),bs=o=>o?typeof o!="object"?Es:o:ys;To.exports=bs});var Fo=te((Ba,Ao)=>{"use strict";var No=/^[0-9]+$/,xo=(o,t)=>{if(typeof o=="number"&&typeof t=="number")return o===t?0:o<t?-1:1;let i=No.test(o),s=No.test(t);return i&&s&&(o=+o,t=+t),o===t?0:i&&!s?-1:s&&!i?1:o<t?-1:1},Rs=(o,t)=>xo(t,o);Ao.exports={compareIdentifiers:xo,rcompareIdentifiers:Rs}});var et=te((Ya,Mo)=>{"use strict";var Vt=Et(),{MAX_LENGTH:Po,MAX_SAFE_INTEGER:Gt}=_t(),{safeRe:qt,t:Ht}=Dt(),$s=jt(),{compareIdentifiers:br}=Fo(),Rr=class o{constructor(t,i){if(i=$s(i),t instanceof o){if(t.loose===!!i.loose&&t.includePrerelease===!!i.includePrerelease)return t;t=t.version}else if(typeof t!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof t}".`);if(t.length>Po)throw new TypeError(`version is longer than ${Po} characters`);Vt("SemVer",t,i),this.options=i,this.loose=!!i.loose,this.includePrerelease=!!i.includePrerelease;let s=t.trim().match(i.loose?qt[Ht.LOOSE]:qt[Ht.FULL]);if(!s)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+s[1],this.minor=+s[2],this.patch=+s[3],this.major>Gt||this.major<0)throw new TypeError("Invalid major version");if(this.minor>Gt||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>Gt||this.patch<0)throw new TypeError("Invalid patch version");s[4]?this.prerelease=s[4].split(".").map(c=>{if(/^[0-9]+$/.test(c)){let m=+c;if(m>=0&&m<Gt)return m}return c}):this.prerelease=[],this.build=s[5]?s[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(t){if(Vt("SemVer.compare",this.version,this.options,t),!(t instanceof o)){if(typeof t=="string"&&t===this.version)return 0;t=new o(t,this.options)}return t.version===this.version?0:this.compareMain(t)||this.comparePre(t)}compareMain(t){return t instanceof o||(t=new o(t,this.options)),this.major<t.major?-1:this.major>t.major?1:this.minor<t.minor?-1:this.minor>t.minor?1:this.patch<t.patch?-1:this.patch>t.patch?1:0}comparePre(t){if(t instanceof o||(t=new o(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let i=0;do{let s=this.prerelease[i],c=t.prerelease[i];if(Vt("prerelease compare",i,s,c),s===void 0&&c===void 0)return 0;if(c===void 0)return 1;if(s===void 0)return-1;if(s===c)continue;return br(s,c)}while(++i)}compareBuild(t){t instanceof o||(t=new o(t,this.options));let i=0;do{let s=this.build[i],c=t.build[i];if(Vt("build compare",i,s,c),s===void 0&&c===void 0)return 0;if(c===void 0)return 1;if(s===void 0)return-1;if(s===c)continue;return br(s,c)}while(++i)}inc(t,i,s){if(t.startsWith("pre")){if(!i&&s===!1)throw new Error("invalid increment argument: identifier is empty");if(i){let c=`-${i}`.match(this.options.loose?qt[Ht.PRERELEASELOOSE]:qt[Ht.PRERELEASE]);if(!c||c[1]!==i)throw new Error(`invalid identifier: ${i}`)}}switch(t){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",i,s);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",i,s);break;case"prepatch":this.prerelease.length=0,this.inc("patch",i,s),this.inc("pre",i,s);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",i,s),this.inc("pre",i,s);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let c=Number(s)?1:0;if(this.prerelease.length===0)this.prerelease=[c];else{let m=this.prerelease.length;for(;--m>=0;)typeof this.prerelease[m]=="number"&&(this.prerelease[m]++,m=-2);if(m===-1){if(i===this.prerelease.join(".")&&s===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(c)}}if(i){let m=[i,c];s===!1&&(m=[i]),br(this.prerelease[0],i)===0?isNaN(this.prerelease[1])&&(this.prerelease=m):this.prerelease=m}break}default:throw new Error(`invalid increment argument: ${t}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};Mo.exports=Rr});var jo=te((Ja,Do)=>{"use strict";var _o=et(),vs=(o,t,i=!1)=>{if(o instanceof _o)return o;try{return new _o(o,t)}catch(s){if(!i)return null;throw s}};Do.exports=vs});var Go=te((za,Vo)=>{"use strict";var ws=jo(),Ss=(o,t)=>{let i=ws(o,t);return i?i.version:null};Vo.exports=Ss});var Ho=te((Ka,qo)=>{"use strict";var $r=class{constructor(){this.max=1e3,this.map=new Map}get(t){let i=this.map.get(t);if(i!==void 0)return this.map.delete(t),this.map.set(t,i),i}delete(t){return this.map.delete(t)}set(t,i){if(!this.delete(t)&&i!==void 0){if(this.map.size>=this.max){let c=this.map.keys().next().value;this.delete(c)}this.map.set(t,i)}return this}};qo.exports=$r});var Ve=te((Za,Xo)=>{"use strict";var Uo=et(),Is=(o,t,i)=>new Uo(o,i).compare(new Uo(t,i));Xo.exports=Is});var Bo=te((Qa,Wo)=>{"use strict";var Cs=Ve(),ks=(o,t,i)=>Cs(o,t,i)===0;Wo.exports=ks});var Jo=te((ec,Yo)=>{"use strict";var Ls=Ve(),Os=(o,t,i)=>Ls(o,t,i)!==0;Yo.exports=Os});var vr=te((tc,zo)=>{"use strict";var Ts=Ve(),Ns=(o,t,i)=>Ts(o,t,i)>0;zo.exports=Ns});var Zo=te((rc,Ko)=>{"use strict";var xs=Ve(),As=(o,t,i)=>xs(o,t,i)>=0;Ko.exports=As});var en=te((oc,Qo)=>{"use strict";var Fs=Ve(),Ps=(o,t,i)=>Fs(o,t,i)<0;Qo.exports=Ps});var rn=te((nc,tn)=>{"use strict";var Ms=Ve(),_s=(o,t,i)=>Ms(o,t,i)<=0;tn.exports=_s});var nn=te((ic,on)=>{"use strict";var Ds=Bo(),js=Jo(),Vs=vr(),Gs=Zo(),qs=en(),Hs=rn(),Us=(o,t,i,s)=>{switch(t){case"===":return typeof o=="object"&&(o=o.version),typeof i=="object"&&(i=i.version),o===i;case"!==":return typeof o=="object"&&(o=o.version),typeof i=="object"&&(i=i.version),o!==i;case"":case"=":case"==":return Ds(o,i,s);case"!=":return js(o,i,s);case">":return Vs(o,i,s);case">=":return Gs(o,i,s);case"<":return qs(o,i,s);case"<=":return Hs(o,i,s);default:throw new TypeError(`Invalid operator: ${t}`)}};on.exports=Us});var mn=te((sc,pn)=>{"use strict";var yt=Symbol("SemVer ANY"),Ir=class o{static get ANY(){return yt}constructor(t,i){if(i=sn(i),t instanceof o){if(t.loose===!!i.loose)return t;t=t.value}t=t.trim().split(/\s+/).join(" "),Sr("comparator",t,i),this.options=i,this.loose=!!i.loose,this.parse(t),this.semver===yt?this.value="":this.value=this.operator+this.semver.version,Sr("comp",this)}parse(t){let i=this.options.loose?an[cn.COMPARATORLOOSE]:an[cn.COMPARATOR],s=t.match(i);if(!s)throw new TypeError(`Invalid comparator: ${t}`);this.operator=s[1]!==void 0?s[1]:"",this.operator==="="&&(this.operator=""),s[2]?this.semver=new ln(s[2],this.options.loose):this.semver=yt}toString(){return this.value}test(t){if(Sr("Comparator.test",t,this.options.loose),this.semver===yt||t===yt)return!0;if(typeof t=="string")try{t=new ln(t,this.options)}catch{return!1}return wr(t,this.operator,this.semver,this.options)}intersects(t,i){if(!(t instanceof o))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new fn(t.value,i).test(this.value):t.operator===""?t.value===""?!0:new fn(this.value,i).test(t.semver):(i=sn(i),i.includePrerelease&&(this.value==="<0.0.0-0"||t.value==="<0.0.0-0")||!i.includePrerelease&&(this.value.startsWith("<0.0.0")||t.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&t.operator.startsWith(">")||this.operator.startsWith("<")&&t.operator.startsWith("<")||this.semver.version===t.semver.version&&this.operator.includes("=")&&t.operator.includes("=")||wr(this.semver,"<",t.semver,i)&&this.operator.startsWith(">")&&t.operator.startsWith("<")||wr(this.semver,">",t.semver,i)&&this.operator.startsWith("<")&&t.operator.startsWith(">")))}};pn.exports=Ir;var sn=jt(),{safeRe:an,t:cn}=Dt(),wr=nn(),Sr=Et(),ln=et(),fn=bt()});var bt=te((ac,gn)=>{"use strict";var Xs=/\s+/g,Cr=class o{constructor(t,i){if(i=Bs(i),t instanceof o)return t.loose===!!i.loose&&t.includePrerelease===!!i.includePrerelease?t:new o(t.raw,i);if(t instanceof kr)return this.raw=t.value,this.set=[[t]],this.formatted=void 0,this;if(this.options=i,this.loose=!!i.loose,this.includePrerelease=!!i.includePrerelease,this.raw=t.trim().replace(Xs," "),this.set=this.raw.split("||").map(s=>this.parseRange(s.trim())).filter(s=>s.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let s=this.set[0];if(this.set=this.set.filter(c=>!dn(c[0])),this.set.length===0)this.set=[s];else if(this.set.length>1){for(let c of this.set)if(c.length===1&&ea(c[0])){this.set=[c];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let t=0;t<this.set.length;t++){t>0&&(this.formatted+="||");let i=this.set[t];for(let s=0;s<i.length;s++)s>0&&(this.formatted+=" "),this.formatted+=i[s].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(t){let s=((this.options.includePrerelease&&Zs)|(this.options.loose&&Qs))+":"+t,c=un.get(s);if(c)return c;let m=this.options.loose,R=m?he[pe.HYPHENRANGELOOSE]:he[pe.HYPHENRANGE];t=t.replace(R,fa(this.options.includePrerelease)),Z("hyphen replace",t),t=t.replace(he[pe.COMPARATORTRIM],Js),Z("comparator trim",t),t=t.replace(he[pe.TILDETRIM],zs),Z("tilde trim",t),t=t.replace(he[pe.CARETTRIM],Ks),Z("caret trim",t);let d=t.split(" ").map(x=>ta(x,this.options)).join(" ").split(/\s+/).map(x=>la(x,this.options));m&&(d=d.filter(x=>(Z("loose invalid filter",x,this.options),!!x.match(he[pe.COMPARATORLOOSE])))),Z("range list",d);let u=new Map,$=d.map(x=>new kr(x,this.options));for(let x of $){if(dn(x))return[x];u.set(x.value,x)}u.size>1&&u.has("")&&u.delete("");let v=[...u.values()];return un.set(s,v),v}intersects(t,i){if(!(t instanceof o))throw new TypeError("a Range is required");return this.set.some(s=>hn(s,i)&&t.set.some(c=>hn(c,i)&&s.every(m=>c.every(R=>m.intersects(R,i)))))}test(t){if(!t)return!1;if(typeof t=="string")try{t=new Ys(t,this.options)}catch{return!1}for(let i=0;i<this.set.length;i++)if(pa(this.set[i],t,this.options))return!0;return!1}};gn.exports=Cr;var Ws=Ho(),un=new Ws,Bs=jt(),kr=mn(),Z=Et(),Ys=et(),{safeRe:he,t:pe,comparatorTrimReplace:Js,tildeTrimReplace:zs,caretTrimReplace:Ks}=Dt(),{FLAG_INCLUDE_PRERELEASE:Zs,FLAG_LOOSE:Qs}=_t(),dn=o=>o.value==="<0.0.0-0",ea=o=>o.value==="",hn=(o,t)=>{let i=!0,s=o.slice(),c=s.pop();for(;i&&s.length;)i=s.every(m=>c.intersects(m,t)),c=s.pop();return i},ta=(o,t)=>(o=o.replace(he[pe.BUILD],""),Z("comp",o,t),o=na(o,t),Z("caret",o),o=ra(o,t),Z("tildes",o),o=sa(o,t),Z("xrange",o),o=ca(o,t),Z("stars",o),o),ge=o=>!o||o.toLowerCase()==="x"||o==="*",ra=(o,t)=>o.trim().split(/\s+/).map(i=>oa(i,t)).join(" "),oa=(o,t)=>{let i=t.loose?he[pe.TILDELOOSE]:he[pe.TILDE];return o.replace(i,(s,c,m,R,d)=>{Z("tilde",o,s,c,m,R,d);let u;return ge(c)?u="":ge(m)?u=`>=${c}.0.0 <${+c+1}.0.0-0`:ge(R)?u=`>=${c}.${m}.0 <${c}.${+m+1}.0-0`:d?(Z("replaceTilde pr",d),u=`>=${c}.${m}.${R}-${d} <${c}.${+m+1}.0-0`):u=`>=${c}.${m}.${R} <${c}.${+m+1}.0-0`,Z("tilde return",u),u})},na=(o,t)=>o.trim().split(/\s+/).map(i=>ia(i,t)).join(" "),ia=(o,t)=>{Z("caret",o,t);let i=t.loose?he[pe.CARETLOOSE]:he[pe.CARET],s=t.includePrerelease?"-0":"";return o.replace(i,(c,m,R,d,u)=>{Z("caret",o,c,m,R,d,u);let $;return ge(m)?$="":ge(R)?$=`>=${m}.0.0${s} <${+m+1}.0.0-0`:ge(d)?m==="0"?$=`>=${m}.${R}.0${s} <${m}.${+R+1}.0-0`:$=`>=${m}.${R}.0${s} <${+m+1}.0.0-0`:u?(Z("replaceCaret pr",u),m==="0"?R==="0"?$=`>=${m}.${R}.${d}-${u} <${m}.${R}.${+d+1}-0`:$=`>=${m}.${R}.${d}-${u} <${m}.${+R+1}.0-0`:$=`>=${m}.${R}.${d}-${u} <${+m+1}.0.0-0`):(Z("no pr"),m==="0"?R==="0"?$=`>=${m}.${R}.${d}${s} <${m}.${R}.${+d+1}-0`:$=`>=${m}.${R}.${d}${s} <${m}.${+R+1}.0-0`:$=`>=${m}.${R}.${d} <${+m+1}.0.0-0`),Z("caret return",$),$})},sa=(o,t)=>(Z("replaceXRanges",o,t),o.split(/\s+/).map(i=>aa(i,t)).join(" ")),aa=(o,t)=>{o=o.trim();let i=t.loose?he[pe.XRANGELOOSE]:he[pe.XRANGE];return o.replace(i,(s,c,m,R,d,u)=>{Z("xRange",o,s,c,m,R,d,u);let $=ge(m),v=$||ge(R),x=v||ge(d),X=x;return c==="="&&X&&(c=""),u=t.includePrerelease?"-0":"",$?c===">"||c==="<"?s="<0.0.0-0":s="*":c&&X?(v&&(R=0),d=0,c===">"?(c=">=",v?(m=+m+1,R=0,d=0):(R=+R+1,d=0)):c==="<="&&(c="<",v?m=+m+1:R=+R+1),c==="<"&&(u="-0"),s=`${c+m}.${R}.${d}${u}`):v?s=`>=${m}.0.0${u} <${+m+1}.0.0-0`:x&&(s=`>=${m}.${R}.0${u} <${m}.${+R+1}.0-0`),Z("xRange return",s),s})},ca=(o,t)=>(Z("replaceStars",o,t),o.trim().replace(he[pe.STAR],"")),la=(o,t)=>(Z("replaceGTE0",o,t),o.trim().replace(he[t.includePrerelease?pe.GTE0PRE:pe.GTE0],"")),fa=o=>(t,i,s,c,m,R,d,u,$,v,x,X)=>(ge(s)?i="":ge(c)?i=`>=${s}.0.0${o?"-0":""}`:ge(m)?i=`>=${s}.${c}.0${o?"-0":""}`:R?i=`>=${i}`:i=`>=${i}${o?"-0":""}`,ge($)?u="":ge(v)?u=`<${+$+1}.0.0-0`:ge(x)?u=`<${$}.${+v+1}.0-0`:X?u=`<=${$}.${v}.${x}-${X}`:o?u=`<${$}.${v}.${+x+1}-0`:u=`<=${u}`,`${i} ${u}`.trim()),pa=(o,t,i)=>{for(let s=0;s<o.length;s++)if(!o[s].test(t))return!1;if(t.prerelease.length&&!i.includePrerelease){for(let s=0;s<o.length;s++)if(Z(o[s].semver),o[s].semver!==kr.ANY&&o[s].semver.prerelease.length>0){let c=o[s].semver;if(c.major===t.major&&c.minor===t.minor&&c.patch===t.patch)return!0}return!1}return!0}});var yn=te((cc,En)=>{"use strict";var ma=bt(),ua=(o,t,i)=>{try{t=new ma(t,i)}catch{return!1}return t.test(o)};En.exports=ua});var $n=te((lc,Rn)=>{"use strict";var Lr=et(),da=bt(),bn=vr(),ha=(o,t)=>{o=new da(o,t);let i=new Lr("0.0.0");if(o.test(i)||(i=new Lr("0.0.0-0"),o.test(i)))return i;i=null;for(let s=0;s<o.set.length;++s){let c=o.set[s],m=null;c.forEach(R=>{let d=new Lr(R.semver.version);switch(R.operator){case">":d.prerelease.length===0?d.patch++:d.prerelease.push(0),d.raw=d.format();case"":case">=":(!m||bn(d,m))&&(m=d);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${R.operator}`)}}),m&&(!i||bn(i,m))&&(i=m)}return i&&o.test(i)?i:null};Rn.exports=ha});var wn=te((fc,vn)=>{"use strict";var ga=bt(),Ea=(o,t)=>{try{return new ga(o,t).range||"*"}catch{return null}};vn.exports=Ea});(function(){let o=typeof globalThis<"u"?globalThis:self,t,i=n=>t(new URL(n,Re).href),s=(n,f)=>{let h=K,g=N,y=H,b,I=(P,_,U)=>{b||(b=U);let j=E(_),L=E(b(P,j)),ne=be(L),Q=ne.p;return Q.includes(j)||Q.push(j),r(L,ne)},S=(P,_,U,j,L)=>{let ne=be(P);ne.e=typeof j=="string"?j:!0,ne.t=L},M=(P,_)=>P.hot=new k(_),k=class{constructor(_){this.data=be(this.url=E(_)).d}accept(_,U){typeof _=="function"&&(U=_,_=null);let j=be(this.url);j.A&&(j.a=j.a||[]).push([typeof _=="string"?b(_,this.url):_?_.map(L=>b(L,this.url)):null,U])}dispose(_){be(this.url).u=_}invalidate(){let _=be(this.url);_.a=_.A=null;let U=[this.url];_.p.forEach(j=>t(j,this.url,U))}},A=/\?v=\d+$/,E=P=>{let _=P.match(A);return _?P.slice(0,-_[0].length):P},r=(P,_)=>{let{v:U}=_;return P+(U?"?v="+U:"")},se={},de=new Set,ae,be=P=>se[P]||(se[P]={v:0,a:null,A:!0,u:null,e:!1,d:{},p:[],t:void 0});t=(P,_,U=[])=>{let j=se[P];return!j||U.includes(P)?!1:(U.push(P),j.A=!1,_&&j.a&&j.a.some(([L])=>L&&(typeof L=="string"?L===_:L.includes(_)))?de.add(_):((j.e||j.a)&&de.add(P),j.v++,j.a||j.p.forEach(L=>t(L,P,U))),ae||(ae=setTimeout(Le,Be)),!0)};let Le=()=>{ae=null;let P=new Set;for(let _ of de){let U=se[_];n(r(_,U),Re,fe,typeof U.e=="string"?U.e:void 0,!1,void 0,U.t).then(j=>{U.a&&(U.a.forEach(([L,ne])=>L===null&&!P.has(ne)&&ne(j)),U.u&&(U.u(U.d),U.u=null)),U.p.forEach(L=>{let ne=se[L];ne&&ne.a&&ne.a.forEach(async([Q,He])=>Q&&!P.has(He)&&(typeof Q=="string"?Q===_&&He(j):He(await Promise.all(Q.map(Nt=>(P.push(He),f(r(Nt,be(Nt)))))))))})},rt)}de=new Set};ti(h?R(h,S):S,g?(P,_,U)=>I(P,_,(j,L)=>g(j,L,U)):I,y?R(y,M):M)},c=typeof document<"u",m=()=>{},R=(n,f)=>function(){n.apply(this,arguments),f.apply(this,arguments)},d=(n,f)=>import(n),u=(n,f,h)=>Object.defineProperty(n,f,{writable:!1,configurable:!1,value:h}),$=c?document.querySelector("script[type=esms-options]"):void 0,v=$?JSON.parse($.innerHTML):{};Object.assign(v,o.esmsInitOptions||{});let x="2.8.0",X=v.version;if(o.importShim||X&&X!==x)return;let G=v.shimMode||(c?document.querySelectorAll("script[type=module-shim],script[type=importmap-shim],link[rel=modulepreload-shim]").length>0:!0),K,N,D=fetch,F,H,re=v.tsTransform||c&&document.currentScript&&document.currentScript.src.replace(/(\.\w+)?\.js$/,"-typescript.js")||"./es-module-shims-typescript.js",fe={credentials:"same-origin"},me=n=>typeof n=="string"?o[n]:n;v.onimport&&(K=me(v.onimport)),v.resolve&&(N=me(v.resolve)),v.fetch&&(D=me(v.fetch)),v.source&&(F=me(v.source)),v.meta&&(H=me(v.meta));let ue=K||N||D!==fetch||F||H,{noLoadEventRetriggers:We,enforceIntegrity:Rt,hotReload:Fe,hotReloadInterval:Be=100,nativePassthrough:tt=!ue&&!Fe}=v,ti=(n,f,h)=>(K=n,N=f,H=h),Or=v.mapOverrides,xe=v.nonce;if(!xe&&c){let n=document.querySelector("script[nonce]");n&&(xe=n.nonce||n.getAttribute("nonce"))}let ri=me(v.onerror||console.error.bind(console)),Ye=Array.isArray(v.polyfillEnable)?v.polyfillEnable:[],Tr=Array.isArray(v.polyfillDisable)?v.polyfillDisable:[],Bt=v.polyfillEnable==="all"||Ye.includes("all"),Yt=Ye.includes("wasm-modules")||Ye.includes("wasm-module-instances")||Bt,Pe=Ye.includes("wasm-modules")||Ye.includes("wasm-module-sources")||Bt,Jt=Ye.includes("import-defer")||Bt,Nr=!Tr.includes("css-modules"),xr=!Tr.includes("json-modules"),Ar=v.onpolyfill?me(v.onpolyfill):()=>{console.log("%c^^ Module error above is polyfilled and can be ignored ^^","font-weight:900;color:#391")},Re=c?document.baseURI:typeof location<"u"?`${location.protocol}//${location.host}${location.pathname.includes("/")?location.pathname.slice(0,location.pathname.lastIndexOf("/")+1):location.pathname}`:"about:blank",$e=(n,f="text/javascript")=>URL.createObjectURL(new Blob([n],{type:f})),{skip:Ce}=v;if(Array.isArray(Ce)){let n=Ce.map(f=>new URL(f,Re).href);Ce=f=>n.some(h=>h[h.length-1]==="/"&&f.startsWith(h)||f===h)}else if(typeof Ce=="string"){let n=new RegExp(Ce);Ce=f=>n.test(f)}else Ce instanceof RegExp&&(Ce=n=>Ce.test(n));let oi=n=>o.dispatchEvent(Object.assign(new Event("error"),{error:n})),rt=n=>{(o.reportError||oi)(n),ri(n)},ot=n=>n?` imported from ${n}`:"",ni=/\\/g,Fr=n=>{try{if(n.indexOf(":")!==-1)return new URL(n).href}catch{}},Pr=(n,f)=>Ge(n,f)||Fr(n)||Ge("./"+n,f),Ge=(n,f)=>{let h=f.indexOf("#"),g=f.indexOf("?");if(h+g>-2&&(f=f.slice(0,h===-1?g:g===-1||g>h?h:g)),n.indexOf("\\")!==-1&&(n=n.replace(ni,"/")),n[0]==="/"&&n[1]==="/")return f.slice(0,f.indexOf(":")+1)+n;if(n[0]==="."&&(n[1]==="/"||n[1]==="."&&(n[2]==="/"||n.length===2&&(n+="/"))||n.length===1&&(n+="/"))||n[0]==="/"){let y=f.slice(0,f.indexOf(":")+1);if(y==="blob:")throw new TypeError(`Failed to resolve module specifier "${n}". Invalid relative url or base scheme isn't hierarchical.`);let b;if(f[y.length+1]==="/"?y!=="file:"?(b=f.slice(y.length+2),b=b.slice(b.indexOf("/")+1)):b=f.slice(8):b=f.slice(y.length+(f[y.length]==="/")),n[0]==="/")return f.slice(0,f.length-b.length-1)+n;let I=b.slice(0,b.lastIndexOf("/")+1)+n,S=[],M=-1;for(let k=0;k<I.length;k++){if(M!==-1){I[k]==="/"&&(S.push(I.slice(M,k+1)),M=-1);continue}else if(I[k]==="."){if(I[k+1]==="."&&(I[k+2]==="/"||k+2===I.length)){S.pop(),k+=2;continue}else if(I[k+1]==="/"||k+1===I.length){k+=1;continue}}for(;I[k]==="/";)k++;M=k}return M!==-1&&S.push(I.slice(M)),f.slice(0,f.length-b.length)+S.join("")}},Mr=(n,f,h)=>{let g={imports:{...h.imports},scopes:{...h.scopes},integrity:{...h.integrity}};if(n.imports&&Dr(n.imports,g.imports,f,h),n.scopes)for(let y in n.scopes){let b=Pr(y,f);Dr(n.scopes[y],g.scopes[b]||(g.scopes[b]={}),f,h)}return n.integrity&&ii(n.integrity,g.integrity,f),g},zt=(n,f)=>{if(f[n])return n;let h=n.length;do{let g=n.slice(0,h+1);if(g in f)return g}while((h=n.lastIndexOf("/",h-1))!==-1)},_r=(n,f)=>{let h=zt(n,f);if(h){let g=f[h];return g===null?void 0:g+n.slice(h.length)}},$t=(n,f,h)=>{let g=h&&zt(h,n.scopes);for(;g;){let y=_r(f,n.scopes[g]);if(y)return y;g=zt(g.slice(0,g.lastIndexOf("/")),n.scopes)}return _r(f,n.imports)||f.indexOf(":")!==-1&&f},Dr=(n,f,h,g)=>{for(let y in n){let b=Ge(y,h)||y;if((!G||!Or)&&f[b]&&f[b]!==n[b]){console.warn(`es-module-shims: Rejected map override "${b}" from ${f[b]} to ${n[b]}.`);continue}let I=n[y];if(typeof I!="string")continue;let S=$t(g,Ge(I,h)||I,h);if(S){f[b]=S;continue}console.warn(`es-module-shims: Mapping "${y}" -> "${n[y]}" does not resolve`)}},ii=(n,f,h)=>{for(let g in n){let y=Ge(g,h)||g;(!G||!Or)&&f[y]&&f[y]!==n[y]&&console.warn(`es-module-shims: Rejected map integrity override "${y}" from ${f[y]} to ${n[y]}.`),f[y]=n[g]}},Me;if(typeof window.trustedTypes<"u"||typeof window.TrustedTypes<"u")try{Me=(window.trustedTypes||window.TrustedTypes).createPolicy("es-module-shims",{createHTML:n=>n,createScript:n=>n})}catch{}function si(n){return Me?Me.createHTML(n):n}function jr(n){return Me?Me.createScript(n):n}let Je=!1,ze=!1,Kt=c&&HTMLScriptElement.supports,Oe=Kt&&Kt.name==="supports"&&Kt("importmap"),vt=!1,nt=!1,wt=!1,St=[0,97,115,109,1,0,0,0],ai=(async function(){if(!c)return Promise.all([import($e(`import"${$e("{}","text/json")}"with{type:"json"}`)).then(()=>(Je=!0,import($e(`import"${$e("","text/css")}"with{type:"css"}`)).then(()=>ze=!0,m)),m),Yt&&import($e(`import"${$e(new Uint8Array(St),"application/wasm")}"`)).then(()=>vt=!0,m),Pe&&import($e(`import source x from"${$e(new Uint8Array(St),"application/wasm")}"`)).then(()=>nt=!0,m)]);let n=`s${x}`;return new Promise(f=>{let h=document.createElement("iframe");h.style.display="none",h.setAttribute("nonce",xe);function g({data:M}){Array.isArray(M)&&M[0]===n&&([,Oe,wt,Je,ze,nt,vt]=M,f(),document.head.removeChild(h),window.removeEventListener("message",g,!1))}window.addEventListener("message",g,!1);let y=`<script nonce=${xe||""}>${Me?'t=(window.trustedTypes||window.TrustedTypes).createPolicy("es-module-shims",{createScript:s=>s});':""}b=(s,type='text/javascript')=>URL.createObjectURL(new Blob([s],{type}));c=u=>import(u).then(()=>true,()=>false);i=innerText=>${Me?"t.createScript(innerText=>":""}document.head.appendChild(Object.assign(document.createElement('script'),{type:'importmap',nonce:"${xe}",innerText}))${Me?")":""};i(\`{"imports":{"x":"\${b('')}"}}\`);i(\`{"imports":{"y":"\${b('')}"}}\`);cm=${Oe&&xr?`c(b(\`import"\${b('{}','text/json')}"with{type:"json"}\`))`:"false"};sp=${Oe&&Pe?`c(b(\`import source x from "\${b(new Uint8Array(${JSON.stringify(St)}),'application/wasm')}"\`))`:"false"};Promise.all([${Oe?"true":"c('x')"},${Oe?"c('y')":!1},cm,${Oe&&Nr?`cm.then(s=>s?c(b(\`import"\${b('','text/css')}"with{type:"css"}\`)):false)`:"false"},sp,${Oe&&Yt?`${Pe?"sp.then(s=>s?":""}c(b(\`import"\${b(new Uint8Array(${JSON.stringify(St)}),'application/wasm')}"\`))${Pe?":false)":""}`:"false"}]).then(a=>parent.postMessage(['${n}'].concat(a),'*'))<\/script>`,b=!1,I=!1;function S(){if(!b){I=!0;return}let M=h.contentDocument;if(M&&M.head.childNodes.length===0){let k=M.createElement("script");xe&&k.setAttribute("nonce",xe),k.innerText=jr(y.slice(15+(xe?xe.length:0),-9)),M.head.appendChild(k)}}h.onload=S,document.head.appendChild(h),b=!0,"srcdoc"in h?h.srcdoc=si(y):h.contentDocument.write(y),I&&S()})})(),B,It,Zt,it=2<<19,Vr=new Uint8Array(new Uint16Array([1]).buffer)[0]===1?function(n,f){let h=n.length,g=0;for(;g<h;)f[g]=n.charCodeAt(g++)}:function(n,f){let h=n.length,g=0;for(;g<h;){let y=n.charCodeAt(g);f[g++]=(255&y)<<8|y>>>8}},ci="xportmportlassforetaourceeferromsyncunctionvoyiedelecontininstantybreareturdebuggeawaithrwhileifcatcfinallels",oe,Gr,Y;function li(n,f="@"){oe=n,Gr=f;let h=2*oe.length+(2<<18);if(h>it||!B){for(;h>it;)it*=2;It=new ArrayBuffer(it),Vr(ci,new Uint16Array(It,16,109)),B=(function(S,M,k){var A=new S.Int8Array(k),E=new S.Int16Array(k),r=new S.Int32Array(k),se=new S.Uint8Array(k),de=new S.Uint16Array(k),ae=1040;function be(){var e=0,a=0,p=0,l=0,w=0,C=0,W=0;W=ae,ae=ae+10240|0,A[808]=1,A[807]=0,E[401]=0,E[402]=0,r[70]=r[2],A[809]=0,r[68]=0,A[806]=0,r[71]=W+2048,r[72]=W,A[810]=0,e=(r[3]|0)+-2|0,r[73]=e,a=e+(r[66]<<1)|0,r[74]=a;e:for(;;){if(p=e+2|0,r[73]=p,e>>>0>=a>>>0){l=18;break}t:do switch(E[p>>1]|0){case 9:case 10:case 11:case 12:case 13:case 32:break;case 101:{if((E[402]|0)==0&&dt(p)|0&&(ce(e+4|0,16,10)|0)==0&&(Le(),(A[808]|0)==0)){l=9;break e}else l=17;break}case 105:{dt(p)|0&&(ce(e+4|0,26,10)|0)==0&&P(),l=17;break}case 59:{l=17;break}case 47:switch(E[e+4>>1]|0){case 47:{mr();break t}case 42:{pr(1);break t}default:{l=16;break e}}default:{l=16;break e}}while(!1);(l|0)==17&&(l=0,r[70]=r[73]),e=r[73]|0,a=r[74]|0}(l|0)==9?(e=r[73]|0,r[70]=e,l=19):(l|0)==16?(A[808]=0,r[73]=e,l=19):(l|0)==18&&(A[806]|0?e=0:(e=p,l=19));do if((l|0)==19){e:for(;;){if(a=e+2|0,r[73]=a,e>>>0>=(r[74]|0)>>>0){l=92;break}t:do switch(E[a>>1]|0){case 9:case 10:case 11:case 12:case 13:case 32:break;case 101:{(E[402]|0)==0&&dt(a)|0&&(ce(e+4|0,16,10)|0)==0&&Le(),l=91;break}case 105:{dt(a)|0&&(ce(e+4|0,26,10)|0)==0&&P(),l=91;break}case 99:{dt(a)|0&&(ce(e+4|0,36,8)|0)==0&&Ue(E[e+12>>1]|0)|0&&(A[810]=1),l=91;break}case 40:{p=r[71]|0,e=E[402]|0,l=e&65535,r[p+(l<<3)>>2]=1,a=r[70]|0,E[402]=e+1<<16>>16,r[p+(l<<3)+4>>2]=a,l=91;break}case 41:{if(a=E[402]|0,!(a<<16>>16)){l=36;break e}p=a+-1<<16>>16,E[402]=p,l=E[401]|0,a=l&65535,l<<16>>16!=0&&(r[(r[71]|0)+((p&65535)<<3)>>2]|0)==5&&(a=r[(r[72]|0)+(a+-1<<2)>>2]|0,p=a+4|0,r[p>>2]|0||(r[p>>2]=(r[70]|0)+2),r[a+12>>2]=e+4,E[401]=l+-1<<16>>16),l=91;break}case 123:{l=r[70]|0,p=r[63]|0,e=l;do if((E[l>>1]|0)==41&(p|0)!=0&&(r[p+4>>2]|0)==(l|0))if(a=r[64]|0,r[63]=a,a){r[a+36>>2]=0;break}else{r[59]=0;break}while(!1);p=r[71]|0,a=E[402]|0,l=a&65535,r[p+(l<<3)>>2]=(A[810]|0)==0?2:6,E[402]=a+1<<16>>16,r[p+(l<<3)+4>>2]=e,A[810]=0,l=91;break}case 125:{if(e=E[402]|0,!(e<<16>>16)){l=49;break e}p=r[71]|0,l=e+-1<<16>>16,E[402]=l,(r[p+((l&65535)<<3)>>2]|0)==4&&j(),l=91;break}case 39:{Q(39),l=91;break}case 34:{Q(34),l=91;break}case 47:switch(E[e+4>>1]|0){case 47:{mr();break t}case 42:{pr(1);break t}default:{e=r[70]|0,a=E[e>>1]|0;r:do if(!(Ri(a)|0))a<<16>>16==41?(p=E[402]|0,Si(r[(r[71]|0)+((p&65535)<<3)+4>>2]|0)|0||(l=65)):l=64;else switch(a<<16>>16){case 46:if(((E[e+-2>>1]|0)+-48&65535)<10){l=64;break r}else break r;case 43:if((E[e+-2>>1]|0)==43){l=64;break r}else break r;case 45:if((E[e+-2>>1]|0)==45){l=64;break r}else break r;default:break r}while(!1);(l|0)==64&&(p=E[402]|0,l=65);r:do if((l|0)==65){if(l=0,p<<16>>16!=0&&(w=r[71]|0,C=(p&65535)+-1|0,a<<16>>16==102?(r[w+(C<<3)>>2]|0)==1:0)){if((E[e+-2>>1]|0)==111&&ie(r[w+(C<<3)+4>>2]|0,44,3)|0)break}else l=69;if((l|0)==69&&a<<16>>16==125&&(l=r[71]|0,p=p&65535,bi(r[l+(p<<3)+4>>2]|0)|0||(r[l+(p<<3)>>2]|0)==6))break;if(!(U(e)|0)){switch(a<<16>>16){case 0:break r;case 47:{if(A[809]|0)break r;break}default:}if(l=r[65]|0,l|0&&e>>>0>=(r[l>>2]|0)>>>0&&e>>>0<=(r[l+4>>2]|0)>>>0){fr(),A[809]=0,l=91;break t}p=r[3]|0;do{if(e>>>0<=p>>>0)break;e=e+-2|0,r[70]=e,a=E[e>>1]|0}while(!(At(a)|0));if(Ft(a)|0){do{if(e>>>0<=p>>>0)break;e=e+-2|0,r[70]=e}while(Ft(E[e>>1]|0)|0);if(vi(e)|0){fr(),A[809]=0,l=91;break t}}A[809]=1,l=91;break t}}while(!1);fr(),A[809]=0,l=91;break t}}case 96:{p=r[71]|0,a=E[402]|0,l=a&65535,r[p+(l<<3)+4>>2]=r[70],E[402]=a+1<<16>>16,r[p+(l<<3)>>2]=3,j(),l=91;break}default:l=91}while(!1);(l|0)==91&&(l=0,r[70]=r[73]),e=r[73]|0}if((l|0)==36){we(),e=0;break}else if((l|0)==49){we(),e=0;break}else if((l|0)==92){e=(A[806]|0)==0?(E[401]|E[402])<<16>>16==0:0;break}}while(!1);return ae=W,e|0}function Le(){var e=0,a=0,p=0,l=0,w=0,C=0,W=0,Se=0,ur=0,dr=0,hr=0,gr=0,z=0,ee=0;Se=r[73]|0,ur=r[65]|0,ee=Se+12|0,r[73]=ee,p=L(1)|0,e=r[73]|0,(e|0)==(ee|0)&&!(xt(p)|0)||(z=3);e:do if((z|0)==3){t:do switch(p<<16>>16){case 123:{for(r[73]=e+2,e=L(1)|0,a=r[73]|0;;){if(ht(e)|0?(Q(e),e=(r[73]|0)+2|0,r[73]=e):(Ae(e)|0,e=r[73]|0),L(1)|0,e=He(a,e)|0,e<<16>>16==44&&(r[73]=(r[73]|0)+2,e=L(1)|0),e<<16>>16==125){z=15;break}if(ee=a,a=r[73]|0,(a|0)==(ee|0)){z=12;break}if(a>>>0>(r[74]|0)>>>0){z=14;break}}if((z|0)==12){we();break e}else if((z|0)==14){we();break e}else if((z|0)==15){A[807]=1,r[73]=(r[73]|0)+2;break t}break}case 42:{r[73]=e+2,L(1)|0,ee=r[73]|0,He(ee,ee)|0;break}default:{switch(A[808]=0,p<<16>>16){case 100:{switch(Se=e+14|0,r[73]=Se,(L(1)|0)<<16>>16){case 97:{a=r[73]|0,(ce(a+2|0,80,8)|0)==0&&(w=a+10|0,Ft(E[w>>1]|0)|0)&&(r[73]=w,L(0)|0,z=22);break}case 102:{z=22;break}case 99:{a=r[73]|0,(ce(a+2|0,36,8)|0)==0&&(l=a+10|0,ee=E[l>>1]|0,Ue(ee)|0|ee<<16>>16==123)&&(r[73]=l,C=L(1)|0,C<<16>>16!=123)&&(gr=C,z=31);break}default:}r:do if((z|0)==22&&(W=r[73]|0,(ce(W+2|0,88,14)|0)==0)){if(p=W+16|0,a=E[p>>1]|0,!(Ue(a)|0))switch(a<<16>>16){case 40:case 42:break;default:break r}r[73]=p,a=L(1)|0,a<<16>>16==42&&(r[73]=(r[73]|0)+2,a=L(1)|0),a<<16>>16!=40&&(gr=a,z=31)}while(!1);if((z|0)==31&&(dr=r[73]|0,Ae(gr)|0,hr=r[73]|0,hr>>>0>dr>>>0)){Qe(e,Se,dr,hr),r[73]=(r[73]|0)+-2;break e}Qe(e,Se,0,0),r[73]=e+12;break e}case 97:{r[73]=e+10,L(0)|0,e=r[73]|0,z=35;break}case 102:{z=35;break}case 99:{if((ce(e+2|0,36,8)|0)==0&&(a=e+10|0,At(E[a>>1]|0)|0)){r[73]=a,ee=L(1)|0,z=r[73]|0,Ae(ee)|0,ee=r[73]|0,Qe(z,ee,z,ee),r[73]=(r[73]|0)+-2;break e}e=e+4|0,r[73]=e;break}case 108:case 118:break;default:break e}if((z|0)==35){r[73]=e+16,e=L(1)|0,e<<16>>16==42&&(r[73]=(r[73]|0)+2,e=L(1)|0),z=r[73]|0,Ae(e)|0,ee=r[73]|0,Qe(z,ee,z,ee),r[73]=(r[73]|0)+-2;break e}r[73]=e+6,A[808]=0,p=L(1)|0,e=r[73]|0,p=(Ae(p)|0|32)<<16>>16==123,l=r[73]|0,p&&(r[73]=l+2,ee=L(1)|0,e=r[73]|0,Ae(ee)|0);r:for(;a=r[73]|0,(a|0)!=(e|0);){if(Qe(e,a,e,a),a=L(1)|0,p)switch(a<<16>>16){case 93:case 125:break e;default:}if(e=r[73]|0,a<<16>>16!=44){z=51;break}switch(r[73]=e+2,a=L(1)|0,e=r[73]|0,a<<16>>16){case 91:case 123:{z=51;break r}default:}Ae(a)|0}if((z|0)==51&&(r[73]=e+-2),!p)break e;r[73]=l+-2;break e}}while(!1);if(ee=(L(1)|0)<<16>>16==102,e=r[73]|0,ee&&(ce(e+2|0,74,6)|0)==0)for(r[73]=e+8,_(Se,L(1)|0,0),e=(ur|0)==0?240:ur+16|0;;){if(e=r[e>>2]|0,!e)break e;r[e+12>>2]=0,r[e+8>>2]=0,e=e+16|0}r[73]=e+-2}while(!1)}function P(){var e=0,a=0,p=0,l=0,w=0,C=0,W=0;W=r[73]|0,w=W+12|0,r[73]=w,e=L(1)|0,l=r[73]|0;e:do if(e<<16>>16!=46){if(!(e<<16>>16==115&l>>>0>w>>>0)){if(!(e<<16>>16==100&l>>>0>(W+10|0)>>>0)){l=0,C=28;break}if(ce(l+2|0,66,8)|0){a=l,e=100,l=0,C=59;break}if(e=l+10|0,!(Ue(E[e>>1]|0)|0)){a=l,e=100,l=0,C=59;break}if(r[73]=e,e=L(1)|0,e<<16>>16==42){e=42,l=2,C=61;break}r[73]=l,l=0,C=28;break}if((ce(l+2|0,56,10)|0)==0&&(p=l+12|0,Ue(E[p>>1]|0)|0)){if(r[73]=p,e=L(1)|0,a=r[73]|0,(a|0)!=(p|0)){if(e<<16>>16!=102){l=1,C=28;break}if(ce(a+2|0,74,6)|0){e=102,l=1,C=59;break}if(!(At(E[a+8>>1]|0)|0)){e=102,l=1,C=59;break}}r[73]=l,l=0,C=28}else a=l,e=115,l=0,C=59}else switch(r[73]=l+2,(L(1)|0)<<16>>16){case 109:{if(e=r[73]|0,ce(e+2|0,50,6)|0||(a=r[70]|0,!(Pt(a)|0)&&(E[a>>1]|0)==46))break e;ne(W,W,e+8|0,2);break e}case 115:{if(e=r[73]|0,ce(e+2|0,56,10)|0||(a=r[70]|0,!(Pt(a)|0)&&(E[a>>1]|0)==46))break e;r[73]=e+12,e=L(1)|0,l=1,C=28;break e}case 100:{if(e=r[73]|0,ce(e+2|0,66,8)|0||(a=r[70]|0,!(Pt(a)|0)&&(E[a>>1]|0)==46))break e;r[73]=e+10,e=L(1)|0,l=2,C=28;break e}default:break e}while(!1);e:do if((C|0)==28){if(e<<16>>16==40){if(p=r[71]|0,a=E[402]|0,w=a&65535,r[p+(w<<3)>>2]=5,e=r[73]|0,E[402]=a+1<<16>>16,r[p+(w<<3)+4>>2]=e,(E[r[70]>>1]|0)==46)break;switch(r[73]=e+2,a=L(1)|0,ne(W,r[73]|0,0,e),l?(e=r[63]|0,r[e+28>>2]=(l|0)==1?5:7):e=r[63]|0,w=r[72]|0,W=E[401]|0,E[401]=W+1<<16>>16,r[w+((W&65535)<<2)>>2]=e,a<<16>>16){case 39:{Q(39);break}case 34:{Q(34);break}default:{r[73]=(r[73]|0)+-2;break e}}switch(e=(r[73]|0)+2|0,r[73]=e,(L(1)|0)<<16>>16){case 44:{r[73]=(r[73]|0)+2,L(1)|0,w=r[63]|0,r[w+4>>2]=e,W=r[73]|0,r[w+16>>2]=W,A[w+24>>0]=1,r[73]=W+-2;break e}case 41:{E[402]=(E[402]|0)+-1<<16>>16,W=r[63]|0,r[W+4>>2]=e,r[W+12>>2]=(r[73]|0)+2,A[W+24>>0]=1,E[401]=(E[401]|0)+-1<<16>>16;break e}default:{r[73]=(r[73]|0)+-2;break e}}}if(!((l|0)==0&e<<16>>16==123)){switch(e<<16>>16){case 42:case 39:case 34:{C=61;break e}default:}a=r[73]|0,C=59;break}if(e=r[73]|0,E[402]|0){r[73]=e+-2;break}for(;!(e>>>0>=(r[74]|0)>>>0);){if(e=L(1)|0,ht(e)|0)Q(e);else if(e<<16>>16==125){C=49;break}e=(r[73]|0)+2|0,r[73]=e}if((C|0)==49&&(r[73]=(r[73]|0)+2),w=(L(1)|0)<<16>>16==102,e=r[73]|0,w&&ce(e+2|0,74,6)|0){we();break}if(r[73]=e+8,e=L(1)|0,ht(e)|0){_(W,e,0);break}else{we();break}}while(!1);(C|0)==59&&((a|0)==(w|0)?r[73]=W+10:C=61);do if((C|0)==61){if(!((e<<16>>16==42|(l|0)!=2)&(E[402]|0)==0)){r[73]=(r[73]|0)+-2;break}for(e=r[74]|0,a=r[73]|0;;){if(a>>>0>=e>>>0){C=68;break}if(p=E[a>>1]|0,ht(p)|0){C=66;break}C=a+2|0,r[73]=C,a=C}if((C|0)==66){_(W,p,l);break}else if((C|0)==68){we();break}}while(!1)}function _(e,a,p){e=e|0,a=a|0,p=p|0;var l=0,w=0,C=0,W=0,Se=0;switch(l=(r[73]|0)+2|0,a<<16>>16){case 39:{Q(39),w=5;break}case 34:{Q(34),w=5;break}default:we()}do if((w|0)==5){if(ne(e,l,r[73]|0,1),(p|0)>0&&(r[(r[63]|0)+28>>2]=(p|0)==1?4:6),r[73]=(r[73]|0)+2,W=(L(0)|0)<<16>>16==119,C=r[73]|0,W&&(E[C+2>>1]|0)==105&&(E[C+4>>1]|0)==116&&(E[C+6>>1]|0)==104){if(r[73]=C+8,(L(1)|0)<<16>>16!=123){r[73]=C;break}W=r[73]|0,l=W,w=0;e:for(;;){r[73]=l+2,l=L(1)|0;do if(l<<16>>16!=39)if(a=r[73]|0,l<<16>>16==34){Q(34),e=(r[73]|0)+2|0,r[73]=e,l=L(1)|0;break}else{l=Ae(l)|0,e=r[73]|0;break}else a=r[73]|0,Q(39),e=(r[73]|0)+2|0,r[73]=e,l=L(1)|0;while(!1);if(l<<16>>16!=58){w=21;break}switch(r[73]=(r[73]|0)+2,(L(1)|0)<<16>>16){case 39:{l=r[73]|0,Q(39);break}case 34:{l=r[73]|0,Q(34);break}default:{w=25;break e}}switch(Se=(r[73]|0)+2|0,p=r[67]|0,r[67]=p+20,r[p>>2]=a,r[p+4>>2]=e,r[p+8>>2]=l,r[p+12>>2]=Se,r[p+16>>2]=0,r[((w|0)==0?(r[63]|0)+32|0:w+16|0)>>2]=p,r[73]=(r[73]|0)+2,(L(1)|0)<<16>>16){case 125:{w=29;break e}case 44:break;default:{w=27;break e}}l=(r[73]|0)+2|0,r[73]=l,w=p}if((w|0)==21){r[73]=C;break}else if((w|0)==25){r[73]=C;break}else if((w|0)==27){r[73]=C;break}else if((w|0)==29){Se=r[63]|0,r[Se+16>>2]=W,r[Se+12>>2]=(r[73]|0)+2;break}}r[73]=C+-2}while(!1)}function U(e){e=e|0;e:do switch(E[e>>1]|0){case 100:switch(E[e+-2>>1]|0){case 105:{e=ie(e+-4|0,102,2)|0;break e}case 108:{e=ie(e+-4|0,106,3)|0;break e}default:{e=0;break e}}case 101:switch(E[e+-2>>1]|0){case 115:switch(E[e+-4>>1]|0){case 108:{e=ut(e+-6|0,101)|0;break e}case 97:{e=ut(e+-6|0,99)|0;break e}default:{e=0;break e}}case 116:{e=ie(e+-4|0,112,4)|0;break e}case 117:{e=ie(e+-4|0,120,6)|0;break e}default:{e=0;break e}}case 102:{if((E[e+-2>>1]|0)==111&&(E[e+-4>>1]|0)==101)switch(E[e+-6>>1]|0){case 99:{e=ie(e+-8|0,132,6)|0;break e}case 112:{e=ie(e+-8|0,144,2)|0;break e}default:{e=0;break e}}else e=0;break}case 107:{e=ie(e+-2|0,148,4)|0;break}case 110:{e=e+-2|0,ut(e,105)|0?e=1:e=ie(e,156,5)|0;break}case 111:{e=ut(e+-2|0,100)|0;break}case 114:{e=ie(e+-2|0,166,7)|0;break}case 116:{e=ie(e+-2|0,180,4)|0;break}case 119:switch(E[e+-2>>1]|0){case 101:{e=ut(e+-4|0,110)|0;break e}case 111:{e=ie(e+-4|0,188,3)|0;break e}default:{e=0;break e}}default:e=0}while(!1);return e|0}function j(){var e=0,a=0,p=0,l=0;a=r[74]|0,p=r[73]|0;e:for(;;){if(e=p+2|0,p>>>0>=a>>>0){a=10;break}switch(E[e>>1]|0){case 96:{a=7;break e}case 36:{if((E[p+4>>1]|0)==123){a=6;break e}break}case 92:{e=p+4|0;break}default:}p=e}(a|0)==6?(e=p+4|0,r[73]=e,a=r[71]|0,l=E[402]|0,p=l&65535,r[a+(p<<3)>>2]=4,E[402]=l+1<<16>>16,r[a+(p<<3)+4>>2]=e):(a|0)==7?(r[73]=e,p=r[71]|0,l=(E[402]|0)+-1<<16>>16,E[402]=l,(r[p+((l&65535)<<3)>>2]|0)!=3&&we()):(a|0)==10&&(r[73]=e,we())}function L(e){e=e|0;var a=0,p=0,l=0;p=r[73]|0;e:do{a=E[p>>1]|0;t:do if(a<<16>>16!=47)if(e){if(Ue(a)|0)break;break e}else{if(Ft(a)|0)break;break e}else switch(E[p+2>>1]|0){case 47:{mr();break t}case 42:{pr(e);break t}default:{a=47;break e}}while(!1);l=r[73]|0,p=l+2|0,r[73]=p}while(l>>>0<(r[74]|0)>>>0);return a|0}function ne(e,a,p,l){e=e|0,a=a|0,p=p|0,l=l|0;var w=0,C=0;C=r[67]|0,r[67]=C+40,w=r[63]|0,r[((w|0)==0?236:w+36|0)>>2]=C,r[64]=w,r[63]=C,r[C+8>>2]=e,(l|0)==2?(e=3,w=p):(w=(l|0)==1,e=w?1:2,w=w?p+2|0:0),r[C+12>>2]=w,r[C+28>>2]=e,r[C>>2]=a,r[C+4>>2]=p,r[C+16>>2]=0,r[C+20>>2]=l,a=(l|0)==1,A[C+24>>0]=a&1,r[C+32>>2]=0,r[C+36>>2]=0,a|(l|0)==2&&(A[807]=1)}function Q(e){e=e|0;var a=0,p=0,l=0,w=0;for(w=r[74]|0,a=r[73]|0;;){if(l=a+2|0,a>>>0>=w>>>0){a=9;break}if(p=E[l>>1]|0,p<<16>>16==e<<16>>16){a=10;break}if(p<<16>>16==92)p=a+4|0,(E[p>>1]|0)==13?(a=a+6|0,a=(E[a>>1]|0)==10?a:p):a=p;else if(go(p)|0){a=9;break}else a=l}(a|0)==9?(r[73]=l,we()):(a|0)==10&&(r[73]=l)}function He(e,a){e=e|0,a=a|0;var p=0,l=0,w=0,C=0;return p=r[73]|0,l=E[p>>1]|0,C=(e|0)==(a|0),w=C?0:e,C=C?0:a,l<<16>>16==97&&(r[73]=p+4,p=L(1)|0,e=r[73]|0,ht(p)|0?(Q(p),a=(r[73]|0)+2|0,r[73]=a):(Ae(p)|0,a=r[73]|0),l=L(1)|0,p=r[73]|0),(p|0)!=(e|0)&&Qe(e,a,w,C),l|0}function Nt(){var e=0,a=0,p=0;p=r[74]|0,a=r[73]|0;e:for(;;){if(e=a+2|0,a>>>0>=p>>>0){a=6;break}switch(E[e>>1]|0){case 13:case 10:{a=6;break e}case 93:{a=7;break e}case 92:{e=a+4|0;break}default:}a=e}return(a|0)==6?(r[73]=e,we(),e=0):(a|0)==7&&(r[73]=e,e=93),e|0}function fr(){var e=0,a=0,p=0;e:for(;;){if(e=r[73]|0,a=e+2|0,r[73]=a,e>>>0>=(r[74]|0)>>>0){p=7;break}switch(E[a>>1]|0){case 13:case 10:{p=7;break e}case 47:break e;case 91:{Nt()|0;break}case 92:{r[73]=e+4;break}default:}}(p|0)==7&&we()}function bi(e){switch(e=e|0,E[e>>1]|0){case 62:{e=(E[e+-2>>1]|0)==61;break}case 41:case 59:{e=1;break}case 104:{e=ie(e+-2|0,208,4)|0;break}case 121:{e=ie(e+-2|0,216,6)|0;break}case 101:{e=ie(e+-2|0,228,3)|0;break}default:e=0}return e|0}function pr(e){e=e|0;var a=0,p=0,l=0,w=0,C=0;for(w=(r[73]|0)+2|0,r[73]=w,p=r[74]|0;a=w+2|0,!(w>>>0>=p>>>0||(l=E[a>>1]|0,!e&&go(l)|0));){if(l<<16>>16==42&&(E[w+4>>1]|0)==47){C=8;break}w=a}(C|0)==8&&(r[73]=a,a=w+4|0),r[73]=a}function ce(e,a,p){e=e|0,a=a|0,p=p|0;var l=0,w=0;e:do if(!p)e=0;else{for(;l=A[e>>0]|0,w=A[a>>0]|0,l<<24>>24==w<<24>>24;)if(p=p+-1|0,p)e=e+1|0,a=a+1|0;else{e=0;break e}e=(l&255)-(w&255)|0}while(!1);return e|0}function xt(e){e=e|0;e:do switch(e<<16>>16){case 38:case 37:case 33:{e=1;break}default:if((e&-8)<<16>>16==40|(e+-58&65535)<6)e=1;else{switch(e<<16>>16){case 91:case 93:case 94:{e=1;break e}default:}e=(e+-123&65535)<4}}while(!1);return e|0}function Ri(e){e=e|0;e:do switch(e<<16>>16){case 38:case 37:case 33:break;default:if(!((e+-58&65535)<6|(e+-40&65535)<7&e<<16>>16!=41)){switch(e<<16>>16){case 91:case 94:break e;default:}return e<<16>>16!=125&(e+-123&65535)<4|0}}while(!1);return 1}function ho(e){e=e|0;var a=0;a=E[e>>1]|0;e:do if((a+-9&65535)>=5){switch(a<<16>>16){case 160:case 32:{a=1;break e}default:}if(xt(a)|0)return a<<16>>16!=46|(Pt(e)|0)|0;a=0}else a=1;while(!1);return a|0}function $i(e){e=e|0;var a=0,p=0,l=0,w=0;return p=ae,ae=ae+16|0,l=p,r[l>>2]=0,r[66]=e,a=r[3]|0,w=a+(e<<1)|0,e=w+2|0,E[w>>1]=0,r[l>>2]=e,r[67]=e,r[59]=0,r[63]=0,r[61]=0,r[60]=0,r[65]=0,r[62]=0,ae=p,a|0}function Qe(e,a,p,l){e=e|0,a=a|0,p=p|0,l=l|0;var w=0,C=0;w=r[67]|0,r[67]=w+20,C=r[65]|0,r[((C|0)==0?240:C+16|0)>>2]=w,r[65]=w,r[w>>2]=e,r[w+4>>2]=a,r[w+8>>2]=p,r[w+12>>2]=l,r[w+16>>2]=0,A[807]=1}function ie(e,a,p){e=e|0,a=a|0,p=p|0;var l=0,w=0;return l=e+(0-p<<1)|0,w=l+2|0,e=r[3]|0,w>>>0>=e>>>0&&(ce(w,a,p<<1)|0)==0?(w|0)==(e|0)?e=1:e=ho(l)|0:e=0,e|0}function vi(e){switch(e=e|0,E[e>>1]|0){case 107:{e=ie(e+-2|0,148,4)|0;break}case 101:{(E[e+-2>>1]|0)==117?e=ie(e+-4|0,120,6)|0:e=0;break}default:e=0}return e|0}function ut(e,a){e=e|0,a=a|0;var p=0;return p=r[3]|0,p>>>0<=e>>>0&&(E[e>>1]|0)==a<<16>>16?(p|0)==(e|0)?p=1:p=At(E[e+-2>>1]|0)|0:p=0,p|0}function At(e){e=e|0;e:do if((e+-9&65535)<5)e=1;else{switch(e<<16>>16){case 32:case 160:{e=1;break e}default:}e=e<<16>>16!=46&(xt(e)|0)}while(!1);return e|0}function mr(){var e=0,a=0,p=0;e=r[74]|0,p=r[73]|0;e:for(;a=p+2|0,!(p>>>0>=e>>>0);)switch(E[a>>1]|0){case 13:case 10:break e;default:p=a}r[73]=a}function Ae(e){for(e=e|0;!(Ue(e)|0||xt(e)|0);)if(e=(r[73]|0)+2|0,r[73]=e,e=E[e>>1]|0,!(e<<16>>16)){e=0;break}return e|0}function wi(){var e=0;switch(e=r[(r[61]|0)+20>>2]|0,e|0){case 1:{e=-1;break}case 2:{e=-2;break}default:e=e-(r[3]|0)>>1}return e|0}function Si(e){return e=e|0,!(ie(e,194,5)|0)&&!(ie(e,44,3)|0)?e=ie(e,204,2)|0:e=1,e|0}function Ft(e){switch(e=e|0,e<<16>>16){case 160:case 32:case 12:case 11:case 9:{e=1;break}default:e=0}return e|0}function Pt(e){return e=e|0,(E[e>>1]|0)==46&&(E[e+-2>>1]|0)==46?e=(E[e+-4>>1]|0)==46:e=0,e|0}function Ii(){var e=0;return e=r[69]|0,e=r[((e|0)==0?(r[61]|0)+32|0:e+16|0)>>2]|0,r[69]=e,(e|0)!=0|0}function dt(e){return e=e|0,(r[3]|0)==(e|0)?e=1:e=ho(e+-2|0)|0,e|0}function Ci(){var e=0;return e=r[(r[62]|0)+12>>2]|0,e?e=e-(r[3]|0)>>1:e=-1,e|0}function ki(){var e=0;return e=r[(r[61]|0)+12>>2]|0,e?e=e-(r[3]|0)>>1:e=-1,e|0}function Li(){var e=0;return e=r[(r[62]|0)+8>>2]|0,e?e=e-(r[3]|0)>>1:e=-1,e|0}function Oi(){var e=0;return e=r[(r[61]|0)+16>>2]|0,e?e=e-(r[3]|0)>>1:e=-1,e|0}function Ti(){var e=0;return e=r[(r[61]|0)+4>>2]|0,e?e=e-(r[3]|0)>>1:e=-1,e|0}function Ni(){var e=0;return e=r[61]|0,e=r[((e|0)==0?236:e+36|0)>>2]|0,r[61]=e,(e|0)!=0|0}function xi(){var e=0;return e=r[62]|0,e=r[((e|0)==0?240:e+16|0)>>2]|0,r[62]=e,(e|0)!=0|0}function we(){A[806]=1,r[68]=(r[73]|0)-(r[3]|0)>>1,r[73]=(r[74]|0)+2}function Ue(e){return e=e|0,(e|128)<<16>>16==160|(e+-9&65535)<5|0}function ht(e){return e=e|0,e<<16>>16==39|e<<16>>16==34|0}function Ai(){return(r[(r[69]|0)+12>>2]|0)-(r[3]|0)>>1|0}function Fi(){return(r[(r[69]|0)+8>>2]|0)-(r[3]|0)>>1|0}function Pi(){return(r[(r[69]|0)+4>>2]|0)-(r[3]|0)>>1|0}function Mi(){return(r[(r[61]|0)+8>>2]|0)-(r[3]|0)>>1|0}function _i(){return(r[(r[62]|0)+4>>2]|0)-(r[3]|0)>>1|0}function go(e){return e=e|0,e<<16>>16==13|e<<16>>16==10|0}function Di(){return(r[r[69]>>2]|0)-(r[3]|0)>>1|0}function ji(){return(r[r[61]>>2]|0)-(r[3]|0)>>1|0}function Vi(){return(r[r[62]>>2]|0)-(r[3]|0)>>1|0}function Gi(){return se[(r[61]|0)+24>>0]|0|0}function qi(e){e=e|0,r[3]=e}function Hi(){return r[(r[61]|0)+28>>2]|0}function Ui(){return(A[807]|0)!=0|0}function Xi(){return(A[808]|0)!=0|0}function Wi(){r[69]=0}function Bi(){return r[68]|0}function Yi(e){return e=e|0,ae=e+992+15&-16,992}return{su:Yi,ai:Oi,ake:Pi,aks:Di,ave:Ai,avs:Fi,e:Bi,ee:_i,ele:Ci,els:Li,es:Vi,f:Xi,id:wi,ie:Ti,ip:Gi,is:ji,it:Hi,ms:Ui,p:be,ra:Ii,re:xi,ri:Ni,rsa:Wi,sa:$i,se:ki,ses:qi,ss:Mi}})(typeof globalThis<"u"?globalThis:self,{},It),Zt=B.su(it-(2<<17))}let g=oe.length+1;B.ses(Zt),B.sa(g-1),Vr(oe,new Uint16Array(It,Zt,g)),B.p()||(Y=B.e(),_e());let y=[],b=[];for(;B.ri();){let S=B.is(),M=B.ie(),k=B.ai(),A=B.id(),E=B.ss(),r=B.se(),se=B.it(),de;B.ip()&&(de=qr(A===-1?S:S+1,oe.charCodeAt(A===-1?S-1:S)));let ae=[];for(B.rsa();B.ra();){let be=B.aks(),Le=B.ake(),P=B.avs(),_=B.ave(),U=I(be,Le),j=I(P,_);ae.push([U,j])}y.push({t:se,n:de,s:S,e:M,ss:E,se:r,d:A,a:k,at:ae.length>0?ae:null})}for(;B.re();){let S=B.es(),M=B.ee(),k=B.els(),A=B.ele(),E=I(S,M),r=k<0?void 0:I(k,A);b.push({s:S,e:M,ls:k,le:A,n:E,ln:r})}return[y,b,!!B.f(),!!B.ms()];function I(S,M){let k=oe.charCodeAt(S);return k===34||k===39?qr(S+1,k):oe.slice(S,M)}}function qr(n,f){Y=n;let h="",g=Y;for(;;){Y>=oe.length&&_e();let y=oe.charCodeAt(Y);if(y===f)break;y===92?(h+=oe.slice(g,Y),h+=fi(),g=Y):(y===8232||y===8233||Hr(y)&&_e(),++Y)}return h+=oe.slice(g,Y++),h}function fi(){let n=oe.charCodeAt(++Y);switch(++Y,n){case 110:return`
2
+ `;case 114:return"\r";case 120:return String.fromCharCode(Qt(2));case 117:return(function(){let f=oe.charCodeAt(Y),h;return f===123?(++Y,h=Qt(oe.indexOf("}",Y)-Y),++Y,h>1114111&&_e()):h=Qt(4),h<=65535?String.fromCharCode(h):(h-=65536,String.fromCharCode(55296+(h>>10),56320+(1023&h)))})();case 116:return" ";case 98:return"\b";case 118:return"\v";case 102:return"\f";case 13:oe.charCodeAt(Y)===10&&++Y;case 10:return"";case 56:case 57:_e();default:if(n>=48&&n<=55){let f=oe.substr(Y-1,3).match(/^[0-7]+/)[0],h=parseInt(f,8);return h>255&&(f=f.slice(0,-1),h=parseInt(f,8)),Y+=f.length-1,n=oe.charCodeAt(Y),f==="0"&&n!==56&&n!==57||_e(),String.fromCharCode(h)}return Hr(n)?"":String.fromCharCode(n)}}function Qt(n){let f=Y,h=0,g=0;for(let y=0;y<n;++y,++Y){let b,I=oe.charCodeAt(Y);if(I!==95){if(I>=97)b=I-97+10;else if(I>=65)b=I-65+10;else{if(!(I>=48&&I<=57))break;b=I-48}if(b>=16)break;g=I,h=16*h+b}else g!==95&&y!==0||_e(),g=I}return g!==95&&Y-f===n||_e(),h}function Hr(n){return n===13||n===10}function _e(){throw Object.assign(Error(`Parse error ${Gr}:${oe.slice(0,Y).split(`
3
+ `).length}:${Y-oe.lastIndexOf(`
4
+ `,Y-1)}`),{idx:Y})}let Ur=(n,f=Re)=>{let h=Ge(n,f)||Fr(n),g=ct&&$t(ct,h||n,f),b=(Te===ct?g:$t(Te,h||n,f))||g||Xr(n,f),I=!1,S=!1;return Oe?wt||(!h&&!g&&(I=!0),g&&b!==g&&(S=!0)):h?h!==b&&(S=!0):I=!0,{r:b,n:I,N:S}},st=(n,f)=>{if(!N)return Ur(n,f);let h=N(n,f,pi);return h?{r:h,n:!0,N:!0}:Ur(n,f)};async function Ee(n,f,h){typeof f=="string"&&(h=f,f=void 0),await De,(G||!ke)&&(c&&pt(),Ke=!1);let g;return typeof f=="object"&&(f.lang==="ts"&&(g="ts"),typeof f.with=="object"&&typeof f.with.type=="string"&&(g=f.with.type)),Ct(n,h||Re,fe,void 0,void 0,void 0,g)}(G||Pe)&&(Ee.source=async(n,f,h)=>{typeof f=="string"&&(h=f,f=void 0),await De,(G||!ke)&&(c&&pt(),Ke=!1),await lt;let g=st(n,h||Re).r,y=ir(g,fe,void 0,void 0);return await y.f,Ee._s[y.r]}),(G||Jt)&&(Ee.defer=Ee),Fe&&(s(Ct,Ee),Ee.hotReload=i);let pi=(n,f)=>$t(Te,Ge(n,f)||n,f)||Xr(n,f),Xr=(n,f)=>{throw Error(`Unable to resolve specifier '${n}'${ot(f)}`)},mi=function(n,f=this.url){return st(n,`${f}`).r};Ee.resolve=(n,f)=>st(n,f).r,Ee.getImportMap=()=>JSON.parse(JSON.stringify(Te)),Ee.addImportMap=n=>{if(!G)throw new Error("Unsupported in polyfill mode.");Te=Mr(n,Re,Te)},Ee.version=x;let at=Ee._r={},ui=Ee._s={};Ee._i=new WeakMap,u(o,"importShim",Object.freeze(Ee));let Wr={...v,shimMode:!0};$&&($.innerText=jr(JSON.stringify(Wr))),o.esmsInitOptions=Wr;let Br=async(n,f)=>{f[n.u]=1,await n.L,await Promise.all(n.d.map(({l:h,s:g})=>{if(!(h.b||f[h.u]))return g?h.f:Br(h,f)}))},Yr=!1,er=!1,ct=null,Te={imports:{},scopes:{},integrity:{}},ke,De=ai.then(()=>{if(ke=Oe&&(!xr||Je)&&(!Nr||ze)&&(!Yt||vt)&&(!Pe||nt)&&!Jt&&(!er||wt)&&!Yr&&!ue,!G&&typeof WebAssembly<"u"&&Pe&&!Object.getPrototypeOf(WebAssembly.Module).name){let n=Symbol(),f=I=>u(I,n,"WebAssembly.Module");class h{get[Symbol.toStringTag](){if(this[n])return this[n];throw new TypeError("Not an AbstractModuleSource")}}let{Module:g,compile:y,compileStreaming:b}=WebAssembly;WebAssembly.Module=Object.setPrototypeOf(Object.assign(function(...S){return f(new g(...S))},g),h),WebAssembly.Module.prototype=Object.setPrototypeOf(g.prototype,h.prototype),WebAssembly.compile=function(...S){return y(...S).then(f)},WebAssembly.compileStreaming=function(...S){return b(...S).then(f)}}if(c){if(!Oe){let n=HTMLScriptElement.supports||(f=>f==="classic"||f==="module");HTMLScriptElement.supports=f=>f==="importmap"||n(f)}(G||!ke)&&(Jr(),document.readyState==="complete"?cr():document.addEventListener("readystatechange",co)),pt()}}),Jr=()=>{let n=new MutationObserver(f=>{for(let h of f)if(h.type==="childList")for(let g of h.addedNodes)g.tagName==="SCRIPT"?(g.type===(G?"module-shim":"module")&&!g.ep&&mo(g,!0),g.type===(G?"importmap-shim":"importmap")&&!g.ep&&po(g,!0)):g.tagName==="LINK"&&g.rel===(G?"modulepreload-shim":"modulepreload")&&!g.ep&&uo(g)});n.observe(document,{childList:!0}),n.observe(document.head,{childList:!0}),pt()},lt=De,tr=!0,Ke=!0;async function Ct(n,f,h,g,y,b,I){if(await De,await lt,n=(await st(n,f)).r,(I==="css"||I==="json")&&(g=`import m from'${n}'with{type:"${I}"};export default m;`,n+="?entry"),K&&await K(n,typeof h!="string"?h:{},f,g,I),!G&&ke&&tt&&I!=="ts")return y?null:(await b,d(g?$e(g):n));let S=ir(n,h,void 0,g);oo(S,h);let M={};if(await Br(S,M),zr(S,M),await b,!G&&!S.n){if(y)return;if(g)return await d($e(g))}tr&&!G&&S.n&&y&&(Ar(),tr=!1);let k=await(G||S.n||S.N||!tt||!y&&g?d(S.b,S.u):import(S.u));return S.s&&(await d(S.s,S.u)).u$_(k),di(Object.keys(M)),k}let di=n=>{let f=0,h=o.requestIdleCallback||o.requestAnimationFrame||(y=>setTimeout(y,0));h(g);function g(){for(let y of n.slice(f,f+=100)){let b=at[y];b&&b.b&&b.b!==b.u&&URL.revokeObjectURL(b.b)}f<n.length&&h(g)}},ft=n=>`'${n.replace(/'/g,"\\'")}'`,ye,ve,qe=(n,f,h)=>{for(;h[h.length-1]<f;){let g=h.pop();ye+=`${n.S.slice(ve,g)}, ${ft(n.r)}`,ve=g}ye+=n.S.slice(ve,f),ve=f},rr=(n,f,h,g)=>{let y=h+f.length,b=n.S.indexOf(`
5
+ `,y),I=b!==-1?b:n.S.length,S=n.S.slice(y,I);try{S=new URL(S,n.r).href}catch{}qe(n,y,g),ye+=S,ve=I},zr=(n,f)=>{if(n.b||!f[n.u])return;f[n.u]=0;for(let{l:k,s:A}of n.d)A||zr(k,f);if(n.n||(n.n=n.d.some(k=>k.l.n)),n.N||(n.N=n.d.some(k=>k.l.N)),tt&&!G&&!n.n&&!n.N){n.b=n.u,n.S=void 0;return}let[h,g]=n.a,y=n.S,b=0,I=[];ye="",ve=0;for(let{s:k,e:A,ss:E,se:r,d:se,t:de,a:ae,at:be}of h)if(de===4){let{l:Le}=n.d[b++];qe(n,E,I),ye+=`${y.slice(E,k-1).replace("source","")}/*${y.slice(k-1,A+1)}*/'${$e(`export default importShim._s[${ft(Le.r)}]`)}'`,ve=A+1}else if(se===-1){let Le=!1;ae>0&&!G&&(Le=tt&&(Je&&be.some(([j,L])=>j==="type"&&L==="json")||ze&&be.some(([j,L])=>j==="type"&&L==="css"))),de===6&&(qe(n,E,I),ye+=y.slice(E,k-1).replace("defer",""),ve=k);let{l:P}=n.d[b++],_=P.b,U=!_;U&&((_=P.s)||(_=P.s=$e(`export function u$_(m){${P.a[1].map(({s:j,e:L},ne)=>{let Q=P.S[j]==='"'||P.S[j]==="'";return`e$_${ne}=m${Q?"[":"."}${P.S.slice(j,L)}${Q?"]":""}`}).join(",")}}${P.a[1].length?`let ${P.a[1].map((j,L)=>`e$_${L}`).join(",")};`:""}export {${P.a[1].map(({s:j,e:L},ne)=>`e$_${ne} as ${P.S.slice(j,L)}`).join(",")}}
6
+ //# sourceURL=${P.r}?cycle`))),qe(n,k-1,I),ye+=`/*${y.slice(k-1,A+1)}*/'${_}'`,!U&&P.s&&(ye+=`;import*as m$_${b} from'${P.b}';import{u$_ as u$_${b}}from'${P.s}';u$_${b}(m$_${b})`,P.s=void 0),ve=Le?A+1:r}else se===-2?(n.m={url:n.r,resolve:mi},H&&H(n.m,n.u),qe(n,k,I),ye+=`importShim._r[${ft(n.u)}].m`,ve=r):(qe(n,E+6,I),ye+=`Shim${de===5?".source":""}(`,I.push(r-1),ve=k);n.s&&(h.length===0||h[h.length-1].d===-1)&&(ye+=`
7
+ ;import{u$_}from'${n.s}';try{u$_({${g.filter(k=>k.ln).map(({s:k,e:A,ln:E})=>`${y.slice(k,A)}:${E}`).join(",")}})}catch(_){};
8
+ `);let S=y.lastIndexOf(kt),M=y.lastIndexOf(Kr);S<ve&&(S=-1),M<ve&&(M=-1),S!==-1&&(M===-1||M>S)&&rr(n,kt,S,I),M!==-1&&(rr(n,Kr,M,I),S!==-1&&S>M&&rr(n,kt,S,I)),qe(n,y.length,I),S===-1&&(ye+=kt+n.r),n.b=$e(ye),n.S=ye=void 0},kt=`
9
+ //# sourceURL=`,Kr=`
10
+ //# sourceMappingURL=`,hi=/url\(\s*(?:(["'])((?:\\.|[^\n\\"'])+)\1|((?:\\.|[^\s,"'()\\])+))\s*\)/g,or=[],Zr=0,gi=()=>{if(++Zr>100)return new Promise(n=>or.push(n))},Ei=()=>{Zr--,or.length&&or.shift()()},Qr=async(n,f,h)=>{if(Rt&&!f.integrity)throw Error(`No integrity for ${n}${ot(h)}.`);let g,y=gi();y&&await y;try{g=await D(n,f)}catch(b){throw b.message=`Unable to fetch ${n}${ot(h)} - see network log for details.
11
+ `+b.message,b}finally{Ei()}if(!g.ok){let b=new TypeError(`${g.status} ${g.statusText} ${g.url}${ot(h)}`);throw b.response=g,b}return g},Ze,eo=async()=>{let n=await import(re);Ze||(Ze=n.transform)};async function to(n,f,h){let g=await Qr(n,f,h),y,[,b,I,S]=(y=g.headers.get("content-type")||"").match(/^(?:[^/;]+\/(?:[^/+;]+\+)?(json)|(?:text|application)\/(?:x-)?((java|type)script|wasm|css))(?:;|$)/)||[];if(!(I=b||(S?S[0]+"s":I||/\.m?ts(\?|#|$)/.test(n)&&"ts")))throw Error(`Unsupported Content-Type "${y}" loading ${n}${ot(h)}. Modules must be served with a valid MIME type like application/javascript.`);return{url:g.url,source:await(I>"v"?WebAssembly.compileStreaming(g):g.text()),type:I}}let nr="var h=import.meta.hot,",ro=async(n,f,h)=>{let g=Te.integrity[n];f=g&&!f.integrity?{...f,integrity:g}:f;let{url:y=n,source:b,type:I}=await(F||to)(n,f,h,to)||{};if(I==="wasm"){let S=WebAssembly.Module.exports(ui[y]=b),M=WebAssembly.Module.imports(b),k=ft(y);b=`import*as $_ns from${k};`;let A=0,E="";for(let{module:r,kind:se}of M){let de=ft(r);b+=`import*as impt${A} from${de};
12
+ `,E+=`${de}:${se==="global"?`importShim._i.get(impt${A})||impt${A++}`:`impt${A++}`},`}b+=`${nr}i=await WebAssembly.instantiate(importShim._s[${k}],{${E}});importShim._i.set($_ns,i);`,E="";for(let{name:r,kind:se}of S)b+=`export let ${r}=i.exports['${r}'];`,se==="global"&&(b+=`try{${r}=${r}.value}catch(_){${r}=undefined}`),E+=`${r},`;b+=`if(h)h.accept(m=>({${E}}=m))`}else if(I==="json")b=`${nr}j=JSON.parse(${JSON.stringify(b)});export{j as default};if(h)h.accept(m=>j=m.default)`;else if(I==="css")b=`${nr}s=h&&h.data.s||new CSSStyleSheet();s.replaceSync(${JSON.stringify(b.replace(hi,(S,M="",k,A)=>`url(${M}${Pr(k||A,y)}${M})`))});if(h){h.data.s=s;h.accept(()=>{})}export default s`;else if(I==="ts"){Ze||await eo();let S=Ze(b,y);b=S===void 0?b:S}return{url:y,source:b,type:I}},ir=(n,f,h,g)=>{if(g&&at[n]){let b=0;for(;at[n+"#"+ ++b];);n+="#"+b}let y=at[n];return y||(at[n]=y={u:n,r:g?n:void 0,f:void 0,S:g,L:void 0,a:void 0,d:void 0,b:void 0,s:void 0,n:!1,N:!1,t:null,m:null},y.f=(async()=>{y.S===void 0&&({url:y.r,source:y.S,type:y.t}=await(lr[n]||ro(n,f,h)),!y.n&&y.t!=="js"&&!G&&(y.t==="css"&&!ze||y.t==="json"&&!Je||y.t==="wasm"&&!vt&&!nt||y.t==="ts")&&(y.n=!0));try{y.a=li(y.S,y.u)}catch(b){rt(b),y.a=[[],[],!1]}return y})(),y)},yi=n=>Error(`${n} feature must be enabled via <script type="esms-options">{ "polyfillEnable": ["${n}"] }<\/script>`),oo=(n,f)=>{n.L||(n.L=n.f.then(()=>{let h=f;n.d=n.a[0].map(({n:g,d:y,t:b,a:I,se:S})=>{let M=b>=4,k=M&&b<6;if(M){if(!G&&(k?!Pe:!Jt))throw yi(k?"wasm-module-sources":"import-defer");(!k||!nt)&&(n.n=!0)}let A;if(I>0&&!G&&tt){let se=n.S.slice(I,S-1);se.includes("json")?Je?A="":n.n=!0:se.includes("css")&&(ze?A="":n.n=!0)}if(y!==-1||!g)return;let E=st(g,n.r||n.u);if((E.n||ue)&&(n.n=!0),(y>=0||E.N)&&(n.N=!0),y!==-1)return;if(Ce&&Ce(E.r)&&!k)return{l:{b:E.r},s:!1};h.integrity&&(h={...h,integrity:void 0});let r={l:ir(E.r,h,n.r,A),s:k};return A===""&&(r.l.b=r.l.u),r.s||oo(r.l,f),r}).filter(g=>g)}))},pt=()=>{for(let n of document.querySelectorAll(G?"link[rel=modulepreload-shim]":"link[rel=modulepreload]"))n.ep||uo(n);for(let n of document.querySelectorAll("script[type]"))n.type==="importmap"+(G?"-shim":"")?n.ep||po(n):n.type==="module"+(G?"-shim":"")&&(Ke=!1,n.ep||mo(n))},Lt=n=>{let f={};return n.integrity&&(f.integrity=n.integrity),n.referrerPolicy&&(f.referrerPolicy=n.referrerPolicy),n.fetchPriority&&(f.priority=n.fetchPriority),n.crossOrigin==="use-credentials"?f.credentials="include":n.crossOrigin==="anonymous"?f.credentials="omit":f.credentials="same-origin",f},sr=Promise.resolve(),no=!1,Ot=1,Tt=n=>{if(n===void 0){if(no)return;no=!0,Ot--}--Ot===0&&!We&&(G||!ke)&&(document.removeEventListener("DOMContentLoaded",so),document.dispatchEvent(new Event("DOMContentLoaded")))},ar=1,io=()=>{--ar===0&&!We&&(G||!ke)&&(window.removeEventListener("load",ao),window.dispatchEvent(new Event("load")))},so=async()=>{await De,Tt()},ao=async()=>{await De,Tt(),io()};c&&(document.addEventListener("DOMContentLoaded",so),window.addEventListener("load",ao));let co=async()=>{await De,pt(),document.readyState==="complete"&&cr()},mt=1,cr=()=>{--mt===0&&(Tt(),!We&&(G||!ke)&&(document.removeEventListener("readystatechange",co),document.dispatchEvent(new Event("readystatechange"))))},lo=n=>n.nextSibling||n.parentNode&&lo(n.parentNode),fo=(n,f)=>n.ep||!f&&(!n.src&&!n.innerHTML||!lo(n))||n.getAttribute("noshim")!==null||!(n.ep=!0),po=(n,f=mt>0)=>{if(!fo(n,f)){if(n.src){if(!G)return;Yr=!0}lt=lt.then(async()=>{Te=Mr(n.src?await(await Qr(n.src,Lt(n))).json():JSON.parse(n.innerHTML),n.src||Re,Te)}).catch(h=>{h instanceof SyntaxError&&(h=new Error(`Unable to parse import map ${h.message} in: ${n.src||n.innerHTML}`)),rt(h)}),!ct&&Ke&&lt.then(()=>ct=Te),!Ke&&!er&&(er=!0,!G&&ke&&!wt&&(ke=!1,c&&Jr())),Ke=!1}},mo=(n,f=mt>0)=>{if(fo(n,f))return;let h=n.getAttribute("async")===null&&mt>0,g=Ot>0,y=ar>0;y&&ar++,h&&mt++,g&&Ot++;let b,I=n.lang==="ts";I&&!n.src?b=Promise.resolve(Ze||eo()).then(()=>{let S=Ze(n.innerHTML,Re);return S!==void 0&&(Ar(),tr=!1),Ct(n.src||Re,Re,Lt(n),S===void 0?n.innerHTML:S,!G&&S===void 0,h&&sr,"ts")}).catch(rt):b=Ct(n.src||Re,Re,Lt(n),n.src?void 0:n.innerHTML,!G,h&&sr,I?"ts":void 0).catch(rt),We||b.then(()=>n.dispatchEvent(new Event("load"))),h&&!I&&(sr=b.then(cr)),g&&b.then(Tt),y&&b.then(io)},lr={},uo=n=>{n.ep=!0,De.then(()=>{ke&&!G||lr[n.href]||(lr[n.href]=ro(n.href,Lt(n)))})}})();var q=class extends Error{constructor(t,i){super(t,i),this.name="NFError"}};function J(o,t){return o=o.endsWith("/")?o.slice(0,-1):o,t=t.startsWith("/")?t.slice(1):t,`${o}/${t}`}function Xe(o){if(!o)return"";let t=o.split("/");return(t[t.length-1]===""||t[t.length-1].includes("."))&&t.pop(),t.length<1?"":`${t.join("/")}/`}function yo(o,t){return(d={})=>t.manifestProvider.provide(d).catch(u=>(o.log.error(1,"Could not fetch manifest.",u),Promise.reject(new q("Failed to fetch manifest")))).then(i).then(s).then(R);function i(d){if(!o.hostRemoteEntry)return d;let{name:u,url:$,cacheTag:v}=o.hostRemoteEntry,x=v?`${$}?cacheTag=${v}`:$;return{...d,[u]:x}}async function s(d){let u=Object.entries(d).map(([$,v])=>c($,v));return Promise.all(u)}async function c(d,u){let $=!1,v=!1;if(t.remoteInfoRepo.tryGet(d).ifPresent(x=>{o.profile.overrideCachedRemotes!=="never"&&(u!==J(x.scopeUrl,"remoteEntry.json")||o.profile.overrideCachedRemotesIfURLMatches)?(o.log.debug(1,`Overriding existing remote '${d}' with '${u}'.`),$=!0):(o.log.debug(1,`Found remote '${d}' in storage, omitting fetch.`),v=!0)}),v)return!1;try{let x=await t.remoteEntryProvider.provide(u);return o.log.debug(1,`Fetched '${x.name}' from '${x.url}', exposing: ${JSON.stringify(x.exposes)}`),m(x,d,$)}catch(x){return o.strict.strictRemoteEntry?(o.log.error(1,`Could not fetch remote '${d}'.`,x),Promise.reject(new q(`Could not fetch remote '${d}'`))):(o.log.warn(1,`Could not fetch remote '${d}'. skipping init.`,x),Promise.resolve(!1))}}function m(d,u,$){if($&&(d.override=$),o.hostRemoteEntry&&u===o.hostRemoteEntry.name&&(d.host=!0,d.name=o.hostRemoteEntry.name),d.name!==u){let v=`Fetched remote '${d.name}' does not match requested '${u}'.`;if(o.strict.strictRemoteEntry)throw new q(v);o.log.warn(1,`${v} Omitting expected name.`)}return d}function R(d){return d.filter(u=>u!==!1)}}function bo(o,t){return d=>{try{return d.forEach(u=>{u?.override&&i(u),s(u),c(u)}),Promise.resolve(d)}catch(u){return Promise.reject(u)}};function i(d){t.remoteInfoRepo.remove(d.name),t.scopedExternalsRepo.remove(d.name),t.sharedExternalsRepo.removeFromAllScopes(d.name)}function s({name:d,url:u,exposes:$}){t.remoteInfoRepo.addOrUpdate(d,{scopeUrl:Xe(u),exposes:Object.values($??[]).map(v=>({moduleName:v.key,file:v.outFileName}))})}function c(d){d.shared.forEach(u=>{if(!u.version||!t.versionCheck.isValidSemver(u.version)){let $=`[${d.name}][${u.packageName}] Version '${u.version}' is not a valid version.`;if(o.strict.strictExternalVersion)throw o.log.error(2,$),new q(`Could not process remote '${d.name}'`);o.log.warn(2,$)}u.singleton?m(d.name,u,d):R(d.name,u)})}function m(d,u,$){let v="skip",x=u.version??t.versionCheck.smallestVersion(u.requiredVersion),X={file:u.outFileName,name:d,strictVersion:u.strictVersion,cached:!1,requiredVersion:u.requiredVersion||x},G=t.sharedExternalsRepo.scopeType(u.shareScope);G==="strict"&&(v="share",X.requiredVersion=x);let K=t.sharedExternalsRepo.tryGet(u.packageName,u.shareScope).orElse({dirty:!1,versions:[]}),N=K.versions.find(F=>F.tag===u.version),D=K.dirty;if(N){if(X.strictVersion&&N.remotes[0].requiredVersion!==X.requiredVersion){let F=`[${d}][${u.packageName}@${u.version}] Required version-range '${X.requiredVersion}' does not match cached version-range '${N.remotes[0].requiredVersion}'`;if(o.strict.strictExternalCompatibility)throw o.log.error(2,F),new q(`Could not process remote '${$.name}'`);o.log.warn(2,F)}!N.host&&$?.host?(N.host=!0,N.remotes.unshift(X)):N.remotes.push(X)}else G!=="strict"&&(D=!0),K.versions.push({tag:x,action:v,host:!!$?.host,remotes:[X]});t.sharedExternalsRepo.addOrUpdate(u.packageName,{dirty:D,versions:K.versions.sort((F,H)=>t.versionCheck.compare(H.tag,F.tag))},u.shareScope)}function R(d,u){t.scopedExternalsRepo.addExternal(d,u.packageName,{tag:u.version??t.versionCheck.smallestVersion(u.requiredVersion),file:u.outFileName})}}var le="__GLOBAL__",Ro="strict";function $o(o,t){return()=>{for(let s of t.sharedExternalsRepo.getScopes()){let c=t.sharedExternalsRepo.getFromScope(s);try{Object.entries(c).filter(([m,R])=>R.dirty).forEach(([m,R])=>t.sharedExternalsRepo.addOrUpdate(m,i(m,R),s))}catch(m){return o.log.error(3,`[${s??le}] failed to determine shared externals.`,{sharedExternals:c,error:m}),Promise.reject(new q(`Could not determine shared externals in scope ${s}.`,m))}}return Promise.resolve()};function i(s,c){if(c.versions.length===1)return c.versions[0].action="share",c.dirty=!1,c;let m=c.versions.find(R=>R.host);if(!m&&o.profile.latestSharedExternal&&(m=c.versions[0]),!m){let R=Number.MAX_VALUE;c.versions.forEach(d=>{let u=c.versions.filter($=>!$.remotes[0].cached&&$.remotes[0].strictVersion&&!t.versionCheck.isCompatible(d.tag,$.remotes[0].requiredVersion)).length;u<R&&(R=u,m=d)})}if(!m)throw new q(`[${s}] Could not determine shared version!`);return c.versions.forEach(R=>{if(t.versionCheck.isCompatible(m.tag,R.remotes[0].requiredVersion)){R.action="skip";return}if(o.strict.strictExternalCompatibility&&R.remotes[0].strictVersion)throw o.log.error(3,`[${R.remotes[0].name}][${s}@${R.tag}] Is not compatible with requiredRange '${m.remotes[0]?.requiredVersion}' from remote '${m.remotes[0].name}'.`),new q(`External ${s}@${R.tag} could not be shared.`);R.action=R.remotes[0].strictVersion?"scope":"skip"}),m.action="share",c.dirty=!1,c}}function vo(o,t){return()=>{let N={imports:{}};try{return i(N),c(N),u(N),X(N),Promise.resolve(N)}catch(D){return Promise.reject(D)}};function i(N){let D=t.scopedExternalsRepo.getAll();for(let[F,H]of Object.entries(D)){let re=t.remoteInfoRepo.tryGet(F).orThrow(()=>(o.log.error(4,`[scoped][${F}] Remote name not found in cache.`),new q("Could not create ImportMap.")));v(N,re.scopeUrl,s(H,re.scopeUrl))}return N}function s(N,D){let F={};for(let[H,re]of Object.entries(N))F[H]=J(D,re.file);return F}function c(N){let D=t.sharedExternalsRepo.getScopes({includeGlobal:!1});for(let F of D)m(N,F);return N}function m(N,D){let F=t.sharedExternalsRepo.getFromScope(D);for(let[H,re]of Object.entries(F)){let fe,me;for(let ue of re.versions){if(ue.action==="scope"){for(let Fe of ue.remotes){let Be=K(H,D,Fe.name);v(N,Be,{[H]:J(Be,Fe.file)}),Fe.cached=!0}continue}let We=K(H,D,ue.remotes[0].name),Rt=J(We,ue.remotes[0].file);ue.remotes[0].cached=!0,ue.action==="skip"&&(fe||(fe=R(re,D,H)??"NOT_AVAILABLE"),fe!=="NOT_AVAILABLE"&&(me||(me=K(H,D,fe.remotes[0].name)),Rt=J(me,fe.remotes[0].file),fe.remotes[0].cached=!0,ue.remotes[0].cached=!1)),ue.remotes.forEach(Fe=>{let Be=K(H,D,Fe.name);v(N,Be,{[H]:Rt})})}t.sharedExternalsRepo.addOrUpdate(H,re,D)}}function R(N,D,F){let H=N.versions.filter(fe=>fe.action==="share"),re=`${D}.${F}`;if(H.length>1&&d(re),H.length<1){if(o.strict.strictImportMap)throw o.log.error(4,`[${D}][${F}] shareScope has no override version.`),new q("Could not create ImportMap.");o.log.debug(4,`[${D}][${F}] shareScope has no override version, scoping override versions.`)}return H[0]}function d(N){if(o.strict.strictImportMap)throw o.log.error(4,`[${N}] ShareScope external has multiple shared versions.`),new q("Could not create ImportMap.");o.log.warn(4,`ShareScope external ${N} has multiple shared versions.`)}function u(N){let D=t.sharedExternalsRepo.getFromScope();for(let[F,H]of Object.entries(D)){for(let re of H.versions){if(re.action==="skip")continue;if(re.action==="scope"){for(let me of re.remotes){let ue=K(F,le,me.name);v(N,ue,{[F]:J(ue,me.file)}),me.cached=!0}continue}if(N.imports[F]){$(F);continue}let fe=K(F,le,re.remotes[0].name);x(N,{[F]:J(fe,re.remotes[0].file)}),re.remotes[0].cached=!0}t.sharedExternalsRepo.addOrUpdate(F,H)}return N}function $(N){if(o.strict.strictImportMap)throw o.log.error(4,`[${N}] Shared external has multiple shared versions.`),new q("Could not create ImportMap.");o.log.warn(4,`Singleton external ${N} has multiple shared versions.`)}function v(N,D,F){N.scopes||(N.scopes={}),N.scopes[D]||(N.scopes[D]={}),N.scopes[D]=Object.assign(N.scopes[D],F)}function x(N,D){N.imports=Object.assign(N.imports,D)}function X(N){let D=t.remoteInfoRepo.getAll();for(let[F,H]of Object.entries(D))G(N,F,H)}function G(N,D,F){for(let H of F.exposes){let re=J(D,H.moduleName),fe=J(F.scopeUrl,H.file);N.imports[re]=fe}}function K(N,D,F){return t.remoteInfoRepo.tryGet(F).map(H=>H.scopeUrl).orThrow(()=>(o.log.error(4,`[${D}][${N}][${F}] Remote name not found in cache.`),new q("Could not create ImportMap.")))}}function Mt(o,t){return c=>Promise.resolve(c).then(i).then(s);function i(c){return t.browser.setImportMapFn(c),o.log.debug(5,"Added import map to browser.",c),c}function s(){t.remoteInfoRepo.commit(),t.scopedExternalsRepo.commit(),t.sharedExternalsRepo.commit()}}function wo(o,t){return()=>Promise.resolve(i);function i(s,c){try{if(!t.remoteInfoRepo.contains(s))throw new q(`Remote '${s}' is not initialized.`);let m=t.remoteInfoRepo.tryGetModule(s,c).orThrow(new q(`Exposed module '${c}' from remote '${s}' not found in storage.`));return o.log.debug(6,`Loading initialized module '${m}'`),t.browser.importModule(m)}catch(m){return o.log.error(6,`Failed to load module ${J(s,c)}: `,{error:m}),Promise.reject(new q(`Failed to load module ${J(s,c)}`))}}}var ts=({config:o,adapters:t})=>({getRemoteEntries:yo(o,t),processRemoteEntries:bo(o,t),determineSharedExternals:$o(o,t),generateImportMap:vo(o,t),commitChanges:Mt(o,t),exposeModuleLoader:wo(o,t)}),So=({config:o,adapters:t})=>({flow:ts({config:o,adapters:t}),adapters:t,config:o}),Io=({flow:o,adapters:t,config:i})=>s=>o.getRemoteEntries(s).then(o.processRemoteEntries).then(o.determineSharedExternals).then(o.generateImportMap).then(o.commitChanges).then(o.exposeModuleLoader).then(c=>({config:i,adapters:t,loadRemoteModule:c}));var Co=o=>({setImportMapFn:o.setImportMapFn,importModule:o.loadModuleFn});var Sn=gt(Go()),In=gt(yn()),Cn=gt(Ve()),kn=gt($n()),Ln=gt(wn()),On=()=>({isValidSemver:function(o){return(0,Sn.default)(o)!==null},isCompatible:function(o,t){return(0,In.default)(o,t)},compare:function(o,t){return(0,Cn.default)(o,t,!0)},smallestVersion:function(o){return(0,Ln.default)(o)?(0,kn.default)(o)?.raw??"0.0.0":"0.0.0"}});var Tn=()=>{let o=i=>i.ok?i.json():Promise.reject(new q(`${i.status} - ${i.statusText}`)),t=i=>s=>{let c=s instanceof Error?s.message:String(s);throw new q(`Fetch of '${i}' returned ${c}`)};return{provide:async function(i){return typeof i!="string"?Promise.resolve(i):fetch(i).then(o).catch(t(i))}}};var Nn=()=>{let o=s=>s.ok?s.json():Promise.reject(new Error(`${s.status} - ${s.statusText}`)),t=s=>c=>(c.exposes||(c.exposes=[]),c.shared||(c.shared=[]),c.url||(c.url=s),c),i=s=>c=>{let m=c instanceof Error?c.message:String(c);throw new q(`Fetch of '${s}' returned ${m}`)};return{provide:async function(s){return fetch(s).then(o).then(t(s)).catch(i(s))}}};var Ie=class o{constructor(t){this.item=t}static of(t){return new o(t)}static empty(){return o.of(void 0)}isPresent(){return typeof this.item<"u"&&this.item!==null}set(t){return o.of(t)}ifPresent(t){this.isPresent()&&t(this.item)}map(t){if(!this.isPresent())return o.empty();let i=t(this.item);return i instanceof o?i:o.of(i)}orElse(t){return this.isPresent()?this.item:t}orThrow(t){if(this.isPresent())return this.item;throw typeof t=="function"?t():typeof t=="string"?new Error(t):t}get(){return this.item}};var xn=o=>{let t=o.storage("remotes",{});o.clearStorage&&t.clear();let i=t.get()??{};return{contains:function(s){return!!i[s]},remove:function(s){return delete i[s],this},addOrUpdate:function(s,c){return i[s]=c,this},tryGet:function(s){return Ie.of(i[s])},tryGetModule:function(s,c){return Ie.of(i[s]?.exposes.find(m=>m.moduleName===c)).map(m=>J(i[s].scopeUrl,m.file))},getAll:function(){return i},commit:function(){return t.set(i),this}}};var An=o=>{let t=o.storage("scoped-externals",{});o.clearStorage&&t.clear();let i=t.get()??{};return{addExternal:function(s,c,m){return i[s]||(i[s]={}),i[s][c]=m,this},remove:function(s){return delete i[s],this},getAll:function(){return i},tryGet:function(s){return Ie.of(i[s])},commit:function(){return t.set(i),this}}};var Fn=o=>{let t=o.storage("shared-externals",{[le]:{}});o.clearStorage&&t.clear();let i=t.get();return{getFromScope:function(s){return{...i[s??le]}},addOrUpdate:function(s,c,m){return i[m??le]||(i[m??le]={}),i[m??le][s]=c,this},getScopes:function(s={includeGlobal:!0}){return s.includeGlobal?Object.keys(i):Object.keys(i).filter(c=>c!==le)},removeFromAllScopes:function(s){Object.values(i).forEach(c=>{let m=[];Object.entries(c).forEach(([R,d])=>{let u=[];if(d.versions.forEach(($,v)=>{let x=$.remotes.findIndex(X=>X.name===s);~x&&$.remotes.splice(x,1),$.remotes.length===0&&u.push(v)}),u.length>0){for(let $=u.length-1;$>=0;$--)d.versions.splice(u[$],1);d.dirty=!0,d.versions.length===0&&m.push(R)}}),m.forEach(R=>delete c[R])})},scopeType:function(s){switch(s){case le:case null:case void 0:return"global";case Ro:return"strict";default:return"shareScope"}},tryGet:function(s,c){return Ie.of(i[c??le]?.[s])},commit:function(){return t.set(i),this}}};var Pn=o=>({adapters:{versionCheck:On(),manifestProvider:Tn(),remoteEntryProvider:Nn(),remoteInfoRepo:xn(o),scopedExternalsRepo:An(o),sharedExternalsRepo:Fn(o),browser:Co(o)},config:o});var Ut=o=>(t,i={})=>(i?.override&&document.head.querySelectorAll(`script[type="${o}"]`).forEach(s=>s.remove()),document.head.appendChild(Object.assign(document.createElement("script"),{type:o,innerHTML:JSON.stringify(t)})),Promise.resolve(t));var Mn=()=>({loadModuleFn:o=>import(o),setImportMapFn:Ut("importmap")});var _n=o=>{let t=Mn();return{setImportMapFn:o.setImportMapFn??t.setImportMapFn,loadModuleFn:o.loadModuleFn??t.loadModuleFn}};var Dn=o=>o?.hostRemoteEntry?typeof o.hostRemoteEntry=="string"?{hostRemoteEntry:{name:"__NF-HOST__",url:o.hostRemoteEntry}}:{hostRemoteEntry:{name:"__NF-HOST__",...o.hostRemoteEntry}}:{hostRemoteEntry:!1};var jn={debug:()=>{},error:()=>{},warn:()=>{}};var Xt={debug:0,warn:1,error:2};var Vn=(o,t)=>Object.keys(Xt).filter(s=>isNaN(Number(s))).reduce((s,c)=>({...s,[c]:(m,R,d)=>{Xt[c]>=Xt[t]&&o[c](m,R,d)}}),{level:t});var Gn=({logger:o,logLevel:t})=>({log:Vn(o??jn,t??"error")});var Wt=(o,t)=>{try{if(typeof structuredClone=="function")return structuredClone(t)}catch{}try{return JSON.parse(JSON.stringify(t))}catch{}throw new q(`Could not parse storage entry '${String(o)}'`)};var qn=o=>(t,i)=>{globalThis[o]||(globalThis[o]={});let s=globalThis[o];s[t]||(s[t]=i);let c={get(){return Wt(t,s[t])},set(m){return s[t]=Wt(t,m),c},clear(){return s[t]=Wt(t,i),this}};return c};var Hn=o=>({storage:o.storage?o.storage(o.storageNamespace??"__NATIVE_FEDERATION__"):qn(o.storageNamespace??"__NATIVE_FEDERATION__"),clearStorage:o.clearStorage??!1});var Un={latestSharedExternal:!1,overrideCachedRemotes:"init-only",overrideCachedRemotesIfURLMatches:!1};var Xn=o=>({strict:typeof o.strict=="boolean"?{strictRemoteEntry:o.strict,strictExternalCompatibility:o.strict,strictExternalVersion:o.strict,strictImportMap:o.strict}:{strictRemoteEntry:o.strict?.strictRemoteEntry??!1,strictExternalCompatibility:o.strict?.strictExternalCompatibility??!1,strictExternalVersion:o.strict?.strictExternalVersion??!1,strictImportMap:o.strict?.strictImportMap??!1},profile:{...Un,...o.profile??{}}});var Wn=o=>({..._n(o),...Dn(o),...Gn(o),...Hn(o),...Xn(o)});function Bn({log:o}){return({entry:c,actions:m})=>{let R={imports:{}};return t(c,m,R),s(c,R),o.debug(9,`[${c.name}] Processed actions:`,m),Promise.resolve(R)};function t(c,m,R){if(!c.shared)return;let d=Xe(c.url);c.shared.forEach(u=>{if(!u.singleton){i(d,u.packageName,J(d,u.outFileName),R);return}if(!m[u.packageName]){o.warn(9,`[${c.name}] No action defined for shared external '${u.packageName}', skipping.`);return}if(m[u.packageName].action==="skip"){if(!u.shareScope)return;if(m[u.packageName].override){i(d,u.packageName,m[u.packageName].override,R);return}}if(m[u.packageName].action==="scope"){i(d,u.packageName,J(d,u.outFileName),R);return}if(u.shareScope){i(d,u.packageName,J(d,u.outFileName),R);return}R.imports[u.packageName]=J(d,u.outFileName)})}function i(c,m,R,d){d.scopes||(d.scopes={}),d.scopes[c]||(d.scopes[c]={}),d.scopes[c][m]=R}function s(c,m){if(!c.exposes)return;let R=Xe(c.url);c.exposes.forEach(d=>{let u=J(c.name,d.key),$=J(R,d.outFileName);m.imports[u]=$})}}function Yn(o,t){return async(s,c)=>{if(c&&i(s,c))return o.log.debug(7,`Found remote '${c}' in storage, omitting fetch.`),Ie.empty();try{let m=await t.remoteEntryProvider.provide(s);if(o.log.debug(7,`[${m.name}] Fetched from '${m.url}', exposing: ${JSON.stringify(m.exposes)}`),c&&m.name!==c){let R=`Fetched remote '${m.name}' does not match requested '${c}'.`;if(o.strict.strictRemoteEntry)throw o.log.error(7,R),new q("Could not fetch remote entry");o.log.warn(7,R+" Omitting expected name.")}return t.remoteInfoRepo.contains(m.name)&&(m.override=!0,o.log.debug(7,`Overriding existing remote '${c}' with '${s}'.`)),Ie.of(m)}catch(m){return o.log.error(7,`[${c??"unknown"}] Could not fetch remoteEntry from ${s}.`,m),Promise.reject(new q(`[${c??s}] Could not fetch remoteEntry.`))}};function i(s,c){return t.remoteInfoRepo.tryGet(c).map(m=>o.profile.overrideCachedRemotes!=="always"||!o.profile.overrideCachedRemotesIfURLMatches&&s===J(m.scopeUrl,"remoteEntry.json")).orElse(!1)}}function Jn(o,t){return d=>{try{d?.override&&i(d),s(d);let u=c(d);return Promise.resolve({entry:d,actions:u})}catch(u){return Promise.reject(u)}};function i(d){t.remoteInfoRepo.remove(d.name),t.scopedExternalsRepo.remove(d.name),t.sharedExternalsRepo.removeFromAllScopes(d.name)}function s({name:d,url:u,exposes:$}){t.remoteInfoRepo.addOrUpdate(d,{scopeUrl:Xe(u),exposes:Object.values($??[]).map(v=>({moduleName:v.key,file:v.outFileName}))})}function c(d){let u={};return d.shared.forEach($=>{if(!$.version||!t.versionCheck.isValidSemver($.version)){let v=`[${d.name}][${$.packageName}] Version '${$.version}' is not a valid version.`;if(o.strict.strictExternalVersion)throw o.log.error(8,v),new q(`Could not process remote '${d.name}'`);o.log.warn(8,v)}if($.singleton){let{action:v,sharedVersion:x}=m(d.name,$);u[$.packageName]={action:v},v==="skip"&&$.shareScope&&x?.remotes[0]?.file&&(u[$.packageName].override=t.remoteInfoRepo.tryGet(x.remotes[0].name).map(X=>J(X.scopeUrl,x.remotes[0].file)).orThrow(()=>(o.log.error(8,`[${$.shareScope??le}][${d.name}][${$.packageName}@${$.version}][override] Remote name not found in cache.`),new q(`Could not find override url from remote ${x.remotes[0].name}`))))}else R(d.name,$)}),u}function m(d,u){let $=t.sharedExternalsRepo.tryGet(u.packageName,u.shareScope).orElse({dirty:!1,versions:[]}),v="skip",x=u.version??t.versionCheck.smallestVersion(u.requiredVersion),X={file:u.outFileName,strictVersion:u.strictVersion,requiredVersion:u.requiredVersion||x,name:d,cached:!1};t.sharedExternalsRepo.scopeType(u.shareScope)==="strict"&&(X.requiredVersion=x,v="share");let K=$.versions.find(F=>F.action==="share"),N=!K||t.versionCheck.isCompatible(K.tag,X.requiredVersion);if(v==="skip"&&!N&&X.strictVersion){v="scope";let F=`[${u.shareScope??le}][${d}] ${u.packageName}@${u.version} Is not compatible with existing ${u.packageName}@${K.tag} requiredRange '${K.remotes[0]?.requiredVersion}'`;if(o.strict.strictExternalCompatibility)throw o.log.error(8,F),new q(`Could not process remote '${d}'`);o.log.warn(8,F)}let D=$.versions.find(F=>F.tag===x);if(D){if(X.strictVersion&&D.remotes[0].requiredVersion!==X.requiredVersion){let F=`[${d}][${u.packageName}@${u.version}] Required version '${X.requiredVersion}' does not match existing '${D.remotes[0].requiredVersion}'`;if(o.strict.strictExternalCompatibility)throw o.log.error(8,F),new q(`Could not process remote '${d}'`);o.log.warn(8,F)}D.remotes.push(X)}else K||(v="share"),X.cached=v!=="skip",$.versions.push({tag:x,action:v,host:!1,remotes:[X]});return t.sharedExternalsRepo.addOrUpdate(u.packageName,{dirty:$.dirty,versions:$.versions.sort((F,H)=>t.versionCheck.compare(H.tag,F.tag))},u.shareScope),{action:v,sharedVersion:K}}function R(d,u){t.scopedExternalsRepo.addExternal(d,u.packageName,{tag:u.version??t.versionCheck.smallestVersion(u.requiredVersion),file:u.outFileName})}}var ya=({config:o,adapters:t})=>({getRemoteEntry:Yn(o,t),updateCache:Jn(o,t),convertToImportMap:Bn(o),commitChanges:Mt(o,t)}),zn=({config:o,adapters:t})=>({flow:ya({config:o,adapters:t}),adapters:t,config:o}),Kn=({flow:o,adapters:t,config:i})=>{let s=async m=>o.updateCache(m).then(o.convertToImportMap).then(o.commitChanges),c=(m,R)=>o.getRemoteEntry(m,R).then(d=>d.map(s).orElse(Promise.resolve())).then(()=>({config:i,adapters:t,initRemoteEntry:c}));return c};var Zn=(o,t={})=>{let{adapters:i,config:s}=Pn(Wn(t)),c=d=>s.log.debug(0,d,{remotes:{...i.remoteInfoRepo.getAll()},"shared-externals":i.sharedExternalsRepo.getScopes({includeGlobal:!0}).reduce((u,$)=>({...u,[$]:i.sharedExternalsRepo.getFromScope($)}),{}),"scoped-externals":i.scopedExternalsRepo.getAll()}),m=Io(So({adapters:i,config:s})),R=Kn(zn({config:s,adapters:i}));return m(o).then(({loadRemoteModule:d})=>{let u={config:s,adapters:i,loadRemoteModule:d,as:()=>({loadRemoteModule:d}),remote:v=>({loadModule:x=>d(v,x)})},$=async(v,x)=>R(v,x).catch(X=>(c(`[dynamic-init][${x??v}] STATE DUMP`),s.strict.strictRemoteEntry?Promise.reject(X):(console.warn("Failed to initialize remote entry, continuing anyway."),Promise.resolve()))).then(()=>({...u,initRemoteEntry:$}));return{...u,initRemoteEntry:$}}).catch(d=>(c("[init] STATE DUMP"),Promise.reject(d)))};var Qn={debug:(o,t,i)=>i?console.log(`[DEBUG][${o}]: ${t}`,i):console.log(`[DEBUG][${o}]: ${t}`),error:(o,t,i)=>i?console.error(`[NF][${o}]: ${t}`,i):console.error(`[NF][${o}]: ${t}`),warn:(o,t,i)=>i?console.warn(`[NF][${o}]: ${t}`,i):console.warn(`[NF][${o}]: ${t}`)};var ei=(o={shimMode:!1})=>({loadModuleFn:t=>importShim(t),setImportMapFn:Ut(o.shimMode?"importmap-shim":"importmap")});(async()=>{let o,t=document.querySelector('meta[name="mfe-feed"]')?.getAttribute("content");t&&(o=t);let i=document.getElementById("mfe-manifest");if(!o&&i?.textContent&&(o=JSON.parse(i.textContent)),!o){console.error(`Please provide a manifest in the HTML file:
13
+ <script type="application/json" id="mfe-manifest">
14
+ {
15
+ "remote1": "http://localhost:3000/remoteEntry.json",
16
+ [...]
17
+ }
18
+ <\/script>`);return}await Zn(o,{logger:Qn,logLevel:"warn",...ei({shimMode:!1})}).then(s=>{window.__NF_REGISTRY__!==void 0&&window.__NF_REGISTRY__.register("orch.init-ready",{...s}),window.loadRemoteModule=s.loadRemoteModule,window.dispatchEvent(new CustomEvent("mfe-loader-available",{detail:{...s}}))})})();
@@ -0,0 +1,6 @@
1
+ import type { NFEventRegistry } from './lib/1.domain/registry/event-registry.contract';
2
+ declare global {
3
+ interface Window {
4
+ __NF_REGISTRY__: NFEventRegistry;
5
+ }
6
+ }
@@ -0,0 +1,14 @@
1
+ import type { SharedVersion, ScopedVersion } from './version.contract';
2
+ export type ExternalName = string;
3
+ export type ScopedExternals = Record<string, ScopedExternal>;
4
+ export declare const GLOBAL_SCOPE = "__GLOBAL__";
5
+ export declare const STRICT_SCOPE = "strict";
6
+ export type SharedExternal = {
7
+ dirty: boolean;
8
+ versions: SharedVersion[];
9
+ };
10
+ export type shareScope = Record<string, SharedExternal>;
11
+ export type SharedExternals = Record<string, shareScope> & {
12
+ [GLOBAL_SCOPE]: shareScope;
13
+ };
14
+ export type ScopedExternal = Record<string, ScopedVersion>;
@@ -0,0 +1,21 @@
1
+ import type { RemoteName } from '../remote/remote-info.contract';
2
+ export type VersionName = string;
3
+ export type Version = {
4
+ tag: VersionName;
5
+ };
6
+ export type ScopedVersion = Version & {
7
+ file: string;
8
+ };
9
+ export type SharedVersion = Version & {
10
+ host: boolean;
11
+ action: SharedVersionAction;
12
+ remotes: SharedVersionMeta[];
13
+ };
14
+ export type SharedVersionAction = 'skip' | 'scope' | 'share';
15
+ export type SharedVersionMeta = {
16
+ file: string;
17
+ requiredVersion: string;
18
+ strictVersion: boolean;
19
+ cached: boolean;
20
+ name: RemoteName;
21
+ };
@@ -0,0 +1,7 @@
1
+ type Imports = Record<string, string>;
2
+ type Scopes = Record<string, Imports>;
3
+ type ImportMap = {
4
+ imports: Imports;
5
+ scopes?: Scopes;
6
+ };
7
+ export { Scopes, Imports, ImportMap };
@@ -0,0 +1,7 @@
1
+ export * from './externals/external.contract';
2
+ export * from './externals/version.contract';
3
+ export * from './import-map/import-map.contract';
4
+ export * from './remote/remote-info.contract';
5
+ export * from './remote/remote-module.contract';
6
+ export * from './remote-entry/manifest.contract';
7
+ export * from './remote-entry/remote-entry.contract';
@@ -0,0 +1,8 @@
1
+ import type { NFEventConsumer, NFEventData, NFEventProvider, NFEventUnsubscribe } from './event.contract';
2
+ export type NFEventRegistry = {
3
+ register<T>(type: string, resource: T | NFEventProvider<T>): Promise<void>;
4
+ onReady<T>(type: string, callback: NFEventConsumer<T>): NFEventUnsubscribe;
5
+ emit<T>(type: string, data: T): void;
6
+ on<T>(type: string, callback: NFEventConsumer<NFEventData<T>>): NFEventUnsubscribe;
7
+ clear(type?: string): void;
8
+ };
@@ -0,0 +1,15 @@
1
+ export type NFEventProvider<T> = () => Promise<T> | T;
2
+ export type NFEventConsumer<T> = (resource: T) => void;
3
+ export type NFEventErrorHandler = (name: string, error: Error) => void;
4
+ export type NFEventData<T = any> = {
5
+ data: T;
6
+ timestamp: number;
7
+ };
8
+ export type NFEventUnsubscribe = () => void;
9
+ export type NFEventStream<T = any> = {
10
+ events: NFEventData<T>[];
11
+ latest: NFEventData<T> | null;
12
+ count: number;
13
+ firstEvent: number | null;
14
+ lastEvent: number | null;
15
+ };
@@ -0,0 +1,3 @@
1
+ export { NFEventRegistry } from './event-registry.contract';
2
+ export { RegistryOptions } from './registry-options.contract';
3
+ export { NFEventProvider, NFEventConsumer, NFEventErrorHandler } from './event.contract';
@@ -0,0 +1,11 @@
1
+ import type { NFEventErrorHandler } from './event.contract';
2
+ export interface RegistryOptions {
3
+ timeout?: number;
4
+ retries?: number;
5
+ onError?: NFEventErrorHandler;
6
+ }
7
+ export type EventStreamOptions = {
8
+ maxEvents?: number;
9
+ ttl?: number;
10
+ enableLatest?: boolean;
11
+ };
@@ -0,0 +1,8 @@
1
+ import type { RemoteModule } from './remote-module.contract';
2
+ export type RemoteName = string;
3
+ export type RemoteScope = string;
4
+ export type RemoteInfo = {
5
+ scopeUrl: RemoteScope;
6
+ exposes: RemoteModule[];
7
+ };
8
+ export type Remotes = Record<string, RemoteInfo>;
@@ -0,0 +1,4 @@
1
+ export type RemoteModule = {
2
+ moduleName: string;
3
+ file: string;
4
+ };
@@ -0,0 +1,3 @@
1
+ import type { RemoteName } from '../remote/remote-info.contract';
2
+ export type RemoteEntryUrl = string;
3
+ export type Manifest = Record<RemoteName, RemoteEntryUrl>;
@@ -0,0 +1,30 @@
1
+ import type { SharedVersionAction } from '../externals/version.contract';
2
+ import type { RemoteEntryUrl } from './manifest.contract';
3
+ import type { ExposesInfo } from '@softarc/native-federation/domain';
4
+ type SharedInfo = {
5
+ singleton: boolean;
6
+ strictVersion: boolean;
7
+ requiredVersion: string;
8
+ version?: string;
9
+ packageName: string;
10
+ outFileName: string;
11
+ shareScope?: string;
12
+ dev?: {
13
+ entryPoint: string;
14
+ };
15
+ };
16
+ interface FederationInfo {
17
+ name: string;
18
+ exposes: ExposesInfo[];
19
+ shared: SharedInfo[];
20
+ }
21
+ type RemoteEntry = FederationInfo & {
22
+ url: RemoteEntryUrl;
23
+ host?: boolean;
24
+ override?: boolean;
25
+ };
26
+ type SharedInfoActions = Record<string, {
27
+ action: SharedVersionAction;
28
+ override?: string;
29
+ }>;
30
+ export { RemoteEntry, FederationInfo, ExposesInfo, SharedInfo, SharedInfoActions };
@@ -0,0 +1,7 @@
1
+ import type { LoggingConfig, LoggingOptions } from './log.contract';
2
+ import type { StorageConfig, StorageOptions } from './storage.contract';
3
+ import type { ImportMapConfig, ImportMapOptions } from './import-map.contract';
4
+ import type { HostConfig, HostOptions } from './host.contract';
5
+ import type { ModeConfig, ModeOptions } from './mode.contract';
6
+ export type ConfigContract = StorageConfig & LoggingConfig & ImportMapConfig & HostConfig & ModeConfig;
7
+ export type NFOptions = StorageOptions & LoggingOptions & ImportMapOptions & HostOptions & ModeOptions;
@@ -0,0 +1,14 @@
1
+ export type HostConfig = {
2
+ hostRemoteEntry: false | {
3
+ name: string;
4
+ url: string;
5
+ cacheTag?: string;
6
+ };
7
+ };
8
+ export type HostOptions = {
9
+ hostRemoteEntry?: string | false | {
10
+ name?: string;
11
+ url: string;
12
+ cacheTag?: string;
13
+ };
14
+ };
@@ -0,0 +1,9 @@
1
+ import type { ImportMap } from '../../1.domain';
2
+ export type ImportMapConfig = {
3
+ loadModuleFn: (url: string) => Promise<unknown>;
4
+ setImportMapFn: SetImportMap;
5
+ };
6
+ export type SetImportMap = (importMap: ImportMap, opts?: {
7
+ override?: boolean;
8
+ }) => Promise<ImportMap>;
9
+ export type ImportMapOptions = Partial<ImportMapConfig>;
@@ -0,0 +1,6 @@
1
+ export { ImportMapOptions, ImportMapConfig } from './import-map.contract';
2
+ export { LoggingOptions, LogLevel, LogType, LoggingConfig, LogHandler, Logger, } from './log.contract';
3
+ export { StorageOptions, StorageEntry, StorageEntryKey, StorageConfig } from './storage.contract';
4
+ export { ModeOptions, ModeConfig } from './mode.contract';
5
+ export { HostOptions, HostConfig } from './host.contract';
6
+ export { NFOptions, ConfigContract } from './config.contract';
@@ -0,0 +1,21 @@
1
+ export declare const LogLevel: {
2
+ debug: number;
3
+ warn: number;
4
+ error: number;
5
+ };
6
+ export type LogType = keyof typeof LogLevel;
7
+ export type Logger = {
8
+ error: (step: number, msg: string, details?: unknown) => void;
9
+ warn: (step: number, msg: string, details?: unknown) => void;
10
+ debug: (step: number, msg: string, details?: unknown) => void;
11
+ };
12
+ export type LogHandler = Logger & {
13
+ level: LogType;
14
+ };
15
+ export type LoggingConfig = {
16
+ log: LogHandler;
17
+ };
18
+ export type LoggingOptions = {
19
+ logger?: Logger;
20
+ logLevel?: LogType;
21
+ };
@@ -0,0 +1,19 @@
1
+ export type ModeProfileConfig = {
2
+ latestSharedExternal: boolean;
3
+ overrideCachedRemotes: 'always' | 'never' | 'init-only';
4
+ overrideCachedRemotesIfURLMatches: boolean;
5
+ };
6
+ export type ModeStrictnessConfig = {
7
+ strictRemoteEntry: boolean;
8
+ strictExternalCompatibility: boolean;
9
+ strictExternalVersion: boolean;
10
+ strictImportMap: boolean;
11
+ };
12
+ export type ModeConfig = {
13
+ strict: ModeStrictnessConfig;
14
+ profile: ModeProfileConfig;
15
+ };
16
+ export type ModeOptions = {
17
+ strict?: Partial<ModeStrictnessConfig> | boolean;
18
+ profile?: Partial<ModeProfileConfig>;
19
+ };
@@ -0,0 +1,6 @@
1
+ export type NFEventRegistryConfig = {
2
+ maxStreams: number;
3
+ maxEvents: number;
4
+ removePercentage: number;
5
+ };
6
+ export type NFEventRegistryOptions = Partial<NFEventRegistryConfig>;
@@ -0,0 +1,18 @@
1
+ type StorageEntry<TValue> = {
2
+ set: (value: TValue) => StorageEntry<TValue>;
3
+ get: () => TValue | undefined;
4
+ clear: () => StorageEntry<TValue>;
5
+ };
6
+ type StorageEntryKey = number | symbol | string;
7
+ type StorageEntryCreator = (namespace: string) => StorageEntryHandler;
8
+ type StorageEntryHandler = <TValue>(key: string, initialValue: TValue) => StorageEntry<TValue>;
9
+ type StorageConfig = {
10
+ storage: StorageEntryHandler;
11
+ clearStorage: boolean;
12
+ };
13
+ type StorageOptions = {
14
+ storage?: StorageEntryCreator;
15
+ clearStorage?: boolean;
16
+ storageNamespace?: string;
17
+ };
18
+ export { StorageEntry, StorageEntryKey, StorageEntryHandler, StorageConfig, StorageOptions, StorageEntryCreator, };
@@ -0,0 +1,2 @@
1
+ import type { RemoteEntry } from '../../../1.domain';
2
+ export type ForAuditingExternals = (remoteEntry: RemoteEntry) => Promise<void>;
@@ -0,0 +1 @@
1
+ export * from './for-auditing-externals.port';
@@ -0,0 +1,13 @@
1
+ import type { ConfigContract } from '../../config';
2
+ import type { ForConvertingToImportMap } from './for-converting-to-import-map';
3
+ import type { ForGettingRemoteEntry } from './for-getting-remote-entry.port';
4
+ import type { ForUpdatingCache } from './for-updating-cache';
5
+ import type { DrivingContract } from '../../driving-ports/driving.contract';
6
+ import type { ForCommittingChanges } from '../init';
7
+ export type DynamicInitDriversContract = {
8
+ getRemoteEntry: ForGettingRemoteEntry;
9
+ updateCache: ForUpdatingCache;
10
+ convertToImportMap: ForConvertingToImportMap;
11
+ commitChanges: ForCommittingChanges;
12
+ };
13
+ export type DynamicInitDriversFactory = (config: ConfigContract, adapters: DrivingContract) => DynamicInitDriversContract;
@@ -0,0 +1,4 @@
1
+ export type DynamicInitResult<TFederationResult = {}> = TFederationResult & {
2
+ initRemoteEntry: (remoteEntryUrl: string, remoteName?: string) => Promise<DynamicInitResult<TFederationResult>>;
3
+ };
4
+ export type DynamicInitFlow = (remoteEntryUrl: string, remoteName?: string) => Promise<DynamicInitResult>;
@@ -0,0 +1,6 @@
1
+ import type { RemoteEntry, SharedInfoActions } from '../../../1.domain';
2
+ import type { ImportMap } from '../../../1.domain/import-map/import-map.contract';
3
+ export type ForConvertingToImportMap = ({ entry, actions, }: {
4
+ entry: RemoteEntry;
5
+ actions: SharedInfoActions;
6
+ }) => Promise<ImportMap>;
@@ -0,0 +1,3 @@
1
+ import type { RemoteEntry } from '../../../1.domain/remote-entry/remote-entry.contract';
2
+ import type { Optional } from '../../../utils/optional';
3
+ export type ForGettingRemoteEntry = (remoteEntryUrl: string, remoteName?: string) => Promise<Optional<RemoteEntry>>;
@@ -0,0 +1,5 @@
1
+ import type { RemoteEntry, SharedInfoActions } from '../../../1.domain/remote-entry/remote-entry.contract';
2
+ export type ForUpdatingCache = (remoteEntries: RemoteEntry) => Promise<{
3
+ entry: RemoteEntry;
4
+ actions: SharedInfoActions;
5
+ }>;
@@ -0,0 +1,5 @@
1
+ export * from './drivers.contract';
2
+ export * from './for-converting-to-import-map';
3
+ export * from './for-getting-remote-entry.port';
4
+ export * from './for-updating-cache';
5
+ export * from './flow.contract';
@@ -0,0 +1,7 @@
1
+ import type { DrivingContract } from '../../2.app/driving-ports/driving.contract';
2
+ import type { ConfigContract } from '../../2.app/config/config.contract';
3
+ export type FLOW_FACTORY<TDrivers> = {
4
+ flow: TDrivers;
5
+ adapters: DrivingContract;
6
+ config: ConfigContract;
7
+ };
@@ -0,0 +1,17 @@
1
+ import type { ForCommittingChanges } from './for-committing-changes.port';
2
+ import type { ForDeterminingSharedExternals } from './for-determining-shared-externals.port';
3
+ import type { ForExposingModuleLoader } from './for-exposing-module-loader.port';
4
+ import type { ForGeneratingImportMap } from './for-generating-import-map';
5
+ import type { ForGettingRemoteEntries } from './for-getting-remote-entries.port';
6
+ import type { ForProcessingRemoteEntries } from './for-processing-remote-entries.port';
7
+ import type { ConfigContract } from '../../config';
8
+ import type { DrivingContract } from '../../driving-ports/driving.contract';
9
+ export type InitDriversContract = {
10
+ getRemoteEntries: ForGettingRemoteEntries;
11
+ processRemoteEntries: ForProcessingRemoteEntries;
12
+ determineSharedExternals: ForDeterminingSharedExternals;
13
+ generateImportMap: ForGeneratingImportMap;
14
+ commitChanges: ForCommittingChanges;
15
+ exposeModuleLoader: ForExposingModuleLoader;
16
+ };
17
+ export type InitDriversFactory = (config: ConfigContract, adapters: DrivingContract) => InitDriversContract;
@@ -0,0 +1,6 @@
1
+ import type { Manifest } from '../../../1.domain';
2
+ import type { LoadRemoteModule } from '../../../init-federation.contract';
3
+ export type InitResult = {
4
+ loadRemoteModule: LoadRemoteModule;
5
+ };
6
+ export type InitFlow = (remotesOrManifestUrl: string | Manifest) => Promise<InitResult>;
@@ -0,0 +1,2 @@
1
+ import type { ImportMap } from '../../../1.domain/import-map/import-map.contract';
2
+ export type ForCommittingChanges = (importMap: ImportMap) => Promise<void>;
@@ -0,0 +1 @@
1
+ export type ForDeterminingSharedExternals = () => Promise<void>;
@@ -0,0 +1,2 @@
1
+ import type { LoadRemoteModule } from '../../../init-federation.contract';
2
+ export type ForExposingModuleLoader = () => Promise<LoadRemoteModule>;