@modern-js/runtime 2.35.1 → 2.37.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 +60 -43
- 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 +45 -23
- package/dist/cjs/core/plugin.js +39 -31
- 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 +34 -19
- 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 +68 -51
- 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 +31 -22
- 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 +47 -34
- package/dist/cjs/router/runtime/PrefetchLink.js +81 -47
- 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 +158 -208
- package/dist/cjs/router/runtime/plugin.js +62 -46
- package/dist/cjs/router/runtime/plugin.node.js +65 -48
- package/dist/cjs/router/runtime/server.js +20 -4
- package/dist/cjs/router/runtime/shouldRevalidate.js +38 -0
- package/dist/cjs/router/runtime/types.js +15 -3
- package/dist/cjs/router/runtime/utils.js +61 -48
- 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 +48 -30
- 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 +44 -25
- package/dist/cjs/ssr/prefetch.js +29 -16
- 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 +31 -24
- 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 +46 -20
- package/dist/cjs/ssr/serverRender/renderToStream/index.js +49 -23
- package/dist/cjs/ssr/serverRender/renderToStream/renderToPipe.js +30 -17
- package/dist/cjs/ssr/serverRender/renderToStream/renderToPipe.worker.js +30 -17
- 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 +33 -16
- 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 +20 -15
- 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 +5 -2
- package/dist/esm/core/plugin.js +15 -10
- 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 +9 -6
- 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 +14 -9
- 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 +11 -7
- 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 +10 -7
- package/dist/esm/router/runtime/PrefetchLink.js +31 -11
- 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 -6
- package/dist/esm/router/runtime/plugin.js +22 -16
- package/dist/esm/router/runtime/plugin.node.js +20 -15
- package/dist/esm/router/runtime/shouldRevalidate.js +14 -0
- package/dist/esm/router/runtime/types.js +0 -1
- package/dist/esm/router/runtime/utils.js +23 -14
- package/dist/esm/router/runtime/withRouter.js +7 -4
- 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 +17 -13
- package/dist/esm/ssr/cli/loadable-bundler-plugin.js +105 -96
- package/dist/esm/ssr/index.js +18 -14
- package/dist/esm/ssr/index.node.js +14 -10
- package/dist/esm/ssr/prefetch.js +7 -4
- 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 +12 -5
- 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 +7 -4
- package/dist/esm/ssr/serverRender/renderToStream/buildTemplate.share.js +6 -2
- package/dist/esm/ssr/serverRender/renderToStream/bulidTemplate.before.js +4 -1
- package/dist/esm/ssr/serverRender/renderToStream/index.js +4 -1
- package/dist/esm/ssr/serverRender/renderToStream/renderToPipe.js +4 -1
- package/dist/esm/ssr/serverRender/renderToStream/renderToPipe.worker.js +4 -1
- 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 +5 -3
- package/dist/esm/ssr/serverRender/renderToString/index.js +6 -3
- package/dist/esm/ssr/serverRender/renderToString/loadable.js +5 -2
- 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 +8 -3
- 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 +4 -1
- package/dist/esm-node/core/plugin.js +9 -4
- 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 +4 -1
- 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 +8 -3
- 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 +6 -2
- 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 +4 -1
- package/dist/esm-node/router/runtime/PrefetchLink.js +27 -7
- 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 -6
- package/dist/esm-node/router/runtime/plugin.js +10 -4
- package/dist/esm-node/router/runtime/plugin.node.js +8 -3
- package/dist/esm-node/router/runtime/shouldRevalidate.js +14 -0
- package/dist/esm-node/router/runtime/types.js +0 -1
- package/dist/esm-node/router/runtime/utils.js +16 -7
- package/dist/esm-node/router/runtime/withRouter.js +4 -1
- 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 +6 -2
- package/dist/esm-node/ssr/cli/loadable-bundler-plugin.js +92 -83
- package/dist/esm-node/ssr/index.js +6 -2
- package/dist/esm-node/ssr/index.node.js +6 -2
- package/dist/esm-node/ssr/prefetch.js +4 -1
- 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 +12 -5
- 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 +4 -1
- package/dist/esm-node/ssr/serverRender/renderToStream/buildTemplate.share.js +6 -2
- package/dist/esm-node/ssr/serverRender/renderToStream/bulidTemplate.before.js +4 -1
- package/dist/esm-node/ssr/serverRender/renderToStream/index.js +4 -1
- package/dist/esm-node/ssr/serverRender/renderToStream/renderToPipe.js +4 -1
- package/dist/esm-node/ssr/serverRender/renderToStream/renderToPipe.worker.js +4 -1
- 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 +3 -1
- package/dist/esm-node/ssr/serverRender/renderToString/index.js +4 -1
- package/dist/esm-node/ssr/serverRender/renderToString/loadable.js +4 -1
- 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/index.d.ts +1 -0
- package/dist/types/router/runtime/shouldRevalidate.d.ts +2 -0
- package/package.json +10 -12
- 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,15 +1,16 @@
|
|
|
1
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
|
+
var useRouteLoaderData = function(routeId) {
|
|
9
9
|
var realRouteId = routeId.replace(/\[(.*?)\]/g, "($1)");
|
|
10
10
|
return useRouteData(realRouteId);
|
|
11
11
|
};
|
|
12
|
-
|
|
12
|
+
import { createShouldRevalidate } from "./shouldRevalidate";
|
|
13
|
+
import {
|
|
13
14
|
createBrowserRouter,
|
|
14
15
|
createHashRouter,
|
|
15
16
|
createMemoryRouter,
|
|
@@ -67,3 +68,68 @@ export {
|
|
|
67
68
|
json,
|
|
68
69
|
redirect
|
|
69
70
|
} from "@modern-js/runtime-utils/router";
|
|
71
|
+
export {
|
|
72
|
+
Await,
|
|
73
|
+
BrowserRouter,
|
|
74
|
+
Form,
|
|
75
|
+
HashRouter,
|
|
76
|
+
Link,
|
|
77
|
+
MemoryRouter,
|
|
78
|
+
NavLink,
|
|
79
|
+
Navigate,
|
|
80
|
+
Outlet,
|
|
81
|
+
Route,
|
|
82
|
+
Router,
|
|
83
|
+
RouterProvider,
|
|
84
|
+
Routes,
|
|
85
|
+
ScrollRestoration,
|
|
86
|
+
createBrowserRouter,
|
|
87
|
+
createHashRouter,
|
|
88
|
+
createMemoryRouter,
|
|
89
|
+
createPath,
|
|
90
|
+
createRoutesFromChildren,
|
|
91
|
+
createRoutesFromElements,
|
|
92
|
+
createSearchParams,
|
|
93
|
+
createShouldRevalidate,
|
|
94
|
+
runtime_default as default,
|
|
95
|
+
defer,
|
|
96
|
+
generatePath,
|
|
97
|
+
isRouteErrorResponse,
|
|
98
|
+
json,
|
|
99
|
+
matchPath,
|
|
100
|
+
matchRoutes,
|
|
101
|
+
modifyRoutes,
|
|
102
|
+
redirect,
|
|
103
|
+
renderMatches,
|
|
104
|
+
renderRoutes,
|
|
105
|
+
resolvePath,
|
|
106
|
+
unstable_useBlocker,
|
|
107
|
+
unstable_usePrompt,
|
|
108
|
+
useActionData,
|
|
109
|
+
useAsyncError,
|
|
110
|
+
useAsyncValue,
|
|
111
|
+
useBeforeUnload,
|
|
112
|
+
useFetcher,
|
|
113
|
+
useFetchers,
|
|
114
|
+
useFormAction,
|
|
115
|
+
useHref,
|
|
116
|
+
useInRouterContext,
|
|
117
|
+
useLinkClickHandler,
|
|
118
|
+
useLoaderData,
|
|
119
|
+
useLocation,
|
|
120
|
+
useMatch,
|
|
121
|
+
useMatches,
|
|
122
|
+
useNavigate,
|
|
123
|
+
useNavigation,
|
|
124
|
+
useNavigationType,
|
|
125
|
+
useOutlet,
|
|
126
|
+
useOutletContext,
|
|
127
|
+
useParams,
|
|
128
|
+
useResolvedPath,
|
|
129
|
+
useRevalidator,
|
|
130
|
+
useRouteError,
|
|
131
|
+
useRouteLoaderData,
|
|
132
|
+
useRoutes,
|
|
133
|
+
useSearchParams,
|
|
134
|
+
useSubmit
|
|
135
|
+
};
|
|
@@ -9,11 +9,11 @@ import { parsedJSONFromElement } from "@modern-js/runtime-utils/browser";
|
|
|
9
9
|
import { RuntimeReactContext } from "../../core";
|
|
10
10
|
import { modifyRoutes as modifyRoutesHook } from "./hooks";
|
|
11
11
|
import { deserializeErrors, renderRoutes, urlJoin } from "./utils";
|
|
12
|
-
|
|
12
|
+
var finalRouteConfig = {
|
|
13
13
|
routes: []
|
|
14
14
|
};
|
|
15
|
-
|
|
16
|
-
|
|
15
|
+
var beforeCreateRouter = true;
|
|
16
|
+
function modifyRoutes(modifyFunction) {
|
|
17
17
|
if (beforeCreateRouter) {
|
|
18
18
|
var originRoutes = finalRouteConfig.routes;
|
|
19
19
|
var newRoutes = modifyFunction(originRoutes);
|
|
@@ -22,7 +22,7 @@ export function modifyRoutes(modifyFunction) {
|
|
|
22
22
|
console.error("It is not allowed to modify routes config after create router.");
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
|
-
|
|
25
|
+
var routerPlugin = function(param) {
|
|
26
26
|
var _param_serverBase = param.serverBase, serverBase = _param_serverBase === void 0 ? [] : _param_serverBase, _param_supportHtml5History = param.supportHtml5History, supportHtml5History = _param_supportHtml5History === void 0 ? true : _param_supportHtml5History, _param_basename = param.basename, basename = _param_basename === void 0 ? "" : _param_basename, routesConfig = param.routesConfig, createRoutes = param.createRoutes;
|
|
27
27
|
var select = function(pathname) {
|
|
28
28
|
return serverBase.find(function(baseUrl) {
|
|
@@ -42,8 +42,8 @@ export var routerPlugin = function(param) {
|
|
|
42
42
|
init: function init(param2, next) {
|
|
43
43
|
var context = param2.context;
|
|
44
44
|
context.router = {
|
|
45
|
-
useMatches
|
|
46
|
-
useLocation
|
|
45
|
+
useMatches,
|
|
46
|
+
useLocation
|
|
47
47
|
};
|
|
48
48
|
Object.defineProperty(context, "routes", {
|
|
49
49
|
get: function get() {
|
|
@@ -51,14 +51,14 @@ export var routerPlugin = function(param) {
|
|
|
51
51
|
}
|
|
52
52
|
});
|
|
53
53
|
return next({
|
|
54
|
-
context
|
|
54
|
+
context
|
|
55
55
|
});
|
|
56
56
|
},
|
|
57
57
|
hoc: function(param2, next) {
|
|
58
58
|
var App = param2.App;
|
|
59
59
|
if (!finalRouteConfig && !createRoutes) {
|
|
60
60
|
return next({
|
|
61
|
-
App
|
|
61
|
+
App
|
|
62
62
|
});
|
|
63
63
|
}
|
|
64
64
|
var getRouteApp = function() {
|
|
@@ -77,16 +77,16 @@ export var routerPlugin = function(param) {
|
|
|
77
77
|
}
|
|
78
78
|
routes = createRoutes ? createRoutes() : createRoutesFromElements(renderRoutes({
|
|
79
79
|
routesConfig: finalRouteConfig,
|
|
80
|
-
props
|
|
80
|
+
props
|
|
81
81
|
}));
|
|
82
82
|
var runner = api.useHookRunners();
|
|
83
83
|
routes = runner.modifyRoutes(routes);
|
|
84
84
|
var router = supportHtml5History ? createBrowserRouter(routes, {
|
|
85
85
|
basename: _basename,
|
|
86
|
-
hydrationData
|
|
86
|
+
hydrationData
|
|
87
87
|
}) : createHashRouter(routes, {
|
|
88
88
|
basename: _basename,
|
|
89
|
-
hydrationData
|
|
89
|
+
hydrationData
|
|
90
90
|
});
|
|
91
91
|
var originSubscribe = router.subscribe;
|
|
92
92
|
router.subscribe = function(listener) {
|
|
@@ -122,7 +122,7 @@ export var routerPlugin = function(param) {
|
|
|
122
122
|
var router = useCreateRouter(props);
|
|
123
123
|
return /* @__PURE__ */ _jsx(App, _object_spread_props(_object_spread({}, props), {
|
|
124
124
|
children: /* @__PURE__ */ _jsx(RouterProvider, {
|
|
125
|
-
router
|
|
125
|
+
router
|
|
126
126
|
})
|
|
127
127
|
}));
|
|
128
128
|
};
|
|
@@ -145,8 +145,8 @@ export var routerPlugin = function(param) {
|
|
|
145
145
|
var remixRouter = context.remixRouter;
|
|
146
146
|
if (!remixRouter) {
|
|
147
147
|
return next({
|
|
148
|
-
context
|
|
149
|
-
pickedContext
|
|
148
|
+
context,
|
|
149
|
+
pickedContext
|
|
150
150
|
});
|
|
151
151
|
}
|
|
152
152
|
var router = {
|
|
@@ -156,9 +156,9 @@ export var routerPlugin = function(param) {
|
|
|
156
156
|
}
|
|
157
157
|
};
|
|
158
158
|
return next({
|
|
159
|
-
context
|
|
159
|
+
context,
|
|
160
160
|
pickedContext: _object_spread_props(_object_spread({}, pickedContext), {
|
|
161
|
-
router
|
|
161
|
+
router
|
|
162
162
|
})
|
|
163
163
|
});
|
|
164
164
|
}
|
|
@@ -166,3 +166,9 @@ export var routerPlugin = function(param) {
|
|
|
166
166
|
}
|
|
167
167
|
};
|
|
168
168
|
};
|
|
169
|
+
export {
|
|
170
|
+
beforeCreateRouter,
|
|
171
|
+
finalRouteConfig,
|
|
172
|
+
modifyRoutes,
|
|
173
|
+
routerPlugin
|
|
174
|
+
};
|
|
@@ -29,7 +29,7 @@ function createFetchRequest(req) {
|
|
|
29
29
|
};
|
|
30
30
|
return new Request(url.href, init);
|
|
31
31
|
}
|
|
32
|
-
|
|
32
|
+
function createFetchHeaders(requestHeaders) {
|
|
33
33
|
var headers = new Headers();
|
|
34
34
|
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
|
|
35
35
|
try {
|
|
@@ -78,7 +78,7 @@ export function createFetchHeaders(requestHeaders) {
|
|
|
78
78
|
}
|
|
79
79
|
return headers;
|
|
80
80
|
}
|
|
81
|
-
|
|
81
|
+
var routerPlugin = function(param) {
|
|
82
82
|
var _param_basename = param.basename, basename = _param_basename === void 0 ? "" : _param_basename, routesConfig = param.routesConfig, createRoutes = param.createRoutes;
|
|
83
83
|
return {
|
|
84
84
|
name: "@modern-js/plugin-router",
|
|
@@ -98,7 +98,7 @@ export var routerPlugin = function(param) {
|
|
|
98
98
|
return [
|
|
99
99
|
2,
|
|
100
100
|
next({
|
|
101
|
-
context
|
|
101
|
+
context
|
|
102
102
|
})
|
|
103
103
|
];
|
|
104
104
|
}
|
|
@@ -109,12 +109,12 @@ export var routerPlugin = function(param) {
|
|
|
109
109
|
requestContext = createRequestContext();
|
|
110
110
|
requestContext.set(reporterCtx, reporter);
|
|
111
111
|
routes = createRoutes ? createRoutes() : createRoutesFromElements(renderRoutes({
|
|
112
|
-
routesConfig
|
|
113
|
-
ssrMode
|
|
112
|
+
routesConfig,
|
|
113
|
+
ssrMode,
|
|
114
114
|
props: {
|
|
115
|
-
nonce
|
|
115
|
+
nonce
|
|
116
116
|
},
|
|
117
|
-
reporter
|
|
117
|
+
reporter
|
|
118
118
|
}));
|
|
119
119
|
runner = api.useHookRunners();
|
|
120
120
|
routes = runner.modifyRoutes(routes);
|
|
@@ -126,7 +126,7 @@ export var routerPlugin = function(param) {
|
|
|
126
126
|
return [
|
|
127
127
|
4,
|
|
128
128
|
query(remixRequest, {
|
|
129
|
-
requestContext
|
|
129
|
+
requestContext
|
|
130
130
|
})
|
|
131
131
|
];
|
|
132
132
|
case 1:
|
|
@@ -148,7 +148,7 @@ export var routerPlugin = function(param) {
|
|
|
148
148
|
return [
|
|
149
149
|
2,
|
|
150
150
|
next({
|
|
151
|
-
context
|
|
151
|
+
context
|
|
152
152
|
})
|
|
153
153
|
];
|
|
154
154
|
}
|
|
@@ -159,7 +159,7 @@ export var routerPlugin = function(param) {
|
|
|
159
159
|
var App = param2.App;
|
|
160
160
|
if (!routesConfig) {
|
|
161
161
|
return next({
|
|
162
|
-
App
|
|
162
|
+
App
|
|
163
163
|
});
|
|
164
164
|
}
|
|
165
165
|
var getRouteApp = function() {
|
|
@@ -189,8 +189,8 @@ export var routerPlugin = function(param) {
|
|
|
189
189
|
var remixRouter = context.remixRouter;
|
|
190
190
|
if (!remixRouter) {
|
|
191
191
|
return next({
|
|
192
|
-
context
|
|
193
|
-
pickedContext
|
|
192
|
+
context,
|
|
193
|
+
pickedContext
|
|
194
194
|
});
|
|
195
195
|
}
|
|
196
196
|
var router = {
|
|
@@ -200,9 +200,9 @@ export var routerPlugin = function(param) {
|
|
|
200
200
|
}
|
|
201
201
|
};
|
|
202
202
|
return next({
|
|
203
|
-
context
|
|
203
|
+
context,
|
|
204
204
|
pickedContext: _object_spread_props(_object_spread({}, pickedContext), {
|
|
205
|
-
router
|
|
205
|
+
router
|
|
206
206
|
})
|
|
207
207
|
});
|
|
208
208
|
}
|
|
@@ -210,5 +210,10 @@ export var routerPlugin = function(param) {
|
|
|
210
210
|
}
|
|
211
211
|
};
|
|
212
212
|
};
|
|
213
|
-
|
|
213
|
+
var modifyRoutes = function() {
|
|
214
|
+
};
|
|
215
|
+
export {
|
|
216
|
+
createFetchHeaders,
|
|
217
|
+
modifyRoutes,
|
|
218
|
+
routerPlugin
|
|
214
219
|
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ROUTE_MODULES } from "@modern-js/utils/universal/constants";
|
|
2
|
+
var createShouldRevalidate = function(routeId) {
|
|
3
|
+
return function(arg) {
|
|
4
|
+
var _window_ROUTE_MODULES, _window;
|
|
5
|
+
var routeModule = (_window = window) === null || _window === void 0 ? void 0 : (_window_ROUTE_MODULES = _window[ROUTE_MODULES]) === null || _window_ROUTE_MODULES === void 0 ? void 0 : _window_ROUTE_MODULES[routeId];
|
|
6
|
+
if (routeModule && typeof routeModule.shouldRevalidate === "function") {
|
|
7
|
+
return routeModule.shouldRevalidate(arg);
|
|
8
|
+
}
|
|
9
|
+
return arg.defaultShouldRevalidate;
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
export {
|
|
13
|
+
createShouldRevalidate
|
|
14
|
+
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -9,7 +9,7 @@ import { ErrorResponse } from "@modern-js/runtime-utils/remix-router";
|
|
|
9
9
|
import { renderNestedRoute } from "@modern-js/runtime-utils/browser";
|
|
10
10
|
import { DefaultNotFound } from "./DefaultNotFound";
|
|
11
11
|
import DeferredDataScripts from "./DeferredDataScripts";
|
|
12
|
-
|
|
12
|
+
function getRouteComponents(routes, param) {
|
|
13
13
|
var globalApp = param.globalApp, ssrMode = param.ssrMode, props = param.props, reporter = param.reporter;
|
|
14
14
|
var Layout = function(_param) {
|
|
15
15
|
var Component = _param.Component, props2 = _object_without_properties(_param, [
|
|
@@ -20,7 +20,7 @@ export function getRouteComponents(routes, param) {
|
|
|
20
20
|
return /* @__PURE__ */ _jsx(Component, _object_spread({}, props2));
|
|
21
21
|
}
|
|
22
22
|
return /* @__PURE__ */ _jsx(GlobalLayout, _object_spread({
|
|
23
|
-
Component
|
|
23
|
+
Component
|
|
24
24
|
}, props2));
|
|
25
25
|
};
|
|
26
26
|
var routeElements = [];
|
|
@@ -31,8 +31,8 @@ export function getRouteComponents(routes, param) {
|
|
|
31
31
|
if (route.type === "nested") {
|
|
32
32
|
var routeElement = renderNestedRoute(route, {
|
|
33
33
|
DeferredDataComponent: ssrMode === "stream" ? DeferredDataScripts : void 0,
|
|
34
|
-
props
|
|
35
|
-
reporter
|
|
34
|
+
props,
|
|
35
|
+
reporter
|
|
36
36
|
});
|
|
37
37
|
routeElements.push(routeElement);
|
|
38
38
|
} else {
|
|
@@ -65,7 +65,7 @@ export function getRouteComponents(routes, param) {
|
|
|
65
65
|
}, "*"));
|
|
66
66
|
return routeElements;
|
|
67
67
|
}
|
|
68
|
-
|
|
68
|
+
function renderRoutes(param) {
|
|
69
69
|
var routesConfig = param.routesConfig, props = param.props, ssrMode = param.ssrMode, reporter = param.reporter;
|
|
70
70
|
if (!routesConfig) {
|
|
71
71
|
return null;
|
|
@@ -75,14 +75,14 @@ export function renderRoutes(param) {
|
|
|
75
75
|
return null;
|
|
76
76
|
}
|
|
77
77
|
var routeElements = getRouteComponents(routes, {
|
|
78
|
-
globalApp
|
|
79
|
-
ssrMode
|
|
80
|
-
props
|
|
81
|
-
reporter
|
|
78
|
+
globalApp,
|
|
79
|
+
ssrMode,
|
|
80
|
+
props,
|
|
81
|
+
reporter
|
|
82
82
|
});
|
|
83
83
|
return routeElements;
|
|
84
84
|
}
|
|
85
|
-
|
|
85
|
+
function getLocation(serverContext) {
|
|
86
86
|
var _url_replace;
|
|
87
87
|
var _ref = (serverContext === null || serverContext === void 0 ? void 0 : serverContext.request) || {}, pathname = _ref.pathname, url = _ref.url;
|
|
88
88
|
var cleanUrl = url === null || url === void 0 ? void 0 : (_url_replace = url.replace("http://", "")) === null || _url_replace === void 0 ? void 0 : _url_replace.replace("https://", "");
|
|
@@ -92,7 +92,7 @@ export function getLocation(serverContext) {
|
|
|
92
92
|
}
|
|
93
93
|
return cleanUrl.substring(index);
|
|
94
94
|
}
|
|
95
|
-
|
|
95
|
+
var urlJoin = function() {
|
|
96
96
|
for (var _len = arguments.length, parts = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
97
97
|
parts[_key] = arguments[_key];
|
|
98
98
|
}
|
|
@@ -100,7 +100,7 @@ export var urlJoin = function() {
|
|
|
100
100
|
var replace = new RegExp("".concat(separator, "{1,}"), "g");
|
|
101
101
|
return standardSlash(parts.join(separator).replace(replace, separator));
|
|
102
102
|
};
|
|
103
|
-
|
|
103
|
+
function standardSlash(str) {
|
|
104
104
|
var addr = str;
|
|
105
105
|
if (!addr || typeof addr !== "string") {
|
|
106
106
|
return addr;
|
|
@@ -116,7 +116,7 @@ export function standardSlash(str) {
|
|
|
116
116
|
}
|
|
117
117
|
return addr;
|
|
118
118
|
}
|
|
119
|
-
|
|
119
|
+
function serializeErrors(errors) {
|
|
120
120
|
if (!errors) {
|
|
121
121
|
return null;
|
|
122
122
|
}
|
|
@@ -156,7 +156,7 @@ export function serializeErrors(errors) {
|
|
|
156
156
|
}
|
|
157
157
|
return serialized;
|
|
158
158
|
}
|
|
159
|
-
|
|
159
|
+
function deserializeErrors(errors) {
|
|
160
160
|
if (!errors) {
|
|
161
161
|
return null;
|
|
162
162
|
}
|
|
@@ -192,3 +192,12 @@ export function deserializeErrors(errors) {
|
|
|
192
192
|
}
|
|
193
193
|
return serialized;
|
|
194
194
|
}
|
|
195
|
+
export {
|
|
196
|
+
deserializeErrors,
|
|
197
|
+
getLocation,
|
|
198
|
+
getRouteComponents,
|
|
199
|
+
renderRoutes,
|
|
200
|
+
serializeErrors,
|
|
201
|
+
standardSlash,
|
|
202
|
+
urlJoin
|
|
203
|
+
};
|
|
@@ -2,15 +2,18 @@ import { _ as _object_spread } from "@swc/helpers/_/_object_spread";
|
|
|
2
2
|
import { _ as _object_spread_props } from "@swc/helpers/_/_object_spread_props";
|
|
3
3
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
4
4
|
import { useLocation, useNavigate, useParams } from "@modern-js/runtime-utils/router";
|
|
5
|
-
|
|
5
|
+
var withRouter = function(Component) {
|
|
6
6
|
return function(props) {
|
|
7
7
|
var location = useLocation();
|
|
8
8
|
var params = useParams();
|
|
9
9
|
var navigate = useNavigate();
|
|
10
10
|
return /* @__PURE__ */ _jsx(Component, _object_spread_props(_object_spread({}, props), {
|
|
11
|
-
location
|
|
12
|
-
params
|
|
13
|
-
navigate
|
|
11
|
+
location,
|
|
12
|
+
params,
|
|
13
|
+
navigate
|
|
14
14
|
}));
|
|
15
15
|
};
|
|
16
16
|
};
|
|
17
|
+
export {
|
|
18
|
+
withRouter
|
|
19
|
+
};
|
|
@@ -1,3 +1,7 @@
|
|
|
1
1
|
import { createContext } from "react";
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
var RuntimeReactContext = createContext({});
|
|
3
|
+
var ServerRouterContext = createContext({});
|
|
4
|
+
export {
|
|
5
|
+
RuntimeReactContext,
|
|
6
|
+
ServerRouterContext
|
|
7
|
+
};
|