@modern-js/runtime 2.35.0 → 2.36.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/cli/index.js +48 -30
- package/dist/cjs/common.js +27 -18
- package/dist/cjs/config.js +15 -3
- package/dist/cjs/core/appConfig.js +25 -15
- package/dist/cjs/core/compatible.js +69 -53
- package/dist/cjs/core/index.js +47 -40
- package/dist/cjs/core/loader/index.js +35 -9
- package/dist/cjs/core/loader/loaderManager.js +37 -18
- package/dist/cjs/core/loader/useLoader.js +53 -31
- package/dist/cjs/core/plugin.js +41 -34
- package/dist/cjs/core/types.js +15 -3
- package/dist/cjs/document/Body.js +35 -19
- package/dist/cjs/document/Comment.js +29 -14
- package/dist/cjs/document/DocumentContext.js +36 -10
- package/dist/cjs/document/DocumentStructureContext.js +36 -10
- package/dist/cjs/document/Head.js +40 -31
- package/dist/cjs/document/Html.js +37 -23
- package/dist/cjs/document/Links.js +28 -13
- package/dist/cjs/document/Root.js +37 -28
- package/dist/cjs/document/Script.js +29 -14
- package/dist/cjs/document/Scripts.js +28 -13
- package/dist/cjs/document/Style.js +29 -14
- package/dist/cjs/document/cli/index.js +72 -57
- package/dist/cjs/document/constants.js +64 -72
- package/dist/cjs/document/index.js +42 -15
- package/dist/cjs/exports/head.js +38 -11
- package/dist/cjs/exports/loadable.js +38 -11
- package/dist/cjs/exports/server.js +24 -7
- package/dist/cjs/exports/styled.js +38 -11
- package/dist/cjs/index.js +41 -38
- package/dist/cjs/router/cli/index.js +32 -24
- package/dist/cjs/router/index.js +39 -18
- package/dist/cjs/router/runtime/DefaultNotFound.js +26 -11
- package/dist/cjs/router/runtime/DeferredDataScripts.js +21 -8
- package/dist/cjs/router/runtime/DeferredDataScripts.node.js +49 -38
- package/dist/cjs/router/runtime/PrefetchLink.js +64 -50
- package/dist/cjs/router/runtime/fetch.js +24 -7
- package/dist/cjs/router/runtime/fetch.node.js +25 -8
- package/dist/cjs/router/runtime/fetch.worker.js +24 -7
- package/dist/cjs/router/runtime/hooks.js +26 -9
- package/dist/cjs/router/runtime/index.js +155 -208
- package/dist/cjs/router/runtime/plugin.js +64 -50
- package/dist/cjs/router/runtime/plugin.node.js +66 -50
- package/dist/cjs/router/runtime/server.js +20 -4
- package/dist/cjs/router/runtime/types.js +15 -3
- package/dist/cjs/router/runtime/utils.js +64 -51
- package/dist/cjs/router/runtime/withRouter.js +30 -15
- package/dist/cjs/runtimeContext.js +28 -18
- package/dist/cjs/ssr/cli/babel-plugin-ssr-loader-id.js +40 -23
- package/dist/cjs/ssr/cli/index.js +57 -41
- package/dist/cjs/ssr/cli/loadable-bundler-plugin.js +31 -13
- package/dist/cjs/ssr/index.js +71 -52
- package/dist/cjs/ssr/index.node.js +45 -27
- package/dist/cjs/ssr/prefetch.js +31 -18
- package/dist/cjs/ssr/react/index.js +27 -17
- package/dist/cjs/ssr/react/nossr/index.js +38 -12
- package/dist/cjs/ssr/react/prerender/index.js +52 -27
- package/dist/cjs/ssr/react/prerender/type.js +15 -3
- package/dist/cjs/ssr/react/prerender/util.js +33 -28
- package/dist/cjs/ssr/react/withCallback/index.js +27 -11
- package/dist/cjs/ssr/serverRender/helmet.js +23 -15
- package/dist/cjs/ssr/serverRender/index.js +24 -11
- package/dist/cjs/ssr/serverRender/renderToStream/buildTemplate.after.js +30 -13
- package/dist/cjs/ssr/serverRender/renderToStream/buildTemplate.share.js +25 -15
- package/dist/cjs/ssr/serverRender/renderToStream/bulidTemplate.before.js +48 -26
- package/dist/cjs/ssr/serverRender/renderToStream/index.js +49 -23
- package/dist/cjs/ssr/serverRender/renderToStream/renderToPipe.js +35 -23
- package/dist/cjs/ssr/serverRender/renderToStream/renderToPipe.worker.js +33 -22
- package/dist/cjs/ssr/serverRender/renderToStream/template.js +28 -11
- package/dist/cjs/ssr/serverRender/renderToString/buildHtml.js +31 -24
- package/dist/cjs/ssr/serverRender/renderToString/entry.js +81 -59
- package/dist/cjs/ssr/serverRender/renderToString/index.js +44 -18
- package/dist/cjs/ssr/serverRender/renderToString/loadable.js +61 -33
- package/dist/cjs/ssr/serverRender/renderToString/render.js +39 -13
- package/dist/cjs/ssr/serverRender/renderToString/styledComponent.js +28 -11
- package/dist/cjs/ssr/serverRender/renderToString/type.js +24 -7
- package/dist/cjs/ssr/serverRender/tracker.js +27 -18
- package/dist/cjs/ssr/serverRender/types.js +25 -8
- package/dist/cjs/ssr/serverRender/utils.js +31 -24
- package/dist/cjs/ssr/utils.js +42 -25
- package/dist/cjs/state/cli/index.js +28 -19
- package/dist/cjs/state/index.js +39 -18
- package/dist/cjs/state/plugins.js +46 -29
- package/dist/cjs/state/runtime/index.js +39 -11
- package/dist/cjs/state/runtime/plugin.js +55 -28
- package/dist/esm/cli/index.js +6 -2
- package/dist/esm/common.js +8 -3
- package/dist/esm/config.js +0 -1
- package/dist/esm/core/appConfig.js +6 -2
- package/dist/esm/core/compatible.js +29 -25
- package/dist/esm/core/index.js +13 -3
- package/dist/esm/core/loader/index.js +4 -1
- package/dist/esm/core/loader/loaderManager.js +13 -9
- package/dist/esm/core/loader/useLoader.js +13 -10
- package/dist/esm/core/plugin.js +17 -13
- package/dist/esm/core/types.js +0 -1
- package/dist/esm/document/Body.js +4 -1
- package/dist/esm/document/Comment.js +4 -1
- package/dist/esm/document/DocumentContext.js +4 -1
- package/dist/esm/document/DocumentStructureContext.js +4 -1
- package/dist/esm/document/Head.js +6 -2
- package/dist/esm/document/Html.js +12 -10
- package/dist/esm/document/Links.js +4 -1
- package/dist/esm/document/Root.js +6 -2
- package/dist/esm/document/Script.js +4 -1
- package/dist/esm/document/Scripts.js +4 -1
- package/dist/esm/document/Style.js +4 -1
- package/dist/esm/document/cli/index.js +18 -14
- package/dist/esm/document/constants.js +42 -20
- package/dist/esm/exports/head.js +4 -1
- package/dist/esm/exports/loadable.js +4 -1
- package/dist/esm/exports/server.js +4 -1
- package/dist/esm/exports/styled.js +4 -1
- package/dist/esm/index.js +13 -2
- package/dist/esm/router/cli/index.js +12 -9
- package/dist/esm/router/index.js +6 -2
- package/dist/esm/router/runtime/DefaultNotFound.js +4 -1
- package/dist/esm/router/runtime/DeferredDataScripts.js +4 -1
- package/dist/esm/router/runtime/DeferredDataScripts.node.js +14 -13
- package/dist/esm/router/runtime/PrefetchLink.js +17 -17
- package/dist/esm/router/runtime/fetch.js +3 -1
- package/dist/esm/router/runtime/fetch.node.js +3 -1
- package/dist/esm/router/runtime/fetch.worker.js +3 -1
- package/dist/esm/router/runtime/hooks.js +3 -1
- package/dist/esm/router/runtime/index.js +72 -8
- package/dist/esm/router/runtime/plugin.js +26 -22
- package/dist/esm/router/runtime/plugin.node.js +26 -22
- package/dist/esm/router/runtime/server.js +1 -1
- package/dist/esm/router/runtime/types.js +0 -1
- package/dist/esm/router/runtime/utils.js +29 -20
- package/dist/esm/router/runtime/withRouter.js +8 -5
- package/dist/esm/runtimeContext.js +6 -2
- package/dist/esm/ssr/cli/babel-plugin-ssr-loader-id.js +107 -98
- package/dist/esm/ssr/cli/index.js +26 -24
- package/dist/esm/ssr/cli/loadable-bundler-plugin.js +105 -96
- package/dist/esm/ssr/index.js +19 -15
- package/dist/esm/ssr/index.node.js +15 -12
- package/dist/esm/ssr/prefetch.js +10 -7
- package/dist/esm/ssr/react/index.js +6 -2
- package/dist/esm/ssr/react/nossr/index.js +4 -1
- package/dist/esm/ssr/react/prerender/index.js +4 -1
- package/dist/esm/ssr/react/prerender/type.js +0 -1
- package/dist/esm/ssr/react/prerender/util.js +14 -9
- package/dist/esm/ssr/react/withCallback/index.js +4 -1
- package/dist/esm/ssr/serverRender/helmet.js +4 -1
- package/dist/esm/ssr/serverRender/index.js +4 -1
- package/dist/esm/ssr/serverRender/renderToStream/buildTemplate.after.js +8 -5
- package/dist/esm/ssr/serverRender/renderToStream/buildTemplate.share.js +6 -2
- package/dist/esm/ssr/serverRender/renderToStream/bulidTemplate.before.js +7 -6
- package/dist/esm/ssr/serverRender/renderToStream/index.js +6 -3
- package/dist/esm/ssr/serverRender/renderToStream/renderToPipe.js +9 -7
- package/dist/esm/ssr/serverRender/renderToStream/renderToPipe.worker.js +9 -6
- package/dist/esm/ssr/serverRender/renderToStream/template.js +6 -3
- package/dist/esm/ssr/serverRender/renderToString/buildHtml.js +12 -5
- package/dist/esm/ssr/serverRender/renderToString/entry.js +7 -5
- package/dist/esm/ssr/serverRender/renderToString/index.js +8 -5
- package/dist/esm/ssr/serverRender/renderToString/loadable.js +37 -20
- package/dist/esm/ssr/serverRender/renderToString/render.js +4 -1
- package/dist/esm/ssr/serverRender/renderToString/styledComponent.js +4 -1
- package/dist/esm/ssr/serverRender/renderToString/type.js +4 -1
- package/dist/esm/ssr/serverRender/tracker.js +8 -3
- package/dist/esm/ssr/serverRender/types.js +3 -1
- package/dist/esm/ssr/serverRender/utils.js +12 -5
- package/dist/esm/ssr/utils.js +13 -7
- package/dist/esm/state/cli/index.js +10 -6
- package/dist/esm/state/index.js +6 -2
- package/dist/esm/state/plugins.js +10 -4
- package/dist/esm/state/runtime/index.js +4 -1
- package/dist/esm/state/runtime/plugin.js +10 -7
- package/dist/esm-node/cli/index.js +6 -2
- package/dist/esm-node/common.js +8 -3
- package/dist/esm-node/config.js +0 -1
- package/dist/esm-node/core/appConfig.js +6 -2
- package/dist/esm-node/core/compatible.js +17 -13
- package/dist/esm-node/core/index.js +13 -3
- package/dist/esm-node/core/loader/index.js +4 -1
- package/dist/esm-node/core/loader/loaderManager.js +6 -2
- package/dist/esm-node/core/loader/useLoader.js +12 -9
- package/dist/esm-node/core/plugin.js +11 -7
- package/dist/esm-node/core/types.js +0 -1
- package/dist/esm-node/document/Body.js +4 -1
- package/dist/esm-node/document/Comment.js +4 -1
- package/dist/esm-node/document/DocumentContext.js +4 -1
- package/dist/esm-node/document/DocumentStructureContext.js +4 -1
- package/dist/esm-node/document/Head.js +6 -2
- package/dist/esm-node/document/Html.js +7 -5
- package/dist/esm-node/document/Links.js +4 -1
- package/dist/esm-node/document/Root.js +6 -2
- package/dist/esm-node/document/Script.js +4 -1
- package/dist/esm-node/document/Scripts.js +4 -1
- package/dist/esm-node/document/Style.js +4 -1
- package/dist/esm-node/document/cli/index.js +12 -9
- package/dist/esm-node/document/constants.js +42 -20
- package/dist/esm-node/exports/head.js +4 -1
- package/dist/esm-node/exports/loadable.js +4 -1
- package/dist/esm-node/exports/server.js +4 -1
- package/dist/esm-node/exports/styled.js +4 -1
- package/dist/esm-node/index.js +13 -2
- package/dist/esm-node/router/cli/index.js +7 -4
- package/dist/esm-node/router/index.js +6 -2
- package/dist/esm-node/router/runtime/DefaultNotFound.js +4 -1
- package/dist/esm-node/router/runtime/DeferredDataScripts.js +4 -1
- package/dist/esm-node/router/runtime/DeferredDataScripts.node.js +8 -7
- package/dist/esm-node/router/runtime/PrefetchLink.js +11 -11
- package/dist/esm-node/router/runtime/fetch.js +3 -1
- package/dist/esm-node/router/runtime/fetch.node.js +3 -1
- package/dist/esm-node/router/runtime/fetch.worker.js +3 -1
- package/dist/esm-node/router/runtime/hooks.js +3 -1
- package/dist/esm-node/router/runtime/index.js +72 -8
- package/dist/esm-node/router/runtime/plugin.js +14 -10
- package/dist/esm-node/router/runtime/plugin.node.js +14 -10
- package/dist/esm-node/router/runtime/server.js +1 -1
- package/dist/esm-node/router/runtime/types.js +0 -1
- package/dist/esm-node/router/runtime/utils.js +22 -13
- package/dist/esm-node/router/runtime/withRouter.js +5 -2
- package/dist/esm-node/runtimeContext.js +6 -2
- package/dist/esm-node/ssr/cli/babel-plugin-ssr-loader-id.js +108 -99
- package/dist/esm-node/ssr/cli/index.js +15 -13
- package/dist/esm-node/ssr/cli/loadable-bundler-plugin.js +92 -83
- package/dist/esm-node/ssr/index.js +7 -3
- package/dist/esm-node/ssr/index.node.js +7 -4
- package/dist/esm-node/ssr/prefetch.js +7 -4
- package/dist/esm-node/ssr/react/index.js +6 -2
- package/dist/esm-node/ssr/react/nossr/index.js +4 -1
- package/dist/esm-node/ssr/react/prerender/index.js +4 -1
- package/dist/esm-node/ssr/react/prerender/type.js +0 -1
- package/dist/esm-node/ssr/react/prerender/util.js +14 -9
- package/dist/esm-node/ssr/react/withCallback/index.js +4 -1
- package/dist/esm-node/ssr/serverRender/helmet.js +4 -1
- package/dist/esm-node/ssr/serverRender/index.js +4 -1
- package/dist/esm-node/ssr/serverRender/renderToStream/buildTemplate.after.js +5 -2
- package/dist/esm-node/ssr/serverRender/renderToStream/buildTemplate.share.js +6 -2
- package/dist/esm-node/ssr/serverRender/renderToStream/bulidTemplate.before.js +7 -8
- package/dist/esm-node/ssr/serverRender/renderToStream/index.js +6 -3
- package/dist/esm-node/ssr/serverRender/renderToStream/renderToPipe.js +9 -7
- package/dist/esm-node/ssr/serverRender/renderToStream/renderToPipe.worker.js +8 -7
- package/dist/esm-node/ssr/serverRender/renderToStream/template.js +4 -1
- package/dist/esm-node/ssr/serverRender/renderToString/buildHtml.js +12 -5
- package/dist/esm-node/ssr/serverRender/renderToString/entry.js +5 -3
- package/dist/esm-node/ssr/serverRender/renderToString/index.js +6 -3
- package/dist/esm-node/ssr/serverRender/renderToString/loadable.js +33 -19
- package/dist/esm-node/ssr/serverRender/renderToString/render.js +4 -1
- package/dist/esm-node/ssr/serverRender/renderToString/styledComponent.js +4 -1
- package/dist/esm-node/ssr/serverRender/renderToString/type.js +4 -1
- package/dist/esm-node/ssr/serverRender/tracker.js +8 -3
- package/dist/esm-node/ssr/serverRender/types.js +3 -1
- package/dist/esm-node/ssr/serverRender/utils.js +12 -5
- package/dist/esm-node/ssr/utils.js +10 -4
- package/dist/esm-node/state/cli/index.js +6 -2
- package/dist/esm-node/state/index.js +6 -2
- package/dist/esm-node/state/plugins.js +10 -4
- package/dist/esm-node/state/runtime/index.js +4 -1
- package/dist/esm-node/state/runtime/plugin.js +4 -1
- package/dist/types/router/runtime/PrefetchLink.d.ts +1 -1
- package/dist/types/router/runtime/hooks.d.ts +1 -1
- package/dist/types/router/runtime/index.d.ts +3 -3
- package/dist/types/router/runtime/server.d.ts +1 -1
- package/dist/types/router/runtime/types.d.ts +2 -2
- package/dist/types/router/runtime/utils.d.ts +1 -1
- package/dist/types/router/runtime/withRouter.d.ts +1 -1
- package/dist/types/runtimeContext.d.ts +1 -1
- package/dist/types/ssr/serverRender/renderToString/loadable.d.ts +1 -0
- package/package.json +10 -11
- package/dist/cjs/state/types.js +0 -4
- package/dist/esm/state/types.js +0 -1
- package/dist/esm-node/state/types.js +0 -1
- package/dist/types/state/types.d.ts +0 -16
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { DOCUMENT_SCRIPT_PLACEHOLDER_START, DOCUMENT_SCRIPT_PLACEHOLDER_END } from "./constants";
|
|
3
|
-
|
|
3
|
+
function Script(props) {
|
|
4
4
|
const { content } = props;
|
|
5
5
|
const contentStr = content.toString();
|
|
6
6
|
const contentIIFE = encodeURIComponent(`(${contentStr})()`);
|
|
@@ -12,3 +12,6 @@ export function Script(props) {
|
|
|
12
12
|
]
|
|
13
13
|
});
|
|
14
14
|
}
|
|
15
|
+
export {
|
|
16
|
+
Script
|
|
17
|
+
};
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { DOCUMENT_SCRIPTS_PLACEHOLDER } from "./constants";
|
|
3
|
-
|
|
3
|
+
function Scripts() {
|
|
4
4
|
return /* @__PURE__ */ _jsx(_Fragment, {
|
|
5
5
|
children: `${DOCUMENT_SCRIPTS_PLACEHOLDER}`
|
|
6
6
|
});
|
|
7
7
|
}
|
|
8
|
+
export {
|
|
9
|
+
Scripts
|
|
10
|
+
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { DOCUMENT_STYLE_PLACEHOLDER_START, DOCUMENT_STYLE_PLACEHOLDER_END } from "./constants";
|
|
3
|
-
|
|
3
|
+
function Style(props) {
|
|
4
4
|
const { content, children } = props;
|
|
5
5
|
const contentStr = children || content;
|
|
6
6
|
const styleContent = encodeURIComponent(`${contentStr}`);
|
|
@@ -12,3 +12,6 @@ export function Style(props) {
|
|
|
12
12
|
]
|
|
13
13
|
});
|
|
14
14
|
}
|
|
15
|
+
export {
|
|
16
|
+
Style
|
|
17
|
+
};
|
|
@@ -6,7 +6,7 @@ import { createDebugger, findExists, fs } from "@modern-js/utils";
|
|
|
6
6
|
import { DocumentContext } from "../DocumentContext";
|
|
7
7
|
import { DOCUMENT_SCRIPTS_PLACEHOLDER, DOCUMENT_LINKS_PLACEHOLDER, DOCUMENT_FILE_NAME, DOCUMENT_META_PLACEHOLDER, PLACEHOLDER_REPLACER_MAP, DOC_EXT, DOCUMENT_SSR_PLACEHOLDER, DOCUMENT_CHUNKSMAP_PLACEHOLDER, DOCUMENT_SSRDATASCRIPT_PLACEHOLDER, DOCUMENT_SCRIPT_PLACEHOLDER_START, DOCUMENT_SCRIPT_PLACEHOLDER_END, HTML_SEPARATOR, DOCUMENT_COMMENT_PLACEHOLDER_START, DOCUMENT_COMMENT_PLACEHOLDER_END, DOCUMENT_STYLE_PLACEHOLDER_START, DOCUMENT_STYLE_PLACEHOLDER_END, TOP_PARTICALS_SEPARATOR, HEAD_PARTICALS_SEPARATOR, BODY_PARTICALS_SEPARATOR } from "../constants";
|
|
8
8
|
const debug = createDebugger("html_genarate");
|
|
9
|
-
|
|
9
|
+
const getDocumenByEntryName = function(entrypoints, entryName, fallbackDir) {
|
|
10
10
|
var _entrypoints_find;
|
|
11
11
|
const entryDir = (_entrypoints_find = entrypoints.find((item) => item.entryName === entryName)) === null || _entrypoints_find === void 0 ? void 0 : _entrypoints_find.absoluteEntryDir;
|
|
12
12
|
const entryDirs = DOC_EXT.map((item) => `${entryDir}${path.sep}${DOCUMENT_FILE_NAME}.${item}`);
|
|
@@ -21,7 +21,7 @@ export const getDocumenByEntryName = function(entrypoints, entryName, fallbackDi
|
|
|
21
21
|
]);
|
|
22
22
|
return docFile || void 0;
|
|
23
23
|
};
|
|
24
|
-
|
|
24
|
+
const documentPlugin = () => ({
|
|
25
25
|
name: "@modern-js/plugin-document",
|
|
26
26
|
pre: [
|
|
27
27
|
"@modern-js/plugin-analyze"
|
|
@@ -45,7 +45,6 @@ export const documentPlugin = () => ({
|
|
|
45
45
|
return null;
|
|
46
46
|
}
|
|
47
47
|
return async ({ htmlWebpackPlugin }) => {
|
|
48
|
-
var _tsConfig, _partialsByEntrypoint;
|
|
49
48
|
const config = api.useResolvedConfigContext();
|
|
50
49
|
const documentParams = getDocParams({
|
|
51
50
|
config,
|
|
@@ -60,7 +59,7 @@ export const documentPlugin = () => ({
|
|
|
60
59
|
} catch (err) {
|
|
61
60
|
tsConfig = {};
|
|
62
61
|
}
|
|
63
|
-
if (
|
|
62
|
+
if (tsConfig === null || tsConfig === void 0 ? void 0 : tsConfig.compilerOptions) {
|
|
64
63
|
tsConfig.compilerOptions.jsx = "react-jsx";
|
|
65
64
|
} else {
|
|
66
65
|
tsConfig.compilerOptions = {
|
|
@@ -120,7 +119,7 @@ export const documentPlugin = () => ({
|
|
|
120
119
|
partialsHead: "",
|
|
121
120
|
partialsBody: ""
|
|
122
121
|
};
|
|
123
|
-
if (
|
|
122
|
+
if (partialsByEntrypoint === null || partialsByEntrypoint === void 0 ? void 0 : partialsByEntrypoint[entryName]) {
|
|
124
123
|
partialsContent.partialsTop = partialsByEntrypoint[entryName].top.join("\n");
|
|
125
124
|
partialsContent.partialsHead = partialsByEntrypoint[entryName].head.join("\n");
|
|
126
125
|
partialsContent.partialsBody = partialsByEntrypoint[entryName].body.join("\n");
|
|
@@ -153,9 +152,8 @@ export const documentPlugin = () => ({
|
|
|
153
152
|
return {
|
|
154
153
|
tools: {
|
|
155
154
|
htmlPlugin: (options, entry) => {
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
...(_options2 = options) === null || _options2 === void 0 ? void 0 : _options2.templateParameters
|
|
155
|
+
const hackParameters = typeof (options === null || options === void 0 ? void 0 : options.templateParameters) === "function" ? options === null || options === void 0 ? void 0 : options.templateParameters({}, {}, {}, {}) : {
|
|
156
|
+
...options === null || options === void 0 ? void 0 : options.templateParameters
|
|
159
157
|
};
|
|
160
158
|
const templateContent = documentEntry(
|
|
161
159
|
entry.entryName,
|
|
@@ -178,4 +176,9 @@ export const documentPlugin = () => ({
|
|
|
178
176
|
};
|
|
179
177
|
}
|
|
180
178
|
});
|
|
181
|
-
|
|
179
|
+
var cli_default = documentPlugin;
|
|
180
|
+
export {
|
|
181
|
+
cli_default as default,
|
|
182
|
+
documentPlugin,
|
|
183
|
+
getDocumenByEntryName
|
|
184
|
+
};
|
|
@@ -1,30 +1,52 @@
|
|
|
1
1
|
import { HTML_CHUNKSMAP_SEPARATOR } from "@modern-js/utils/universal/constants";
|
|
2
|
-
|
|
2
|
+
const DOC_EXT = [
|
|
3
3
|
"jsx",
|
|
4
4
|
"tsx",
|
|
5
5
|
"ts",
|
|
6
6
|
"js"
|
|
7
7
|
];
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
8
|
+
const DOCUMENT_META_PLACEHOLDER = encodeURIComponent("<%= meta %>");
|
|
9
|
+
const HTML_SEPARATOR = "<!--<?- html ?>-->";
|
|
10
|
+
const HEAD_PARTICALS_SEPARATOR = encodeURIComponent("<!--<?- partials.head ?>-->");
|
|
11
|
+
const BODY_PARTICALS_SEPARATOR = encodeURIComponent("<!--<?- partials.body ?>-->");
|
|
12
|
+
const TOP_PARTICALS_SEPARATOR = encodeURIComponent("<!--<?- partials.top ?>-->");
|
|
13
|
+
const HTML_SSRDATASCRIPT_SEPARATOR = "<!--<?- SSRDataScript ?>-->";
|
|
14
|
+
const DOCUMENT_SSR_PLACEHOLDER = encodeURIComponent(HTML_SEPARATOR);
|
|
15
|
+
const DOCUMENT_CHUNKSMAP_PLACEHOLDER = encodeURIComponent(HTML_CHUNKSMAP_SEPARATOR);
|
|
16
|
+
const DOCUMENT_SSRDATASCRIPT_PLACEHOLDER = encodeURIComponent(HTML_SSRDATASCRIPT_SEPARATOR);
|
|
17
|
+
const DOCUMENT_FILE_NAME = "Document";
|
|
18
|
+
const DOCUMENT_SCRIPTS_PLACEHOLDER = encodeURIComponent("<!-- chunk scripts placeholder -->");
|
|
19
|
+
const DOCUMENT_LINKS_PLACEHOLDER = encodeURIComponent("<!-- chunk links placeholder -->");
|
|
20
|
+
const DOCUMENT_SCRIPT_PLACEHOLDER_START = encodeURIComponent("<!-- script-start -->");
|
|
21
|
+
const DOCUMENT_SCRIPT_PLACEHOLDER_END = encodeURIComponent("<!-- script-end -->");
|
|
22
|
+
const DOCUMENT_STYLE_PLACEHOLDER_START = encodeURIComponent("<!-- style-start -->");
|
|
23
|
+
const DOCUMENT_STYLE_PLACEHOLDER_END = encodeURIComponent("<!-- style-end -->");
|
|
24
|
+
const DOCUMENT_COMMENT_PLACEHOLDER_START = encodeURIComponent("<!-- comment-start -->");
|
|
25
|
+
const DOCUMENT_COMMENT_PLACEHOLDER_END = encodeURIComponent("<!-- comment-end -->");
|
|
26
|
+
const PLACEHOLDER_REPLACER_MAP = {
|
|
27
27
|
[DOCUMENT_SSR_PLACEHOLDER]: HTML_SEPARATOR,
|
|
28
28
|
[DOCUMENT_CHUNKSMAP_PLACEHOLDER]: HTML_CHUNKSMAP_SEPARATOR,
|
|
29
29
|
[DOCUMENT_SSRDATASCRIPT_PLACEHOLDER]: HTML_SSRDATASCRIPT_SEPARATOR
|
|
30
30
|
};
|
|
31
|
+
export {
|
|
32
|
+
BODY_PARTICALS_SEPARATOR,
|
|
33
|
+
DOCUMENT_CHUNKSMAP_PLACEHOLDER,
|
|
34
|
+
DOCUMENT_COMMENT_PLACEHOLDER_END,
|
|
35
|
+
DOCUMENT_COMMENT_PLACEHOLDER_START,
|
|
36
|
+
DOCUMENT_FILE_NAME,
|
|
37
|
+
DOCUMENT_LINKS_PLACEHOLDER,
|
|
38
|
+
DOCUMENT_META_PLACEHOLDER,
|
|
39
|
+
DOCUMENT_SCRIPTS_PLACEHOLDER,
|
|
40
|
+
DOCUMENT_SCRIPT_PLACEHOLDER_END,
|
|
41
|
+
DOCUMENT_SCRIPT_PLACEHOLDER_START,
|
|
42
|
+
DOCUMENT_SSRDATASCRIPT_PLACEHOLDER,
|
|
43
|
+
DOCUMENT_SSR_PLACEHOLDER,
|
|
44
|
+
DOCUMENT_STYLE_PLACEHOLDER_END,
|
|
45
|
+
DOCUMENT_STYLE_PLACEHOLDER_START,
|
|
46
|
+
DOC_EXT,
|
|
47
|
+
HEAD_PARTICALS_SEPARATOR,
|
|
48
|
+
HTML_SEPARATOR,
|
|
49
|
+
HTML_SSRDATASCRIPT_SEPARATOR,
|
|
50
|
+
PLACEHOLDER_REPLACER_MAP,
|
|
51
|
+
TOP_PARTICALS_SEPARATOR
|
|
52
|
+
};
|
package/dist/esm-node/index.js
CHANGED
|
@@ -1,2 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { isBrowser } from "./common";
|
|
2
|
+
import { createApp, createPlugin, useLoader, bootstrap, RuntimeReactContext, defineConfig, registerInit, useRuntimeContext } from "./core";
|
|
3
|
+
export {
|
|
4
|
+
RuntimeReactContext,
|
|
5
|
+
bootstrap,
|
|
6
|
+
createApp,
|
|
7
|
+
createPlugin,
|
|
8
|
+
defineConfig,
|
|
9
|
+
isBrowser,
|
|
10
|
+
registerInit,
|
|
11
|
+
useLoader,
|
|
12
|
+
useRuntimeContext
|
|
13
|
+
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { getEntryOptions, createRuntimeExportsUtils, isRouterV5 as isV5 } from "@modern-js/utils";
|
|
2
2
|
const PLUGIN_IDENTIFIER = "router";
|
|
3
3
|
const ROUTES_IDENTIFIER = "routes";
|
|
4
|
-
|
|
4
|
+
const routerPlugin = () => ({
|
|
5
5
|
name: "@modern-js/plugin-router",
|
|
6
6
|
required: [
|
|
7
7
|
"@modern-js/runtime"
|
|
@@ -43,13 +43,12 @@ export const routerPlugin = () => ({
|
|
|
43
43
|
];
|
|
44
44
|
},
|
|
45
45
|
modifyEntryImports({ entrypoint, imports }) {
|
|
46
|
-
var _runtimeConfig;
|
|
47
46
|
const { entryName, isMainEntry, fileSystemRoutes } = entrypoint;
|
|
48
47
|
const userConfig = api.useResolvedConfigContext();
|
|
49
48
|
const { packageName } = api.useAppContext();
|
|
50
49
|
const runtimeConfig = getEntryOptions(entryName, isMainEntry, userConfig.runtime, userConfig.runtimeByEntries, packageName);
|
|
51
50
|
runtimeConfigMap.set(entryName, runtimeConfig);
|
|
52
|
-
if (
|
|
51
|
+
if (runtimeConfig === null || runtimeConfig === void 0 ? void 0 : runtimeConfig.router) {
|
|
53
52
|
if (!isV5(userConfig)) {
|
|
54
53
|
imports.push({
|
|
55
54
|
value: "@modern-js/runtime/plugins",
|
|
@@ -98,4 +97,8 @@ export const routerPlugin = () => ({
|
|
|
98
97
|
};
|
|
99
98
|
}
|
|
100
99
|
});
|
|
101
|
-
|
|
100
|
+
var cli_default = routerPlugin;
|
|
101
|
+
export {
|
|
102
|
+
cli_default as default,
|
|
103
|
+
routerPlugin
|
|
104
|
+
};
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { default as default2 } from "./runtime";
|
|
2
|
+
import { default as default3 } from "./runtime";
|
|
3
3
|
export * from "./runtime";
|
|
4
|
+
export {
|
|
5
|
+
default3 as default,
|
|
6
|
+
default2 as router
|
|
7
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
|
|
2
|
+
const DefaultNotFound = () => /* @__PURE__ */ _jsx("div", {
|
|
3
3
|
style: {
|
|
4
4
|
margin: "150px auto",
|
|
5
5
|
textAlign: "center",
|
|
@@ -9,3 +9,6 @@ export const DefaultNotFound = () => /* @__PURE__ */ _jsx("div", {
|
|
|
9
9
|
},
|
|
10
10
|
children: "404"
|
|
11
11
|
});
|
|
12
|
+
export {
|
|
13
|
+
DefaultNotFound
|
|
14
|
+
};
|
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { Suspense, useEffect, useRef, useMemo, useContext } from "react";
|
|
3
|
-
import { Await, UNSAFE_DataRouterContext as DataRouterContext, useAsyncError } from "@modern-js/utils/
|
|
4
|
-
import { serializeJson } from "@modern-js/utils/
|
|
3
|
+
import { Await, UNSAFE_DataRouterContext as DataRouterContext, useAsyncError } from "@modern-js/runtime-utils/router";
|
|
4
|
+
import { serializeJson } from "@modern-js/runtime-utils/node";
|
|
5
5
|
import { JSX_SHELL_STREAM_END_MARK } from "../../common";
|
|
6
6
|
import { serializeErrors } from "./utils";
|
|
7
7
|
const setupFnStr = `function s(r,e){_ROUTER_DATA.r=_ROUTER_DATA.r||{},_ROUTER_DATA.r[r]=_ROUTER_DATA.r[r]||{};return new Promise((function(A,R){_ROUTER_DATA.r[r][e]={resolve:A,reject:R}}))};`;
|
|
8
8
|
const resolveFnStr = `function r(e,r,o,A){A?_ROUTER_DATA.r[e][r].reject(A):_ROUTER_DATA.r[e][r].resolve(o)};`;
|
|
9
9
|
const preResolvedFnStr = `function p(e,r){return void 0!==r?Promise.reject(new Error(r.message)):Promise.resolve(e)};`;
|
|
10
10
|
const DeferredDataScripts = (props) => {
|
|
11
|
-
var _props;
|
|
12
11
|
const context = useContext(DataRouterContext);
|
|
13
12
|
const { staticContext } = context || {};
|
|
14
13
|
const hydratedRef = useRef(false);
|
|
@@ -36,9 +35,8 @@ const DeferredDataScripts = (props) => {
|
|
|
36
35
|
const { deferredKeys } = deferredData;
|
|
37
36
|
const deferredKeyPromiseStr = deferredKeys.map((key) => {
|
|
38
37
|
if (pendingKeys.has(key)) {
|
|
39
|
-
var _props2;
|
|
40
38
|
deferredDataScripts.push(/* @__PURE__ */ _jsx(DeferredDataScript, {
|
|
41
|
-
nonce:
|
|
39
|
+
nonce: props === null || props === void 0 ? void 0 : props.nonce,
|
|
42
40
|
data: deferredData.data[key],
|
|
43
41
|
dataKey: key,
|
|
44
42
|
routeId
|
|
@@ -74,7 +72,7 @@ const DeferredDataScripts = (props) => {
|
|
|
74
72
|
children: [
|
|
75
73
|
!hydratedRef.current && /* @__PURE__ */ _jsx("script", {
|
|
76
74
|
async: true,
|
|
77
|
-
nonce:
|
|
75
|
+
nonce: props === null || props === void 0 ? void 0 : props.nonce,
|
|
78
76
|
suppressHydrationWarning: true,
|
|
79
77
|
dangerouslySetInnerHTML: {
|
|
80
78
|
__html: deferredScripts[0]
|
|
@@ -118,4 +116,7 @@ const ErrorDeferredDataScript = ({ routeId, dataKey, nonce }) => {
|
|
|
118
116
|
}
|
|
119
117
|
});
|
|
120
118
|
};
|
|
121
|
-
|
|
119
|
+
var DeferredDataScripts_node_default = DeferredDataScripts;
|
|
120
|
+
export {
|
|
121
|
+
DeferredDataScripts_node_default as default
|
|
122
|
+
};
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import React, { useContext, useMemo } from "react";
|
|
3
|
-
import { Link as RouterLink, matchRoutes, useResolvedPath, useHref, useMatches, NavLink as RouterNavLink } from "@modern-js/utils/
|
|
3
|
+
import { Link as RouterLink, matchRoutes, useResolvedPath, useHref, useMatches, NavLink as RouterNavLink } from "@modern-js/runtime-utils/router";
|
|
4
4
|
import { RuntimeReactContext } from "../../core";
|
|
5
|
-
|
|
5
|
+
function composeEventHandlers(theirHandler, ourHandler) {
|
|
6
6
|
return (event) => {
|
|
7
|
-
|
|
8
|
-
(_theirHandler = theirHandler) === null || _theirHandler === void 0 ? void 0 : _theirHandler(event);
|
|
7
|
+
theirHandler === null || theirHandler === void 0 ? void 0 : theirHandler(event);
|
|
9
8
|
if (!event.defaultPrevented) {
|
|
10
9
|
ourHandler(event);
|
|
11
10
|
}
|
|
@@ -71,8 +70,7 @@ async function loadRouteModule(route, routeAssets) {
|
|
|
71
70
|
}
|
|
72
71
|
try {
|
|
73
72
|
await Promise.all(chunkIds.map((chunkId) => {
|
|
74
|
-
|
|
75
|
-
return (__webpack_chunk_load__1 = __webpack_chunk_load__) === null || __webpack_chunk_load__1 === void 0 ? void 0 : __webpack_chunk_load__1(String(chunkId));
|
|
73
|
+
return __webpack_chunk_load__ === null || __webpack_chunk_load__ === void 0 ? void 0 : __webpack_chunk_load__(String(chunkId));
|
|
76
74
|
}));
|
|
77
75
|
} catch (error) {
|
|
78
76
|
console.error(error);
|
|
@@ -106,8 +104,7 @@ const PrefetchPageLinks = ({ pathname }) => {
|
|
|
106
104
|
const { routeAssets } = routeManifest || {};
|
|
107
105
|
const matches = Array.isArray(routes) ? matchRoutes(routes, pathname) : [];
|
|
108
106
|
if (Array.isArray(matches) && routeAssets) {
|
|
109
|
-
|
|
110
|
-
(_matches = matches) === null || _matches === void 0 ? void 0 : _matches.forEach((match) => loadRouteModule(match.route, routeAssets));
|
|
107
|
+
matches === null || matches === void 0 ? void 0 : matches.forEach((match) => loadRouteModule(match.route, routeAssets));
|
|
111
108
|
}
|
|
112
109
|
if (!window._SSR_DATA) {
|
|
113
110
|
return null;
|
|
@@ -122,8 +119,7 @@ const PrefetchDataLinks = ({ matches, pathname, routeManifest }) => {
|
|
|
122
119
|
const currentMatches = useMatches();
|
|
123
120
|
const basename = useHref("/");
|
|
124
121
|
const dataHrefs = useMemo(() => {
|
|
125
|
-
|
|
126
|
-
return (_matches = matches) === null || _matches === void 0 ? void 0 : _matches.filter((match, index) => {
|
|
122
|
+
return matches === null || matches === void 0 ? void 0 : matches.filter((match, index) => {
|
|
127
123
|
if (!match.route.loader || typeof match.route.loader !== "function" || match.route.loader.length === 0) {
|
|
128
124
|
return false;
|
|
129
125
|
}
|
|
@@ -173,4 +169,8 @@ const Link = createPrefetchLink(RouterLink);
|
|
|
173
169
|
Link.displayName = "Link";
|
|
174
170
|
const NavLink = createPrefetchLink(RouterNavLink);
|
|
175
171
|
NavLink.displayName = "NavLink";
|
|
176
|
-
export {
|
|
172
|
+
export {
|
|
173
|
+
Link,
|
|
174
|
+
NavLink,
|
|
175
|
+
composeEventHandlers
|
|
176
|
+
};
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { useRouteLoaderData as useRouteData } from "@modern-js/utils/
|
|
1
|
+
import { useRouteLoaderData as useRouteData } from "@modern-js/runtime-utils/router";
|
|
2
2
|
import { routerPlugin } from "./plugin";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
import { renderRoutes } from "./utils";
|
|
4
|
+
var runtime_default = routerPlugin;
|
|
5
|
+
import { modifyRoutes } from "./plugin";
|
|
6
6
|
export * from "./withRouter";
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
import { Link, NavLink } from "./PrefetchLink";
|
|
8
|
+
const useRouteLoaderData = (routeId) => {
|
|
9
9
|
const realRouteId = routeId.replace(/\[(.*?)\]/g, "($1)");
|
|
10
10
|
return useRouteData(realRouteId);
|
|
11
11
|
};
|
|
12
|
-
|
|
12
|
+
import {
|
|
13
13
|
createBrowserRouter,
|
|
14
14
|
createHashRouter,
|
|
15
15
|
createMemoryRouter,
|
|
@@ -66,4 +66,68 @@ export {
|
|
|
66
66
|
defer,
|
|
67
67
|
json,
|
|
68
68
|
redirect
|
|
69
|
-
} from "@modern-js/utils/
|
|
69
|
+
} from "@modern-js/runtime-utils/router";
|
|
70
|
+
export {
|
|
71
|
+
Await,
|
|
72
|
+
BrowserRouter,
|
|
73
|
+
Form,
|
|
74
|
+
HashRouter,
|
|
75
|
+
Link,
|
|
76
|
+
MemoryRouter,
|
|
77
|
+
NavLink,
|
|
78
|
+
Navigate,
|
|
79
|
+
Outlet,
|
|
80
|
+
Route,
|
|
81
|
+
Router,
|
|
82
|
+
RouterProvider,
|
|
83
|
+
Routes,
|
|
84
|
+
ScrollRestoration,
|
|
85
|
+
createBrowserRouter,
|
|
86
|
+
createHashRouter,
|
|
87
|
+
createMemoryRouter,
|
|
88
|
+
createPath,
|
|
89
|
+
createRoutesFromChildren,
|
|
90
|
+
createRoutesFromElements,
|
|
91
|
+
createSearchParams,
|
|
92
|
+
runtime_default as default,
|
|
93
|
+
defer,
|
|
94
|
+
generatePath,
|
|
95
|
+
isRouteErrorResponse,
|
|
96
|
+
json,
|
|
97
|
+
matchPath,
|
|
98
|
+
matchRoutes,
|
|
99
|
+
modifyRoutes,
|
|
100
|
+
redirect,
|
|
101
|
+
renderMatches,
|
|
102
|
+
renderRoutes,
|
|
103
|
+
resolvePath,
|
|
104
|
+
unstable_useBlocker,
|
|
105
|
+
unstable_usePrompt,
|
|
106
|
+
useActionData,
|
|
107
|
+
useAsyncError,
|
|
108
|
+
useAsyncValue,
|
|
109
|
+
useBeforeUnload,
|
|
110
|
+
useFetcher,
|
|
111
|
+
useFetchers,
|
|
112
|
+
useFormAction,
|
|
113
|
+
useHref,
|
|
114
|
+
useInRouterContext,
|
|
115
|
+
useLinkClickHandler,
|
|
116
|
+
useLoaderData,
|
|
117
|
+
useLocation,
|
|
118
|
+
useMatch,
|
|
119
|
+
useMatches,
|
|
120
|
+
useNavigate,
|
|
121
|
+
useNavigation,
|
|
122
|
+
useNavigationType,
|
|
123
|
+
useOutlet,
|
|
124
|
+
useOutletContext,
|
|
125
|
+
useParams,
|
|
126
|
+
useResolvedPath,
|
|
127
|
+
useRevalidator,
|
|
128
|
+
useRouteError,
|
|
129
|
+
useRouteLoaderData,
|
|
130
|
+
useRoutes,
|
|
131
|
+
useSearchParams,
|
|
132
|
+
useSubmit
|
|
133
|
+
};
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { useContext, useMemo } from "react";
|
|
3
|
-
import { createBrowserRouter, createHashRouter, RouterProvider, createRoutesFromElements, useMatches, useLocation } from "@modern-js/utils/
|
|
3
|
+
import { createBrowserRouter, createHashRouter, RouterProvider, createRoutesFromElements, useMatches, useLocation } from "@modern-js/runtime-utils/router";
|
|
4
4
|
import hoistNonReactStatics from "hoist-non-react-statics";
|
|
5
|
-
import { parsedJSONFromElement } from "@modern-js/utils/
|
|
5
|
+
import { parsedJSONFromElement } from "@modern-js/runtime-utils/browser";
|
|
6
6
|
import { RuntimeReactContext } from "../../core";
|
|
7
7
|
import { modifyRoutes as modifyRoutesHook } from "./hooks";
|
|
8
8
|
import { deserializeErrors, renderRoutes, urlJoin } from "./utils";
|
|
9
|
-
|
|
9
|
+
let finalRouteConfig = {
|
|
10
10
|
routes: []
|
|
11
11
|
};
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
let beforeCreateRouter = true;
|
|
13
|
+
function modifyRoutes(modifyFunction) {
|
|
14
14
|
if (beforeCreateRouter) {
|
|
15
15
|
const { routes: originRoutes } = finalRouteConfig;
|
|
16
16
|
const newRoutes = modifyFunction(originRoutes);
|
|
@@ -19,7 +19,7 @@ export function modifyRoutes(modifyFunction) {
|
|
|
19
19
|
console.error("It is not allowed to modify routes config after create router.");
|
|
20
20
|
}
|
|
21
21
|
}
|
|
22
|
-
|
|
22
|
+
const routerPlugin = ({ serverBase = [], supportHtml5History = true, basename = "", routesConfig, createRoutes }) => {
|
|
23
23
|
const select = (pathname) => serverBase.find((baseUrl) => pathname.search(baseUrl) === 0) || "/";
|
|
24
24
|
let routes = [];
|
|
25
25
|
finalRouteConfig = routesConfig;
|
|
@@ -46,7 +46,6 @@ export const routerPlugin = ({ serverBase = [], supportHtml5History = true, base
|
|
|
46
46
|
});
|
|
47
47
|
},
|
|
48
48
|
hoc: ({ App }, next) => {
|
|
49
|
-
var _routesConfig;
|
|
50
49
|
if (!finalRouteConfig && !createRoutes) {
|
|
51
50
|
return next({
|
|
52
51
|
App
|
|
@@ -61,8 +60,7 @@ export const routerPlugin = ({ serverBase = [], supportHtml5History = true, base
|
|
|
61
60
|
const runtimeContext = useContext(RuntimeReactContext);
|
|
62
61
|
const { unstable_getBlockNavState: getBlockNavState } = runtimeContext;
|
|
63
62
|
return useMemo(() => {
|
|
64
|
-
|
|
65
|
-
if ((_hydrationData = hydrationData) === null || _hydrationData === void 0 ? void 0 : _hydrationData.errors) {
|
|
63
|
+
if (hydrationData === null || hydrationData === void 0 ? void 0 : hydrationData.errors) {
|
|
66
64
|
hydrationData = {
|
|
67
65
|
...hydrationData,
|
|
68
66
|
errors: deserializeErrors(hydrationData.errors)
|
|
@@ -122,7 +120,7 @@ export const routerPlugin = ({ serverBase = [], supportHtml5History = true, base
|
|
|
122
120
|
if (App) {
|
|
123
121
|
RouteApp = hoistNonReactStatics(RouteApp, App);
|
|
124
122
|
}
|
|
125
|
-
if (
|
|
123
|
+
if (routesConfig === null || routesConfig === void 0 ? void 0 : routesConfig.globalApp) {
|
|
126
124
|
return next({
|
|
127
125
|
App: hoistNonReactStatics(RouteApp, routesConfig.globalApp)
|
|
128
126
|
});
|
|
@@ -157,3 +155,9 @@ export const routerPlugin = ({ serverBase = [], supportHtml5History = true, base
|
|
|
157
155
|
}
|
|
158
156
|
};
|
|
159
157
|
};
|
|
158
|
+
export {
|
|
159
|
+
beforeCreateRouter,
|
|
160
|
+
finalRouteConfig,
|
|
161
|
+
modifyRoutes,
|
|
162
|
+
routerPlugin
|
|
163
|
+
};
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { useContext } from "react";
|
|
3
|
-
import { createStaticHandler } from "@modern-js/utils/
|
|
4
|
-
import { createStaticRouter, StaticRouterProvider } from "@modern-js/utils/
|
|
3
|
+
import { createStaticHandler } from "@modern-js/runtime-utils/remix-router";
|
|
4
|
+
import { createStaticRouter, StaticRouterProvider } from "@modern-js/runtime-utils/node/router";
|
|
5
5
|
import hoistNonReactStatics from "hoist-non-react-statics";
|
|
6
|
-
import { createRoutesFromElements } from "@modern-js/utils/
|
|
7
|
-
import { createRequestContext, reporterCtx } from "@modern-js/utils/
|
|
8
|
-
import { time } from "@modern-js/utils/
|
|
6
|
+
import { createRoutesFromElements } from "@modern-js/runtime-utils/router";
|
|
7
|
+
import { createRequestContext, reporterCtx } from "@modern-js/runtime-utils/node";
|
|
8
|
+
import { time } from "@modern-js/runtime-utils/time";
|
|
9
9
|
import { LOADER_REPORTER_NAME } from "@modern-js/utils/universal/constants";
|
|
10
10
|
import { RuntimeReactContext } from "../../core";
|
|
11
11
|
import { renderRoutes, urlJoin } from "./utils";
|
|
@@ -23,7 +23,7 @@ function createFetchRequest(req) {
|
|
|
23
23
|
};
|
|
24
24
|
return new Request(url.href, init);
|
|
25
25
|
}
|
|
26
|
-
|
|
26
|
+
function createFetchHeaders(requestHeaders) {
|
|
27
27
|
const headers = new Headers();
|
|
28
28
|
for (const [key, values] of Object.entries(requestHeaders || {})) {
|
|
29
29
|
if (values) {
|
|
@@ -38,7 +38,7 @@ export function createFetchHeaders(requestHeaders) {
|
|
|
38
38
|
}
|
|
39
39
|
return headers;
|
|
40
40
|
}
|
|
41
|
-
|
|
41
|
+
const routerPlugin = ({ basename = "", routesConfig, createRoutes }) => {
|
|
42
42
|
return {
|
|
43
43
|
name: "@modern-js/plugin-router",
|
|
44
44
|
registerHook: {
|
|
@@ -92,7 +92,6 @@ export const routerPlugin = ({ basename = "", routesConfig, createRoutes }) => {
|
|
|
92
92
|
});
|
|
93
93
|
},
|
|
94
94
|
hoc: ({ App }, next) => {
|
|
95
|
-
var _routesConfig;
|
|
96
95
|
if (!routesConfig) {
|
|
97
96
|
return next({
|
|
98
97
|
App
|
|
@@ -112,7 +111,7 @@ export const routerPlugin = ({ basename = "", routesConfig, createRoutes }) => {
|
|
|
112
111
|
};
|
|
113
112
|
};
|
|
114
113
|
const RouteApp = getRouteApp();
|
|
115
|
-
if (
|
|
114
|
+
if (routesConfig === null || routesConfig === void 0 ? void 0 : routesConfig.globalApp) {
|
|
116
115
|
return next({
|
|
117
116
|
App: hoistNonReactStatics(RouteApp, routesConfig.globalApp)
|
|
118
117
|
});
|
|
@@ -147,5 +146,10 @@ export const routerPlugin = ({ basename = "", routesConfig, createRoutes }) => {
|
|
|
147
146
|
}
|
|
148
147
|
};
|
|
149
148
|
};
|
|
150
|
-
|
|
149
|
+
const modifyRoutes = () => {
|
|
150
|
+
};
|
|
151
|
+
export {
|
|
152
|
+
createFetchHeaders,
|
|
153
|
+
modifyRoutes,
|
|
154
|
+
routerPlugin
|
|
151
155
|
};
|