@module-federation/bridge-vue3 0.14.3 → 0.15.0

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.
package/dist/index.js CHANGED
@@ -4,14 +4,14 @@ import * as VueRouter from "vue-router";
4
4
  import { useRoute } from "vue-router";
5
5
  function _extends$2() {
6
6
  return _extends$2 = Object.assign || function(t) {
7
- for (var r = 1; r < arguments.length; r++) {
8
- var o = arguments[r];
9
- for (var s in o) Object.prototype.hasOwnProperty.call(o, s) && (t[s] = o[s]);
7
+ for (var o = 1; o < arguments.length; o++) {
8
+ var r = arguments[o];
9
+ for (var s in r) Object.prototype.hasOwnProperty.call(r, s) && (t[s] = r[s]);
10
10
  }
11
11
  return t;
12
12
  }, _extends$2.apply(this, arguments);
13
13
  }
14
- const MANIFEST_EXT = ".json", BROWSER_LOG_KEY = "FEDERATION_DEBUG", BROWSER_LOG_VALUE = "1", SEPARATOR = ":";
14
+ const MANIFEST_EXT = ".json", BROWSER_LOG_KEY = "FEDERATION_DEBUG", SEPARATOR = ":";
15
15
  function isBrowserEnv() {
16
16
  return typeof window < "u" && typeof window.document < "u";
17
17
  }
@@ -22,7 +22,7 @@ function isReactNativeEnv() {
22
22
  function isBrowserDebug() {
23
23
  try {
24
24
  if (isBrowserEnv() && window.localStorage)
25
- return localStorage.getItem(BROWSER_LOG_KEY) === BROWSER_LOG_VALUE;
25
+ return !!localStorage.getItem(BROWSER_LOG_KEY);
26
26
  } catch {
27
27
  return !1;
28
28
  }
@@ -32,11 +32,11 @@ function isDebugMode() {
32
32
  return typeof process < "u" && process.env && process.env.FEDERATION_DEBUG ? !!process.env.FEDERATION_DEBUG : typeof FEDERATION_DEBUG < "u" && FEDERATION_DEBUG ? !0 : isBrowserDebug();
33
33
  }
34
34
  const LOG_CATEGORY$1 = "[ Federation Runtime ]", composeKeyWithSeparator = function(...n) {
35
- return n.length ? n.reduce((t, r) => r ? t ? `${t}${SEPARATOR}${r}` : r : t, "") : "";
35
+ return n.length ? n.reduce((t, o) => o ? t ? `${t}${SEPARATOR}${o}` : o : t, "") : "";
36
36
  }, getResourceUrl = (n, t) => {
37
37
  if ("getPublicPath" in n) {
38
- let r;
39
- return n.getPublicPath.startsWith("function") ? r = new Function("return " + n.getPublicPath)()() : r = new Function(n.getPublicPath)(), `${r}${t}`;
38
+ let o;
39
+ return n.getPublicPath.startsWith("function") ? o = new Function("return " + n.getPublicPath)()() : o = new Function(n.getPublicPath)(), `${o}${t}`;
40
40
  } else return "publicPath" in n ? !isBrowserEnv() && !isReactNativeEnv() && "ssrPublicPath" in n ? `${n.ssrPublicPath}${t}` : `${n.publicPath}${t}` : (console.warn("Cannot get resource URL. If in debug mode, please ignore.", n, t), "");
41
41
  }, warn$1 = (n) => {
42
42
  console.warn(`${LOG_CATEGORY$1}: ${n}`);
@@ -51,81 +51,81 @@ function safeToString(n) {
51
51
  const simpleJoinRemoteEntry = (n, t) => {
52
52
  if (!n)
53
53
  return t;
54
- const o = ((s) => {
54
+ const r = ((s) => {
55
55
  if (s === ".")
56
56
  return "";
57
57
  if (s.startsWith("./"))
58
58
  return s.replace("./", "");
59
59
  if (s.startsWith("/")) {
60
- const l = s.slice(1);
61
- return l.endsWith("/") ? l.slice(0, -1) : l;
60
+ const a = s.slice(1);
61
+ return a.endsWith("/") ? a.slice(0, -1) : a;
62
62
  }
63
63
  return s;
64
64
  })(n);
65
- return o ? o.endsWith("/") ? `${o}${t}` : `${o}/${t}` : t;
65
+ return r ? r.endsWith("/") ? `${r}${t}` : `${r}/${t}` : t;
66
66
  };
67
67
  function inferAutoPublicPath(n) {
68
68
  return n.replace(/#.*$/, "").replace(/\?.*$/, "").replace(/\/[^\/]+$/, "/");
69
69
  }
70
70
  function generateSnapshotFromManifest(n, t = {}) {
71
- var r, o;
72
- const { remotes: s = {}, overrides: l = {}, version: a } = t;
71
+ var o, r;
72
+ const { remotes: s = {}, overrides: a = {}, version: l } = t;
73
73
  let i;
74
- const c = () => "publicPath" in n.metaData ? n.metaData.publicPath === "auto" && a ? inferAutoPublicPath(a) : n.metaData.publicPath : n.metaData.getPublicPath, u = Object.keys(l);
75
- let d = {};
74
+ const c = () => "publicPath" in n.metaData ? n.metaData.publicPath === "auto" && l ? inferAutoPublicPath(l) : n.metaData.publicPath : n.metaData.getPublicPath, u = Object.keys(a);
75
+ let p = {};
76
76
  if (!Object.keys(s).length) {
77
- var p;
78
- d = ((p = n.remotes) == null ? void 0 : p.reduce((R, A) => {
77
+ var d;
78
+ p = ((d = n.remotes) == null ? void 0 : d.reduce((R, A) => {
79
79
  let T;
80
80
  const $ = A.federationContainerName;
81
- return u.includes($) ? T = l[$] : "version" in A ? T = A.version : T = A.entry, R[$] = {
81
+ return u.includes($) ? T = a[$] : "version" in A ? T = A.version : T = A.entry, R[$] = {
82
82
  matchedVersion: T
83
83
  }, R;
84
84
  }, {})) || {};
85
85
  }
86
- Object.keys(s).forEach((R) => d[R] = {
86
+ Object.keys(s).forEach((R) => p[R] = {
87
87
  // overrides will override dependencies
88
- matchedVersion: u.includes(R) ? l[R] : s[R]
88
+ matchedVersion: u.includes(R) ? a[R] : s[R]
89
89
  });
90
- const { remoteEntry: { path: m, name: y, type: E }, types: b, buildInfo: { buildVersion: _ }, globalName: g, ssrRemoteEntry: v } = n.metaData, { exposes: S } = n;
91
- let I = {
92
- version: a || "",
90
+ const { remoteEntry: { path: m, name: y, type: g }, types: E, buildInfo: { buildVersion: _ }, globalName: b, ssrRemoteEntry: v } = n.metaData, { exposes: I } = n;
91
+ let S = {
92
+ version: l || "",
93
93
  buildVersion: _,
94
- globalName: g,
94
+ globalName: b,
95
95
  remoteEntry: simpleJoinRemoteEntry(m, y),
96
- remoteEntryType: E,
97
- remoteTypes: simpleJoinRemoteEntry(b.path, b.name),
98
- remoteTypesZip: b.zip || "",
99
- remoteTypesAPI: b.api || "",
100
- remotesInfo: d,
96
+ remoteEntryType: g,
97
+ remoteTypes: simpleJoinRemoteEntry(E.path, E.name),
98
+ remoteTypesZip: E.zip || "",
99
+ remoteTypesAPI: E.api || "",
100
+ remotesInfo: p,
101
101
  shared: n == null ? void 0 : n.shared.map((R) => ({
102
102
  assets: R.assets,
103
103
  sharedName: R.name,
104
104
  version: R.version
105
105
  })),
106
- modules: S == null ? void 0 : S.map((R) => ({
106
+ modules: I == null ? void 0 : I.map((R) => ({
107
107
  moduleName: R.name,
108
108
  modulePath: R.path,
109
109
  assets: R.assets
110
110
  }))
111
111
  };
112
- if ((r = n.metaData) != null && r.prefetchInterface) {
112
+ if ((o = n.metaData) != null && o.prefetchInterface) {
113
113
  const R = n.metaData.prefetchInterface;
114
- I = _extends$2({}, I, {
114
+ S = _extends$2({}, S, {
115
115
  prefetchInterface: R
116
116
  });
117
117
  }
118
- if ((o = n.metaData) != null && o.prefetchEntry) {
118
+ if ((r = n.metaData) != null && r.prefetchEntry) {
119
119
  const { path: R, name: A, type: T } = n.metaData.prefetchEntry;
120
- I = _extends$2({}, I, {
120
+ S = _extends$2({}, S, {
121
121
  prefetchEntry: simpleJoinRemoteEntry(R, A),
122
122
  prefetchEntryType: T
123
123
  });
124
124
  }
125
- if ("publicPath" in n.metaData ? i = _extends$2({}, I, {
125
+ if ("publicPath" in n.metaData ? i = _extends$2({}, S, {
126
126
  publicPath: c(),
127
127
  ssrPublicPath: n.metaData.ssrPublicPath
128
- }) : i = _extends$2({}, I, {
128
+ }) : i = _extends$2({}, S, {
129
129
  getPublicPath: c()
130
130
  }), v) {
131
131
  const R = simpleJoinRemoteEntry(v.path, v.name);
@@ -171,22 +171,22 @@ function createLogger(n) {
171
171
  async function safeWrapper(n, t) {
172
172
  try {
173
173
  return await n();
174
- } catch (r) {
175
- warn$1(r);
174
+ } catch (o) {
175
+ warn$1(o);
176
176
  return;
177
177
  }
178
178
  }
179
179
  function isStaticResourcesEqual(n, t) {
180
- const r = /^(https?:)?\/\//i, o = n.replace(r, "").replace(/\/$/, ""), s = t.replace(r, "").replace(/\/$/, "");
181
- return o === s;
180
+ const o = /^(https?:)?\/\//i, r = n.replace(o, "").replace(/\/$/, ""), s = t.replace(o, "").replace(/\/$/, "");
181
+ return r === s;
182
182
  }
183
183
  function createScript(n) {
184
- let t = null, r = !0, o = 2e4, s;
185
- const l = document.getElementsByTagName("script");
186
- for (let i = 0; i < l.length; i++) {
187
- const c = l[i], u = c.getAttribute("src");
184
+ let t = null, o = !0, r = 2e4, s;
185
+ const a = document.getElementsByTagName("script");
186
+ for (let i = 0; i < a.length; i++) {
187
+ const c = a[i], u = c.getAttribute("src");
188
188
  if (u && isStaticResourcesEqual(u, n.url)) {
189
- t = c, r = !1;
189
+ t = c, o = !1;
190
190
  break;
191
191
  }
192
192
  }
@@ -194,99 +194,99 @@ function createScript(n) {
194
194
  const i = n.attrs;
195
195
  t = document.createElement("script"), t.type = (i == null ? void 0 : i.type) === "module" ? "module" : "text/javascript";
196
196
  let c;
197
- n.createScriptHook && (c = n.createScriptHook(n.url, n.attrs), c instanceof HTMLScriptElement ? t = c : typeof c == "object" && ("script" in c && c.script && (t = c.script), "timeout" in c && c.timeout && (o = c.timeout))), t.src || (t.src = n.url), i && !c && Object.keys(i).forEach((u) => {
197
+ n.createScriptHook && (c = n.createScriptHook(n.url, n.attrs), c instanceof HTMLScriptElement ? t = c : typeof c == "object" && ("script" in c && c.script && (t = c.script), "timeout" in c && c.timeout && (r = c.timeout))), t.src || (t.src = n.url), i && !c && Object.keys(i).forEach((u) => {
198
198
  t && (u === "async" || u === "defer" ? t[u] = i[u] : t.getAttribute(u) || t.setAttribute(u, i[u]));
199
199
  });
200
200
  }
201
- const a = async (i, c) => {
201
+ const l = async (i, c) => {
202
202
  clearTimeout(s);
203
203
  const u = () => {
204
204
  (c == null ? void 0 : c.type) === "error" ? n != null && n.onErrorCallback && (n == null || n.onErrorCallback(c)) : n != null && n.cb && (n == null || n.cb());
205
205
  };
206
206
  if (t && (t.onerror = null, t.onload = null, safeWrapper(() => {
207
- const { needDeleteScript: d = !0 } = n;
208
- d && t != null && t.parentNode && t.parentNode.removeChild(t);
207
+ const { needDeleteScript: p = !0 } = n;
208
+ p && t != null && t.parentNode && t.parentNode.removeChild(t);
209
209
  }), i && typeof i == "function")) {
210
- const d = i(c);
211
- if (d instanceof Promise) {
212
- const p = await d;
213
- return u(), p;
210
+ const p = i(c);
211
+ if (p instanceof Promise) {
212
+ const d = await p;
213
+ return u(), d;
214
214
  }
215
- return u(), d;
215
+ return u(), p;
216
216
  }
217
217
  u();
218
218
  };
219
- return t.onerror = a.bind(null, t.onerror), t.onload = a.bind(null, t.onload), s = setTimeout(() => {
220
- a(null, new Error(`Remote script "${n.url}" time-outed.`));
221
- }, o), {
219
+ return t.onerror = l.bind(null, t.onerror), t.onload = l.bind(null, t.onload), s = setTimeout(() => {
220
+ l(null, new Error(`Remote script "${n.url}" time-outed.`));
221
+ }, r), {
222
222
  script: t,
223
- needAttach: r
223
+ needAttach: o
224
224
  };
225
225
  }
226
226
  function createLink(n) {
227
- let t = null, r = !0;
228
- const o = document.getElementsByTagName("link");
229
- for (let l = 0; l < o.length; l++) {
230
- const a = o[l], i = a.getAttribute("href"), c = a.getAttribute("rel");
227
+ let t = null, o = !0;
228
+ const r = document.getElementsByTagName("link");
229
+ for (let a = 0; a < r.length; a++) {
230
+ const l = r[a], i = l.getAttribute("href"), c = l.getAttribute("rel");
231
231
  if (i && isStaticResourcesEqual(i, n.url) && c === n.attrs.rel) {
232
- t = a, r = !1;
232
+ t = l, o = !1;
233
233
  break;
234
234
  }
235
235
  }
236
236
  if (!t) {
237
237
  t = document.createElement("link"), t.setAttribute("href", n.url);
238
- let l;
239
- const a = n.attrs;
240
- n.createLinkHook && (l = n.createLinkHook(n.url, a), l instanceof HTMLLinkElement && (t = l)), a && !l && Object.keys(a).forEach((i) => {
241
- t && !t.getAttribute(i) && t.setAttribute(i, a[i]);
238
+ let a;
239
+ const l = n.attrs;
240
+ n.createLinkHook && (a = n.createLinkHook(n.url, l), a instanceof HTMLLinkElement && (t = a)), l && !a && Object.keys(l).forEach((i) => {
241
+ t && !t.getAttribute(i) && t.setAttribute(i, l[i]);
242
242
  });
243
243
  }
244
- const s = (l, a) => {
244
+ const s = (a, l) => {
245
245
  const i = () => {
246
- (a == null ? void 0 : a.type) === "error" ? n != null && n.onErrorCallback && (n == null || n.onErrorCallback(a)) : n != null && n.cb && (n == null || n.cb());
246
+ (l == null ? void 0 : l.type) === "error" ? n != null && n.onErrorCallback && (n == null || n.onErrorCallback(l)) : n != null && n.cb && (n == null || n.cb());
247
247
  };
248
248
  if (t && (t.onerror = null, t.onload = null, safeWrapper(() => {
249
249
  const { needDeleteLink: c = !0 } = n;
250
250
  c && t != null && t.parentNode && t.parentNode.removeChild(t);
251
- }), l)) {
252
- const c = l(a);
251
+ }), a)) {
252
+ const c = a(l);
253
253
  return i(), c;
254
254
  }
255
255
  i();
256
256
  };
257
257
  return t.onerror = s.bind(null, t.onerror), t.onload = s.bind(null, t.onload), {
258
258
  link: t,
259
- needAttach: r
259
+ needAttach: o
260
260
  };
261
261
  }
262
262
  function loadScript(n, t) {
263
- const { attrs: r = {}, createScriptHook: o } = t;
264
- return new Promise((s, l) => {
265
- const { script: a, needAttach: i } = createScript({
263
+ const { attrs: o = {}, createScriptHook: r } = t;
264
+ return new Promise((s, a) => {
265
+ const { script: l, needAttach: i } = createScript({
266
266
  url: n,
267
267
  cb: s,
268
- onErrorCallback: l,
268
+ onErrorCallback: a,
269
269
  attrs: _extends$2({
270
270
  fetchpriority: "high"
271
- }, r),
272
- createScriptHook: o,
271
+ }, o),
272
+ createScriptHook: r,
273
273
  needDeleteScript: !0
274
274
  });
275
- i && document.head.appendChild(a);
275
+ i && document.head.appendChild(l);
276
276
  });
277
277
  }
278
278
  function importNodeModule(n) {
279
279
  if (!n)
280
280
  throw new Error("import specifier is required");
281
- return new Function("name", "return import(name)")(n).then((r) => r).catch((r) => {
282
- throw console.error(`Error importing module ${n}:`, r), r;
281
+ return new Function("name", "return import(name)")(n).then((o) => o).catch((o) => {
282
+ throw console.error(`Error importing module ${n}:`, o), o;
283
283
  });
284
284
  }
285
285
  const loadNodeFetch = async () => {
286
286
  const n = await importNodeModule("node-fetch");
287
287
  return n.default || n;
288
- }, lazyLoaderHookFetch = async (n, t, r) => {
289
- const s = await ((l, a) => r.lifecycle.fetch.emit(l, a))(n, t || {});
288
+ }, lazyLoaderHookFetch = async (n, t, o) => {
289
+ const s = await ((a, l) => o.lifecycle.fetch.emit(a, l))(n, t || {});
290
290
  return !s || !(s instanceof Response) ? (typeof fetch > "u" ? await loadNodeFetch() : fetch)(n, t || {}) : s;
291
291
  }, createScriptNode = typeof ENV_TARGET > "u" || ENV_TARGET !== "web" ? (url, cb, attrs, loaderHook) => {
292
292
  if (loaderHook != null && loaderHook.createScriptHook) {
@@ -344,66 +344,66 @@ const loadNodeFetch = async () => {
344
344
  }).catch((n) => {
345
345
  cb(n);
346
346
  });
347
- } : (n, t, r, o) => {
347
+ } : (n, t, o, r) => {
348
348
  t(new Error("createScriptNode is disabled in non-Node.js environment"));
349
- }, loadScriptNode = typeof ENV_TARGET > "u" || ENV_TARGET !== "web" ? (n, t) => new Promise((r, o) => {
350
- createScriptNode(n, (s, l) => {
349
+ }, loadScriptNode = typeof ENV_TARGET > "u" || ENV_TARGET !== "web" ? (n, t) => new Promise((o, r) => {
350
+ createScriptNode(n, (s, a) => {
351
351
  if (s)
352
- o(s);
352
+ r(s);
353
353
  else {
354
- var a, i;
355
- const c = (t == null || (a = t.attrs) == null ? void 0 : a.globalName) || `__FEDERATION_${t == null || (i = t.attrs) == null ? void 0 : i.name}:custom__`, u = globalThis[c] = l;
356
- r(u);
354
+ var l, i;
355
+ const c = (t == null || (l = t.attrs) == null ? void 0 : l.globalName) || `__FEDERATION_${t == null || (i = t.attrs) == null ? void 0 : i.name}:custom__`, u = globalThis[c] = a;
356
+ o(u);
357
357
  }
358
358
  }, t.attrs, t.loaderHook);
359
359
  }) : (n, t) => {
360
360
  throw new Error("loadScriptNode is disabled in non-Node.js environment");
361
361
  };
362
362
  async function loadModule(n, t) {
363
- const { fetch: r, vm: o } = t, l = await (await r(n)).text(), a = new o.SourceTextModule(l, {
363
+ const { fetch: o, vm: r } = t, a = await (await o(n)).text(), l = new r.SourceTextModule(a, {
364
364
  // @ts-ignore
365
365
  importModuleDynamically: async (i, c) => {
366
366
  const u = new URL(i, n).href;
367
367
  return loadModule(u, t);
368
368
  }
369
369
  });
370
- return await a.link(async (i) => {
370
+ return await l.link(async (i) => {
371
371
  const c = new URL(i, n).href;
372
372
  return await loadModule(c, t);
373
- }), a;
373
+ }), l;
374
374
  }
375
375
  const LoggerInstance = createLogger("[ Module Federation Bridge Vue3 ]");
376
376
  function _extends$1() {
377
377
  return _extends$1 = Object.assign || function(t) {
378
- for (var r = 1; r < arguments.length; r++) {
379
- var o = arguments[r];
380
- for (var s in o) Object.prototype.hasOwnProperty.call(o, s) && (t[s] = o[s]);
378
+ for (var o = 1; o < arguments.length; o++) {
379
+ var r = arguments[o];
380
+ for (var s in r) Object.prototype.hasOwnProperty.call(r, s) && (t[s] = r[s]);
381
381
  }
382
382
  return t;
383
383
  }, _extends$1.apply(this, arguments);
384
384
  }
385
385
  function _object_without_properties_loose(n, t) {
386
386
  if (n == null) return {};
387
- var r = {}, o = Object.keys(n), s, l;
388
- for (l = 0; l < o.length; l++)
389
- s = o[l], !(t.indexOf(s) >= 0) && (r[s] = n[s]);
390
- return r;
387
+ var o = {}, r = Object.keys(n), s, a;
388
+ for (a = 0; a < r.length; a++)
389
+ s = r[a], !(t.indexOf(s) >= 0) && (o[s] = n[s]);
390
+ return o;
391
391
  }
392
- const RUNTIME_001 = "RUNTIME-001", RUNTIME_002 = "RUNTIME-002", RUNTIME_003 = "RUNTIME-003", RUNTIME_004 = "RUNTIME-004", RUNTIME_005 = "RUNTIME-005", RUNTIME_006 = "RUNTIME-006", RUNTIME_007 = "RUNTIME-007", RUNTIME_008 = "RUNTIME-008", TYPE_001 = "TYPE-001", BUILD_001 = "BUILD-001", getDocsUrl = (n) => `View the docs to see how to solve: https://module-federation.io/guide/troubleshooting/${n.split("-")[0].toLowerCase()}/${n}`, getShortErrorMsg = (n, t, r, o) => {
392
+ const RUNTIME_001 = "RUNTIME-001", RUNTIME_002 = "RUNTIME-002", RUNTIME_003 = "RUNTIME-003", RUNTIME_004 = "RUNTIME-004", RUNTIME_005 = "RUNTIME-005", RUNTIME_006 = "RUNTIME-006", RUNTIME_007 = "RUNTIME-007", RUNTIME_008 = "RUNTIME-008", TYPE_001 = "TYPE-001", BUILD_001 = "BUILD-001", getDocsUrl = (n) => `View the docs to see how to solve: https://module-federation.io/guide/troubleshooting/${n.split("-")[0].toLowerCase()}/${n}`, getShortErrorMsg = (n, t, o, r) => {
393
393
  const s = [
394
394
  `${[
395
395
  t[n]
396
396
  ]} #${n}`
397
397
  ];
398
- return r && s.push(`args: ${JSON.stringify(r)}`), s.push(getDocsUrl(n)), o && s.push(`Original Error Message:
399
- ${o}`), s.join(`
398
+ return o && s.push(`args: ${JSON.stringify(o)}`), s.push(getDocsUrl(n)), r && s.push(`Original Error Message:
399
+ ${r}`), s.join(`
400
400
  `);
401
401
  };
402
402
  function _extends() {
403
403
  return _extends = Object.assign || function(t) {
404
- for (var r = 1; r < arguments.length; r++) {
405
- var o = arguments[r];
406
- for (var s in o) Object.prototype.hasOwnProperty.call(o, s) && (t[s] = o[s]);
404
+ for (var o = 1; o < arguments.length; o++) {
405
+ var r = arguments[o];
406
+ for (var s in r) Object.prototype.hasOwnProperty.call(r, s) && (t[s] = r[s]);
407
407
  }
408
408
  return t;
409
409
  }, _extends.apply(this, arguments);
@@ -434,7 +434,7 @@ function warn(n) {
434
434
  n instanceof Error && (n.message = `${LOG_CATEGORY}: ${n.message}`), logger.warn(n);
435
435
  }
436
436
  function addUniqueItem(n, t) {
437
- return n.findIndex((r) => r === t) === -1 && n.push(t), n;
437
+ return n.findIndex((o) => o === t) === -1 && n.push(t), n;
438
438
  }
439
439
  function getFMId(n) {
440
440
  return "version" in n && n.version ? `${n.name}:${n.version}` : "entry" in n && n.entry ? `${n.name}:${n.entry}` : `${n.name}`;
@@ -474,8 +474,8 @@ function getRemoteEntryInfoFromSnapshot(n) {
474
474
  } : t;
475
475
  }
476
476
  const processModuleAlias = (n, t) => {
477
- let r;
478
- return n.endsWith("/") ? r = n.slice(0, -1) : r = n, t.startsWith(".") && (t = t.slice(1)), r = r + t, r;
477
+ let o;
478
+ return n.endsWith("/") ? o = n.slice(0, -1) : o = n, t.startsWith(".") && (t = t.slice(1)), o = o + t, o;
479
479
  }, CurrentGlobal = typeof globalThis == "object" ? globalThis : window, nativeGlobal = (() => {
480
480
  try {
481
481
  return document.defaultView;
@@ -483,9 +483,9 @@ const processModuleAlias = (n, t) => {
483
483
  return CurrentGlobal;
484
484
  }
485
485
  })(), Global = nativeGlobal;
486
- function definePropertyGlobalVal(n, t, r) {
486
+ function definePropertyGlobalVal(n, t, o) {
487
487
  Object.defineProperty(n, t, {
488
- value: r,
488
+ value: o,
489
489
  configurable: !1,
490
490
  writable: !0
491
491
  });
@@ -496,7 +496,7 @@ function includeOwnProperty(n, t) {
496
496
  includeOwnProperty(CurrentGlobal, "__GLOBAL_LOADING_REMOTE_ENTRY__") || definePropertyGlobalVal(CurrentGlobal, "__GLOBAL_LOADING_REMOTE_ENTRY__", {});
497
497
  const globalLoading = CurrentGlobal.__GLOBAL_LOADING_REMOTE_ENTRY__;
498
498
  function setGlobalDefaultVal(n) {
499
- var t, r, o, s, l, a;
499
+ var t, o, r, s, a, l;
500
500
  includeOwnProperty(n, "__VMOK__") && !includeOwnProperty(n, "__FEDERATION__") && definePropertyGlobalVal(n, "__FEDERATION__", n.__VMOK__), includeOwnProperty(n, "__FEDERATION__") || (definePropertyGlobalVal(n, "__FEDERATION__", {
501
501
  __GLOBAL_PLUGIN__: [],
502
502
  __INSTANCES__: [],
@@ -508,20 +508,20 @@ function setGlobalDefaultVal(n) {
508
508
  var i;
509
509
  (i = (t = n.__FEDERATION__).__GLOBAL_PLUGIN__) != null || (t.__GLOBAL_PLUGIN__ = []);
510
510
  var c;
511
- (c = (r = n.__FEDERATION__).__INSTANCES__) != null || (r.__INSTANCES__ = []);
511
+ (c = (o = n.__FEDERATION__).__INSTANCES__) != null || (o.__INSTANCES__ = []);
512
512
  var u;
513
- (u = (o = n.__FEDERATION__).moduleInfo) != null || (o.moduleInfo = {});
514
- var d;
515
- (d = (s = n.__FEDERATION__).__SHARE__) != null || (s.__SHARE__ = {});
513
+ (u = (r = n.__FEDERATION__).moduleInfo) != null || (r.moduleInfo = {});
516
514
  var p;
517
- (p = (l = n.__FEDERATION__).__MANIFEST_LOADING__) != null || (l.__MANIFEST_LOADING__ = {});
515
+ (p = (s = n.__FEDERATION__).__SHARE__) != null || (s.__SHARE__ = {});
516
+ var d;
517
+ (d = (a = n.__FEDERATION__).__MANIFEST_LOADING__) != null || (a.__MANIFEST_LOADING__ = {});
518
518
  var m;
519
- (m = (a = n.__FEDERATION__).__PRELOADED_MAP__) != null || (a.__PRELOADED_MAP__ = /* @__PURE__ */ new Map());
519
+ (m = (l = n.__FEDERATION__).__PRELOADED_MAP__) != null || (l.__PRELOADED_MAP__ = /* @__PURE__ */ new Map());
520
520
  }
521
521
  setGlobalDefaultVal(CurrentGlobal);
522
522
  setGlobalDefaultVal(nativeGlobal);
523
523
  function setGlobalFederationConstructor(n, t = isDebugMode()) {
524
- t && (CurrentGlobal.__FEDERATION__.__DEBUG_CONSTRUCTOR__ = n, CurrentGlobal.__FEDERATION__.__DEBUG_CONSTRUCTOR_VERSION__ = "0.14.3");
524
+ t && (CurrentGlobal.__FEDERATION__.__DEBUG_CONSTRUCTOR__ = n, CurrentGlobal.__FEDERATION__.__DEBUG_CONSTRUCTOR_VERSION__ = "0.15.0");
525
525
  }
526
526
  function getInfoWithoutType(n, t) {
527
527
  if (typeof t == "string") {
@@ -531,9 +531,9 @@ function getInfoWithoutType(n, t) {
531
531
  key: t
532
532
  };
533
533
  {
534
- const o = Object.keys(n);
535
- for (const s of o) {
536
- const [l, a] = s.split(":"), i = `${l}:${t}`, c = n[i];
534
+ const r = Object.keys(n);
535
+ for (const s of r) {
536
+ const [a, l] = s.split(":"), i = `${a}:${t}`, c = n[i];
537
537
  if (c)
538
538
  return {
539
539
  value: c,
@@ -549,28 +549,28 @@ function getInfoWithoutType(n, t) {
549
549
  throw new Error("key must be string");
550
550
  }
551
551
  const getGlobalSnapshot = () => nativeGlobal.__FEDERATION__.moduleInfo, getTargetSnapshotInfoByModuleInfo = (n, t) => {
552
- const r = getFMId(n), o = getInfoWithoutType(t, r).value;
553
- if (o && !o.version && "version" in n && n.version && (o.version = n.version), o)
554
- return o;
552
+ const o = getFMId(n), r = getInfoWithoutType(t, o).value;
553
+ if (r && !r.version && "version" in n && n.version && (r.version = n.version), r)
554
+ return r;
555
555
  if ("version" in n && n.version) {
556
- const { version: s } = n, l = _object_without_properties_loose(n, [
556
+ const { version: s } = n, a = _object_without_properties_loose(n, [
557
557
  "version"
558
- ]), a = getFMId(l), i = getInfoWithoutType(nativeGlobal.__FEDERATION__.moduleInfo, a).value;
558
+ ]), l = getFMId(a), i = getInfoWithoutType(nativeGlobal.__FEDERATION__.moduleInfo, l).value;
559
559
  if ((i == null ? void 0 : i.version) === s)
560
560
  return i;
561
561
  }
562
562
  }, getGlobalSnapshotInfoByModuleInfo = (n) => getTargetSnapshotInfoByModuleInfo(n, nativeGlobal.__FEDERATION__.moduleInfo), setGlobalSnapshotInfoByModuleInfo = (n, t) => {
563
- const r = getFMId(n);
564
- return nativeGlobal.__FEDERATION__.moduleInfo[r] = t, nativeGlobal.__FEDERATION__.moduleInfo;
563
+ const o = getFMId(n);
564
+ return nativeGlobal.__FEDERATION__.moduleInfo[o] = t, nativeGlobal.__FEDERATION__.moduleInfo;
565
565
  }, addGlobalSnapshot = (n) => (nativeGlobal.__FEDERATION__.moduleInfo = _extends$1({}, nativeGlobal.__FEDERATION__.moduleInfo, n), () => {
566
566
  const t = Object.keys(n);
567
- for (const r of t)
568
- delete nativeGlobal.__FEDERATION__.moduleInfo[r];
567
+ for (const o of t)
568
+ delete nativeGlobal.__FEDERATION__.moduleInfo[o];
569
569
  }), getRemoteEntryExports = (n, t) => {
570
- const r = t || `__FEDERATION_${n}:custom__`, o = CurrentGlobal[r];
570
+ const o = t || `__FEDERATION_${n}:custom__`, r = CurrentGlobal[o];
571
571
  return {
572
- remoteEntryKey: r,
573
- entryExports: o
572
+ remoteEntryKey: o,
573
+ entryExports: r
574
574
  };
575
575
  }, getGlobalHostPlugins = () => nativeGlobal.__FEDERATION__.__GLOBAL_PLUGIN__, getPreloaded = (n) => CurrentGlobal.__FEDERATION__.__PRELOADED_MAP__.get(n), setPreloaded = (n) => CurrentGlobal.__FEDERATION__.__PRELOADED_MAP__.set(n, !0), DEFAULT_SCOPE = "default", DEFAULT_REMOTE_TYPE = "global", buildIdentifier = "[0-9A-Za-z-]+", build = `(?:\\+(${buildIdentifier}(?:\\.${buildIdentifier})*))`, numericIdentifier = "0|[1-9]\\d*", numericIdentifierLoose = "[0-9]+", nonNumericIdentifier = "\\d*[a-zA-Z-][a-zA-Z0-9-]*", preReleaseIdentifierLoose = `(?:${numericIdentifierLoose}|${nonNumericIdentifier})`, preReleaseLoose = `(?:-?(${preReleaseIdentifierLoose}(?:\\.${preReleaseIdentifierLoose})*))`, preReleaseIdentifier = `(?:${numericIdentifier}|${nonNumericIdentifier})`, preRelease = `(?:-(${preReleaseIdentifier}(?:\\.${preReleaseIdentifier})*))`, xRangeIdentifier = `${numericIdentifier}|x|X|\\*`, xRangePlain = `[v=\\s]*(${xRangeIdentifier})(?:\\.(${xRangeIdentifier})(?:\\.(${xRangeIdentifier})(?:${preRelease})?${build}?)?)?`, hyphenRange = `^\\s*(${xRangePlain})\\s+-\\s+(${xRangePlain})\\s*$`, mainVersionLoose = `(${numericIdentifierLoose})\\.(${numericIdentifierLoose})\\.(${numericIdentifierLoose})`, loosePlain = `[v=\\s]*${mainVersionLoose}${preReleaseLoose}?${build}?`, gtlt = "((?:<|>)?=?)", comparatorTrim = `(\\s*)${gtlt}\\s*(${loosePlain}|${xRangePlain})`, loneTilde = "(?:~>?)", tildeTrim = `(\\s*)${loneTilde}\\s+`, loneCaret = "(?:\\^)", caretTrim = `(\\s*)${loneCaret}\\s+`, star = "(<|>)?=?\\s*\\*", caret = `^${loneCaret}${xRangePlain}$`, mainVersion = `(${numericIdentifier})\\.(${numericIdentifier})\\.(${numericIdentifier})`, fullPlain = `v?${mainVersion}${preRelease}?${build}?`, tilde = `^${loneTilde}${xRangePlain}$`, xRange = `^${gtlt}\\s*${xRangePlain}$`, comparator = `^${gtlt}\\s*(${fullPlain})$|^$`, gte0 = "^\\s*>=\\s*0.0.0\\s*$";
576
576
  function parseRegex(n) {
@@ -580,17 +580,17 @@ function isXVersion(n) {
580
580
  return !n || n.toLowerCase() === "x" || n === "*";
581
581
  }
582
582
  function pipe(...n) {
583
- return (t) => n.reduce((r, o) => o(r), t);
583
+ return (t) => n.reduce((o, r) => r(o), t);
584
584
  }
585
585
  function extractComparator(n) {
586
586
  return n.match(parseRegex(comparator));
587
587
  }
588
- function combineVersion(n, t, r, o) {
589
- const s = `${n}.${t}.${r}`;
590
- return o ? `${s}-${o}` : s;
588
+ function combineVersion(n, t, o, r) {
589
+ const s = `${n}.${t}.${o}`;
590
+ return r ? `${s}-${r}` : s;
591
591
  }
592
592
  function parseHyphen(n) {
593
- return n.replace(parseRegex(hyphenRange), (t, r, o, s, l, a, i, c, u, d, p, m) => (isXVersion(o) ? r = "" : isXVersion(s) ? r = `>=${o}.0.0` : isXVersion(l) ? r = `>=${o}.${s}.0` : r = `>=${r}`, isXVersion(u) ? c = "" : isXVersion(d) ? c = `<${Number(u) + 1}.0.0-0` : isXVersion(p) ? c = `<${u}.${Number(d) + 1}.0-0` : m ? c = `<=${u}.${d}.${p}-${m}` : c = `<=${c}`, `${r} ${c}`.trim()));
593
+ return n.replace(parseRegex(hyphenRange), (t, o, r, s, a, l, i, c, u, p, d, m) => (isXVersion(r) ? o = "" : isXVersion(s) ? o = `>=${r}.0.0` : isXVersion(a) ? o = `>=${r}.${s}.0` : o = `>=${o}`, isXVersion(u) ? c = "" : isXVersion(p) ? c = `<${Number(u) + 1}.0.0-0` : isXVersion(d) ? c = `<${u}.${Number(p) + 1}.0-0` : m ? c = `<=${u}.${p}.${d}-${m}` : c = `<=${c}`, `${o} ${c}`.trim()));
594
594
  }
595
595
  function parseComparatorTrim(n) {
596
596
  return n.replace(parseRegex(comparatorTrim), "$1$2$3");
@@ -602,15 +602,15 @@ function parseCaretTrim(n) {
602
602
  return n.replace(parseRegex(caretTrim), "$1^");
603
603
  }
604
604
  function parseCarets(n) {
605
- return n.trim().split(/\s+/).map((t) => t.replace(parseRegex(caret), (r, o, s, l, a) => isXVersion(o) ? "" : isXVersion(s) ? `>=${o}.0.0 <${Number(o) + 1}.0.0-0` : isXVersion(l) ? o === "0" ? `>=${o}.${s}.0 <${o}.${Number(s) + 1}.0-0` : `>=${o}.${s}.0 <${Number(o) + 1}.0.0-0` : a ? o === "0" ? s === "0" ? `>=${o}.${s}.${l}-${a} <${o}.${s}.${Number(l) + 1}-0` : `>=${o}.${s}.${l}-${a} <${o}.${Number(s) + 1}.0-0` : `>=${o}.${s}.${l}-${a} <${Number(o) + 1}.0.0-0` : o === "0" ? s === "0" ? `>=${o}.${s}.${l} <${o}.${s}.${Number(l) + 1}-0` : `>=${o}.${s}.${l} <${o}.${Number(s) + 1}.0-0` : `>=${o}.${s}.${l} <${Number(o) + 1}.0.0-0`)).join(" ");
605
+ return n.trim().split(/\s+/).map((t) => t.replace(parseRegex(caret), (o, r, s, a, l) => isXVersion(r) ? "" : isXVersion(s) ? `>=${r}.0.0 <${Number(r) + 1}.0.0-0` : isXVersion(a) ? r === "0" ? `>=${r}.${s}.0 <${r}.${Number(s) + 1}.0-0` : `>=${r}.${s}.0 <${Number(r) + 1}.0.0-0` : l ? r === "0" ? s === "0" ? `>=${r}.${s}.${a}-${l} <${r}.${s}.${Number(a) + 1}-0` : `>=${r}.${s}.${a}-${l} <${r}.${Number(s) + 1}.0-0` : `>=${r}.${s}.${a}-${l} <${Number(r) + 1}.0.0-0` : r === "0" ? s === "0" ? `>=${r}.${s}.${a} <${r}.${s}.${Number(a) + 1}-0` : `>=${r}.${s}.${a} <${r}.${Number(s) + 1}.0-0` : `>=${r}.${s}.${a} <${Number(r) + 1}.0.0-0`)).join(" ");
606
606
  }
607
607
  function parseTildes(n) {
608
- return n.trim().split(/\s+/).map((t) => t.replace(parseRegex(tilde), (r, o, s, l, a) => isXVersion(o) ? "" : isXVersion(s) ? `>=${o}.0.0 <${Number(o) + 1}.0.0-0` : isXVersion(l) ? `>=${o}.${s}.0 <${o}.${Number(s) + 1}.0-0` : a ? `>=${o}.${s}.${l}-${a} <${o}.${Number(s) + 1}.0-0` : `>=${o}.${s}.${l} <${o}.${Number(s) + 1}.0-0`)).join(" ");
608
+ return n.trim().split(/\s+/).map((t) => t.replace(parseRegex(tilde), (o, r, s, a, l) => isXVersion(r) ? "" : isXVersion(s) ? `>=${r}.0.0 <${Number(r) + 1}.0.0-0` : isXVersion(a) ? `>=${r}.${s}.0 <${r}.${Number(s) + 1}.0-0` : l ? `>=${r}.${s}.${a}-${l} <${r}.${Number(s) + 1}.0-0` : `>=${r}.${s}.${a} <${r}.${Number(s) + 1}.0-0`)).join(" ");
609
609
  }
610
610
  function parseXRanges(n) {
611
- return n.split(/\s+/).map((t) => t.trim().replace(parseRegex(xRange), (r, o, s, l, a, i) => {
612
- const c = isXVersion(s), u = c || isXVersion(l), d = u || isXVersion(a);
613
- return o === "=" && d && (o = ""), i = "", c ? o === ">" || o === "<" ? "<0.0.0-0" : "*" : o && d ? (u && (l = 0), a = 0, o === ">" ? (o = ">=", u ? (s = Number(s) + 1, l = 0, a = 0) : (l = Number(l) + 1, a = 0)) : o === "<=" && (o = "<", u ? s = Number(s) + 1 : l = Number(l) + 1), o === "<" && (i = "-0"), `${o + s}.${l}.${a}${i}`) : u ? `>=${s}.0.0${i} <${Number(s) + 1}.0.0-0` : d ? `>=${s}.${l}.0${i} <${s}.${Number(l) + 1}.0-0` : r;
611
+ return n.split(/\s+/).map((t) => t.trim().replace(parseRegex(xRange), (o, r, s, a, l, i) => {
612
+ const c = isXVersion(s), u = c || isXVersion(a), p = u || isXVersion(l);
613
+ return r === "=" && p && (r = ""), i = "", c ? r === ">" || r === "<" ? "<0.0.0-0" : "*" : r && p ? (u && (a = 0), l = 0, r === ">" ? (r = ">=", u ? (s = Number(s) + 1, a = 0, l = 0) : (a = Number(a) + 1, l = 0)) : r === "<=" && (r = "<", u ? s = Number(s) + 1 : a = Number(a) + 1), r === "<" && (i = "-0"), `${r + s}.${a}.${l}${i}`) : u ? `>=${s}.0.0${i} <${Number(s) + 1}.0.0-0` : p ? `>=${s}.${a}.0${i} <${s}.${Number(a) + 1}.0-0` : o;
614
614
  })).join(" ");
615
615
  }
616
616
  function parseStar(n) {
@@ -623,17 +623,17 @@ function compareAtom(n, t) {
623
623
  return n = Number(n) || n, t = Number(t) || t, n > t ? 1 : n === t ? 0 : -1;
624
624
  }
625
625
  function comparePreRelease(n, t) {
626
- const { preRelease: r } = n, { preRelease: o } = t;
627
- if (r === void 0 && o)
626
+ const { preRelease: o } = n, { preRelease: r } = t;
627
+ if (o === void 0 && r)
628
628
  return 1;
629
- if (r && o === void 0)
629
+ if (o && r === void 0)
630
630
  return -1;
631
- if (r === void 0 && o === void 0)
631
+ if (o === void 0 && r === void 0)
632
632
  return 0;
633
- for (let s = 0, l = r.length; s <= l; s++) {
634
- const a = r[s], i = o[s];
635
- if (a !== i)
636
- return a === void 0 && i === void 0 ? 0 : a ? i ? compareAtom(a, i) : -1 : 1;
633
+ for (let s = 0, a = o.length; s <= a; s++) {
634
+ const l = o[s], i = r[s];
635
+ if (l !== i)
636
+ return l === void 0 && i === void 0 ? 0 : l ? i ? compareAtom(l, i) : -1 : 1;
637
637
  }
638
638
  return 0;
639
639
  }
@@ -703,39 +703,66 @@ function parseRange(n) {
703
703
  function satisfy(n, t) {
704
704
  if (!n)
705
705
  return !1;
706
- const s = parseRange(t).split(" ").map((m) => parseComparatorString(m)).join(" ").split(/\s+/).map((m) => parseGTE0(m)), l = extractComparator(n);
707
- if (!l)
706
+ const o = extractComparator(n);
707
+ if (!o)
708
708
  return !1;
709
- const [, a, , i, c, u, d] = l, p = {
710
- version: combineVersion(i, c, u, d),
711
- major: i,
712
- minor: c,
713
- patch: u,
714
- preRelease: d == null ? void 0 : d.split(".")
715
- };
716
- for (const m of s) {
717
- const y = extractComparator(m);
718
- if (!y)
719
- return !1;
720
- const [, E, , b, _, g, v] = y, S = {
721
- operator: E,
722
- version: combineVersion(b, _, g, v),
723
- major: b,
724
- minor: _,
725
- patch: g,
726
- preRelease: v == null ? void 0 : v.split(".")
727
- };
728
- if (!compare(S, p))
729
- return !1;
709
+ const [, r, , s, a, l, i] = o, c = {
710
+ operator: r,
711
+ version: combineVersion(s, a, l, i),
712
+ major: s,
713
+ minor: a,
714
+ patch: l,
715
+ preRelease: i == null ? void 0 : i.split(".")
716
+ }, u = t.split("||");
717
+ for (const p of u) {
718
+ const d = p.trim();
719
+ if (!d || d === "*" || d === "x")
720
+ return !0;
721
+ try {
722
+ const m = parseRange(d);
723
+ if (!m.trim())
724
+ return !0;
725
+ const y = m.split(" ").map((_) => parseComparatorString(_)).join(" ");
726
+ if (!y.trim())
727
+ return !0;
728
+ const g = y.split(/\s+/).map((_) => parseGTE0(_)).filter(Boolean);
729
+ if (g.length === 0)
730
+ continue;
731
+ let E = !0;
732
+ for (const _ of g) {
733
+ const b = extractComparator(_);
734
+ if (!b) {
735
+ E = !1;
736
+ break;
737
+ }
738
+ const [, v, , I, S, R, A] = b, T = {
739
+ operator: v,
740
+ version: combineVersion(I, S, R, A),
741
+ major: I,
742
+ minor: S,
743
+ patch: R,
744
+ preRelease: A == null ? void 0 : A.split(".")
745
+ };
746
+ if (!compare(T, c)) {
747
+ E = !1;
748
+ break;
749
+ }
750
+ }
751
+ if (E)
752
+ return !0;
753
+ } catch (m) {
754
+ console.error(`[semver] Error processing range part "${d}":`, m);
755
+ continue;
756
+ }
730
757
  }
731
- return !0;
758
+ return !1;
732
759
  }
733
- function formatShare(n, t, r, o) {
760
+ function formatShare(n, t, o, r) {
734
761
  let s;
735
762
  "get" in n ? s = n.get : "lib" in n ? s = () => Promise.resolve(n.lib) : s = () => Promise.resolve(() => {
736
- throw new Error(`Can not get shared '${r}'!`);
763
+ throw new Error(`Can not get shared '${o}'!`);
737
764
  });
738
- var l, a, i;
765
+ var a, l, i;
739
766
  return _extends$1({
740
767
  deps: [],
741
768
  useIn: [],
@@ -750,259 +777,259 @@ function formatShare(n, t, r, o) {
750
777
  }, n.shareConfig),
751
778
  get: s,
752
779
  loaded: n != null && n.loaded || "lib" in n ? !0 : void 0,
753
- version: (l = n.version) != null ? l : "0",
780
+ version: (a = n.version) != null ? a : "0",
754
781
  scope: Array.isArray(n.scope) ? n.scope : [
755
- (a = n.scope) != null ? a : "default"
782
+ (l = n.scope) != null ? l : "default"
756
783
  ],
757
- strategy: ((i = n.strategy) != null ? i : o) || "version-first"
784
+ strategy: ((i = n.strategy) != null ? i : r) || "version-first"
758
785
  });
759
786
  }
760
787
  function formatShareConfigs(n, t) {
761
- const r = t.shared || {}, o = t.name, s = Object.keys(r).reduce((a, i) => {
762
- const c = arrayOptions(r[i]);
763
- return a[i] = a[i] || [], c.forEach((u) => {
764
- a[i].push(formatShare(u, o, i, t.shareStrategy));
765
- }), a;
766
- }, {}), l = _extends$1({}, n.shared);
767
- return Object.keys(s).forEach((a) => {
768
- l[a] ? s[a].forEach((i) => {
769
- l[a].find((u) => u.version === i.version) || l[a].push(i);
770
- }) : l[a] = s[a];
788
+ const o = t.shared || {}, r = t.name, s = Object.keys(o).reduce((l, i) => {
789
+ const c = arrayOptions(o[i]);
790
+ return l[i] = l[i] || [], c.forEach((u) => {
791
+ l[i].push(formatShare(u, r, i, t.shareStrategy));
792
+ }), l;
793
+ }, {}), a = _extends$1({}, n.shared);
794
+ return Object.keys(s).forEach((l) => {
795
+ a[l] ? s[l].forEach((i) => {
796
+ a[l].find((u) => u.version === i.version) || a[l].push(i);
797
+ }) : a[l] = s[l];
771
798
  }), {
772
- shared: l,
799
+ shared: a,
773
800
  shareInfos: s
774
801
  };
775
802
  }
776
803
  function versionLt(n, t) {
777
- const r = (o) => {
778
- if (!Number.isNaN(Number(o))) {
779
- const l = o.split(".");
780
- let a = o;
781
- for (let i = 0; i < 3 - l.length; i++)
782
- a += ".0";
783
- return a;
804
+ const o = (r) => {
805
+ if (!Number.isNaN(Number(r))) {
806
+ const a = r.split(".");
807
+ let l = r;
808
+ for (let i = 0; i < 3 - a.length; i++)
809
+ l += ".0";
810
+ return l;
784
811
  }
785
- return o;
812
+ return r;
786
813
  };
787
- return !!satisfy(r(n), `<=${r(t)}`);
814
+ return !!satisfy(o(n), `<=${o(t)}`);
788
815
  }
789
816
  const findVersion = (n, t) => {
790
- const r = t || function(o, s) {
791
- return versionLt(o, s);
817
+ const o = t || function(r, s) {
818
+ return versionLt(r, s);
792
819
  };
793
- return Object.keys(n).reduce((o, s) => !o || r(o, s) || o === "0" ? s : o, 0);
820
+ return Object.keys(n).reduce((r, s) => !r || o(r, s) || r === "0" ? s : r, 0);
794
821
  }, isLoaded = (n) => !!n.loaded || typeof n.lib == "function", isLoading = (n) => !!n.loading;
795
- function findSingletonVersionOrderByVersion(n, t, r) {
796
- const o = n[t][r], s = function(l, a) {
797
- return !isLoaded(o[l]) && versionLt(l, a);
822
+ function findSingletonVersionOrderByVersion(n, t, o) {
823
+ const r = n[t][o], s = function(a, l) {
824
+ return !isLoaded(r[a]) && versionLt(a, l);
798
825
  };
799
- return findVersion(n[t][r], s);
826
+ return findVersion(n[t][o], s);
800
827
  }
801
- function findSingletonVersionOrderByLoaded(n, t, r) {
802
- const o = n[t][r], s = function(l, a) {
828
+ function findSingletonVersionOrderByLoaded(n, t, o) {
829
+ const r = n[t][o], s = function(a, l) {
803
830
  const i = (c) => isLoaded(c) || isLoading(c);
804
- return i(o[a]) ? i(o[l]) ? !!versionLt(l, a) : !0 : i(o[l]) ? !1 : versionLt(l, a);
831
+ return i(r[l]) ? i(r[a]) ? !!versionLt(a, l) : !0 : i(r[a]) ? !1 : versionLt(a, l);
805
832
  };
806
- return findVersion(n[t][r], s);
833
+ return findVersion(n[t][o], s);
807
834
  }
808
835
  function getFindShareFunction(n) {
809
836
  return n === "loaded-first" ? findSingletonVersionOrderByLoaded : findSingletonVersionOrderByVersion;
810
837
  }
811
- function getRegisteredShare(n, t, r, o) {
838
+ function getRegisteredShare(n, t, o, r) {
812
839
  if (!n)
813
840
  return;
814
- const { shareConfig: s, scope: l = DEFAULT_SCOPE, strategy: a } = r, i = Array.isArray(l) ? l : [
815
- l
841
+ const { shareConfig: s, scope: a = DEFAULT_SCOPE, strategy: l } = o, i = Array.isArray(a) ? a : [
842
+ a
816
843
  ];
817
844
  for (const c of i)
818
845
  if (s && n[c] && n[c][t]) {
819
- const { requiredVersion: u } = s, p = getFindShareFunction(a)(n, c, t), m = () => {
846
+ const { requiredVersion: u } = s, d = getFindShareFunction(l)(n, c, t), m = () => {
820
847
  if (s.singleton) {
821
- if (typeof u == "string" && !satisfy(p, u)) {
822
- const b = `Version ${p} from ${p && n[c][t][p].from} of shared singleton module ${t} does not satisfy the requirement of ${r.from} which needs ${u})`;
823
- s.strictVersion ? error(b) : warn(b);
848
+ if (typeof u == "string" && !satisfy(d, u)) {
849
+ const E = `Version ${d} from ${d && n[c][t][d].from} of shared singleton module ${t} does not satisfy the requirement of ${o.from} which needs ${u})`;
850
+ s.strictVersion ? error(E) : warn(E);
824
851
  }
825
- return n[c][t][p];
852
+ return n[c][t][d];
826
853
  } else {
827
- if (u === !1 || u === "*" || satisfy(p, u))
828
- return n[c][t][p];
829
- for (const [b, _] of Object.entries(n[c][t]))
830
- if (satisfy(b, u))
854
+ if (u === !1 || u === "*" || satisfy(d, u))
855
+ return n[c][t][d];
856
+ for (const [E, _] of Object.entries(n[c][t]))
857
+ if (satisfy(E, u))
831
858
  return _;
832
859
  }
833
860
  }, y = {
834
861
  shareScopeMap: n,
835
862
  scope: c,
836
863
  pkgName: t,
837
- version: p,
864
+ version: d,
838
865
  GlobalFederation: Global.__FEDERATION__,
839
866
  resolver: m
840
867
  };
841
- return (o.emit(y) || y).resolver();
868
+ return (r.emit(y) || y).resolver();
842
869
  }
843
870
  }
844
871
  function getGlobalShareScope() {
845
872
  return Global.__FEDERATION__.__SHARE__;
846
873
  }
847
874
  function getTargetSharedOptions(n) {
848
- const { pkgName: t, extraOptions: r, shareInfos: o } = n, s = (i) => {
875
+ const { pkgName: t, extraOptions: o, shareInfos: r } = n, s = (i) => {
849
876
  if (!i)
850
877
  return;
851
878
  const c = {};
852
- i.forEach((p) => {
853
- c[p.version] = p;
879
+ i.forEach((d) => {
880
+ c[d.version] = d;
854
881
  });
855
- const d = findVersion(c, function(p, m) {
856
- return !isLoaded(c[p]) && versionLt(p, m);
882
+ const p = findVersion(c, function(d, m) {
883
+ return !isLoaded(c[d]) && versionLt(d, m);
857
884
  });
858
- return c[d];
885
+ return c[p];
859
886
  };
860
- var l;
861
- const a = (l = r == null ? void 0 : r.resolver) != null ? l : s;
862
- return Object.assign({}, a(o[t]), r == null ? void 0 : r.customShareInfo);
887
+ var a;
888
+ const l = (a = o == null ? void 0 : o.resolver) != null ? a : s;
889
+ return Object.assign({}, l(r[t]), o == null ? void 0 : o.customShareInfo);
863
890
  }
864
891
  function getBuilderId() {
865
892
  return typeof FEDERATION_BUILD_IDENTIFIER < "u" ? FEDERATION_BUILD_IDENTIFIER : "";
866
893
  }
867
894
  function matchRemoteWithNameAndExpose(n, t) {
868
- for (const r of n) {
869
- const o = t.startsWith(r.name);
870
- let s = t.replace(r.name, "");
871
- if (o) {
895
+ for (const o of n) {
896
+ const r = t.startsWith(o.name);
897
+ let s = t.replace(o.name, "");
898
+ if (r) {
872
899
  if (s.startsWith("/")) {
873
- const i = r.name;
900
+ const i = o.name;
874
901
  return s = `.${s}`, {
875
902
  pkgNameOrAlias: i,
876
903
  expose: s,
877
- remote: r
904
+ remote: o
878
905
  };
879
906
  } else if (s === "")
880
907
  return {
881
- pkgNameOrAlias: r.name,
908
+ pkgNameOrAlias: o.name,
882
909
  expose: ".",
883
- remote: r
910
+ remote: o
884
911
  };
885
912
  }
886
- const l = r.alias && t.startsWith(r.alias);
887
- let a = r.alias && t.replace(r.alias, "");
888
- if (r.alias && l) {
889
- if (a && a.startsWith("/")) {
890
- const i = r.alias;
891
- return a = `.${a}`, {
913
+ const a = o.alias && t.startsWith(o.alias);
914
+ let l = o.alias && t.replace(o.alias, "");
915
+ if (o.alias && a) {
916
+ if (l && l.startsWith("/")) {
917
+ const i = o.alias;
918
+ return l = `.${l}`, {
892
919
  pkgNameOrAlias: i,
893
- expose: a,
894
- remote: r
920
+ expose: l,
921
+ remote: o
895
922
  };
896
- } else if (a === "")
923
+ } else if (l === "")
897
924
  return {
898
- pkgNameOrAlias: r.alias,
925
+ pkgNameOrAlias: o.alias,
899
926
  expose: ".",
900
- remote: r
927
+ remote: o
901
928
  };
902
929
  }
903
930
  }
904
931
  }
905
932
  function matchRemote(n, t) {
906
- for (const r of n)
907
- if (t === r.name || r.alias && t === r.alias)
908
- return r;
933
+ for (const o of n)
934
+ if (t === o.name || o.alias && t === o.alias)
935
+ return o;
909
936
  }
910
937
  function registerPlugins(n, t) {
911
- const r = getGlobalHostPlugins();
912
- return r.length > 0 && r.forEach((o) => {
913
- n != null && n.find((s) => s.name !== o.name) && n.push(o);
914
- }), n && n.length > 0 && n.forEach((o) => {
938
+ const o = getGlobalHostPlugins();
939
+ return o.length > 0 && o.forEach((r) => {
940
+ n != null && n.find((s) => s.name !== r.name) && n.push(r);
941
+ }), n && n.length > 0 && n.forEach((r) => {
915
942
  t.forEach((s) => {
916
- s.applyPlugin(o);
943
+ s.applyPlugin(r);
917
944
  });
918
945
  }), n;
919
946
  }
920
947
  const importCallback = ".then(callbacks[0]).catch(callbacks[1])";
921
948
  async function loadEsmEntry({ entry: n, remoteEntryExports: t }) {
922
- return new Promise((r, o) => {
949
+ return new Promise((o, r) => {
923
950
  try {
924
- t ? r(t) : typeof FEDERATION_ALLOW_NEW_FUNCTION < "u" ? new Function("callbacks", `import("${n}")${importCallback}`)([
925
- r,
926
- o
951
+ t ? o(t) : typeof FEDERATION_ALLOW_NEW_FUNCTION < "u" ? new Function("callbacks", `import("${n}")${importCallback}`)([
952
+ o,
953
+ r
927
954
  ]) : import(
928
955
  /* webpackIgnore: true */
929
956
  /* @vite-ignore */
930
957
  n
931
- ).then(r).catch(o);
958
+ ).then(o).catch(r);
932
959
  } catch (s) {
933
- o(s);
960
+ r(s);
934
961
  }
935
962
  });
936
963
  }
937
964
  async function loadSystemJsEntry({ entry: n, remoteEntryExports: t }) {
938
- return new Promise((r, o) => {
965
+ return new Promise((o, r) => {
939
966
  try {
940
- t ? r(t) : typeof __system_context__ > "u" ? System.import(n).then(r).catch(o) : new Function("callbacks", `System.import("${n}")${importCallback}`)([
941
- r,
942
- o
967
+ t ? o(t) : typeof __system_context__ > "u" ? System.import(n).then(o).catch(r) : new Function("callbacks", `System.import("${n}")${importCallback}`)([
968
+ o,
969
+ r
943
970
  ]);
944
971
  } catch (s) {
945
- o(s);
972
+ r(s);
946
973
  }
947
974
  });
948
975
  }
949
- function handleRemoteEntryLoaded(n, t, r) {
950
- const { remoteEntryKey: o, entryExports: s } = getRemoteEntryExports(n, t);
976
+ function handleRemoteEntryLoaded(n, t, o) {
977
+ const { remoteEntryKey: r, entryExports: s } = getRemoteEntryExports(n, t);
951
978
  return assert(s, getShortErrorMsg(RUNTIME_001, runtimeDescMap, {
952
979
  remoteName: n,
953
- remoteEntryUrl: r,
954
- remoteEntryKey: o
980
+ remoteEntryUrl: o,
981
+ remoteEntryKey: r
955
982
  })), s;
956
983
  }
957
- async function loadEntryScript({ name: n, globalName: t, entry: r, loaderHook: o }) {
984
+ async function loadEntryScript({ name: n, globalName: t, entry: o, loaderHook: r }) {
958
985
  const { entryExports: s } = getRemoteEntryExports(n, t);
959
- return s || loadScript(r, {
986
+ return s || loadScript(o, {
960
987
  attrs: {},
961
- createScriptHook: (l, a) => {
962
- const i = o.lifecycle.createScript.emit({
963
- url: l,
964
- attrs: a
988
+ createScriptHook: (a, l) => {
989
+ const i = r.lifecycle.createScript.emit({
990
+ url: a,
991
+ attrs: l
965
992
  });
966
993
  if (i && (i instanceof HTMLScriptElement || "script" in i || "timeout" in i))
967
994
  return i;
968
995
  }
969
- }).then(() => handleRemoteEntryLoaded(n, t, r)).catch((l) => {
996
+ }).then(() => handleRemoteEntryLoaded(n, t, o)).catch((a) => {
970
997
  throw assert(void 0, getShortErrorMsg(RUNTIME_008, runtimeDescMap, {
971
998
  remoteName: n,
972
- resourceUrl: r
973
- })), l;
999
+ resourceUrl: o
1000
+ })), a;
974
1001
  });
975
1002
  }
976
- async function loadEntryDom({ remoteInfo: n, remoteEntryExports: t, loaderHook: r }) {
977
- const { entry: o, entryGlobalName: s, name: l, type: a } = n;
978
- switch (a) {
1003
+ async function loadEntryDom({ remoteInfo: n, remoteEntryExports: t, loaderHook: o }) {
1004
+ const { entry: r, entryGlobalName: s, name: a, type: l } = n;
1005
+ switch (l) {
979
1006
  case "esm":
980
1007
  case "module":
981
1008
  return loadEsmEntry({
982
- entry: o,
1009
+ entry: r,
983
1010
  remoteEntryExports: t
984
1011
  });
985
1012
  case "system":
986
1013
  return loadSystemJsEntry({
987
- entry: o,
1014
+ entry: r,
988
1015
  remoteEntryExports: t
989
1016
  });
990
1017
  default:
991
1018
  return loadEntryScript({
992
- entry: o,
1019
+ entry: r,
993
1020
  globalName: s,
994
- name: l,
995
- loaderHook: r
1021
+ name: a,
1022
+ loaderHook: o
996
1023
  });
997
1024
  }
998
1025
  }
999
1026
  async function loadEntryNode({ remoteInfo: n, loaderHook: t }) {
1000
- const { entry: r, entryGlobalName: o, name: s, type: l } = n, { entryExports: a } = getRemoteEntryExports(s, o);
1001
- return a || loadScriptNode(r, {
1027
+ const { entry: o, entryGlobalName: r, name: s, type: a } = n, { entryExports: l } = getRemoteEntryExports(s, r);
1028
+ return l || loadScriptNode(o, {
1002
1029
  attrs: {
1003
1030
  name: s,
1004
- globalName: o,
1005
- type: l
1031
+ globalName: r,
1032
+ type: a
1006
1033
  },
1007
1034
  loaderHook: {
1008
1035
  createScriptHook: (i, c = {}) => {
@@ -1014,34 +1041,34 @@ async function loadEntryNode({ remoteInfo: n, loaderHook: t }) {
1014
1041
  return u;
1015
1042
  }
1016
1043
  }
1017
- }).then(() => handleRemoteEntryLoaded(s, o, r)).catch((i) => {
1044
+ }).then(() => handleRemoteEntryLoaded(s, r, o)).catch((i) => {
1018
1045
  throw i;
1019
1046
  });
1020
1047
  }
1021
1048
  function getRemoteEntryUniqueKey(n) {
1022
- const { entry: t, name: r } = n;
1023
- return composeKeyWithSeparator(r, t);
1049
+ const { entry: t, name: o } = n;
1050
+ return composeKeyWithSeparator(o, t);
1024
1051
  }
1025
- async function getRemoteEntry({ origin: n, remoteEntryExports: t, remoteInfo: r }) {
1026
- const o = getRemoteEntryUniqueKey(r);
1052
+ async function getRemoteEntry({ origin: n, remoteEntryExports: t, remoteInfo: o }) {
1053
+ const r = getRemoteEntryUniqueKey(o);
1027
1054
  if (t)
1028
1055
  return t;
1029
- if (!globalLoading[o]) {
1030
- const s = n.remoteHandler.hooks.lifecycle.loadEntry, l = n.loaderHook;
1031
- globalLoading[o] = s.emit({
1032
- loaderHook: l,
1033
- remoteInfo: r,
1056
+ if (!globalLoading[r]) {
1057
+ const s = n.remoteHandler.hooks.lifecycle.loadEntry, a = n.loaderHook;
1058
+ globalLoading[r] = s.emit({
1059
+ loaderHook: a,
1060
+ remoteInfo: o,
1034
1061
  remoteEntryExports: t
1035
- }).then((a) => a || ((typeof ENV_TARGET < "u" ? ENV_TARGET === "web" : isBrowserEnv()) ? loadEntryDom({
1036
- remoteInfo: r,
1062
+ }).then((l) => l || ((typeof ENV_TARGET < "u" ? ENV_TARGET === "web" : isBrowserEnv()) ? loadEntryDom({
1063
+ remoteInfo: o,
1037
1064
  remoteEntryExports: t,
1038
- loaderHook: l
1065
+ loaderHook: a
1039
1066
  }) : loadEntryNode({
1040
- remoteInfo: r,
1041
- loaderHook: l
1067
+ remoteInfo: o,
1068
+ loaderHook: a
1042
1069
  })));
1043
1070
  }
1044
- return globalLoading[o];
1071
+ return globalLoading[r];
1045
1072
  }
1046
1073
  function getRemoteInfo(n) {
1047
1074
  return _extends$1({}, n, {
@@ -1063,85 +1090,86 @@ let Module = class {
1063
1090
  remoteEntryExports: this.remoteEntryExports
1064
1091
  });
1065
1092
  } catch {
1066
- const o = getRemoteEntryUniqueKey(this.remoteInfo);
1093
+ const r = getRemoteEntryUniqueKey(this.remoteInfo);
1067
1094
  t = await this.host.loaderHook.lifecycle.loadEntryError.emit({
1068
1095
  getRemoteEntry,
1069
1096
  origin: this.host,
1070
1097
  remoteInfo: this.remoteInfo,
1071
1098
  remoteEntryExports: this.remoteEntryExports,
1072
1099
  globalLoading,
1073
- uniqueKey: o
1100
+ uniqueKey: r
1074
1101
  });
1075
1102
  }
1076
1103
  return assert(t, `remoteEntryExports is undefined
1077
1104
  ${safeToString(this.remoteInfo)}`), this.remoteEntryExports = t, this.remoteEntryExports;
1078
1105
  }
1079
1106
  // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
1080
- async get(t, r, o, s) {
1081
- const { loadFactory: l = !0 } = o || {
1107
+ async get(t, o, r, s) {
1108
+ const { loadFactory: a = !0 } = r || {
1082
1109
  loadFactory: !0
1083
- }, a = await this.getEntry();
1110
+ }, l = await this.getEntry();
1084
1111
  if (!this.inited) {
1085
- const p = this.host.shareScopeMap, m = Array.isArray(this.remoteInfo.shareScope) ? this.remoteInfo.shareScope : [
1112
+ const d = this.host.shareScopeMap, m = Array.isArray(this.remoteInfo.shareScope) ? this.remoteInfo.shareScope : [
1086
1113
  this.remoteInfo.shareScope
1087
1114
  ];
1088
- m.length || m.push("default"), m.forEach((g) => {
1089
- p[g] || (p[g] = {});
1115
+ m.length || m.push("default"), m.forEach((b) => {
1116
+ d[b] || (d[b] = {});
1090
1117
  });
1091
- const y = p[m[0]], E = [], b = {
1118
+ const y = d[m[0]], g = [], E = {
1092
1119
  version: this.remoteInfo.version || "",
1093
1120
  shareScopeKeys: Array.isArray(this.remoteInfo.shareScope) ? m : this.remoteInfo.shareScope || "default"
1094
1121
  };
1095
- Object.defineProperty(b, "shareScopeMap", {
1096
- value: p,
1122
+ Object.defineProperty(E, "shareScopeMap", {
1123
+ value: d,
1097
1124
  // remoteEntryInitOptions will be traversed and assigned during container init, ,so this attribute is not allowed to be traversed
1098
1125
  enumerable: !1
1099
1126
  });
1100
1127
  const _ = await this.host.hooks.lifecycle.beforeInitContainer.emit({
1101
1128
  shareScope: y,
1102
1129
  // @ts-ignore shareScopeMap will be set by Object.defineProperty
1103
- remoteEntryInitOptions: b,
1104
- initScope: E,
1130
+ remoteEntryInitOptions: E,
1131
+ initScope: g,
1105
1132
  remoteInfo: this.remoteInfo,
1106
1133
  origin: this.host
1107
1134
  });
1108
- typeof (a == null ? void 0 : a.init) > "u" && error(getShortErrorMsg(RUNTIME_002, runtimeDescMap, {
1109
- remoteName: name,
1135
+ typeof (l == null ? void 0 : l.init) > "u" && error(getShortErrorMsg(RUNTIME_002, runtimeDescMap, {
1136
+ hostName: this.host.name,
1137
+ remoteName: this.remoteInfo.name,
1110
1138
  remoteEntryUrl: this.remoteInfo.entry,
1111
1139
  remoteEntryKey: this.remoteInfo.entryGlobalName
1112
- })), await a.init(_.shareScope, _.initScope, _.remoteEntryInitOptions), await this.host.hooks.lifecycle.initContainer.emit(_extends$1({}, _, {
1140
+ })), await l.init(_.shareScope, _.initScope, _.remoteEntryInitOptions), await this.host.hooks.lifecycle.initContainer.emit(_extends$1({}, _, {
1113
1141
  id: t,
1114
1142
  remoteSnapshot: s,
1115
- remoteEntryExports: a
1143
+ remoteEntryExports: l
1116
1144
  }));
1117
1145
  }
1118
- this.lib = a, this.inited = !0;
1146
+ this.lib = l, this.inited = !0;
1119
1147
  let i;
1120
1148
  i = await this.host.loaderHook.lifecycle.getModuleFactory.emit({
1121
- remoteEntryExports: a,
1122
- expose: r,
1149
+ remoteEntryExports: l,
1150
+ expose: o,
1123
1151
  moduleInfo: this.remoteInfo
1124
- }), i || (i = await a.get(r)), assert(i, `${getFMId(this.remoteInfo)} remote don't export ${r}.`);
1125
- const c = processModuleAlias(this.remoteInfo.name, r), u = this.wraperFactory(i, c);
1126
- return l ? await u() : u;
1152
+ }), i || (i = await l.get(o)), assert(i, `${getFMId(this.remoteInfo)} remote don't export ${o}.`);
1153
+ const c = processModuleAlias(this.remoteInfo.name, o), u = this.wraperFactory(i, c);
1154
+ return a ? await u() : u;
1127
1155
  }
1128
- wraperFactory(t, r) {
1129
- function o(s, l) {
1156
+ wraperFactory(t, o) {
1157
+ function r(s, a) {
1130
1158
  s && typeof s == "object" && Object.isExtensible(s) && !Object.getOwnPropertyDescriptor(s, Symbol.for("mf_module_id")) && Object.defineProperty(s, Symbol.for("mf_module_id"), {
1131
- value: l,
1159
+ value: a,
1132
1160
  enumerable: !1
1133
1161
  });
1134
1162
  }
1135
1163
  return t instanceof Promise ? async () => {
1136
1164
  const s = await t();
1137
- return o(s, r), s;
1165
+ return r(s, o), s;
1138
1166
  } : () => {
1139
1167
  const s = t();
1140
- return o(s, r), s;
1168
+ return r(s, o), s;
1141
1169
  };
1142
1170
  }
1143
- constructor({ remoteInfo: t, host: r }) {
1144
- this.inited = !1, this.lib = void 0, this.remoteInfo = t, this.host = r;
1171
+ constructor({ remoteInfo: t, host: o }) {
1172
+ this.inited = !1, this.lib = void 0, this.remoteInfo = t, this.host = o;
1145
1173
  }
1146
1174
  };
1147
1175
  class SyncHook {
@@ -1149,16 +1177,16 @@ class SyncHook {
1149
1177
  typeof t == "function" && this.listeners.add(t);
1150
1178
  }
1151
1179
  once(t) {
1152
- const r = this;
1153
- this.on(function o(...s) {
1154
- return r.remove(o), t.apply(null, s);
1180
+ const o = this;
1181
+ this.on(function r(...s) {
1182
+ return o.remove(r), t.apply(null, s);
1155
1183
  });
1156
1184
  }
1157
1185
  emit(...t) {
1158
- let r;
1159
- return this.listeners.size > 0 && this.listeners.forEach((o) => {
1160
- r = o(...t);
1161
- }), r;
1186
+ let o;
1187
+ return this.listeners.size > 0 && this.listeners.forEach((r) => {
1188
+ o = r(...t);
1189
+ }), o;
1162
1190
  }
1163
1191
  remove(t) {
1164
1192
  this.listeners.delete(t);
@@ -1172,22 +1200,22 @@ class SyncHook {
1172
1200
  }
1173
1201
  class AsyncHook extends SyncHook {
1174
1202
  emit(...t) {
1175
- let r;
1176
- const o = Array.from(this.listeners);
1177
- if (o.length > 0) {
1203
+ let o;
1204
+ const r = Array.from(this.listeners);
1205
+ if (r.length > 0) {
1178
1206
  let s = 0;
1179
- const l = (a) => a === !1 ? !1 : s < o.length ? Promise.resolve(o[s++].apply(null, t)).then(l) : a;
1180
- r = l();
1207
+ const a = (l) => l === !1 ? !1 : s < r.length ? Promise.resolve(r[s++].apply(null, t)).then(a) : l;
1208
+ o = a();
1181
1209
  }
1182
- return Promise.resolve(r);
1210
+ return Promise.resolve(o);
1183
1211
  }
1184
1212
  }
1185
1213
  function checkReturnData(n, t) {
1186
1214
  if (!isObject(t))
1187
1215
  return !1;
1188
1216
  if (n !== t) {
1189
- for (const r in n)
1190
- if (!(r in t))
1217
+ for (const o in n)
1218
+ if (!(o in t))
1191
1219
  return !1;
1192
1220
  }
1193
1221
  return !0;
@@ -1195,17 +1223,17 @@ function checkReturnData(n, t) {
1195
1223
  class SyncWaterfallHook extends SyncHook {
1196
1224
  emit(t) {
1197
1225
  isObject(t) || error(`The data for the "${this.type}" hook should be an object.`);
1198
- for (const r of this.listeners)
1226
+ for (const o of this.listeners)
1199
1227
  try {
1200
- const o = r(t);
1201
- if (checkReturnData(t, o))
1202
- t = o;
1228
+ const r = o(t);
1229
+ if (checkReturnData(t, r))
1230
+ t = r;
1203
1231
  else {
1204
1232
  this.onerror(`A plugin returned an unacceptable value for the "${this.type}" type.`);
1205
1233
  break;
1206
1234
  }
1207
- } catch (o) {
1208
- warn(o), this.onerror(o);
1235
+ } catch (r) {
1236
+ warn(r), this.onerror(r);
1209
1237
  }
1210
1238
  return t;
1211
1239
  }
@@ -1216,14 +1244,14 @@ class SyncWaterfallHook extends SyncHook {
1216
1244
  class AsyncWaterfallHook extends SyncHook {
1217
1245
  emit(t) {
1218
1246
  isObject(t) || error(`The response data for the "${this.type}" hook must be an object.`);
1219
- const r = Array.from(this.listeners);
1220
- if (r.length > 0) {
1221
- let o = 0;
1222
- const s = (a) => (warn(a), this.onerror(a), t), l = (a) => {
1223
- if (checkReturnData(t, a)) {
1224
- if (t = a, o < r.length)
1247
+ const o = Array.from(this.listeners);
1248
+ if (o.length > 0) {
1249
+ let r = 0;
1250
+ const s = (l) => (warn(l), this.onerror(l), t), a = (l) => {
1251
+ if (checkReturnData(t, l)) {
1252
+ if (t = l, r < o.length)
1225
1253
  try {
1226
- return Promise.resolve(r[o++](t)).then(l, s);
1254
+ return Promise.resolve(o[r++](t)).then(a, s);
1227
1255
  } catch (i) {
1228
1256
  return s(i);
1229
1257
  }
@@ -1231,7 +1259,7 @@ class AsyncWaterfallHook extends SyncHook {
1231
1259
  this.onerror(`A plugin returned an incorrect value for the "${this.type}" type.`);
1232
1260
  return t;
1233
1261
  };
1234
- return Promise.resolve(l(t));
1262
+ return Promise.resolve(a(t));
1235
1263
  }
1236
1264
  return Promise.resolve(t);
1237
1265
  }
@@ -1242,25 +1270,25 @@ class AsyncWaterfallHook extends SyncHook {
1242
1270
  class PluginSystem {
1243
1271
  applyPlugin(t) {
1244
1272
  assert(isPlainObject(t), "Plugin configuration is invalid.");
1245
- const r = t.name;
1246
- assert(r, "A name must be provided by the plugin."), this.registerPlugins[r] || (this.registerPlugins[r] = t, Object.keys(this.lifecycle).forEach((o) => {
1247
- const s = t[o];
1248
- s && this.lifecycle[o].on(s);
1273
+ const o = t.name;
1274
+ assert(o, "A name must be provided by the plugin."), this.registerPlugins[o] || (this.registerPlugins[o] = t, Object.keys(this.lifecycle).forEach((r) => {
1275
+ const s = t[r];
1276
+ s && this.lifecycle[r].on(s);
1249
1277
  }));
1250
1278
  }
1251
1279
  removePlugin(t) {
1252
1280
  assert(t, "A name is required.");
1253
- const r = this.registerPlugins[t];
1254
- assert(r, `The plugin "${t}" is not registered.`), Object.keys(r).forEach((o) => {
1255
- o !== "name" && this.lifecycle[o].remove(r[o]);
1281
+ const o = this.registerPlugins[t];
1282
+ assert(o, `The plugin "${t}" is not registered.`), Object.keys(o).forEach((r) => {
1283
+ r !== "name" && this.lifecycle[r].remove(o[r]);
1256
1284
  });
1257
1285
  }
1258
1286
  // eslint-disable-next-line @typescript-eslint/no-shadow
1259
- inherit({ lifecycle: t, registerPlugins: r }) {
1260
- Object.keys(t).forEach((o) => {
1261
- assert(!this.lifecycle[o], `The hook "${o}" has a conflict and cannot be inherited.`), this.lifecycle[o] = t[o];
1262
- }), Object.keys(r).forEach((o) => {
1263
- assert(!this.registerPlugins[o], `The plugin "${o}" has a conflict and cannot be inherited.`), this.applyPlugin(r[o]);
1287
+ inherit({ lifecycle: t, registerPlugins: o }) {
1288
+ Object.keys(t).forEach((r) => {
1289
+ assert(!this.lifecycle[r], `The hook "${r}" has a conflict and cannot be inherited.`), this.lifecycle[r] = t[r];
1290
+ }), Object.keys(o).forEach((r) => {
1291
+ assert(!this.registerPlugins[r], `The plugin "${r}" has a conflict and cannot be inherited.`), this.applyPlugin(o[r]);
1264
1292
  });
1265
1293
  }
1266
1294
  constructor(t) {
@@ -1276,24 +1304,24 @@ function defaultPreloadArgs(n) {
1276
1304
  }, n);
1277
1305
  }
1278
1306
  function formatPreloadArgs(n, t) {
1279
- return t.map((r) => {
1280
- const o = matchRemote(n, r.nameOrAlias);
1281
- return assert(o, `Unable to preload ${r.nameOrAlias} as it is not included in ${!o && safeToString({
1282
- remoteInfo: o,
1307
+ return t.map((o) => {
1308
+ const r = matchRemote(n, o.nameOrAlias);
1309
+ return assert(r, `Unable to preload ${o.nameOrAlias} as it is not included in ${!r && safeToString({
1310
+ remoteInfo: r,
1283
1311
  remotes: n
1284
1312
  })}`), {
1285
- remote: o,
1286
- preloadConfig: defaultPreloadArgs(r)
1313
+ remote: r,
1314
+ preloadConfig: defaultPreloadArgs(o)
1287
1315
  };
1288
1316
  });
1289
1317
  }
1290
1318
  function normalizePreloadExposes(n) {
1291
1319
  return n ? n.map((t) => t === "." ? t : t.startsWith("./") ? t.replace("./", "") : t) : [];
1292
1320
  }
1293
- function preloadAssets(n, t, r, o = !0) {
1294
- const { cssAssets: s, jsAssetsWithoutEntry: l, entryAssets: a } = r;
1321
+ function preloadAssets(n, t, o, r = !0) {
1322
+ const { cssAssets: s, jsAssetsWithoutEntry: a, entryAssets: l } = o;
1295
1323
  if (t.options.inBrowser) {
1296
- if (a.forEach((i) => {
1324
+ if (l.forEach((i) => {
1297
1325
  const { moduleInfo: c } = i, u = t.moduleCache.get(n.name);
1298
1326
  getRemoteEntry(u ? {
1299
1327
  origin: t,
@@ -1304,27 +1332,27 @@ function preloadAssets(n, t, r, o = !0) {
1304
1332
  remoteInfo: c,
1305
1333
  remoteEntryExports: void 0
1306
1334
  });
1307
- }), o) {
1335
+ }), r) {
1308
1336
  const i = {
1309
1337
  rel: "preload",
1310
1338
  as: "style"
1311
1339
  };
1312
1340
  s.forEach((c) => {
1313
- const { link: u, needAttach: d } = createLink({
1341
+ const { link: u, needAttach: p } = createLink({
1314
1342
  url: c,
1315
1343
  cb: () => {
1316
1344
  },
1317
1345
  attrs: i,
1318
- createLinkHook: (p, m) => {
1346
+ createLinkHook: (d, m) => {
1319
1347
  const y = t.loaderHook.lifecycle.createLink.emit({
1320
- url: p,
1348
+ url: d,
1321
1349
  attrs: m
1322
1350
  });
1323
1351
  if (y instanceof HTMLLinkElement)
1324
1352
  return y;
1325
1353
  }
1326
1354
  });
1327
- d && document.head.appendChild(u);
1355
+ p && document.head.appendChild(u);
1328
1356
  });
1329
1357
  } else {
1330
1358
  const i = {
@@ -1332,14 +1360,14 @@ function preloadAssets(n, t, r, o = !0) {
1332
1360
  type: "text/css"
1333
1361
  };
1334
1362
  s.forEach((c) => {
1335
- const { link: u, needAttach: d } = createLink({
1363
+ const { link: u, needAttach: p } = createLink({
1336
1364
  url: c,
1337
1365
  cb: () => {
1338
1366
  },
1339
1367
  attrs: i,
1340
- createLinkHook: (p, m) => {
1368
+ createLinkHook: (d, m) => {
1341
1369
  const y = t.loaderHook.lifecycle.createLink.emit({
1342
- url: p,
1370
+ url: d,
1343
1371
  attrs: m
1344
1372
  });
1345
1373
  if (y instanceof HTMLLinkElement)
@@ -1347,45 +1375,45 @@ function preloadAssets(n, t, r, o = !0) {
1347
1375
  },
1348
1376
  needDeleteLink: !1
1349
1377
  });
1350
- d && document.head.appendChild(u);
1378
+ p && document.head.appendChild(u);
1351
1379
  });
1352
1380
  }
1353
- if (o) {
1381
+ if (r) {
1354
1382
  const i = {
1355
1383
  rel: "preload",
1356
1384
  as: "script"
1357
1385
  };
1358
- l.forEach((c) => {
1359
- const { link: u, needAttach: d } = createLink({
1386
+ a.forEach((c) => {
1387
+ const { link: u, needAttach: p } = createLink({
1360
1388
  url: c,
1361
1389
  cb: () => {
1362
1390
  },
1363
1391
  attrs: i,
1364
- createLinkHook: (p, m) => {
1392
+ createLinkHook: (d, m) => {
1365
1393
  const y = t.loaderHook.lifecycle.createLink.emit({
1366
- url: p,
1394
+ url: d,
1367
1395
  attrs: m
1368
1396
  });
1369
1397
  if (y instanceof HTMLLinkElement)
1370
1398
  return y;
1371
1399
  }
1372
1400
  });
1373
- d && document.head.appendChild(u);
1401
+ p && document.head.appendChild(u);
1374
1402
  });
1375
1403
  } else {
1376
1404
  const i = {
1377
1405
  fetchpriority: "high",
1378
1406
  type: (n == null ? void 0 : n.type) === "module" ? "module" : "text/javascript"
1379
1407
  };
1380
- l.forEach((c) => {
1381
- const { script: u, needAttach: d } = createScript({
1408
+ a.forEach((c) => {
1409
+ const { script: u, needAttach: p } = createScript({
1382
1410
  url: c,
1383
1411
  cb: () => {
1384
1412
  },
1385
1413
  attrs: i,
1386
- createScriptHook: (p, m) => {
1414
+ createScriptHook: (d, m) => {
1387
1415
  const y = t.loaderHook.lifecycle.createScript.emit({
1388
- url: p,
1416
+ url: d,
1389
1417
  attrs: m
1390
1418
  });
1391
1419
  if (y instanceof HTMLScriptElement)
@@ -1393,46 +1421,49 @@ function preloadAssets(n, t, r, o = !0) {
1393
1421
  },
1394
1422
  needDeleteScript: !0
1395
1423
  });
1396
- d && document.head.appendChild(u);
1424
+ p && document.head.appendChild(u);
1397
1425
  });
1398
1426
  }
1399
1427
  }
1400
1428
  }
1401
1429
  function assignRemoteInfo(n, t) {
1402
- const r = getRemoteEntryInfoFromSnapshot(t);
1403
- r.url || error(`The attribute remoteEntry of ${n.name} must not be undefined.`);
1404
- let o = getResourceUrl(t, r.url);
1405
- !isBrowserEnv() && !o.startsWith("http") && (o = `https:${o}`), n.type = r.type, n.entryGlobalName = r.globalName, n.entry = o, n.version = t.version, n.buildVersion = t.buildVersion;
1430
+ const o = getRemoteEntryInfoFromSnapshot(t);
1431
+ o.url || error(`The attribute remoteEntry of ${n.name} must not be undefined.`);
1432
+ let r = getResourceUrl(t, o.url);
1433
+ !isBrowserEnv() && !r.startsWith("http") && (r = `https:${r}`), n.type = o.type, n.entryGlobalName = o.globalName, n.entry = r, n.version = t.version, n.buildVersion = t.buildVersion;
1406
1434
  }
1407
1435
  function snapshotPlugin() {
1408
1436
  return {
1409
1437
  name: "snapshot-plugin",
1410
1438
  async afterResolve(n) {
1411
- const { remote: t, pkgNameOrAlias: r, expose: o, origin: s, remoteInfo: l } = n;
1439
+ const { remote: t, pkgNameOrAlias: o, expose: r, origin: s, remoteInfo: a, id: l } = n;
1412
1440
  if (!isRemoteInfoWithEntry(t) || !isPureRemoteEntry(t)) {
1413
- const { remoteSnapshot: a, globalSnapshot: i } = await s.snapshotHandler.loadRemoteSnapshotInfo(t);
1414
- assignRemoteInfo(l, a);
1415
- const c = {
1441
+ const { remoteSnapshot: i, globalSnapshot: c } = await s.snapshotHandler.loadRemoteSnapshotInfo({
1442
+ moduleInfo: t,
1443
+ id: l
1444
+ });
1445
+ assignRemoteInfo(a, i);
1446
+ const u = {
1416
1447
  remote: t,
1417
1448
  preloadConfig: {
1418
- nameOrAlias: r,
1449
+ nameOrAlias: o,
1419
1450
  exposes: [
1420
- o
1451
+ r
1421
1452
  ],
1422
1453
  resourceCategory: "sync",
1423
1454
  share: !1,
1424
1455
  depsRemote: !1
1425
1456
  }
1426
- }, u = await s.remoteHandler.hooks.lifecycle.generatePreloadAssets.emit({
1457
+ }, p = await s.remoteHandler.hooks.lifecycle.generatePreloadAssets.emit({
1427
1458
  origin: s,
1428
- preloadOptions: c,
1429
- remoteInfo: l,
1459
+ preloadOptions: u,
1460
+ remoteInfo: a,
1430
1461
  remote: t,
1431
- remoteSnapshot: a,
1432
- globalSnapshot: i
1462
+ remoteSnapshot: i,
1463
+ globalSnapshot: c
1433
1464
  });
1434
- return u && preloadAssets(l, s, u, !1), _extends$1({}, n, {
1435
- remoteSnapshot: a
1465
+ return p && preloadAssets(a, s, p, !1), _extends$1({}, n, {
1466
+ remoteSnapshot: i
1436
1467
  });
1437
1468
  }
1438
1469
  return n;
@@ -1452,101 +1483,101 @@ function splitId(n) {
1452
1483
  version: t[2]
1453
1484
  };
1454
1485
  }
1455
- function traverseModuleInfo(n, t, r, o, s = {}, l) {
1456
- const a = getFMId(t), { value: i } = getInfoWithoutType(n, a), c = l || i;
1457
- if (c && !isManifestProvider(c) && (r(c, t, o), c.remotesInfo)) {
1486
+ function traverseModuleInfo(n, t, o, r, s = {}, a) {
1487
+ const l = getFMId(t), { value: i } = getInfoWithoutType(n, l), c = a || i;
1488
+ if (c && !isManifestProvider(c) && (o(c, t, r), c.remotesInfo)) {
1458
1489
  const u = Object.keys(c.remotesInfo);
1459
- for (const d of u) {
1460
- if (s[d])
1490
+ for (const p of u) {
1491
+ if (s[p])
1461
1492
  continue;
1462
- s[d] = !0;
1463
- const p = splitId(d), m = c.remotesInfo[d];
1493
+ s[p] = !0;
1494
+ const d = splitId(p), m = c.remotesInfo[p];
1464
1495
  traverseModuleInfo(n, {
1465
- name: p.name,
1496
+ name: d.name,
1466
1497
  version: m.matchedVersion
1467
- }, r, !1, s, void 0);
1498
+ }, o, !1, s, void 0);
1468
1499
  }
1469
1500
  }
1470
1501
  }
1471
1502
  const isExisted = (n, t) => document.querySelector(`${n}[${n === "link" ? "href" : "src"}="${t}"]`);
1472
- function generatePreloadAssets(n, t, r, o, s) {
1473
- const l = [], a = [], i = [], c = /* @__PURE__ */ new Set(), u = /* @__PURE__ */ new Set(), { options: d } = n, { preloadConfig: p } = t, { depsRemote: m } = p;
1474
- if (traverseModuleInfo(o, r, (_, g, v) => {
1475
- let S;
1503
+ function generatePreloadAssets(n, t, o, r, s) {
1504
+ const a = [], l = [], i = [], c = /* @__PURE__ */ new Set(), u = /* @__PURE__ */ new Set(), { options: p } = n, { preloadConfig: d } = t, { depsRemote: m } = d;
1505
+ if (traverseModuleInfo(r, o, (_, b, v) => {
1506
+ let I;
1476
1507
  if (v)
1477
- S = p;
1508
+ I = d;
1478
1509
  else if (Array.isArray(m)) {
1479
- const N = m.find((O) => O.nameOrAlias === g.name || O.nameOrAlias === g.alias);
1480
- if (!N)
1510
+ const w = m.find((N) => N.nameOrAlias === b.name || N.nameOrAlias === b.alias);
1511
+ if (!w)
1481
1512
  return;
1482
- S = defaultPreloadArgs(N);
1513
+ I = defaultPreloadArgs(w);
1483
1514
  } else if (m === !0)
1484
- S = p;
1515
+ I = d;
1485
1516
  else
1486
1517
  return;
1487
- const I = getResourceUrl(_, getRemoteEntryInfoFromSnapshot(_).url);
1488
- I && i.push({
1489
- name: g.name,
1518
+ const S = getResourceUrl(_, getRemoteEntryInfoFromSnapshot(_).url);
1519
+ S && i.push({
1520
+ name: b.name,
1490
1521
  moduleInfo: {
1491
- name: g.name,
1492
- entry: I,
1522
+ name: b.name,
1523
+ entry: S,
1493
1524
  type: "remoteEntryType" in _ ? _.remoteEntryType : "global",
1494
- entryGlobalName: "globalName" in _ ? _.globalName : g.name,
1525
+ entryGlobalName: "globalName" in _ ? _.globalName : b.name,
1495
1526
  shareScope: "",
1496
1527
  version: "version" in _ ? _.version : void 0
1497
1528
  },
1498
- url: I
1529
+ url: S
1499
1530
  });
1500
1531
  let R = "modules" in _ ? _.modules : [];
1501
- const A = normalizePreloadExposes(S.exposes);
1532
+ const A = normalizePreloadExposes(I.exposes);
1502
1533
  if (A.length && "modules" in _) {
1503
1534
  var T;
1504
- R = _ == null || (T = _.modules) == null ? void 0 : T.reduce((N, O) => ((A == null ? void 0 : A.indexOf(O.moduleName)) !== -1 && N.push(O), N), []);
1535
+ R = _ == null || (T = _.modules) == null ? void 0 : T.reduce((w, N) => ((A == null ? void 0 : A.indexOf(N.moduleName)) !== -1 && w.push(N), w), []);
1505
1536
  }
1506
- function $(N) {
1507
- const O = N.map((w) => getResourceUrl(_, w));
1508
- return S.filter ? O.filter(S.filter) : O;
1537
+ function $(w) {
1538
+ const N = w.map((O) => getResourceUrl(_, O));
1539
+ return I.filter ? N.filter(I.filter) : N;
1509
1540
  }
1510
1541
  if (R) {
1511
- const N = R.length;
1512
- for (let O = 0; O < N; O++) {
1513
- const w = R[O], P = `${g.name}/${w.moduleName}`;
1542
+ const w = R.length;
1543
+ for (let N = 0; N < w; N++) {
1544
+ const O = R[N], P = `${b.name}/${O.moduleName}`;
1514
1545
  n.remoteHandler.hooks.lifecycle.handlePreloadModule.emit({
1515
- id: w.moduleName === "." ? g.name : P,
1516
- name: g.name,
1546
+ id: O.moduleName === "." ? b.name : P,
1547
+ name: b.name,
1517
1548
  remoteSnapshot: _,
1518
- preloadConfig: S,
1519
- remote: g,
1549
+ preloadConfig: I,
1550
+ remote: b,
1520
1551
  origin: n
1521
- }), !getPreloaded(P) && (S.resourceCategory === "all" ? (l.push(...$(w.assets.css.async)), l.push(...$(w.assets.css.sync)), a.push(...$(w.assets.js.async)), a.push(...$(w.assets.js.sync))) : (S.resourceCategory = "sync") && (l.push(...$(w.assets.css.sync)), a.push(...$(w.assets.js.sync))), setPreloaded(P));
1552
+ }), !getPreloaded(P) && (I.resourceCategory === "all" ? (a.push(...$(O.assets.css.async)), a.push(...$(O.assets.css.sync)), l.push(...$(O.assets.js.async)), l.push(...$(O.assets.js.sync))) : (I.resourceCategory = "sync") && (a.push(...$(O.assets.css.sync)), l.push(...$(O.assets.js.sync))), setPreloaded(P));
1522
1553
  }
1523
1554
  }
1524
1555
  }, !0, {}, s), s.shared) {
1525
- const _ = (g, v) => {
1526
- const S = getRegisteredShare(n.shareScopeMap, v.sharedName, g, n.sharedHandler.hooks.lifecycle.resolveShare);
1527
- S && typeof S.lib == "function" && (v.assets.js.sync.forEach((I) => {
1528
- c.add(I);
1529
- }), v.assets.css.sync.forEach((I) => {
1530
- u.add(I);
1556
+ const _ = (b, v) => {
1557
+ const I = getRegisteredShare(n.shareScopeMap, v.sharedName, b, n.sharedHandler.hooks.lifecycle.resolveShare);
1558
+ I && typeof I.lib == "function" && (v.assets.js.sync.forEach((S) => {
1559
+ c.add(S);
1560
+ }), v.assets.css.sync.forEach((S) => {
1561
+ u.add(S);
1531
1562
  }));
1532
1563
  };
1533
- s.shared.forEach((g) => {
1564
+ s.shared.forEach((b) => {
1534
1565
  var v;
1535
- const S = (v = d.shared) == null ? void 0 : v[g.sharedName];
1536
- if (!S)
1537
- return;
1538
- const I = g.version ? S.find((A) => A.version === g.version) : S;
1566
+ const I = (v = p.shared) == null ? void 0 : v[b.sharedName];
1539
1567
  if (!I)
1540
1568
  return;
1541
- arrayOptions(I).forEach((A) => {
1542
- _(A, g);
1569
+ const S = b.version ? I.find((A) => A.version === b.version) : I;
1570
+ if (!S)
1571
+ return;
1572
+ arrayOptions(S).forEach((A) => {
1573
+ _(A, b);
1543
1574
  });
1544
1575
  });
1545
1576
  }
1546
- const E = a.filter((_) => !c.has(_) && !isExisted("script", _));
1577
+ const g = l.filter((_) => !c.has(_) && !isExisted("script", _));
1547
1578
  return {
1548
- cssAssets: l.filter((_) => !u.has(_) && !isExisted("link", _)),
1549
- jsAssetsWithoutEntry: E,
1579
+ cssAssets: a.filter((_) => !u.has(_) && !isExisted("link", _)),
1580
+ jsAssetsWithoutEntry: g,
1550
1581
  entryAssets: i.filter((_) => !isExisted("script", _.url))
1551
1582
  };
1552
1583
  }
@@ -1554,7 +1585,7 @@ const generatePreloadAssetsPlugin = function() {
1554
1585
  return {
1555
1586
  name: "generate-preload-assets-plugin",
1556
1587
  async generatePreloadAssets(n) {
1557
- const { origin: t, preloadOptions: r, remoteInfo: o, remote: s, globalSnapshot: l, remoteSnapshot: a } = n;
1588
+ const { origin: t, preloadOptions: o, remoteInfo: r, remote: s, globalSnapshot: a, remoteSnapshot: l } = n;
1558
1589
  return isBrowserEnv() ? isRemoteInfoWithEntry(s) && isPureRemoteEntry(s) ? {
1559
1590
  cssAssets: [],
1560
1591
  jsAssetsWithoutEntry: [],
@@ -1563,15 +1594,15 @@ const generatePreloadAssetsPlugin = function() {
1563
1594
  name: s.name,
1564
1595
  url: s.entry,
1565
1596
  moduleInfo: {
1566
- name: o.name,
1597
+ name: r.name,
1567
1598
  entry: s.entry,
1568
- type: o.type || "global",
1599
+ type: r.type || "global",
1569
1600
  entryGlobalName: "",
1570
1601
  shareScope: ""
1571
1602
  }
1572
1603
  }
1573
1604
  ]
1574
- } : (assignRemoteInfo(o, a), generatePreloadAssets(t, r, o, l, a)) : {
1605
+ } : (assignRemoteInfo(r, l), generatePreloadAssets(t, o, r, a, l)) : {
1575
1606
  cssAssets: [],
1576
1607
  jsAssetsWithoutEntry: [],
1577
1608
  entryAssets: []
@@ -1580,16 +1611,16 @@ const generatePreloadAssetsPlugin = function() {
1580
1611
  };
1581
1612
  };
1582
1613
  function getGlobalRemoteInfo(n, t) {
1583
- const r = getGlobalSnapshotInfoByModuleInfo({
1584
- name: t.options.name,
1614
+ const o = getGlobalSnapshotInfoByModuleInfo({
1615
+ name: t.name,
1585
1616
  version: t.options.version
1586
- }), o = r && "remotesInfo" in r && r.remotesInfo && getInfoWithoutType(r.remotesInfo, n.name).value;
1587
- return o && o.matchedVersion ? {
1588
- hostGlobalSnapshot: r,
1617
+ }), r = o && "remotesInfo" in o && o.remotesInfo && getInfoWithoutType(o.remotesInfo, n.name).value;
1618
+ return r && r.matchedVersion ? {
1619
+ hostGlobalSnapshot: o,
1589
1620
  globalSnapshot: getGlobalSnapshot(),
1590
1621
  remoteSnapshot: getGlobalSnapshotInfoByModuleInfo({
1591
1622
  name: n.name,
1592
- version: o.matchedVersion
1623
+ version: r.matchedVersion
1593
1624
  })
1594
1625
  } : {
1595
1626
  hostGlobalSnapshot: void 0,
@@ -1601,128 +1632,117 @@ function getGlobalRemoteInfo(n, t) {
1601
1632
  };
1602
1633
  }
1603
1634
  class SnapshotHandler {
1604
- async loadSnapshot(t) {
1605
- const { options: r } = this.HostInstance, { hostGlobalSnapshot: o, remoteSnapshot: s, globalSnapshot: l } = this.getGlobalRemoteInfo(t), { remoteSnapshot: a, globalSnapshot: i } = await this.hooks.lifecycle.loadSnapshot.emit({
1606
- options: r,
1607
- moduleInfo: t,
1608
- hostGlobalSnapshot: o,
1609
- remoteSnapshot: s,
1610
- globalSnapshot: l
1611
- });
1612
- return {
1613
- remoteSnapshot: a,
1614
- globalSnapshot: i
1615
- };
1616
- }
1617
1635
  // eslint-disable-next-line max-lines-per-function
1618
- async loadRemoteSnapshotInfo(t) {
1619
- const { options: r } = this.HostInstance;
1636
+ async loadRemoteSnapshotInfo({ moduleInfo: t, id: o, expose: r }) {
1637
+ const { options: s } = this.HostInstance;
1620
1638
  await this.hooks.lifecycle.beforeLoadRemoteSnapshot.emit({
1621
- options: r,
1639
+ options: s,
1622
1640
  moduleInfo: t
1623
1641
  });
1624
- let o = getGlobalSnapshotInfoByModuleInfo({
1642
+ let a = getGlobalSnapshotInfoByModuleInfo({
1625
1643
  name: this.HostInstance.options.name,
1626
1644
  version: this.HostInstance.options.version
1627
1645
  });
1628
- o || (o = {
1646
+ a || (a = {
1629
1647
  version: this.HostInstance.options.version || "",
1630
1648
  remoteEntry: "",
1631
1649
  remotesInfo: {}
1632
1650
  }, addGlobalSnapshot({
1633
- [this.HostInstance.options.name]: o
1634
- })), o && "remotesInfo" in o && !getInfoWithoutType(o.remotesInfo, t.name).value && ("version" in t || "entry" in t) && (o.remotesInfo = _extends$1({}, o == null ? void 0 : o.remotesInfo, {
1651
+ [this.HostInstance.options.name]: a
1652
+ })), a && "remotesInfo" in a && !getInfoWithoutType(a.remotesInfo, t.name).value && ("version" in t || "entry" in t) && (a.remotesInfo = _extends$1({}, a == null ? void 0 : a.remotesInfo, {
1635
1653
  [t.name]: {
1636
1654
  matchedVersion: "version" in t ? t.version : t.entry
1637
1655
  }
1638
1656
  }));
1639
- const { hostGlobalSnapshot: s, remoteSnapshot: l, globalSnapshot: a } = this.getGlobalRemoteInfo(t), { remoteSnapshot: i, globalSnapshot: c } = await this.hooks.lifecycle.loadSnapshot.emit({
1640
- options: r,
1657
+ const { hostGlobalSnapshot: l, remoteSnapshot: i, globalSnapshot: c } = this.getGlobalRemoteInfo(t), { remoteSnapshot: u, globalSnapshot: p } = await this.hooks.lifecycle.loadSnapshot.emit({
1658
+ options: s,
1641
1659
  moduleInfo: t,
1642
- hostGlobalSnapshot: s,
1643
- remoteSnapshot: l,
1644
- globalSnapshot: a
1660
+ hostGlobalSnapshot: l,
1661
+ remoteSnapshot: i,
1662
+ globalSnapshot: c
1645
1663
  });
1646
- let u, d;
1647
- if (i)
1648
- if (isManifestProvider(i)) {
1649
- const p = isBrowserEnv() ? i.remoteEntry : i.ssrRemoteEntry || i.remoteEntry || "", m = await this.getManifestJson(p, t, {}), y = setGlobalSnapshotInfoByModuleInfo(_extends$1({}, t, {
1664
+ let d, m;
1665
+ if (u)
1666
+ if (isManifestProvider(u)) {
1667
+ const y = isBrowserEnv() ? u.remoteEntry : u.ssrRemoteEntry || u.remoteEntry || "", g = await this.getManifestJson(y, t, {}), E = setGlobalSnapshotInfoByModuleInfo(_extends$1({}, t, {
1650
1668
  // The global remote may be overridden
1651
1669
  // Therefore, set the snapshot key to the global address of the actual request
1652
- entry: p
1653
- }), m);
1654
- u = m, d = y;
1670
+ entry: y
1671
+ }), g);
1672
+ d = g, m = E;
1655
1673
  } else {
1656
- const { remoteSnapshot: p } = await this.hooks.lifecycle.loadRemoteSnapshot.emit({
1674
+ const { remoteSnapshot: y } = await this.hooks.lifecycle.loadRemoteSnapshot.emit({
1657
1675
  options: this.HostInstance.options,
1658
1676
  moduleInfo: t,
1659
- remoteSnapshot: i,
1677
+ remoteSnapshot: u,
1660
1678
  from: "global"
1661
1679
  });
1662
- u = p, d = c;
1680
+ d = y, m = p;
1663
1681
  }
1664
1682
  else if (isRemoteInfoWithEntry(t)) {
1665
- const p = await this.getManifestJson(t.entry, t, {}), m = setGlobalSnapshotInfoByModuleInfo(t, p), { remoteSnapshot: y } = await this.hooks.lifecycle.loadRemoteSnapshot.emit({
1683
+ const y = await this.getManifestJson(t.entry, t, {}), g = setGlobalSnapshotInfoByModuleInfo(t, y), { remoteSnapshot: E } = await this.hooks.lifecycle.loadRemoteSnapshot.emit({
1666
1684
  options: this.HostInstance.options,
1667
1685
  moduleInfo: t,
1668
- remoteSnapshot: p,
1686
+ remoteSnapshot: y,
1669
1687
  from: "global"
1670
1688
  });
1671
- u = y, d = m;
1689
+ d = E, m = g;
1672
1690
  } else
1673
1691
  error(getShortErrorMsg(RUNTIME_007, runtimeDescMap, {
1674
1692
  hostName: t.name,
1675
1693
  hostVersion: t.version,
1676
- globalSnapshot: JSON.stringify(c)
1694
+ globalSnapshot: JSON.stringify(p)
1677
1695
  }));
1678
1696
  return await this.hooks.lifecycle.afterLoadSnapshot.emit({
1679
- options: r,
1697
+ id: o,
1698
+ host: this.HostInstance,
1699
+ options: s,
1680
1700
  moduleInfo: t,
1681
- remoteSnapshot: u
1701
+ remoteSnapshot: d
1682
1702
  }), {
1683
- remoteSnapshot: u,
1684
- globalSnapshot: d
1703
+ remoteSnapshot: d,
1704
+ globalSnapshot: m
1685
1705
  };
1686
1706
  }
1687
1707
  getGlobalRemoteInfo(t) {
1688
1708
  return getGlobalRemoteInfo(t, this.HostInstance);
1689
1709
  }
1690
- async getManifestJson(t, r, o) {
1710
+ async getManifestJson(t, o, r) {
1691
1711
  const s = async () => {
1692
- let a = this.manifestCache.get(t);
1693
- if (a)
1694
- return a;
1712
+ let l = this.manifestCache.get(t);
1713
+ if (l)
1714
+ return l;
1695
1715
  try {
1696
1716
  let i = await this.loaderHook.lifecycle.fetch.emit(t, {});
1697
- (!i || !(i instanceof Response)) && (i = await fetch(t, {})), a = await i.json();
1717
+ (!i || !(i instanceof Response)) && (i = await fetch(t, {})), l = await i.json();
1698
1718
  } catch (i) {
1699
- a = await this.HostInstance.remoteHandler.hooks.lifecycle.errorLoadRemote.emit({
1719
+ l = await this.HostInstance.remoteHandler.hooks.lifecycle.errorLoadRemote.emit({
1700
1720
  id: t,
1701
1721
  error: i,
1702
1722
  from: "runtime",
1703
1723
  lifecycle: "afterResolve",
1704
1724
  origin: this.HostInstance
1705
- }), a || (delete this.manifestLoading[t], error(getShortErrorMsg(RUNTIME_003, runtimeDescMap, {
1725
+ }), l || (delete this.manifestLoading[t], error(getShortErrorMsg(RUNTIME_003, runtimeDescMap, {
1706
1726
  manifestUrl: t,
1707
- moduleName: r.name,
1727
+ moduleName: o.name,
1708
1728
  hostName: this.HostInstance.options.name
1709
1729
  }, `${i}`)));
1710
1730
  }
1711
- return assert(a.metaData && a.exposes && a.shared, `${t} is not a federation manifest`), this.manifestCache.set(t, a), a;
1712
- }, l = async () => {
1713
- const a = await s(), i = generateSnapshotFromManifest(a, {
1731
+ return assert(l.metaData && l.exposes && l.shared, `${t} is not a federation manifest`), this.manifestCache.set(t, l), l;
1732
+ }, a = async () => {
1733
+ const l = await s(), i = generateSnapshotFromManifest(l, {
1714
1734
  version: t
1715
1735
  }), { remoteSnapshot: c } = await this.hooks.lifecycle.loadRemoteSnapshot.emit({
1716
1736
  options: this.HostInstance.options,
1717
- moduleInfo: r,
1718
- manifestJson: a,
1737
+ moduleInfo: o,
1738
+ manifestJson: l,
1719
1739
  remoteSnapshot: i,
1720
1740
  manifestUrl: t,
1721
1741
  from: "manifest"
1722
1742
  });
1723
1743
  return c;
1724
1744
  };
1725
- return this.manifestLoading[t] || (this.manifestLoading[t] = l().then((a) => a)), this.manifestLoading[t];
1745
+ return this.manifestLoading[t] || (this.manifestLoading[t] = a().then((l) => l)), this.manifestLoading[t];
1726
1746
  }
1727
1747
  constructor(t) {
1728
1748
  this.loadingHostSnapshot = null, this.manifestCache = /* @__PURE__ */ new Map(), this.hooks = new PluginSystem({
@@ -1735,44 +1755,44 @@ class SnapshotHandler {
1735
1755
  }
1736
1756
  class SharedHandler {
1737
1757
  // register shared in shareScopeMap
1738
- registerShared(t, r) {
1739
- const { shareInfos: o, shared: s } = formatShareConfigs(t, r);
1740
- return Object.keys(o).forEach((a) => {
1741
- o[a].forEach((c) => {
1742
- !getRegisteredShare(this.shareScopeMap, a, c, this.hooks.lifecycle.resolveShare) && c && c.lib && this.setShared({
1743
- pkgName: a,
1758
+ registerShared(t, o) {
1759
+ const { shareInfos: r, shared: s } = formatShareConfigs(t, o);
1760
+ return Object.keys(r).forEach((l) => {
1761
+ r[l].forEach((c) => {
1762
+ !getRegisteredShare(this.shareScopeMap, l, c, this.hooks.lifecycle.resolveShare) && c && c.lib && this.setShared({
1763
+ pkgName: l,
1744
1764
  lib: c.lib,
1745
1765
  get: c.get,
1746
1766
  loaded: !0,
1747
1767
  shared: c,
1748
- from: r.name
1768
+ from: o.name
1749
1769
  });
1750
1770
  });
1751
1771
  }), {
1752
- shareInfos: o,
1772
+ shareInfos: r,
1753
1773
  shared: s
1754
1774
  };
1755
1775
  }
1756
- async loadShare(t, r) {
1757
- const { host: o } = this, s = getTargetSharedOptions({
1776
+ async loadShare(t, o) {
1777
+ const { host: r } = this, s = getTargetSharedOptions({
1758
1778
  pkgName: t,
1759
- extraOptions: r,
1760
- shareInfos: o.options.shared
1779
+ extraOptions: o,
1780
+ shareInfos: r.options.shared
1761
1781
  });
1762
1782
  s != null && s.scope && await Promise.all(s.scope.map(async (u) => {
1763
1783
  await Promise.all(this.initializeSharing(u, {
1764
1784
  strategy: s.strategy
1765
1785
  }));
1766
1786
  }));
1767
- const l = await this.hooks.lifecycle.beforeLoadShare.emit({
1787
+ const a = await this.hooks.lifecycle.beforeLoadShare.emit({
1768
1788
  pkgName: t,
1769
1789
  shareInfo: s,
1770
- shared: o.options.shared,
1771
- origin: o
1772
- }), { shareInfo: a } = l;
1773
- assert(a, `Cannot find ${t} Share in the ${o.options.name}. Please ensure that the ${t} Share parameters have been injected`);
1774
- const i = getRegisteredShare(this.shareScopeMap, t, a, this.hooks.lifecycle.resolveShare), c = (u) => {
1775
- u.useIn || (u.useIn = []), addUniqueItem(u.useIn, o.options.name);
1790
+ shared: r.options.shared,
1791
+ origin: r
1792
+ }), { shareInfo: l } = a;
1793
+ assert(l, `Cannot find ${t} Share in the ${r.options.name}. Please ensure that the ${t} Share parameters have been injected`);
1794
+ const i = getRegisteredShare(this.shareScopeMap, t, l, this.hooks.lifecycle.resolveShare), c = (u) => {
1795
+ u.useIn || (u.useIn = []), addUniqueItem(u.useIn, r.options.name);
1776
1796
  };
1777
1797
  if (i && i.lib)
1778
1798
  return c(i), i.lib;
@@ -1780,37 +1800,37 @@ class SharedHandler {
1780
1800
  const u = await i.loading;
1781
1801
  return i.loaded = !0, i.lib || (i.lib = u), c(i), u;
1782
1802
  } else if (i) {
1783
- const d = (async () => {
1784
- const p = await i.get();
1785
- a.lib = p, a.loaded = !0, c(a);
1786
- const m = getRegisteredShare(this.shareScopeMap, t, a, this.hooks.lifecycle.resolveShare);
1787
- return m && (m.lib = p, m.loaded = !0), p;
1803
+ const p = (async () => {
1804
+ const d = await i.get();
1805
+ l.lib = d, l.loaded = !0, c(l);
1806
+ const m = getRegisteredShare(this.shareScopeMap, t, l, this.hooks.lifecycle.resolveShare);
1807
+ return m && (m.lib = d, m.loaded = !0), d;
1788
1808
  })();
1789
1809
  return this.setShared({
1790
1810
  pkgName: t,
1791
1811
  loaded: !1,
1792
1812
  shared: i,
1793
- from: o.options.name,
1813
+ from: r.options.name,
1794
1814
  lib: null,
1795
- loading: d
1796
- }), d;
1815
+ loading: p
1816
+ }), p;
1797
1817
  } else {
1798
- if (r != null && r.customShareInfo)
1818
+ if (o != null && o.customShareInfo)
1799
1819
  return !1;
1800
- const d = (async () => {
1801
- const p = await a.get();
1802
- a.lib = p, a.loaded = !0, c(a);
1803
- const m = getRegisteredShare(this.shareScopeMap, t, a, this.hooks.lifecycle.resolveShare);
1804
- return m && (m.lib = p, m.loaded = !0), p;
1820
+ const p = (async () => {
1821
+ const d = await l.get();
1822
+ l.lib = d, l.loaded = !0, c(l);
1823
+ const m = getRegisteredShare(this.shareScopeMap, t, l, this.hooks.lifecycle.resolveShare);
1824
+ return m && (m.lib = d, m.loaded = !0), d;
1805
1825
  })();
1806
1826
  return this.setShared({
1807
1827
  pkgName: t,
1808
1828
  loaded: !1,
1809
- shared: a,
1810
- from: o.options.name,
1829
+ shared: l,
1830
+ from: r.options.name,
1811
1831
  lib: null,
1812
- loading: d
1813
- }), d;
1832
+ loading: p
1833
+ }), p;
1814
1834
  }
1815
1835
  }
1816
1836
  /**
@@ -1819,85 +1839,85 @@ class SharedHandler {
1819
1839
  * If the share scope does not exist, it creates one.
1820
1840
  */
1821
1841
  // eslint-disable-next-line @typescript-eslint/member-ordering
1822
- initializeSharing(t = DEFAULT_SCOPE, r) {
1823
- const { host: o } = this, s = r == null ? void 0 : r.from, l = r == null ? void 0 : r.strategy;
1824
- let a = r == null ? void 0 : r.initScope;
1842
+ initializeSharing(t = DEFAULT_SCOPE, o) {
1843
+ const { host: r } = this, s = o == null ? void 0 : o.from, a = o == null ? void 0 : o.strategy;
1844
+ let l = o == null ? void 0 : o.initScope;
1825
1845
  const i = [];
1826
1846
  if (s !== "build") {
1827
- const { initTokens: E } = this;
1828
- a || (a = []);
1829
- let b = E[t];
1830
- if (b || (b = E[t] = {
1847
+ const { initTokens: g } = this;
1848
+ l || (l = []);
1849
+ let E = g[t];
1850
+ if (E || (E = g[t] = {
1831
1851
  from: this.host.name
1832
- }), a.indexOf(b) >= 0) return i;
1833
- a.push(b);
1852
+ }), l.indexOf(E) >= 0) return i;
1853
+ l.push(E);
1834
1854
  }
1835
- const c = this.shareScopeMap, u = o.options.name;
1855
+ const c = this.shareScopeMap, u = r.options.name;
1836
1856
  c[t] || (c[t] = {});
1837
- const d = c[t], p = (E, b) => {
1857
+ const p = c[t], d = (g, E) => {
1838
1858
  var _;
1839
- const { version: g, eager: v } = b;
1840
- d[E] = d[E] || {};
1841
- const S = d[E], I = S[g], R = !!(I && (I.eager || (_ = I.shareConfig) != null && _.eager));
1842
- (!I || I.strategy !== "loaded-first" && !I.loaded && (!v != !R ? v : u > I.from)) && (S[g] = b);
1843
- }, m = (E) => E && E.init && E.init(c[t], a), y = async (E) => {
1844
- const { module: b } = await o.remoteHandler.getRemoteModuleAndOptions({
1845
- id: E
1859
+ const { version: b, eager: v } = E;
1860
+ p[g] = p[g] || {};
1861
+ const I = p[g], S = I[b], R = !!(S && (S.eager || (_ = S.shareConfig) != null && _.eager));
1862
+ (!S || S.strategy !== "loaded-first" && !S.loaded && (!v != !R ? v : u > S.from)) && (I[b] = E);
1863
+ }, m = (g) => g && g.init && g.init(c[t], l), y = async (g) => {
1864
+ const { module: E } = await r.remoteHandler.getRemoteModuleAndOptions({
1865
+ id: g
1846
1866
  });
1847
- if (b.getEntry) {
1867
+ if (E.getEntry) {
1848
1868
  let _;
1849
1869
  try {
1850
- _ = await b.getEntry();
1851
- } catch (g) {
1852
- _ = await o.remoteHandler.hooks.lifecycle.errorLoadRemote.emit({
1853
- id: E,
1854
- error: g,
1870
+ _ = await E.getEntry();
1871
+ } catch (b) {
1872
+ _ = await r.remoteHandler.hooks.lifecycle.errorLoadRemote.emit({
1873
+ id: g,
1874
+ error: b,
1855
1875
  from: "runtime",
1856
1876
  lifecycle: "beforeLoadShare",
1857
- origin: o
1877
+ origin: r
1858
1878
  });
1859
1879
  }
1860
- b.inited || (await m(_), b.inited = !0);
1880
+ E.inited || (await m(_), E.inited = !0);
1861
1881
  }
1862
1882
  };
1863
- return Object.keys(o.options.shared).forEach((E) => {
1864
- o.options.shared[E].forEach((_) => {
1865
- _.scope.includes(t) && p(E, _);
1883
+ return Object.keys(r.options.shared).forEach((g) => {
1884
+ r.options.shared[g].forEach((_) => {
1885
+ _.scope.includes(t) && d(g, _);
1866
1886
  });
1867
- }), (o.options.shareStrategy === "version-first" || l === "version-first") && o.options.remotes.forEach((E) => {
1868
- E.shareScope === t && i.push(y(E.name));
1887
+ }), (r.options.shareStrategy === "version-first" || a === "version-first") && r.options.remotes.forEach((g) => {
1888
+ g.shareScope === t && i.push(y(g.name));
1869
1889
  }), i;
1870
1890
  }
1871
1891
  // The lib function will only be available if the shared set by eager or runtime init is set or the shared is successfully loaded.
1872
1892
  // 1. If the loaded shared already exists globally, then it will be reused
1873
1893
  // 2. If lib exists in local shared, it will be used directly
1874
1894
  // 3. If the local get returns something other than Promise, then it will be used directly
1875
- loadShareSync(t, r) {
1876
- const { host: o } = this, s = getTargetSharedOptions({
1895
+ loadShareSync(t, o) {
1896
+ const { host: r } = this, s = getTargetSharedOptions({
1877
1897
  pkgName: t,
1878
- extraOptions: r,
1879
- shareInfos: o.options.shared
1898
+ extraOptions: o,
1899
+ shareInfos: r.options.shared
1880
1900
  });
1881
1901
  s != null && s.scope && s.scope.forEach((i) => {
1882
1902
  this.initializeSharing(i, {
1883
1903
  strategy: s.strategy
1884
1904
  });
1885
1905
  });
1886
- const l = getRegisteredShare(this.shareScopeMap, t, s, this.hooks.lifecycle.resolveShare), a = (i) => {
1887
- i.useIn || (i.useIn = []), addUniqueItem(i.useIn, o.options.name);
1906
+ const a = getRegisteredShare(this.shareScopeMap, t, s, this.hooks.lifecycle.resolveShare), l = (i) => {
1907
+ i.useIn || (i.useIn = []), addUniqueItem(i.useIn, r.options.name);
1888
1908
  };
1889
- if (l) {
1890
- if (typeof l.lib == "function")
1891
- return a(l), l.loaded || (l.loaded = !0, l.from === o.options.name && (s.loaded = !0)), l.lib;
1892
- if (typeof l.get == "function") {
1893
- const i = l.get();
1909
+ if (a) {
1910
+ if (typeof a.lib == "function")
1911
+ return l(a), a.loaded || (a.loaded = !0, a.from === r.options.name && (s.loaded = !0)), a.lib;
1912
+ if (typeof a.get == "function") {
1913
+ const i = a.get();
1894
1914
  if (!(i instanceof Promise))
1895
- return a(l), this.setShared({
1915
+ return l(a), this.setShared({
1896
1916
  pkgName: t,
1897
1917
  loaded: !0,
1898
- from: o.options.name,
1918
+ from: r.options.name,
1899
1919
  lib: i,
1900
- shared: l
1920
+ shared: a
1901
1921
  }), i;
1902
1922
  }
1903
1923
  }
@@ -1906,37 +1926,37 @@ class SharedHandler {
1906
1926
  if (s.get) {
1907
1927
  const i = s.get();
1908
1928
  if (i instanceof Promise) {
1909
- const c = (r == null ? void 0 : r.from) === "build" ? RUNTIME_005 : RUNTIME_006;
1929
+ const c = (o == null ? void 0 : o.from) === "build" ? RUNTIME_005 : RUNTIME_006;
1910
1930
  throw new Error(getShortErrorMsg(c, runtimeDescMap, {
1911
- hostName: o.options.name,
1931
+ hostName: r.options.name,
1912
1932
  sharedPkgName: t
1913
1933
  }));
1914
1934
  }
1915
1935
  return s.lib = i, this.setShared({
1916
1936
  pkgName: t,
1917
1937
  loaded: !0,
1918
- from: o.options.name,
1938
+ from: r.options.name,
1919
1939
  lib: s.lib,
1920
1940
  shared: s
1921
1941
  }), s.lib;
1922
1942
  }
1923
1943
  throw new Error(getShortErrorMsg(RUNTIME_006, runtimeDescMap, {
1924
- hostName: o.options.name,
1944
+ hostName: r.options.name,
1925
1945
  sharedPkgName: t
1926
1946
  }));
1927
1947
  }
1928
- initShareScopeMap(t, r, o = {}) {
1948
+ initShareScopeMap(t, o, r = {}) {
1929
1949
  const { host: s } = this;
1930
- this.shareScopeMap[t] = r, this.hooks.lifecycle.initContainerShareScopeMap.emit({
1931
- shareScope: r,
1950
+ this.shareScopeMap[t] = o, this.hooks.lifecycle.initContainerShareScopeMap.emit({
1951
+ shareScope: o,
1932
1952
  options: s.options,
1933
1953
  origin: s,
1934
1954
  scopeName: t,
1935
- hostShareScopeMap: o.hostShareScopeMap
1955
+ hostShareScopeMap: r.hostShareScopeMap
1936
1956
  });
1937
1957
  }
1938
- setShared({ pkgName: t, shared: r, from: o, lib: s, loading: l, loaded: a, get: i }) {
1939
- const { version: c, scope: u = "default" } = r, d = _object_without_properties_loose(r, [
1958
+ setShared({ pkgName: t, shared: o, from: r, lib: s, loading: a, loaded: l, get: i }) {
1959
+ const { version: c, scope: u = "default" } = o, p = _object_without_properties_loose(o, [
1940
1960
  "version",
1941
1961
  "scope"
1942
1962
  ]);
@@ -1949,20 +1969,20 @@ class SharedHandler {
1949
1969
  scope: [
1950
1970
  "default"
1951
1971
  ]
1952
- }, d, {
1972
+ }, p, {
1953
1973
  lib: s,
1954
- loaded: a,
1955
- loading: l
1974
+ loaded: l,
1975
+ loading: a
1956
1976
  }), i && (this.shareScopeMap[m][t][c].get = i);
1957
1977
  return;
1958
1978
  }
1959
1979
  const y = this.shareScopeMap[m][t][c];
1960
- l && !y.loading && (y.loading = l);
1980
+ a && !y.loading && (y.loading = a);
1961
1981
  });
1962
1982
  }
1963
1983
  _setGlobalShareScopeMap(t) {
1964
- const r = getGlobalShareScope(), o = t.id || t.name;
1965
- o && !r[o] && (r[o] = this.shareScopeMap);
1984
+ const o = getGlobalShareScope(), r = t.id || t.name;
1985
+ r && !o[r] && (o[r] = this.shareScopeMap);
1966
1986
  }
1967
1987
  constructor(t) {
1968
1988
  this.hooks = new PluginSystem({
@@ -1977,145 +1997,147 @@ class SharedHandler {
1977
1997
  }
1978
1998
  }
1979
1999
  class RemoteHandler {
1980
- formatAndRegisterRemote(t, r) {
1981
- return (r.remotes || []).reduce((s, l) => (this.registerRemote(l, s, {
2000
+ formatAndRegisterRemote(t, o) {
2001
+ return (o.remotes || []).reduce((s, a) => (this.registerRemote(a, s, {
1982
2002
  force: !1
1983
2003
  }), s), t.remotes);
1984
2004
  }
1985
- setIdToRemoteMap(t, r) {
1986
- const { remote: o, expose: s } = r, { name: l, alias: a } = o;
2005
+ setIdToRemoteMap(t, o) {
2006
+ const { remote: r, expose: s } = o, { name: a, alias: l } = r;
1987
2007
  if (this.idToRemoteMap[t] = {
1988
- name: o.name,
2008
+ name: r.name,
1989
2009
  expose: s
1990
- }, a && t.startsWith(l)) {
1991
- const i = t.replace(l, a);
2010
+ }, l && t.startsWith(a)) {
2011
+ const i = t.replace(a, l);
1992
2012
  this.idToRemoteMap[i] = {
1993
- name: o.name,
2013
+ name: r.name,
1994
2014
  expose: s
1995
2015
  };
1996
2016
  return;
1997
2017
  }
1998
- if (a && t.startsWith(a)) {
1999
- const i = t.replace(a, l);
2018
+ if (l && t.startsWith(l)) {
2019
+ const i = t.replace(l, a);
2000
2020
  this.idToRemoteMap[i] = {
2001
- name: o.name,
2021
+ name: r.name,
2002
2022
  expose: s
2003
2023
  };
2004
2024
  }
2005
2025
  }
2006
2026
  // eslint-disable-next-line max-lines-per-function
2007
2027
  // eslint-disable-next-line @typescript-eslint/member-ordering
2008
- async loadRemote(t, r) {
2009
- const { host: o } = this;
2028
+ async loadRemote(t, o) {
2029
+ const { host: r } = this;
2010
2030
  try {
2011
- const { loadFactory: s = !0 } = r || {
2031
+ const { loadFactory: s = !0 } = o || {
2012
2032
  loadFactory: !0
2013
- }, { module: l, moduleOptions: a, remoteMatchInfo: i } = await this.getRemoteModuleAndOptions({
2033
+ }, { module: a, moduleOptions: l, remoteMatchInfo: i } = await this.getRemoteModuleAndOptions({
2014
2034
  id: t
2015
- }), { pkgNameOrAlias: c, remote: u, expose: d, id: p, remoteSnapshot: m } = i, y = await l.get(p, d, r, m), E = await this.hooks.lifecycle.onLoad.emit({
2016
- id: p,
2035
+ }), { pkgNameOrAlias: c, remote: u, expose: p, id: d, remoteSnapshot: m } = i, y = await a.get(d, p, o, m), g = await this.hooks.lifecycle.onLoad.emit({
2036
+ id: d,
2017
2037
  pkgNameOrAlias: c,
2018
- expose: d,
2038
+ expose: p,
2019
2039
  exposeModule: s ? y : void 0,
2020
2040
  exposeModuleFactory: s ? void 0 : y,
2021
2041
  remote: u,
2022
- options: a,
2023
- moduleInstance: l,
2024
- origin: o
2042
+ options: l,
2043
+ moduleInstance: a,
2044
+ origin: r
2025
2045
  });
2026
- return this.setIdToRemoteMap(t, i), typeof E == "function" ? E : y;
2046
+ return this.setIdToRemoteMap(t, i), typeof g == "function" ? g : y;
2027
2047
  } catch (s) {
2028
- const { from: l = "runtime" } = r || {
2048
+ const { from: a = "runtime" } = o || {
2029
2049
  from: "runtime"
2030
- }, a = await this.hooks.lifecycle.errorLoadRemote.emit({
2050
+ }, l = await this.hooks.lifecycle.errorLoadRemote.emit({
2031
2051
  id: t,
2032
2052
  error: s,
2033
- from: l,
2053
+ from: a,
2034
2054
  lifecycle: "onLoad",
2035
- origin: o
2055
+ origin: r
2036
2056
  });
2037
- if (!a)
2057
+ if (!l)
2038
2058
  throw s;
2039
- return a;
2059
+ return l;
2040
2060
  }
2041
2061
  }
2042
2062
  // eslint-disable-next-line @typescript-eslint/member-ordering
2043
2063
  async preloadRemote(t) {
2044
- const { host: r } = this;
2064
+ const { host: o } = this;
2045
2065
  await this.hooks.lifecycle.beforePreloadRemote.emit({
2046
2066
  preloadOps: t,
2047
- options: r.options,
2048
- origin: r
2067
+ options: o.options,
2068
+ origin: o
2049
2069
  });
2050
- const o = formatPreloadArgs(r.options.remotes, t);
2051
- await Promise.all(o.map(async (s) => {
2052
- const { remote: l } = s, a = getRemoteInfo(l), { globalSnapshot: i, remoteSnapshot: c } = await r.snapshotHandler.loadRemoteSnapshotInfo(l), u = await this.hooks.lifecycle.generatePreloadAssets.emit({
2053
- origin: r,
2070
+ const r = formatPreloadArgs(o.options.remotes, t);
2071
+ await Promise.all(r.map(async (s) => {
2072
+ const { remote: a } = s, l = getRemoteInfo(a), { globalSnapshot: i, remoteSnapshot: c } = await o.snapshotHandler.loadRemoteSnapshotInfo({
2073
+ moduleInfo: a
2074
+ }), u = await this.hooks.lifecycle.generatePreloadAssets.emit({
2075
+ origin: o,
2054
2076
  preloadOptions: s,
2055
- remote: l,
2056
- remoteInfo: a,
2077
+ remote: a,
2078
+ remoteInfo: l,
2057
2079
  globalSnapshot: i,
2058
2080
  remoteSnapshot: c
2059
2081
  });
2060
- u && preloadAssets(a, r, u);
2082
+ u && preloadAssets(l, o, u);
2061
2083
  }));
2062
2084
  }
2063
- registerRemotes(t, r) {
2064
- const { host: o } = this;
2085
+ registerRemotes(t, o) {
2086
+ const { host: r } = this;
2065
2087
  t.forEach((s) => {
2066
- this.registerRemote(s, o.options.remotes, {
2067
- force: r == null ? void 0 : r.force
2088
+ this.registerRemote(s, r.options.remotes, {
2089
+ force: o == null ? void 0 : o.force
2068
2090
  });
2069
2091
  });
2070
2092
  }
2071
2093
  async getRemoteModuleAndOptions(t) {
2072
- const { host: r } = this, { id: o } = t;
2094
+ const { host: o } = this, { id: r } = t;
2073
2095
  let s;
2074
2096
  try {
2075
2097
  s = await this.hooks.lifecycle.beforeRequest.emit({
2076
- id: o,
2077
- options: r.options,
2078
- origin: r
2098
+ id: r,
2099
+ options: o.options,
2100
+ origin: o
2079
2101
  });
2080
- } catch (E) {
2102
+ } catch (g) {
2081
2103
  if (s = await this.hooks.lifecycle.errorLoadRemote.emit({
2082
- id: o,
2083
- options: r.options,
2084
- origin: r,
2104
+ id: r,
2105
+ options: o.options,
2106
+ origin: o,
2085
2107
  from: "runtime",
2086
- error: E,
2108
+ error: g,
2087
2109
  lifecycle: "beforeRequest"
2088
2110
  }), !s)
2089
- throw E;
2111
+ throw g;
2090
2112
  }
2091
- const { id: l } = s, a = matchRemoteWithNameAndExpose(r.options.remotes, l);
2092
- assert(a, getShortErrorMsg(RUNTIME_004, runtimeDescMap, {
2093
- hostName: r.options.name,
2094
- requestId: l
2113
+ const { id: a } = s, l = matchRemoteWithNameAndExpose(o.options.remotes, a);
2114
+ assert(l, getShortErrorMsg(RUNTIME_004, runtimeDescMap, {
2115
+ hostName: o.options.name,
2116
+ requestId: a
2095
2117
  }));
2096
- const { remote: i } = a, c = getRemoteInfo(i), u = await r.sharedHandler.hooks.lifecycle.afterResolve.emit(_extends$1({
2097
- id: l
2098
- }, a, {
2099
- options: r.options,
2100
- origin: r,
2118
+ const { remote: i } = l, c = getRemoteInfo(i), u = await o.sharedHandler.hooks.lifecycle.afterResolve.emit(_extends$1({
2119
+ id: a
2120
+ }, l, {
2121
+ options: o.options,
2122
+ origin: o,
2101
2123
  remoteInfo: c
2102
- })), { remote: d, expose: p } = u;
2103
- assert(d && p, `The 'beforeRequest' hook was executed, but it failed to return the correct 'remote' and 'expose' values while loading ${l}.`);
2104
- let m = r.moduleCache.get(d.name);
2124
+ })), { remote: p, expose: d } = u;
2125
+ assert(p && d, `The 'beforeRequest' hook was executed, but it failed to return the correct 'remote' and 'expose' values while loading ${a}.`);
2126
+ let m = o.moduleCache.get(p.name);
2105
2127
  const y = {
2106
- host: r,
2128
+ host: o,
2107
2129
  remoteInfo: c
2108
2130
  };
2109
- return m || (m = new Module(y), r.moduleCache.set(d.name, m)), {
2131
+ return m || (m = new Module(y), o.moduleCache.set(p.name, m)), {
2110
2132
  module: m,
2111
2133
  moduleOptions: y,
2112
2134
  remoteMatchInfo: u
2113
2135
  };
2114
2136
  }
2115
- registerRemote(t, r, o) {
2116
- const { host: s } = this, l = () => {
2137
+ registerRemote(t, o, r) {
2138
+ const { host: s } = this, a = () => {
2117
2139
  if (t.alias) {
2118
- const i = r.find((c) => {
2140
+ const i = o.find((c) => {
2119
2141
  var u;
2120
2142
  return t.alias && (c.name.startsWith(t.alias) || ((u = c.alias) == null ? void 0 : u.startsWith(t.alias)));
2121
2143
  });
@@ -2127,9 +2149,9 @@ class RemoteHandler {
2127
2149
  remote: t,
2128
2150
  origin: s
2129
2151
  });
2130
- const a = r.find((i) => i.name === t.name);
2131
- if (!a)
2132
- l(), r.push(t), this.hooks.lifecycle.registerRemote.emit({
2152
+ const l = o.find((i) => i.name === t.name);
2153
+ if (!l)
2154
+ a(), o.push(t), this.hooks.lifecycle.registerRemote.emit({
2133
2155
  remote: t,
2134
2156
  origin: s
2135
2157
  });
@@ -2138,7 +2160,7 @@ class RemoteHandler {
2138
2160
  `The remote "${t.name}" is already registered.`,
2139
2161
  "Please note that overriding it may cause unexpected errors."
2140
2162
  ];
2141
- o != null && o.force && (this.removeRemote(a), l(), r.push(t), this.hooks.lifecycle.registerRemote.emit({
2163
+ r != null && r.force && (this.removeRemote(l), a(), o.push(t), this.hooks.lifecycle.registerRemote.emit({
2142
2164
  remote: t,
2143
2165
  origin: s
2144
2166
  }), warn$1(i.join(" ")));
@@ -2146,61 +2168,61 @@ class RemoteHandler {
2146
2168
  }
2147
2169
  removeRemote(t) {
2148
2170
  try {
2149
- const { host: o } = this, { name: s } = t, l = o.options.remotes.findIndex((i) => i.name === s);
2150
- l !== -1 && o.options.remotes.splice(l, 1);
2151
- const a = o.moduleCache.get(t.name);
2152
- if (a) {
2153
- const i = a.remoteInfo, c = i.entryGlobalName;
2171
+ const { host: r } = this, { name: s } = t, a = r.options.remotes.findIndex((i) => i.name === s);
2172
+ a !== -1 && r.options.remotes.splice(a, 1);
2173
+ const l = r.moduleCache.get(t.name);
2174
+ if (l) {
2175
+ const i = l.remoteInfo, c = i.entryGlobalName;
2154
2176
  if (CurrentGlobal[c]) {
2155
- var r;
2156
- (r = Object.getOwnPropertyDescriptor(CurrentGlobal, c)) != null && r.configurable ? delete CurrentGlobal[c] : CurrentGlobal[c] = void 0;
2177
+ var o;
2178
+ (o = Object.getOwnPropertyDescriptor(CurrentGlobal, c)) != null && o.configurable ? delete CurrentGlobal[c] : CurrentGlobal[c] = void 0;
2157
2179
  }
2158
- const u = getRemoteEntryUniqueKey(a.remoteInfo);
2159
- globalLoading[u] && delete globalLoading[u], o.snapshotHandler.manifestCache.delete(i.entry);
2160
- let d = i.buildVersion ? composeKeyWithSeparator(i.name, i.buildVersion) : i.name;
2161
- const p = CurrentGlobal.__FEDERATION__.__INSTANCES__.findIndex((y) => i.buildVersion ? y.options.id === d : y.name === d);
2162
- if (p !== -1) {
2163
- const y = CurrentGlobal.__FEDERATION__.__INSTANCES__[p];
2164
- d = y.options.id || d;
2165
- const E = getGlobalShareScope();
2166
- let b = !0;
2180
+ const u = getRemoteEntryUniqueKey(l.remoteInfo);
2181
+ globalLoading[u] && delete globalLoading[u], r.snapshotHandler.manifestCache.delete(i.entry);
2182
+ let p = i.buildVersion ? composeKeyWithSeparator(i.name, i.buildVersion) : i.name;
2183
+ const d = CurrentGlobal.__FEDERATION__.__INSTANCES__.findIndex((y) => i.buildVersion ? y.options.id === p : y.name === p);
2184
+ if (d !== -1) {
2185
+ const y = CurrentGlobal.__FEDERATION__.__INSTANCES__[d];
2186
+ p = y.options.id || p;
2187
+ const g = getGlobalShareScope();
2188
+ let E = !0;
2167
2189
  const _ = [];
2168
- Object.keys(E).forEach((g) => {
2169
- const v = E[g];
2170
- v && Object.keys(v).forEach((S) => {
2171
- const I = v[S];
2172
- I && Object.keys(I).forEach((R) => {
2173
- const A = I[R];
2190
+ Object.keys(g).forEach((b) => {
2191
+ const v = g[b];
2192
+ v && Object.keys(v).forEach((I) => {
2193
+ const S = v[I];
2194
+ S && Object.keys(S).forEach((R) => {
2195
+ const A = S[R];
2174
2196
  A && Object.keys(A).forEach((T) => {
2175
2197
  const $ = A[T];
2176
- $ && typeof $ == "object" && $.from === i.name && ($.loaded || $.loading ? ($.useIn = $.useIn.filter((N) => N !== i.name), $.useIn.length ? b = !1 : _.push([
2177
- g,
2178
- S,
2198
+ $ && typeof $ == "object" && $.from === i.name && ($.loaded || $.loading ? ($.useIn = $.useIn.filter((w) => w !== i.name), $.useIn.length ? E = !1 : _.push([
2199
+ b,
2200
+ I,
2179
2201
  R,
2180
2202
  T
2181
2203
  ])) : _.push([
2182
- g,
2183
- S,
2204
+ b,
2205
+ I,
2184
2206
  R,
2185
2207
  T
2186
2208
  ]));
2187
2209
  });
2188
2210
  });
2189
2211
  });
2190
- }), b && (y.shareScopeMap = {}, delete E[d]), _.forEach(([g, v, S, I]) => {
2212
+ }), E && (y.shareScopeMap = {}, delete g[p]), _.forEach(([b, v, I, S]) => {
2191
2213
  var R, A, T;
2192
- (T = E[g]) == null || (A = T[v]) == null || (R = A[S]) == null || delete R[I];
2193
- }), CurrentGlobal.__FEDERATION__.__INSTANCES__.splice(p, 1);
2214
+ (T = g[b]) == null || (A = T[v]) == null || (R = A[I]) == null || delete R[S];
2215
+ }), CurrentGlobal.__FEDERATION__.__INSTANCES__.splice(d, 1);
2194
2216
  }
2195
- const { hostGlobalSnapshot: m } = getGlobalRemoteInfo(t, o);
2217
+ const { hostGlobalSnapshot: m } = getGlobalRemoteInfo(t, r);
2196
2218
  if (m) {
2197
2219
  const y = m && "remotesInfo" in m && m.remotesInfo && getInfoWithoutType(m.remotesInfo, t.name).key;
2198
2220
  y && (delete m.remotesInfo[y], Global.__FEDERATION__.__MANIFEST_LOADING__[y] && delete Global.__FEDERATION__.__MANIFEST_LOADING__[y]);
2199
2221
  }
2200
- o.moduleCache.delete(t.name);
2222
+ r.moduleCache.delete(t.name);
2201
2223
  }
2202
- } catch (o) {
2203
- logger.log("removeRemote fail: ", o);
2224
+ } catch (r) {
2225
+ logger.log("removeRemote fail: ", r);
2204
2226
  }
2205
2227
  }
2206
2228
  constructor(t) {
@@ -2223,59 +2245,59 @@ const USE_SNAPSHOT = typeof FEDERATION_OPTIMIZE_NO_SNAPSHOT_PLUGIN == "boolean"
2223
2245
  class FederationHost {
2224
2246
  initOptions(t) {
2225
2247
  this.registerPlugins(t.plugins);
2226
- const r = this.formatOptions(this.options, t);
2227
- return this.options = r, r;
2248
+ const o = this.formatOptions(this.options, t);
2249
+ return this.options = o, o;
2228
2250
  }
2229
- async loadShare(t, r) {
2230
- return this.sharedHandler.loadShare(t, r);
2251
+ async loadShare(t, o) {
2252
+ return this.sharedHandler.loadShare(t, o);
2231
2253
  }
2232
2254
  // The lib function will only be available if the shared set by eager or runtime init is set or the shared is successfully loaded.
2233
2255
  // 1. If the loaded shared already exists globally, then it will be reused
2234
2256
  // 2. If lib exists in local shared, it will be used directly
2235
2257
  // 3. If the local get returns something other than Promise, then it will be used directly
2236
- loadShareSync(t, r) {
2237
- return this.sharedHandler.loadShareSync(t, r);
2258
+ loadShareSync(t, o) {
2259
+ return this.sharedHandler.loadShareSync(t, o);
2238
2260
  }
2239
- initializeSharing(t = DEFAULT_SCOPE, r) {
2240
- return this.sharedHandler.initializeSharing(t, r);
2261
+ initializeSharing(t = DEFAULT_SCOPE, o) {
2262
+ return this.sharedHandler.initializeSharing(t, o);
2241
2263
  }
2242
- initRawContainer(t, r, o) {
2264
+ initRawContainer(t, o, r) {
2243
2265
  const s = getRemoteInfo({
2244
2266
  name: t,
2245
- entry: r
2246
- }), l = new Module({
2267
+ entry: o
2268
+ }), a = new Module({
2247
2269
  host: this,
2248
2270
  remoteInfo: s
2249
2271
  });
2250
- return l.remoteEntryExports = o, this.moduleCache.set(t, l), l;
2272
+ return a.remoteEntryExports = r, this.moduleCache.set(t, a), a;
2251
2273
  }
2252
2274
  // eslint-disable-next-line max-lines-per-function
2253
2275
  // eslint-disable-next-line @typescript-eslint/member-ordering
2254
- async loadRemote(t, r) {
2255
- return this.remoteHandler.loadRemote(t, r);
2276
+ async loadRemote(t, o) {
2277
+ return this.remoteHandler.loadRemote(t, o);
2256
2278
  }
2257
2279
  // eslint-disable-next-line @typescript-eslint/member-ordering
2258
2280
  async preloadRemote(t) {
2259
2281
  return this.remoteHandler.preloadRemote(t);
2260
2282
  }
2261
- initShareScopeMap(t, r, o = {}) {
2262
- this.sharedHandler.initShareScopeMap(t, r, o);
2283
+ initShareScopeMap(t, o, r = {}) {
2284
+ this.sharedHandler.initShareScopeMap(t, o, r);
2263
2285
  }
2264
- formatOptions(t, r) {
2265
- const { shared: o } = formatShareConfigs(t, r), { userOptions: s, options: l } = this.hooks.lifecycle.beforeInit.emit({
2286
+ formatOptions(t, o) {
2287
+ const { shared: r } = formatShareConfigs(t, o), { userOptions: s, options: a } = this.hooks.lifecycle.beforeInit.emit({
2266
2288
  origin: this,
2267
- userOptions: r,
2289
+ userOptions: o,
2268
2290
  options: t,
2269
- shareInfo: o
2270
- }), a = this.remoteHandler.formatAndRegisterRemote(l, s), { shared: i } = this.sharedHandler.registerShared(l, s), c = [
2271
- ...l.plugins
2291
+ shareInfo: r
2292
+ }), l = this.remoteHandler.formatAndRegisterRemote(a, s), { shared: i } = this.sharedHandler.registerShared(a, s), c = [
2293
+ ...a.plugins
2272
2294
  ];
2273
- s.plugins && s.plugins.forEach((d) => {
2274
- c.includes(d) || c.push(d);
2295
+ s.plugins && s.plugins.forEach((p) => {
2296
+ c.includes(p) || c.push(p);
2275
2297
  });
2276
- const u = _extends$1({}, t, r, {
2298
+ const u = _extends$1({}, t, o, {
2277
2299
  plugins: c,
2278
- remotes: a,
2300
+ remotes: l,
2279
2301
  shared: i
2280
2302
  });
2281
2303
  return this.hooks.lifecycle.init.emit({
@@ -2284,7 +2306,7 @@ class FederationHost {
2284
2306
  }), u;
2285
2307
  }
2286
2308
  registerPlugins(t) {
2287
- const r = registerPlugins(t, [
2309
+ const o = registerPlugins(t, [
2288
2310
  this.hooks,
2289
2311
  this.remoteHandler.hooks,
2290
2312
  this.sharedHandler.hooks,
@@ -2292,10 +2314,10 @@ class FederationHost {
2292
2314
  this.loaderHook,
2293
2315
  this.bridgeHook
2294
2316
  ]);
2295
- this.options.plugins = this.options.plugins.reduce((o, s) => (s && o && !o.find((l) => l.name === s.name) && o.push(s), o), r || []);
2317
+ this.options.plugins = this.options.plugins.reduce((r, s) => (s && r && !r.find((a) => a.name === s.name) && r.push(s), r), o || []);
2296
2318
  }
2297
- registerRemotes(t, r) {
2298
- return this.remoteHandler.registerRemotes(t, r);
2319
+ registerRemotes(t, o) {
2320
+ return this.remoteHandler.registerRemotes(t, o);
2299
2321
  }
2300
2322
  constructor(t) {
2301
2323
  this.hooks = new PluginSystem({
@@ -2305,7 +2327,7 @@ class FederationHost {
2305
2327
  beforeInitContainer: new AsyncWaterfallHook("beforeInitContainer"),
2306
2328
  // maybe will change, temporarily for internal use only
2307
2329
  initContainer: new AsyncWaterfallHook("initContainer")
2308
- }), this.version = "0.14.3", this.moduleCache = /* @__PURE__ */ new Map(), this.loaderHook = new PluginSystem({
2330
+ }), this.version = "0.15.0", this.moduleCache = /* @__PURE__ */ new Map(), this.loaderHook = new PluginSystem({
2309
2331
  // FIXME: may not be suitable , not open to the public yet
2310
2332
  getModuleInfo: new SyncHook(),
2311
2333
  createScript: new SyncHook(),
@@ -2319,21 +2341,21 @@ class FederationHost {
2319
2341
  beforeBridgeDestroy: new SyncHook(),
2320
2342
  afterBridgeDestroy: new SyncHook()
2321
2343
  });
2322
- const r = USE_SNAPSHOT ? [
2344
+ const o = USE_SNAPSHOT ? [
2323
2345
  snapshotPlugin(),
2324
2346
  generatePreloadAssetsPlugin()
2325
- ] : [], o = {
2347
+ ] : [], r = {
2326
2348
  id: getBuilderId(),
2327
2349
  name: t.name,
2328
- plugins: r,
2350
+ plugins: o,
2329
2351
  remotes: [],
2330
2352
  shared: {},
2331
2353
  inBrowser: isBrowserEnv()
2332
2354
  };
2333
- this.name = t.name, this.options = o, this.snapshotHandler = new SnapshotHandler(this), this.sharedHandler = new SharedHandler(this), this.remoteHandler = new RemoteHandler(this), this.shareScopeMap = this.sharedHandler.shareScopeMap, this.registerPlugins([
2334
- ...o.plugins,
2355
+ this.name = t.name, this.options = r, this.snapshotHandler = new SnapshotHandler(this), this.sharedHandler = new SharedHandler(this), this.remoteHandler = new RemoteHandler(this), this.shareScopeMap = this.sharedHandler.shareScopeMap, this.registerPlugins([
2356
+ ...r.plugins,
2335
2357
  ...t.plugins || []
2336
- ]), this.options = this.formatOptions(o, t);
2358
+ ]), this.options = this.formatOptions(r, t);
2337
2359
  }
2338
2360
  }
2339
2361
  let FederationInstance = null;
@@ -2342,50 +2364,50 @@ function getInstance() {
2342
2364
  }
2343
2365
  setGlobalFederationConstructor(FederationHost);
2344
2366
  function createBridgeComponent(n) {
2345
- const t = /* @__PURE__ */ new Map(), r = getInstance();
2367
+ const t = /* @__PURE__ */ new Map(), o = getInstance();
2346
2368
  return () => ({
2347
- __APP_VERSION__: "0.14.3",
2348
- async render(o) {
2349
- var E, b, _;
2350
- LoggerInstance.debug("createBridgeComponent render Info", o);
2369
+ __APP_VERSION__: "0.15.0",
2370
+ async render(r) {
2371
+ var g, E, _;
2372
+ LoggerInstance.debug("createBridgeComponent render Info", r);
2351
2373
  const {
2352
2374
  moduleName: s,
2353
- dom: l,
2354
- basename: a,
2375
+ dom: a,
2376
+ basename: l,
2355
2377
  memoryRoute: i,
2356
2378
  hashRoute: c,
2357
2379
  ...u
2358
- } = o, d = Vue.createApp(n.rootComponent, u);
2359
- t.set(l, d);
2360
- const p = await ((_ = (b = (E = r == null ? void 0 : r.bridgeHook) == null ? void 0 : E.lifecycle) == null ? void 0 : b.beforeBridgeRender) == null ? void 0 : _.emit(o)), m = p && typeof p == "object" && (p != null && p.extraProps) ? p == null ? void 0 : p.extraProps : {}, y = n.appOptions({
2361
- app: d,
2362
- basename: a,
2380
+ } = r, p = Vue.createApp(n.rootComponent, u);
2381
+ t.set(a, p);
2382
+ const d = await ((_ = (E = (g = o == null ? void 0 : o.bridgeHook) == null ? void 0 : g.lifecycle) == null ? void 0 : E.beforeBridgeRender) == null ? void 0 : _.emit(r)), m = d && typeof d == "object" && (d != null && d.extraProps) ? d == null ? void 0 : d.extraProps : {}, y = n.appOptions({
2383
+ app: p,
2384
+ basename: l,
2363
2385
  memoryRoute: i,
2364
2386
  hashRoute: c,
2365
2387
  ...u,
2366
2388
  ...m
2367
2389
  });
2368
2390
  if (y != null && y.router) {
2369
- let g, v = y.router.getRoutes();
2370
- o.memoryRoute ? g = VueRouter.createMemoryHistory(o.basename) : o.hashRoute ? (g = VueRouter.createWebHashHistory(), v = v.map((I) => ({
2371
- ...I,
2372
- path: o.basename + I.path
2373
- }))) : g = VueRouter.createWebHistory(o.basename);
2374
- const S = VueRouter.createRouter({
2391
+ let b, v = y.router.getRoutes();
2392
+ r.memoryRoute ? b = VueRouter.createMemoryHistory(r.basename) : r.hashRoute ? (b = VueRouter.createWebHashHistory(), v = v.map((S) => ({
2393
+ ...S,
2394
+ path: r.basename + S.path
2395
+ }))) : b = VueRouter.createWebHistory(r.basename);
2396
+ const I = VueRouter.createRouter({
2375
2397
  ...y.router.options,
2376
- history: g,
2398
+ history: b,
2377
2399
  routes: v
2378
2400
  });
2379
2401
  LoggerInstance.debug("createBridgeComponent render router info>>>", {
2380
2402
  moduleName: s,
2381
- router: S
2382
- }), i && await S.push(i.entryPath), d.use(S);
2403
+ router: I
2404
+ }), i && await I.push(i.entryPath), p.use(I);
2383
2405
  }
2384
- d.mount(l);
2406
+ p.mount(a);
2385
2407
  },
2386
- destroy(o) {
2387
- LoggerInstance.debug("createBridgeComponent destroy Info", o);
2388
- const s = t.get(o == null ? void 0 : o.dom);
2408
+ destroy(r) {
2409
+ LoggerInstance.debug("createBridgeComponent destroy Info", r);
2410
+ const s = t.get(r == null ? void 0 : r.dom);
2389
2411
  s == null || s.unmount();
2390
2412
  }
2391
2413
  });
@@ -2406,29 +2428,29 @@ const RemoteApp = /* @__PURE__ */ defineComponent({
2406
2428
  },
2407
2429
  inheritAttrs: !1,
2408
2430
  setup(n) {
2409
- const t = ref(null), r = ref(null), o = ref(""), s = useRoute(), l = getInstance(), a = useAttrs(), i = async () => {
2410
- var m, y, E, b;
2431
+ const t = ref(null), o = ref(null), r = ref(""), s = useRoute(), a = getInstance(), l = useAttrs(), i = async () => {
2432
+ var m, y, g, E;
2411
2433
  const u = (m = n.providerInfo) == null ? void 0 : m.call(n);
2412
- r.value = u;
2413
- let d = {
2414
- ...a,
2434
+ o.value = u;
2435
+ let p = {
2436
+ ...l,
2415
2437
  moduleName: n.moduleName,
2416
2438
  dom: t.value,
2417
2439
  basename: n.basename,
2418
2440
  memoryRoute: n.memoryRoute,
2419
2441
  hashRoute: n.hashRoute
2420
2442
  };
2421
- LoggerInstance.debug("createRemoteComponent LazyComponent render >>>", d);
2422
- const p = await ((b = (E = (y = l == null ? void 0 : l.bridgeHook) == null ? void 0 : y.lifecycle) == null ? void 0 : E.beforeBridgeRender) == null ? void 0 : b.emit(d)) || {};
2423
- d = {
2424
- ...d,
2425
- ...p.extraProps
2426
- }, u.render(d);
2443
+ LoggerInstance.debug("createRemoteComponent LazyComponent render >>>", p);
2444
+ const d = await ((E = (g = (y = a == null ? void 0 : a.bridgeHook) == null ? void 0 : y.lifecycle) == null ? void 0 : g.beforeBridgeRender) == null ? void 0 : E.emit(p)) || {};
2445
+ p = {
2446
+ ...p,
2447
+ ...d.extraProps
2448
+ }, u.render(p);
2427
2449
  }, c = watch(() => s == null ? void 0 : s.path, (u) => {
2428
- u !== s.path && i(), o.value !== "" && o.value !== u && (LoggerInstance.debug("createRemoteComponent dispatchPopstateEnv >>>", {
2450
+ u !== s.path && i(), r.value !== "" && r.value !== u && (LoggerInstance.debug("createRemoteComponent dispatchPopstateEnv >>>", {
2429
2451
  ...n,
2430
2452
  pathname: s.path
2431
- }), e()), o.value = u;
2453
+ }), e()), r.value = u;
2432
2454
  });
2433
2455
  return onMounted(() => {
2434
2456
  i();
@@ -2436,7 +2458,7 @@ const RemoteApp = /* @__PURE__ */ defineComponent({
2436
2458
  var u;
2437
2459
  LoggerInstance.debug("createRemoteComponent LazyComponent destroy >>>", {
2438
2460
  ...n
2439
- }), c(), (u = r.value) == null || u.destroy({
2461
+ }), c(), (u = o.value) == null || u.destroy({
2440
2462
  dom: t.value
2441
2463
  });
2442
2464
  }), () => createVNode("div", mergeProps(n.rootAttrs || {}, {
@@ -2446,31 +2468,31 @@ const RemoteApp = /* @__PURE__ */ defineComponent({
2446
2468
  });
2447
2469
  function createRemoteComponent(n) {
2448
2470
  return defineAsyncComponent({
2449
- __APP_VERSION__: "0.14.3",
2471
+ __APP_VERSION__: "0.15.0",
2450
2472
  ...n.asyncComponentOptions,
2451
2473
  //@ts-ignore
2452
2474
  loader: async () => {
2453
2475
  var c, u;
2454
2476
  const t = useRoute();
2455
- let r = "/";
2456
- const o = (u = (c = t == null ? void 0 : t.matched) == null ? void 0 : c[0]) == null ? void 0 : u.path;
2457
- o && (o.endsWith("/:pathMatch(.*)*") ? r = o.replace("/:pathMatch(.*)*", "") : r = t.matched[0].path);
2477
+ let o = "/";
2478
+ const r = (u = (c = t == null ? void 0 : t.matched) == null ? void 0 : c[0]) == null ? void 0 : u.path;
2479
+ r && (r.endsWith("/:pathMatch(.*)*") ? o = r.replace("/:pathMatch(.*)*", "") : o = t.matched[0].path);
2458
2480
  const s = (n == null ? void 0 : n.export) || "default";
2459
2481
  LoggerInstance.debug("createRemoteComponent LazyComponent create >>>", {
2460
- basename: r,
2482
+ basename: o,
2461
2483
  info: n
2462
2484
  });
2463
- const l = await n.loader(), a = l && l[Symbol.for("mf_module_id")], i = l[s];
2485
+ const a = await n.loader(), l = a && a[Symbol.for("mf_module_id")], i = a[s];
2464
2486
  if (LoggerInstance.debug(
2465
2487
  "createRemoteComponent LazyComponent loadRemote info >>>",
2466
- { moduleName: a, module: l, exportName: s, basename: r, route: t }
2467
- ), s in l && typeof i == "function")
2488
+ { moduleName: l, module: a, exportName: s, basename: o, route: t }
2489
+ ), s in a && typeof i == "function")
2468
2490
  return {
2469
2491
  render() {
2470
2492
  return h(RemoteApp, {
2471
- moduleName: a,
2493
+ moduleName: l,
2472
2494
  providerInfo: i,
2473
- basename: r,
2495
+ basename: o,
2474
2496
  rootAttrs: n.rootAttrs
2475
2497
  });
2476
2498
  }