@bleedingdev/modern-js-runtime 3.2.0-ultramodern.101 → 3.2.0-ultramodern.103
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/boundary-debugger/index.js +9 -5
- package/dist/cjs/cache/index.js +9 -5
- package/dist/cjs/cli/alias.js +9 -5
- package/dist/cjs/cli/code.js +9 -5
- package/dist/cjs/cli/constants.js +20 -16
- package/dist/cjs/cli/entry.js +9 -5
- package/dist/cjs/cli/index.js +9 -5
- package/dist/cjs/cli/ssr/index.js +9 -5
- package/dist/cjs/cli/ssr/loadable-bundler-plugin.js +9 -5
- package/dist/cjs/cli/ssr/mode.js +12 -8
- package/dist/cjs/cli/template.js +9 -5
- package/dist/cjs/cli/template.server.js +9 -5
- package/dist/cjs/common.js +14 -10
- package/dist/cjs/core/browser/hydrate.js +9 -5
- package/dist/cjs/core/browser/index.js +9 -5
- package/dist/cjs/core/browser/withCallback.js +9 -5
- package/dist/cjs/core/compat/hooks.js +14 -10
- package/dist/cjs/core/compat/index.js +9 -5
- package/dist/cjs/core/compat/requestContext.js +13 -9
- package/dist/cjs/core/config.js +12 -8
- package/dist/cjs/core/constants.js +15 -10
- package/dist/cjs/core/context/index.js +9 -5
- package/dist/cjs/core/context/monitors/default.js +12 -8
- package/dist/cjs/core/context/monitors/index.js +9 -5
- package/dist/cjs/core/context/monitors/index.server.js +9 -5
- package/dist/cjs/core/context/request/index.js +12 -8
- package/dist/cjs/core/context/request/index.server.js +9 -5
- package/dist/cjs/core/context/response/index.js +15 -11
- package/dist/cjs/core/context/response/index.server.js +9 -5
- package/dist/cjs/core/context/runtime.js +9 -5
- package/dist/cjs/core/context/serverPayload/index.js +13 -9
- package/dist/cjs/core/context/serverPayload/index.server.js +9 -5
- package/dist/cjs/core/index.js +9 -5
- package/dist/cjs/core/plugin/index.js +9 -5
- package/dist/cjs/core/react/index.js +9 -5
- package/dist/cjs/core/react/wrapper.js +9 -5
- package/dist/cjs/core/server/constants.js +15 -11
- package/dist/cjs/core/server/federatedCss.js +9 -5
- package/dist/cjs/core/server/helmet.js +9 -5
- package/dist/cjs/core/server/index.js +9 -5
- package/dist/cjs/core/server/react/index.js +9 -5
- package/dist/cjs/core/server/react/no-ssr-cache/index.js +9 -5
- package/dist/cjs/core/server/react/nossr/index.js +9 -5
- package/dist/cjs/core/server/requestHandler.js +9 -5
- package/dist/cjs/core/server/scriptOrder.js +12 -8
- package/dist/cjs/core/server/server.js +9 -5
- package/dist/cjs/core/server/shared.js +12 -8
- package/dist/cjs/core/server/stream/afterTemplate.js +9 -5
- package/dist/cjs/core/server/stream/beforeTemplate.js +9 -5
- package/dist/cjs/core/server/stream/beforeTemplate.worker.js +9 -5
- package/dist/cjs/core/server/stream/createReadableStream.js +9 -5
- package/dist/cjs/core/server/stream/createReadableStream.worker.js +9 -5
- package/dist/cjs/core/server/stream/deferredScript.js +9 -5
- package/dist/cjs/core/server/stream/index.js +9 -5
- package/dist/cjs/core/server/stream/shared.js +9 -5
- package/dist/cjs/core/server/stream/template.js +9 -5
- package/dist/cjs/core/server/string/index.js +9 -5
- package/dist/cjs/core/server/string/loadable.js +9 -5
- package/dist/cjs/core/server/string/ssrData.js +9 -5
- package/dist/cjs/core/server/tracer.js +13 -9
- package/dist/cjs/core/server/utils.js +9 -5
- package/dist/cjs/document/Body.js +9 -5
- package/dist/cjs/document/Comment.js +9 -5
- package/dist/cjs/document/DocumentContext.js +9 -5
- package/dist/cjs/document/DocumentStructureContext.js +9 -5
- package/dist/cjs/document/Head.js +9 -5
- package/dist/cjs/document/Html.js +9 -5
- package/dist/cjs/document/Links.js +9 -5
- package/dist/cjs/document/Root.js +9 -5
- package/dist/cjs/document/Script.js +9 -5
- package/dist/cjs/document/Scripts.js +9 -5
- package/dist/cjs/document/Style.js +9 -5
- package/dist/cjs/document/Title.js +9 -5
- package/dist/cjs/document/cli/index.js +12 -6
- package/dist/cjs/document/constants.js +9 -5
- package/dist/cjs/document/index.js +9 -5
- package/dist/cjs/exports/config-routes.js +12 -8
- package/dist/cjs/exports/head.js +9 -5
- package/dist/cjs/exports/loadable.js +15 -11
- package/dist/cjs/exports/tanstack-router.js +9 -5
- package/dist/cjs/index.js +9 -5
- package/dist/cjs/internal.js +9 -5
- package/dist/cjs/react-server.js +9 -5
- package/dist/cjs/router/cli/code/getClientRoutes/getRoutes.js +9 -5
- package/dist/cjs/router/cli/code/getClientRoutes/index.js +9 -5
- package/dist/cjs/router/cli/code/getClientRoutes/utils.js +9 -5
- package/dist/cjs/router/cli/code/index.js +9 -5
- package/dist/cjs/router/cli/code/inspect.js +9 -5
- package/dist/cjs/router/cli/code/makeLegalIdentifier.js +12 -8
- package/dist/cjs/router/cli/code/nestedRoutes.js +9 -5
- package/dist/cjs/router/cli/code/tanstackTypes.js +9 -5
- package/dist/cjs/router/cli/code/templates.js +9 -5
- package/dist/cjs/router/cli/code/utils.js +9 -5
- package/dist/cjs/router/cli/config-routes/converter.js +9 -5
- package/dist/cjs/router/cli/config-routes/parseRouteConfig.js +9 -5
- package/dist/cjs/router/cli/constants.js +23 -19
- package/dist/cjs/router/cli/entry.js +9 -5
- package/dist/cjs/router/cli/handler.js +9 -5
- package/dist/cjs/router/cli/index.js +9 -5
- package/dist/cjs/router/index.js +9 -5
- package/dist/cjs/router/internal.js +12 -8
- package/dist/cjs/router/runtime/CSSLinks.js +9 -5
- package/dist/cjs/router/runtime/DefaultNotFound.js +9 -5
- package/dist/cjs/router/runtime/DeferredDataScripts.js +12 -8
- package/dist/cjs/router/runtime/DeferredDataScripts.node.js +9 -5
- package/dist/cjs/router/runtime/PrefetchLink.js +161 -26
- package/dist/cjs/router/runtime/constants.js +9 -5
- package/dist/cjs/router/runtime/hooks.js +9 -5
- package/dist/cjs/router/runtime/index.js +15 -10
- package/dist/cjs/router/runtime/internal.js +9 -5
- package/dist/cjs/router/runtime/lifecycle.js +18 -14
- package/dist/cjs/router/runtime/plugin.js +9 -5
- package/dist/cjs/router/runtime/plugin.node.js +9 -5
- package/dist/cjs/router/runtime/routerHelper.js +9 -5
- package/dist/cjs/router/runtime/rsc-router.js +9 -5
- package/dist/cjs/router/runtime/rsc.js +9 -5
- package/dist/cjs/router/runtime/server.js +9 -5
- package/dist/cjs/router/runtime/tanstack/basepathRewrite.js +12 -8
- package/dist/cjs/router/runtime/tanstack/dataMutation.js +9 -5
- package/dist/cjs/router/runtime/tanstack/hydrationBoundary.js +9 -5
- package/dist/cjs/router/runtime/tanstack/outlet.js +9 -5
- package/dist/cjs/router/runtime/tanstack/plugin.js +9 -5
- package/dist/cjs/router/runtime/tanstack/plugin.node.js +9 -5
- package/dist/cjs/router/runtime/tanstack/prefetchLink.js +10 -6
- package/dist/cjs/router/runtime/tanstack/routeTree.js +9 -5
- package/dist/cjs/router/runtime/tanstack/rsc/ClientSlot.js +9 -5
- package/dist/cjs/router/runtime/tanstack/rsc/CompositeComponent.js +9 -5
- package/dist/cjs/router/runtime/tanstack/rsc/ReplayableStream.js +14 -9
- package/dist/cjs/router/runtime/tanstack/rsc/RscNodeRenderer.js +9 -5
- package/dist/cjs/router/runtime/tanstack/rsc/SlotContext.js +9 -5
- package/dist/cjs/router/runtime/tanstack/rsc/client.js +9 -5
- package/dist/cjs/router/runtime/tanstack/rsc/createRscProxy.js +9 -5
- package/dist/cjs/router/runtime/tanstack/rsc/index.js +9 -5
- package/dist/cjs/router/runtime/tanstack/rsc/server.js +9 -5
- package/dist/cjs/router/runtime/tanstack/rsc/slotUsageSanitizer.js +9 -5
- package/dist/cjs/router/runtime/tanstack/rsc/symbols.js +20 -15
- package/dist/cjs/router/runtime/utils.js +9 -5
- package/dist/cjs/router/runtime/withRouter.js +9 -5
- package/dist/cjs/rsc/client.js +12 -8
- package/dist/cjs/rsc/server.js +9 -5
- package/dist/cjs/rsc/server.worker.js +9 -5
- package/dist/cjs/ssr/index.node.js +13 -9
- package/dist/cjs/ssr/serverRender/renderToStream/buildTemplate.after.js +9 -5
- package/dist/cjs/ssr/serverRender/renderToString/entry.js +9 -5
- package/dist/cjs/ssr/serverRender/types.js +9 -5
- package/dist/esm/document/cli/index.mjs +3 -1
- package/dist/esm/router/runtime/PrefetchLink.mjs +152 -21
- package/dist/esm/router/runtime/tanstack/prefetchLink.mjs +1 -1
- package/dist/esm-node/document/cli/index.mjs +3 -1
- package/dist/esm-node/router/runtime/PrefetchLink.mjs +152 -21
- package/dist/esm-node/router/runtime/tanstack/prefetchLink.mjs +1 -1
- package/dist/types/cli/entry.d.ts +2 -2
- package/dist/types/core/context/response/index.server.d.ts +4 -1
- package/dist/types/core/plugin/index.d.ts +1 -1
- package/dist/types/core/server/utils.d.ts +11 -1
- package/dist/types/router/cli/code/utils.d.ts +1 -1
- package/dist/types/router/cli/entry.d.ts +1 -1
- package/dist/types/router/runtime/PrefetchLink.d.ts +5 -1
- package/package.json +10 -10
|
@@ -10,11 +10,15 @@ var __webpack_require__ = {};
|
|
|
10
10
|
};
|
|
11
11
|
})();
|
|
12
12
|
(()=>{
|
|
13
|
-
__webpack_require__.d = (exports1,
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
14
|
+
var define = (defs, kind)=>{
|
|
15
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
16
|
+
enumerable: true,
|
|
17
|
+
[kind]: defs[key]
|
|
18
|
+
});
|
|
19
|
+
};
|
|
20
|
+
define(getters, "get");
|
|
21
|
+
define(values, "value");
|
|
18
22
|
};
|
|
19
23
|
})();
|
|
20
24
|
(()=>{
|
|
@@ -10,11 +10,15 @@ var __webpack_require__ = {};
|
|
|
10
10
|
};
|
|
11
11
|
})();
|
|
12
12
|
(()=>{
|
|
13
|
-
__webpack_require__.d = (exports1,
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
14
|
+
var define = (defs, kind)=>{
|
|
15
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
16
|
+
enumerable: true,
|
|
17
|
+
[kind]: defs[key]
|
|
18
|
+
});
|
|
19
|
+
};
|
|
20
|
+
define(getters, "get");
|
|
21
|
+
define(values, "value");
|
|
18
22
|
};
|
|
19
23
|
})();
|
|
20
24
|
(()=>{
|
|
@@ -10,11 +10,15 @@ var __webpack_require__ = {};
|
|
|
10
10
|
};
|
|
11
11
|
})();
|
|
12
12
|
(()=>{
|
|
13
|
-
__webpack_require__.d = (exports1,
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
14
|
+
var define = (defs, kind)=>{
|
|
15
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
16
|
+
enumerable: true,
|
|
17
|
+
[kind]: defs[key]
|
|
18
|
+
});
|
|
19
|
+
};
|
|
20
|
+
define(getters, "get");
|
|
21
|
+
define(values, "value");
|
|
18
22
|
};
|
|
19
23
|
})();
|
|
20
24
|
(()=>{
|
package/dist/cjs/router/index.js
CHANGED
|
@@ -24,11 +24,15 @@ function __webpack_require__(moduleId) {
|
|
|
24
24
|
};
|
|
25
25
|
})();
|
|
26
26
|
(()=>{
|
|
27
|
-
__webpack_require__.d = (exports1,
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
27
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
28
|
+
var define = (defs, kind)=>{
|
|
29
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
30
|
+
enumerable: true,
|
|
31
|
+
[kind]: defs[key]
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
define(getters, "get");
|
|
35
|
+
define(values, "value");
|
|
32
36
|
};
|
|
33
37
|
})();
|
|
34
38
|
(()=>{
|
|
@@ -24,11 +24,15 @@ function __webpack_require__(moduleId) {
|
|
|
24
24
|
};
|
|
25
25
|
})();
|
|
26
26
|
(()=>{
|
|
27
|
-
__webpack_require__.d = (exports1,
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
27
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
28
|
+
var define = (defs, kind)=>{
|
|
29
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
30
|
+
enumerable: true,
|
|
31
|
+
[kind]: defs[key]
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
define(getters, "get");
|
|
35
|
+
define(values, "value");
|
|
32
36
|
};
|
|
33
37
|
})();
|
|
34
38
|
(()=>{
|
|
@@ -47,13 +51,13 @@ function __webpack_require__(moduleId) {
|
|
|
47
51
|
var __webpack_exports__ = {};
|
|
48
52
|
(()=>{
|
|
49
53
|
__webpack_require__.r(__webpack_exports__);
|
|
50
|
-
__webpack_require__.d(__webpack_exports__, {
|
|
51
|
-
default: ()=>_runtime_internal__rspack_import_0.routerPlugin
|
|
52
|
-
});
|
|
53
54
|
var _runtime_internal__rspack_import_0 = __webpack_require__("./runtime/internal");
|
|
54
55
|
var __rspack_reexport = {};
|
|
55
56
|
for(const __rspack_import_key in _runtime_internal__rspack_import_0)if ("default" !== __rspack_import_key) __rspack_reexport[__rspack_import_key] = ()=>_runtime_internal__rspack_import_0[__rspack_import_key];
|
|
56
57
|
__webpack_require__.d(__webpack_exports__, __rspack_reexport);
|
|
58
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
59
|
+
default: ()=>_runtime_internal__rspack_import_0.routerPlugin
|
|
60
|
+
});
|
|
57
61
|
})();
|
|
58
62
|
exports["default"] = __webpack_exports__["default"];
|
|
59
63
|
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __webpack_require__ = {};
|
|
3
3
|
(()=>{
|
|
4
|
-
__webpack_require__.d = (exports1,
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
5
|
+
var define = (defs, kind)=>{
|
|
6
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
[kind]: defs[key]
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
define(getters, "get");
|
|
12
|
+
define(values, "value");
|
|
9
13
|
};
|
|
10
14
|
})();
|
|
11
15
|
(()=>{
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __webpack_require__ = {};
|
|
3
3
|
(()=>{
|
|
4
|
-
__webpack_require__.d = (exports1,
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
5
|
+
var define = (defs, kind)=>{
|
|
6
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
[kind]: defs[key]
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
define(getters, "get");
|
|
12
|
+
define(values, "value");
|
|
9
13
|
};
|
|
10
14
|
})();
|
|
11
15
|
(()=>{
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __webpack_require__ = {};
|
|
3
3
|
(()=>{
|
|
4
|
-
__webpack_require__.d = (exports1,
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
5
|
+
var define = (defs, kind)=>{
|
|
6
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
[kind]: defs[key]
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
define(getters, "get");
|
|
12
|
+
define(values, "value");
|
|
9
13
|
};
|
|
10
14
|
})();
|
|
11
15
|
(()=>{
|
|
@@ -23,10 +27,10 @@ var __webpack_require__ = {};
|
|
|
23
27
|
})();
|
|
24
28
|
var __webpack_exports__ = {};
|
|
25
29
|
__webpack_require__.r(__webpack_exports__);
|
|
26
|
-
__webpack_require__.d(__webpack_exports__, {
|
|
27
|
-
default: ()=>__rspack_default_export
|
|
28
|
-
});
|
|
29
30
|
const __rspack_default_export = ()=>null;
|
|
31
|
+
__webpack_require__.d(__webpack_exports__, {}, {
|
|
32
|
+
default: __rspack_default_export
|
|
33
|
+
});
|
|
30
34
|
exports["default"] = __webpack_exports__["default"];
|
|
31
35
|
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
32
36
|
"default"
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __webpack_require__ = {};
|
|
3
3
|
(()=>{
|
|
4
|
-
__webpack_require__.d = (exports1,
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
5
|
+
var define = (defs, kind)=>{
|
|
6
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
[kind]: defs[key]
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
define(getters, "get");
|
|
12
|
+
define(values, "value");
|
|
9
13
|
};
|
|
10
14
|
})();
|
|
11
15
|
(()=>{
|
|
@@ -11,11 +11,15 @@ var __webpack_require__ = {};
|
|
|
11
11
|
};
|
|
12
12
|
})();
|
|
13
13
|
(()=>{
|
|
14
|
-
__webpack_require__.d = (exports1,
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
14
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
15
|
+
var define = (defs, kind)=>{
|
|
16
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
17
|
+
enumerable: true,
|
|
18
|
+
[kind]: defs[key]
|
|
19
|
+
});
|
|
20
|
+
};
|
|
21
|
+
define(getters, "get");
|
|
22
|
+
define(values, "value");
|
|
19
23
|
};
|
|
20
24
|
})();
|
|
21
25
|
(()=>{
|
|
@@ -49,45 +53,141 @@ function composeEventHandlers(theirHandler, ourHandler) {
|
|
|
49
53
|
};
|
|
50
54
|
}
|
|
51
55
|
const ABSOLUTE_URL_REGEX = /^(?:[a-z][a-z0-9+.-]*:|\/\/)/i;
|
|
52
|
-
|
|
53
|
-
|
|
56
|
+
const DEFAULT_PREFETCH_BEHAVIOR = 'render';
|
|
57
|
+
const DEFAULT_PRELOAD_BEHAVIOR = 'viewport';
|
|
58
|
+
const INTENT_DELAY = 100;
|
|
59
|
+
const VIEWPORT_ROOT_MARGIN = '200px';
|
|
60
|
+
const MAX_CONCURRENT_WARMUPS = 4;
|
|
61
|
+
const WARMUP_TTL = 30000;
|
|
62
|
+
const SLOW_EFFECTIVE_TYPES = new Set([
|
|
63
|
+
'slow-2g',
|
|
64
|
+
'2g'
|
|
65
|
+
]);
|
|
66
|
+
const warmupCache = new Map();
|
|
67
|
+
const warmupQueue = [];
|
|
68
|
+
let activeWarmups = 0;
|
|
69
|
+
const getConnection = ()=>{
|
|
70
|
+
const nav = globalThis.navigator;
|
|
71
|
+
return nav?.connection || nav?.mozConnection || nav?.webkitConnection;
|
|
72
|
+
};
|
|
73
|
+
const shouldWarmupOnCurrentNetwork = ()=>{
|
|
74
|
+
const connection = getConnection();
|
|
75
|
+
if (connection?.saveData) return false;
|
|
76
|
+
if ('string' == typeof connection?.effectiveType && SLOW_EFFECTIVE_TYPES.has(connection.effectiveType)) return false;
|
|
77
|
+
return true;
|
|
78
|
+
};
|
|
79
|
+
const pruneWarmupCache = (now = Date.now())=>{
|
|
80
|
+
for (const [key, timestamp] of warmupCache)if (now - timestamp > WARMUP_TTL) warmupCache.delete(key);
|
|
81
|
+
};
|
|
82
|
+
const runNextWarmup = ()=>{
|
|
83
|
+
while(activeWarmups < MAX_CONCURRENT_WARMUPS && warmupQueue.length > 0){
|
|
84
|
+
const task = warmupQueue.shift();
|
|
85
|
+
if (task.cancelled) continue;
|
|
86
|
+
activeWarmups += 1;
|
|
87
|
+
task.run().catch((error)=>{
|
|
88
|
+
console.error(error);
|
|
89
|
+
warmupCache.delete(task.key);
|
|
90
|
+
}).finally(()=>{
|
|
91
|
+
activeWarmups -= 1;
|
|
92
|
+
runNextWarmup();
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
};
|
|
96
|
+
const scheduleWarmup = (key, run)=>{
|
|
97
|
+
if (!shouldWarmupOnCurrentNetwork()) return ()=>{};
|
|
98
|
+
pruneWarmupCache();
|
|
99
|
+
if (warmupCache.has(key)) return ()=>{};
|
|
100
|
+
warmupCache.set(key, Date.now());
|
|
101
|
+
const task = {
|
|
102
|
+
key,
|
|
103
|
+
run,
|
|
104
|
+
cancelled: false
|
|
105
|
+
};
|
|
106
|
+
warmupQueue.push(task);
|
|
107
|
+
runNextWarmup();
|
|
108
|
+
return ()=>{
|
|
109
|
+
task.cancelled = true;
|
|
110
|
+
};
|
|
111
|
+
};
|
|
112
|
+
const setRef = (ref, value)=>{
|
|
113
|
+
if (!ref) return;
|
|
114
|
+
if ('function' == typeof ref) return void ref(value);
|
|
115
|
+
try {
|
|
116
|
+
ref.current = value;
|
|
117
|
+
} catch {}
|
|
118
|
+
};
|
|
119
|
+
const isDataWarmupEnabled = (route)=>{
|
|
120
|
+
const handle = route.handle;
|
|
121
|
+
return handle?.navigationWarmup?.data === true;
|
|
122
|
+
};
|
|
123
|
+
function usePrefetchBehavior(prefetch, preload, theirElementProps) {
|
|
124
|
+
const [maybeWarmup, setMaybeWarmup] = external_react_default().useState(false);
|
|
54
125
|
const [shouldPrefetch, setShouldPrefetch] = external_react_default().useState(false);
|
|
126
|
+
const [shouldPreload, setShouldPreload] = external_react_default().useState(false);
|
|
127
|
+
const [viewportElement, setViewportElement] = external_react_default().useState(null);
|
|
55
128
|
const { onFocus, onBlur, onMouseEnter, onMouseLeave, onTouchStart } = theirElementProps;
|
|
56
129
|
external_react_default().useEffect(()=>{
|
|
57
130
|
if ('render' === prefetch) setShouldPrefetch(true);
|
|
131
|
+
if ('render' === preload) setShouldPreload(true);
|
|
58
132
|
}, [
|
|
59
|
-
prefetch
|
|
133
|
+
prefetch,
|
|
134
|
+
preload
|
|
60
135
|
]);
|
|
61
136
|
const setIntent = ()=>{
|
|
62
|
-
if ('intent' === prefetch)
|
|
137
|
+
if ('intent' === prefetch || 'intent' === preload) setMaybeWarmup(true);
|
|
63
138
|
};
|
|
64
139
|
const cancelIntent = ()=>{
|
|
65
|
-
if ('intent' === prefetch) {
|
|
66
|
-
|
|
140
|
+
if ('intent' === prefetch || 'intent' === preload) {
|
|
141
|
+
setMaybeWarmup(false);
|
|
67
142
|
setShouldPrefetch(false);
|
|
143
|
+
setShouldPreload(false);
|
|
68
144
|
}
|
|
69
145
|
};
|
|
70
146
|
external_react_default().useEffect(()=>{
|
|
71
|
-
if (
|
|
147
|
+
if (maybeWarmup) {
|
|
72
148
|
const id = setTimeout(()=>{
|
|
73
|
-
setShouldPrefetch(true);
|
|
74
|
-
|
|
149
|
+
if ('intent' === prefetch) setShouldPrefetch(true);
|
|
150
|
+
if ('intent' === preload) setShouldPreload(true);
|
|
151
|
+
}, INTENT_DELAY);
|
|
75
152
|
return ()=>{
|
|
76
153
|
clearTimeout(id);
|
|
77
154
|
};
|
|
78
155
|
}
|
|
79
156
|
}, [
|
|
80
|
-
|
|
157
|
+
maybeWarmup,
|
|
158
|
+
prefetch,
|
|
159
|
+
preload
|
|
160
|
+
]);
|
|
161
|
+
external_react_default().useEffect(()=>{
|
|
162
|
+
if (!viewportElement || 'viewport' !== prefetch && 'viewport' !== preload || "u" < typeof IntersectionObserver) return;
|
|
163
|
+
const observer = new IntersectionObserver((entries)=>{
|
|
164
|
+
if (!entries.some((entry)=>entry.isIntersecting)) return;
|
|
165
|
+
if ('viewport' === prefetch) setShouldPrefetch(true);
|
|
166
|
+
if ('viewport' === preload) setShouldPreload(true);
|
|
167
|
+
observer.disconnect();
|
|
168
|
+
}, {
|
|
169
|
+
rootMargin: VIEWPORT_ROOT_MARGIN
|
|
170
|
+
});
|
|
171
|
+
observer.observe(viewportElement);
|
|
172
|
+
return ()=>{
|
|
173
|
+
observer.disconnect();
|
|
174
|
+
};
|
|
175
|
+
}, [
|
|
176
|
+
prefetch,
|
|
177
|
+
preload,
|
|
178
|
+
viewportElement
|
|
81
179
|
]);
|
|
82
180
|
return [
|
|
83
181
|
shouldPrefetch,
|
|
182
|
+
shouldPreload,
|
|
84
183
|
{
|
|
85
184
|
onFocus: composeEventHandlers(onFocus, setIntent),
|
|
86
185
|
onBlur: composeEventHandlers(onBlur, cancelIntent),
|
|
87
186
|
onMouseEnter: composeEventHandlers(onMouseEnter, setIntent),
|
|
88
187
|
onMouseLeave: composeEventHandlers(onMouseLeave, cancelIntent),
|
|
89
188
|
onTouchStart: composeEventHandlers(onTouchStart, setIntent)
|
|
90
|
-
}
|
|
189
|
+
},
|
|
190
|
+
setViewportElement
|
|
91
191
|
];
|
|
92
192
|
}
|
|
93
193
|
async function loadRouteModule(route, routeAssets) {
|
|
@@ -122,14 +222,34 @@ const getDataHref = (route, pathname, basename)=>{
|
|
|
122
222
|
const url = getRequestUrl(path, id);
|
|
123
223
|
return createDataHref(url.toString());
|
|
124
224
|
};
|
|
125
|
-
const PrefetchPageLinks = ({ path })=>{
|
|
225
|
+
const PrefetchPageLinks = ({ path, includeData })=>{
|
|
126
226
|
const { pathname } = path;
|
|
127
227
|
const context = (0, external_react_namespaceObject.useContext)(index_js_namespaceObject.InternalRuntimeContext);
|
|
128
228
|
const { routeManifest, routes } = context;
|
|
129
229
|
const { routeAssets } = routeManifest || {};
|
|
130
|
-
const
|
|
131
|
-
|
|
132
|
-
|
|
230
|
+
const allowNetworkWarmup = shouldWarmupOnCurrentNetwork();
|
|
231
|
+
const matches = (0, external_react_namespaceObject.useMemo)(()=>Array.isArray(routes) ? (0, router_namespaceObject.matchRoutes)(routes, pathname) : [], [
|
|
232
|
+
pathname,
|
|
233
|
+
routes
|
|
234
|
+
]);
|
|
235
|
+
external_react_default().useEffect(()=>{
|
|
236
|
+
if (!allowNetworkWarmup || !Array.isArray(matches) || !routeAssets || !__webpack_chunk_load__) return;
|
|
237
|
+
const cancellations = matches.map((match)=>{
|
|
238
|
+
const routeId = match.route.id;
|
|
239
|
+
const routeAsset = routeId ? routeAssets[routeId] : void 0;
|
|
240
|
+
const chunkIds = routeAsset?.chunkIds;
|
|
241
|
+
if (!routeId || !Array.isArray(chunkIds) || 0 === chunkIds.length) return ()=>{};
|
|
242
|
+
return scheduleWarmup(`route-module:${routeId}:${chunkIds.join(',')}`, ()=>loadRouteModule(match.route, routeAssets));
|
|
243
|
+
});
|
|
244
|
+
return ()=>{
|
|
245
|
+
cancellations.forEach((cancel)=>cancel());
|
|
246
|
+
};
|
|
247
|
+
}, [
|
|
248
|
+
allowNetworkWarmup,
|
|
249
|
+
matches,
|
|
250
|
+
routeAssets
|
|
251
|
+
]);
|
|
252
|
+
if (!allowNetworkWarmup || !includeData || !window._SSR_DATA) return null;
|
|
133
253
|
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(PrefetchDataLinks, {
|
|
134
254
|
matches: matches,
|
|
135
255
|
path: path,
|
|
@@ -141,7 +261,7 @@ const PrefetchDataLinks = ({ matches, path, routeManifest })=>{
|
|
|
141
261
|
const currentMatches = (0, router_namespaceObject.useMatches)();
|
|
142
262
|
const basename = (0, router_namespaceObject.useHref)('/');
|
|
143
263
|
const dataHrefs = (0, external_react_namespaceObject.useMemo)(()=>matches?.filter((match, index)=>{
|
|
144
|
-
if (!match.route.loader || 'function' != typeof match.route.loader || 0 === match.route.loader.length) return false;
|
|
264
|
+
if (!isDataWarmupEnabled(match.route) || !match.route.loader || 'function' != typeof match.route.loader || 0 === match.route.loader.length) return false;
|
|
145
265
|
if (match.route.shouldRevalidate) {
|
|
146
266
|
const currentUrl = new URL(location.pathname + location.search + location.hash, window.origin);
|
|
147
267
|
const nextUrl = new URL(pathname + search + hash, window.origin);
|
|
@@ -168,20 +288,35 @@ const PrefetchDataLinks = ({ matches, path, routeManifest })=>{
|
|
|
168
288
|
children: dataHrefs
|
|
169
289
|
});
|
|
170
290
|
};
|
|
171
|
-
const
|
|
291
|
+
const normalizePreloadBehavior = (preload, prefetch)=>{
|
|
292
|
+
if (false === preload || 'none' === preload) return 'none';
|
|
293
|
+
if (void 0 !== preload) return preload;
|
|
294
|
+
if ('none' === prefetch) return 'none';
|
|
295
|
+
return DEFAULT_PRELOAD_BEHAVIOR;
|
|
296
|
+
};
|
|
297
|
+
const createPrefetchLink = (Link)=>/*#__PURE__*/ external_react_default().forwardRef(({ to, prefetch = DEFAULT_PREFETCH_BEHAVIOR, preload, ...props }, forwardedRef)=>{
|
|
172
298
|
const isAbsolute = 'string' == typeof to && ABSOLUTE_URL_REGEX.test(to);
|
|
173
|
-
const
|
|
299
|
+
const resolvedPreload = normalizePreloadBehavior(preload, prefetch);
|
|
300
|
+
const [shouldPrefetch, shouldPreload, prefetchHandlers, setViewportElement] = usePrefetchBehavior(prefetch, resolvedPreload, props);
|
|
301
|
+
const setAnchorRef = external_react_default().useCallback((element)=>{
|
|
302
|
+
setViewportElement(element);
|
|
303
|
+
setRef(forwardedRef, element);
|
|
304
|
+
}, [
|
|
305
|
+
forwardedRef,
|
|
306
|
+
setViewportElement
|
|
307
|
+
]);
|
|
174
308
|
const resolvedPath = (0, router_namespaceObject.useResolvedPath)(to);
|
|
175
309
|
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(jsx_runtime_namespaceObject.Fragment, {
|
|
176
310
|
children: [
|
|
177
311
|
/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(Link, {
|
|
178
|
-
ref:
|
|
312
|
+
ref: setAnchorRef,
|
|
179
313
|
to: to,
|
|
180
314
|
...props,
|
|
181
315
|
...prefetchHandlers
|
|
182
316
|
}),
|
|
183
|
-
shouldPrefetch
|
|
184
|
-
path: resolvedPath
|
|
317
|
+
(shouldPrefetch || shouldPreload) && !isAbsolute ? /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(PrefetchPageLinks, {
|
|
318
|
+
path: resolvedPath,
|
|
319
|
+
includeData: shouldPrefetch
|
|
185
320
|
}) : null
|
|
186
321
|
]
|
|
187
322
|
});
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __webpack_require__ = {};
|
|
3
3
|
(()=>{
|
|
4
|
-
__webpack_require__.d = (exports1,
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
5
|
+
var define = (defs, kind)=>{
|
|
6
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
[kind]: defs[key]
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
define(getters, "get");
|
|
12
|
+
define(values, "value");
|
|
9
13
|
};
|
|
10
14
|
})();
|
|
11
15
|
(()=>{
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __webpack_require__ = {};
|
|
3
3
|
(()=>{
|
|
4
|
-
__webpack_require__.d = (exports1,
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
5
|
+
var define = (defs, kind)=>{
|
|
6
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
[kind]: defs[key]
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
define(getters, "get");
|
|
12
|
+
define(values, "value");
|
|
9
13
|
};
|
|
10
14
|
})();
|
|
11
15
|
(()=>{
|
|
@@ -30,11 +30,15 @@ function __webpack_require__(moduleId) {
|
|
|
30
30
|
};
|
|
31
31
|
})();
|
|
32
32
|
(()=>{
|
|
33
|
-
__webpack_require__.d = (exports1,
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
33
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
34
|
+
var define = (defs, kind)=>{
|
|
35
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
36
|
+
enumerable: true,
|
|
37
|
+
[kind]: defs[key]
|
|
38
|
+
});
|
|
39
|
+
};
|
|
40
|
+
define(getters, "get");
|
|
41
|
+
define(values, "value");
|
|
38
42
|
};
|
|
39
43
|
})();
|
|
40
44
|
(()=>{
|
|
@@ -53,11 +57,6 @@ function __webpack_require__(moduleId) {
|
|
|
53
57
|
var __webpack_exports__ = {};
|
|
54
58
|
(()=>{
|
|
55
59
|
__webpack_require__.r(__webpack_exports__);
|
|
56
|
-
__webpack_require__.d(__webpack_exports__, {
|
|
57
|
-
Link: ()=>_PrefetchLink__rspack_import_1.Link,
|
|
58
|
-
NavLink: ()=>_PrefetchLink__rspack_import_1.NavLink,
|
|
59
|
-
useRouteLoaderData: ()=>useRouteLoaderData
|
|
60
|
-
});
|
|
61
60
|
var _modern_js_runtime_utils_router__rspack_import_0 = __webpack_require__("@modern-js/runtime-utils/router");
|
|
62
61
|
var __rspack_reexport = {};
|
|
63
62
|
for(const __rspack_import_key in _modern_js_runtime_utils_router__rspack_import_0)if ([
|
|
@@ -81,6 +80,12 @@ var __webpack_exports__ = {};
|
|
|
81
80
|
const realRouteId = routeId.replace(/\[(.*?)\]/g, '($1)');
|
|
82
81
|
return (0, _modern_js_runtime_utils_router__rspack_import_0.useRouteLoaderData)(realRouteId);
|
|
83
82
|
};
|
|
83
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
84
|
+
Link: ()=>_PrefetchLink__rspack_import_1.Link,
|
|
85
|
+
NavLink: ()=>_PrefetchLink__rspack_import_1.NavLink
|
|
86
|
+
}, {
|
|
87
|
+
useRouteLoaderData: useRouteLoaderData
|
|
88
|
+
});
|
|
84
89
|
})();
|
|
85
90
|
exports.Link = __webpack_exports__.Link;
|
|
86
91
|
exports.NavLink = __webpack_exports__.NavLink;
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __webpack_require__ = {};
|
|
3
3
|
(()=>{
|
|
4
|
-
__webpack_require__.d = (exports1,
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
5
|
+
var define = (defs, kind)=>{
|
|
6
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
[kind]: defs[key]
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
define(getters, "get");
|
|
12
|
+
define(values, "value");
|
|
9
13
|
};
|
|
10
14
|
})();
|
|
11
15
|
(()=>{
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __webpack_require__ = {};
|
|
3
3
|
(()=>{
|
|
4
|
-
__webpack_require__.d = (exports1,
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
5
|
+
var define = (defs, kind)=>{
|
|
6
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
[kind]: defs[key]
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
define(getters, "get");
|
|
12
|
+
define(values, "value");
|
|
9
13
|
};
|
|
10
14
|
})();
|
|
11
15
|
(()=>{
|
|
@@ -23,15 +27,6 @@ var __webpack_require__ = {};
|
|
|
23
27
|
})();
|
|
24
28
|
var __webpack_exports__ = {};
|
|
25
29
|
__webpack_require__.r(__webpack_exports__);
|
|
26
|
-
__webpack_require__.d(__webpack_exports__, {
|
|
27
|
-
applyRouterRuntimeState: ()=>applyRouterRuntimeState,
|
|
28
|
-
applyRouterServerPrepareResult: ()=>applyRouterServerPrepareResult,
|
|
29
|
-
cleanupRouterRuntimeState: ()=>cleanupRouterRuntimeState,
|
|
30
|
-
createRouterRuntimeState: ()=>createRouterRuntimeState,
|
|
31
|
-
createRouterServerSnapshot: ()=>createRouterServerSnapshot,
|
|
32
|
-
getRouterHydrationScripts: ()=>getRouterHydrationScripts,
|
|
33
|
-
getRouterMatchedRouteIds: ()=>getRouterMatchedRouteIds
|
|
34
|
-
});
|
|
35
30
|
function toHydrationScripts(state) {
|
|
36
31
|
if (state.hydrationScripts?.length) return state.hydrationScripts;
|
|
37
32
|
return state.hydrationScript ? [
|
|
@@ -127,6 +122,15 @@ async function cleanupRouterRuntimeState(runtimeContext) {
|
|
|
127
122
|
await runtimeContext.routerRuntime?.cleanup?.();
|
|
128
123
|
} catch {}
|
|
129
124
|
}
|
|
125
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
126
|
+
applyRouterRuntimeState: ()=>applyRouterRuntimeState,
|
|
127
|
+
applyRouterServerPrepareResult: ()=>applyRouterServerPrepareResult,
|
|
128
|
+
cleanupRouterRuntimeState: ()=>cleanupRouterRuntimeState,
|
|
129
|
+
createRouterRuntimeState: ()=>createRouterRuntimeState,
|
|
130
|
+
createRouterServerSnapshot: ()=>createRouterServerSnapshot,
|
|
131
|
+
getRouterHydrationScripts: ()=>getRouterHydrationScripts,
|
|
132
|
+
getRouterMatchedRouteIds: ()=>getRouterMatchedRouteIds
|
|
133
|
+
});
|
|
130
134
|
exports.applyRouterRuntimeState = __webpack_exports__.applyRouterRuntimeState;
|
|
131
135
|
exports.applyRouterServerPrepareResult = __webpack_exports__.applyRouterServerPrepareResult;
|
|
132
136
|
exports.cleanupRouterRuntimeState = __webpack_exports__.cleanupRouterRuntimeState;
|