@modern-js/runtime 2.15.0 → 2.15.1-alpha.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 +32 -48
- package/dist/cjs/common.js +13 -27
- package/dist/cjs/config.js +4 -15
- package/dist/cjs/core/appConfig.js +13 -26
- package/dist/cjs/core/compatible.js +170 -158
- package/dist/cjs/core/index.js +38 -45
- package/dist/cjs/core/loader/index.js +12 -35
- package/dist/cjs/core/loader/loaderManager.js +42 -56
- package/dist/cjs/core/loader/useLoader.js +80 -105
- package/dist/cjs/core/plugin.js +28 -40
- package/dist/cjs/core/types.js +4 -15
- package/dist/cjs/document/Body.js +61 -37
- package/dist/cjs/document/Comment.js +22 -32
- package/dist/cjs/document/DocumentContext.js +14 -37
- package/dist/cjs/document/DocumentStructureContext.js +14 -37
- package/dist/cjs/document/Head.js +71 -40
- package/dist/cjs/document/Html.js +46 -58
- package/dist/cjs/document/Links.js +18 -28
- package/dist/cjs/document/Root.js +73 -44
- package/dist/cjs/document/Script.js +22 -32
- package/dist/cjs/document/Scripts.js +18 -28
- package/dist/cjs/document/cli/index.js +161 -207
- package/dist/cjs/document/constants.js +36 -75
- package/dist/cjs/document/index.js +28 -27
- package/dist/cjs/exports/head.js +27 -37
- package/dist/cjs/exports/loadable.js +27 -37
- package/dist/cjs/exports/server.js +7 -25
- package/dist/cjs/exports/styled.js +27 -37
- package/dist/cjs/index.js +22 -42
- package/dist/cjs/router/cli/index.js +91 -114
- package/dist/cjs/router/index.js +32 -39
- package/dist/cjs/router/runtime/DefaultNotFound.js +23 -38
- package/dist/cjs/router/runtime/DeferredDataScripts.js +8 -24
- package/dist/cjs/router/runtime/DeferredDataScripts.node.js +69 -112
- package/dist/cjs/router/runtime/PrefetchLink.js +117 -96
- package/dist/cjs/router/runtime/fetch.js +7 -25
- package/dist/cjs/router/runtime/fetch.node.js +7 -25
- package/dist/cjs/router/runtime/fetch.worker.js +7 -25
- package/dist/cjs/router/runtime/hooks.js +8 -26
- package/dist/cjs/router/runtime/index.js +100 -147
- package/dist/cjs/router/runtime/plugin.js +56 -76
- package/dist/cjs/router/runtime/plugin.node.js +95 -74
- package/dist/cjs/router/runtime/server.js +18 -17
- package/dist/cjs/router/runtime/types.js +4 -15
- package/dist/cjs/router/runtime/utils.js +57 -83
- package/dist/cjs/router/runtime/withRouter.js +24 -39
- package/dist/cjs/runtimeContext.js +14 -27
- package/dist/cjs/ssr/cli/babel-plugin-ssr-loader-id.js +75 -59
- package/dist/cjs/ssr/cli/index.js +120 -150
- package/dist/cjs/ssr/index.js +149 -132
- package/dist/cjs/ssr/index.node.js +73 -74
- package/dist/cjs/ssr/prefetch.js +51 -59
- package/dist/cjs/ssr/react/index.js +15 -28
- package/dist/cjs/ssr/react/nossr/index.js +51 -43
- package/dist/cjs/ssr/react/prerender/index.js +93 -59
- package/dist/cjs/ssr/react/prerender/type.js +4 -15
- package/dist/cjs/ssr/react/prerender/util.js +32 -51
- package/dist/cjs/ssr/react/withCallback/index.js +53 -29
- package/dist/cjs/ssr/serverRender/helmet.js +15 -26
- package/dist/cjs/ssr/serverRender/index.js +14 -32
- package/dist/cjs/ssr/serverRender/renderToStream/buildTemplate.after.js +15 -34
- package/dist/cjs/ssr/serverRender/renderToStream/buildTemplate.share.js +12 -28
- package/dist/cjs/ssr/serverRender/renderToStream/bulidTemplate.before.js +28 -55
- package/dist/cjs/ssr/serverRender/renderToStream/index.js +23 -48
- package/dist/cjs/ssr/serverRender/renderToStream/loadable.js +13 -32
- package/dist/cjs/ssr/serverRender/renderToStream/renderToPipe.js +33 -64
- package/dist/cjs/ssr/serverRender/renderToStream/renderToPipe.worker.js +26 -54
- package/dist/cjs/ssr/serverRender/renderToStream/styledComponent.js +9 -27
- package/dist/cjs/ssr/serverRender/renderToStream/template.js +11 -32
- package/dist/cjs/ssr/serverRender/renderToStream/type.js +4 -15
- package/dist/cjs/ssr/serverRender/renderToString/entry.js +133 -99
- package/dist/cjs/ssr/serverRender/renderToString/index.js +21 -48
- package/dist/cjs/ssr/serverRender/renderToString/loadable.js +20 -45
- package/dist/cjs/ssr/serverRender/renderToString/reduce.js +13 -25
- package/dist/cjs/ssr/serverRender/renderToString/styledComponent.js +9 -27
- package/dist/cjs/ssr/serverRender/renderToString/template.js +42 -37
- package/dist/cjs/ssr/serverRender/renderToString/type.js +10 -28
- package/dist/cjs/ssr/serverRender/time.js +7 -25
- package/dist/cjs/ssr/serverRender/time.worker.js +11 -26
- package/dist/cjs/ssr/serverRender/types.js +7 -25
- package/dist/cjs/ssr/serverRender/utils.js +12 -27
- package/dist/cjs/ssr/utils.js +26 -51
- package/dist/cjs/state/cli/index.js +71 -95
- package/dist/cjs/state/index.js +32 -39
- package/dist/cjs/state/plugins.js +26 -46
- package/dist/cjs/state/runtime/index.js +27 -37
- package/dist/cjs/state/runtime/plugin.js +82 -84
- package/dist/cjs/state/types.js +4 -15
- package/dist/esm/cli/index.js +184 -176
- package/dist/esm/common.js +4 -5
- package/dist/esm/config.js +1 -1
- package/dist/esm/core/appConfig.js +8 -7
- package/dist/esm/core/compatible.js +470 -448
- package/dist/esm/core/index.js +3 -4
- package/dist/esm/core/loader/index.js +1 -2
- package/dist/esm/core/loader/loaderManager.js +391 -366
- package/dist/esm/core/loader/useLoader.js +173 -162
- package/dist/esm/core/plugin.js +162 -155
- package/dist/esm/core/types.js +1 -1
- package/dist/esm/document/Body.js +12 -13
- package/dist/esm/document/Comment.js +11 -12
- package/dist/esm/document/DocumentContext.js +4 -5
- package/dist/esm/document/DocumentStructureContext.js +6 -7
- package/dist/esm/document/Head.js +16 -17
- package/dist/esm/document/Html.js +84 -85
- package/dist/esm/document/Links.js +5 -6
- package/dist/esm/document/Root.js +20 -21
- package/dist/esm/document/Script.js +12 -13
- package/dist/esm/document/Scripts.js +5 -6
- package/dist/esm/document/cli/index.js +390 -371
- package/dist/esm/document/constants.js +33 -34
- package/dist/esm/exports/head.js +1 -2
- package/dist/esm/exports/loadable.js +1 -2
- package/dist/esm/exports/server.js +2 -3
- package/dist/esm/exports/styled.js +1 -2
- package/dist/esm/index.js +2 -3
- package/dist/esm/router/cli/index.js +141 -141
- package/dist/esm/router/index.js +2 -3
- package/dist/esm/router/runtime/DefaultNotFound.js +12 -13
- package/dist/esm/router/runtime/DeferredDataScripts.js +4 -4
- package/dist/esm/router/runtime/DeferredDataScripts.node.js +154 -143
- package/dist/esm/router/runtime/PrefetchLink.js +418 -394
- package/dist/esm/router/runtime/fetch.js +2 -1
- package/dist/esm/router/runtime/fetch.worker.js +2 -1
- package/dist/esm/router/runtime/index.js +64 -6
- package/dist/esm/router/runtime/plugin.js +141 -142
- package/dist/esm/router/runtime/plugin.node.js +372 -353
- package/dist/esm/router/runtime/types.js +1 -1
- package/dist/esm/router/runtime/utils.js +295 -279
- package/dist/esm/router/runtime/withRouter.js +57 -58
- package/dist/esm/runtimeContext.js +2 -3
- package/dist/esm/ssr/cli/babel-plugin-ssr-loader-id.js +105 -118
- package/dist/esm/ssr/cli/index.js +146 -146
- package/dist/esm/ssr/index.js +303 -297
- package/dist/esm/ssr/index.node.js +227 -221
- package/dist/esm/ssr/prefetch.js +192 -186
- package/dist/esm/ssr/react/index.js +2 -3
- package/dist/esm/ssr/react/nossr/index.js +58 -47
- package/dist/esm/ssr/react/prerender/index.js +214 -206
- package/dist/esm/ssr/react/prerender/type.js +1 -1
- package/dist/esm/ssr/react/prerender/util.js +91 -92
- package/dist/esm/ssr/react/withCallback/index.js +13 -14
- package/dist/esm/ssr/serverRender/helmet.js +34 -35
- package/dist/esm/ssr/serverRender/index.js +167 -160
- package/dist/esm/ssr/serverRender/renderToStream/buildTemplate.after.js +58 -59
- package/dist/esm/ssr/serverRender/renderToStream/buildTemplate.share.js +5 -6
- package/dist/esm/ssr/serverRender/renderToStream/bulidTemplate.before.js +106 -93
- package/dist/esm/ssr/serverRender/renderToStream/index.js +157 -151
- package/dist/esm/ssr/serverRender/renderToStream/loadable.js +17 -18
- package/dist/esm/ssr/serverRender/renderToStream/renderToPipe.js +117 -117
- package/dist/esm/ssr/serverRender/renderToStream/renderToPipe.worker.js +286 -279
- package/dist/esm/ssr/serverRender/renderToStream/styledComponent.js +8 -9
- package/dist/esm/ssr/serverRender/renderToStream/template.js +62 -51
- package/dist/esm/ssr/serverRender/renderToStream/type.js +1 -1
- package/dist/esm/ssr/serverRender/renderToString/entry.js +393 -383
- package/dist/esm/ssr/serverRender/renderToString/index.js +158 -152
- package/dist/esm/ssr/serverRender/renderToString/loadable.js +46 -47
- package/dist/esm/ssr/serverRender/renderToString/reduce.js +7 -8
- package/dist/esm/ssr/serverRender/renderToString/styledComponent.js +6 -7
- package/dist/esm/ssr/serverRender/renderToString/template.js +142 -128
- package/dist/esm/ssr/serverRender/renderToString/type.js +6 -7
- package/dist/esm/ssr/serverRender/time.js +57 -46
- package/dist/esm/ssr/serverRender/time.worker.js +72 -61
- package/dist/esm/ssr/serverRender/utils.js +14 -15
- package/dist/esm/ssr/utils.js +128 -117
- package/dist/esm/state/cli/index.js +67 -67
- package/dist/esm/state/index.js +2 -3
- package/dist/esm/state/plugins.js +7 -8
- package/dist/esm/state/runtime/index.js +1 -2
- package/dist/esm/state/runtime/plugin.js +177 -166
- package/dist/esm/state/types.js +1 -1
- package/dist/esm-node/cli/index.js +11 -9
- package/dist/esm-node/common.js +3 -8
- package/dist/esm-node/config.js +1 -0
- package/dist/esm-node/core/appConfig.js +2 -6
- package/dist/esm-node/core/compatible.js +104 -120
- package/dist/esm-node/core/index.js +3 -13
- package/dist/esm-node/core/loader/index.js +1 -4
- package/dist/esm-node/core/loader/loaderManager.js +25 -25
- package/dist/esm-node/core/loader/useLoader.js +60 -74
- package/dist/esm-node/core/plugin.js +9 -15
- package/dist/esm-node/core/types.js +1 -0
- package/dist/esm-node/document/Body.js +11 -15
- package/dist/esm-node/document/Comment.js +10 -14
- package/dist/esm-node/document/DocumentContext.js +1 -4
- package/dist/esm-node/document/DocumentStructureContext.js +1 -4
- package/dist/esm-node/document/Head.js +14 -14
- package/dist/esm-node/document/Html.js +31 -34
- package/dist/esm-node/document/Links.js +5 -6
- package/dist/esm-node/document/Root.js +19 -21
- package/dist/esm-node/document/Script.js +10 -14
- package/dist/esm-node/document/Scripts.js +5 -6
- package/dist/esm-node/document/cli/index.js +136 -184
- package/dist/esm-node/document/constants.js +22 -52
- package/dist/esm-node/exports/head.js +1 -4
- package/dist/esm-node/exports/loadable.js +1 -4
- package/dist/esm-node/exports/server.js +1 -4
- package/dist/esm-node/exports/styled.js +1 -4
- package/dist/esm-node/index.js +2 -22
- package/dist/esm-node/router/cli/index.js +83 -98
- package/dist/esm-node/router/index.js +2 -6
- package/dist/esm-node/router/runtime/DefaultNotFound.js +11 -17
- package/dist/esm-node/router/runtime/DeferredDataScripts.js +1 -4
- package/dist/esm-node/router/runtime/DeferredDataScripts.node.js +51 -85
- package/dist/esm-node/router/runtime/PrefetchLink.js +53 -59
- package/dist/esm-node/router/runtime/fetch.js +1 -3
- package/dist/esm-node/router/runtime/fetch.node.js +1 -3
- package/dist/esm-node/router/runtime/fetch.worker.js +1 -3
- package/dist/esm-node/router/runtime/hooks.js +1 -3
- package/dist/esm-node/router/runtime/index.js +13 -68
- package/dist/esm-node/router/runtime/plugin.js +27 -41
- package/dist/esm-node/router/runtime/plugin.node.js +24 -32
- package/dist/esm-node/router/runtime/types.js +1 -0
- package/dist/esm-node/router/runtime/utils.js +34 -50
- package/dist/esm-node/router/runtime/withRouter.js +8 -14
- package/dist/esm-node/runtimeContext.js +2 -6
- package/dist/esm-node/ssr/cli/babel-plugin-ssr-loader-id.js +99 -119
- package/dist/esm-node/ssr/cli/index.js +106 -125
- package/dist/esm-node/ssr/index.js +112 -96
- package/dist/esm-node/ssr/index.node.js +39 -39
- package/dist/esm-node/ssr/prefetch.js +40 -35
- package/dist/esm-node/ssr/react/index.js +2 -6
- package/dist/esm-node/ssr/react/nossr/index.js +2 -9
- package/dist/esm-node/ssr/react/prerender/index.js +32 -23
- package/dist/esm-node/ssr/react/prerender/type.js +1 -0
- package/dist/esm-node/ssr/react/prerender/util.js +23 -33
- package/dist/esm-node/ssr/react/withCallback/index.js +4 -5
- package/dist/esm-node/ssr/serverRender/helmet.js +2 -5
- package/dist/esm-node/ssr/serverRender/index.js +5 -10
- package/dist/esm-node/ssr/serverRender/renderToStream/buildTemplate.after.js +5 -9
- package/dist/esm-node/ssr/serverRender/renderToStream/buildTemplate.share.js +3 -10
- package/dist/esm-node/ssr/serverRender/renderToStream/bulidTemplate.before.js +7 -17
- package/dist/esm-node/ssr/serverRender/renderToStream/index.js +2 -7
- package/dist/esm-node/ssr/serverRender/renderToStream/loadable.js +4 -8
- package/dist/esm-node/ssr/serverRender/renderToStream/renderToPipe.js +21 -39
- package/dist/esm-node/ssr/serverRender/renderToStream/renderToPipe.worker.js +16 -31
- package/dist/esm-node/ssr/serverRender/renderToStream/styledComponent.js +1 -4
- package/dist/esm-node/ssr/serverRender/renderToStream/template.js +2 -8
- package/dist/esm-node/ssr/serverRender/renderToStream/type.js +1 -0
- package/dist/esm-node/ssr/serverRender/renderToString/entry.js +50 -39
- package/dist/esm-node/ssr/serverRender/renderToString/index.js +1 -8
- package/dist/esm-node/ssr/serverRender/renderToString/loadable.js +8 -18
- package/dist/esm-node/ssr/serverRender/renderToString/reduce.js +1 -4
- package/dist/esm-node/ssr/serverRender/renderToString/styledComponent.js +1 -4
- package/dist/esm-node/ssr/serverRender/renderToString/template.js +32 -18
- package/dist/esm-node/ssr/serverRender/renderToString/type.js +3 -6
- package/dist/esm-node/ssr/serverRender/time.js +1 -4
- package/dist/esm-node/ssr/serverRender/time.worker.js +5 -5
- package/dist/esm-node/ssr/serverRender/types.js +1 -3
- package/dist/esm-node/ssr/serverRender/utils.js +4 -10
- package/dist/esm-node/ssr/utils.js +8 -19
- package/dist/esm-node/state/cli/index.js +63 -78
- package/dist/esm-node/state/index.js +2 -6
- package/dist/esm-node/state/plugins.js +4 -10
- package/dist/esm-node/state/runtime/index.js +1 -4
- package/dist/esm-node/state/runtime/plugin.js +47 -44
- package/dist/esm-node/state/types.js +1 -0
- package/dist/js/modern/cli/index.js +72 -0
- package/dist/js/modern/common.js +4 -0
- package/dist/js/modern/config.js +0 -0
- package/dist/js/modern/core/app-config.js +10 -0
- package/dist/js/modern/core/compatible.js +285 -0
- package/dist/js/modern/core/index.js +16 -0
- package/dist/js/modern/core/loader/index.js +4 -0
- package/dist/js/modern/core/loader/loaderManager.js +165 -0
- package/dist/js/modern/core/loader/useLoader.js +114 -0
- package/dist/js/modern/core/plugin.js +58 -0
- package/dist/js/modern/document/Body.js +23 -0
- package/dist/js/modern/document/DocumentContext.js +9 -0
- package/dist/js/modern/document/DocumentStructrueContext.js +11 -0
- package/dist/js/modern/document/Head.js +27 -0
- package/dist/js/modern/document/Html.js +78 -0
- package/dist/js/modern/document/Links.js +10 -0
- package/dist/js/modern/document/Root.js +33 -0
- package/dist/js/modern/document/Script.js +20 -0
- package/dist/js/modern/document/Scripts.js +10 -0
- package/dist/js/modern/document/cli/index.js +228 -0
- package/dist/js/modern/document/constants.js +49 -0
- package/dist/js/modern/document/index.js +10 -0
- package/dist/js/modern/exports/head.js +6 -0
- package/dist/js/modern/exports/loadable.js +6 -0
- package/dist/js/modern/exports/server.js +4 -0
- package/dist/js/modern/exports/styled.js +6 -0
- package/dist/js/modern/index.js +22 -0
- package/dist/js/modern/router/cli/index.js +120 -0
- package/dist/js/modern/router/index.js +7 -0
- package/dist/js/modern/router/runtime/DefaultNotFound.js +14 -0
- package/dist/js/modern/router/runtime/index.js +9 -0
- package/dist/js/modern/router/runtime/plugin.js +104 -0
- package/dist/js/modern/router/runtime/plugin.node.js +149 -0
- package/dist/js/modern/router/runtime/server.js +1 -0
- package/dist/js/modern/router/runtime/types.js +0 -0
- package/dist/js/modern/router/runtime/utils.js +196 -0
- package/dist/js/modern/router/runtime/withRouter.js +36 -0
- package/dist/js/modern/runtime-context.js +7 -0
- package/dist/js/modern/ssr/cli/babel-plugin-ssr-loader-id.js +130 -0
- package/dist/js/modern/ssr/cli/index.js +172 -0
- package/dist/js/modern/ssr/index.js +159 -0
- package/dist/js/modern/ssr/index.node.js +79 -0
- package/dist/js/modern/ssr/prefetch.js +69 -0
- package/dist/js/modern/ssr/react/index.js +6 -0
- package/dist/js/modern/ssr/react/nossr/index.js +14 -0
- package/dist/js/modern/ssr/react/prerender/index.js +108 -0
- package/dist/js/modern/ssr/react/prerender/type.js +0 -0
- package/dist/js/modern/ssr/react/prerender/util.js +96 -0
- package/dist/js/modern/ssr/react/withCallback/index.js +15 -0
- package/dist/js/modern/ssr/serverRender/helmet.js +44 -0
- package/dist/js/modern/ssr/serverRender/index.js +35 -0
- package/dist/js/modern/ssr/serverRender/renderToStream/buildTemplate.after.js +36 -0
- package/dist/js/modern/ssr/serverRender/renderToStream/buildTemplate.share.js +11 -0
- package/dist/js/modern/ssr/serverRender/renderToStream/bulidTemplate.before.js +61 -0
- package/dist/js/modern/ssr/serverRender/renderToStream/index.js +58 -0
- package/dist/js/modern/ssr/serverRender/renderToStream/loadable.js +24 -0
- package/dist/js/modern/ssr/serverRender/renderToStream/renderToPipe.js +94 -0
- package/dist/js/modern/ssr/serverRender/renderToStream/styledComponent.js +12 -0
- package/dist/js/modern/ssr/serverRender/renderToStream/template.js +22 -0
- package/dist/js/modern/ssr/serverRender/renderToStream/type.js +0 -0
- package/dist/js/modern/ssr/serverRender/renderToString/entry.js +171 -0
- package/dist/js/modern/ssr/serverRender/renderToString/index.js +52 -0
- package/dist/js/modern/ssr/serverRender/renderToString/loadable.js +48 -0
- package/dist/js/modern/ssr/serverRender/renderToString/reduce.js +8 -0
- package/dist/js/modern/ssr/serverRender/renderToString/styledComponent.js +11 -0
- package/dist/js/modern/ssr/serverRender/renderToString/template.js +58 -0
- package/dist/js/modern/ssr/serverRender/renderToString/type.js +9 -0
- package/dist/js/modern/ssr/serverRender/types.js +4 -0
- package/dist/js/modern/ssr/serverRender/utils.js +22 -0
- package/dist/js/modern/ssr/utils.js +81 -0
- package/dist/js/modern/state/cli/index.js +83 -0
- package/dist/js/modern/state/index.js +7 -0
- package/dist/js/modern/state/plugins.js +13 -0
- package/dist/js/modern/state/runtime/index.js +9 -0
- package/dist/js/modern/state/runtime/plugin.js +97 -0
- package/dist/js/modern/state/types.js +0 -0
- package/dist/js/node/cli/index.js +99 -0
- package/dist/js/node/common.js +27 -0
- package/dist/js/node/config.js +15 -0
- package/dist/js/node/core/app-config.js +34 -0
- package/dist/js/node/core/compatible.js +312 -0
- package/dist/js/node/core/index.js +47 -0
- package/dist/js/node/core/loader/index.js +33 -0
- package/dist/js/node/core/loader/loaderManager.js +195 -0
- package/dist/js/node/core/loader/useLoader.js +132 -0
- package/dist/js/node/core/plugin.js +80 -0
- package/dist/js/node/document/Body.js +43 -0
- package/dist/js/node/document/DocumentContext.js +38 -0
- package/dist/js/node/document/DocumentStructrueContext.js +40 -0
- package/dist/js/node/document/Head.js +51 -0
- package/dist/js/node/document/Html.js +101 -0
- package/dist/js/node/document/Links.js +33 -0
- package/dist/js/node/document/Root.js +57 -0
- package/dist/js/node/document/Script.js +40 -0
- package/dist/js/node/document/Scripts.js +33 -0
- package/dist/js/node/document/cli/index.js +240 -0
- package/dist/js/node/document/constants.js +86 -0
- package/dist/js/node/document/index.js +26 -0
- package/dist/js/node/exports/head.js +34 -0
- package/dist/js/node/exports/loadable.js +34 -0
- package/dist/js/node/exports/server.js +27 -0
- package/dist/js/node/exports/styled.js +34 -0
- package/dist/js/node/index.js +44 -0
- package/dist/js/node/router/cli/index.js +135 -0
- package/dist/js/node/router/index.js +37 -0
- package/dist/js/node/router/runtime/DefaultNotFound.js +37 -0
- package/dist/js/node/router/runtime/index.js +33 -0
- package/dist/js/node/router/runtime/plugin.js +127 -0
- package/dist/js/node/router/runtime/plugin.node.js +175 -0
- package/dist/js/node/router/runtime/server.js +17 -0
- package/dist/js/node/router/runtime/types.js +15 -0
- package/dist/js/node/router/runtime/utils.js +221 -0
- package/dist/js/node/router/runtime/withRouter.js +57 -0
- package/dist/js/node/runtime-context.js +31 -0
- package/dist/js/node/ssr/cli/babel-plugin-ssr-loader-id.js +139 -0
- package/dist/js/node/ssr/cli/index.js +190 -0
- package/dist/js/node/ssr/index.js +185 -0
- package/dist/js/node/ssr/index.node.js +107 -0
- package/dist/js/node/ssr/prefetch.js +90 -0
- package/dist/js/node/ssr/react/index.js +30 -0
- package/dist/js/node/ssr/react/nossr/index.js +43 -0
- package/dist/js/node/ssr/react/prerender/index.js +130 -0
- package/dist/js/node/ssr/react/prerender/type.js +15 -0
- package/dist/js/node/ssr/react/prerender/util.js +123 -0
- package/dist/js/node/ssr/react/withCallback/index.js +38 -0
- package/dist/js/node/ssr/serverRender/helmet.js +65 -0
- package/dist/js/node/ssr/serverRender/index.js +56 -0
- package/dist/js/node/ssr/serverRender/renderToStream/buildTemplate.after.js +65 -0
- package/dist/js/node/ssr/serverRender/renderToStream/buildTemplate.share.js +35 -0
- package/dist/js/node/ssr/serverRender/renderToStream/bulidTemplate.before.js +87 -0
- package/dist/js/node/ssr/serverRender/renderToStream/index.js +87 -0
- package/dist/js/node/ssr/serverRender/renderToStream/loadable.js +47 -0
- package/dist/js/node/ssr/serverRender/renderToStream/renderToPipe.js +111 -0
- package/dist/js/node/ssr/serverRender/renderToStream/styledComponent.js +35 -0
- package/dist/js/node/ssr/serverRender/renderToStream/template.js +45 -0
- package/dist/js/node/ssr/serverRender/renderToStream/type.js +15 -0
- package/dist/js/node/ssr/serverRender/renderToString/entry.js +196 -0
- package/dist/js/node/ssr/serverRender/renderToString/index.js +81 -0
- package/dist/js/node/ssr/serverRender/renderToString/loadable.js +71 -0
- package/dist/js/node/ssr/serverRender/renderToString/reduce.js +31 -0
- package/dist/js/node/ssr/serverRender/renderToString/styledComponent.js +34 -0
- package/dist/js/node/ssr/serverRender/renderToString/template.js +82 -0
- package/dist/js/node/ssr/serverRender/renderToString/type.js +32 -0
- package/dist/js/node/ssr/serverRender/types.js +27 -0
- package/dist/js/node/ssr/serverRender/utils.js +46 -0
- package/dist/js/node/ssr/utils.js +106 -0
- package/dist/js/node/state/cli/index.js +100 -0
- package/dist/js/node/state/index.js +37 -0
- package/dist/js/node/state/plugins.js +45 -0
- package/dist/js/node/state/runtime/index.js +40 -0
- package/dist/js/node/state/runtime/plugin.js +121 -0
- package/dist/js/node/state/types.js +15 -0
- package/dist/js/treeshaking/cli/index.js +186 -0
- package/dist/js/treeshaking/common.js +4 -0
- package/dist/js/treeshaking/config.js +1 -0
- package/dist/js/treeshaking/core/app-config.js +9 -0
- package/dist/js/treeshaking/core/compatible.js +485 -0
- package/dist/js/treeshaking/core/index.js +7 -0
- package/dist/js/treeshaking/core/loader/index.js +2 -0
- package/dist/js/treeshaking/core/loader/loaderManager.js +406 -0
- package/dist/js/treeshaking/core/loader/useLoader.js +188 -0
- package/dist/js/treeshaking/core/plugin.js +176 -0
- package/dist/js/treeshaking/document/Body.js +18 -0
- package/dist/js/treeshaking/document/DocumentContext.js +7 -0
- package/dist/js/treeshaking/document/DocumentStructrueContext.js +9 -0
- package/dist/js/treeshaking/document/Head.js +24 -0
- package/dist/js/treeshaking/document/Html.js +99 -0
- package/dist/js/treeshaking/document/Links.js +8 -0
- package/dist/js/treeshaking/document/Root.js +26 -0
- package/dist/js/treeshaking/document/Script.js +15 -0
- package/dist/js/treeshaking/document/Scripts.js +8 -0
- package/dist/js/treeshaking/document/cli/index.js +393 -0
- package/dist/js/treeshaking/document/constants.js +35 -0
- package/dist/js/treeshaking/document/index.js +10 -0
- package/dist/js/treeshaking/exports/head.js +4 -0
- package/dist/js/treeshaking/exports/loadable.js +4 -0
- package/dist/js/treeshaking/exports/server.js +4 -0
- package/dist/js/treeshaking/exports/styled.js +4 -0
- package/dist/js/treeshaking/index.js +3 -0
- package/dist/js/treeshaking/router/cli/index.js +148 -0
- package/dist/js/treeshaking/router/index.js +4 -0
- package/dist/js/treeshaking/router/runtime/DefaultNotFound.js +14 -0
- package/dist/js/treeshaking/router/runtime/index.js +6 -0
- package/dist/js/treeshaking/router/runtime/plugin.js +132 -0
- package/dist/js/treeshaking/router/runtime/plugin.node.js +390 -0
- package/dist/js/treeshaking/router/runtime/server.js +1 -0
- package/dist/js/treeshaking/router/runtime/types.js +1 -0
- package/dist/js/treeshaking/router/runtime/utils.js +260 -0
- package/dist/js/treeshaking/router/runtime/withRouter.js +67 -0
- package/dist/js/treeshaking/runtime-context.js +4 -0
- package/dist/js/treeshaking/ssr/cli/babel-plugin-ssr-loader-id.js +122 -0
- package/dist/js/treeshaking/ssr/cli/index.js +217 -0
- package/dist/js/treeshaking/ssr/index.js +315 -0
- package/dist/js/treeshaking/ssr/index.node.js +240 -0
- package/dist/js/treeshaking/ssr/prefetch.js +199 -0
- package/dist/js/treeshaking/ssr/react/index.js +3 -0
- package/dist/js/treeshaking/ssr/react/nossr/index.js +58 -0
- package/dist/js/treeshaking/ssr/react/prerender/index.js +237 -0
- package/dist/js/treeshaking/ssr/react/prerender/type.js +1 -0
- package/dist/js/treeshaking/ssr/react/prerender/util.js +108 -0
- package/dist/js/treeshaking/ssr/react/withCallback/index.js +16 -0
- package/dist/js/treeshaking/ssr/serverRender/helmet.js +42 -0
- package/dist/js/treeshaking/ssr/serverRender/index.js +169 -0
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/buildTemplate.after.js +34 -0
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/buildTemplate.share.js +7 -0
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/bulidTemplate.before.js +115 -0
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/index.js +165 -0
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/loadable.js +22 -0
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/renderToPipe.js +119 -0
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/styledComponent.js +11 -0
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/template.js +63 -0
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/type.js +1 -0
- package/dist/js/treeshaking/ssr/serverRender/renderToString/entry.js +393 -0
- package/dist/js/treeshaking/ssr/serverRender/renderToString/index.js +165 -0
- package/dist/js/treeshaking/ssr/serverRender/renderToString/loadable.js +56 -0
- package/dist/js/treeshaking/ssr/serverRender/renderToString/reduce.js +10 -0
- package/dist/js/treeshaking/ssr/serverRender/renderToString/styledComponent.js +9 -0
- package/dist/js/treeshaking/ssr/serverRender/renderToString/template.js +156 -0
- package/dist/js/treeshaking/ssr/serverRender/renderToString/type.js +7 -0
- package/dist/js/treeshaking/ssr/serverRender/types.js +2 -0
- package/dist/js/treeshaking/ssr/serverRender/utils.js +69 -0
- package/dist/js/treeshaking/ssr/utils.js +134 -0
- package/dist/js/treeshaking/state/cli/index.js +71 -0
- package/dist/js/treeshaking/state/index.js +4 -0
- package/dist/js/treeshaking/state/plugins.js +14 -0
- package/dist/js/treeshaking/state/runtime/index.js +5 -0
- package/dist/js/treeshaking/state/runtime/plugin.js +198 -0
- package/dist/js/treeshaking/state/types.js +1 -0
- package/dist/types/router/runtime/index.d.ts +3 -1
- package/package.json +4 -4
- package/types/model.d.ts +1 -0
|
@@ -1,106 +1,91 @@
|
|
|
1
|
-
import {
|
|
2
|
-
getEntryOptions,
|
|
3
|
-
createRuntimeExportsUtils,
|
|
4
|
-
PLUGIN_SCHEMAS,
|
|
5
|
-
isRouterV5 as isV5
|
|
6
|
-
} from "@modern-js/utils";
|
|
1
|
+
import { getEntryOptions, createRuntimeExportsUtils, PLUGIN_SCHEMAS, isRouterV5 as isV5 } from "@modern-js/utils";
|
|
7
2
|
const PLUGIN_IDENTIFIER = "router";
|
|
8
3
|
const ROUTES_IDENTIFIER = "routes";
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
4
|
+
export default () => {
|
|
5
|
+
return {
|
|
6
|
+
name: "@modern-js/plugin-router",
|
|
7
|
+
required: [
|
|
8
|
+
"@modern-js/runtime"
|
|
9
|
+
],
|
|
10
|
+
setup: (api) => {
|
|
11
|
+
const runtimeConfigMap = /* @__PURE__ */ new Map();
|
|
12
|
+
let pluginsExportsUtils;
|
|
13
|
+
return {
|
|
14
|
+
config() {
|
|
15
|
+
const appContext = api.useAppContext();
|
|
16
|
+
pluginsExportsUtils = createRuntimeExportsUtils(appContext.internalDirectory, "plugins");
|
|
17
|
+
return {
|
|
18
|
+
source: {
|
|
19
|
+
include: [
|
|
20
|
+
// react-router v6 is no longer support ie 11
|
|
21
|
+
// so we need to compile these packages to ensure the compatibility
|
|
22
|
+
// https://github.com/remix-run/react-router/commit/f6df0697e1b2064a2b3a12e8b39577326fdd945b
|
|
23
|
+
/node_modules\/react-router/,
|
|
24
|
+
/node_modules\/react-router-dom/,
|
|
25
|
+
/node_modules\/@remix-run\/router/
|
|
26
|
+
],
|
|
27
|
+
alias: {
|
|
28
|
+
"@modern-js/runtime/plugins": pluginsExportsUtils.getPath()
|
|
29
|
+
}
|
|
34
30
|
}
|
|
31
|
+
};
|
|
32
|
+
},
|
|
33
|
+
validateSchema() {
|
|
34
|
+
return PLUGIN_SCHEMAS["@modern-js/plugin-router"];
|
|
35
|
+
},
|
|
36
|
+
modifyEntryImports({ entrypoint, imports }) {
|
|
37
|
+
const { entryName, fileSystemRoutes } = entrypoint;
|
|
38
|
+
const userConfig = api.useResolvedConfigContext();
|
|
39
|
+
const { packageName } = api.useAppContext();
|
|
40
|
+
const runtimeConfig = getEntryOptions(entryName, userConfig.runtime, userConfig.runtimeByEntries, packageName);
|
|
41
|
+
runtimeConfigMap.set(entryName, runtimeConfig);
|
|
42
|
+
if (runtimeConfig === null || runtimeConfig === void 0 ? void 0 : runtimeConfig.router) {
|
|
43
|
+
if (!isV5(userConfig)) {
|
|
44
|
+
imports.push({
|
|
45
|
+
value: "@modern-js/runtime/plugins",
|
|
46
|
+
specifiers: [
|
|
47
|
+
{
|
|
48
|
+
imported: PLUGIN_IDENTIFIER
|
|
49
|
+
}
|
|
50
|
+
]
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
} else if (fileSystemRoutes) {
|
|
54
|
+
throw new Error(`should enable runtime.router for entry ${entryName}`);
|
|
35
55
|
}
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
value: "@modern-js/runtime/plugins",
|
|
56
|
-
specifiers: [{ imported: PLUGIN_IDENTIFIER }]
|
|
56
|
+
return {
|
|
57
|
+
entrypoint,
|
|
58
|
+
imports
|
|
59
|
+
};
|
|
60
|
+
},
|
|
61
|
+
modifyEntryRuntimePlugins({ entrypoint, plugins }) {
|
|
62
|
+
const { entryName, fileSystemRoutes } = entrypoint;
|
|
63
|
+
const { serverRoutes } = api.useAppContext();
|
|
64
|
+
const userConfig = api.useResolvedConfigContext();
|
|
65
|
+
const runtimeConfig = runtimeConfigMap.get(entryName);
|
|
66
|
+
if (runtimeConfig.router && !isV5(userConfig)) {
|
|
67
|
+
const serverBase = serverRoutes.filter((route) => route.entryName === entryName).map((route) => route.urlPath).sort((a, b) => a.length - b.length > 0 ? -1 : 1);
|
|
68
|
+
plugins.push({
|
|
69
|
+
name: PLUGIN_IDENTIFIER,
|
|
70
|
+
options: JSON.stringify({
|
|
71
|
+
serverBase,
|
|
72
|
+
...runtimeConfig.router,
|
|
73
|
+
routesConfig: fileSystemRoutes ? `{ ${ROUTES_IDENTIFIER}, globalApp: App }` : void 0
|
|
74
|
+
}).replace(/"routesConfig"\s*:\s*"((\S|\s)+)"/g, '"routesConfig": $1,')
|
|
57
75
|
});
|
|
58
76
|
}
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
modifyEntryRuntimePlugins({ entrypoint, plugins }) {
|
|
70
|
-
const { entryName, fileSystemRoutes } = entrypoint;
|
|
71
|
-
const { serverRoutes } = api.useAppContext();
|
|
72
|
-
const userConfig = api.useResolvedConfigContext();
|
|
73
|
-
const runtimeConfig = runtimeConfigMap.get(entryName);
|
|
74
|
-
if (runtimeConfig.router && !isV5(userConfig)) {
|
|
75
|
-
const serverBase = serverRoutes.filter((route) => route.entryName === entryName).map((route) => route.urlPath).sort((a, b) => a.length - b.length > 0 ? -1 : 1);
|
|
76
|
-
plugins.push({
|
|
77
|
-
name: PLUGIN_IDENTIFIER,
|
|
78
|
-
options: JSON.stringify({
|
|
79
|
-
serverBase,
|
|
80
|
-
...runtimeConfig.router,
|
|
81
|
-
routesConfig: fileSystemRoutes ? `{ ${ROUTES_IDENTIFIER}, globalApp: App }` : void 0
|
|
82
|
-
}).replace(
|
|
83
|
-
/"routesConfig"\s*:\s*"((\S|\s)+)"/g,
|
|
84
|
-
'"routesConfig": $1,'
|
|
85
|
-
)
|
|
86
|
-
});
|
|
87
|
-
}
|
|
88
|
-
return {
|
|
89
|
-
entrypoint,
|
|
90
|
-
plugins
|
|
91
|
-
};
|
|
92
|
-
},
|
|
93
|
-
addRuntimeExports() {
|
|
94
|
-
const userConfig = api.useResolvedConfigContext();
|
|
95
|
-
if (!isV5(userConfig)) {
|
|
96
|
-
pluginsExportsUtils.addExport(
|
|
97
|
-
`export { default as router } from '@modern-js/runtime/router'`
|
|
98
|
-
);
|
|
77
|
+
return {
|
|
78
|
+
entrypoint,
|
|
79
|
+
plugins
|
|
80
|
+
};
|
|
81
|
+
},
|
|
82
|
+
addRuntimeExports() {
|
|
83
|
+
const userConfig = api.useResolvedConfigContext();
|
|
84
|
+
if (!isV5(userConfig)) {
|
|
85
|
+
pluginsExportsUtils.addExport(`export { default as router } from '@modern-js/runtime/router'`);
|
|
86
|
+
}
|
|
99
87
|
}
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
});
|
|
104
|
-
export {
|
|
105
|
-
cli_default as default
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
};
|
|
106
91
|
};
|
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
export { default as router } from "./runtime";
|
|
2
|
+
export { default } from "./runtime";
|
|
3
3
|
export * from "./runtime";
|
|
4
|
-
export {
|
|
5
|
-
default3 as default,
|
|
6
|
-
default2 as router
|
|
7
|
-
};
|
|
@@ -1,17 +1,11 @@
|
|
|
1
|
-
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
const DefaultNotFound = () => /* @__PURE__ */
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
children: "404"
|
|
13
|
-
}
|
|
14
|
-
);
|
|
15
|
-
export {
|
|
16
|
-
DefaultNotFound
|
|
17
|
-
};
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
export const DefaultNotFound = () => /* @__PURE__ */ _jsx("div", {
|
|
3
|
+
style: {
|
|
4
|
+
margin: "150px auto",
|
|
5
|
+
textAlign: "center",
|
|
6
|
+
display: "flex",
|
|
7
|
+
alignItems: "center",
|
|
8
|
+
justifyContent: "center"
|
|
9
|
+
},
|
|
10
|
+
children: "404"
|
|
11
|
+
});
|
|
@@ -1,10 +1,6 @@
|
|
|
1
|
-
import {
|
|
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 {
|
|
4
|
-
Await,
|
|
5
|
-
UNSAFE_DataRouterContext as DataRouterContext,
|
|
6
|
-
useAsyncError
|
|
7
|
-
} from "react-router-dom";
|
|
3
|
+
import { Await, UNSAFE_DataRouterContext as DataRouterContext, useAsyncError } from "react-router-dom";
|
|
8
4
|
import { serializeJson } from "@modern-js/utils/universal/serialize";
|
|
9
5
|
import { JSX_SHELL_STREAM_END_MARK } from "../../common";
|
|
10
6
|
import { serializeErrors } from "./utils";
|
|
@@ -39,20 +35,12 @@ const DeferredDataScripts = () => {
|
|
|
39
35
|
const { deferredKeys } = deferredData;
|
|
40
36
|
const deferredKeyPromiseStr = deferredKeys.map((key) => {
|
|
41
37
|
if (pendingKeys.has(key)) {
|
|
42
|
-
deferredDataScripts.push(
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
{
|
|
46
|
-
data: deferredData.data[key],
|
|
47
|
-
dataKey: key,
|
|
48
|
-
routeId
|
|
49
|
-
},
|
|
50
|
-
`${routeId} | ${key}`
|
|
51
|
-
)
|
|
52
|
-
);
|
|
53
|
-
return `${JSON.stringify(key)}: _ROUTER_DATA.s(${JSON.stringify(
|
|
38
|
+
deferredDataScripts.push(/* @__PURE__ */ _jsx(DeferredDataScript, {
|
|
39
|
+
data: deferredData.data[key],
|
|
40
|
+
dataKey: key,
|
|
54
41
|
routeId
|
|
55
|
-
|
|
42
|
+
}, `${routeId} | ${key}`));
|
|
43
|
+
return `${JSON.stringify(key)}: _ROUTER_DATA.s(${JSON.stringify(routeId)},${JSON.stringify(key)}) `;
|
|
56
44
|
} else {
|
|
57
45
|
const trackedPromise = deferredData.data[key];
|
|
58
46
|
if (typeof trackedPromise._error !== "undefined") {
|
|
@@ -60,89 +48,67 @@ const DeferredDataScripts = () => {
|
|
|
60
48
|
message: trackedPromise._error.message,
|
|
61
49
|
stack: process.env.NODE_ENV !== "production" ? trackedPromise._error.stack : void 0
|
|
62
50
|
};
|
|
63
|
-
return `${JSON.stringify(
|
|
64
|
-
key
|
|
65
|
-
)}: _ROUTER_DATA.p(${void 0}, ${serializeJson(error)})`;
|
|
51
|
+
return `${JSON.stringify(key)}: _ROUTER_DATA.p(${void 0}, ${serializeJson(error)})`;
|
|
66
52
|
} else {
|
|
67
53
|
if (typeof trackedPromise._data === "undefined") {
|
|
68
|
-
throw new Error(
|
|
69
|
-
`The deferred data for ${key} was not resolved, did you forget to return data from a deferred promise`
|
|
70
|
-
);
|
|
54
|
+
throw new Error(`The deferred data for ${key} was not resolved, did you forget to return data from a deferred promise`);
|
|
71
55
|
}
|
|
72
|
-
return `${JSON.stringify(key)}: _ROUTER_DATA.p(${serializeJson(
|
|
73
|
-
trackedPromise._data
|
|
74
|
-
)})`;
|
|
56
|
+
return `${JSON.stringify(key)}: _ROUTER_DATA.p(${serializeJson(trackedPromise._data)})`;
|
|
75
57
|
}
|
|
76
58
|
}
|
|
77
59
|
}).join(",\n");
|
|
78
|
-
return `Object.assign(_ROUTER_DATA.loaderData[${JSON.stringify(
|
|
79
|
-
routeId
|
|
80
|
-
)}], {${deferredKeyPromiseStr}});`;
|
|
60
|
+
return `Object.assign(_ROUTER_DATA.loaderData[${JSON.stringify(routeId)}], {${deferredKeyPromiseStr}});`;
|
|
81
61
|
}).join("\n");
|
|
82
|
-
return [
|
|
62
|
+
return [
|
|
63
|
+
initialScripts,
|
|
64
|
+
deferredDataScripts
|
|
65
|
+
];
|
|
83
66
|
}, []);
|
|
84
67
|
if (!deferredScripts) {
|
|
85
68
|
return null;
|
|
86
69
|
}
|
|
87
|
-
return /* @__PURE__ */
|
|
88
|
-
|
|
89
|
-
"script",
|
|
90
|
-
{
|
|
70
|
+
return /* @__PURE__ */ _jsxs(_Fragment, {
|
|
71
|
+
children: [
|
|
72
|
+
!hydratedRef.current && /* @__PURE__ */ _jsx("script", {
|
|
91
73
|
async: true,
|
|
92
74
|
suppressHydrationWarning: true,
|
|
93
|
-
dangerouslySetInnerHTML: {
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
75
|
+
dangerouslySetInnerHTML: {
|
|
76
|
+
__html: deferredScripts[0]
|
|
77
|
+
}
|
|
78
|
+
}),
|
|
79
|
+
!hydratedRef.current && deferredScripts[1],
|
|
80
|
+
JSX_SHELL_STREAM_END_MARK
|
|
81
|
+
]
|
|
82
|
+
});
|
|
99
83
|
};
|
|
100
|
-
const DeferredDataScript = ({
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
dataKey
|
|
104
|
-
}) => {
|
|
105
|
-
return /* @__PURE__ */ jsx(Suspense, { children: typeof document === "undefined" && data && dataKey && routeId ? /* @__PURE__ */ jsx(
|
|
106
|
-
Await,
|
|
107
|
-
{
|
|
84
|
+
const DeferredDataScript = ({ data, routeId, dataKey }) => {
|
|
85
|
+
return /* @__PURE__ */ _jsx(Suspense, {
|
|
86
|
+
children: typeof document === "undefined" && data && dataKey && routeId ? /* @__PURE__ */ _jsx(Await, {
|
|
108
87
|
resolve: data,
|
|
109
|
-
errorElement: /* @__PURE__ */
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
)}, ${JSON.stringify(dataKey)}, ${serializeJson(data2)});`
|
|
119
|
-
}
|
|
88
|
+
errorElement: /* @__PURE__ */ _jsx(ErrorDeferredDataScript, {
|
|
89
|
+
routeId,
|
|
90
|
+
dataKey
|
|
91
|
+
}),
|
|
92
|
+
children: (data2) => /* @__PURE__ */ _jsx("script", {
|
|
93
|
+
async: true,
|
|
94
|
+
suppressHydrationWarning: true,
|
|
95
|
+
dangerouslySetInnerHTML: {
|
|
96
|
+
__html: `_ROUTER_DATA.r(${JSON.stringify(routeId)}, ${JSON.stringify(dataKey)}, ${serializeJson(data2)});`
|
|
120
97
|
}
|
|
121
|
-
)
|
|
122
|
-
}
|
|
123
|
-
|
|
98
|
+
})
|
|
99
|
+
}) : null
|
|
100
|
+
});
|
|
124
101
|
};
|
|
125
|
-
const ErrorDeferredDataScript = ({
|
|
126
|
-
routeId,
|
|
127
|
-
dataKey
|
|
128
|
-
}) => {
|
|
102
|
+
const ErrorDeferredDataScript = ({ routeId, dataKey }) => {
|
|
129
103
|
const error = useAsyncError();
|
|
130
|
-
return /* @__PURE__ */
|
|
131
|
-
|
|
132
|
-
{
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
)}, ${void 0}, ${serializeJson({
|
|
138
|
-
message: error.message,
|
|
139
|
-
stack: error.stack
|
|
140
|
-
})});`
|
|
141
|
-
}
|
|
104
|
+
return /* @__PURE__ */ _jsx("script", {
|
|
105
|
+
suppressHydrationWarning: true,
|
|
106
|
+
dangerouslySetInnerHTML: {
|
|
107
|
+
__html: `_ROUTER_DATA.r(${JSON.stringify(routeId)}, ${JSON.stringify(dataKey)}, ${void 0}, ${serializeJson({
|
|
108
|
+
message: error.message,
|
|
109
|
+
stack: error.stack
|
|
110
|
+
})});`
|
|
142
111
|
}
|
|
143
|
-
);
|
|
144
|
-
};
|
|
145
|
-
var DeferredDataScripts_node_default = DeferredDataScripts;
|
|
146
|
-
export {
|
|
147
|
-
DeferredDataScripts_node_default as default
|
|
112
|
+
});
|
|
148
113
|
};
|
|
114
|
+
export default DeferredDataScripts;
|
|
@@ -1,17 +1,10 @@
|
|
|
1
|
-
import {
|
|
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 {
|
|
4
|
-
Link as RouterLink,
|
|
5
|
-
matchRoutes,
|
|
6
|
-
useResolvedPath,
|
|
7
|
-
useHref,
|
|
8
|
-
useMatches,
|
|
9
|
-
NavLink as RouterNavLink
|
|
10
|
-
} from "react-router-dom";
|
|
3
|
+
import { Link as RouterLink, matchRoutes, useResolvedPath, useHref, useMatches, NavLink as RouterNavLink } from "react-router-dom";
|
|
11
4
|
import { RuntimeReactContext } from "../../core";
|
|
12
|
-
function composeEventHandlers(theirHandler, ourHandler) {
|
|
5
|
+
export function composeEventHandlers(theirHandler, ourHandler) {
|
|
13
6
|
return (event) => {
|
|
14
|
-
theirHandler
|
|
7
|
+
theirHandler === null || theirHandler === void 0 ? void 0 : theirHandler(event);
|
|
15
8
|
if (!event.defaultPrevented) {
|
|
16
9
|
ourHandler(event);
|
|
17
10
|
}
|
|
@@ -26,7 +19,9 @@ function usePrefetchBehavior(prefetch, theirElementProps) {
|
|
|
26
19
|
if (prefetch === "render") {
|
|
27
20
|
setShouldPrefetch(true);
|
|
28
21
|
}
|
|
29
|
-
}, [
|
|
22
|
+
}, [
|
|
23
|
+
prefetch
|
|
24
|
+
]);
|
|
30
25
|
const setIntent = () => {
|
|
31
26
|
if (prefetch === "intent") {
|
|
32
27
|
setMaybePrefetch(true);
|
|
@@ -47,7 +42,9 @@ function usePrefetchBehavior(prefetch, theirElementProps) {
|
|
|
47
42
|
clearTimeout(id);
|
|
48
43
|
};
|
|
49
44
|
}
|
|
50
|
-
}, [
|
|
45
|
+
}, [
|
|
46
|
+
maybePrefetch
|
|
47
|
+
]);
|
|
51
48
|
return [
|
|
52
49
|
shouldPrefetch,
|
|
53
50
|
{
|
|
@@ -72,11 +69,9 @@ async function loadRouteModule(route, routeAssets) {
|
|
|
72
69
|
return;
|
|
73
70
|
}
|
|
74
71
|
try {
|
|
75
|
-
await Promise.all(
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
})
|
|
79
|
-
);
|
|
72
|
+
await Promise.all(chunkIds.map((chunkId) => {
|
|
73
|
+
return __webpack_chunk_load__ === null || __webpack_chunk_load__ === void 0 ? void 0 : __webpack_chunk_load__(String(chunkId));
|
|
74
|
+
}));
|
|
80
75
|
} catch (error) {
|
|
81
76
|
console.error(error);
|
|
82
77
|
}
|
|
@@ -91,7 +86,11 @@ const getRequestUrl = (pathname, routeId) => {
|
|
|
91
86
|
return url;
|
|
92
87
|
};
|
|
93
88
|
const createDataHref = (href) => {
|
|
94
|
-
return /* @__PURE__ */
|
|
89
|
+
return /* @__PURE__ */ _jsx("link", {
|
|
90
|
+
rel: "prefetch",
|
|
91
|
+
as: "fetch",
|
|
92
|
+
href
|
|
93
|
+
}, href);
|
|
95
94
|
};
|
|
96
95
|
const getDataHref = (route, pathname, basename) => {
|
|
97
96
|
const { id } = route;
|
|
@@ -105,25 +104,22 @@ const PrefetchPageLinks = ({ pathname }) => {
|
|
|
105
104
|
const { routeAssets } = routeManifest;
|
|
106
105
|
const matches = Array.isArray(routes) ? matchRoutes(routes, pathname) : [];
|
|
107
106
|
if (Array.isArray(matches)) {
|
|
108
|
-
matches
|
|
107
|
+
matches === null || matches === void 0 ? void 0 : matches.forEach((match) => loadRouteModule(match.route, routeAssets));
|
|
109
108
|
}
|
|
110
109
|
if (!window._SSR_DATA) {
|
|
111
110
|
return null;
|
|
112
111
|
}
|
|
113
|
-
return /* @__PURE__ */
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
routeManifest
|
|
119
|
-
}
|
|
120
|
-
);
|
|
112
|
+
return /* @__PURE__ */ _jsx(PrefetchDataLinks, {
|
|
113
|
+
matches,
|
|
114
|
+
pathname,
|
|
115
|
+
routeManifest
|
|
116
|
+
});
|
|
121
117
|
};
|
|
122
118
|
const PrefetchDataLinks = ({ matches, pathname, routeManifest }) => {
|
|
123
119
|
const currentMatches = useMatches();
|
|
124
120
|
const basename = useHref("/");
|
|
125
121
|
const dataHrefs = useMemo(() => {
|
|
126
|
-
return matches
|
|
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
|
}
|
|
@@ -139,40 +135,38 @@ const PrefetchDataLinks = ({ matches, pathname, routeManifest }) => {
|
|
|
139
135
|
}
|
|
140
136
|
return false;
|
|
141
137
|
}).map((match) => getDataHref(match.route, pathname, basename));
|
|
142
|
-
}, [
|
|
143
|
-
|
|
138
|
+
}, [
|
|
139
|
+
matches,
|
|
140
|
+
pathname,
|
|
141
|
+
routeManifest
|
|
142
|
+
]);
|
|
143
|
+
return /* @__PURE__ */ _jsx(_Fragment, {
|
|
144
|
+
children: dataHrefs
|
|
145
|
+
});
|
|
144
146
|
};
|
|
145
147
|
const createPrefetchLink = (Link2) => {
|
|
146
|
-
return React.forwardRef(
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
shouldPrefetch && __webpack_chunk_load__ && !isAbsolute ? /* @__PURE__ */ jsx(PrefetchPageLinks, { pathname }) : null
|
|
166
|
-
] });
|
|
167
|
-
}
|
|
168
|
-
);
|
|
148
|
+
return /* @__PURE__ */ React.forwardRef(({ to, prefetch = "none", ...props }, forwardedRef) => {
|
|
149
|
+
const isAbsolute = typeof to === "string" && ABSOLUTE_URL_REGEX.test(to);
|
|
150
|
+
const [shouldPrefetch, prefetchHandlers] = usePrefetchBehavior(prefetch, props);
|
|
151
|
+
const resolvedPath = useResolvedPath(to);
|
|
152
|
+
const { pathname } = resolvedPath;
|
|
153
|
+
return /* @__PURE__ */ _jsxs(_Fragment, {
|
|
154
|
+
children: [
|
|
155
|
+
/* @__PURE__ */ _jsx(Link2, {
|
|
156
|
+
ref: forwardedRef,
|
|
157
|
+
to,
|
|
158
|
+
...props,
|
|
159
|
+
...prefetchHandlers
|
|
160
|
+
}),
|
|
161
|
+
shouldPrefetch && __webpack_chunk_load__ && !isAbsolute ? /* @__PURE__ */ _jsx(PrefetchPageLinks, {
|
|
162
|
+
pathname
|
|
163
|
+
}) : null
|
|
164
|
+
]
|
|
165
|
+
});
|
|
166
|
+
});
|
|
169
167
|
};
|
|
170
168
|
const Link = createPrefetchLink(RouterLink);
|
|
171
169
|
Link.displayName = "Link";
|
|
172
170
|
const NavLink = createPrefetchLink(RouterNavLink);
|
|
173
171
|
NavLink.displayName = "NavLink";
|
|
174
|
-
export {
|
|
175
|
-
Link,
|
|
176
|
-
NavLink,
|
|
177
|
-
composeEventHandlers
|
|
178
|
-
};
|
|
172
|
+
export { Link, NavLink };
|