@wordpress/interactivity-router 2.32.0 → 2.32.1-next.47f435fc9.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.
Files changed (41) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/assets/dynamic-importmap/fetch.js +32 -43
  3. package/build/assets/dynamic-importmap/fetch.js.map +7 -1
  4. package/build/assets/dynamic-importmap/index.js +43 -73
  5. package/build/assets/dynamic-importmap/index.js.map +7 -1
  6. package/build/assets/dynamic-importmap/loader.js +139 -172
  7. package/build/assets/dynamic-importmap/loader.js.map +7 -1
  8. package/build/assets/dynamic-importmap/resolver.js +99 -112
  9. package/build/assets/dynamic-importmap/resolver.js.map +7 -1
  10. package/build/assets/script-modules.js +46 -58
  11. package/build/assets/script-modules.js.map +7 -1
  12. package/build/assets/scs.js +30 -39
  13. package/build/assets/scs.js.map +7 -1
  14. package/build/assets/styles.js +81 -171
  15. package/build/assets/styles.js.map +7 -1
  16. package/build/full-page.js +43 -36
  17. package/build/full-page.js.map +7 -1
  18. package/build/index.js +139 -265
  19. package/build/index.js.map +7 -1
  20. package/build-module/assets/dynamic-importmap/fetch.js +11 -39
  21. package/build-module/assets/dynamic-importmap/fetch.js.map +7 -1
  22. package/build-module/assets/dynamic-importmap/index.js +18 -52
  23. package/build-module/assets/dynamic-importmap/index.js.map +7 -1
  24. package/build-module/assets/dynamic-importmap/loader.js +101 -165
  25. package/build-module/assets/dynamic-importmap/loader.js.map +7 -1
  26. package/build-module/assets/dynamic-importmap/resolver.js +78 -108
  27. package/build-module/assets/dynamic-importmap/resolver.js.map +7 -1
  28. package/build-module/assets/script-modules.js +25 -49
  29. package/build-module/assets/script-modules.js.map +7 -1
  30. package/build-module/assets/scs.js +9 -35
  31. package/build-module/assets/scs.js.map +7 -1
  32. package/build-module/assets/styles.js +58 -163
  33. package/build-module/assets/styles.js.map +7 -1
  34. package/build-module/full-page.js +21 -32
  35. package/build-module/full-page.js.map +7 -1
  36. package/build-module/index.js +108 -257
  37. package/build-module/index.js.map +7 -1
  38. package/build-types/index.d.ts.map +1 -1
  39. package/package.json +12 -4
  40. package/src/index.ts +2 -3
  41. package/tsconfig.main.tsbuildinfo +1 -1
@@ -1,53 +1,15 @@
1
- /* wp:polyfill */
2
- /**
3
- * This code is derived from the following projects:
4
- *
5
- * 1. dynamic-importmap (https://github.com/keller-mark/dynamic-importmap)
6
- * 2. es-module-shims (https://github.com/guybedford/es-module-shims)
7
- *
8
- * The original implementation was created by Guy Bedford in es-module-shims,
9
- * then adapted by Mark Keller in dynamic-importmap, and further modified
10
- * for use in this project.
11
- *
12
- * Both projects are licensed under the MIT license.
13
- *
14
- * MIT License: https://opensource.org/licenses/MIT
15
- */
16
-
17
- /**
18
- * External dependencies
19
- */
20
- import * as lexer from 'es-module-lexer';
21
-
22
- /**
23
- * Internal dependencies
24
- */
25
- import { fetchModule } from './fetch';
26
- import { resolve } from './resolver';
27
- export const initPromise = lexer.init;
28
-
29
- /**
30
- * Script element containing the initial page's import map.
31
- */
32
- const initialImportMapElement = window.document.querySelector('script#wp-importmap[type=importmap]');
33
-
34
- /**
35
- * Data from the initial page's import map.
36
- *
37
- * Pages containing any of the imports present on the original page
38
- * in their import maps should ignore them, as those imports would
39
- * be handled natively.
40
- */
41
- export const initialImportMap = initialImportMapElement ? JSON.parse(initialImportMapElement.text) : {
42
- imports: {},
43
- scopes: {}
44
- };
45
- const skip = id => Object.keys(initialImportMap.imports).includes(id);
1
+ import * as lexer from "es-module-lexer";
2
+ import { fetchModule } from "./fetch";
3
+ import { resolve } from "./resolver";
4
+ const initPromise = lexer.init;
5
+ const initialImportMapElement = window.document.querySelector(
6
+ "script#wp-importmap[type=importmap]"
7
+ );
8
+ const initialImportMap = initialImportMapElement ? JSON.parse(initialImportMapElement.text) : { imports: {}, scopes: {} };
9
+ const skip = (id) => Object.keys(initialImportMap.imports).includes(id);
46
10
  const fetchCache = {};
47
- export const registry = {};
48
-
49
- // Init registry with importamp content.
50
- Object.keys(initialImportMap.imports).forEach(id => {
11
+ const registry = {};
12
+ Object.keys(initialImportMap.imports).forEach((id) => {
51
13
  registry[id] = {
52
14
  blobUrl: id
53
15
  };
@@ -58,14 +20,12 @@ async function loadAll(load, seen) {
58
20
  }
59
21
  seen[load.url] = 1;
60
22
  await load.linkPromise;
61
- await Promise.all(load.deps.map(dep => loadAll(dep, seen)));
23
+ await Promise.all(load.deps.map((dep) => loadAll(dep, seen)));
62
24
  }
63
25
  function urlJsString(url) {
64
26
  return `'${url.replace(/'/g, "\\'")}'`;
65
27
  }
66
- const createBlob = (source, type = 'text/javascript') => URL.createObjectURL(new Blob([source], {
67
- type
68
- }));
28
+ const createBlob = (source, type = "text/javascript") => URL.createObjectURL(new Blob([source], { type }));
69
29
  function resolveDeps(load, seen) {
70
30
  if (load.blobUrl || !seen[load.url]) {
71
31
  return;
@@ -76,93 +36,93 @@ function resolveDeps(load, seen) {
76
36
  }
77
37
  const [imports, exports] = load.analysis;
78
38
  const source = load.source;
79
- let resolvedSource = '';
39
+ let resolvedSource = "";
80
40
  if (!imports.length) {
81
41
  resolvedSource += source;
82
42
  } else {
83
- let lastIndex = 0;
84
- let depIndex = 0;
85
- const dynamicImportEndStack = [];
86
- function pushStringTo(originalIndex) {
43
+ let pushStringTo = function(originalIndex) {
87
44
  while (dynamicImportEndStack.length && dynamicImportEndStack[dynamicImportEndStack.length - 1] < originalIndex) {
88
45
  const dynamicImportEnd = dynamicImportEndStack.pop();
89
- resolvedSource += `${source.slice(lastIndex, dynamicImportEnd)}, ${urlJsString(load.responseUrl)}`;
46
+ resolvedSource += `${source.slice(
47
+ lastIndex,
48
+ dynamicImportEnd
49
+ )}, ${urlJsString(load.responseUrl)}`;
90
50
  lastIndex = dynamicImportEnd;
91
51
  }
92
52
  resolvedSource += source.slice(lastIndex, originalIndex);
93
53
  lastIndex = originalIndex;
94
- }
54
+ };
55
+ let lastIndex = 0;
56
+ let depIndex = 0;
57
+ const dynamicImportEndStack = [];
95
58
  for (const {
96
59
  s: start,
97
60
  ss: statementStart,
98
61
  se: statementEnd,
99
62
  d: dynamicImportIndex
100
63
  } of imports) {
101
- // static import
102
64
  if (dynamicImportIndex === -1) {
103
65
  const depLoad = load.deps[depIndex++];
104
66
  let blobUrl = depLoad.blobUrl;
105
67
  const cycleShell = !blobUrl;
106
68
  if (cycleShell) {
107
- // Circular shell creation
108
69
  if (!(blobUrl = depLoad.shellUrl)) {
109
- blobUrl = depLoad.shellUrl = createBlob(`export function u$_(m){${depLoad.analysis[1].map(({
110
- s,
111
- e
112
- }, i) => {
113
- const q = depLoad.source[s] === '"' || depLoad.source[s] === "'";
114
- return `e$_${i}=m${q ? `[` : '.'}${depLoad.source.slice(s, e)}${q ? `]` : ''}`;
115
- }).join(',')}}${depLoad.analysis[1].length ? `let ${depLoad.analysis[1].map((_, i) => `e$_${i}`).join(',')};` : ''}export {${depLoad.analysis[1].map(({
116
- s,
117
- e
118
- }, i) => `e$_${i} as ${depLoad.source.slice(s, e)}`).join(',')}}\n//# sourceURL=${depLoad.responseUrl}?cycle`);
70
+ blobUrl = depLoad.shellUrl = createBlob(
71
+ `export function u$_(m){${depLoad.analysis[1].map(({ s, e }, i) => {
72
+ const q = depLoad.source[s] === '"' || depLoad.source[s] === "'";
73
+ return `e$_${i}=m${q ? `[` : "."}${depLoad.source.slice(s, e)}${q ? `]` : ""}`;
74
+ }).join(",")}}${depLoad.analysis[1].length ? `let ${depLoad.analysis[1].map((_, i) => `e$_${i}`).join(",")};` : ""}export {${depLoad.analysis[1].map(
75
+ ({ s, e }, i) => `e$_${i} as ${depLoad.source.slice(
76
+ s,
77
+ e
78
+ )}`
79
+ ).join(",")}}
80
+ //# sourceURL=${depLoad.responseUrl}?cycle`
81
+ );
119
82
  }
120
83
  }
121
84
  pushStringTo(start - 1);
122
- resolvedSource += `/*${source.slice(start - 1, statementEnd)}*/${urlJsString(blobUrl)}`;
123
-
124
- // circular shell execution
85
+ resolvedSource += `/*${source.slice(
86
+ start - 1,
87
+ statementEnd
88
+ )}*/${urlJsString(blobUrl)}`;
125
89
  if (!cycleShell && depLoad.shellUrl) {
126
90
  resolvedSource += `;import*as m$_${depIndex} from'${depLoad.blobUrl}';import{u$_ as u$_${depIndex}}from'${depLoad.shellUrl}';u$_${depIndex}(m$_${depIndex})`;
127
- depLoad.shellUrl = undefined;
91
+ depLoad.shellUrl = void 0;
128
92
  }
129
93
  lastIndex = statementEnd;
130
- }
131
- // import.meta
132
- else if (dynamicImportIndex === -2) {
133
- throw Error('The import.meta property is not supported.');
134
- }
135
- // dynamic import
136
- else {
94
+ } else if (dynamicImportIndex === -2) {
95
+ throw Error("The import.meta property is not supported.");
96
+ } else {
137
97
  pushStringTo(statementStart);
138
98
  resolvedSource += `wpInteractivityRouterImport(`;
139
99
  dynamicImportEndStack.push(statementEnd - 1);
140
100
  lastIndex = start;
141
101
  }
142
102
  }
143
-
144
- // progressive cycle binding updates
145
103
  if (load.shellUrl) {
146
- resolvedSource += `\n;import{u$_}from'${load.shellUrl}';try{u$_({${exports.filter(e => e.ln).map(({
147
- s,
148
- e,
149
- ln
150
- }) => `${source.slice(s, e)}:${ln}`).join(',')}})}catch(_){};\n`;
104
+ resolvedSource += `
105
+ ;import{u$_}from'${load.shellUrl}';try{u$_({${exports.filter((e) => e.ln).map(({ s, e, ln }) => `${source.slice(s, e)}:${ln}`).join(",")}})}catch(_){};
106
+ `;
151
107
  }
152
108
  pushStringTo(source.length);
153
109
  }
154
-
155
- // ensure we have a proper sourceURL
156
110
  let hasSourceURL = false;
157
- resolvedSource = resolvedSource.replace(sourceMapURLRegEx, (match, isMapping, url) => {
158
- hasSourceURL = !isMapping;
159
- return match.replace(url, () => new URL(url, load.responseUrl).toString());
160
- });
111
+ resolvedSource = resolvedSource.replace(
112
+ sourceMapURLRegEx,
113
+ (match, isMapping, url) => {
114
+ hasSourceURL = !isMapping;
115
+ return match.replace(
116
+ url,
117
+ () => new URL(url, load.responseUrl).toString()
118
+ );
119
+ }
120
+ );
161
121
  if (!hasSourceURL) {
162
- resolvedSource += '\n//# sourceURL=' + load.responseUrl;
122
+ resolvedSource += "\n//# sourceURL=" + load.responseUrl;
163
123
  }
164
124
  load.blobUrl = createBlob(resolvedSource);
165
- load.source = undefined; // free memory
125
+ load.source = void 0;
166
126
  }
167
127
  const sourceMapURLRegEx = /\n\/\/# source(Mapping)?URL=([^\n]+)\s*((;|\/\/[^#][^\n]*)\s*)*$/;
168
128
  function getOrCreateLoad(url, fetchOpts, parent) {
@@ -170,28 +130,20 @@ function getOrCreateLoad(url, fetchOpts, parent) {
170
130
  if (load) {
171
131
  return load;
172
132
  }
173
- load = {
174
- url
175
- };
133
+ load = { url };
176
134
  if (registry[url]) {
177
- // If there's a naming conflict, keep incrementing until unique
178
135
  let i = 0;
179
136
  while (registry[load.url + ++i]) {
180
- /* no-op */
181
137
  }
182
138
  load.url += i;
183
139
  }
184
140
  registry[load.url] = load;
185
141
  load.fetchPromise = (async () => {
186
142
  let source;
187
- ({
188
- responseUrl: load.responseUrl,
189
- source: source
190
- } = await (fetchCache[url] || fetchModule(url, fetchOpts, parent)));
143
+ ({ responseUrl: load.responseUrl, source } = await (fetchCache[url] || fetchModule(url, fetchOpts, parent)));
191
144
  try {
192
145
  load.analysis = lexer.parse(source, load.url);
193
146
  } catch (e) {
194
- // eslint-disable-next-line no-console
195
147
  console.error(e);
196
148
  load.analysis = [[], [], false, false];
197
149
  }
@@ -200,80 +152,64 @@ function getOrCreateLoad(url, fetchOpts, parent) {
200
152
  })();
201
153
  load.linkPromise = load.fetchPromise.then(async () => {
202
154
  let childFetchOpts = fetchOpts;
203
- load.deps = (await Promise.all(load.analysis[0].map(async ({
204
- n,
205
- d
206
- }) => {
207
- if (d !== -1 || !n) {
208
- return undefined;
209
- }
210
- const responseUrl = resolve(n, load.responseUrl || load.url);
211
- if (skip && skip(responseUrl)) {
212
- return {
213
- blobUrl: responseUrl
214
- };
215
- }
216
- // remove integrity for child fetches
217
- if (childFetchOpts.integrity) {
218
- childFetchOpts = {
219
- ...childFetchOpts,
220
- integrity: undefined
221
- };
222
- }
223
- return getOrCreateLoad(responseUrl, childFetchOpts, load.responseUrl).fetchPromise;
224
- }))).filter(l => l);
155
+ load.deps = (await Promise.all(
156
+ load.analysis[0].map(async ({ n, d }) => {
157
+ if (d !== -1 || !n) {
158
+ return void 0;
159
+ }
160
+ const responseUrl = resolve(
161
+ n,
162
+ load.responseUrl || load.url
163
+ );
164
+ if (skip && skip(responseUrl)) {
165
+ return { blobUrl: responseUrl };
166
+ }
167
+ if (childFetchOpts.integrity) {
168
+ childFetchOpts = {
169
+ ...childFetchOpts,
170
+ integrity: void 0
171
+ };
172
+ }
173
+ return getOrCreateLoad(
174
+ responseUrl,
175
+ childFetchOpts,
176
+ load.responseUrl
177
+ ).fetchPromise;
178
+ })
179
+ )).filter((l) => l);
225
180
  });
226
181
  return load;
227
182
  }
228
- const dynamicImport = u => import(/* webpackIgnore: true */u);
229
-
230
- /**
231
- * Resolves the passed module URL and fetches the corresponding module
232
- * and their dependencies, returning a `ModuleLoad` object once all
233
- * of them have been fetched.
234
- *
235
- * @param url Module URL.
236
- * @param fetchOpts Fetch options.
237
- * @return A promise with a `ModuleLoad` instance.
238
- */
239
- export async function preloadModule(url, fetchOpts) {
183
+ const dynamicImport = (u) => import(
184
+ /* webpackIgnore: true */
185
+ u
186
+ );
187
+ async function preloadModule(url, fetchOpts) {
240
188
  await initPromise;
241
189
  const load = getOrCreateLoad(url, fetchOpts, null);
242
190
  const seen = {};
243
191
  await loadAll(load, seen);
244
192
  resolveDeps(load, seen);
245
- // microtask scheduling – can help ensure Blob is fully ready
246
193
  await Promise.resolve();
247
194
  return load;
248
195
  }
249
-
250
- /**
251
- * Imports the module represented by the passed `ModuleLoad` instance.
252
- *
253
- * @param load The `ModuleLoad` instance representing the module.
254
- * @return A promise with the imported module.
255
- */
256
- export async function importPreloadedModule(load) {
196
+ async function importPreloadedModule(load) {
257
197
  const module = await dynamicImport(load.blobUrl);
258
- // if the preloaded module ended up with a shell (circular refs), finalize it
259
198
  if (load.shellUrl) {
260
199
  (await dynamicImport(load.shellUrl)).u$_(module);
261
200
  }
262
201
  return module;
263
202
  }
264
-
265
- /**
266
- * Imports the module represented by the passed module URL.
267
- *
268
- * The module URL and all its dependencies are resolved using the
269
- * current status of the internal dynamic import map.
270
- *
271
- * @param url Module URL.
272
- * @param fetchOpts Fetch options.
273
- * @return A promise with the imported module.
274
- */
275
- export async function topLevelLoad(url, fetchOpts) {
203
+ async function topLevelLoad(url, fetchOpts) {
276
204
  const load = await preloadModule(url, fetchOpts);
277
205
  return importPreloadedModule(load);
278
206
  }
279
- //# sourceMappingURL=loader.js.map
207
+ export {
208
+ importPreloadedModule,
209
+ initPromise,
210
+ initialImportMap,
211
+ preloadModule,
212
+ registry,
213
+ topLevelLoad
214
+ };
215
+ //# sourceMappingURL=loader.js.map
@@ -1 +1,7 @@
1
- {"version":3,"names":["lexer","fetchModule","resolve","initPromise","init","initialImportMapElement","window","document","querySelector","initialImportMap","JSON","parse","text","imports","scopes","skip","id","Object","keys","includes","fetchCache","registry","forEach","blobUrl","loadAll","load","seen","url","linkPromise","Promise","all","deps","map","dep","urlJsString","replace","createBlob","source","type","URL","createObjectURL","Blob","resolveDeps","exports","analysis","resolvedSource","length","lastIndex","depIndex","dynamicImportEndStack","pushStringTo","originalIndex","dynamicImportEnd","pop","slice","responseUrl","s","start","ss","statementStart","se","statementEnd","d","dynamicImportIndex","depLoad","cycleShell","shellUrl","e","i","q","join","_","undefined","Error","push","filter","ln","hasSourceURL","sourceMapURLRegEx","match","isMapping","toString","getOrCreateLoad","fetchOpts","parent","fetchPromise","console","error","then","childFetchOpts","n","integrity","l","dynamicImport","u","preloadModule","importPreloadedModule","module","u$_","topLevelLoad"],"sources":["@wordpress/interactivity-router/src/assets/dynamic-importmap/loader.ts"],"sourcesContent":["/**\n * This code is derived from the following projects:\n *\n * 1. dynamic-importmap (https://github.com/keller-mark/dynamic-importmap)\n * 2. es-module-shims (https://github.com/guybedford/es-module-shims)\n *\n * The original implementation was created by Guy Bedford in es-module-shims,\n * then adapted by Mark Keller in dynamic-importmap, and further modified\n * for use in this project.\n *\n * Both projects are licensed under the MIT license.\n *\n * MIT License: https://opensource.org/licenses/MIT\n */\n\n/**\n * External dependencies\n */\nimport * as lexer from 'es-module-lexer';\n\n/**\n * Internal dependencies\n */\nimport { fetchModule } from './fetch';\nimport { resolve } from './resolver';\n\nexport interface ModuleLoad {\n\turl?: string; // original URL\n\tresponseUrl?: string; // response url\n\tfetchPromise?: Promise< ModuleLoad >; // fetch promise\n\tsource?: string; // source code\n\tlinkPromise?: Promise< void >; // link-promise (dependency fetch)\n\tanalysis?: ReturnType< typeof lexer.parse >; // analysis ([ imports, exports, ... ])\n\tdeps?: ModuleLoad[]; // deps\n\tblobUrl?: string; // blobUrl\n\tshellUrl?: string; // shellUrl for circular references\n}\n\nexport const initPromise = lexer.init;\n\n/**\n * Script element containing the initial page's import map.\n */\nconst initialImportMapElement =\n\twindow.document.querySelector< HTMLScriptElement >(\n\t\t'script#wp-importmap[type=importmap]'\n\t);\n\n/**\n * Data from the initial page's import map.\n *\n * Pages containing any of the imports present on the original page\n * in their import maps should ignore them, as those imports would\n * be handled natively.\n */\nexport const initialImportMap = initialImportMapElement\n\t? JSON.parse( initialImportMapElement.text )\n\t: { imports: {}, scopes: {} };\n\nconst skip = ( id ) => Object.keys( initialImportMap.imports ).includes( id );\n\nconst fetchCache: Record< string, Promise< ModuleLoad > > = {};\nexport const registry = {};\n\n// Init registry with importamp content.\nObject.keys( initialImportMap.imports ).forEach( ( id ) => {\n\tregistry[ id ] = {\n\t\tblobUrl: id,\n\t};\n} );\n\nasync function loadAll( load: ModuleLoad, seen: Record< string, any > ) {\n\tif ( load.blobUrl || seen[ load.url ] ) {\n\t\treturn;\n\t}\n\tseen[ load.url ] = 1;\n\tawait load.linkPromise;\n\tawait Promise.all( load.deps.map( ( dep ) => loadAll( dep, seen ) ) );\n}\n\nfunction urlJsString( url: string ) {\n\treturn `'${ url.replace( /'/g, \"\\\\'\" ) }'`;\n}\n\nconst createBlob = ( source: string, type = 'text/javascript' ) =>\n\tURL.createObjectURL( new Blob( [ source ], { type } ) );\n\nfunction resolveDeps( load: ModuleLoad, seen: Record< string, any > ) {\n\tif ( load.blobUrl || ! seen[ load.url ] ) {\n\t\treturn;\n\t}\n\tseen[ load.url ] = 0;\n\n\tfor ( const dep of load.deps ) {\n\t\tresolveDeps( dep, seen );\n\t}\n\n\tconst [ imports, exports ] = load.analysis;\n\tconst source = load.source;\n\n\tlet resolvedSource = '';\n\n\tif ( ! imports.length ) {\n\t\tresolvedSource += source;\n\t} else {\n\t\tlet lastIndex = 0;\n\t\tlet depIndex = 0;\n\t\tconst dynamicImportEndStack = [];\n\n\t\tfunction pushStringTo( originalIndex: number ) {\n\t\t\twhile (\n\t\t\t\tdynamicImportEndStack.length &&\n\t\t\t\tdynamicImportEndStack[ dynamicImportEndStack.length - 1 ] <\n\t\t\t\t\toriginalIndex\n\t\t\t) {\n\t\t\t\tconst dynamicImportEnd = dynamicImportEndStack.pop();\n\t\t\t\tresolvedSource += `${ source.slice(\n\t\t\t\t\tlastIndex,\n\t\t\t\t\tdynamicImportEnd\n\t\t\t\t) }, ${ urlJsString( load.responseUrl ) }`;\n\t\t\t\tlastIndex = dynamicImportEnd;\n\t\t\t}\n\t\t\tresolvedSource += source.slice( lastIndex, originalIndex );\n\t\t\tlastIndex = originalIndex;\n\t\t}\n\n\t\tfor ( const {\n\t\t\ts: start,\n\t\t\tss: statementStart,\n\t\t\tse: statementEnd,\n\t\t\td: dynamicImportIndex,\n\t\t} of imports ) {\n\t\t\t// static import\n\t\t\tif ( dynamicImportIndex === -1 ) {\n\t\t\t\tconst depLoad = load.deps[ depIndex++ ];\n\t\t\t\tlet blobUrl = depLoad.blobUrl;\n\t\t\t\tconst cycleShell = ! blobUrl;\n\t\t\t\tif ( cycleShell ) {\n\t\t\t\t\t// Circular shell creation\n\t\t\t\t\tif ( ! ( blobUrl = depLoad.shellUrl ) ) {\n\t\t\t\t\t\tblobUrl = depLoad.shellUrl = createBlob(\n\t\t\t\t\t\t\t`export function u$_(m){${ depLoad.analysis[ 1 ]\n\t\t\t\t\t\t\t\t.map( ( { s, e }, i ) => {\n\t\t\t\t\t\t\t\t\tconst q =\n\t\t\t\t\t\t\t\t\t\tdepLoad.source[ s ] === '\"' ||\n\t\t\t\t\t\t\t\t\t\tdepLoad.source[ s ] === \"'\";\n\t\t\t\t\t\t\t\t\treturn `e$_${ i }=m${\n\t\t\t\t\t\t\t\t\t\tq ? `[` : '.'\n\t\t\t\t\t\t\t\t\t}${ depLoad.source.slice( s, e ) }${\n\t\t\t\t\t\t\t\t\t\tq ? `]` : ''\n\t\t\t\t\t\t\t\t\t}`;\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t.join( ',' ) }}${\n\t\t\t\t\t\t\t\tdepLoad.analysis[ 1 ].length\n\t\t\t\t\t\t\t\t\t? `let ${ depLoad.analysis[ 1 ]\n\t\t\t\t\t\t\t\t\t\t\t.map( ( _, i ) => `e$_${ i }` )\n\t\t\t\t\t\t\t\t\t\t\t.join( ',' ) };`\n\t\t\t\t\t\t\t\t\t: ''\n\t\t\t\t\t\t\t}export {${ depLoad.analysis[ 1 ]\n\t\t\t\t\t\t\t\t.map(\n\t\t\t\t\t\t\t\t\t( { s, e }, i ) =>\n\t\t\t\t\t\t\t\t\t\t`e$_${ i } as ${ depLoad.source.slice(\n\t\t\t\t\t\t\t\t\t\t\ts,\n\t\t\t\t\t\t\t\t\t\t\te\n\t\t\t\t\t\t\t\t\t\t) }`\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t.join( ',' ) }}\\n//# sourceURL=${\n\t\t\t\t\t\t\t\tdepLoad.responseUrl\n\t\t\t\t\t\t\t}?cycle`\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tpushStringTo( start - 1 );\n\t\t\t\tresolvedSource += `/*${ source.slice(\n\t\t\t\t\tstart - 1,\n\t\t\t\t\tstatementEnd\n\t\t\t\t) }*/${ urlJsString( blobUrl ) }`;\n\n\t\t\t\t// circular shell execution\n\t\t\t\tif ( ! cycleShell && depLoad.shellUrl ) {\n\t\t\t\t\tresolvedSource += `;import*as m$_${ depIndex } from'${ depLoad.blobUrl }';import{u$_ as u$_${ depIndex }}from'${ depLoad.shellUrl }';u$_${ depIndex }(m$_${ depIndex })`;\n\t\t\t\t\tdepLoad.shellUrl = undefined;\n\t\t\t\t}\n\t\t\t\tlastIndex = statementEnd;\n\t\t\t}\n\t\t\t// import.meta\n\t\t\telse if ( dynamicImportIndex === -2 ) {\n\t\t\t\tthrow Error( 'The import.meta property is not supported.' );\n\t\t\t}\n\t\t\t// dynamic import\n\t\t\telse {\n\t\t\t\tpushStringTo( statementStart );\n\t\t\t\tresolvedSource += `wpInteractivityRouterImport(`;\n\t\t\t\tdynamicImportEndStack.push( statementEnd - 1 );\n\t\t\t\tlastIndex = start;\n\t\t\t}\n\t\t}\n\n\t\t// progressive cycle binding updates\n\t\tif ( load.shellUrl ) {\n\t\t\tresolvedSource += `\\n;import{u$_}from'${\n\t\t\t\tload.shellUrl\n\t\t\t}';try{u$_({${ exports\n\t\t\t\t.filter( ( e ) => e.ln )\n\t\t\t\t.map( ( { s, e, ln } ) => `${ source.slice( s, e ) }:${ ln }` )\n\t\t\t\t.join( ',' ) }})}catch(_){};\\n`;\n\t\t}\n\n\t\tpushStringTo( source.length );\n\t}\n\n\t// ensure we have a proper sourceURL\n\tlet hasSourceURL = false;\n\tresolvedSource = resolvedSource.replace(\n\t\tsourceMapURLRegEx,\n\t\t( match, isMapping, url ) => {\n\t\t\thasSourceURL = ! isMapping;\n\t\t\treturn match.replace( url, () =>\n\t\t\t\tnew URL( url, load.responseUrl ).toString()\n\t\t\t);\n\t\t}\n\t);\n\tif ( ! hasSourceURL ) {\n\t\tresolvedSource += '\\n//# sourceURL=' + load.responseUrl;\n\t}\n\n\tload.blobUrl = createBlob( resolvedSource );\n\tload.source = undefined; // free memory\n}\n\nconst sourceMapURLRegEx =\n\t/\\n\\/\\/# source(Mapping)?URL=([^\\n]+)\\s*((;|\\/\\/[^#][^\\n]*)\\s*)*$/;\n\nfunction getOrCreateLoad(\n\turl: string,\n\tfetchOpts: RequestInit,\n\tparent: string\n): ModuleLoad {\n\tlet load: ModuleLoad = registry[ url ];\n\tif ( load ) {\n\t\treturn load;\n\t}\n\n\tload = { url };\n\n\tif ( registry[ url ] ) {\n\t\t// If there's a naming conflict, keep incrementing until unique\n\t\tlet i = 0;\n\t\twhile ( registry[ load.url + ++i ] ) {\n\t\t\t/* no-op */\n\t\t}\n\t\tload.url += i;\n\t}\n\tregistry[ load.url ] = load;\n\n\tload.fetchPromise = ( async () => {\n\t\tlet source;\n\t\t( { responseUrl: load.responseUrl, source: source } =\n\t\t\tawait ( fetchCache[ url ] ||\n\t\t\t\tfetchModule( url, fetchOpts, parent ) ) );\n\t\ttry {\n\t\t\tload.analysis = lexer.parse( source, load.url );\n\t\t} catch ( e ) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.error( e );\n\t\t\tload.analysis = [ [], [], false, false ];\n\t\t}\n\t\tload.source = source;\n\t\treturn load;\n\t} )();\n\n\tload.linkPromise = load.fetchPromise.then( async () => {\n\t\tlet childFetchOpts = fetchOpts;\n\t\tload.deps = (\n\t\t\tawait Promise.all(\n\t\t\t\tload.analysis[ 0 ].map( async ( { n, d } ) => {\n\t\t\t\t\tif ( d !== -1 || ! n ) {\n\t\t\t\t\t\treturn undefined;\n\t\t\t\t\t}\n\t\t\t\t\tconst responseUrl = resolve(\n\t\t\t\t\t\tn,\n\t\t\t\t\t\tload.responseUrl || load.url\n\t\t\t\t\t);\n\t\t\t\t\tif ( skip && skip( responseUrl ) ) {\n\t\t\t\t\t\treturn { blobUrl: responseUrl } as ModuleLoad;\n\t\t\t\t\t}\n\t\t\t\t\t// remove integrity for child fetches\n\t\t\t\t\tif ( childFetchOpts.integrity ) {\n\t\t\t\t\t\tchildFetchOpts = {\n\t\t\t\t\t\t\t...childFetchOpts,\n\t\t\t\t\t\t\tintegrity: undefined,\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t\treturn getOrCreateLoad(\n\t\t\t\t\t\tresponseUrl,\n\t\t\t\t\t\tchildFetchOpts,\n\t\t\t\t\t\tload.responseUrl\n\t\t\t\t\t).fetchPromise;\n\t\t\t\t} )\n\t\t\t)\n\t\t).filter( ( l ) => l );\n\t} );\n\n\treturn load;\n}\n\nconst dynamicImport = ( u: string ) => import( /* webpackIgnore: true */ u );\n\n/**\n * Resolves the passed module URL and fetches the corresponding module\n * and their dependencies, returning a `ModuleLoad` object once all\n * of them have been fetched.\n *\n * @param url Module URL.\n * @param fetchOpts Fetch options.\n * @return A promise with a `ModuleLoad` instance.\n */\nexport async function preloadModule(\n\turl: string,\n\tfetchOpts?: RequestInit\n): Promise< ModuleLoad > {\n\tawait initPromise;\n\tconst load = getOrCreateLoad( url, fetchOpts, null );\n\tconst seen = {};\n\tawait loadAll( load, seen );\n\tresolveDeps( load, seen );\n\t// microtask scheduling – can help ensure Blob is fully ready\n\tawait Promise.resolve();\n\treturn load;\n}\n\n/**\n * Imports the module represented by the passed `ModuleLoad` instance.\n *\n * @param load The `ModuleLoad` instance representing the module.\n * @return A promise with the imported module.\n */\nexport async function importPreloadedModule< Module = unknown >(\n\tload: ModuleLoad\n): Promise< Module > {\n\tconst module = await dynamicImport( load.blobUrl );\n\t// if the preloaded module ended up with a shell (circular refs), finalize it\n\tif ( load.shellUrl ) {\n\t\t( await dynamicImport( load.shellUrl ) ).u$_( module );\n\t}\n\treturn module;\n}\n\n/**\n * Imports the module represented by the passed module URL.\n *\n * The module URL and all its dependencies are resolved using the\n * current status of the internal dynamic import map.\n *\n * @param url Module URL.\n * @param fetchOpts Fetch options.\n * @return A promise with the imported module.\n */\nexport async function topLevelLoad< Module = unknown >(\n\turl: string,\n\tfetchOpts?: RequestInit\n): Promise< Module > {\n\tconst load = await preloadModule( url, fetchOpts );\n\treturn importPreloadedModule< Module >( load );\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/assets/dynamic-importmap/loader.ts"],
4
+ "sourcesContent": ["/**\n * This code is derived from the following projects:\n *\n * 1. dynamic-importmap (https://github.com/keller-mark/dynamic-importmap)\n * 2. es-module-shims (https://github.com/guybedford/es-module-shims)\n *\n * The original implementation was created by Guy Bedford in es-module-shims,\n * then adapted by Mark Keller in dynamic-importmap, and further modified\n * for use in this project.\n *\n * Both projects are licensed under the MIT license.\n *\n * MIT License: https://opensource.org/licenses/MIT\n */\n\n/**\n * External dependencies\n */\nimport * as lexer from 'es-module-lexer';\n\n/**\n * Internal dependencies\n */\nimport { fetchModule } from './fetch';\nimport { resolve } from './resolver';\n\nexport interface ModuleLoad {\n\turl?: string; // original URL\n\tresponseUrl?: string; // response url\n\tfetchPromise?: Promise< ModuleLoad >; // fetch promise\n\tsource?: string; // source code\n\tlinkPromise?: Promise< void >; // link-promise (dependency fetch)\n\tanalysis?: ReturnType< typeof lexer.parse >; // analysis ([ imports, exports, ... ])\n\tdeps?: ModuleLoad[]; // deps\n\tblobUrl?: string; // blobUrl\n\tshellUrl?: string; // shellUrl for circular references\n}\n\nexport const initPromise = lexer.init;\n\n/**\n * Script element containing the initial page's import map.\n */\nconst initialImportMapElement =\n\twindow.document.querySelector< HTMLScriptElement >(\n\t\t'script#wp-importmap[type=importmap]'\n\t);\n\n/**\n * Data from the initial page's import map.\n *\n * Pages containing any of the imports present on the original page\n * in their import maps should ignore them, as those imports would\n * be handled natively.\n */\nexport const initialImportMap = initialImportMapElement\n\t? JSON.parse( initialImportMapElement.text )\n\t: { imports: {}, scopes: {} };\n\nconst skip = ( id ) => Object.keys( initialImportMap.imports ).includes( id );\n\nconst fetchCache: Record< string, Promise< ModuleLoad > > = {};\nexport const registry = {};\n\n// Init registry with importamp content.\nObject.keys( initialImportMap.imports ).forEach( ( id ) => {\n\tregistry[ id ] = {\n\t\tblobUrl: id,\n\t};\n} );\n\nasync function loadAll( load: ModuleLoad, seen: Record< string, any > ) {\n\tif ( load.blobUrl || seen[ load.url ] ) {\n\t\treturn;\n\t}\n\tseen[ load.url ] = 1;\n\tawait load.linkPromise;\n\tawait Promise.all( load.deps.map( ( dep ) => loadAll( dep, seen ) ) );\n}\n\nfunction urlJsString( url: string ) {\n\treturn `'${ url.replace( /'/g, \"\\\\'\" ) }'`;\n}\n\nconst createBlob = ( source: string, type = 'text/javascript' ) =>\n\tURL.createObjectURL( new Blob( [ source ], { type } ) );\n\nfunction resolveDeps( load: ModuleLoad, seen: Record< string, any > ) {\n\tif ( load.blobUrl || ! seen[ load.url ] ) {\n\t\treturn;\n\t}\n\tseen[ load.url ] = 0;\n\n\tfor ( const dep of load.deps ) {\n\t\tresolveDeps( dep, seen );\n\t}\n\n\tconst [ imports, exports ] = load.analysis;\n\tconst source = load.source;\n\n\tlet resolvedSource = '';\n\n\tif ( ! imports.length ) {\n\t\tresolvedSource += source;\n\t} else {\n\t\tlet lastIndex = 0;\n\t\tlet depIndex = 0;\n\t\tconst dynamicImportEndStack = [];\n\n\t\tfunction pushStringTo( originalIndex: number ) {\n\t\t\twhile (\n\t\t\t\tdynamicImportEndStack.length &&\n\t\t\t\tdynamicImportEndStack[ dynamicImportEndStack.length - 1 ] <\n\t\t\t\t\toriginalIndex\n\t\t\t) {\n\t\t\t\tconst dynamicImportEnd = dynamicImportEndStack.pop();\n\t\t\t\tresolvedSource += `${ source.slice(\n\t\t\t\t\tlastIndex,\n\t\t\t\t\tdynamicImportEnd\n\t\t\t\t) }, ${ urlJsString( load.responseUrl ) }`;\n\t\t\t\tlastIndex = dynamicImportEnd;\n\t\t\t}\n\t\t\tresolvedSource += source.slice( lastIndex, originalIndex );\n\t\t\tlastIndex = originalIndex;\n\t\t}\n\n\t\tfor ( const {\n\t\t\ts: start,\n\t\t\tss: statementStart,\n\t\t\tse: statementEnd,\n\t\t\td: dynamicImportIndex,\n\t\t} of imports ) {\n\t\t\t// static import\n\t\t\tif ( dynamicImportIndex === -1 ) {\n\t\t\t\tconst depLoad = load.deps[ depIndex++ ];\n\t\t\t\tlet blobUrl = depLoad.blobUrl;\n\t\t\t\tconst cycleShell = ! blobUrl;\n\t\t\t\tif ( cycleShell ) {\n\t\t\t\t\t// Circular shell creation\n\t\t\t\t\tif ( ! ( blobUrl = depLoad.shellUrl ) ) {\n\t\t\t\t\t\tblobUrl = depLoad.shellUrl = createBlob(\n\t\t\t\t\t\t\t`export function u$_(m){${ depLoad.analysis[ 1 ]\n\t\t\t\t\t\t\t\t.map( ( { s, e }, i ) => {\n\t\t\t\t\t\t\t\t\tconst q =\n\t\t\t\t\t\t\t\t\t\tdepLoad.source[ s ] === '\"' ||\n\t\t\t\t\t\t\t\t\t\tdepLoad.source[ s ] === \"'\";\n\t\t\t\t\t\t\t\t\treturn `e$_${ i }=m${\n\t\t\t\t\t\t\t\t\t\tq ? `[` : '.'\n\t\t\t\t\t\t\t\t\t}${ depLoad.source.slice( s, e ) }${\n\t\t\t\t\t\t\t\t\t\tq ? `]` : ''\n\t\t\t\t\t\t\t\t\t}`;\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t.join( ',' ) }}${\n\t\t\t\t\t\t\t\tdepLoad.analysis[ 1 ].length\n\t\t\t\t\t\t\t\t\t? `let ${ depLoad.analysis[ 1 ]\n\t\t\t\t\t\t\t\t\t\t\t.map( ( _, i ) => `e$_${ i }` )\n\t\t\t\t\t\t\t\t\t\t\t.join( ',' ) };`\n\t\t\t\t\t\t\t\t\t: ''\n\t\t\t\t\t\t\t}export {${ depLoad.analysis[ 1 ]\n\t\t\t\t\t\t\t\t.map(\n\t\t\t\t\t\t\t\t\t( { s, e }, i ) =>\n\t\t\t\t\t\t\t\t\t\t`e$_${ i } as ${ depLoad.source.slice(\n\t\t\t\t\t\t\t\t\t\t\ts,\n\t\t\t\t\t\t\t\t\t\t\te\n\t\t\t\t\t\t\t\t\t\t) }`\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t.join( ',' ) }}\\n//# sourceURL=${\n\t\t\t\t\t\t\t\tdepLoad.responseUrl\n\t\t\t\t\t\t\t}?cycle`\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tpushStringTo( start - 1 );\n\t\t\t\tresolvedSource += `/*${ source.slice(\n\t\t\t\t\tstart - 1,\n\t\t\t\t\tstatementEnd\n\t\t\t\t) }*/${ urlJsString( blobUrl ) }`;\n\n\t\t\t\t// circular shell execution\n\t\t\t\tif ( ! cycleShell && depLoad.shellUrl ) {\n\t\t\t\t\tresolvedSource += `;import*as m$_${ depIndex } from'${ depLoad.blobUrl }';import{u$_ as u$_${ depIndex }}from'${ depLoad.shellUrl }';u$_${ depIndex }(m$_${ depIndex })`;\n\t\t\t\t\tdepLoad.shellUrl = undefined;\n\t\t\t\t}\n\t\t\t\tlastIndex = statementEnd;\n\t\t\t}\n\t\t\t// import.meta\n\t\t\telse if ( dynamicImportIndex === -2 ) {\n\t\t\t\tthrow Error( 'The import.meta property is not supported.' );\n\t\t\t}\n\t\t\t// dynamic import\n\t\t\telse {\n\t\t\t\tpushStringTo( statementStart );\n\t\t\t\tresolvedSource += `wpInteractivityRouterImport(`;\n\t\t\t\tdynamicImportEndStack.push( statementEnd - 1 );\n\t\t\t\tlastIndex = start;\n\t\t\t}\n\t\t}\n\n\t\t// progressive cycle binding updates\n\t\tif ( load.shellUrl ) {\n\t\t\tresolvedSource += `\\n;import{u$_}from'${\n\t\t\t\tload.shellUrl\n\t\t\t}';try{u$_({${ exports\n\t\t\t\t.filter( ( e ) => e.ln )\n\t\t\t\t.map( ( { s, e, ln } ) => `${ source.slice( s, e ) }:${ ln }` )\n\t\t\t\t.join( ',' ) }})}catch(_){};\\n`;\n\t\t}\n\n\t\tpushStringTo( source.length );\n\t}\n\n\t// ensure we have a proper sourceURL\n\tlet hasSourceURL = false;\n\tresolvedSource = resolvedSource.replace(\n\t\tsourceMapURLRegEx,\n\t\t( match, isMapping, url ) => {\n\t\t\thasSourceURL = ! isMapping;\n\t\t\treturn match.replace( url, () =>\n\t\t\t\tnew URL( url, load.responseUrl ).toString()\n\t\t\t);\n\t\t}\n\t);\n\tif ( ! hasSourceURL ) {\n\t\tresolvedSource += '\\n//# sourceURL=' + load.responseUrl;\n\t}\n\n\tload.blobUrl = createBlob( resolvedSource );\n\tload.source = undefined; // free memory\n}\n\nconst sourceMapURLRegEx =\n\t/\\n\\/\\/# source(Mapping)?URL=([^\\n]+)\\s*((;|\\/\\/[^#][^\\n]*)\\s*)*$/;\n\nfunction getOrCreateLoad(\n\turl: string,\n\tfetchOpts: RequestInit,\n\tparent: string\n): ModuleLoad {\n\tlet load: ModuleLoad = registry[ url ];\n\tif ( load ) {\n\t\treturn load;\n\t}\n\n\tload = { url };\n\n\tif ( registry[ url ] ) {\n\t\t// If there's a naming conflict, keep incrementing until unique\n\t\tlet i = 0;\n\t\twhile ( registry[ load.url + ++i ] ) {\n\t\t\t/* no-op */\n\t\t}\n\t\tload.url += i;\n\t}\n\tregistry[ load.url ] = load;\n\n\tload.fetchPromise = ( async () => {\n\t\tlet source;\n\t\t( { responseUrl: load.responseUrl, source: source } =\n\t\t\tawait ( fetchCache[ url ] ||\n\t\t\t\tfetchModule( url, fetchOpts, parent ) ) );\n\t\ttry {\n\t\t\tload.analysis = lexer.parse( source, load.url );\n\t\t} catch ( e ) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.error( e );\n\t\t\tload.analysis = [ [], [], false, false ];\n\t\t}\n\t\tload.source = source;\n\t\treturn load;\n\t} )();\n\n\tload.linkPromise = load.fetchPromise.then( async () => {\n\t\tlet childFetchOpts = fetchOpts;\n\t\tload.deps = (\n\t\t\tawait Promise.all(\n\t\t\t\tload.analysis[ 0 ].map( async ( { n, d } ) => {\n\t\t\t\t\tif ( d !== -1 || ! n ) {\n\t\t\t\t\t\treturn undefined;\n\t\t\t\t\t}\n\t\t\t\t\tconst responseUrl = resolve(\n\t\t\t\t\t\tn,\n\t\t\t\t\t\tload.responseUrl || load.url\n\t\t\t\t\t);\n\t\t\t\t\tif ( skip && skip( responseUrl ) ) {\n\t\t\t\t\t\treturn { blobUrl: responseUrl } as ModuleLoad;\n\t\t\t\t\t}\n\t\t\t\t\t// remove integrity for child fetches\n\t\t\t\t\tif ( childFetchOpts.integrity ) {\n\t\t\t\t\t\tchildFetchOpts = {\n\t\t\t\t\t\t\t...childFetchOpts,\n\t\t\t\t\t\t\tintegrity: undefined,\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t\treturn getOrCreateLoad(\n\t\t\t\t\t\tresponseUrl,\n\t\t\t\t\t\tchildFetchOpts,\n\t\t\t\t\t\tload.responseUrl\n\t\t\t\t\t).fetchPromise;\n\t\t\t\t} )\n\t\t\t)\n\t\t).filter( ( l ) => l );\n\t} );\n\n\treturn load;\n}\n\nconst dynamicImport = ( u: string ) => import( /* webpackIgnore: true */ u );\n\n/**\n * Resolves the passed module URL and fetches the corresponding module\n * and their dependencies, returning a `ModuleLoad` object once all\n * of them have been fetched.\n *\n * @param url Module URL.\n * @param fetchOpts Fetch options.\n * @return A promise with a `ModuleLoad` instance.\n */\nexport async function preloadModule(\n\turl: string,\n\tfetchOpts?: RequestInit\n): Promise< ModuleLoad > {\n\tawait initPromise;\n\tconst load = getOrCreateLoad( url, fetchOpts, null );\n\tconst seen = {};\n\tawait loadAll( load, seen );\n\tresolveDeps( load, seen );\n\t// microtask scheduling \u2013 can help ensure Blob is fully ready\n\tawait Promise.resolve();\n\treturn load;\n}\n\n/**\n * Imports the module represented by the passed `ModuleLoad` instance.\n *\n * @param load The `ModuleLoad` instance representing the module.\n * @return A promise with the imported module.\n */\nexport async function importPreloadedModule< Module = unknown >(\n\tload: ModuleLoad\n): Promise< Module > {\n\tconst module = await dynamicImport( load.blobUrl );\n\t// if the preloaded module ended up with a shell (circular refs), finalize it\n\tif ( load.shellUrl ) {\n\t\t( await dynamicImport( load.shellUrl ) ).u$_( module );\n\t}\n\treturn module;\n}\n\n/**\n * Imports the module represented by the passed module URL.\n *\n * The module URL and all its dependencies are resolved using the\n * current status of the internal dynamic import map.\n *\n * @param url Module URL.\n * @param fetchOpts Fetch options.\n * @return A promise with the imported module.\n */\nexport async function topLevelLoad< Module = unknown >(\n\turl: string,\n\tfetchOpts?: RequestInit\n): Promise< Module > {\n\tconst load = await preloadModule( url, fetchOpts );\n\treturn importPreloadedModule< Module >( load );\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }