@tanstack/solid-router 2.0.0-alpha.5 → 2.0.0-alpha.7
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/Asset.cjs +2 -2
- package/dist/cjs/Asset.cjs.map +1 -1
- package/dist/cjs/HeadContent.cjs +11 -1
- package/dist/cjs/HeadContent.cjs.map +1 -1
- package/dist/cjs/HeadContent.dev.cjs +11 -1
- package/dist/cjs/HeadContent.dev.cjs.map +1 -1
- package/dist/cjs/Match.cjs +265 -248
- package/dist/cjs/Match.cjs.map +1 -1
- package/dist/cjs/Match.d.cts +1 -3
- package/dist/cjs/Matches.cjs +35 -34
- package/dist/cjs/Matches.cjs.map +1 -1
- package/dist/cjs/RouterProvider.cjs +12 -8
- package/dist/cjs/RouterProvider.cjs.map +1 -1
- package/dist/cjs/RouterProvider.d.cts +1 -1
- package/dist/cjs/Scripts.cjs +23 -12
- package/dist/cjs/Scripts.cjs.map +1 -1
- package/dist/cjs/Scripts.d.cts +2 -1
- package/dist/cjs/Transitioner.cjs +57 -36
- package/dist/cjs/Transitioner.cjs.map +1 -1
- package/dist/cjs/headContentUtils.cjs +26 -23
- package/dist/cjs/headContentUtils.cjs.map +1 -1
- package/dist/cjs/headContentUtils.d.cts +2 -1
- package/dist/cjs/index.cjs +1 -1
- package/dist/cjs/index.dev.cjs +1 -1
- package/dist/cjs/link.cjs +143 -101
- package/dist/cjs/link.cjs.map +1 -1
- package/dist/cjs/matchContext.cjs +7 -5
- package/dist/cjs/matchContext.cjs.map +1 -1
- package/dist/cjs/matchContext.d.cts +8 -2
- package/dist/cjs/not-found.cjs +8 -4
- package/dist/cjs/not-found.cjs.map +1 -1
- package/dist/cjs/not-found.d.cts +1 -1
- package/dist/cjs/router.cjs +2 -1
- package/dist/cjs/router.cjs.map +1 -1
- package/dist/cjs/routerStores.cjs +75 -0
- package/dist/cjs/routerStores.cjs.map +1 -0
- package/dist/cjs/routerStores.d.cts +10 -0
- package/dist/cjs/ssr/RouterClient.cjs +1 -1
- package/dist/cjs/ssr/RouterClient.cjs.map +1 -1
- package/dist/cjs/ssr/renderRouterToStream.cjs +1 -1
- package/dist/cjs/ssr/renderRouterToStream.cjs.map +1 -1
- package/dist/cjs/ssr/renderRouterToString.cjs +1 -1
- package/dist/cjs/ssr/renderRouterToString.cjs.map +1 -1
- package/dist/cjs/useBlocker.cjs +12 -3
- package/dist/cjs/useBlocker.cjs.map +1 -1
- package/dist/cjs/useCanGoBack.cjs +6 -2
- package/dist/cjs/useCanGoBack.cjs.map +1 -1
- package/dist/cjs/useCanGoBack.d.cts +2 -1
- package/dist/cjs/useLoaderDeps.cjs +2 -3
- package/dist/cjs/useLoaderDeps.cjs.map +1 -1
- package/dist/cjs/useLocation.cjs +13 -2
- package/dist/cjs/useLocation.cjs.map +1 -1
- package/dist/cjs/useMatch.cjs +27 -15
- package/dist/cjs/useMatch.cjs.map +1 -1
- package/dist/cjs/useParams.cjs +1 -1
- package/dist/cjs/useParams.cjs.map +1 -1
- package/dist/cjs/useRouterState.cjs +12 -30
- package/dist/cjs/useRouterState.cjs.map +1 -1
- package/dist/cjs/useSearch.cjs +2 -1
- package/dist/cjs/useSearch.cjs.map +1 -1
- package/dist/cjs/utils.cjs +3 -17
- package/dist/cjs/utils.cjs.map +1 -1
- package/dist/cjs/utils.d.cts +0 -5
- package/dist/esm/Asset.js +6 -6
- package/dist/esm/Asset.js.map +1 -1
- package/dist/esm/HeadContent.dev.js +12 -2
- package/dist/esm/HeadContent.dev.js.map +1 -1
- package/dist/esm/HeadContent.js +12 -2
- package/dist/esm/HeadContent.js.map +1 -1
- package/dist/esm/Match.d.ts +1 -3
- package/dist/esm/Match.js +267 -250
- package/dist/esm/Match.js.map +1 -1
- package/dist/esm/Matches.js +40 -39
- package/dist/esm/Matches.js.map +1 -1
- package/dist/esm/RouterProvider.d.ts +1 -1
- package/dist/esm/RouterProvider.js +10 -7
- package/dist/esm/RouterProvider.js.map +1 -1
- package/dist/esm/ScriptOnce.js +2 -2
- package/dist/esm/ScriptOnce.js.map +1 -1
- package/dist/esm/Scripts.d.ts +2 -1
- package/dist/esm/Scripts.js +21 -11
- package/dist/esm/Scripts.js.map +1 -1
- package/dist/esm/Transitioner.js +58 -37
- package/dist/esm/Transitioner.js.map +1 -1
- package/dist/esm/headContentUtils.d.ts +2 -1
- package/dist/esm/headContentUtils.js +26 -23
- package/dist/esm/headContentUtils.js.map +1 -1
- package/dist/esm/index.dev.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/link.js +146 -104
- package/dist/esm/link.js.map +1 -1
- package/dist/esm/matchContext.d.ts +8 -2
- package/dist/esm/matchContext.js +7 -4
- package/dist/esm/matchContext.js.map +1 -1
- package/dist/esm/not-found.d.ts +1 -1
- package/dist/esm/not-found.js +6 -3
- package/dist/esm/not-found.js.map +1 -1
- package/dist/esm/router.js +2 -1
- package/dist/esm/router.js.map +1 -1
- package/dist/esm/routerStores.d.ts +10 -0
- package/dist/esm/routerStores.js +73 -0
- package/dist/esm/routerStores.js.map +1 -0
- package/dist/esm/scroll-restoration.js +2 -2
- package/dist/esm/scroll-restoration.js.map +1 -1
- package/dist/esm/ssr/RouterClient.js +1 -1
- package/dist/esm/ssr/RouterClient.js.map +1 -1
- package/dist/esm/ssr/renderRouterToStream.js +1 -1
- package/dist/esm/ssr/renderRouterToStream.js.map +1 -1
- package/dist/esm/ssr/renderRouterToString.js +1 -1
- package/dist/esm/ssr/renderRouterToString.js.map +1 -1
- package/dist/esm/useBlocker.js +12 -3
- package/dist/esm/useBlocker.js.map +1 -1
- package/dist/esm/useCanGoBack.d.ts +2 -1
- package/dist/esm/useCanGoBack.js +4 -2
- package/dist/esm/useCanGoBack.js.map +1 -1
- package/dist/esm/useLoaderDeps.js +2 -3
- package/dist/esm/useLoaderDeps.js.map +1 -1
- package/dist/esm/useLocation.js +11 -2
- package/dist/esm/useLocation.js.map +1 -1
- package/dist/esm/useMatch.js +28 -16
- package/dist/esm/useMatch.js.map +1 -1
- package/dist/esm/useParams.js +1 -1
- package/dist/esm/useParams.js.map +1 -1
- package/dist/esm/useRouterState.js +11 -30
- package/dist/esm/useRouterState.js.map +1 -1
- package/dist/esm/useSearch.js +2 -1
- package/dist/esm/useSearch.js.map +1 -1
- package/dist/esm/utils.d.ts +0 -5
- package/dist/esm/utils.js +4 -17
- package/dist/esm/utils.js.map +1 -1
- package/dist/source/Asset.jsx +3 -3
- package/dist/source/Asset.jsx.map +1 -1
- package/dist/source/HeadContent.dev.jsx +5 -1
- package/dist/source/HeadContent.dev.jsx.map +1 -1
- package/dist/source/HeadContent.jsx +5 -1
- package/dist/source/HeadContent.jsx.map +1 -1
- package/dist/source/Match.d.ts +1 -3
- package/dist/source/Match.jsx +260 -264
- package/dist/source/Match.jsx.map +1 -1
- package/dist/source/Matches.jsx +46 -46
- package/dist/source/Matches.jsx.map +1 -1
- package/dist/source/RouterProvider.d.ts +1 -1
- package/dist/source/RouterProvider.jsx +13 -9
- package/dist/source/RouterProvider.jsx.map +1 -1
- package/dist/source/Scripts.d.ts +2 -1
- package/dist/source/Scripts.jsx +46 -47
- package/dist/source/Scripts.jsx.map +1 -1
- package/dist/source/Transitioner.jsx +80 -44
- package/dist/source/Transitioner.jsx.map +1 -1
- package/dist/source/headContentUtils.d.ts +2 -1
- package/dist/source/headContentUtils.jsx +79 -80
- package/dist/source/headContentUtils.jsx.map +1 -1
- package/dist/source/link.jsx +145 -112
- package/dist/source/link.jsx.map +1 -1
- package/dist/source/matchContext.d.ts +8 -2
- package/dist/source/matchContext.jsx +7 -3
- package/dist/source/matchContext.jsx.map +1 -1
- package/dist/source/not-found.d.ts +1 -1
- package/dist/source/not-found.jsx +6 -5
- package/dist/source/not-found.jsx.map +1 -1
- package/dist/source/router.js +2 -1
- package/dist/source/router.js.map +1 -1
- package/dist/source/routerStores.d.ts +10 -0
- package/dist/source/routerStores.js +82 -0
- package/dist/source/routerStores.js.map +1 -0
- package/dist/source/ssr/RouterClient.jsx +1 -1
- package/dist/source/ssr/RouterClient.jsx.map +1 -1
- package/dist/source/ssr/renderRouterToStream.jsx +1 -1
- package/dist/source/ssr/renderRouterToStream.jsx.map +1 -1
- package/dist/source/ssr/renderRouterToString.jsx +1 -1
- package/dist/source/ssr/renderRouterToString.jsx.map +1 -1
- package/dist/source/useBlocker.jsx +19 -8
- package/dist/source/useBlocker.jsx.map +1 -1
- package/dist/source/useCanGoBack.d.ts +2 -1
- package/dist/source/useCanGoBack.js +4 -2
- package/dist/source/useCanGoBack.js.map +1 -1
- package/dist/source/useLoaderDeps.jsx +2 -3
- package/dist/source/useLoaderDeps.jsx.map +1 -1
- package/dist/source/useLocation.jsx +13 -3
- package/dist/source/useLocation.jsx.map +1 -1
- package/dist/source/useMatch.jsx +33 -23
- package/dist/source/useMatch.jsx.map +1 -1
- package/dist/source/useParams.jsx +1 -1
- package/dist/source/useParams.jsx.map +1 -1
- package/dist/source/useRouterState.jsx +14 -55
- package/dist/source/useRouterState.jsx.map +1 -1
- package/dist/source/useSearch.jsx +2 -1
- package/dist/source/useSearch.jsx.map +1 -1
- package/dist/source/utils.d.ts +0 -5
- package/dist/source/utils.js +2 -15
- package/dist/source/utils.js.map +1 -1
- package/package.json +7 -7
- package/skills/solid-router/SKILL.md +2 -0
- package/src/Asset.tsx +3 -3
- package/src/HeadContent.dev.tsx +10 -1
- package/src/HeadContent.tsx +10 -1
- package/src/Match.tsx +395 -349
- package/src/Matches.tsx +55 -54
- package/src/RouterProvider.tsx +13 -10
- package/src/Scripts.tsx +55 -54
- package/src/Transitioner.tsx +103 -60
- package/src/headContentUtils.tsx +104 -96
- package/src/link.tsx +188 -146
- package/src/matchContext.tsx +16 -7
- package/src/not-found.tsx +6 -6
- package/src/router.ts +2 -1
- package/src/routerStores.ts +119 -0
- package/src/ssr/RouterClient.tsx +1 -1
- package/src/ssr/renderRouterToStream.tsx +1 -1
- package/src/ssr/renderRouterToString.tsx +1 -1
- package/src/useBlocker.tsx +80 -63
- package/src/useCanGoBack.ts +6 -2
- package/src/useLoaderDeps.tsx +2 -3
- package/src/useLocation.tsx +18 -5
- package/src/useMatch.tsx +37 -38
- package/src/useParams.tsx +2 -3
- package/src/useRouterState.tsx +21 -67
- package/src/useSearch.tsx +2 -1
- package/src/utils.ts +2 -24
package/dist/cjs/Match.cjs
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
const require_runtime = require("./_virtual/_rolldown/runtime.cjs");
|
|
2
2
|
const require_CatchBoundary = require("./CatchBoundary.cjs");
|
|
3
3
|
const require_useRouter = require("./useRouter.cjs");
|
|
4
|
-
const require_useRouterState = require("./useRouterState.cjs");
|
|
5
4
|
const require_matchContext = require("./matchContext.cjs");
|
|
6
5
|
const require_SafeFragment = require("./SafeFragment.cjs");
|
|
7
6
|
const require_not_found = require("./not-found.cjs");
|
|
@@ -17,306 +16,326 @@ let _tanstack_router_core_isServer = require("@tanstack/router-core/isServer");
|
|
|
17
16
|
let tiny_invariant = require("tiny-invariant");
|
|
18
17
|
tiny_invariant = require_runtime.__toESM(tiny_invariant);
|
|
19
18
|
//#region src/Match.tsx
|
|
20
|
-
var
|
|
19
|
+
var NearestMatchContext = require_matchContext.nearestMatchContext;
|
|
21
20
|
var Match = (props) => {
|
|
22
21
|
const router = require_useRouter.useRouter();
|
|
23
|
-
const
|
|
24
|
-
const
|
|
25
|
-
if (!
|
|
22
|
+
const match = solid_js.createMemo(() => {
|
|
23
|
+
const id = props.matchId;
|
|
24
|
+
if (!id) return void 0;
|
|
25
|
+
return router.stores.activeMatchStoresById.get(id)?.state;
|
|
26
|
+
});
|
|
27
|
+
const rawMatchState = solid_js.createMemo(() => {
|
|
28
|
+
const currentMatch = match();
|
|
29
|
+
if (!currentMatch) return null;
|
|
30
|
+
const routeId = currentMatch.routeId;
|
|
31
|
+
const parentRouteId = router.routesById[routeId]?.parentRoute?.id;
|
|
26
32
|
return {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
33
|
+
matchId: currentMatch.id,
|
|
34
|
+
routeId,
|
|
35
|
+
ssr: currentMatch.ssr,
|
|
36
|
+
_displayPending: currentMatch._displayPending,
|
|
37
|
+
parentRouteId
|
|
30
38
|
};
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
const index = s.matches.findIndex((d) => d.id === props.matchId);
|
|
45
|
-
return s.matches[index - 1]?.routeId;
|
|
46
|
-
} });
|
|
47
|
-
const ShellComponent = solid_js.createMemo(() => route().isRoot ? route().options.shellComponent ?? require_SafeFragment.SafeFragment : require_SafeFragment.SafeFragment);
|
|
48
|
-
return (0, _solidjs_web.createComponent)(_solidjs_web.Dynamic, {
|
|
49
|
-
get component() {
|
|
50
|
-
return ShellComponent();
|
|
39
|
+
});
|
|
40
|
+
const nearestMatch = {
|
|
41
|
+
matchId: () => rawMatchState()?.matchId,
|
|
42
|
+
routeId: () => rawMatchState()?.routeId,
|
|
43
|
+
match,
|
|
44
|
+
hasPending: solid_js.createMemo(() => {
|
|
45
|
+
const currentRouteId = rawMatchState()?.routeId;
|
|
46
|
+
return currentRouteId ? Boolean(router.stores.pendingRouteIds.state[currentRouteId]) : false;
|
|
47
|
+
})
|
|
48
|
+
};
|
|
49
|
+
return (0, _solidjs_web.createComponent)(solid_js.Show, {
|
|
50
|
+
get when() {
|
|
51
|
+
return rawMatchState();
|
|
51
52
|
},
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
53
|
+
children: (currentMatchState) => {
|
|
54
|
+
const route = solid_js.createMemo(() => router.routesById[currentMatchState().routeId]);
|
|
55
|
+
const resolvePendingComponent = solid_js.createMemo(() => route().options.pendingComponent ?? router.options.defaultPendingComponent);
|
|
56
|
+
const routeErrorComponent = solid_js.createMemo(() => route().options.errorComponent ?? router.options.defaultErrorComponent);
|
|
57
|
+
const routeOnCatch = solid_js.createMemo(() => route().options.onCatch ?? router.options.defaultOnCatch);
|
|
58
|
+
const routeNotFoundComponent = solid_js.createMemo(() => route().isRoot ? route().options.notFoundComponent ?? router.options.notFoundRoute?.options.component : route().options.notFoundComponent);
|
|
59
|
+
const resolvedNoSsr = solid_js.createMemo(() => currentMatchState().ssr === false || currentMatchState().ssr === "data-only");
|
|
60
|
+
const ResolvedSuspenseBoundary = solid_js.createMemo(() => resolvedNoSsr() ? require_SafeFragment.SafeFragment : solid_js.Loading);
|
|
61
|
+
const ResolvedCatchBoundary = solid_js.createMemo(() => routeErrorComponent() ? require_CatchBoundary.CatchBoundary : require_SafeFragment.SafeFragment);
|
|
62
|
+
const ResolvedNotFoundBoundary = solid_js.createMemo(() => routeNotFoundComponent() ? require_not_found.CatchNotFound : require_SafeFragment.SafeFragment);
|
|
63
|
+
const ShellComponent = solid_js.createMemo(() => route().isRoot ? route().options.shellComponent ?? require_SafeFragment.SafeFragment : require_SafeFragment.SafeFragment);
|
|
64
|
+
return (0, _solidjs_web.createComponent)(_solidjs_web.Dynamic, {
|
|
65
|
+
get component() {
|
|
66
|
+
return ShellComponent();
|
|
67
|
+
},
|
|
55
68
|
get children() {
|
|
56
|
-
return (0, _solidjs_web.createComponent)(
|
|
57
|
-
|
|
58
|
-
return ResolvedSuspenseBoundary();
|
|
59
|
-
},
|
|
60
|
-
get fallback() {
|
|
61
|
-
return (0, _solidjs_web.memo)(() => !!((_tanstack_router_core_isServer.isServer ?? router.isServer) || resolvedNoSsr()))() ? void 0 : (0, _solidjs_web.createComponent)(_solidjs_web.Dynamic, { get component() {
|
|
62
|
-
return resolvePendingComponent();
|
|
63
|
-
} });
|
|
64
|
-
},
|
|
69
|
+
return [(0, _solidjs_web.createComponent)(NearestMatchContext, {
|
|
70
|
+
value: nearestMatch,
|
|
65
71
|
get children() {
|
|
66
72
|
return (0, _solidjs_web.createComponent)(_solidjs_web.Dynamic, {
|
|
67
73
|
get component() {
|
|
68
|
-
return
|
|
74
|
+
return ResolvedSuspenseBoundary();
|
|
69
75
|
},
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
onCatch: (error) => {
|
|
75
|
-
if ((0, _tanstack_router_core.isNotFound)(error)) throw error;
|
|
76
|
-
(0, tiny_warning.default)(false, `Error in route match: ${solid_js.untrack(matchState).routeId}`);
|
|
77
|
-
routeOnCatch()?.(error);
|
|
76
|
+
get fallback() {
|
|
77
|
+
return (0, _solidjs_web.memo)(() => !!((_tanstack_router_core_isServer.isServer ?? router.isServer) && resolvedNoSsr()))() ? void 0 : (0, _solidjs_web.createComponent)(_solidjs_web.Dynamic, { get component() {
|
|
78
|
+
return resolvePendingComponent();
|
|
79
|
+
} });
|
|
78
80
|
},
|
|
79
81
|
get children() {
|
|
80
82
|
return (0, _solidjs_web.createComponent)(_solidjs_web.Dynamic, {
|
|
81
83
|
get component() {
|
|
82
|
-
return
|
|
84
|
+
return ResolvedCatchBoundary();
|
|
85
|
+
},
|
|
86
|
+
getResetKey: () => router.stores.loadedAt.state,
|
|
87
|
+
get errorComponent() {
|
|
88
|
+
return routeErrorComponent() || require_CatchBoundary.ErrorComponent;
|
|
83
89
|
},
|
|
84
|
-
|
|
85
|
-
if (
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
} }, error));
|
|
90
|
+
onCatch: (error) => {
|
|
91
|
+
if ((0, _tanstack_router_core.isNotFound)(error)) throw error;
|
|
92
|
+
(0, tiny_warning.default)(false, `Error in route match: ${currentMatchState().routeId}`);
|
|
93
|
+
routeOnCatch()?.(error);
|
|
89
94
|
},
|
|
90
95
|
get children() {
|
|
91
|
-
return (0, _solidjs_web.createComponent)(
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
96
|
+
return (0, _solidjs_web.createComponent)(_solidjs_web.Dynamic, {
|
|
97
|
+
get component() {
|
|
98
|
+
return ResolvedNotFoundBoundary();
|
|
99
|
+
},
|
|
100
|
+
fallback: (error) => {
|
|
101
|
+
if (!routeNotFoundComponent() || error.routeId && error.routeId !== currentMatchState().routeId || !error.routeId && !route().isRoot) throw error;
|
|
102
|
+
return (0, _solidjs_web.createComponent)(_solidjs_web.Dynamic, (0, _solidjs_web.mergeProps)({ get component() {
|
|
103
|
+
return routeNotFoundComponent();
|
|
104
|
+
} }, error));
|
|
105
|
+
},
|
|
106
|
+
get children() {
|
|
107
|
+
return (0, _solidjs_web.createComponent)(solid_js.Switch, { get children() {
|
|
108
|
+
return [(0, _solidjs_web.createComponent)(solid_js.Match, {
|
|
98
109
|
get when() {
|
|
99
|
-
return
|
|
110
|
+
return resolvedNoSsr();
|
|
100
111
|
},
|
|
101
|
-
get
|
|
102
|
-
return (0, _solidjs_web.createComponent)(
|
|
103
|
-
|
|
104
|
-
|
|
112
|
+
get children() {
|
|
113
|
+
return (0, _solidjs_web.createComponent)(solid_js.Show, {
|
|
114
|
+
get when() {
|
|
115
|
+
return !(_tanstack_router_core_isServer.isServer ?? router.isServer);
|
|
116
|
+
},
|
|
117
|
+
get fallback() {
|
|
118
|
+
return (0, _solidjs_web.createComponent)(_solidjs_web.Dynamic, { get component() {
|
|
119
|
+
return resolvePendingComponent();
|
|
120
|
+
} });
|
|
121
|
+
},
|
|
122
|
+
get children() {
|
|
123
|
+
return (0, _solidjs_web.createComponent)(MatchInner, {});
|
|
124
|
+
}
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
}), (0, _solidjs_web.createComponent)(solid_js.Match, {
|
|
128
|
+
get when() {
|
|
129
|
+
return !resolvedNoSsr();
|
|
105
130
|
},
|
|
106
131
|
get children() {
|
|
107
|
-
return (0, _solidjs_web.createComponent)(MatchInner, {
|
|
108
|
-
return props.matchId;
|
|
109
|
-
} });
|
|
132
|
+
return (0, _solidjs_web.createComponent)(MatchInner, {});
|
|
110
133
|
}
|
|
111
|
-
});
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
return !resolvedNoSsr();
|
|
116
|
-
},
|
|
117
|
-
get children() {
|
|
118
|
-
return (0, _solidjs_web.createComponent)(MatchInner, { get matchId() {
|
|
119
|
-
return props.matchId;
|
|
120
|
-
} });
|
|
121
|
-
}
|
|
122
|
-
})];
|
|
123
|
-
} });
|
|
134
|
+
})];
|
|
135
|
+
} });
|
|
136
|
+
}
|
|
137
|
+
});
|
|
124
138
|
}
|
|
125
139
|
});
|
|
126
140
|
}
|
|
127
141
|
});
|
|
128
142
|
}
|
|
129
|
-
});
|
|
143
|
+
}), (0, _solidjs_web.memo)(() => (0, _solidjs_web.memo)(() => currentMatchState().parentRouteId === _tanstack_router_core.rootRouteId)() ? [(0, _solidjs_web.createComponent)(OnRendered, {}), (0, _solidjs_web.createComponent)(require_scroll_restoration.ScrollRestoration, {})] : null)];
|
|
130
144
|
}
|
|
131
|
-
})
|
|
145
|
+
});
|
|
132
146
|
}
|
|
133
147
|
});
|
|
134
148
|
};
|
|
135
149
|
var lastOnRenderedKey = /* @__PURE__ */ new WeakMap();
|
|
136
150
|
function OnRendered() {
|
|
137
151
|
const router = require_useRouter.useRouter();
|
|
138
|
-
const location =
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
solid_js.createEffect(() => [
|
|
152
|
+
const location = solid_js.createMemo(() => router.stores.resolvedLocation.state?.state.__TSR_key);
|
|
153
|
+
const locationState = solid_js.createMemo(() => router.stores.location.state);
|
|
154
|
+
const resolvedLocationState = solid_js.createMemo(() => router.stores.resolvedLocation.state);
|
|
155
|
+
solid_js.createEffect(() => [
|
|
156
|
+
location(),
|
|
157
|
+
locationState(),
|
|
158
|
+
resolvedLocationState()
|
|
159
|
+
], ([location, currentLocationState, currentResolvedLocationState]) => {
|
|
142
160
|
if (!location) return;
|
|
143
161
|
if (lastOnRenderedKey.get(router) === location) return;
|
|
144
162
|
lastOnRenderedKey.set(router, location);
|
|
145
163
|
router.emit({
|
|
146
164
|
type: "onRendered",
|
|
147
|
-
...(0, _tanstack_router_core.getLocationChangeInfo)(
|
|
165
|
+
...(0, _tanstack_router_core.getLocationChangeInfo)(currentLocationState, currentResolvedLocationState)
|
|
148
166
|
});
|
|
149
167
|
});
|
|
150
168
|
return null;
|
|
151
169
|
}
|
|
152
|
-
var MatchInner = (
|
|
170
|
+
var MatchInner = () => {
|
|
153
171
|
const router = require_useRouter.useRouter();
|
|
154
|
-
const
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
172
|
+
const match = solid_js.useContext(require_matchContext.nearestMatchContext).match;
|
|
173
|
+
const rawMatchState = solid_js.createMemo(() => {
|
|
174
|
+
const currentMatch = match();
|
|
175
|
+
if (!currentMatch) return null;
|
|
176
|
+
const routeId = currentMatch.routeId;
|
|
158
177
|
const remountDeps = (router.routesById[routeId].options.remountDeps ?? router.options.defaultRemountDeps)?.({
|
|
159
178
|
routeId,
|
|
160
|
-
loaderDeps:
|
|
161
|
-
params:
|
|
162
|
-
search:
|
|
179
|
+
loaderDeps: currentMatch.loaderDeps,
|
|
180
|
+
params: currentMatch._strictParams,
|
|
181
|
+
search: currentMatch._strictSearch
|
|
163
182
|
});
|
|
164
183
|
return {
|
|
165
184
|
key: remountDeps ? JSON.stringify(remountDeps) : void 0,
|
|
166
185
|
routeId,
|
|
167
186
|
match: {
|
|
168
|
-
id:
|
|
169
|
-
status:
|
|
170
|
-
error:
|
|
171
|
-
_forcePending:
|
|
172
|
-
_displayPending:
|
|
187
|
+
id: currentMatch.id,
|
|
188
|
+
status: currentMatch.status,
|
|
189
|
+
error: currentMatch.error,
|
|
190
|
+
_forcePending: currentMatch._forcePending ?? false,
|
|
191
|
+
_displayPending: currentMatch._displayPending ?? false
|
|
173
192
|
}
|
|
174
193
|
};
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
const route = () => router.routesById[matchState().routeId];
|
|
178
|
-
const match = () => matchState().match;
|
|
179
|
-
const componentKey = () => matchState().key ?? matchState().match.id;
|
|
180
|
-
const out = () => {
|
|
181
|
-
const Comp = solid_js.untrack(route).options.component ?? router.options.defaultComponent;
|
|
182
|
-
if (Comp) return (0, _solidjs_web.createComponent)(Comp, {});
|
|
183
|
-
return (0, _solidjs_web.createComponent)(Outlet, {});
|
|
184
|
-
};
|
|
185
|
-
const keyedOut = () => (0, _solidjs_web.createComponent)(solid_js.Show, {
|
|
194
|
+
});
|
|
195
|
+
return (0, _solidjs_web.createComponent)(solid_js.Show, {
|
|
186
196
|
get when() {
|
|
187
|
-
return
|
|
197
|
+
return rawMatchState();
|
|
188
198
|
},
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
}
|
|
202
|
-
}),
|
|
203
|
-
(0, _solidjs_web.createComponent)(solid_js.Match, {
|
|
204
|
-
get when() {
|
|
205
|
-
return match()._forcePending;
|
|
206
|
-
},
|
|
207
|
-
children: (_) => {
|
|
208
|
-
const matchId = solid_js.untrack(() => match().id);
|
|
209
|
-
return (0, _solidjs_web.memo)(solid_js.createMemo(() => router.getMatch(matchId)?._nonReactive.minPendingPromise));
|
|
210
|
-
}
|
|
211
|
-
}),
|
|
212
|
-
(0, _solidjs_web.createComponent)(solid_js.Match, {
|
|
199
|
+
children: (currentMatchState) => {
|
|
200
|
+
const route = solid_js.createMemo(() => router.routesById[currentMatchState().routeId]);
|
|
201
|
+
const currentMatch = solid_js.createMemo(() => currentMatchState().match);
|
|
202
|
+
const componentKey = solid_js.createMemo(() => currentMatchState().key ?? currentMatchState().match.id);
|
|
203
|
+
const Comp = solid_js.createMemo(() => route().options.component ?? router.options.defaultComponent);
|
|
204
|
+
const OutComponent = solid_js.createMemo(() => {
|
|
205
|
+
return Comp() || Outlet;
|
|
206
|
+
});
|
|
207
|
+
const RenderOut = () => (0, _solidjs_web.createComponent)(_solidjs_web.Dynamic, { get component() {
|
|
208
|
+
return OutComponent();
|
|
209
|
+
} });
|
|
210
|
+
const keyedOut = () => (0, _solidjs_web.createComponent)(solid_js.Show, {
|
|
213
211
|
get when() {
|
|
214
|
-
return
|
|
212
|
+
return componentKey();
|
|
215
213
|
},
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
214
|
+
keyed: true,
|
|
215
|
+
children: (_key) => (0, _solidjs_web.createComponent)(RenderOut, {})
|
|
216
|
+
});
|
|
217
|
+
return (0, _solidjs_web.createComponent)(solid_js.Switch, { get children() {
|
|
218
|
+
return [
|
|
219
|
+
(0, _solidjs_web.createComponent)(solid_js.Match, {
|
|
220
|
+
get when() {
|
|
221
|
+
return currentMatch()._displayPending;
|
|
222
|
+
},
|
|
223
|
+
children: (_) => {
|
|
224
|
+
return (0, _solidjs_web.memo)(solid_js.createMemo(() => router.getMatch(currentMatch().id)?._nonReactive.displayPendingPromise));
|
|
225
|
+
}
|
|
226
|
+
}),
|
|
227
|
+
(0, _solidjs_web.createComponent)(solid_js.Match, {
|
|
228
|
+
get when() {
|
|
229
|
+
return currentMatch()._forcePending;
|
|
230
|
+
},
|
|
231
|
+
children: (_) => {
|
|
232
|
+
return (0, _solidjs_web.memo)(solid_js.createMemo(() => router.getMatch(currentMatch().id)?._nonReactive.minPendingPromise));
|
|
233
|
+
}
|
|
234
|
+
}),
|
|
235
|
+
(0, _solidjs_web.createComponent)(solid_js.Match, {
|
|
236
|
+
get when() {
|
|
237
|
+
return currentMatch().status === "pending";
|
|
238
|
+
},
|
|
239
|
+
children: (_) => {
|
|
240
|
+
const pendingMinMs = solid_js.untrack(() => route().options.pendingMinMs ?? router.options.defaultPendingMinMs);
|
|
241
|
+
if (pendingMinMs) {
|
|
242
|
+
const routerMatch = solid_js.untrack(() => router.getMatch(currentMatch().id));
|
|
243
|
+
if (routerMatch && !routerMatch._nonReactive.minPendingPromise) {
|
|
244
|
+
if (!(_tanstack_router_core_isServer.isServer ?? router.isServer)) {
|
|
245
|
+
const minPendingPromise = (0, _tanstack_router_core.createControlledPromise)();
|
|
246
|
+
routerMatch._nonReactive.minPendingPromise = minPendingPromise;
|
|
247
|
+
setTimeout(() => {
|
|
248
|
+
minPendingPromise.resolve();
|
|
249
|
+
routerMatch._nonReactive.minPendingPromise = void 0;
|
|
250
|
+
}, pendingMinMs);
|
|
251
|
+
}
|
|
252
|
+
}
|
|
230
253
|
}
|
|
254
|
+
const loaderResult = solid_js.createMemo(async () => {
|
|
255
|
+
await new Promise((r) => setTimeout(r, 0));
|
|
256
|
+
return router.getMatch(currentMatch().id)?._nonReactive.loadPromise;
|
|
257
|
+
});
|
|
258
|
+
const FallbackComponent = solid_js.untrack(() => route().options.pendingComponent ?? router.options.defaultPendingComponent);
|
|
259
|
+
return [FallbackComponent && pendingMinMs > 0 ? (0, _solidjs_web.createComponent)(_solidjs_web.Dynamic, { component: FallbackComponent }) : null, (0, _solidjs_web.memo)(loaderResult)];
|
|
231
260
|
}
|
|
232
|
-
}
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
(0,
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
children: (
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
}
|
|
284
|
-
throw solid_js.untrack(match).error;
|
|
285
|
-
}
|
|
286
|
-
}),
|
|
287
|
-
(0, _solidjs_web.createComponent)(solid_js.Match, {
|
|
288
|
-
get when() {
|
|
289
|
-
return match().status === "success";
|
|
290
|
-
},
|
|
291
|
-
get children() {
|
|
292
|
-
return keyedOut();
|
|
293
|
-
}
|
|
294
|
-
})
|
|
295
|
-
];
|
|
296
|
-
} });
|
|
261
|
+
}),
|
|
262
|
+
(0, _solidjs_web.createComponent)(solid_js.Match, {
|
|
263
|
+
get when() {
|
|
264
|
+
return currentMatch().status === "notFound";
|
|
265
|
+
},
|
|
266
|
+
children: (_) => {
|
|
267
|
+
const matchError = solid_js.untrack(() => currentMatch().error);
|
|
268
|
+
(0, tiny_invariant.default)((0, _tanstack_router_core.isNotFound)(matchError), "Expected a notFound error");
|
|
269
|
+
return (0, _solidjs_web.createComponent)(solid_js.Show, {
|
|
270
|
+
get when() {
|
|
271
|
+
return currentMatchState().routeId;
|
|
272
|
+
},
|
|
273
|
+
keyed: true,
|
|
274
|
+
children: (_routeId) => solid_js.untrack(() => require_renderRouteNotFound.renderRouteNotFound(router, route(), matchError))
|
|
275
|
+
});
|
|
276
|
+
}
|
|
277
|
+
}),
|
|
278
|
+
(0, _solidjs_web.createComponent)(solid_js.Match, {
|
|
279
|
+
get when() {
|
|
280
|
+
return currentMatch().status === "redirected";
|
|
281
|
+
},
|
|
282
|
+
children: (_) => {
|
|
283
|
+
(0, tiny_invariant.default)((0, _tanstack_router_core.isRedirect)(solid_js.untrack(() => currentMatch().error)), "Expected a redirect error");
|
|
284
|
+
return null;
|
|
285
|
+
}
|
|
286
|
+
}),
|
|
287
|
+
(0, _solidjs_web.createComponent)(solid_js.Match, {
|
|
288
|
+
get when() {
|
|
289
|
+
return currentMatch().status === "error";
|
|
290
|
+
},
|
|
291
|
+
children: (_) => {
|
|
292
|
+
const matchError = solid_js.untrack(() => currentMatch().error);
|
|
293
|
+
if (_tanstack_router_core_isServer.isServer ?? router.isServer) return (0, _solidjs_web.createComponent)((route().options.errorComponent ?? router.options.defaultErrorComponent) || require_CatchBoundary.ErrorComponent, {
|
|
294
|
+
error: matchError,
|
|
295
|
+
info: { componentStack: "" }
|
|
296
|
+
});
|
|
297
|
+
throw matchError;
|
|
298
|
+
}
|
|
299
|
+
}),
|
|
300
|
+
(0, _solidjs_web.createComponent)(solid_js.Match, {
|
|
301
|
+
get when() {
|
|
302
|
+
return currentMatch().status === "success";
|
|
303
|
+
},
|
|
304
|
+
get children() {
|
|
305
|
+
return keyedOut();
|
|
306
|
+
}
|
|
307
|
+
})
|
|
308
|
+
];
|
|
309
|
+
} });
|
|
310
|
+
}
|
|
311
|
+
});
|
|
297
312
|
};
|
|
298
313
|
var Outlet = () => {
|
|
299
314
|
const router = require_useRouter.useRouter();
|
|
300
|
-
const
|
|
301
|
-
const
|
|
302
|
-
const
|
|
303
|
-
const
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
315
|
+
const nearestParentMatch = solid_js.useContext(require_matchContext.nearestMatchContext);
|
|
316
|
+
const parentMatch = nearestParentMatch.match;
|
|
317
|
+
const routeId = nearestParentMatch.routeId;
|
|
318
|
+
const route = solid_js.createMemo(() => routeId() ? router.routesById[routeId()] : void 0);
|
|
319
|
+
const parentGlobalNotFound = solid_js.createMemo(() => parentMatch()?.globalNotFound ?? false);
|
|
320
|
+
const childMatchId = solid_js.createMemo(() => {
|
|
321
|
+
const currentRouteId = routeId();
|
|
322
|
+
return currentRouteId ? router.stores.childMatchIdByRouteId.state[currentRouteId] : void 0;
|
|
323
|
+
});
|
|
324
|
+
const childRouteId = solid_js.createMemo(() => {
|
|
325
|
+
const id = childMatchId();
|
|
326
|
+
if (!id) return void 0;
|
|
327
|
+
return router.stores.activeMatchStoresById.get(id)?.state.routeId;
|
|
328
|
+
});
|
|
329
|
+
const childRoute = solid_js.createMemo(() => {
|
|
330
|
+
const id = childRouteId();
|
|
331
|
+
return id ? router.routesById[id] : void 0;
|
|
332
|
+
});
|
|
333
|
+
const childPendingComponent = solid_js.createMemo(() => childRoute()?.options.pendingComponent ?? router.options.defaultPendingComponent);
|
|
334
|
+
const childMatchStatus = solid_js.createMemo(() => {
|
|
335
|
+
const id = childMatchId();
|
|
336
|
+
if (!id) return void 0;
|
|
337
|
+
return router.stores.activeMatchStoresById.get(id)?.state.status;
|
|
338
|
+
});
|
|
320
339
|
const shouldShowNotFound = () => childMatchStatus() !== "redirected" && parentGlobalNotFound();
|
|
321
340
|
return (0, _solidjs_web.createComponent)(solid_js.Show, {
|
|
322
341
|
get when() {
|
|
@@ -325,15 +344,13 @@ var Outlet = () => {
|
|
|
325
344
|
get fallback() {
|
|
326
345
|
return (0, _solidjs_web.createComponent)(solid_js.Show, {
|
|
327
346
|
get when() {
|
|
328
|
-
return shouldShowNotFound();
|
|
347
|
+
return (0, _solidjs_web.memo)(() => !!shouldShowNotFound())() && route();
|
|
329
348
|
},
|
|
330
|
-
|
|
331
|
-
return require_renderRouteNotFound.renderRouteNotFound(router, route(), void 0);
|
|
332
|
-
}
|
|
349
|
+
children: (resolvedRoute) => solid_js.untrack(() => require_renderRouteNotFound.renderRouteNotFound(router, resolvedRoute(), void 0))
|
|
333
350
|
});
|
|
334
351
|
},
|
|
335
|
-
children: (
|
|
336
|
-
const currentMatchId = solid_js.createMemo(() =>
|
|
352
|
+
children: (childMatchIdAccessor) => {
|
|
353
|
+
const currentMatchId = solid_js.createMemo(() => childMatchIdAccessor());
|
|
337
354
|
return (0, _solidjs_web.createComponent)(solid_js.Show, {
|
|
338
355
|
get when() {
|
|
339
356
|
return routeId() === _tanstack_router_core.rootRouteId;
|
|
@@ -351,9 +368,9 @@ var Outlet = () => {
|
|
|
351
368
|
keyed: true,
|
|
352
369
|
children: (_routeId) => (0, _solidjs_web.createComponent)(solid_js.Loading, {
|
|
353
370
|
get fallback() {
|
|
354
|
-
return (0, _solidjs_web.createComponent)(_solidjs_web.Dynamic, { get component() {
|
|
355
|
-
return
|
|
356
|
-
} });
|
|
371
|
+
return (0, _solidjs_web.memo)(() => !!childPendingComponent())() ? (0, _solidjs_web.createComponent)(_solidjs_web.Dynamic, { get component() {
|
|
372
|
+
return childPendingComponent();
|
|
373
|
+
} }) : null;
|
|
357
374
|
},
|
|
358
375
|
get children() {
|
|
359
376
|
return (0, _solidjs_web.createComponent)(Match, { get matchId() {
|