diff --git a/crates/pack-tests/tests/snapshot/externals/async-script-externals/config.json b/crates/pack-tests/tests/snapshot/externals/async-script-externals/config.json
index 685b94627..0a4dee9fe 100644
--- a/crates/pack-tests/tests/snapshot/externals/async-script-externals/config.json
+++ b/crates/pack-tests/tests/snapshot/externals/async-script-externals/config.json
@@ -7,7 +7,8 @@
}
],
"externals": {
- "lodash": "script _@https://gw.alipayobjects.com/os/lib/lodash/4.17.21/lodash.min.js"
+ "lodash": "script _@https://gw.alipayobjects.com/os/lib/lodash/4.17.21/lodash.min.js",
+ "jszip": "script JSZip@https://gw.alipayobjects.com/os/lib/jszip/3.10.1/dist/jszip.min.js"
}
}
}
\ No newline at end of file
diff --git a/crates/pack-tests/tests/snapshot/externals/async-script-externals/input/index.ts b/crates/pack-tests/tests/snapshot/externals/async-script-externals/input/index.ts
index cfef02f74..aec4d95e3 100644
--- a/crates/pack-tests/tests/snapshot/externals/async-script-externals/input/index.ts
+++ b/crates/pack-tests/tests/snapshot/externals/async-script-externals/input/index.ts
@@ -1,3 +1,9 @@
+import JSZip from 'jszip';
+
+const zip = new JSZip();
+
+zip;
+
const func = async () => {
// @ts-ignore
const _ = await import('lodash');
diff --git a/crates/pack-tests/tests/snapshot/externals/async-script-externals/output/_externals____2fc6bb03.js b/crates/pack-tests/tests/snapshot/externals/async-script-externals/output/_externals____2fc6bb03.js
index 2a7159331..5694a5fc1 100644
--- a/crates/pack-tests/tests/snapshot/externals/async-script-externals/output/_externals____2fc6bb03.js
+++ b/crates/pack-tests/tests/snapshot/externals/async-script-externals/output/_externals____2fc6bb03.js
@@ -18,7 +18,10 @@ var mod = await (async () => {
throw error;
})();
-__turbopack_context__.v(mod);
+var ns = Object.create(null);
+for (var key in mod) ns[key] = mod[key];
+ns.default = mod;
+__turbopack_context__.n(ns);
__turbopack_async_result__();
} catch(e) { __turbopack_async_result__(e); } }, true);}),
]);
\ No newline at end of file
diff --git a/crates/pack-tests/tests/snapshot/externals/async-script-externals/output/_root-of-the-server___d0ad72cc.js b/crates/pack-tests/tests/snapshot/externals/async-script-externals/output/_root-of-the-server___d0ad72cc.js
new file mode 100644
index 000000000..25db131f8
--- /dev/null
+++ b/crates/pack-tests/tests/snapshot/externals/async-script-externals/output/_root-of-the-server___d0ad72cc.js
@@ -0,0 +1,62 @@
+(globalThis["TURBOPACK"] || (globalThis["TURBOPACK"] = [])).push([typeof document === "object" ? document.currentScript : undefined,
+"[externals]/JSZip [external] (JSZip@https://gw.alipayobjects.com/os/lib/jszip/3.10.1/dist/jszip.min.js, script)", ((__turbopack_context__) => {
+"use strict";
+
+return __turbopack_context__.a(async (__turbopack_handle_async_dependencies__, __turbopack_async_result__) => { try {
+var mod = await (async () => {
+ if (typeof globalThis["JSZip"] !== 'undefined') {
+ return globalThis["JSZip"];
+ }
+ await __turbopack_context__.S("https://gw.alipayobjects.com/os/lib/jszip/3.10.1/dist/jszip.min.js");
+ if (typeof globalThis["JSZip"] !== 'undefined') {
+ return globalThis["JSZip"];
+ }
+ const error = new Error('Loading script failed.\n(missing: "https://gw.alipayobjects.com/os/lib/jszip/3.10.1/dist/jszip.min.js")');
+ error.name = 'ScriptExternalLoadError';
+ error.type = 'missing';
+ error.request = "https://gw.alipayobjects.com/os/lib/jszip/3.10.1/dist/jszip.min.js";
+ throw error;
+})();
+
+var ns = Object.create(null);
+for (var key in mod) ns[key] = mod[key];
+ns.default = mod;
+__turbopack_context__.n(ns);
+__turbopack_async_result__();
+} catch(e) { __turbopack_async_result__(e); } }, true);}),
+"[externals]/_ [external] (_@https://gw.alipayobjects.com/os/lib/lodash/4.17.21/lodash.min.js, script, async loader)", ((__turbopack_context__) => {
+
+__turbopack_context__.v((parentImport) => {
+ return Promise.all([
+ "_externals____2fc6bb03.js"
+].map((chunk) => __turbopack_context__.l(chunk))).then(() => {
+ return parentImport("[externals]/_ [external] (_@https://gw.alipayobjects.com/os/lib/lodash/4.17.21/lodash.min.js, script)");
+ });
+});
+}),
+"[project]/externals/async-script-externals/input/index.ts [client] (ecmascript)", ((__turbopack_context__) => {
+"use strict";
+
+return __turbopack_context__.a(async (__turbopack_handle_async_dependencies__, __turbopack_async_result__) => { try {
+var __TURBOPACK__imported__module__$5b$externals$5d2f$JSZip__$5b$external$5d$__$28$JSZip$40$https$3a2f2f$gw$2e$alipayobjects$2e$com$2f$os$2f$lib$2f$jszip$2f$3$2e$10$2e$1$2f$dist$2f$jszip$2e$min$2e$js$2c$__script$29$__ = __turbopack_context__.i("[externals]/JSZip [external] (JSZip@https://gw.alipayobjects.com/os/lib/jszip/3.10.1/dist/jszip.min.js, script)");
+var __turbopack_async_dependencies__ = __turbopack_handle_async_dependencies__([
+ __TURBOPACK__imported__module__$5b$externals$5d2f$JSZip__$5b$external$5d$__$28$JSZip$40$https$3a2f2f$gw$2e$alipayobjects$2e$com$2f$os$2f$lib$2f$jszip$2f$3$2e$10$2e$1$2f$dist$2f$jszip$2e$min$2e$js$2c$__script$29$__
+]);
+[__TURBOPACK__imported__module__$5b$externals$5d2f$JSZip__$5b$external$5d$__$28$JSZip$40$https$3a2f2f$gw$2e$alipayobjects$2e$com$2f$os$2f$lib$2f$jszip$2f$3$2e$10$2e$1$2f$dist$2f$jszip$2e$min$2e$js$2c$__script$29$__] = __turbopack_async_dependencies__.then ? (await __turbopack_async_dependencies__)() : __turbopack_async_dependencies__;
+;
+const zip = new __TURBOPACK__imported__module__$5b$externals$5d2f$JSZip__$5b$external$5d$__$28$JSZip$40$https$3a2f2f$gw$2e$alipayobjects$2e$com$2f$os$2f$lib$2f$jszip$2f$3$2e$10$2e$1$2f$dist$2f$jszip$2e$min$2e$js$2c$__script$29$__["default"]();
+zip;
+const func = async ()=>{
+ // @ts-ignore
+ const _ = await __turbopack_context__.A("[externals]/_ [external] (_@https://gw.alipayobjects.com/os/lib/lodash/4.17.21/lodash.min.js, script, async loader)");
+ console.log(Object.keys(_.default.omit({
+ a: 1
+ }, 'a')).length === 0);
+};
+func();
+__turbopack_context__.s([]);
+__turbopack_async_result__();
+} catch(e) { __turbopack_async_result__(e); } }, false);}),
+]);
+
+//# sourceMappingURL=_root-of-the-server___d0ad72cc.js.map
\ No newline at end of file
diff --git a/crates/pack-tests/tests/snapshot/externals/async-script-externals/output/_root-of-the-server___d0ad72cc.js.map b/crates/pack-tests/tests/snapshot/externals/async-script-externals/output/_root-of-the-server___d0ad72cc.js.map
new file mode 100644
index 000000000..68dbe89ed
--- /dev/null
+++ b/crates/pack-tests/tests/snapshot/externals/async-script-externals/output/_root-of-the-server___d0ad72cc.js.map
@@ -0,0 +1,6 @@
+{
+ "version": 3,
+ "sources": [],
+ "sections": [
+ {"offset": {"line": 40, "column": 0}, "map": {"version":3,"sources":["turbopack:///[project]/externals/async-script-externals/input/index.ts"],"sourcesContent":["import JSZip from 'jszip';\n\nconst zip = new JSZip();\n\nzip;\n\nconst func = async () => {\n // @ts-ignore\n const _ = await import('lodash');\n console.log(Object.keys(_.default.omit({ a: 1 }, 'a')).length === 0);\n};\nfunc();"],"names":["zip","func","_","console","log","Object","keys","default","omit","a","length"],"mappings":"AAAA;;;;;;AAEA,MAAMA,MAAM,IAAI,gOAAK;AAErBA;AAEA,MAAMC,OAAO;IACT,aAAa;IACb,MAAMC,IAAI;IACVC,QAAQC,GAAG,CAACC,OAAOC,IAAI,CAACJ,EAAEK,OAAO,CAACC,IAAI,CAAC;QAAEC,GAAG;IAAE,GAAG,MAAMC,MAAM,KAAK;AACtE;AACAT"}}]
+}
\ No newline at end of file
diff --git a/crates/pack-tests/tests/snapshot/externals/async-script-externals/output/_root-of-the-server___d1c9390f.js b/crates/pack-tests/tests/snapshot/externals/async-script-externals/output/_root-of-the-server___d1c9390f.js
deleted file mode 100644
index 11ed9005f..000000000
--- a/crates/pack-tests/tests/snapshot/externals/async-script-externals/output/_root-of-the-server___d1c9390f.js
+++ /dev/null
@@ -1,25 +0,0 @@
-(globalThis["TURBOPACK"] || (globalThis["TURBOPACK"] = [])).push([typeof document === "object" ? document.currentScript : undefined,
-"[externals]/_ [external] (_@https://gw.alipayobjects.com/os/lib/lodash/4.17.21/lodash.min.js, script, async loader)", ((__turbopack_context__) => {
-
-__turbopack_context__.v((parentImport) => {
- return Promise.all([
- "_externals____2fc6bb03.js"
-].map((chunk) => __turbopack_context__.l(chunk))).then(() => {
- return parentImport("[externals]/_ [external] (_@https://gw.alipayobjects.com/os/lib/lodash/4.17.21/lodash.min.js, script)");
- });
-});
-}),
-"[project]/externals/async-script-externals/input/index.ts [client] (ecmascript)", ((__turbopack_context__, module, exports) => {
-
-const func = async ()=>{
- // @ts-ignore
- const _ = await __turbopack_context__.A("[externals]/_ [external] (_@https://gw.alipayobjects.com/os/lib/lodash/4.17.21/lodash.min.js, script, async loader)");
- console.log(Object.keys(_.default.omit({
- a: 1
- }, 'a')).length === 0);
-};
-func();
-}),
-]);
-
-//# sourceMappingURL=_root-of-the-server___d1c9390f.js.map
\ No newline at end of file
diff --git a/crates/pack-tests/tests/snapshot/externals/async-script-externals/output/_root-of-the-server___d1c9390f.js.map b/crates/pack-tests/tests/snapshot/externals/async-script-externals/output/_root-of-the-server___d1c9390f.js.map
deleted file mode 100644
index 3cbb287e5..000000000
--- a/crates/pack-tests/tests/snapshot/externals/async-script-externals/output/_root-of-the-server___d1c9390f.js.map
+++ /dev/null
@@ -1,6 +0,0 @@
-{
- "version": 3,
- "sources": [],
- "sections": [
- {"offset": {"line": 13, "column": 0}, "map": {"version":3,"sources":["turbopack:///[project]/externals/async-script-externals/input/index.ts"],"sourcesContent":["const func = async () => {\n // @ts-ignore\n const _ = await import('lodash');\n console.log(Object.keys(_.default.omit({ a: 1 }, 'a')).length === 0);\n};\nfunc();"],"names":["func","_","console","log","Object","keys","default","omit","a","length"],"mappings":"AAAA,MAAMA,OAAO;IACT,aAAa;IACb,MAAMC,IAAI;IACVC,QAAQC,GAAG,CAACC,OAAOC,IAAI,CAACJ,EAAEK,OAAO,CAACC,IAAI,CAAC;QAAEC,GAAG;IAAE,GAAG,MAAMC,MAAM,KAAK;AACtE;AACAT"}}]
-}
\ No newline at end of file
diff --git a/crates/pack-tests/tests/snapshot/externals/async-script-externals/output/main.js b/crates/pack-tests/tests/snapshot/externals/async-script-externals/output/main.js
index 2c73a76d2..883eedfd1 100644
--- a/crates/pack-tests/tests/snapshot/externals/async-script-externals/output/main.js
+++ b/crates/pack-tests/tests/snapshot/externals/async-script-externals/output/main.js
@@ -1,5 +1,5 @@
(globalThis["TURBOPACK"] || (globalThis["TURBOPACK"] = [])).push([
typeof document === "object" ? document.currentScript : undefined,
- {"otherChunks":["_root-of-the-server___d1c9390f.js"],"runtimeModuleIds":["[project]/externals/async-script-externals/input/index.ts [client] (ecmascript)"]}
+ {"otherChunks":["_root-of-the-server___d0ad72cc.js"],"runtimeModuleIds":["[project]/externals/async-script-externals/input/index.ts [client] (ecmascript)"]}
]);
-// Dummy runtime
+// Dummy runtime
\ No newline at end of file
diff --git a/crates/pack-tests/tests/snapshot/externals/basic/output/_root-of-the-server___3b647096.js b/crates/pack-tests/tests/snapshot/externals/basic/output/_root-of-the-server___3b647096.js
index a6f14a175..4a54f1249 100644
--- a/crates/pack-tests/tests/snapshot/externals/basic/output/_root-of-the-server___3b647096.js
+++ b/crates/pack-tests/tests/snapshot/externals/basic/output/_root-of-the-server___3b647096.js
@@ -55,7 +55,10 @@ var mod = await (async () => {
throw error;
})();
-__turbopack_context__.v(mod);
+var ns = Object.create(null);
+for (var key in mod) ns[key] = mod[key];
+ns.default = mod;
+__turbopack_context__.n(ns);
__turbopack_async_result__();
} catch(e) { __turbopack_async_result__(e); } }, true);}),
"[externals]/bar_script2 [external] (bar_script2@https://example.com/lib/script2.js, script)", ((__turbopack_context__) => {
@@ -77,7 +80,10 @@ var mod = await (async () => {
throw error;
})();
-__turbopack_context__.v(mod);
+var ns = Object.create(null);
+for (var key in mod) ns[key] = mod[key];
+ns.default = mod;
+__turbopack_context__.n(ns);
__turbopack_async_result__();
} catch(e) { __turbopack_async_result__(e); } }, true);}),
"[project]/externals/basic/input/index.js [client] (ecmascript)", ((__turbopack_context__) => {
diff --git a/crates/pack-tests/tests/snapshot/externals/basic/output/_root-of-the-server___3b647096.js.map b/crates/pack-tests/tests/snapshot/externals/basic/output/_root-of-the-server___3b647096.js.map
index 544bd465d..f52f35735 100644
--- a/crates/pack-tests/tests/snapshot/externals/basic/output/_root-of-the-server___3b647096.js.map
+++ b/crates/pack-tests/tests/snapshot/externals/basic/output/_root-of-the-server___3b647096.js.map
@@ -2,5 +2,5 @@
"version": 3,
"sources": [],
"sections": [
- {"offset": {"line": 86, "column": 0}, "map": {"version":3,"sources":["turbopack:///[project]/externals/basic/input/index.js"],"sourcesContent":["import foo from \"foo\";\nimport foo_require from \"foo_require\";\nimport foo_require2 from \"foo_require2\";\nimport foo_import from \"foo_import\";\nimport foo_import2 from \"foo_import2\";\nimport foo_script from \"foo_script\";\nimport foo_script2 from \"foo_script2\";\n\nconsole.log(foo, foo_require, foo_require2, foo_import, foo_import2);\nconsole.log(foo_script, foo_script2);"],"names":["console","log"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;AAEAA,QAAQC,GAAG,CAAC,6GAAG,EAAE,0GAAW,EAAE,4HAAY,EAAE,iHAAU,EAAE,iIAAW;AACnED,QAAQC,GAAG,CAAC,mLAAU,EAAE,oLAAW"}}]
+ {"offset": {"line": 92, "column": 0}, "map": {"version":3,"sources":["turbopack:///[project]/externals/basic/input/index.js"],"sourcesContent":["import foo from \"foo\";\nimport foo_require from \"foo_require\";\nimport foo_require2 from \"foo_require2\";\nimport foo_import from \"foo_import\";\nimport foo_import2 from \"foo_import2\";\nimport foo_script from \"foo_script\";\nimport foo_script2 from \"foo_script2\";\n\nconsole.log(foo, foo_require, foo_require2, foo_import, foo_import2);\nconsole.log(foo_script, foo_script2);"],"names":["console","log"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;AAEAA,QAAQC,GAAG,CAAC,6GAAG,EAAE,0GAAW,EAAE,4HAAY,EAAE,iHAAU,EAAE,iIAAW;AACnED,QAAQC,GAAG,CAAC,mLAAU,EAAE,oLAAW"}}]
}
\ No newline at end of file
diff --git a/crates/pack-tests/tests/snapshot/externals/script/output/_externals____2fc6bb03.js b/crates/pack-tests/tests/snapshot/externals/script/output/_externals____2fc6bb03.js
index 2a7159331..5694a5fc1 100644
--- a/crates/pack-tests/tests/snapshot/externals/script/output/_externals____2fc6bb03.js
+++ b/crates/pack-tests/tests/snapshot/externals/script/output/_externals____2fc6bb03.js
@@ -18,7 +18,10 @@ var mod = await (async () => {
throw error;
})();
-__turbopack_context__.v(mod);
+var ns = Object.create(null);
+for (var key in mod) ns[key] = mod[key];
+ns.default = mod;
+__turbopack_context__.n(ns);
__turbopack_async_result__();
} catch(e) { __turbopack_async_result__(e); } }, true);}),
]);
\ No newline at end of file
diff --git a/crates/pack-tests/tests/snapshot/public_path/basic/output/main.js b/crates/pack-tests/tests/snapshot/public_path/basic/output/main.js
index 40223ba0d..c822121db 100644
--- a/crates/pack-tests/tests/snapshot/public_path/basic/output/main.js
+++ b/crates/pack-tests/tests/snapshot/public_path/basic/output/main.js
@@ -705,9 +705,7 @@ const loadedScripts = new Map();
}
promise = new Promise((resolve, reject)=>{
const script = document.createElement('script');
- if (CROSS_ORIGIN_LOADING) {
- script.crossOrigin = CROSS_ORIGIN_LOADING;
- }
+ script.crossOrigin = CROSS_ORIGIN;
script.src = scriptUrl;
script.onload = ()=>resolve();
script.onerror = ()=>reject(new Error(`Failed to load script: ${scriptUrl}`));
diff --git a/crates/pack-tests/tests/snapshot/public_path/basic/output/main.js.map b/crates/pack-tests/tests/snapshot/public_path/basic/output/main.js.map
index b076e93be..675605890 100644
--- a/crates/pack-tests/tests/snapshot/public_path/basic/output/main.js.map
+++ b/crates/pack-tests/tests/snapshot/public_path/basic/output/main.js.map
@@ -3,7 +3,7 @@
"sources": [],
"sections": [
{"offset": {"line": 15, "column": 0}, "map": {"version":3,"sources":["turbopack:///[turbopack]/shared/runtime/runtime-utils.ts"],"sourcesContent":["/**\n * This file contains runtime types and functions that are shared between all\n * TurboPack ECMAScript runtimes.\n *\n * It will be prepended to the runtime code of each runtime.\n */\n\n/* eslint-disable @typescript-eslint/no-unused-vars */\n\n/// \n\ntype EsmNamespaceObject = Record\n\n/**\n * Describes why a module was instantiated.\n * Shared between browser and Node.js runtimes.\n */\nenum SourceType {\n /**\n * The module was instantiated because it was included in an evaluated chunk's\n * runtime.\n * SourceData is a ChunkPath.\n */\n Runtime = 0,\n /**\n * The module was instantiated because a parent module imported it.\n * SourceData is a ModuleId.\n */\n Parent = 1,\n /**\n * The module was instantiated because it was included in a chunk's hot module\n * update.\n * SourceData is an array of ModuleIds or undefined.\n */\n Update = 2,\n}\n\ntype SourceData = ChunkPath | ModuleId | ModuleId[] | undefined\n\n// @ts-ignore Defined in `dev-base.ts`\ndeclare function getOrInstantiateModuleFromParent(\n id: ModuleId,\n sourceModule: M\n): M\n\n// @ts-ignore Defined in `hmr-runtime.ts` (dev mode only)\ndeclare let devModuleCache: Record | undefined\n\n/**\n * Flag indicating which module object type to create when a module is merged. Set to `true`\n * by each runtime that uses ModuleWithDirection (browser dev-base.ts, nodejs dev-base.ts,\n * nodejs build-base.ts). Browser production (build-base.ts) leaves it as `false` since it\n * uses plain Module objects.\n */\nlet createModuleWithDirectionFlag = false\n\nconst REEXPORTED_OBJECTS = new WeakMap()\n\n/**\n * Constructs the `__turbopack_context__` object for a module.\n */\nfunction Context(\n this: TurbopackBaseContext,\n module: Module,\n exports: Exports\n) {\n this.m = module\n // We need to store this here instead of accessing it from the module object to:\n // 1. Make it available to factories directly, since we rewrite `this` to\n // `__turbopack_context__.e` in CJS modules.\n // 2. Support async modules which rewrite `module.exports` to a promise, so we\n // can still access the original exports object from functions like\n // `esmExport`\n // Ideally we could find a new approach for async modules and drop this property altogether.\n this.e = exports\n}\nconst contextPrototype = Context.prototype as TurbopackBaseContext\n\ntype ModuleContextMap = Record\n\ninterface ModuleContextEntry {\n id: () => ModuleId\n module: () => any\n}\n\ninterface ModuleContext {\n // require call\n (moduleId: string): Exports | EsmNamespaceObject\n\n // async import call\n import(moduleId: string): Promise\n\n keys(): ModuleId[]\n\n resolve(moduleId: string): ModuleId\n}\n\ntype GetOrInstantiateModuleFromParent = (\n moduleId: M['id'],\n parentModule: M\n) => M\n\ndeclare function getOrInstantiateRuntimeModule(\n chunkPath: ChunkPath,\n moduleId: ModuleId\n): Module\n\nconst hasOwnProperty = Object.prototype.hasOwnProperty\nconst toStringTag = typeof Symbol !== 'undefined' && Symbol.toStringTag\n\nfunction defineProp(\n obj: any,\n name: PropertyKey,\n options: PropertyDescriptor & ThisType\n) {\n if (!hasOwnProperty.call(obj, name)) Object.defineProperty(obj, name, options)\n}\n\nfunction getOverwrittenModule(\n moduleCache: ModuleCache,\n id: ModuleId\n): Module {\n let module = moduleCache[id]\n if (!module) {\n if (createModuleWithDirectionFlag) {\n // set in development modes for hmr support\n module = createModuleWithDirection(id)\n } else {\n module = createModuleObject(id)\n }\n moduleCache[id] = module\n }\n return module\n}\n\n/**\n * Creates the module object. Only done here to ensure all module objects have the same shape.\n */\nfunction createModuleObject(id: ModuleId): Module {\n return {\n exports: {},\n error: undefined,\n id,\n namespaceObject: undefined,\n }\n}\n\nfunction createModuleWithDirection(id: ModuleId): ModuleWithDirection {\n return {\n exports: {},\n error: undefined,\n id,\n namespaceObject: undefined,\n parents: [],\n children: [],\n }\n}\n\ntype BindingTag = 0\nconst BindingTag_Value = 0 as BindingTag\n\n// an arbitrary sequence of bindings as\n// - a prop name\n// - BindingTag_Value, a value to be bound directly, or\n// - 1 or 2 functions to bind as getters and sdetters\ntype EsmBindings = Array<\n string | BindingTag | (() => unknown) | ((v: unknown) => void) | unknown\n>\n\n/**\n * Adds the getters to the exports object.\n */\nfunction esm(exports: Exports, bindings: EsmBindings) {\n defineProp(exports, '__esModule', { value: true })\n if (toStringTag) defineProp(exports, toStringTag, { value: 'Module' })\n let i = 0\n while (i < bindings.length) {\n const propName = bindings[i++] as string\n const tagOrFunction = bindings[i++]\n if (typeof tagOrFunction === 'number') {\n if (tagOrFunction === BindingTag_Value) {\n defineProp(exports, propName, {\n value: bindings[i++],\n enumerable: true,\n writable: false,\n })\n } else {\n throw new Error(`unexpected tag: ${tagOrFunction}`)\n }\n } else {\n const getterFn = tagOrFunction as () => unknown\n if (typeof bindings[i] === 'function') {\n const setterFn = bindings[i++] as (v: unknown) => void\n defineProp(exports, propName, {\n get: getterFn,\n set: setterFn,\n enumerable: true,\n })\n } else {\n defineProp(exports, propName, {\n get: getterFn,\n enumerable: true,\n })\n }\n }\n }\n Object.seal(exports)\n}\n\n/**\n * Makes the module an ESM with exports\n */\nfunction esmExport(\n this: TurbopackBaseContext,\n bindings: EsmBindings,\n id: ModuleId | undefined\n) {\n let module: Module\n let exports: Module['exports']\n if (id != null) {\n module = getOverwrittenModule(this.c, id)\n exports = module.exports\n } else {\n module = this.m\n exports = this.e\n }\n module.namespaceObject = exports\n esm(exports, bindings)\n}\ncontextPrototype.s = esmExport\n\ntype ReexportedObjects = Record[]\nfunction ensureDynamicExports(\n module: Module,\n exports: Exports\n): ReexportedObjects {\n let reexportedObjects: ReexportedObjects | undefined =\n REEXPORTED_OBJECTS.get(module)\n\n if (!reexportedObjects) {\n REEXPORTED_OBJECTS.set(module, (reexportedObjects = []))\n module.exports = module.namespaceObject = new Proxy(exports, {\n get(target, prop) {\n if (\n hasOwnProperty.call(target, prop) ||\n prop === 'default' ||\n prop === '__esModule'\n ) {\n return Reflect.get(target, prop)\n }\n for (const obj of reexportedObjects!) {\n const value = Reflect.get(obj, prop)\n if (value !== undefined) return value\n }\n return undefined\n },\n ownKeys(target) {\n const keys = Reflect.ownKeys(target)\n for (const obj of reexportedObjects!) {\n for (const key of Reflect.ownKeys(obj)) {\n if (key !== 'default' && !keys.includes(key)) keys.push(key)\n }\n }\n return keys\n },\n })\n }\n return reexportedObjects\n}\n\n/**\n * Dynamically exports properties from an object\n */\nfunction dynamicExport(\n this: TurbopackBaseContext,\n object: Record,\n id: ModuleId | undefined\n) {\n let module: Module\n let exports: Exports\n if (id != null) {\n module = getOverwrittenModule(this.c, id)\n exports = module.exports\n } else {\n module = this.m\n exports = this.e\n }\n const reexportedObjects = ensureDynamicExports(module, exports)\n\n if (typeof object === 'object' && object !== null) {\n reexportedObjects.push(object)\n }\n}\ncontextPrototype.j = dynamicExport\n\nfunction exportValue(\n this: TurbopackBaseContext,\n value: any,\n id: ModuleId | undefined\n) {\n let module: Module\n if (id != null) {\n module = getOverwrittenModule(this.c, id)\n } else {\n module = this.m\n }\n module.exports = value\n}\ncontextPrototype.v = exportValue\n\nfunction exportNamespace(\n this: TurbopackBaseContext,\n namespace: any,\n id: ModuleId | undefined\n) {\n let module: Module\n if (id != null) {\n module = getOverwrittenModule(this.c, id)\n } else {\n module = this.m\n }\n module.exports = module.namespaceObject = namespace\n}\ncontextPrototype.n = exportNamespace\n\nfunction createGetter(obj: Record, key: string | symbol) {\n return () => obj[key]\n}\n\n/**\n * @returns prototype of the object\n */\nconst getProto: (obj: any) => any = Object.getPrototypeOf\n ? (obj) => Object.getPrototypeOf(obj)\n : (obj) => obj.__proto__\n\n/** Prototypes that are not expanded for exports */\nconst LEAF_PROTOTYPES = [null, getProto({}), getProto([]), getProto(getProto)]\n\n/**\n * @param raw\n * @param ns\n * @param allowExportDefault\n * * `false`: will have the raw module as default export\n * * `true`: will have the default property as default export\n */\nfunction interopEsm(\n raw: Exports,\n ns: EsmNamespaceObject,\n allowExportDefault?: boolean\n) {\n const bindings: EsmBindings = []\n let defaultLocation = -1\n for (\n let current = raw;\n (typeof current === 'object' || typeof current === 'function') &&\n !LEAF_PROTOTYPES.includes(current);\n current = getProto(current)\n ) {\n for (const key of Object.getOwnPropertyNames(current)) {\n bindings.push(key, createGetter(raw, key))\n if (defaultLocation === -1 && key === 'default') {\n defaultLocation = bindings.length - 1\n }\n }\n }\n\n // this is not really correct\n // we should set the `default` getter if the imported module is a `.cjs file`\n if (!(allowExportDefault && defaultLocation >= 0)) {\n // Replace the binding with one for the namespace itself in order to preserve iteration order.\n if (defaultLocation >= 0) {\n // Replace the getter with the value\n bindings.splice(defaultLocation, 1, BindingTag_Value, raw)\n } else {\n bindings.push('default', BindingTag_Value, raw)\n }\n }\n\n esm(ns, bindings)\n return ns\n}\n\nfunction createNS(raw: Module['exports']): EsmNamespaceObject {\n if (typeof raw === 'function') {\n return function (this: any, ...args: any[]) {\n return raw.apply(this, args)\n }\n } else {\n return Object.create(null)\n }\n}\n\nfunction esmImport(\n this: TurbopackBaseContext,\n id: ModuleId\n): Exclude {\n const module = getOrInstantiateModuleFromParent(id, this.m)\n\n // any ES module has to have `module.namespaceObject` defined.\n if (module.namespaceObject) return module.namespaceObject\n\n // only ESM can be an async module, so we don't need to worry about exports being a promise here.\n const raw = module.exports\n return (module.namespaceObject = interopEsm(\n raw,\n createNS(raw),\n raw && (raw as any).__esModule\n ))\n}\ncontextPrototype.i = esmImport\n\nfunction asyncLoader(\n this: TurbopackBaseContext,\n moduleId: ModuleId\n): Promise {\n const loader = this.r(moduleId) as (\n importFunction: EsmImport\n ) => Promise\n return loader(esmImport.bind(this))\n}\ncontextPrototype.A = asyncLoader\n\n// Add a simple runtime require so that environments without one can still pass\n// `typeof require` CommonJS checks so that exports are correctly registered.\nconst runtimeRequire =\n // @ts-ignore\n typeof require === 'function'\n ? // @ts-ignore\n require\n : function require() {\n throw new Error('Unexpected use of runtime require')\n }\ncontextPrototype.t = runtimeRequire\n\nfunction commonJsRequire(\n this: TurbopackBaseContext,\n id: ModuleId\n): Exports {\n return getOrInstantiateModuleFromParent(id, this.m).exports\n}\ncontextPrototype.r = commonJsRequire\n\n/**\n * Remove fragments and query parameters since they are never part of the context map keys\n *\n * This matches how we parse patterns at resolving time. Arguably we should only do this for\n * strings passed to `import` but the resolve does it for `import` and `require` and so we do\n * here as well.\n */\nfunction parseRequest(request: string): string {\n // Per the URI spec fragments can contain `?` characters, so we should trim it off first\n // https://datatracker.ietf.org/doc/html/rfc3986#section-3.5\n const hashIndex = request.indexOf('#')\n if (hashIndex !== -1) {\n request = request.substring(0, hashIndex)\n }\n\n const queryIndex = request.indexOf('?')\n if (queryIndex !== -1) {\n request = request.substring(0, queryIndex)\n }\n\n return request\n}\n/**\n * `require.context` and require/import expression runtime.\n */\nfunction moduleContext(map: ModuleContextMap): ModuleContext {\n function moduleContext(id: string): Exports {\n id = parseRequest(id)\n if (hasOwnProperty.call(map, id)) {\n return map[id].module()\n }\n\n const e = new Error(`Cannot find module '${id}'`)\n ;(e as any).code = 'MODULE_NOT_FOUND'\n throw e\n }\n\n moduleContext.keys = (): string[] => {\n return Object.keys(map)\n }\n\n moduleContext.resolve = (id: string): ModuleId => {\n id = parseRequest(id)\n if (hasOwnProperty.call(map, id)) {\n return map[id].id()\n }\n\n const e = new Error(`Cannot find module '${id}'`)\n ;(e as any).code = 'MODULE_NOT_FOUND'\n throw e\n }\n\n moduleContext.import = async (id: string) => {\n return await (moduleContext(id) as Promise)\n }\n\n return moduleContext\n}\ncontextPrototype.f = moduleContext\n\n/**\n * Returns the path of a chunk defined by its data.\n */\nfunction getChunkPath(chunkData: ChunkData): ChunkPath {\n return typeof chunkData === 'string' ? chunkData : chunkData.path\n}\n\nfunction isPromise(maybePromise: any): maybePromise is Promise {\n return (\n maybePromise != null &&\n typeof maybePromise === 'object' &&\n 'then' in maybePromise &&\n typeof maybePromise.then === 'function'\n )\n}\n\nfunction isAsyncModuleExt(obj: T): obj is AsyncModuleExt & T {\n return turbopackQueues in obj\n}\n\nfunction createPromise() {\n let resolve: (value: T | PromiseLike) => void\n let reject: (reason?: any) => void\n\n const promise = new Promise((res, rej) => {\n reject = rej\n resolve = res\n })\n\n return {\n promise,\n resolve: resolve!,\n reject: reject!,\n }\n}\n\n// Load the CompressedmoduleFactories of a chunk into the `moduleFactories` Map.\n// The CompressedModuleFactories format is\n// - 1 or more module ids\n// - a module factory function\n// So walking this is a little complex but the flat structure is also fast to\n// traverse, we can use `typeof` operators to distinguish the two cases.\nfunction installCompressedModuleFactories(\n chunkModules: CompressedModuleFactories,\n offset: number,\n moduleFactories: ModuleFactories,\n newModuleId?: (id: ModuleId) => void\n) {\n let i = offset\n while (i < chunkModules.length) {\n let end = i + 1\n // Find our factory function\n while (\n end < chunkModules.length &&\n typeof chunkModules[end] !== 'function'\n ) {\n end++\n }\n if (end === chunkModules.length) {\n throw new Error('malformed chunk format, expected a factory function')\n }\n\n // Install the factory for each module ID that doesn't already have one.\n // When some IDs in this group already have a factory, reuse that existing\n // group factory for the missing IDs to keep all IDs in the group consistent.\n // Otherwise, install the factory from this chunk.\n const moduleFactoryFn = chunkModules[end] as Function\n let existingGroupFactory: Function | undefined = undefined\n for (let j = i; j < end; j++) {\n const id = chunkModules[j] as ModuleId\n const existingFactory = moduleFactories.get(id)\n if (existingFactory) {\n existingGroupFactory = existingFactory\n break\n }\n }\n const factoryToInstall = existingGroupFactory ?? moduleFactoryFn\n\n let didInstallFactory = false\n for (let j = i; j < end; j++) {\n const id = chunkModules[j] as ModuleId\n if (!moduleFactories.has(id)) {\n if (!didInstallFactory) {\n if (factoryToInstall === moduleFactoryFn) {\n applyModuleFactoryName(moduleFactoryFn)\n }\n didInstallFactory = true\n }\n moduleFactories.set(id, factoryToInstall)\n newModuleId?.(id)\n }\n }\n i = end + 1 // end is pointing at the last factory advance to the next id or the end of the array.\n }\n}\n\n// everything below is adapted from webpack\n// https://github.com/webpack/webpack/blob/6be4065ade1e252c1d8dcba4af0f43e32af1bdc1/lib/runtime/AsyncModuleRuntimeModule.js#L13\n\nconst turbopackQueues = Symbol('turbopack queues')\nconst turbopackExports = Symbol('turbopack exports')\nconst turbopackError = Symbol('turbopack error')\n\nconst enum QueueStatus {\n Unknown = -1,\n Unresolved = 0,\n Resolved = 1,\n}\n\ntype AsyncQueueFn = (() => void) & { queueCount: number }\ntype AsyncQueue = AsyncQueueFn[] & {\n status: QueueStatus\n}\n\nfunction resolveQueue(queue?: AsyncQueue) {\n if (queue && queue.status !== QueueStatus.Resolved) {\n queue.status = QueueStatus.Resolved\n queue.forEach((fn) => fn.queueCount--)\n queue.forEach((fn) => (fn.queueCount-- ? fn.queueCount++ : fn()))\n }\n}\n\ntype Dep = Exports | AsyncModulePromise | Promise\n\ntype AsyncModuleExt = {\n [turbopackQueues]: (fn: (queue: AsyncQueue) => void) => void\n [turbopackExports]: Exports\n [turbopackError]?: any\n}\n\ntype AsyncModulePromise = Promise & AsyncModuleExt\n\nfunction wrapDeps(deps: Dep[]): AsyncModuleExt[] {\n return deps.map((dep): AsyncModuleExt => {\n if (dep !== null && typeof dep === 'object') {\n if (isAsyncModuleExt(dep)) return dep\n if (isPromise(dep)) {\n const queue: AsyncQueue = Object.assign([], {\n status: QueueStatus.Unresolved,\n })\n\n const obj: AsyncModuleExt = {\n [turbopackExports]: {},\n [turbopackQueues]: (fn: (queue: AsyncQueue) => void) => fn(queue),\n }\n\n dep.then(\n (res) => {\n obj[turbopackExports] = res\n resolveQueue(queue)\n },\n (err) => {\n obj[turbopackError] = err\n resolveQueue(queue)\n }\n )\n\n return obj\n }\n }\n\n return {\n [turbopackExports]: dep,\n [turbopackQueues]: () => {},\n }\n })\n}\n\nfunction asyncModule(\n this: TurbopackBaseContext,\n body: (\n handleAsyncDependencies: (\n deps: Dep[]\n ) => Exports[] | Promise<() => Exports[]>,\n asyncResult: (err?: any) => void\n ) => void,\n hasAwait: boolean\n) {\n const module = this.m\n const queue: AsyncQueue | undefined = hasAwait\n ? Object.assign([], { status: QueueStatus.Unknown })\n : undefined\n\n const depQueues: Set = new Set()\n\n const { resolve, reject, promise: rawPromise } = createPromise()\n\n const promise: AsyncModulePromise = Object.assign(rawPromise, {\n [turbopackExports]: module.exports,\n [turbopackQueues]: (fn) => {\n queue && fn(queue)\n depQueues.forEach(fn)\n promise['catch'](() => {})\n },\n } satisfies AsyncModuleExt)\n\n const attributes: PropertyDescriptor = {\n get(): any {\n return promise\n },\n set(v: any) {\n // Calling `esmExport` leads to this.\n if (v !== promise) {\n promise[turbopackExports] = v\n }\n },\n }\n\n Object.defineProperty(module, 'exports', attributes)\n Object.defineProperty(module, 'namespaceObject', attributes)\n\n function handleAsyncDependencies(deps: Dep[]) {\n const currentDeps = wrapDeps(deps)\n\n const getResult = () =>\n currentDeps.map((d) => {\n if (d[turbopackError]) throw d[turbopackError]\n return d[turbopackExports]\n })\n\n const { promise, resolve } = createPromise<() => Exports[]>()\n\n const fn: AsyncQueueFn = Object.assign(() => resolve(getResult), {\n queueCount: 0,\n })\n\n function fnQueue(q: AsyncQueue) {\n if (q !== queue && !depQueues.has(q)) {\n depQueues.add(q)\n if (q && q.status === QueueStatus.Unresolved) {\n fn.queueCount++\n q.push(fn)\n }\n }\n }\n\n currentDeps.map((dep) => dep[turbopackQueues](fnQueue))\n\n return fn.queueCount ? promise : getResult()\n }\n\n function asyncResult(err?: any) {\n if (err) {\n reject((promise[turbopackError] = err))\n } else {\n resolve(promise[turbopackExports])\n }\n\n resolveQueue(queue)\n }\n\n body(handleAsyncDependencies, asyncResult)\n\n if (queue && queue.status === QueueStatus.Unknown) {\n queue.status = QueueStatus.Unresolved\n }\n}\ncontextPrototype.a = asyncModule\n\n/**\n * A pseudo \"fake\" URL object to resolve to its relative path.\n *\n * When UrlRewriteBehavior is set to relative, calls to the `new URL()` will construct url without base using this\n * runtime function to generate context-agnostic urls between different rendering context, i.e ssr / client to avoid\n * hydration mismatch.\n *\n * This is based on webpack's existing implementation:\n * https://github.com/webpack/webpack/blob/87660921808566ef3b8796f8df61bd79fc026108/lib/runtime/RelativeUrlRuntimeModule.js\n */\nconst relativeURL = function relativeURL(this: any, inputUrl: string) {\n const realUrl = new URL(inputUrl, 'x:/')\n const values: Record = {}\n for (const key in realUrl) values[key] = (realUrl as any)[key]\n values.href = inputUrl\n values.pathname = inputUrl.replace(/[?#].*/, '')\n values.origin = values.protocol = ''\n values.toString = values.toJSON = (..._args: Array) => inputUrl\n for (const key in values)\n Object.defineProperty(this, key, {\n enumerable: true,\n configurable: true,\n value: values[key],\n })\n}\nrelativeURL.prototype = URL.prototype\ncontextPrototype.U = relativeURL\n\n/**\n * Utility function to ensure all variants of an enum are handled.\n */\nfunction invariant(never: never, computeMessage: (arg: any) => string): never {\n throw new Error(`Invariant: ${computeMessage(never)}`)\n}\n\n/**\n * Constructs an error message for when a module factory is not available.\n */\nfunction factoryNotAvailableMessage(\n moduleId: ModuleId,\n sourceType: SourceType,\n sourceData: SourceData\n): string {\n let instantiationReason: string\n switch (sourceType) {\n case SourceType.Runtime:\n instantiationReason = `as a runtime entry of chunk ${sourceData}`\n break\n case SourceType.Parent:\n instantiationReason = `because it was required from module ${sourceData}`\n break\n case SourceType.Update:\n instantiationReason = 'because of an HMR update'\n break\n default:\n invariant(\n sourceType,\n (sourceType) => `Unknown source type: ${sourceType}`\n )\n }\n return `Module ${moduleId} was instantiated ${instantiationReason}, but the module factory is not available.`\n}\n\n/**\n * A stub function to make `require` available but non-functional in ESM.\n */\nfunction requireStub(_moduleId: ModuleId): never {\n throw new Error('dynamic usage of require is not supported')\n}\ncontextPrototype.z = requireStub\n\n// Make `globalThis` available to the module in a way that cannot be shadowed by a local variable.\ncontextPrototype.g = globalThis\n\n/**\n * Gets the public path for runtime assets.\n * Checks globalThis.publicPath and falls back to empty string.\n */\nfunction getPublicPath(): string {\n if (\n typeof globalThis !== 'undefined' &&\n typeof (globalThis as any).publicPath === 'string'\n ) {\n const publicPath = (globalThis as any).publicPath as string\n return publicPath.endsWith('/') ? publicPath : `${publicPath}/`\n }\n return ''\n}\ncontextPrototype.p = getPublicPath\n\ntype ContextConstructor = {\n new (module: Module, exports: Exports): TurbopackBaseContext\n}\n\nfunction applyModuleFactoryName(factory: Function) {\n // Give the module factory a nice name to improve stack traces.\n Object.defineProperty(factory, 'name', {\n value: 'module evaluation',\n })\n}\n"],"names":["SourceType","createModuleWithDirectionFlag","REEXPORTED_OBJECTS","WeakMap","Context","module","exports","m","e","contextPrototype","prototype","hasOwnProperty","Object","toStringTag","Symbol","defineProp","obj","name","options","call","defineProperty","getOverwrittenModule","moduleCache","id","createModuleWithDirection","createModuleObject","error","undefined","namespaceObject","parents","children","BindingTag_Value","esm","bindings","value","i","length","propName","tagOrFunction","enumerable","writable","Error","getterFn","setterFn","get","set","seal","esmExport","c","s","ensureDynamicExports","reexportedObjects","Proxy","target","prop","Reflect","ownKeys","keys","key","includes","push","dynamicExport","object","j","exportValue","v","exportNamespace","namespace","n","createGetter","getProto","getPrototypeOf","__proto__","LEAF_PROTOTYPES","interopEsm","raw","ns","allowExportDefault","defaultLocation","current","getOwnPropertyNames","splice","createNS","args","apply","create","esmImport","getOrInstantiateModuleFromParent","__esModule","asyncLoader","moduleId","loader","r","bind","A","runtimeRequire","require","require1","t","commonJsRequire","parseRequest","request","hashIndex","indexOf","substring","queryIndex","moduleContext","map","code","resolve","import","f","getChunkPath","chunkData","path","isPromise","maybePromise","then","isAsyncModuleExt","turbopackQueues","createPromise","reject","promise","Promise","res","rej","installCompressedModuleFactories","chunkModules","offset","moduleFactories","newModuleId","end","moduleFactoryFn","existingGroupFactory","existingFactory","factoryToInstall","didInstallFactory","has","applyModuleFactoryName","turbopackExports","turbopackError","resolveQueue","queue","status","forEach","fn","queueCount","wrapDeps","deps","dep","assign","err","asyncModule","body","hasAwait","depQueues","Set","rawPromise","attributes","handleAsyncDependencies","currentDeps","getResult","d","fnQueue","q","add","asyncResult","a","relativeURL","inputUrl","realUrl","URL","values","href","pathname","replace","origin","protocol","toString","toJSON","_args","configurable","U","invariant","never","computeMessage","factoryNotAvailableMessage","sourceType","sourceData","instantiationReason","requireStub","_moduleId","z","g","globalThis","getPublicPath","publicPath","endsWith","p","factory"],"mappings":"AAAA;;;;;CAKC,GAED,oDAAoD,GAEpD,6CAA6C;AAI7C;;;CAGC,GACD,IAAA,AAAKA,oCAAAA;IACH;;;;GAIC;IAED;;;GAGC;IAED;;;;GAIC;WAhBEA;EAAAA;AA+BL;;;;;CAKC,GACD,IAAIC,gCAAgC;AAEpC,MAAMC,qBAAqB,IAAIC;AAE/B;;CAEC,GACD,SAASC,QAEPC,MAAc,EACdC,OAAgB;IAEhB,IAAI,CAACC,CAAC,GAAGF;IACT,gFAAgF;IAChF,yEAAyE;IACzE,+CAA+C;IAC/C,8EAA8E;IAC9E,sEAAsE;IACtE,iBAAiB;IACjB,4FAA4F;IAC5F,IAAI,CAACG,CAAC,GAAGF;AACX;AACA,MAAMG,mBAAmBL,QAAQM,SAAS;AA+B1C,MAAMC,iBAAiBC,OAAOF,SAAS,CAACC,cAAc;AACtD,MAAME,cAAc,OAAOC,WAAW,eAAeA,OAAOD,WAAW;AAEvE,SAASE,WACPC,GAAQ,EACRC,IAAiB,EACjBC,OAA2C;IAE3C,IAAI,CAACP,eAAeQ,IAAI,CAACH,KAAKC,OAAOL,OAAOQ,cAAc,CAACJ,KAAKC,MAAMC;AACxE;AAEA,SAASG,qBACPC,WAAgC,EAChCC,EAAY;IAEZ,IAAIlB,SAASiB,WAAW,CAACC,GAAG;IAC5B,IAAI,CAAClB,QAAQ;QACX,IAAIJ,+BAA+B;YACjC,2CAA2C;YAC3CI,SAASmB,0BAA0BD;QACrC,OAAO;YACLlB,SAASoB,mBAAmBF;QAC9B;QACAD,WAAW,CAACC,GAAG,GAAGlB;IACpB;IACA,OAAOA;AACT;AAEA;;CAEC,GACD,SAASoB,mBAAmBF,EAAY;IACtC,OAAO;QACLjB,SAAS,CAAC;QACVoB,OAAOC;QACPJ;QACAK,iBAAiBD;IACnB;AACF;AAEA,SAASH,0BAA0BD,EAAY;IAC7C,OAAO;QACLjB,SAAS,CAAC;QACVoB,OAAOC;QACPJ;QACAK,iBAAiBD;QACjBE,SAAS,EAAE;QACXC,UAAU,EAAE;IACd;AACF;AAGA,MAAMC,mBAAmB;AAUzB;;CAEC,GACD,SAASC,IAAI1B,OAAgB,EAAE2B,QAAqB;IAClDlB,WAAWT,SAAS,cAAc;QAAE4B,OAAO;IAAK;IAChD,IAAIrB,aAAaE,WAAWT,SAASO,aAAa;QAAEqB,OAAO;IAAS;IACpE,IAAIC,IAAI;IACR,MAAOA,IAAIF,SAASG,MAAM,CAAE;QAC1B,MAAMC,WAAWJ,QAAQ,CAACE,IAAI;QAC9B,MAAMG,gBAAgBL,QAAQ,CAACE,IAAI;QACnC,IAAI,OAAOG,kBAAkB,UAAU;YACrC,IAAIA,kBAAkBP,kBAAkB;gBACtChB,WAAWT,SAAS+B,UAAU;oBAC5BH,OAAOD,QAAQ,CAACE,IAAI;oBACpBI,YAAY;oBACZC,UAAU;gBACZ;YACF,OAAO;gBACL,MAAM,IAAIC,MAAM,CAAC,gBAAgB,EAAEH,eAAe;YACpD;QACF,OAAO;YACL,MAAMI,WAAWJ;YACjB,IAAI,OAAOL,QAAQ,CAACE,EAAE,KAAK,YAAY;gBACrC,MAAMQ,WAAWV,QAAQ,CAACE,IAAI;gBAC9BpB,WAAWT,SAAS+B,UAAU;oBAC5BO,KAAKF;oBACLG,KAAKF;oBACLJ,YAAY;gBACd;YACF,OAAO;gBACLxB,WAAWT,SAAS+B,UAAU;oBAC5BO,KAAKF;oBACLH,YAAY;gBACd;YACF;QACF;IACF;IACA3B,OAAOkC,IAAI,CAACxC;AACd;AAEA;;CAEC,GACD,SAASyC,UAEPd,QAAqB,EACrBV,EAAwB;IAExB,IAAIlB;IACJ,IAAIC;IACJ,IAAIiB,MAAM,MAAM;QACdlB,SAASgB,qBAAqB,IAAI,CAAC2B,CAAC,EAAEzB;QACtCjB,UAAUD,OAAOC,OAAO;IAC1B,OAAO;QACLD,SAAS,IAAI,CAACE,CAAC;QACfD,UAAU,IAAI,CAACE,CAAC;IAClB;IACAH,OAAOuB,eAAe,GAAGtB;IACzB0B,IAAI1B,SAAS2B;AACf;AACAxB,iBAAiBwC,CAAC,GAAGF;AAGrB,SAASG,qBACP7C,MAAc,EACdC,OAAgB;IAEhB,IAAI6C,oBACFjD,mBAAmB0C,GAAG,CAACvC;IAEzB,IAAI,CAAC8C,mBAAmB;QACtBjD,mBAAmB2C,GAAG,CAACxC,QAAS8C,oBAAoB,EAAE;QACtD9C,OAAOC,OAAO,GAAGD,OAAOuB,eAAe,GAAG,IAAIwB,MAAM9C,SAAS;YAC3DsC,KAAIS,MAAM,EAAEC,IAAI;gBACd,IACE3C,eAAeQ,IAAI,CAACkC,QAAQC,SAC5BA,SAAS,aACTA,SAAS,cACT;oBACA,OAAOC,QAAQX,GAAG,CAACS,QAAQC;gBAC7B;gBACA,KAAK,MAAMtC,OAAOmC,kBAAoB;oBACpC,MAAMjB,QAAQqB,QAAQX,GAAG,CAAC5B,KAAKsC;oBAC/B,IAAIpB,UAAUP,WAAW,OAAOO;gBAClC;gBACA,OAAOP;YACT;YACA6B,SAAQH,MAAM;gBACZ,MAAMI,OAAOF,QAAQC,OAAO,CAACH;gBAC7B,KAAK,MAAMrC,OAAOmC,kBAAoB;oBACpC,KAAK,MAAMO,OAAOH,QAAQC,OAAO,CAACxC,KAAM;wBACtC,IAAI0C,QAAQ,aAAa,CAACD,KAAKE,QAAQ,CAACD,MAAMD,KAAKG,IAAI,CAACF;oBAC1D;gBACF;gBACA,OAAOD;YACT;QACF;IACF;IACA,OAAON;AACT;AAEA;;CAEC,GACD,SAASU,cAEPC,MAA2B,EAC3BvC,EAAwB;IAExB,IAAIlB;IACJ,IAAIC;IACJ,IAAIiB,MAAM,MAAM;QACdlB,SAASgB,qBAAqB,IAAI,CAAC2B,CAAC,EAAEzB;QACtCjB,UAAUD,OAAOC,OAAO;IAC1B,OAAO;QACLD,SAAS,IAAI,CAACE,CAAC;QACfD,UAAU,IAAI,CAACE,CAAC;IAClB;IACA,MAAM2C,oBAAoBD,qBAAqB7C,QAAQC;IAEvD,IAAI,OAAOwD,WAAW,YAAYA,WAAW,MAAM;QACjDX,kBAAkBS,IAAI,CAACE;IACzB;AACF;AACArD,iBAAiBsD,CAAC,GAAGF;AAErB,SAASG,YAEP9B,KAAU,EACVX,EAAwB;IAExB,IAAIlB;IACJ,IAAIkB,MAAM,MAAM;QACdlB,SAASgB,qBAAqB,IAAI,CAAC2B,CAAC,EAAEzB;IACxC,OAAO;QACLlB,SAAS,IAAI,CAACE,CAAC;IACjB;IACAF,OAAOC,OAAO,GAAG4B;AACnB;AACAzB,iBAAiBwD,CAAC,GAAGD;AAErB,SAASE,gBAEPC,SAAc,EACd5C,EAAwB;IAExB,IAAIlB;IACJ,IAAIkB,MAAM,MAAM;QACdlB,SAASgB,qBAAqB,IAAI,CAAC2B,CAAC,EAAEzB;IACxC,OAAO;QACLlB,SAAS,IAAI,CAACE,CAAC;IACjB;IACAF,OAAOC,OAAO,GAAGD,OAAOuB,eAAe,GAAGuC;AAC5C;AACA1D,iBAAiB2D,CAAC,GAAGF;AAErB,SAASG,aAAarD,GAAiC,EAAE0C,GAAoB;IAC3E,OAAO,IAAM1C,GAAG,CAAC0C,IAAI;AACvB;AAEA;;CAEC,GACD,MAAMY,WAA8B1D,OAAO2D,cAAc,GACrD,CAACvD,MAAQJ,OAAO2D,cAAc,CAACvD,OAC/B,CAACA,MAAQA,IAAIwD,SAAS;AAE1B,iDAAiD,GACjD,MAAMC,kBAAkB;IAAC;IAAMH,SAAS,CAAC;IAAIA,SAAS,EAAE;IAAGA,SAASA;CAAU;AAE9E;;;;;;CAMC,GACD,SAASI,WACPC,GAAY,EACZC,EAAsB,EACtBC,kBAA4B;IAE5B,MAAM5C,WAAwB,EAAE;IAChC,IAAI6C,kBAAkB,CAAC;IACvB,IACE,IAAIC,UAAUJ,KACd,CAAC,OAAOI,YAAY,YAAY,OAAOA,YAAY,UAAU,KAC7D,CAACN,gBAAgBd,QAAQ,CAACoB,UAC1BA,UAAUT,SAASS,SACnB;QACA,KAAK,MAAMrB,OAAO9C,OAAOoE,mBAAmB,CAACD,SAAU;YACrD9C,SAAS2B,IAAI,CAACF,KAAKW,aAAaM,KAAKjB;YACrC,IAAIoB,oBAAoB,CAAC,KAAKpB,QAAQ,WAAW;gBAC/CoB,kBAAkB7C,SAASG,MAAM,GAAG;YACtC;QACF;IACF;IAEA,6BAA6B;IAC7B,6EAA6E;IAC7E,IAAI,CAAC,CAACyC,sBAAsBC,mBAAmB,CAAC,GAAG;QACjD,8FAA8F;QAC9F,IAAIA,mBAAmB,GAAG;YACxB,oCAAoC;YACpC7C,SAASgD,MAAM,CAACH,iBAAiB,GAAG/C,kBAAkB4C;QACxD,OAAO;YACL1C,SAAS2B,IAAI,CAAC,WAAW7B,kBAAkB4C;QAC7C;IACF;IAEA3C,IAAI4C,IAAI3C;IACR,OAAO2C;AACT;AAEA,SAASM,SAASP,GAAsB;IACtC,IAAI,OAAOA,QAAQ,YAAY;QAC7B,OAAO,SAAqB,GAAGQ,IAAW;YACxC,OAAOR,IAAIS,KAAK,CAAC,IAAI,EAAED;QACzB;IACF,OAAO;QACL,OAAOvE,OAAOyE,MAAM,CAAC;IACvB;AACF;AAEA,SAASC,UAEP/D,EAAY;IAEZ,MAAMlB,SAASkF,iCAAiChE,IAAI,IAAI,CAAChB,CAAC;IAE1D,8DAA8D;IAC9D,IAAIF,OAAOuB,eAAe,EAAE,OAAOvB,OAAOuB,eAAe;IAEzD,iGAAiG;IACjG,MAAM+C,MAAMtE,OAAOC,OAAO;IAC1B,OAAQD,OAAOuB,eAAe,GAAG8C,WAC/BC,KACAO,SAASP,MACTA,OAAO,AAACA,IAAYa,UAAU;AAElC;AACA/E,iBAAiB0B,CAAC,GAAGmD;AAErB,SAASG,YAEPC,QAAkB;IAElB,MAAMC,SAAS,IAAI,CAACC,CAAC,CAACF;IAGtB,OAAOC,OAAOL,UAAUO,IAAI,CAAC,IAAI;AACnC;AACApF,iBAAiBqF,CAAC,GAAGL;AAErB,+EAA+E;AAC/E,6EAA6E;AAC7E,MAAMM,iBACJ,aAAa;AACb,OAAOC,YAAY,aAEfA,UACA,SAASC;IACP,MAAM,IAAIxD,MAAM;AAClB;AACNhC,iBAAiByF,CAAC,GAAGH;AAErB,SAASI,gBAEP5E,EAAY;IAEZ,OAAOgE,iCAAiChE,IAAI,IAAI,CAAChB,CAAC,EAAED,OAAO;AAC7D;AACAG,iBAAiBmF,CAAC,GAAGO;AAErB;;;;;;CAMC,GACD,SAASC,aAAaC,OAAe;IACnC,wFAAwF;IACxF,4DAA4D;IAC5D,MAAMC,YAAYD,QAAQE,OAAO,CAAC;IAClC,IAAID,cAAc,CAAC,GAAG;QACpBD,UAAUA,QAAQG,SAAS,CAAC,GAAGF;IACjC;IAEA,MAAMG,aAAaJ,QAAQE,OAAO,CAAC;IACnC,IAAIE,eAAe,CAAC,GAAG;QACrBJ,UAAUA,QAAQG,SAAS,CAAC,GAAGC;IACjC;IAEA,OAAOJ;AACT;AACA;;CAEC,GACD,SAASK,cAAcC,GAAqB;IAC1C,SAASD,cAAcnF,EAAU;QAC/BA,KAAK6E,aAAa7E;QAClB,IAAIZ,eAAeQ,IAAI,CAACwF,KAAKpF,KAAK;YAChC,OAAOoF,GAAG,CAACpF,GAAG,CAAClB,MAAM;QACvB;QAEA,MAAMG,IAAI,IAAIiC,MAAM,CAAC,oBAAoB,EAAElB,GAAG,CAAC,CAAC;QAC9Cf,EAAUoG,IAAI,GAAG;QACnB,MAAMpG;IACR;IAEAkG,cAAcjD,IAAI,GAAG;QACnB,OAAO7C,OAAO6C,IAAI,CAACkD;IACrB;IAEAD,cAAcG,OAAO,GAAG,CAACtF;QACvBA,KAAK6E,aAAa7E;QAClB,IAAIZ,eAAeQ,IAAI,CAACwF,KAAKpF,KAAK;YAChC,OAAOoF,GAAG,CAACpF,GAAG,CAACA,EAAE;QACnB;QAEA,MAAMf,IAAI,IAAIiC,MAAM,CAAC,oBAAoB,EAAElB,GAAG,CAAC,CAAC;QAC9Cf,EAAUoG,IAAI,GAAG;QACnB,MAAMpG;IACR;IAEAkG,cAAcI,MAAM,GAAG,OAAOvF;QAC5B,OAAO,MAAOmF,cAAcnF;IAC9B;IAEA,OAAOmF;AACT;AACAjG,iBAAiBsG,CAAC,GAAGL;AAErB;;CAEC,GACD,SAASM,aAAaC,SAAoB;IACxC,OAAO,OAAOA,cAAc,WAAWA,YAAYA,UAAUC,IAAI;AACnE;AAEA,SAASC,UAAmBC,YAAiB;IAC3C,OACEA,gBAAgB,QAChB,OAAOA,iBAAiB,YACxB,UAAUA,gBACV,OAAOA,aAAaC,IAAI,KAAK;AAEjC;AAEA,SAASC,iBAA+BtG,GAAM;IAC5C,OAAOuG,mBAAmBvG;AAC5B;AAEA,SAASwG;IACP,IAAIX;IACJ,IAAIY;IAEJ,MAAMC,UAAU,IAAIC,QAAW,CAACC,KAAKC;QACnCJ,SAASI;QACThB,UAAUe;IACZ;IAEA,OAAO;QACLF;QACAb,SAASA;QACTY,QAAQA;IACV;AACF;AAEA,gFAAgF;AAChF,0CAA0C;AAC1C,yBAAyB;AACzB,8BAA8B;AAC9B,6EAA6E;AAC7E,wEAAwE;AACxE,SAASK,iCACPC,YAAuC,EACvCC,MAAc,EACdC,eAAgC,EAChCC,WAAoC;IAEpC,IAAI/F,IAAI6F;IACR,MAAO7F,IAAI4F,aAAa3F,MAAM,CAAE;QAC9B,IAAI+F,MAAMhG,IAAI;QACd,4BAA4B;QAC5B,MACEgG,MAAMJ,aAAa3F,MAAM,IACzB,OAAO2F,YAAY,CAACI,IAAI,KAAK,WAC7B;YACAA;QACF;QACA,IAAIA,QAAQJ,aAAa3F,MAAM,EAAE;YAC/B,MAAM,IAAIK,MAAM;QAClB;QAEA,wEAAwE;QACxE,0EAA0E;QAC1E,6EAA6E;QAC7E,kDAAkD;QAClD,MAAM2F,kBAAkBL,YAAY,CAACI,IAAI;QACzC,IAAIE,uBAA6C1G;QACjD,IAAK,IAAIoC,IAAI5B,GAAG4B,IAAIoE,KAAKpE,IAAK;YAC5B,MAAMxC,KAAKwG,YAAY,CAAChE,EAAE;YAC1B,MAAMuE,kBAAkBL,gBAAgBrF,GAAG,CAACrB;YAC5C,IAAI+G,iBAAiB;gBACnBD,uBAAuBC;gBACvB;YACF;QACF;QACA,MAAMC,mBAAmBF,wBAAwBD;QAEjD,IAAII,oBAAoB;QACxB,IAAK,IAAIzE,IAAI5B,GAAG4B,IAAIoE,KAAKpE,IAAK;YAC5B,MAAMxC,KAAKwG,YAAY,CAAChE,EAAE;YAC1B,IAAI,CAACkE,gBAAgBQ,GAAG,CAAClH,KAAK;gBAC5B,IAAI,CAACiH,mBAAmB;oBACtB,IAAID,qBAAqBH,iBAAiB;wBACxCM,uBAAuBN;oBACzB;oBACAI,oBAAoB;gBACtB;gBACAP,gBAAgBpF,GAAG,CAACtB,IAAIgH;gBACxBL,cAAc3G;YAChB;QACF;QACAY,IAAIgG,MAAM,GAAE,sFAAsF;IACpG;AACF;AAEA,2CAA2C;AAC3C,+HAA+H;AAE/H,MAAMZ,kBAAkBzG,OAAO;AAC/B,MAAM6H,mBAAmB7H,OAAO;AAChC,MAAM8H,iBAAiB9H,OAAO;AAa9B,SAAS+H,aAAaC,KAAkB;IACtC,IAAIA,SAASA,MAAMC,MAAM,QAA2B;QAClDD,MAAMC,MAAM;QACZD,MAAME,OAAO,CAAC,CAACC,KAAOA,GAAGC,UAAU;QACnCJ,MAAME,OAAO,CAAC,CAACC,KAAQA,GAAGC,UAAU,KAAKD,GAAGC,UAAU,KAAKD;IAC7D;AACF;AAYA,SAASE,SAASC,IAAW;IAC3B,OAAOA,KAAKzC,GAAG,CAAC,CAAC0C;QACf,IAAIA,QAAQ,QAAQ,OAAOA,QAAQ,UAAU;YAC3C,IAAI/B,iBAAiB+B,MAAM,OAAOA;YAClC,IAAIlC,UAAUkC,MAAM;gBAClB,MAAMP,QAAoBlI,OAAO0I,MAAM,CAAC,EAAE,EAAE;oBAC1CP,MAAM;gBACR;gBAEA,MAAM/H,MAAsB;oBAC1B,CAAC2H,iBAAiB,EAAE,CAAC;oBACrB,CAACpB,gBAAgB,EAAE,CAAC0B,KAAoCA,GAAGH;gBAC7D;gBAEAO,IAAIhC,IAAI,CACN,CAACO;oBACC5G,GAAG,CAAC2H,iBAAiB,GAAGf;oBACxBiB,aAAaC;gBACf,GACA,CAACS;oBACCvI,GAAG,CAAC4H,eAAe,GAAGW;oBACtBV,aAAaC;gBACf;gBAGF,OAAO9H;YACT;QACF;QAEA,OAAO;YACL,CAAC2H,iBAAiB,EAAEU;YACpB,CAAC9B,gBAAgB,EAAE,KAAO;QAC5B;IACF;AACF;AAEA,SAASiC,YAEPC,IAKS,EACTC,QAAiB;IAEjB,MAAMrJ,SAAS,IAAI,CAACE,CAAC;IACrB,MAAMuI,QAAgCY,WAClC9I,OAAO0I,MAAM,CAAC,EAAE,EAAE;QAAEP,MAAM;IAAsB,KAChDpH;IAEJ,MAAMgI,YAA6B,IAAIC;IAEvC,MAAM,EAAE/C,OAAO,EAAEY,MAAM,EAAEC,SAASmC,UAAU,EAAE,GAAGrC;IAEjD,MAAME,UAA8B9G,OAAO0I,MAAM,CAACO,YAAY;QAC5D,CAAClB,iBAAiB,EAAEtI,OAAOC,OAAO;QAClC,CAACiH,gBAAgB,EAAE,CAAC0B;YAClBH,SAASG,GAAGH;YACZa,UAAUX,OAAO,CAACC;YAClBvB,OAAO,CAAC,QAAQ,CAAC,KAAO;QAC1B;IACF;IAEA,MAAMoC,aAAiC;QACrClH;YACE,OAAO8E;QACT;QACA7E,KAAIoB,CAAM;YACR,qCAAqC;YACrC,IAAIA,MAAMyD,SAAS;gBACjBA,OAAO,CAACiB,iBAAiB,GAAG1E;YAC9B;QACF;IACF;IAEArD,OAAOQ,cAAc,CAACf,QAAQ,WAAWyJ;IACzClJ,OAAOQ,cAAc,CAACf,QAAQ,mBAAmByJ;IAEjD,SAASC,wBAAwBX,IAAW;QAC1C,MAAMY,cAAcb,SAASC;QAE7B,MAAMa,YAAY,IAChBD,YAAYrD,GAAG,CAAC,CAACuD;gBACf,IAAIA,CAAC,CAACtB,eAAe,EAAE,MAAMsB,CAAC,CAACtB,eAAe;gBAC9C,OAAOsB,CAAC,CAACvB,iBAAiB;YAC5B;QAEF,MAAM,EAAEjB,OAAO,EAAEb,OAAO,EAAE,GAAGW;QAE7B,MAAMyB,KAAmBrI,OAAO0I,MAAM,CAAC,IAAMzC,QAAQoD,YAAY;YAC/Df,YAAY;QACd;QAEA,SAASiB,QAAQC,CAAa;YAC5B,IAAIA,MAAMtB,SAAS,CAACa,UAAUlB,GAAG,CAAC2B,IAAI;gBACpCT,UAAUU,GAAG,CAACD;gBACd,IAAIA,KAAKA,EAAErB,MAAM,QAA6B;oBAC5CE,GAAGC,UAAU;oBACbkB,EAAExG,IAAI,CAACqF;gBACT;YACF;QACF;QAEAe,YAAYrD,GAAG,CAAC,CAAC0C,MAAQA,GAAG,CAAC9B,gBAAgB,CAAC4C;QAE9C,OAAOlB,GAAGC,UAAU,GAAGxB,UAAUuC;IACnC;IAEA,SAASK,YAAYf,GAAS;QAC5B,IAAIA,KAAK;YACP9B,OAAQC,OAAO,CAACkB,eAAe,GAAGW;QACpC,OAAO;YACL1C,QAAQa,OAAO,CAACiB,iBAAiB;QACnC;QAEAE,aAAaC;IACf;IAEAW,KAAKM,yBAAyBO;IAE9B,IAAIxB,SAASA,MAAMC,MAAM,SAA0B;QACjDD,MAAMC,MAAM;IACd;AACF;AACAtI,iBAAiB8J,CAAC,GAAGf;AAErB;;;;;;;;;CASC,GACD,MAAMgB,cAAc,SAASA,YAAuBC,QAAgB;IAClE,MAAMC,UAAU,IAAIC,IAAIF,UAAU;IAClC,MAAMG,SAA8B,CAAC;IACrC,IAAK,MAAMlH,OAAOgH,QAASE,MAAM,CAAClH,IAAI,GAAG,AAACgH,OAAe,CAAChH,IAAI;IAC9DkH,OAAOC,IAAI,GAAGJ;IACdG,OAAOE,QAAQ,GAAGL,SAASM,OAAO,CAAC,UAAU;IAC7CH,OAAOI,MAAM,GAAGJ,OAAOK,QAAQ,GAAG;IAClCL,OAAOM,QAAQ,GAAGN,OAAOO,MAAM,GAAG,CAAC,GAAGC,QAAsBX;IAC5D,IAAK,MAAM/G,OAAOkH,OAChBhK,OAAOQ,cAAc,CAAC,IAAI,EAAEsC,KAAK;QAC/BnB,YAAY;QACZ8I,cAAc;QACdnJ,OAAO0I,MAAM,CAAClH,IAAI;IACpB;AACJ;AACA8G,YAAY9J,SAAS,GAAGiK,IAAIjK,SAAS;AACrCD,iBAAiB6K,CAAC,GAAGd;AAErB;;CAEC,GACD,SAASe,UAAUC,KAAY,EAAEC,cAAoC;IACnE,MAAM,IAAIhJ,MAAM,CAAC,WAAW,EAAEgJ,eAAeD,QAAQ;AACvD;AAEA;;CAEC,GACD,SAASE,2BACPhG,QAAkB,EAClBiG,UAAsB,EACtBC,UAAsB;IAEtB,IAAIC;IACJ,OAAQF;QACN;YACEE,sBAAsB,CAAC,4BAA4B,EAAED,YAAY;YACjE;QACF;YACEC,sBAAsB,CAAC,oCAAoC,EAAED,YAAY;YACzE;QACF;YACEC,sBAAsB;YACtB;QACF;YACEN,UACEI,YACA,CAACA,aAAe,CAAC,qBAAqB,EAAEA,YAAY;IAE1D;IACA,OAAO,CAAC,OAAO,EAAEjG,SAAS,kBAAkB,EAAEmG,oBAAoB,0CAA0C,CAAC;AAC/G;AAEA;;CAEC,GACD,SAASC,YAAYC,SAAmB;IACtC,MAAM,IAAItJ,MAAM;AAClB;AACAhC,iBAAiBuL,CAAC,GAAGF;AAErB,kGAAkG;AAClGrL,iBAAiBwL,CAAC,GAAGC;AAErB;;;CAGC,GACD,SAASC;IACP,IACE,OAAOD,eAAe,eACtB,OAAO,AAACA,WAAmBE,UAAU,KAAK,UAC1C;QACA,MAAMA,aAAa,AAACF,WAAmBE,UAAU;QACjD,OAAOA,WAAWC,QAAQ,CAAC,OAAOD,aAAa,GAAGA,WAAW,CAAC,CAAC;IACjE;IACA,OAAO;AACT;AACA3L,iBAAiB6L,CAAC,GAAGH;AAMrB,SAASzD,uBAAuB6D,OAAiB;IAC/C,+DAA+D;IAC/D3L,OAAOQ,cAAc,CAACmL,SAAS,QAAQ;QACrCrK,OAAO;IACT;AACF","ignoreList":[0]}},
- {"offset": {"line": 602, "column": 0}, "map": {"version":3,"sources":["turbopack:///[turbopack]/browser/runtime/base/runtime-base.ts"],"sourcesContent":["/**\n * This file contains runtime types and functions that are shared between all\n * Turbopack *browser* ECMAScript runtimes.\n *\n * It will be appended to the runtime code of each runtime right after the\n * shared runtime utils.\n */\n\n/* eslint-disable @typescript-eslint/no-unused-vars */\n\n/// \n/// \n\n// Used in WebWorkers to tell the runtime about the chunk suffix\ndeclare var TURBOPACK_ASSET_SUFFIX: string\n// Used in WebWorkers to tell the runtime about the current chunk url since it\n// can't be detected via `document.currentScript`. Note it's stored in reversed\n// order to use `push` and `pop`\ndeclare var TURBOPACK_NEXT_CHUNK_URLS: ChunkUrl[] | undefined\n\n// Injected by rust code\ndeclare var CHUNK_BASE_PATH: string\ndeclare var ASSET_SUFFIX: string\ndeclare var CROSS_ORIGIN: 'anonymous' | 'use-credentials' | null\ndeclare var WORKER_FORWARDED_GLOBALS: string[]\n\n// Support runtime public path from window.publicPath\nfunction getRuntimeChunkBasePath(): string {\n if (CHUNK_BASE_PATH === '__RUNTIME_PUBLIC_PATH__') {\n return contextPrototype.p()\n }\n return CHUNK_BASE_PATH\n}\n\ninterface TurbopackBrowserBaseContext extends TurbopackBaseContext {\n R: ResolvePathFromModule\n}\n\nconst browserContextPrototype =\n Context.prototype as TurbopackBrowserBaseContext\n\n// Provided by build or dev base\ndeclare function instantiateModule(\n id: ModuleId,\n sourceType: SourceType,\n sourceData: SourceData\n): Module\n\ntype RuntimeParams = {\n otherChunks: ChunkData[]\n runtimeModuleIds: ModuleId[]\n}\n\ntype ChunkRegistrationChunk =\n | ChunkPath\n | { getAttribute: (name: string) => string | null }\n | undefined\n\ntype ChunkRegistration = [\n chunkPath: ChunkRegistrationChunk,\n ...([RuntimeParams] | CompressedModuleFactories),\n]\n\ntype ChunkList = {\n script: ChunkRegistrationChunk\n chunks: ChunkData[]\n source: 'entry' | 'dynamic'\n}\n\ninterface RuntimeBackend {\n registerChunk: (\n chunkPath: ChunkPath | ChunkScript,\n params?: RuntimeParams\n ) => void\n /**\n * Returns the same Promise for the same chunk URL.\n */\n loadChunkCached: (sourceType: SourceType, chunkUrl: ChunkUrl) => Promise\n loadWebAssembly: (\n sourceType: SourceType,\n sourceData: SourceData,\n wasmChunkPath: ChunkPath,\n edgeModule: () => WebAssembly.Module,\n importsObj: WebAssembly.Imports\n ) => Promise\n loadWebAssemblyModule: (\n sourceType: SourceType,\n sourceData: SourceData,\n wasmChunkPath: ChunkPath,\n edgeModule: () => WebAssembly.Module\n ) => Promise\n}\n\ninterface DevRuntimeBackend {\n reloadChunk?: (chunkUrl: ChunkUrl) => Promise\n unloadChunk?: (chunkUrl: ChunkUrl) => void\n restart: () => void\n}\n\nconst moduleFactories: ModuleFactories = new Map()\ncontextPrototype.M = moduleFactories\n\nconst availableModules: Map | true> = new Map()\n\nconst availableModuleChunks: Map | true> = new Map()\n\nfunction loadChunk(\n this: TurbopackBrowserBaseContext,\n chunkData: ChunkData\n): Promise {\n return loadChunkInternal(SourceType.Parent, this.m.id, chunkData)\n}\nbrowserContextPrototype.l = loadChunk\n\nfunction loadInitialChunk(chunkPath: ChunkPath, chunkData: ChunkData) {\n return loadChunkInternal(SourceType.Runtime, chunkPath, chunkData)\n}\n\nasync function loadChunkInternal(\n sourceType: SourceType,\n sourceData: SourceData,\n chunkData: ChunkData\n): Promise {\n if (typeof chunkData === 'string') {\n return loadChunkPath(sourceType, sourceData, chunkData)\n }\n\n const includedList = chunkData.included || []\n const modulesPromises = includedList.map((included) => {\n if (moduleFactories.has(included)) return true\n return availableModules.get(included)\n })\n if (modulesPromises.length > 0 && modulesPromises.every((p) => p)) {\n // When all included items are already loaded or loading, we can skip loading ourselves\n await Promise.all(modulesPromises)\n return\n }\n\n const includedModuleChunksList = chunkData.moduleChunks || []\n const moduleChunksPromises = includedModuleChunksList\n .map((included) => {\n // TODO(alexkirsz) Do we need this check?\n // if (moduleFactories[included]) return true;\n return availableModuleChunks.get(included)\n })\n .filter((p) => p)\n\n let promise: Promise\n if (moduleChunksPromises.length > 0) {\n // Some module chunks are already loaded or loading.\n\n if (moduleChunksPromises.length === includedModuleChunksList.length) {\n // When all included module chunks are already loaded or loading, we can skip loading ourselves\n await Promise.all(moduleChunksPromises)\n return\n }\n\n const moduleChunksToLoad: Set = new Set()\n for (const moduleChunk of includedModuleChunksList) {\n if (!availableModuleChunks.has(moduleChunk)) {\n moduleChunksToLoad.add(moduleChunk)\n }\n }\n\n for (const moduleChunkToLoad of moduleChunksToLoad) {\n const promise = loadChunkPath(sourceType, sourceData, moduleChunkToLoad)\n\n availableModuleChunks.set(moduleChunkToLoad, promise)\n\n moduleChunksPromises.push(promise)\n }\n\n promise = Promise.all(moduleChunksPromises)\n } else {\n promise = loadChunkPath(sourceType, sourceData, chunkData.path)\n\n // Mark all included module chunks as loading if they are not already loaded or loading.\n for (const includedModuleChunk of includedModuleChunksList) {\n if (!availableModuleChunks.has(includedModuleChunk)) {\n availableModuleChunks.set(includedModuleChunk, promise)\n }\n }\n }\n\n for (const included of includedList) {\n if (!availableModules.has(included)) {\n // It might be better to race old and new promises, but it's rare that the new promise will be faster than a request started earlier.\n // In production it's even more rare, because the chunk optimization tries to deduplicate modules anyway.\n availableModules.set(included, promise)\n }\n }\n\n await promise\n}\n\nconst loadedChunk = Promise.resolve(undefined)\nconst instrumentedBackendLoadChunks = new WeakMap<\n Promise,\n Promise | typeof loadedChunk\n>()\n// Do not make this async. React relies on referential equality of the returned Promise.\nfunction loadChunkByUrl(\n this: TurbopackBrowserBaseContext,\n chunkUrl: ChunkUrl\n) {\n return loadChunkByUrlInternal(SourceType.Parent, this.m.id, chunkUrl)\n}\nbrowserContextPrototype.L = loadChunkByUrl\n\nconst loadedScripts = new Map>()\n\n/**\n * Load an external script by creating a