@bleedingdev/modern-js-runtime 3.2.0-ultramodern.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/LICENSE +21 -0
- package/README.md +32 -0
- package/dist/cjs/cache/index.js +58 -0
- package/dist/cjs/cli/alias.js +68 -0
- package/dist/cjs/cli/code.js +193 -0
- package/dist/cjs/cli/constants.js +68 -0
- package/dist/cjs/cli/entry.js +53 -0
- package/dist/cjs/cli/index.js +166 -0
- package/dist/cjs/cli/ssr/index.js +240 -0
- package/dist/cjs/cli/ssr/loadable-bundler-plugin.js +131 -0
- package/dist/cjs/cli/ssr/mode.js +48 -0
- package/dist/cjs/cli/template.js +276 -0
- package/dist/cjs/cli/template.server.js +163 -0
- package/dist/cjs/common.js +44 -0
- package/dist/cjs/core/browser/hydrate.js +91 -0
- package/dist/cjs/core/browser/index.js +150 -0
- package/dist/cjs/core/browser/withCallback.js +47 -0
- package/dist/cjs/core/compat/hooks.js +75 -0
- package/dist/cjs/core/compat/index.js +46 -0
- package/dist/cjs/core/compat/requestContext.js +59 -0
- package/dist/cjs/core/config.js +36 -0
- package/dist/cjs/core/constants.js +48 -0
- package/dist/cjs/core/context/index.js +124 -0
- package/dist/cjs/core/context/monitors/default.js +44 -0
- package/dist/cjs/core/context/monitors/index.js +37 -0
- package/dist/cjs/core/context/monitors/index.server.js +41 -0
- package/dist/cjs/core/context/request/index.js +36 -0
- package/dist/cjs/core/context/request/index.server.js +40 -0
- package/dist/cjs/core/context/response/index.js +50 -0
- package/dist/cjs/core/context/response/index.server.js +71 -0
- package/dist/cjs/core/context/runtime.js +65 -0
- package/dist/cjs/core/context/serverPayload/index.js +40 -0
- package/dist/cjs/core/context/serverPayload/index.server.js +47 -0
- package/dist/cjs/core/index.js +43 -0
- package/dist/cjs/core/plugin/index.js +62 -0
- package/dist/cjs/core/plugin/types.js +18 -0
- package/dist/cjs/core/react/index.js +50 -0
- package/dist/cjs/core/react/wrapper.js +55 -0
- package/dist/cjs/core/server/constants.js +48 -0
- package/dist/cjs/core/server/helmet.js +75 -0
- package/dist/cjs/core/server/index.js +50 -0
- package/dist/cjs/core/server/react/index.js +40 -0
- package/dist/cjs/core/server/react/no-ssr-cache/index.js +43 -0
- package/dist/cjs/core/server/react/nossr/index.js +54 -0
- package/dist/cjs/core/server/requestHandler.js +218 -0
- package/dist/cjs/core/server/server.js +44 -0
- package/dist/cjs/core/server/shared.js +38 -0
- package/dist/cjs/core/server/stream/afterTemplate.js +103 -0
- package/dist/cjs/core/server/stream/beforeTemplate.js +111 -0
- package/dist/cjs/core/server/stream/createReadableStream.js +161 -0
- package/dist/cjs/core/server/stream/createReadableStream.worker.js +141 -0
- package/dist/cjs/core/server/stream/deferredScript.js +114 -0
- package/dist/cjs/core/server/stream/index.js +38 -0
- package/dist/cjs/core/server/stream/shared.js +154 -0
- package/dist/cjs/core/server/stream/template.js +47 -0
- package/dist/cjs/core/server/string/index.js +149 -0
- package/dist/cjs/core/server/string/loadable.js +146 -0
- package/dist/cjs/core/server/string/ssrData.js +151 -0
- package/dist/cjs/core/server/string/types.js +18 -0
- package/dist/cjs/core/server/tracer.js +52 -0
- package/dist/cjs/core/server/utils.js +88 -0
- package/dist/cjs/core/types.js +18 -0
- package/dist/cjs/document/Body.js +54 -0
- package/dist/cjs/document/Comment.js +49 -0
- package/dist/cjs/document/DocumentContext.js +51 -0
- package/dist/cjs/document/DocumentStructureContext.js +54 -0
- package/dist/cjs/document/Head.js +66 -0
- package/dist/cjs/document/Html.js +120 -0
- package/dist/cjs/document/Links.js +43 -0
- package/dist/cjs/document/Root.js +66 -0
- package/dist/cjs/document/Script.js +55 -0
- package/dist/cjs/document/Scripts.js +43 -0
- package/dist/cjs/document/Style.js +50 -0
- package/dist/cjs/document/Title.js +42 -0
- package/dist/cjs/document/cli/index.js +401 -0
- package/dist/cjs/document/constants.js +134 -0
- package/dist/cjs/document/index.js +135 -0
- package/dist/cjs/exports/config-routes.js +38 -0
- package/dist/cjs/exports/head.js +51 -0
- package/dist/cjs/exports/loadable.js +66 -0
- package/dist/cjs/exports/tanstack-router.js +91 -0
- package/dist/cjs/index.js +64 -0
- package/dist/cjs/internal.js +36 -0
- package/dist/cjs/react-server.js +50 -0
- package/dist/cjs/router/cli/code/getClientRoutes/getRoutes.js +159 -0
- package/dist/cjs/router/cli/code/getClientRoutes/index.js +36 -0
- package/dist/cjs/router/cli/code/getClientRoutes/utils.js +62 -0
- package/dist/cjs/router/cli/code/index.js +238 -0
- package/dist/cjs/router/cli/code/inspect.js +139 -0
- package/dist/cjs/router/cli/code/makeLegalIdentifier.js +43 -0
- package/dist/cjs/router/cli/code/nestedRoutes.js +233 -0
- package/dist/cjs/router/cli/code/tanstackTypes.js +378 -0
- package/dist/cjs/router/cli/code/templates.js +446 -0
- package/dist/cjs/router/cli/code/utils.js +151 -0
- package/dist/cjs/router/cli/config-routes/converter.js +129 -0
- package/dist/cjs/router/cli/config-routes/parseRouteConfig.js +155 -0
- package/dist/cjs/router/cli/constants.js +99 -0
- package/dist/cjs/router/cli/entry.js +105 -0
- package/dist/cjs/router/cli/handler.js +131 -0
- package/dist/cjs/router/cli/index.js +194 -0
- package/dist/cjs/router/index.js +58 -0
- package/dist/cjs/router/internal.js +64 -0
- package/dist/cjs/router/runtime/CSSLinks.js +46 -0
- package/dist/cjs/router/runtime/DefaultNotFound.js +47 -0
- package/dist/cjs/router/runtime/DeferredDataScripts.js +36 -0
- package/dist/cjs/router/runtime/DeferredDataScripts.node.js +154 -0
- package/dist/cjs/router/runtime/PrefetchLink.js +201 -0
- package/dist/cjs/router/runtime/constants.js +65 -0
- package/dist/cjs/router/runtime/hooks.js +57 -0
- package/dist/cjs/router/runtime/index.js +95 -0
- package/dist/cjs/router/runtime/internal.js +67 -0
- package/dist/cjs/router/runtime/lifecycle.js +148 -0
- package/dist/cjs/router/runtime/plugin.js +262 -0
- package/dist/cjs/router/runtime/plugin.node.js +226 -0
- package/dist/cjs/router/runtime/routerHelper.js +55 -0
- package/dist/cjs/router/runtime/rsc-router.js +377 -0
- package/dist/cjs/router/runtime/rsc.js +58 -0
- package/dist/cjs/router/runtime/server.js +58 -0
- package/dist/cjs/router/runtime/tanstack/basepathRewrite.js +62 -0
- package/dist/cjs/router/runtime/tanstack/dataMutation.js +345 -0
- package/dist/cjs/router/runtime/tanstack/plugin.js +239 -0
- package/dist/cjs/router/runtime/tanstack/plugin.node.js +278 -0
- package/dist/cjs/router/runtime/tanstack/prefetchLink.js +55 -0
- package/dist/cjs/router/runtime/tanstack/routeTree.js +469 -0
- package/dist/cjs/router/runtime/tanstack/rsc/ClientSlot.js +53 -0
- package/dist/cjs/router/runtime/tanstack/rsc/CompositeComponent.js +75 -0
- package/dist/cjs/router/runtime/tanstack/rsc/ReplayableStream.js +141 -0
- package/dist/cjs/router/runtime/tanstack/rsc/RscNodeRenderer.js +65 -0
- package/dist/cjs/router/runtime/tanstack/rsc/SlotContext.js +54 -0
- package/dist/cjs/router/runtime/tanstack/rsc/client.js +93 -0
- package/dist/cjs/router/runtime/tanstack/rsc/createRscProxy.js +141 -0
- package/dist/cjs/router/runtime/tanstack/rsc/index.js +42 -0
- package/dist/cjs/router/runtime/tanstack/rsc/server.js +246 -0
- package/dist/cjs/router/runtime/tanstack/rsc/slotUsageSanitizer.js +65 -0
- package/dist/cjs/router/runtime/tanstack/rsc/symbols.js +72 -0
- package/dist/cjs/router/runtime/types.js +18 -0
- package/dist/cjs/router/runtime/utils.js +243 -0
- package/dist/cjs/router/runtime/withRouter.js +48 -0
- package/dist/cjs/rsc/client.js +68 -0
- package/dist/cjs/rsc/server.js +58 -0
- package/dist/cjs/ssr/index.node.js +121 -0
- package/dist/cjs/ssr/serverRender/renderToStream/buildTemplate.after.js +84 -0
- package/dist/cjs/ssr/serverRender/renderToString/entry.js +195 -0
- package/dist/cjs/ssr/serverRender/types.js +36 -0
- package/dist/esm/cache/index.mjs +1 -0
- package/dist/esm/cli/alias.mjs +24 -0
- package/dist/esm/cli/code.mjs +149 -0
- package/dist/esm/cli/constants.mjs +10 -0
- package/dist/esm/cli/entry.mjs +6 -0
- package/dist/esm/cli/index.mjs +93 -0
- package/dist/esm/cli/ssr/index.mjs +190 -0
- package/dist/esm/cli/ssr/loadable-bundler-plugin.mjs +87 -0
- package/dist/esm/cli/ssr/mode.mjs +14 -0
- package/dist/esm/cli/template.mjs +211 -0
- package/dist/esm/cli/template.server.mjs +126 -0
- package/dist/esm/common.mjs +4 -0
- package/dist/esm/core/browser/hydrate.mjs +53 -0
- package/dist/esm/core/browser/index.mjs +104 -0
- package/dist/esm/core/browser/withCallback.mjs +13 -0
- package/dist/esm/core/compat/hooks.mjs +35 -0
- package/dist/esm/core/compat/index.mjs +12 -0
- package/dist/esm/core/compat/requestContext.mjs +22 -0
- package/dist/esm/core/config.mjs +2 -0
- package/dist/esm/core/constants.mjs +8 -0
- package/dist/esm/core/context/index.mjs +45 -0
- package/dist/esm/core/context/monitors/default.mjs +10 -0
- package/dist/esm/core/context/monitors/index.mjs +3 -0
- package/dist/esm/core/context/monitors/index.server.mjs +7 -0
- package/dist/esm/core/context/request/index.mjs +2 -0
- package/dist/esm/core/context/request/index.server.mjs +6 -0
- package/dist/esm/core/context/response/index.mjs +7 -0
- package/dist/esm/core/context/response/index.server.mjs +28 -0
- package/dist/esm/core/context/runtime.mjs +19 -0
- package/dist/esm/core/context/serverPayload/index.mjs +3 -0
- package/dist/esm/core/context/serverPayload/index.server.mjs +10 -0
- package/dist/esm/core/index.mjs +2 -0
- package/dist/esm/core/plugin/index.mjs +25 -0
- package/dist/esm/core/plugin/types.mjs +0 -0
- package/dist/esm/core/react/index.mjs +16 -0
- package/dist/esm/core/react/wrapper.mjs +21 -0
- package/dist/esm/core/server/constants.mjs +5 -0
- package/dist/esm/core/server/helmet.mjs +38 -0
- package/dist/esm/core/server/index.mjs +8 -0
- package/dist/esm/core/server/react/index.mjs +2 -0
- package/dist/esm/core/server/react/no-ssr-cache/index.mjs +9 -0
- package/dist/esm/core/server/react/nossr/index.mjs +10 -0
- package/dist/esm/core/server/requestHandler.mjs +174 -0
- package/dist/esm/core/server/server.mjs +3 -0
- package/dist/esm/core/server/shared.mjs +4 -0
- package/dist/esm/core/server/stream/afterTemplate.mjs +69 -0
- package/dist/esm/core/server/stream/beforeTemplate.mjs +67 -0
- package/dist/esm/core/server/stream/createReadableStream.mjs +127 -0
- package/dist/esm/core/server/stream/createReadableStream.worker.mjs +107 -0
- package/dist/esm/core/server/stream/deferredScript.mjs +62 -0
- package/dist/esm/core/server/stream/index.mjs +4 -0
- package/dist/esm/core/server/stream/shared.mjs +108 -0
- package/dist/esm/core/server/stream/template.mjs +13 -0
- package/dist/esm/core/server/string/index.mjs +104 -0
- package/dist/esm/core/server/string/loadable.mjs +112 -0
- package/dist/esm/core/server/string/ssrData.mjs +117 -0
- package/dist/esm/core/server/string/types.mjs +0 -0
- package/dist/esm/core/server/tracer.mjs +15 -0
- package/dist/esm/core/server/utils.mjs +39 -0
- package/dist/esm/core/types.mjs +0 -0
- package/dist/esm/document/Body.mjs +20 -0
- package/dist/esm/document/Comment.mjs +15 -0
- package/dist/esm/document/DocumentContext.mjs +7 -0
- package/dist/esm/document/DocumentStructureContext.mjs +10 -0
- package/dist/esm/document/Head.mjs +29 -0
- package/dist/esm/document/Html.mjs +86 -0
- package/dist/esm/document/Links.mjs +9 -0
- package/dist/esm/document/Root.mjs +29 -0
- package/dist/esm/document/Script.mjs +21 -0
- package/dist/esm/document/Scripts.mjs +9 -0
- package/dist/esm/document/Style.mjs +16 -0
- package/dist/esm/document/Title.mjs +8 -0
- package/dist/esm/document/cli/index.mjs +351 -0
- package/dist/esm/document/constants.mjs +34 -0
- package/dist/esm/document/index.mjs +12 -0
- package/dist/esm/exports/config-routes.mjs +4 -0
- package/dist/esm/exports/head.mjs +5 -0
- package/dist/esm/exports/loadable.mjs +4 -0
- package/dist/esm/exports/tanstack-router.mjs +3 -0
- package/dist/esm/index.mjs +5 -0
- package/dist/esm/internal.mjs +1 -0
- package/dist/esm/react-server.mjs +3 -0
- package/dist/esm/router/cli/code/getClientRoutes/getRoutes.mjs +115 -0
- package/dist/esm/router/cli/code/getClientRoutes/index.mjs +1 -0
- package/dist/esm/router/cli/code/getClientRoutes/utils.mjs +12 -0
- package/dist/esm/router/cli/code/index.mjs +185 -0
- package/dist/esm/router/cli/code/inspect.mjs +95 -0
- package/dist/esm/router/cli/code/makeLegalIdentifier.mjs +9 -0
- package/dist/esm/router/cli/code/nestedRoutes.mjs +193 -0
- package/dist/esm/router/cli/code/tanstackTypes.mjs +331 -0
- package/dist/esm/router/cli/code/templates.mjs +393 -0
- package/dist/esm/router/cli/code/utils.mjs +82 -0
- package/dist/esm/router/cli/config-routes/converter.mjs +82 -0
- package/dist/esm/router/cli/config-routes/parseRouteConfig.mjs +105 -0
- package/dist/esm/router/cli/constants.mjs +32 -0
- package/dist/esm/router/cli/entry.mjs +40 -0
- package/dist/esm/router/cli/handler.mjs +81 -0
- package/dist/esm/router/cli/index.mjs +127 -0
- package/dist/esm/router/index.mjs +1 -0
- package/dist/esm/router/internal.mjs +2 -0
- package/dist/esm/router/runtime/CSSLinks.mjs +12 -0
- package/dist/esm/router/runtime/DefaultNotFound.mjs +13 -0
- package/dist/esm/router/runtime/DeferredDataScripts.mjs +2 -0
- package/dist/esm/router/runtime/DeferredDataScripts.node.mjs +120 -0
- package/dist/esm/router/runtime/PrefetchLink.mjs +154 -0
- package/dist/esm/router/runtime/constants.mjs +10 -0
- package/dist/esm/router/runtime/hooks.mjs +8 -0
- package/dist/esm/router/runtime/index.mjs +9 -0
- package/dist/esm/router/runtime/internal.mjs +25 -0
- package/dist/esm/router/runtime/lifecycle.mjs +96 -0
- package/dist/esm/router/runtime/plugin.mjs +219 -0
- package/dist/esm/router/runtime/plugin.node.mjs +179 -0
- package/dist/esm/router/runtime/routerHelper.mjs +15 -0
- package/dist/esm/router/runtime/rsc-router.mjs +321 -0
- package/dist/esm/router/runtime/rsc.mjs +1 -0
- package/dist/esm/router/runtime/server.mjs +1 -0
- package/dist/esm/router/runtime/tanstack/basepathRewrite.mjs +28 -0
- package/dist/esm/router/runtime/tanstack/dataMutation.mjs +305 -0
- package/dist/esm/router/runtime/tanstack/plugin.mjs +205 -0
- package/dist/esm/router/runtime/tanstack/plugin.node.mjs +244 -0
- package/dist/esm/router/runtime/tanstack/prefetchLink.mjs +18 -0
- package/dist/esm/router/runtime/tanstack/routeTree.mjs +429 -0
- package/dist/esm/router/runtime/tanstack/rsc/ClientSlot.mjs +19 -0
- package/dist/esm/router/runtime/tanstack/rsc/CompositeComponent.mjs +41 -0
- package/dist/esm/router/runtime/tanstack/rsc/ReplayableStream.mjs +104 -0
- package/dist/esm/router/runtime/tanstack/rsc/RscNodeRenderer.mjs +31 -0
- package/dist/esm/router/runtime/tanstack/rsc/SlotContext.mjs +17 -0
- package/dist/esm/router/runtime/tanstack/rsc/client.mjs +53 -0
- package/dist/esm/router/runtime/tanstack/rsc/createRscProxy.mjs +107 -0
- package/dist/esm/router/runtime/tanstack/rsc/index.mjs +1 -0
- package/dist/esm/router/runtime/tanstack/rsc/server.mjs +200 -0
- package/dist/esm/router/runtime/tanstack/rsc/slotUsageSanitizer.mjs +31 -0
- package/dist/esm/router/runtime/tanstack/rsc/symbols.mjs +17 -0
- package/dist/esm/router/runtime/types.mjs +0 -0
- package/dist/esm/router/runtime/utils.mjs +174 -0
- package/dist/esm/router/runtime/withRouter.mjs +14 -0
- package/dist/esm/rsc/client.mjs +3 -0
- package/dist/esm/rsc/server.mjs +1 -0
- package/dist/esm/ssr/index.node.mjs +44 -0
- package/dist/esm/ssr/serverRender/renderToStream/buildTemplate.after.mjs +50 -0
- package/dist/esm/ssr/serverRender/renderToString/entry.mjs +148 -0
- package/dist/esm/ssr/serverRender/types.mjs +1 -0
- package/dist/esm-node/cache/index.mjs +2 -0
- package/dist/esm-node/cli/alias.mjs +25 -0
- package/dist/esm-node/cli/code.mjs +150 -0
- package/dist/esm-node/cli/constants.mjs +11 -0
- package/dist/esm-node/cli/entry.mjs +7 -0
- package/dist/esm-node/cli/index.mjs +95 -0
- package/dist/esm-node/cli/ssr/index.mjs +192 -0
- package/dist/esm-node/cli/ssr/loadable-bundler-plugin.mjs +88 -0
- package/dist/esm-node/cli/ssr/mode.mjs +15 -0
- package/dist/esm-node/cli/template.mjs +212 -0
- package/dist/esm-node/cli/template.server.mjs +127 -0
- package/dist/esm-node/common.mjs +5 -0
- package/dist/esm-node/core/browser/hydrate.mjs +54 -0
- package/dist/esm-node/core/browser/index.mjs +105 -0
- package/dist/esm-node/core/browser/withCallback.mjs +14 -0
- package/dist/esm-node/core/compat/hooks.mjs +36 -0
- package/dist/esm-node/core/compat/index.mjs +13 -0
- package/dist/esm-node/core/compat/requestContext.mjs +23 -0
- package/dist/esm-node/core/config.mjs +3 -0
- package/dist/esm-node/core/constants.mjs +9 -0
- package/dist/esm-node/core/context/index.mjs +46 -0
- package/dist/esm-node/core/context/monitors/default.mjs +11 -0
- package/dist/esm-node/core/context/monitors/index.mjs +4 -0
- package/dist/esm-node/core/context/monitors/index.server.mjs +8 -0
- package/dist/esm-node/core/context/request/index.mjs +3 -0
- package/dist/esm-node/core/context/request/index.server.mjs +7 -0
- package/dist/esm-node/core/context/response/index.mjs +8 -0
- package/dist/esm-node/core/context/response/index.server.mjs +29 -0
- package/dist/esm-node/core/context/runtime.mjs +20 -0
- package/dist/esm-node/core/context/serverPayload/index.mjs +4 -0
- package/dist/esm-node/core/context/serverPayload/index.server.mjs +11 -0
- package/dist/esm-node/core/index.mjs +3 -0
- package/dist/esm-node/core/plugin/index.mjs +26 -0
- package/dist/esm-node/core/plugin/types.mjs +1 -0
- package/dist/esm-node/core/react/index.mjs +17 -0
- package/dist/esm-node/core/react/wrapper.mjs +22 -0
- package/dist/esm-node/core/server/constants.mjs +6 -0
- package/dist/esm-node/core/server/helmet.mjs +39 -0
- package/dist/esm-node/core/server/index.mjs +9 -0
- package/dist/esm-node/core/server/react/index.mjs +3 -0
- package/dist/esm-node/core/server/react/no-ssr-cache/index.mjs +10 -0
- package/dist/esm-node/core/server/react/nossr/index.mjs +11 -0
- package/dist/esm-node/core/server/requestHandler.mjs +175 -0
- package/dist/esm-node/core/server/server.mjs +4 -0
- package/dist/esm-node/core/server/shared.mjs +5 -0
- package/dist/esm-node/core/server/stream/afterTemplate.mjs +70 -0
- package/dist/esm-node/core/server/stream/beforeTemplate.mjs +71 -0
- package/dist/esm-node/core/server/stream/createReadableStream.mjs +128 -0
- package/dist/esm-node/core/server/stream/createReadableStream.worker.mjs +108 -0
- package/dist/esm-node/core/server/stream/deferredScript.mjs +63 -0
- package/dist/esm-node/core/server/stream/index.mjs +5 -0
- package/dist/esm-node/core/server/stream/shared.mjs +109 -0
- package/dist/esm-node/core/server/stream/template.mjs +14 -0
- package/dist/esm-node/core/server/string/index.mjs +105 -0
- package/dist/esm-node/core/server/string/loadable.mjs +116 -0
- package/dist/esm-node/core/server/string/ssrData.mjs +118 -0
- package/dist/esm-node/core/server/string/types.mjs +1 -0
- package/dist/esm-node/core/server/tracer.mjs +16 -0
- package/dist/esm-node/core/server/utils.mjs +40 -0
- package/dist/esm-node/core/types.mjs +1 -0
- package/dist/esm-node/document/Body.mjs +21 -0
- package/dist/esm-node/document/Comment.mjs +16 -0
- package/dist/esm-node/document/DocumentContext.mjs +8 -0
- package/dist/esm-node/document/DocumentStructureContext.mjs +11 -0
- package/dist/esm-node/document/Head.mjs +30 -0
- package/dist/esm-node/document/Html.mjs +87 -0
- package/dist/esm-node/document/Links.mjs +10 -0
- package/dist/esm-node/document/Root.mjs +30 -0
- package/dist/esm-node/document/Script.mjs +22 -0
- package/dist/esm-node/document/Scripts.mjs +10 -0
- package/dist/esm-node/document/Style.mjs +17 -0
- package/dist/esm-node/document/Title.mjs +9 -0
- package/dist/esm-node/document/cli/index.mjs +353 -0
- package/dist/esm-node/document/constants.mjs +35 -0
- package/dist/esm-node/document/index.mjs +13 -0
- package/dist/esm-node/exports/config-routes.mjs +5 -0
- package/dist/esm-node/exports/head.mjs +6 -0
- package/dist/esm-node/exports/loadable.mjs +5 -0
- package/dist/esm-node/exports/tanstack-router.mjs +4 -0
- package/dist/esm-node/index.mjs +6 -0
- package/dist/esm-node/internal.mjs +2 -0
- package/dist/esm-node/react-server.mjs +4 -0
- package/dist/esm-node/router/cli/code/getClientRoutes/getRoutes.mjs +116 -0
- package/dist/esm-node/router/cli/code/getClientRoutes/index.mjs +2 -0
- package/dist/esm-node/router/cli/code/getClientRoutes/utils.mjs +13 -0
- package/dist/esm-node/router/cli/code/index.mjs +186 -0
- package/dist/esm-node/router/cli/code/inspect.mjs +96 -0
- package/dist/esm-node/router/cli/code/makeLegalIdentifier.mjs +10 -0
- package/dist/esm-node/router/cli/code/nestedRoutes.mjs +194 -0
- package/dist/esm-node/router/cli/code/tanstackTypes.mjs +332 -0
- package/dist/esm-node/router/cli/code/templates.mjs +395 -0
- package/dist/esm-node/router/cli/code/utils.mjs +83 -0
- package/dist/esm-node/router/cli/config-routes/converter.mjs +83 -0
- package/dist/esm-node/router/cli/config-routes/parseRouteConfig.mjs +106 -0
- package/dist/esm-node/router/cli/constants.mjs +33 -0
- package/dist/esm-node/router/cli/entry.mjs +41 -0
- package/dist/esm-node/router/cli/handler.mjs +82 -0
- package/dist/esm-node/router/cli/index.mjs +131 -0
- package/dist/esm-node/router/index.mjs +2 -0
- package/dist/esm-node/router/internal.mjs +3 -0
- package/dist/esm-node/router/runtime/CSSLinks.mjs +13 -0
- package/dist/esm-node/router/runtime/DefaultNotFound.mjs +14 -0
- package/dist/esm-node/router/runtime/DeferredDataScripts.mjs +3 -0
- package/dist/esm-node/router/runtime/DeferredDataScripts.node.mjs +121 -0
- package/dist/esm-node/router/runtime/PrefetchLink.mjs +155 -0
- package/dist/esm-node/router/runtime/constants.mjs +11 -0
- package/dist/esm-node/router/runtime/hooks.mjs +9 -0
- package/dist/esm-node/router/runtime/index.mjs +10 -0
- package/dist/esm-node/router/runtime/internal.mjs +26 -0
- package/dist/esm-node/router/runtime/lifecycle.mjs +97 -0
- package/dist/esm-node/router/runtime/plugin.mjs +220 -0
- package/dist/esm-node/router/runtime/plugin.node.mjs +180 -0
- package/dist/esm-node/router/runtime/routerHelper.mjs +16 -0
- package/dist/esm-node/router/runtime/rsc-router.mjs +322 -0
- package/dist/esm-node/router/runtime/rsc.mjs +2 -0
- package/dist/esm-node/router/runtime/server.mjs +2 -0
- package/dist/esm-node/router/runtime/tanstack/basepathRewrite.mjs +29 -0
- package/dist/esm-node/router/runtime/tanstack/dataMutation.mjs +306 -0
- package/dist/esm-node/router/runtime/tanstack/plugin.mjs +206 -0
- package/dist/esm-node/router/runtime/tanstack/plugin.node.mjs +245 -0
- package/dist/esm-node/router/runtime/tanstack/prefetchLink.mjs +19 -0
- package/dist/esm-node/router/runtime/tanstack/routeTree.mjs +430 -0
- package/dist/esm-node/router/runtime/tanstack/rsc/ClientSlot.mjs +20 -0
- package/dist/esm-node/router/runtime/tanstack/rsc/CompositeComponent.mjs +42 -0
- package/dist/esm-node/router/runtime/tanstack/rsc/ReplayableStream.mjs +105 -0
- package/dist/esm-node/router/runtime/tanstack/rsc/RscNodeRenderer.mjs +32 -0
- package/dist/esm-node/router/runtime/tanstack/rsc/SlotContext.mjs +18 -0
- package/dist/esm-node/router/runtime/tanstack/rsc/client.mjs +54 -0
- package/dist/esm-node/router/runtime/tanstack/rsc/createRscProxy.mjs +108 -0
- package/dist/esm-node/router/runtime/tanstack/rsc/index.mjs +2 -0
- package/dist/esm-node/router/runtime/tanstack/rsc/server.mjs +201 -0
- package/dist/esm-node/router/runtime/tanstack/rsc/slotUsageSanitizer.mjs +32 -0
- package/dist/esm-node/router/runtime/tanstack/rsc/symbols.mjs +18 -0
- package/dist/esm-node/router/runtime/types.mjs +1 -0
- package/dist/esm-node/router/runtime/utils.mjs +175 -0
- package/dist/esm-node/router/runtime/withRouter.mjs +15 -0
- package/dist/esm-node/rsc/client.mjs +4 -0
- package/dist/esm-node/rsc/server.mjs +2 -0
- package/dist/esm-node/ssr/index.node.mjs +45 -0
- package/dist/esm-node/ssr/serverRender/renderToStream/buildTemplate.after.mjs +51 -0
- package/dist/esm-node/ssr/serverRender/renderToString/entry.mjs +149 -0
- package/dist/esm-node/ssr/serverRender/types.mjs +2 -0
- package/dist/types/cache/index.d.ts +1 -0
- package/dist/types/cli/alias.d.ts +7 -0
- package/dist/types/cli/code.d.ts +3 -0
- package/dist/types/cli/constants.d.ts +9 -0
- package/dist/types/cli/entry.d.ts +2 -0
- package/dist/types/cli/index.d.ts +11 -0
- package/dist/types/cli/ssr/index.d.ts +6 -0
- package/dist/types/cli/ssr/loadable-bundler-plugin.d.ts +31 -0
- package/dist/types/cli/ssr/mode.d.ts +15 -0
- package/dist/types/cli/template.d.ts +50 -0
- package/dist/types/cli/template.server.d.ts +20 -0
- package/dist/types/common.d.ts +8 -0
- package/dist/types/core/browser/hydrate.d.ts +5 -0
- package/dist/types/core/browser/index.d.ts +9 -0
- package/dist/types/core/browser/withCallback.d.ts +5 -0
- package/dist/types/core/compat/hooks.d.ts +4 -0
- package/dist/types/core/compat/index.d.ts +2 -0
- package/dist/types/core/compat/requestContext.d.ts +5 -0
- package/dist/types/core/config.d.ts +6 -0
- package/dist/types/core/constants.d.ts +6 -0
- package/dist/types/core/context/index.d.ts +50 -0
- package/dist/types/core/context/monitors/default.d.ts +2 -0
- package/dist/types/core/context/monitors/index.d.ts +1 -0
- package/dist/types/core/context/monitors/index.server.d.ts +2 -0
- package/dist/types/core/context/request/index.d.ts +1 -0
- package/dist/types/core/context/request/index.server.d.ts +1 -0
- package/dist/types/core/context/response/index.d.ts +4 -0
- package/dist/types/core/context/response/index.server.d.ts +7 -0
- package/dist/types/core/context/runtime.d.ts +42 -0
- package/dist/types/core/context/serverPayload/index.d.ts +4 -0
- package/dist/types/core/context/serverPayload/index.server.d.ts +31 -0
- package/dist/types/core/index.d.ts +5 -0
- package/dist/types/core/plugin/index.d.ts +4 -0
- package/dist/types/core/plugin/types.d.ts +10 -0
- package/dist/types/core/react/index.d.ts +2 -0
- package/dist/types/core/react/wrapper.d.ts +3 -0
- package/dist/types/core/server/constants.d.ts +4 -0
- package/dist/types/core/server/helmet.d.ts +3 -0
- package/dist/types/core/server/index.d.ts +4 -0
- package/dist/types/core/server/react/index.d.ts +2 -0
- package/dist/types/core/server/react/no-ssr-cache/index.d.ts +2 -0
- package/dist/types/core/server/react/nossr/index.d.ts +4 -0
- package/dist/types/core/server/requestHandler.d.ts +13 -0
- package/dist/types/core/server/server.d.ts +4 -0
- package/dist/types/core/server/shared.d.ts +8 -0
- package/dist/types/core/server/stream/afterTemplate.d.ts +13 -0
- package/dist/types/core/server/stream/beforeTemplate.d.ts +9 -0
- package/dist/types/core/server/stream/createReadableStream.d.ts +2 -0
- package/dist/types/core/server/stream/createReadableStream.worker.d.ts +2 -0
- package/dist/types/core/server/stream/deferredScript.d.ts +15 -0
- package/dist/types/core/server/stream/index.d.ts +1 -0
- package/dist/types/core/server/stream/shared.d.ts +33 -0
- package/dist/types/core/server/stream/template.d.ts +9 -0
- package/dist/types/core/server/string/index.d.ts +2 -0
- package/dist/types/core/server/string/loadable.d.ts +36 -0
- package/dist/types/core/server/string/ssrData.d.ts +20 -0
- package/dist/types/core/server/string/types.d.ts +12 -0
- package/dist/types/core/server/tracer.d.ts +17 -0
- package/dist/types/core/server/utils.d.ts +29 -0
- package/dist/types/core/types.d.ts +49 -0
- package/dist/types/document/Body.d.ts +2 -0
- package/dist/types/document/Comment.d.ts +5 -0
- package/dist/types/document/DocumentContext.d.ts +13 -0
- package/dist/types/document/DocumentStructureContext.d.ts +12 -0
- package/dist/types/document/Head.d.ts +5 -0
- package/dist/types/document/Html.d.ts +4 -0
- package/dist/types/document/Links.d.ts +2 -0
- package/dist/types/document/Root.d.ts +7 -0
- package/dist/types/document/Script.d.ts +4 -0
- package/dist/types/document/Scripts.d.ts +2 -0
- package/dist/types/document/Style.d.ts +5 -0
- package/dist/types/document/Title.d.ts +1 -0
- package/dist/types/document/cli/index.d.ts +5 -0
- package/dist/types/document/constants.d.ts +25 -0
- package/dist/types/document/index.d.ts +12 -0
- package/dist/types/exports/config-routes.d.ts +9 -0
- package/dist/types/exports/head.d.ts +4 -0
- package/dist/types/exports/loadable.d.ts +3 -0
- package/dist/types/exports/tanstack-router.d.ts +5 -0
- package/dist/types/index.d.ts +10 -0
- package/dist/types/internal.d.ts +2 -0
- package/dist/types/react-server.d.ts +3 -0
- package/dist/types/router/cli/code/getClientRoutes/getRoutes.d.ts +8 -0
- package/dist/types/router/cli/code/getClientRoutes/index.d.ts +1 -0
- package/dist/types/router/cli/code/getClientRoutes/utils.d.ts +4 -0
- package/dist/types/router/cli/code/index.d.ts +12 -0
- package/dist/types/router/cli/code/inspect.d.ts +22 -0
- package/dist/types/router/cli/code/makeLegalIdentifier.d.ts +1 -0
- package/dist/types/router/cli/code/nestedRoutes.d.ts +13 -0
- package/dist/types/router/cli/code/tanstackTypes.d.ts +10 -0
- package/dist/types/router/cli/code/templates.d.ts +28 -0
- package/dist/types/router/cli/code/utils.d.ts +12 -0
- package/dist/types/router/cli/config-routes/converter.d.ts +15 -0
- package/dist/types/router/cli/config-routes/parseRouteConfig.d.ts +32 -0
- package/dist/types/router/cli/constants.d.ts +31 -0
- package/dist/types/router/cli/entry.d.ts +18 -0
- package/dist/types/router/cli/handler.d.ts +28 -0
- package/dist/types/router/cli/index.d.ts +5 -0
- package/dist/types/router/index.d.ts +1 -0
- package/dist/types/router/internal.d.ts +2 -0
- package/dist/types/router/runtime/CSSLinks.d.ts +9 -0
- package/dist/types/router/runtime/DefaultNotFound.d.ts +2 -0
- package/dist/types/router/runtime/DeferredDataScripts.d.ts +2 -0
- package/dist/types/router/runtime/DeferredDataScripts.node.d.ts +11 -0
- package/dist/types/router/runtime/PrefetchLink.d.ts +27 -0
- package/dist/types/router/runtime/constants.d.ts +146 -0
- package/dist/types/router/runtime/hooks.d.ts +18 -0
- package/dist/types/router/runtime/index.d.ts +7 -0
- package/dist/types/router/runtime/internal.d.ts +11 -0
- package/dist/types/router/runtime/lifecycle.d.ts +25 -0
- package/dist/types/router/runtime/plugin.d.ts +9 -0
- package/dist/types/router/runtime/plugin.node.d.ts +7 -0
- package/dist/types/router/runtime/routerHelper.d.ts +5 -0
- package/dist/types/router/runtime/rsc-router.d.ts +20 -0
- package/dist/types/router/runtime/rsc.d.ts +1 -0
- package/dist/types/router/runtime/server.d.ts +1 -0
- package/dist/types/router/runtime/tanstack/basepathRewrite.d.ts +8 -0
- package/dist/types/router/runtime/tanstack/dataMutation.d.ts +29 -0
- package/dist/types/router/runtime/tanstack/plugin.d.ts +6 -0
- package/dist/types/router/runtime/tanstack/plugin.node.d.ts +6 -0
- package/dist/types/router/runtime/tanstack/prefetchLink.d.ts +11 -0
- package/dist/types/router/runtime/tanstack/routeTree.d.ts +8 -0
- package/dist/types/router/runtime/tanstack/rsc/ClientSlot.d.ts +5 -0
- package/dist/types/router/runtime/tanstack/rsc/CompositeComponent.d.ts +3 -0
- package/dist/types/router/runtime/tanstack/rsc/ReplayableStream.d.ts +24 -0
- package/dist/types/router/runtime/tanstack/rsc/RscNodeRenderer.d.ts +5 -0
- package/dist/types/router/runtime/tanstack/rsc/SlotContext.d.ts +11 -0
- package/dist/types/router/runtime/tanstack/rsc/client.d.ts +11 -0
- package/dist/types/router/runtime/tanstack/rsc/createRscProxy.d.ts +7 -0
- package/dist/types/router/runtime/tanstack/rsc/index.d.ts +2 -0
- package/dist/types/router/runtime/tanstack/rsc/server.d.ts +14 -0
- package/dist/types/router/runtime/tanstack/rsc/slotUsageSanitizer.d.ts +2 -0
- package/dist/types/router/runtime/tanstack/rsc/symbols.d.ts +46 -0
- package/dist/types/router/runtime/types.d.ts +119 -0
- package/dist/types/router/runtime/utils.d.ts +48 -0
- package/dist/types/router/runtime/withRouter.d.ts +10 -0
- package/dist/types/rsc/client.d.ts +2 -0
- package/dist/types/rsc/server.d.ts +1 -0
- package/package.json +268 -0
- package/rslib.config.mts +19 -0
- package/rstest.config.mts +88 -0
- package/scripts/gen-static.mts +29 -0
- package/static/modern-inline.js +1 -0
- package/static/modern-run-router-data-fn.js +1 -0
- package/static/modern-run-window-fn.js +1 -0
- package/tsconfig.tsgo.json +6 -0
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import "node:module";
|
|
2
|
+
import { sanitizeSSRPayload, serializeJson } from "@modern-js/runtime-utils/node";
|
|
3
|
+
import { attributesToString } from "../utils";
|
|
4
|
+
import { buildTemplate } from "./buildTemplate.share";
|
|
5
|
+
function buildShellAfterTemplate(afterAppTemplate, options) {
|
|
6
|
+
const callbacks = [
|
|
7
|
+
injectSSRDataScript
|
|
8
|
+
];
|
|
9
|
+
return buildTemplate(afterAppTemplate, callbacks);
|
|
10
|
+
function injectSSRDataScript(template) {
|
|
11
|
+
const ssrDataScript = buildSSRDataScript();
|
|
12
|
+
return template.replace('<!--<?- SSRDataScript ?>-->', ssrDataScript);
|
|
13
|
+
function buildSSRDataScript() {
|
|
14
|
+
const { context: { ssrContext, initialData, __i18nData__ }, renderLevel } = options;
|
|
15
|
+
const { request, enableUnsafeCtx, nonce, tracker, unsafeHeaders } = ssrContext;
|
|
16
|
+
const unsafeContext = {
|
|
17
|
+
headers: request.headers
|
|
18
|
+
};
|
|
19
|
+
const SSRData = {
|
|
20
|
+
data: {
|
|
21
|
+
initialData,
|
|
22
|
+
i18nData: __i18nData__
|
|
23
|
+
},
|
|
24
|
+
context: {
|
|
25
|
+
reporter: {
|
|
26
|
+
sessionId: tracker.sessionId
|
|
27
|
+
},
|
|
28
|
+
request: {
|
|
29
|
+
params: request.params,
|
|
30
|
+
query: request.query,
|
|
31
|
+
pathname: request.pathname,
|
|
32
|
+
host: request.host,
|
|
33
|
+
url: request.url,
|
|
34
|
+
...enableUnsafeCtx ? unsafeContext : {}
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
renderLevel
|
|
38
|
+
};
|
|
39
|
+
const attrsStr = attributesToString({
|
|
40
|
+
nonce
|
|
41
|
+
});
|
|
42
|
+
const sanitizedSSRData = sanitizeSSRPayload(SSRData, {
|
|
43
|
+
unsafeHeaders
|
|
44
|
+
}).payload;
|
|
45
|
+
return `
|
|
46
|
+
<script${attrsStr}>window._SSR_DATA = ${serializeJson(sanitizedSSRData)}</script>
|
|
47
|
+
`;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
export { buildShellAfterTemplate };
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
import "node:module";
|
|
2
|
+
import { sanitizeSSRPayload, serializeJson } from "@modern-js/runtime-utils/node";
|
|
3
|
+
import { time } from "@modern-js/runtime-utils/time";
|
|
4
|
+
import react from "react";
|
|
5
|
+
import react_helmet from "react-helmet";
|
|
6
|
+
import { serializeErrors } from "../../../router/runtime/utils.mjs";
|
|
7
|
+
import prefetch from "../../prefetch";
|
|
8
|
+
import helmet from "../helmet";
|
|
9
|
+
import { SSRErrors, SSRTimings } from "../tracker";
|
|
10
|
+
import { RenderLevel } from "../types.mjs";
|
|
11
|
+
import { ROUTER_DATA_JSON_ID, SSR_DATA_JSON_ID, attributesToString } from "../utils";
|
|
12
|
+
import { buildHtml, createReplaceChunkCss, createReplaceChunkJs, createReplaceHtml, createReplaceSSRDataScript } from "./buildHtml";
|
|
13
|
+
import { createLoadableCollector } from "./loadable";
|
|
14
|
+
import { createRender } from "./render";
|
|
15
|
+
import { createStyledCollector } from "./styledComponent";
|
|
16
|
+
const buildTemplateData = (context, data, renderLevel, tracker)=>{
|
|
17
|
+
const { request, enableUnsafeCtx } = context;
|
|
18
|
+
const unsafeContext = {
|
|
19
|
+
headers: request.headers
|
|
20
|
+
};
|
|
21
|
+
return {
|
|
22
|
+
data,
|
|
23
|
+
context: {
|
|
24
|
+
request: {
|
|
25
|
+
params: request.params,
|
|
26
|
+
query: request.query,
|
|
27
|
+
pathname: request.pathname,
|
|
28
|
+
host: request.host,
|
|
29
|
+
url: request.url,
|
|
30
|
+
...enableUnsafeCtx ? unsafeContext : {}
|
|
31
|
+
},
|
|
32
|
+
reporter: {
|
|
33
|
+
sessionId: tracker.sessionId
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
renderLevel
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
class Entry {
|
|
40
|
+
async renderToHtml(context) {
|
|
41
|
+
const ssrContext = context.ssrContext;
|
|
42
|
+
if (ssrContext.redirection?.url) return '';
|
|
43
|
+
const prefetchData = await this.prefetch(context);
|
|
44
|
+
if (ssrContext.redirection?.url) return '';
|
|
45
|
+
if (this.result.renderLevel >= RenderLevel.SERVER_PREFETCH) this.result.html = await this.renderToString(context);
|
|
46
|
+
if (ssrContext.redirection?.url) return '';
|
|
47
|
+
const { routerContext, routerServerSnapshot } = context;
|
|
48
|
+
const routerData = routerServerSnapshot?.routerData ? {
|
|
49
|
+
loaderData: routerServerSnapshot.routerData.loaderData,
|
|
50
|
+
errors: serializeErrors(routerServerSnapshot.routerData.errors)
|
|
51
|
+
} : routerContext ? {
|
|
52
|
+
loaderData: routerContext.loaderData,
|
|
53
|
+
errors: serializeErrors(routerContext.errors)
|
|
54
|
+
} : void 0;
|
|
55
|
+
const templateData = buildTemplateData(ssrContext, prefetchData, this.result.renderLevel, this.tracker);
|
|
56
|
+
const ssrDataScripts = this.getSSRDataScript(templateData, routerData);
|
|
57
|
+
const html = buildHtml(this.template, [
|
|
58
|
+
createReplaceChunkCss(this.result.chunksMap.css),
|
|
59
|
+
createReplaceChunkJs(this.result.chunksMap.js),
|
|
60
|
+
createReplaceHtml(this.result.html || ''),
|
|
61
|
+
createReplaceSSRDataScript(ssrDataScripts),
|
|
62
|
+
...this.htmlModifiers
|
|
63
|
+
]);
|
|
64
|
+
const helmetData = react_helmet.renderStatic();
|
|
65
|
+
return helmetData ? helmet(html, helmetData) : html;
|
|
66
|
+
}
|
|
67
|
+
async prefetch(context) {
|
|
68
|
+
let prefetchData;
|
|
69
|
+
const end = time();
|
|
70
|
+
try {
|
|
71
|
+
prefetchData = await prefetch(this.App, context, this.pluginConfig);
|
|
72
|
+
this.result.renderLevel = RenderLevel.SERVER_PREFETCH;
|
|
73
|
+
const prefetchCost = end();
|
|
74
|
+
this.tracker.trackTiming(SSRTimings.SSR_PREFETCH, prefetchCost);
|
|
75
|
+
} catch (e) {
|
|
76
|
+
this.result.renderLevel = RenderLevel.CLIENT_RENDER;
|
|
77
|
+
this.tracker.trackError(SSRErrors.PREFETCH, e);
|
|
78
|
+
}
|
|
79
|
+
return prefetchData || {};
|
|
80
|
+
}
|
|
81
|
+
async renderToString(context) {
|
|
82
|
+
let html = '';
|
|
83
|
+
const end = time();
|
|
84
|
+
const { ssrContext } = context;
|
|
85
|
+
try {
|
|
86
|
+
const App = react.createElement(this.App, {
|
|
87
|
+
context: Object.assign(context, {
|
|
88
|
+
ssr: true
|
|
89
|
+
})
|
|
90
|
+
});
|
|
91
|
+
html = await createRender(App).addCollector(createStyledCollector(this.result)).addCollector(createLoadableCollector({
|
|
92
|
+
stats: ssrContext.loadableStats,
|
|
93
|
+
result: this.result,
|
|
94
|
+
entryName: this.entryName,
|
|
95
|
+
config: this.pluginConfig,
|
|
96
|
+
nonce: this.nonce,
|
|
97
|
+
template: this.template,
|
|
98
|
+
routeManifest: this.routeManifest
|
|
99
|
+
})).finish();
|
|
100
|
+
const cost = end();
|
|
101
|
+
this.tracker.trackTiming(SSRTimings.SSR_RENDER_HTML, cost);
|
|
102
|
+
this.result.renderLevel = RenderLevel.SERVER_RENDER;
|
|
103
|
+
} catch (e) {
|
|
104
|
+
this.tracker.trackError(SSRErrors.RENDER_HTML, e);
|
|
105
|
+
}
|
|
106
|
+
return html;
|
|
107
|
+
}
|
|
108
|
+
getSSRDataScript(templateData, routerData) {
|
|
109
|
+
const useInlineScript = false !== this.pluginConfig.inlineScript;
|
|
110
|
+
const sanitizedTemplateData = sanitizeSSRPayload(templateData, {
|
|
111
|
+
unsafeHeaders: this.pluginConfig.unsafeHeaders
|
|
112
|
+
}).payload;
|
|
113
|
+
const ssrData = serializeJson(sanitizedTemplateData);
|
|
114
|
+
const attrsStr = attributesToString({
|
|
115
|
+
nonce: this.nonce
|
|
116
|
+
});
|
|
117
|
+
let ssrDataScripts = useInlineScript ? `<script${attrsStr}>window._SSR_DATA = ${ssrData}</script>` : `<script type="application/json" id="${SSR_DATA_JSON_ID}">${ssrData}</script>`;
|
|
118
|
+
if (routerData) {
|
|
119
|
+
const sanitizedRouterData = sanitizeSSRPayload(routerData, {
|
|
120
|
+
unsafeHeaders: this.pluginConfig.unsafeHeaders
|
|
121
|
+
}).payload;
|
|
122
|
+
const serializedRouterData = serializeJson(sanitizedRouterData);
|
|
123
|
+
ssrDataScripts += useInlineScript ? `\n<script${attrsStr}>window._ROUTER_DATA = ${serializedRouterData}</script>` : `\n<script type="application/json" id="${ROUTER_DATA_JSON_ID}">${serializedRouterData}</script>`;
|
|
124
|
+
}
|
|
125
|
+
return ssrDataScripts;
|
|
126
|
+
}
|
|
127
|
+
constructor(options){
|
|
128
|
+
const { ctx, config } = options;
|
|
129
|
+
const { entryName, template, nonce } = ctx;
|
|
130
|
+
this.template = template;
|
|
131
|
+
this.entryName = entryName;
|
|
132
|
+
this.App = options.App;
|
|
133
|
+
this.pluginConfig = config;
|
|
134
|
+
this.routeManifest = ctx.routeManifest;
|
|
135
|
+
this.tracker = ctx.tracker;
|
|
136
|
+
this.metrics = ctx.metrics;
|
|
137
|
+
this.htmlModifiers = ctx.htmlModifiers;
|
|
138
|
+
this.nonce = nonce;
|
|
139
|
+
this.result = {
|
|
140
|
+
renderLevel: RenderLevel.CLIENT_RENDER,
|
|
141
|
+
html: '',
|
|
142
|
+
chunksMap: {
|
|
143
|
+
js: '',
|
|
144
|
+
css: ''
|
|
145
|
+
}
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
export default Entry;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '@modern-js/runtime-utils/cache';
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { Entrypoint } from '@modern-js/types';
|
|
2
|
+
import type { RsbuildPlugin } from '@rsbuild/core';
|
|
3
|
+
export declare const builderPluginAlias: ({ entrypoints, internalDirectory, metaName, }: {
|
|
4
|
+
entrypoints: Entrypoint[];
|
|
5
|
+
internalDirectory: string;
|
|
6
|
+
metaName: string;
|
|
7
|
+
}) => RsbuildPlugin;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { AppToolsContext, AppToolsFeatureHooks, AppToolsNormalizedConfig } from '@modern-js/app-tools';
|
|
2
|
+
import type { Entrypoint } from '@modern-js/types';
|
|
3
|
+
export declare const generateCode: (entrypoints: Entrypoint[], appContext: AppToolsContext, config: AppToolsNormalizedConfig, hooks: AppToolsFeatureHooks) => Promise<void>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const APP_FILE_NAME = "App";
|
|
2
|
+
export declare const ENTRY_POINT_FILE_NAME = "index.jsx";
|
|
3
|
+
export declare const SERVER_ENTRY_POINT_FILE_NAME = "index.server.jsx";
|
|
4
|
+
export declare const INDEX_FILE_NAME = "index";
|
|
5
|
+
export declare const ENTRY_BOOTSTRAP_FILE_NAME = "bootstrap.jsx";
|
|
6
|
+
export declare const ENTRY_SERVER_BOOTSTRAP_FILE_NAME = "bootstrap.server.jsx";
|
|
7
|
+
export declare const ENTRY_POINT_RUNTIME_REGISTER_FILE_NAME = "runtime-register.js";
|
|
8
|
+
export declare const ENTRY_POINT_RUNTIME_GLOBAL_CONTEXT_FILE_NAME = "runtime-global-context";
|
|
9
|
+
export declare const ENTRY_POINT_REGISTER_FILE_NAME = "register.js";
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { AppTools, CliPlugin } from '@modern-js/app-tools';
|
|
2
|
+
import { documentPlugin } from '../document/cli';
|
|
3
|
+
import { routerPlugin } from '../router/cli';
|
|
4
|
+
import { ssrPlugin } from './ssr';
|
|
5
|
+
export { getEntrypointRoutesDir, handleFileChange, handleGeneratorEntryCode, handleModifyEntrypoints, isRouteEntry, } from '../router/cli';
|
|
6
|
+
export { isRuntimeEntry } from './entry';
|
|
7
|
+
export { documentPlugin, routerPlugin, ssrPlugin };
|
|
8
|
+
export declare const runtimePlugin: (params?: {
|
|
9
|
+
plugins?: CliPlugin<AppTools>[];
|
|
10
|
+
}) => CliPlugin<AppTools>;
|
|
11
|
+
export default runtimePlugin;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { AppTools, CliPlugin } from '@modern-js/app-tools';
|
|
2
|
+
import type { MergedEnvironmentConfig } from '@rsbuild/core';
|
|
3
|
+
type EnvironmentConfigLike = Partial<Pick<MergedEnvironmentConfig, 'output' | 'source' | 'tools'>>;
|
|
4
|
+
export declare const shouldUseModuleFederationNodeOutput: (config: EnvironmentConfigLike) => boolean;
|
|
5
|
+
export declare const ssrPlugin: () => CliPlugin<AppTools>;
|
|
6
|
+
export default ssrPlugin;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The following code is modified based on
|
|
3
|
+
* https://github.com/gregberge/loadable-components
|
|
4
|
+
*
|
|
5
|
+
* MIT Licensed
|
|
6
|
+
* Author Greg Bergé
|
|
7
|
+
* Copyright 2019 Greg Bergé
|
|
8
|
+
* https://github.com/gregberge/loadable-components/blob/main/LICENSE
|
|
9
|
+
*/
|
|
10
|
+
import type { Rspack } from '@modern-js/app-tools';
|
|
11
|
+
interface LoadablePluginOptions {
|
|
12
|
+
filename: string;
|
|
13
|
+
path?: string;
|
|
14
|
+
writeToDisk?: any;
|
|
15
|
+
outputAsset?: boolean;
|
|
16
|
+
chunkLoadingGlobal?: string;
|
|
17
|
+
}
|
|
18
|
+
type Compiler = Rspack.Compiler;
|
|
19
|
+
type Compilation = Rspack.Compilation;
|
|
20
|
+
declare class LoadablePlugin {
|
|
21
|
+
opts: LoadablePluginOptions;
|
|
22
|
+
compiler: Compiler | null;
|
|
23
|
+
constructor({ filename, path, writeToDisk, outputAsset, chunkLoadingGlobal, }?: LoadablePluginOptions);
|
|
24
|
+
apply(compiler: Compiler): void;
|
|
25
|
+
handleEmit(compilation: Compilation): {
|
|
26
|
+
source(): string;
|
|
27
|
+
size(): number;
|
|
28
|
+
} | null;
|
|
29
|
+
writeAssetsFile(manifest: string): void;
|
|
30
|
+
}
|
|
31
|
+
export default LoadablePlugin;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { AppToolsNormalizedConfig } from '@modern-js/app-tools';
|
|
2
|
+
export type SSRMode = 'string' | 'stream' | false;
|
|
3
|
+
/**
|
|
4
|
+
* Unified SSR mode resolution function.
|
|
5
|
+
* Priority:
|
|
6
|
+
* 1. If SSG is enabled, use SSG configuration (SSG takes precedence over SSR when both are configured)
|
|
7
|
+
* 2. User's explicit server.ssr/server.ssrByEntries config
|
|
8
|
+
* 3. Otherwise return false (no SSR)
|
|
9
|
+
*/
|
|
10
|
+
export declare function resolveSSRMode(params: {
|
|
11
|
+
entry?: string;
|
|
12
|
+
config: AppToolsNormalizedConfig;
|
|
13
|
+
appDirectory?: string;
|
|
14
|
+
nestedRoutesEntry?: string;
|
|
15
|
+
}): SSRMode;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import type { RuntimePluginConfig } from '@modern-js/app-tools';
|
|
2
|
+
export declare const entryForCSRWithRSC: ({ metaName, entryName, urlPath, mountId, isNestedRouter, }: {
|
|
3
|
+
metaName: string;
|
|
4
|
+
entryName: string;
|
|
5
|
+
urlPath?: string;
|
|
6
|
+
mountId?: string;
|
|
7
|
+
isNestedRouter?: string;
|
|
8
|
+
}) => string;
|
|
9
|
+
export declare const index: ({ srcDirectory, internalSrcAlias, metaName, entry, entryName, customEntry, mountId, enableRsc, isNestedRouter, }: {
|
|
10
|
+
srcDirectory: string;
|
|
11
|
+
internalSrcAlias: string;
|
|
12
|
+
metaName: string;
|
|
13
|
+
entry: string;
|
|
14
|
+
entryName: string;
|
|
15
|
+
customEntry?: boolean;
|
|
16
|
+
mountId?: string;
|
|
17
|
+
enableRsc?: boolean;
|
|
18
|
+
isNestedRouter?: boolean;
|
|
19
|
+
}) => string;
|
|
20
|
+
export declare const register: () => string;
|
|
21
|
+
export declare const runtimeRegister: ({ entryName, srcDirectory, internalSrcAlias, metaName, runtimeConfigFile, runtimePlugins, }: {
|
|
22
|
+
entryName: string;
|
|
23
|
+
srcDirectory: string;
|
|
24
|
+
internalSrcAlias: string;
|
|
25
|
+
metaName: string;
|
|
26
|
+
runtimeConfigFile: string | false;
|
|
27
|
+
runtimePlugins: RuntimePluginConfig[];
|
|
28
|
+
}) => string;
|
|
29
|
+
export declare const runtimeGlobalContext: ({ entryName, srcDirectory, internalSrcAlias, metaName, entry, customEntry, basename, }: {
|
|
30
|
+
entryName: string;
|
|
31
|
+
srcDirectory: string;
|
|
32
|
+
internalSrcAlias: string;
|
|
33
|
+
metaName: string;
|
|
34
|
+
entry: string;
|
|
35
|
+
customEntry?: boolean;
|
|
36
|
+
basename?: string;
|
|
37
|
+
}) => string;
|
|
38
|
+
export declare const runtimeGlobalContextForRSCServer: ({ metaName, }: {
|
|
39
|
+
metaName: string;
|
|
40
|
+
}) => string;
|
|
41
|
+
export declare const runtimeGlobalContextForRSCClient: ({ metaName, customEntry, }: {
|
|
42
|
+
metaName: string;
|
|
43
|
+
customEntry?: boolean;
|
|
44
|
+
}) => string;
|
|
45
|
+
export declare const AppProxyForRSC: ({ srcDirectory, internalSrcAlias, entry, customEntry, }: {
|
|
46
|
+
srcDirectory: string;
|
|
47
|
+
internalSrcAlias: string;
|
|
48
|
+
entry: string;
|
|
49
|
+
customEntry?: boolean;
|
|
50
|
+
}) => string;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
type ServerIndexOptinos = GenHandlerCodeOptions & {
|
|
2
|
+
entryName: string;
|
|
3
|
+
};
|
|
4
|
+
export declare const serverIndex: (options: ServerIndexOptinos) => string;
|
|
5
|
+
export declare const entryForCSRWithRSC: ({ metaName, entryName, }: {
|
|
6
|
+
metaName: string;
|
|
7
|
+
entryName: string;
|
|
8
|
+
}) => string;
|
|
9
|
+
type GenHandlerCodeOptions = {
|
|
10
|
+
customServerEntry?: string | false;
|
|
11
|
+
srcDirectory: string;
|
|
12
|
+
internalSrcAlias: string;
|
|
13
|
+
entry: string;
|
|
14
|
+
enableRsc?: boolean;
|
|
15
|
+
} & TransformServerEntryOptions;
|
|
16
|
+
type TransformServerEntryOptions = {
|
|
17
|
+
metaName?: string;
|
|
18
|
+
mode: 'string' | 'stream';
|
|
19
|
+
};
|
|
20
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { RuntimePlugin } from './core/plugin';
|
|
2
|
+
export declare const isBrowser: () => boolean;
|
|
3
|
+
export interface RuntimeConfig {
|
|
4
|
+
plugins?: RuntimePlugin[];
|
|
5
|
+
[key: string]: any;
|
|
6
|
+
}
|
|
7
|
+
export declare const JSX_SHELL_STREAM_END_MARK = "<!--<?- SHELL_STREAM_END ?>-->";
|
|
8
|
+
export declare const ESCAPED_SHELL_STREAM_END_MARK = "<!--<?- SHELL_STREAM_END ?>-->";
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type React from 'react';
|
|
2
|
+
import type { Root } from 'react-dom/client';
|
|
3
|
+
import type { TRuntimeContext } from '../context/runtime';
|
|
4
|
+
export declare const isReact18: () => boolean;
|
|
5
|
+
export declare function hydrateRoot(App: React.ReactElement, context: TRuntimeContext, ModernRender: (App: React.ReactElement) => Promise<HTMLElement | Root>, ModernHydrate: (App: React.ReactElement, callback?: () => void) => Promise<HTMLElement | Root>): Promise<HTMLElement | Root>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type React from 'react';
|
|
2
|
+
export type RenderFunc = typeof render;
|
|
3
|
+
export declare function render(App: React.ReactElement<{
|
|
4
|
+
basename: string;
|
|
5
|
+
}>, id?: HTMLElement | string): Promise<HTMLElement | import("react-dom/client").Root>;
|
|
6
|
+
export declare function renderWithReact18(App: React.ReactElement, rootElement: HTMLElement): Promise<import("react-dom/client").Root>;
|
|
7
|
+
export declare function renderWithReact17(App: React.ReactElement, rootElement: HTMLElement): Promise<HTMLElement>;
|
|
8
|
+
export declare function hydrateWithReact18(App: React.ReactElement, rootElement: HTMLElement): Promise<import("react-dom/client").Root>;
|
|
9
|
+
export declare function hydrateWithReact17(App: React.ReactElement, rootElement: HTMLElement, callback?: () => void): Promise<any>;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { TInternalRuntimeContext } from '../context';
|
|
2
|
+
export declare function transformHookRunner(hookRunnerName: string): string;
|
|
3
|
+
export declare function handleSetupResult(setupResult: Record<string, (...args: any) => any>, api: Record<string, any>): void;
|
|
4
|
+
export declare function getHookRunners(runtimeContext: TInternalRuntimeContext): Record<string, any>;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { TInternalRuntimeContext } from '../context';
|
|
2
|
+
import type { RuntimePlugin } from '../plugin/types';
|
|
3
|
+
import type { RequestContext } from '../types';
|
|
4
|
+
export declare const makeRequestContext: (context: TInternalRuntimeContext) => RequestContext;
|
|
5
|
+
export declare const requestContextPlugin: () => RuntimePlugin;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { RuntimeConfig } from '../common';
|
|
2
|
+
/**
|
|
3
|
+
* This function helps you to autocomplete configuration types.
|
|
4
|
+
* It accepts a direct config object, or a function that returns a config.
|
|
5
|
+
*/
|
|
6
|
+
export declare const defineRuntimeConfig: (config: RuntimeConfig | ((entryName: string) => RuntimeConfig)) => RuntimeConfig | ((entryName: string) => RuntimeConfig);
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import type { InternalRuntimeContext } from '@modern-js/plugin';
|
|
2
|
+
import type { NestedRoute, PageRoute } from '@modern-js/types';
|
|
3
|
+
import type React from 'react';
|
|
4
|
+
import type { RuntimeExtends } from '../plugin/types';
|
|
5
|
+
import type { ServerPayload } from './serverPayload/index';
|
|
6
|
+
export { getInitialContext, InternalRuntimeContext, RuntimeContext, type TInternalRuntimeContext, type TRuntimeContext, } from './runtime';
|
|
7
|
+
export type { PayloadRoute, ServerPayload } from './serverPayload/index';
|
|
8
|
+
interface GlobalContext {
|
|
9
|
+
entryName?: string;
|
|
10
|
+
/**
|
|
11
|
+
* App.tsx export default component
|
|
12
|
+
*/
|
|
13
|
+
App?: React.ComponentType;
|
|
14
|
+
/**
|
|
15
|
+
* nest router and page router config
|
|
16
|
+
*/
|
|
17
|
+
routes?: (NestedRoute | PageRoute)[];
|
|
18
|
+
/**
|
|
19
|
+
* nest router init function
|
|
20
|
+
*/
|
|
21
|
+
appInit?: () => Promise<unknown>;
|
|
22
|
+
/**
|
|
23
|
+
* page router _app.tsx export layout app
|
|
24
|
+
*/
|
|
25
|
+
layoutApp?: React.ComponentType;
|
|
26
|
+
/**
|
|
27
|
+
* Entry basename for routing
|
|
28
|
+
*/
|
|
29
|
+
basename?: string;
|
|
30
|
+
internalRuntimeContext?: InternalRuntimeContext<RuntimeExtends>;
|
|
31
|
+
/**
|
|
32
|
+
* RSCRoot
|
|
33
|
+
*/
|
|
34
|
+
RSCRoot?: React.ComponentType;
|
|
35
|
+
isRscClient?: boolean;
|
|
36
|
+
serverPayload?: ServerPayload;
|
|
37
|
+
enableRsc?: boolean;
|
|
38
|
+
}
|
|
39
|
+
export { getServerPayload, setServerPayload, } from './serverPayload/index';
|
|
40
|
+
export declare function getGlobalIsRscClient(): boolean | undefined;
|
|
41
|
+
export declare function getGlobalEnableRsc(): boolean | undefined;
|
|
42
|
+
export declare function setGlobalContext(context: Omit<GlobalContext, 'internalRuntimeContext'>): void;
|
|
43
|
+
export declare function getCurrentEntryName(): string | undefined;
|
|
44
|
+
export declare function getGlobalRSCRoot(): React.ComponentType<{}> | undefined;
|
|
45
|
+
export declare function setGlobalInternalRuntimeContext(context: InternalRuntimeContext<RuntimeExtends>): void;
|
|
46
|
+
export declare function getGlobalInternalRuntimeContext(): InternalRuntimeContext<Required<import("@modern-js/plugin").RuntimePluginExtends<import("../plugin/types").RuntimeConfig, import("./runtime").TInternalRuntimeContext, {}, {}>>>;
|
|
47
|
+
export declare function getGlobalApp(): React.ComponentType<{}> | undefined;
|
|
48
|
+
export declare function getGlobalRoutes(): undefined | (NestedRoute | PageRoute)[];
|
|
49
|
+
export declare function getGlobalLayoutApp(): React.ComponentType<{}> | undefined;
|
|
50
|
+
export declare function getGlobalBasename(): string | undefined;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getMonitors: () => Omit<import("@modern-js/types").Monitors, "push">;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getRequest: () => Request;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getRequest: () => Request;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const getResponseProxy: () => null;
|
|
2
|
+
export declare const setHeaders: (headers: Record<string, string>) => void;
|
|
3
|
+
export declare const setStatus: (status: number) => void;
|
|
4
|
+
export declare const redirect: (url: string, init?: number | ResponseInit) => void;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const getResponseProxy: () => {
|
|
2
|
+
headers: Record<string, string>;
|
|
3
|
+
status: number;
|
|
4
|
+
} | undefined;
|
|
5
|
+
export declare const setHeaders: (headers: Record<string, string>) => void;
|
|
6
|
+
export declare const setStatus: (status: number) => void;
|
|
7
|
+
export declare const redirect: (url: string, init?: number | ResponseInit) => void;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { RouteObject, StaticHandlerContext } from '@modern-js/runtime-utils/router';
|
|
2
|
+
import type { InternalRouterRuntimeState, InternalRouterServerSnapshot, RouteManifest, RouterFramework } from '../../router/runtime/types';
|
|
3
|
+
import type { RequestContext, SSRServerContext } from '../types';
|
|
4
|
+
export interface TRuntimeContext {
|
|
5
|
+
initialData?: Record<string, unknown>;
|
|
6
|
+
isBrowser: boolean;
|
|
7
|
+
routes?: RouteObject[];
|
|
8
|
+
routerFramework?: RouterFramework;
|
|
9
|
+
requestContext: RequestContext;
|
|
10
|
+
/**
|
|
11
|
+
* @deprecated Use `requestContext` instead
|
|
12
|
+
*/
|
|
13
|
+
context: RequestContext;
|
|
14
|
+
[key: string]: unknown;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* InternalRuntimeContext used internally and by plugins
|
|
18
|
+
*/
|
|
19
|
+
export interface TInternalRuntimeContext extends TRuntimeContext {
|
|
20
|
+
routeManifest?: RouteManifest;
|
|
21
|
+
routerRuntime?: InternalRouterRuntimeState;
|
|
22
|
+
routerInstance?: unknown;
|
|
23
|
+
routerHydrationScript?: string;
|
|
24
|
+
routerMatchedRouteIds?: string[];
|
|
25
|
+
routerServerSnapshot?: InternalRouterServerSnapshot;
|
|
26
|
+
routerContext?: StaticHandlerContext;
|
|
27
|
+
unstable_getBlockNavState?: () => boolean;
|
|
28
|
+
ssrContext?: SSRServerContext;
|
|
29
|
+
_internalContext?: any;
|
|
30
|
+
_internalRouterBaseName?: any;
|
|
31
|
+
}
|
|
32
|
+
export declare const InternalRuntimeContext: import("react").Context<TInternalRuntimeContext>;
|
|
33
|
+
export declare const RuntimeContext: import("react").Context<TRuntimeContext>;
|
|
34
|
+
/**
|
|
35
|
+
* deprecated, use RuntimeContext instead
|
|
36
|
+
*/
|
|
37
|
+
export declare const ReactRuntimeContext: import("react").Context<TRuntimeContext>;
|
|
38
|
+
export declare const getInitialContext: (isBrowser?: boolean, routeManifest?: RouteManifest) => TInternalRuntimeContext;
|
|
39
|
+
/**
|
|
40
|
+
* @deprecated use use(RuntimeContext) instead
|
|
41
|
+
*/
|
|
42
|
+
export declare const useRuntimeContext: () => TRuntimeContext;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { RouterState, ShouldRevalidateFunction } from '@modern-js/runtime-utils/router';
|
|
2
|
+
export type PayloadRoute = {
|
|
3
|
+
clientAction?: (...args: unknown[]) => unknown;
|
|
4
|
+
clientLoader?: (...args: unknown[]) => unknown;
|
|
5
|
+
element?: React.ReactNode;
|
|
6
|
+
errorElement?: React.ReactNode;
|
|
7
|
+
handle?: unknown;
|
|
8
|
+
hasAction: boolean;
|
|
9
|
+
hasErrorBoundary: boolean;
|
|
10
|
+
hasLoader: boolean;
|
|
11
|
+
hasClientLoader?: boolean;
|
|
12
|
+
id: string;
|
|
13
|
+
index?: boolean;
|
|
14
|
+
params: Record<string, string>;
|
|
15
|
+
parentId?: string;
|
|
16
|
+
path?: string;
|
|
17
|
+
pathname: string;
|
|
18
|
+
pathnameBase: string;
|
|
19
|
+
shouldRevalidate?: ShouldRevalidateFunction;
|
|
20
|
+
};
|
|
21
|
+
export type ServerPayload = {
|
|
22
|
+
type: 'render';
|
|
23
|
+
actionData: RouterState['actionData'];
|
|
24
|
+
errors: RouterState['errors'];
|
|
25
|
+
loaderData: RouterState['loaderData'];
|
|
26
|
+
location: RouterState['location'];
|
|
27
|
+
routes: PayloadRoute[];
|
|
28
|
+
originalRoutes?: PayloadRoute[];
|
|
29
|
+
};
|
|
30
|
+
export declare const getServerPayload: () => ServerPayload | undefined;
|
|
31
|
+
export declare const setServerPayload: (payload: ServerPayload) => void;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { defineRuntimeConfig } from './config';
|
|
2
|
+
export type { TRuntimeContext } from './context/runtime';
|
|
3
|
+
export { RuntimeContext, useRuntimeContext, } from './context/runtime';
|
|
4
|
+
export type { RuntimePlugin } from './plugin';
|
|
5
|
+
export type { SSRContainer, SSRData } from './types';
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { RuntimeConfig, RuntimePlugin } from './types';
|
|
2
|
+
export type { RuntimePlugin };
|
|
3
|
+
export declare function registerPlugin(internalPlugins: RuntimePlugin[], runtimeConfig?: RuntimeConfig): any;
|
|
4
|
+
export declare function mergeConfig(config: Record<string, any>, ...otherConfig: Record<string, any>[]): Record<string, any>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { RuntimePlugin as BaseRuntimePlugin, RuntimePluginExtends } from '@modern-js/plugin';
|
|
2
|
+
import type { Hooks } from '@modern-js/plugin/runtime';
|
|
3
|
+
import type { RuntimeConfig as BaseRuntimeConfig } from '../../common';
|
|
4
|
+
import type { TInternalRuntimeContext } from '../context/runtime';
|
|
5
|
+
export type RuntimeHooks = Hooks<RuntimeConfig, TInternalRuntimeContext>;
|
|
6
|
+
export type RuntimeExtends = Required<RuntimePluginExtends<RuntimeConfig, TInternalRuntimeContext, {}, {}>>;
|
|
7
|
+
export type RuntimePlugin<Extends extends RuntimePluginExtends = {}> = BaseRuntimePlugin<RuntimeExtends & Extends>;
|
|
8
|
+
export interface RuntimeConfig extends BaseRuntimeConfig {
|
|
9
|
+
plugins?: RuntimePlugin[];
|
|
10
|
+
}
|