@reckona/mreact-router 0.0.210 → 0.0.211
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapters/cloudflare.d.ts.map +1 -1
- package/dist/adapters/cloudflare.js +17 -5
- package/dist/adapters/cloudflare.js.map +1 -1
- package/dist/build.d.ts.map +1 -1
- package/dist/build.js +43 -3
- package/dist/build.js.map +1 -1
- package/dist/built-runtime.d.ts +1 -0
- package/dist/built-runtime.d.ts.map +1 -1
- package/dist/built-runtime.js +4 -0
- package/dist/built-runtime.js.map +1 -1
- package/dist/client-manifest-assets.d.ts +2 -0
- package/dist/client-manifest-assets.d.ts.map +1 -1
- package/dist/client-manifest-assets.js +2 -1
- package/dist/client-manifest-assets.js.map +1 -1
- package/dist/client.d.ts +1 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +365 -85
- package/dist/client.js.map +1 -1
- package/dist/module-preload-graph.d.ts +5 -0
- package/dist/module-preload-graph.d.ts.map +1 -0
- package/dist/module-preload-graph.js +48 -0
- package/dist/module-preload-graph.js.map +1 -0
- package/dist/render.d.ts +1 -0
- package/dist/render.d.ts.map +1 -1
- package/dist/render.js +47 -10
- package/dist/render.js.map +1 -1
- package/dist/serve.js +1 -0
- package/dist/serve.js.map +1 -1
- package/package.json +11 -11
- package/src/adapters/cloudflare.ts +22 -5
- package/src/build.ts +50 -3
- package/src/built-runtime.ts +18 -6
- package/src/client-manifest-assets.ts +3 -1
- package/src/client.ts +365 -84
- package/src/module-preload-graph.ts +70 -0
- package/src/render.ts +74 -10
- package/src/serve.ts +1 -0
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export interface StaticModuleChunk {
|
|
2
|
+
imports?: readonly string[] | undefined;
|
|
3
|
+
}
|
|
4
|
+
export declare function collectStaticModulePreloadDependencies(entryFile: string, chunks: ReadonlyMap<string, StaticModuleChunk>): string[];
|
|
5
|
+
//# sourceMappingURL=module-preload-graph.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module-preload-graph.d.ts","sourceRoot":"","sources":["../src/module-preload-graph.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;CACzC;AAED,wBAAgB,sCAAsC,CACpD,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,iBAAiB,CAAC,GAC7C,MAAM,EAAE,CAiCV"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
export function collectStaticModulePreloadDependencies(entryFile, chunks) {
|
|
2
|
+
if (!chunks.has(entryFile)) {
|
|
3
|
+
throw new Error(`Missing static JavaScript chunk for module preload entry: ${entryFile}`);
|
|
4
|
+
}
|
|
5
|
+
const dependencies = new Set();
|
|
6
|
+
const visited = new Set();
|
|
7
|
+
const pending = [...(chunks.get(entryFile)?.imports ?? [])];
|
|
8
|
+
while (pending.length > 0) {
|
|
9
|
+
const path = pending.pop();
|
|
10
|
+
if (path === undefined ||
|
|
11
|
+
path === entryFile ||
|
|
12
|
+
visited.has(path) ||
|
|
13
|
+
!isLocalJavaScriptChunk(path)) {
|
|
14
|
+
continue;
|
|
15
|
+
}
|
|
16
|
+
visited.add(path);
|
|
17
|
+
const chunk = chunks.get(path);
|
|
18
|
+
if (chunk === undefined) {
|
|
19
|
+
throw new Error(`Missing static JavaScript chunk for module preload: ${path}`);
|
|
20
|
+
}
|
|
21
|
+
dependencies.add(path);
|
|
22
|
+
pending.push(...(chunk.imports ?? []));
|
|
23
|
+
}
|
|
24
|
+
return [...dependencies].sort();
|
|
25
|
+
}
|
|
26
|
+
function isLocalJavaScriptChunk(path) {
|
|
27
|
+
if (path.startsWith("/") || hasUrlScheme(path)) {
|
|
28
|
+
return false;
|
|
29
|
+
}
|
|
30
|
+
return path.endsWith(".js") || path.endsWith(".mjs");
|
|
31
|
+
}
|
|
32
|
+
function hasUrlScheme(value) {
|
|
33
|
+
const colon = value.indexOf(":");
|
|
34
|
+
if (colon <= 0) {
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
for (let index = 0; index < colon; index += 1) {
|
|
38
|
+
const code = value.charCodeAt(index);
|
|
39
|
+
const letter = (code >= 65 && code <= 90) || (code >= 97 && code <= 122);
|
|
40
|
+
const digit = code >= 48 && code <= 57;
|
|
41
|
+
const allowedSymbol = code === 43 || code === 45 || code === 46;
|
|
42
|
+
if (index === 0 ? !letter : !letter && !digit && !allowedSymbol) {
|
|
43
|
+
return false;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
return true;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=module-preload-graph.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module-preload-graph.js","sourceRoot":"","sources":["../src/module-preload-graph.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,sCAAsC,CACpD,SAAiB,EACjB,MAA8C;IAE9C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,6DAA6D,SAAS,EAAE,CAAC,CAAC;IAC5F,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;IACvC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;IAE5D,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAE3B,IACE,IAAI,KAAK,SAAS;YAClB,IAAI,KAAK,SAAS;YAClB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;YACjB,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAC7B,CAAC;YACD,SAAS;QACX,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAE/B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,uDAAuD,IAAI,EAAE,CAAC,CAAC;QACjF,CAAC;QAED,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvB,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;IACzC,CAAC;IAED,OAAO,CAAC,GAAG,YAAY,CAAC,CAAC,IAAI,EAAE,CAAC;AAClC,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAY;IAC1C,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,YAAY,CAAC,KAAa;IACjC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAEjC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QACf,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,CAAC,IAAI,IAAI,EAAE,IAAI,IAAI,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,IAAI,IAAI,IAAI,GAAG,CAAC,CAAC;QACzE,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,IAAI,IAAI,IAAI,EAAE,CAAC;QACvC,MAAM,aAAa,GAAG,IAAI,KAAK,EAAE,IAAI,IAAI,KAAK,EAAE,IAAI,IAAI,KAAK,EAAE,CAAC;QAEhE,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,KAAK,IAAI,CAAC,aAAa,EAAE,CAAC;YAChE,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["export interface StaticModuleChunk {\n imports?: readonly string[] | undefined;\n}\n\nexport function collectStaticModulePreloadDependencies(\n entryFile: string,\n chunks: ReadonlyMap<string, StaticModuleChunk>,\n): string[] {\n if (!chunks.has(entryFile)) {\n throw new Error(`Missing static JavaScript chunk for module preload entry: ${entryFile}`);\n }\n\n const dependencies = new Set<string>();\n const visited = new Set<string>();\n const pending = [...(chunks.get(entryFile)?.imports ?? [])];\n\n while (pending.length > 0) {\n const path = pending.pop();\n\n if (\n path === undefined ||\n path === entryFile ||\n visited.has(path) ||\n !isLocalJavaScriptChunk(path)\n ) {\n continue;\n }\n\n visited.add(path);\n const chunk = chunks.get(path);\n\n if (chunk === undefined) {\n throw new Error(`Missing static JavaScript chunk for module preload: ${path}`);\n }\n\n dependencies.add(path);\n pending.push(...(chunk.imports ?? []));\n }\n\n return [...dependencies].sort();\n}\n\nfunction isLocalJavaScriptChunk(path: string): boolean {\n if (path.startsWith(\"/\") || hasUrlScheme(path)) {\n return false;\n }\n\n return path.endsWith(\".js\") || path.endsWith(\".mjs\");\n}\n\nfunction hasUrlScheme(value: string): boolean {\n const colon = value.indexOf(\":\");\n\n if (colon <= 0) {\n return false;\n }\n\n for (let index = 0; index < colon; index += 1) {\n const code = value.charCodeAt(index);\n const letter = (code >= 65 && code <= 90) || (code >= 97 && code <= 122);\n const digit = code >= 48 && code <= 57;\n const allowedSymbol = code === 43 || code === 45 || code === 46;\n\n if (index === 0 ? !letter : !letter && !digit && !allowedSymbol) {\n return false;\n }\n }\n\n return true;\n}\n"]}
|
package/dist/render.d.ts
CHANGED
|
@@ -28,6 +28,7 @@ export interface RenderAppRequestOptions {
|
|
|
28
28
|
assetBaseUrl?: string | undefined;
|
|
29
29
|
clientRouteInferenceCache?: ClientRouteInferenceCache | undefined;
|
|
30
30
|
clientScripts?: ReadonlyMap<string, string>;
|
|
31
|
+
clientScriptPreloads?: ReadonlyMap<string, readonly string[]>;
|
|
31
32
|
clientStylesByFile?: ReadonlyMap<string, readonly string[]>;
|
|
32
33
|
clientStyles?: ReadonlyMap<string, readonly string[]>;
|
|
33
34
|
define?: UserConfig["define"] | undefined;
|
package/dist/render.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAEV,gBAAgB,EAChB,eAAe,EAChB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAOL,KAAK,gBAAgB,EACrB,KAAK,WAAW,EACjB,MAAM,uBAAuB,CAAC;AAS/B,OAAO,EAIL,KAAK,yBAAyB,EAE/B,MAAM,6BAA6B,CAAC;AAUrC,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAExE,OAAO,EACL,KAAK,4BAA4B,EACjC,KAAK,2BAA2B,EAIjC,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,KAAK,cAAc,EAOpB,MAAM,YAAY,CAAC;AAsBpB,OAAO,EAAqC,KAAK,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAEnG,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AACrD,OAAO,KAAK,EAAmC,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAa7F,OAAO,EAAwC,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AACzF,OAAO,EAKL,KAAK,sBAAsB,EAC5B,MAAM,kBAAkB,CAAC;AAW1B,OAAO,EAGL,KAAK,qBAAqB,EAC3B,MAAM,YAAY,CAAC;AACpB,OAAO,EAQL,KAAK,sBAAsB,EAC5B,MAAM,iBAAiB,CAAC;AAuDzB,UAAU,YAAY;IACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,mCAAmC;IAClD,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACxC;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,yBAAyB,CAAC,EAAE,yBAAyB,GAAG,SAAS,CAAC;IAClE,aAAa,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5C,oBAAoB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC;IAC9D,kBAAkB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC;IAC5D,YAAY,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC;IACtD,MAAM,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;IAC1C,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;IAChD,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,YAAY,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC;IACjD,eAAe,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC;IACpD,MAAM,CAAC,EAAE,eAAe,GAAG,SAAS,CAAC;IACrC,iBAAiB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;IAC5D,aAAa,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACvD,UAAU,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC;IAC/C,WAAW,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,GAAG,GAAG,SAAS,CAAC;IAC7B,YAAY,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IACxC,UAAU,CAAC,EAAE,cAAc,GAAG,SAAS,CAAC;IACxC,YAAY,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IACxC,MAAM,CAAC,EAAE,SAAS,QAAQ,EAAE,GAAG,SAAS,CAAC;IACzC,aAAa,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,yBAAyB,CAAC,GAAG,SAAS,CAAC;IAC3E,0BAA0B,CAAC,EAAE,mCAAmC,GAAG,SAAS,CAAC;IAC7E,wBAAwB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9C,2BAA2B,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAGjD,GAAG,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC1B,iBAAiB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;IAC5D,aAAa,CAAC,EAAE,4BAA4B,GAAG,SAAS,CAAC;IACzD,4BAA4B,CAAC,EACzB,WAAW,CAAC,MAAM,EAAE,SAAS,2BAA2B,EAAE,CAAC,GAC3D,SAAS,CAAC;IACd,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACrC,OAAO,CAAC,EAAE,sBAAsB,GAAG,SAAS,CAAC;IAC7C,WAAW,CAAC,EAAE,SAAS,YAAY,EAAE,GAAG,SAAS,CAAC;CACnD;AAED,MAAM,WAAW,8BAA+B,SAAQ,uBAAuB;IAC7E;;;;;;OAMG;IACH,uBAAuB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9C;;;;;;;;;OASG;IACH,aAAa,CAAC,EACV;QACE,eAAe,EAAE,MAAM,OAAO,CAAC;QAC/B,uBAAuB,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;KACnD,GACD,SAAS,CAAC;CACf;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,IAAI,EAAE,eAAe,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,CAClC,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,4BAA4B,KAClC,QAAQ,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,GAAG,IAAI,CAAC,CAAC;AAExE;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,wBAAsB,0BAA0B,CAAC,OAAO,EAAE;IACxD,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;IAC1C,oBAAoB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3C,YAAY,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC;IACjD,MAAM,EAAE,SAAS,QAAQ,EAAE,CAAC;IAC5B,aAAa,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,yBAAyB,CAAC,GAAG,SAAS,CAAC;IAC3E,wBAAwB,EAAE,MAAM,CAAC;IACjC,iBAAiB,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/C,4BAA4B,CAAC,EACzB,WAAW,CAAC,MAAM,EAAE,SAAS,2BAA2B,EAAE,CAAC,GAC3D,SAAS,CAAC;IACd,WAAW,CAAC,EAAE,SAAS,YAAY,EAAE,GAAG,SAAS,CAAC;CACnD,GAAG,OAAO,CAAC,IAAI,CAAC,CAsFhB;AA8ND,wBAAgB,6BAA6B,IAAI,sBAAsB,EAAE,CAkExE;AAmBD;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,QAAQ,CAAC,CA0B1F;AA2GD,MAAM,MAAM,yBAAyB,GACjC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,UAAU,CAAA;CAAE,GACtC;IAAE,QAAQ,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,UAAU,CAAA;CAAE,CAAC;AAE7C,wBAAsB,0BAA0B,CAAC,OAAO,EAAE;IACxD,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;IAC1C,2BAA2B,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjD,YAAY,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC;IACjD,eAAe,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC;IACpD,iBAAiB,CAAC,EAAE,sBAAsB,GAAG,SAAS,CAAC;IACvD,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,yBAAyB,CAAC,GAAG,SAAS,CAAC;IAC3E,wBAAwB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9C,iBAAiB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;IAC5D,MAAM,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IAClC,WAAW,CAAC,EAAE,SAAS,YAAY,EAAE,GAAG,SAAS,CAAC;CACnD,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAiBrC;AAm9BD,wBAAsB,4BAA4B,CAChD,OAAO,EAAE,IAAI,CACX,uBAAuB,EACrB,QAAQ,GACR,QAAQ,GACR,6BAA6B,GAC7B,cAAc,GACd,YAAY,GACZ,eAAe,GACf,0BAA0B,GAC1B,mBAAmB,GACnB,aAAa,CAChB,GACA,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC,CAgD5C;AAwMD,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,MAAM,GAAG;IAC9D,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB,CAMA;AAg0BD,wBAAsB,0BAA0B,CAAC,OAAO,EAAE;IACxD,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;IAC1C,0BAA0B,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC;IACjD,WAAW,CAAC,EAAE,SAAS,YAAY,EAAE,GAAG,SAAS,CAAC;CACnD,GAAG,OAAO,CAAC,MAAM,CAAC,CA0BlB;AA6CD,iBAAS,qBAAqB,CAAC,OAAO,EAAE;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,qBAAqB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C,6BAA6B,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClD,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,yBAAyB,CAAC,GAAG,SAAS,CAAC;IAC3E,YAAY,EAAE,gBAAgB,CAAC;IAC/B,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC,GAAG,eAAe,CAsFlB;AAED,eAAO,MAAM,iCAAiC,8BAAwB,CAAC;AAIvE,wBAAgB,yCAAyC,IAAI,IAAI,CAGhE;AAKD,wBAAgB,sDAAsD,CAAC,OAAO,EAAE;IAC9E,GAAG,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC1B,aAAa,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,yBAAyB,CAAC,GAAG,SAAS,CAAC;CAC5E,GAAG,IAAI,CAEP;AAwxDD,wBAAsB,2BAA2B,CAAC,OAAO,EAAE;IACzD,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;IAC1C,8BAA8B,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;IAC/D,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC;IACjD,WAAW,CAAC,EAAE,SAAS,YAAY,EAAE,GAAG,SAAS,CAAC;CACnD,GAAG,OAAO,CAAC,MAAM,CAAC,CAwBlB;AAyRD,iBAAS,6BAA6B,CAAC,OAAO,EAAE;IAC9C,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;IAC1C,2BAA2B,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjD,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC;IACjD,wBAAwB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9C,WAAW,CAAC,EAAE,SAAS,YAAY,EAAE,GAAG,SAAS,CAAC;CACnD,GAAG,MAAM,GAAG,SAAS,CAOrB;AAED,eAAO,MAAM,yCAAyC,sCAAgC,CAAC;AAqMvF,UAAU,YAAY;IACpB,UAAU,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC;CAC1B;AAED,iBAAS,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,EAAE,CAmDnD;AAED,eAAO,MAAM,yBAAyB,sBAAgB,CAAC"}
|
package/dist/render.js
CHANGED
|
@@ -457,6 +457,7 @@ async function renderAppRequestInternal(options) {
|
|
|
457
457
|
routePath: url.pathname,
|
|
458
458
|
routeFile: notFoundFile,
|
|
459
459
|
routeScripts: options.clientScripts,
|
|
460
|
+
routeScriptPreloads: options.clientScriptPreloads,
|
|
460
461
|
serverModules: options.serverModules,
|
|
461
462
|
serverModuleCacheVersion: options.serverModuleCacheVersion,
|
|
462
463
|
serverSourceFiles: options.serverSourceFiles,
|
|
@@ -765,8 +766,10 @@ async function renderAppRequestInternal(options) {
|
|
|
765
766
|
assetBaseUrl: options.assetBaseUrl,
|
|
766
767
|
currentStyleSheets: clientStyleSheets,
|
|
767
768
|
currentScript: clientRoute ? clientScript : undefined,
|
|
769
|
+
currentScriptPreloads: options.clientScriptPreloads?.get(matched.route.path),
|
|
768
770
|
currentNavigationScript: navigationScript,
|
|
769
771
|
routeScripts: options.clientScripts,
|
|
772
|
+
routeScriptPreloads: options.clientScriptPreloads,
|
|
770
773
|
})}${html}`, preparedActions.htmlReplacements), {
|
|
771
774
|
headers: responseHeadersForMetadata(metadata, options.request, {
|
|
772
775
|
"x-mreact-stream": "1",
|
|
@@ -838,6 +841,7 @@ async function renderAppRequestInternal(options) {
|
|
|
838
841
|
trackedRequest,
|
|
839
842
|
routePath: matched.route.path,
|
|
840
843
|
routeScripts: options.clientScripts,
|
|
844
|
+
routeScriptPreloads: options.clientScriptPreloads,
|
|
841
845
|
serverModules: options.serverModules,
|
|
842
846
|
serverModuleCacheVersion: options.serverModuleCacheVersion,
|
|
843
847
|
serverSourceFiles: options.serverSourceFiles,
|
|
@@ -876,6 +880,7 @@ async function renderAppRequestInternal(options) {
|
|
|
876
880
|
requestUrl: url.href,
|
|
877
881
|
routePath: matched.route.path,
|
|
878
882
|
routeScripts: options.clientScripts,
|
|
883
|
+
routeScriptPreloads: options.clientScriptPreloads,
|
|
879
884
|
serverModules: options.serverModules,
|
|
880
885
|
serverModuleCacheVersion: options.serverModuleCacheVersion,
|
|
881
886
|
serverSourceFiles: options.serverSourceFiles,
|
|
@@ -1012,8 +1017,10 @@ async function renderAppRequestInternal(options) {
|
|
|
1012
1017
|
assetBaseUrl: options.assetBaseUrl,
|
|
1013
1018
|
currentStyleSheets: clientStyleSheets,
|
|
1014
1019
|
currentScript: clientRoute ? clientScript : undefined,
|
|
1020
|
+
currentScriptPreloads: options.clientScriptPreloads?.get(matched.route.path),
|
|
1015
1021
|
currentNavigationScript: navigationScript,
|
|
1016
1022
|
routeScripts: options.clientScripts,
|
|
1023
|
+
routeScriptPreloads: options.clientScriptPreloads,
|
|
1017
1024
|
})}${html}`, preparedActions.htmlReplacements), {
|
|
1018
1025
|
headers: responseHeadersForMetadata(metadata, options.request),
|
|
1019
1026
|
}), preparedActions.csrfToken, preparedActions.csrfTokenIsNew === true);
|
|
@@ -1068,6 +1075,7 @@ async function renderAppRequestInternal(options) {
|
|
|
1068
1075
|
routePath: matched.route.path,
|
|
1069
1076
|
routeFile: notFoundFile,
|
|
1070
1077
|
routeScripts: options.clientScripts,
|
|
1078
|
+
routeScriptPreloads: options.clientScriptPreloads,
|
|
1071
1079
|
serverModules: options.serverModules,
|
|
1072
1080
|
serverModuleCacheVersion: options.serverModuleCacheVersion,
|
|
1073
1081
|
serverSourceFiles: options.serverSourceFiles,
|
|
@@ -1094,6 +1102,7 @@ async function renderAppRequestInternal(options) {
|
|
|
1094
1102
|
routePath: matched.route.path,
|
|
1095
1103
|
routeFile: errorFile,
|
|
1096
1104
|
routeScripts: options.clientScripts,
|
|
1105
|
+
routeScriptPreloads: options.clientScriptPreloads,
|
|
1097
1106
|
serverModules: options.serverModules,
|
|
1098
1107
|
serverModuleCacheVersion: options.serverModuleCacheVersion,
|
|
1099
1108
|
serverSourceFiles: options.serverSourceFiles,
|
|
@@ -1191,17 +1200,28 @@ function applyActionHtmlReplacements(html, replacements) {
|
|
|
1191
1200
|
}
|
|
1192
1201
|
return next;
|
|
1193
1202
|
}
|
|
1194
|
-
function modulePreloadTags(script, assetBaseUrl) {
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
|
|
1203
|
+
function modulePreloadTags(script, dependencies, assetBaseUrl) {
|
|
1204
|
+
if (script === undefined) {
|
|
1205
|
+
return "";
|
|
1206
|
+
}
|
|
1207
|
+
const seen = new Set();
|
|
1208
|
+
return [script, ...(dependencies ?? [])]
|
|
1209
|
+
.filter((file) => {
|
|
1210
|
+
if (seen.has(file)) {
|
|
1211
|
+
return false;
|
|
1212
|
+
}
|
|
1213
|
+
seen.add(file);
|
|
1214
|
+
return true;
|
|
1215
|
+
})
|
|
1216
|
+
.map((file) => `<link rel="modulepreload" href="${escapeHtmlAttribute(assetPath(file, assetBaseUrl ?? "/_mreact/client/"))}">`)
|
|
1217
|
+
.join("");
|
|
1198
1218
|
}
|
|
1199
1219
|
function clientNavigationHeadTags(options) {
|
|
1200
1220
|
return [
|
|
1201
1221
|
styleSheetTags(options.currentStyleSheets, options.assetBaseUrl),
|
|
1202
|
-
modulePreloadTags(options.currentScript, options.assetBaseUrl),
|
|
1203
|
-
navigationRuntimeScriptTag(options.currentNavigationScript, options.assetBaseUrl),
|
|
1204
|
-
routePrefetchManifestScript(options.routeScripts, options.assetBaseUrl),
|
|
1222
|
+
modulePreloadTags(options.currentScript, options.currentScriptPreloads, options.assetBaseUrl),
|
|
1223
|
+
navigationRuntimeScriptTag(options.currentNavigationScript, options.assetBaseUrl, options.currentScript === undefined),
|
|
1224
|
+
routePrefetchManifestScript(options.routeScripts, options.routeScriptPreloads, options.assetBaseUrl),
|
|
1205
1225
|
].join("");
|
|
1206
1226
|
}
|
|
1207
1227
|
function styleSheetTags(styleSheets, assetBaseUrl) {
|
|
@@ -1231,22 +1251,33 @@ function hasUrlScheme(value) {
|
|
|
1231
1251
|
}
|
|
1232
1252
|
return true;
|
|
1233
1253
|
}
|
|
1234
|
-
function navigationRuntimeScriptTag(script, assetBaseUrl) {
|
|
1254
|
+
function navigationRuntimeScriptTag(script, assetBaseUrl, execute) {
|
|
1235
1255
|
if (script === undefined) {
|
|
1236
1256
|
return "";
|
|
1237
1257
|
}
|
|
1238
1258
|
const json = JSON.stringify({
|
|
1239
1259
|
script: assetPath(script, assetBaseUrl ?? "/_mreact/client/"),
|
|
1240
1260
|
}).replaceAll("<", "\\u003c");
|
|
1241
|
-
|
|
1261
|
+
const descriptor = `<script type="application/json" id="mreact-navigation-runtime">${json}</script>`;
|
|
1262
|
+
// Server-only routes have no client entry to load the navigation runtime.
|
|
1263
|
+
return execute
|
|
1264
|
+
? `${descriptor}<script type="module" src="${escapeHtmlAttribute(assetPath(script, assetBaseUrl ?? "/_mreact/client/"))}"></script>`
|
|
1265
|
+
: descriptor;
|
|
1242
1266
|
}
|
|
1243
|
-
function routePrefetchManifestScript(routeScripts, assetBaseUrl) {
|
|
1267
|
+
function routePrefetchManifestScript(routeScripts, routeScriptPreloads, assetBaseUrl) {
|
|
1244
1268
|
if (routeScripts === undefined || routeScripts.size === 0) {
|
|
1245
1269
|
return "";
|
|
1246
1270
|
}
|
|
1247
1271
|
const routes = Array.from(routeScripts.entries(), ([path, script]) => ({
|
|
1248
1272
|
path,
|
|
1249
1273
|
script: assetPath(script, assetBaseUrl ?? "/_mreact/client/"),
|
|
1274
|
+
...(routeScriptPreloads?.get(path) === undefined || routeScriptPreloads.get(path)?.length === 0
|
|
1275
|
+
? {}
|
|
1276
|
+
: {
|
|
1277
|
+
modulePreloads: routeScriptPreloads
|
|
1278
|
+
.get(path)
|
|
1279
|
+
?.map((file) => assetPath(file, assetBaseUrl ?? "/_mreact/client/")),
|
|
1280
|
+
}),
|
|
1250
1281
|
}));
|
|
1251
1282
|
const json = JSON.stringify(routes).replaceAll("<", "\\u003c");
|
|
1252
1283
|
return `<script type="application/json" id="mreact-route-prefetch-manifest">${json}</script>`;
|
|
@@ -1419,7 +1450,9 @@ async function renderSpecialRoute(options) {
|
|
|
1419
1450
|
assetBaseUrl: options.assetBaseUrl,
|
|
1420
1451
|
currentStyleSheets: options.currentStyleSheets,
|
|
1421
1452
|
currentScript: options.navigation?.clientRoute === true ? options.navigation.script : undefined,
|
|
1453
|
+
currentScriptPreloads: options.routeScriptPreloads?.get(options.navigation?.routePath ?? options.routePath ?? ""),
|
|
1422
1454
|
routeScripts: options.routeScripts,
|
|
1455
|
+
routeScriptPreloads: options.routeScriptPreloads,
|
|
1423
1456
|
})}${html}`, {
|
|
1424
1457
|
headers: { "content-type": "text/html; charset=utf-8" },
|
|
1425
1458
|
status: options.status,
|
|
@@ -2202,7 +2235,9 @@ function runServerStreamModule(code, options) {
|
|
|
2202
2235
|
sink.append(clientNavigationHeadTags({
|
|
2203
2236
|
assetBaseUrl: options.assetBaseUrl,
|
|
2204
2237
|
currentScript: options.clientRoute ? options.script : undefined,
|
|
2238
|
+
currentScriptPreloads: options.routeScriptPreloads?.get(options.routePath),
|
|
2205
2239
|
routeScripts: options.routeScripts,
|
|
2240
|
+
routeScriptPreloads: options.routeScriptPreloads,
|
|
2206
2241
|
}));
|
|
2207
2242
|
for (const shell of layoutShells) {
|
|
2208
2243
|
sink.append(shell.prefix);
|
|
@@ -2342,7 +2377,9 @@ async function runServerStreamModuleWithLoading(code, options) {
|
|
|
2342
2377
|
sink.append(clientNavigationHeadTags({
|
|
2343
2378
|
assetBaseUrl: options.assetBaseUrl,
|
|
2344
2379
|
currentScript: options.clientRoute ? options.script : undefined,
|
|
2380
|
+
currentScriptPreloads: options.routeScriptPreloads?.get(options.routePath),
|
|
2345
2381
|
routeScripts: options.routeScripts,
|
|
2382
|
+
routeScriptPreloads: options.routeScriptPreloads,
|
|
2346
2383
|
}));
|
|
2347
2384
|
for (const shell of layoutShells) {
|
|
2348
2385
|
sink.append(shell.prefix);
|