@tanstack/solid-router 1.167.1 → 1.167.3
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 +84 -127
- package/dist/cjs/Asset.cjs.map +1 -1
- package/dist/cjs/CatchBoundary.cjs +50 -68
- package/dist/cjs/CatchBoundary.cjs.map +1 -1
- package/dist/cjs/ClientOnly.cjs +61 -39
- package/dist/cjs/ClientOnly.cjs.map +1 -1
- package/dist/cjs/HeadContent.cjs +25 -19
- package/dist/cjs/HeadContent.cjs.map +1 -1
- package/dist/cjs/HeadContent.dev.cjs +38 -33
- package/dist/cjs/HeadContent.dev.cjs.map +1 -1
- package/dist/cjs/Match.cjs +330 -398
- package/dist/cjs/Match.cjs.map +1 -1
- package/dist/cjs/Matches.cjs +109 -151
- package/dist/cjs/Matches.cjs.map +1 -1
- package/dist/cjs/RouterProvider.cjs +28 -40
- package/dist/cjs/RouterProvider.cjs.map +1 -1
- package/dist/cjs/SafeFragment.cjs +7 -5
- package/dist/cjs/SafeFragment.cjs.map +1 -1
- package/dist/cjs/ScriptOnce.cjs +18 -20
- package/dist/cjs/ScriptOnce.cjs.map +1 -1
- package/dist/cjs/Scripts.cjs +41 -54
- package/dist/cjs/Scripts.cjs.map +1 -1
- package/dist/cjs/ScrollRestoration.cjs +26 -28
- package/dist/cjs/ScrollRestoration.cjs.map +1 -1
- package/dist/cjs/Transitioner.cjs +94 -129
- package/dist/cjs/Transitioner.cjs.map +1 -1
- package/dist/cjs/_virtual/_rolldown/runtime.cjs +23 -0
- package/dist/cjs/awaited.cjs +24 -51
- package/dist/cjs/awaited.cjs.map +1 -1
- package/dist/cjs/fileRoute.cjs +96 -91
- package/dist/cjs/fileRoute.cjs.map +1 -1
- package/dist/cjs/headContentUtils.cjs +132 -170
- package/dist/cjs/headContentUtils.cjs.map +1 -1
- package/dist/cjs/index.cjs +245 -176
- package/dist/cjs/index.dev.cjs +245 -176
- package/dist/cjs/lazyRouteComponent.cjs +48 -54
- package/dist/cjs/lazyRouteComponent.cjs.map +1 -1
- package/dist/cjs/link.cjs +304 -331
- package/dist/cjs/link.cjs.map +1 -1
- package/dist/cjs/matchContext.cjs +9 -23
- package/dist/cjs/matchContext.cjs.map +1 -1
- package/dist/cjs/not-found.cjs +26 -34
- package/dist/cjs/not-found.cjs.map +1 -1
- package/dist/cjs/renderRouteNotFound.cjs +23 -16
- package/dist/cjs/renderRouteNotFound.cjs.map +1 -1
- package/dist/cjs/route.cjs +200 -215
- package/dist/cjs/route.cjs.map +1 -1
- package/dist/cjs/router.cjs +18 -16
- package/dist/cjs/router.cjs.map +1 -1
- package/dist/cjs/routerContext.cjs +8 -22
- package/dist/cjs/routerContext.cjs.map +1 -1
- package/dist/cjs/scroll-restoration.cjs +25 -35
- package/dist/cjs/scroll-restoration.cjs.map +1 -1
- package/dist/cjs/ssr/RouterClient.cjs +31 -42
- package/dist/cjs/ssr/RouterClient.cjs.map +1 -1
- package/dist/cjs/ssr/RouterServer.cjs +44 -51
- package/dist/cjs/ssr/RouterServer.cjs.map +1 -1
- package/dist/cjs/ssr/client.cjs +2 -4
- package/dist/cjs/ssr/defaultRenderHandler.cjs +12 -16
- package/dist/cjs/ssr/defaultRenderHandler.cjs.map +1 -1
- package/dist/cjs/ssr/defaultStreamHandler.cjs +13 -18
- package/dist/cjs/ssr/defaultStreamHandler.cjs.map +1 -1
- package/dist/cjs/ssr/renderRouterToStream.cjs +27 -55
- package/dist/cjs/ssr/renderRouterToStream.cjs.map +1 -1
- package/dist/cjs/ssr/renderRouterToString.cjs +33 -57
- package/dist/cjs/ssr/renderRouterToString.cjs.map +1 -1
- package/dist/cjs/ssr/server.cjs +18 -18
- package/dist/cjs/useBlocker.cjs +138 -173
- package/dist/cjs/useBlocker.cjs.map +1 -1
- package/dist/cjs/useBlocker.d.cts +8 -5
- package/dist/cjs/useCanGoBack.cjs +6 -5
- package/dist/cjs/useCanGoBack.cjs.map +1 -1
- package/dist/cjs/useLoaderData.cjs +12 -11
- package/dist/cjs/useLoaderData.cjs.map +1 -1
- package/dist/cjs/useLoaderDeps.cjs +12 -14
- package/dist/cjs/useLoaderDeps.cjs.map +1 -1
- package/dist/cjs/useLocation.cjs +6 -7
- package/dist/cjs/useLocation.cjs.map +1 -1
- package/dist/cjs/useMatch.cjs +27 -49
- package/dist/cjs/useMatch.cjs.map +1 -1
- package/dist/cjs/useNavigate.cjs +20 -38
- package/dist/cjs/useNavigate.cjs.map +1 -1
- package/dist/cjs/useParams.cjs +14 -13
- package/dist/cjs/useParams.cjs.map +1 -1
- package/dist/cjs/useRouteContext.cjs +9 -8
- package/dist/cjs/useRouteContext.cjs.map +1 -1
- package/dist/cjs/useRouter.cjs +13 -26
- package/dist/cjs/useRouter.cjs.map +1 -1
- package/dist/cjs/useRouterState.cjs +29 -37
- package/dist/cjs/useRouterState.cjs.map +1 -1
- package/dist/cjs/useSearch.cjs +13 -12
- package/dist/cjs/useSearch.cjs.map +1 -1
- package/dist/cjs/utils.cjs +58 -51
- package/dist/cjs/utils.cjs.map +1 -1
- package/dist/esm/Asset.js +82 -126
- package/dist/esm/Asset.js.map +1 -1
- package/dist/esm/CatchBoundary.js +46 -50
- package/dist/esm/CatchBoundary.js.map +1 -1
- package/dist/esm/ClientOnly.js +58 -22
- package/dist/esm/ClientOnly.js.map +1 -1
- package/dist/esm/HeadContent.dev.js +36 -32
- package/dist/esm/HeadContent.dev.js.map +1 -1
- package/dist/esm/HeadContent.js +23 -18
- package/dist/esm/HeadContent.js.map +1 -1
- package/dist/esm/Match.js +322 -378
- package/dist/esm/Match.js.map +1 -1
- package/dist/esm/Matches.js +102 -135
- package/dist/esm/Matches.js.map +1 -1
- package/dist/esm/RouterProvider.js +25 -39
- package/dist/esm/RouterProvider.js.map +1 -1
- package/dist/esm/SafeFragment.js +6 -5
- package/dist/esm/SafeFragment.js.map +1 -1
- package/dist/esm/ScriptOnce.js +16 -19
- package/dist/esm/ScriptOnce.js.map +1 -1
- package/dist/esm/Scripts.js +40 -54
- package/dist/esm/Scripts.js.map +1 -1
- package/dist/esm/ScrollRestoration.js +25 -29
- package/dist/esm/ScrollRestoration.js.map +1 -1
- package/dist/esm/Transitioner.js +90 -110
- package/dist/esm/Transitioner.js.map +1 -1
- package/dist/esm/awaited.js +21 -34
- package/dist/esm/awaited.js.map +1 -1
- package/dist/esm/fileRoute.js +90 -92
- package/dist/esm/fileRoute.js.map +1 -1
- package/dist/esm/headContentUtils.js +129 -152
- package/dist/esm/headContentUtils.js.map +1 -1
- package/dist/esm/index.dev.js +15 -115
- package/dist/esm/index.js +17 -116
- package/dist/esm/lazyRouteComponent.js +47 -54
- package/dist/esm/lazyRouteComponent.js.map +1 -1
- package/dist/esm/link.js +299 -314
- package/dist/esm/link.js.map +1 -1
- package/dist/esm/matchContext.js +7 -7
- package/dist/esm/matchContext.js.map +1 -1
- package/dist/esm/not-found.js +23 -33
- package/dist/esm/not-found.js.map +1 -1
- package/dist/esm/renderRouteNotFound.js +20 -15
- package/dist/esm/renderRouteNotFound.js.map +1 -1
- package/dist/esm/route.js +193 -218
- package/dist/esm/route.js.map +1 -1
- package/dist/esm/router.js +17 -17
- package/dist/esm/router.js.map +1 -1
- package/dist/esm/routerContext.js +6 -5
- package/dist/esm/routerContext.js.map +1 -1
- package/dist/esm/scroll-restoration.js +23 -34
- package/dist/esm/scroll-restoration.js.map +1 -1
- package/dist/esm/ssr/RouterClient.js +29 -41
- package/dist/esm/ssr/RouterClient.js.map +1 -1
- package/dist/esm/ssr/RouterServer.js +40 -48
- package/dist/esm/ssr/RouterServer.js.map +1 -1
- package/dist/esm/ssr/client.js +1 -4
- package/dist/esm/ssr/defaultRenderHandler.js +11 -15
- package/dist/esm/ssr/defaultRenderHandler.js.map +1 -1
- package/dist/esm/ssr/defaultStreamHandler.js +12 -17
- package/dist/esm/ssr/defaultStreamHandler.js.map +1 -1
- package/dist/esm/ssr/renderRouterToStream.js +24 -37
- package/dist/esm/ssr/renderRouterToStream.js.map +1 -1
- package/dist/esm/ssr/renderRouterToString.js +31 -40
- package/dist/esm/ssr/renderRouterToString.js.map +1 -1
- package/dist/esm/ssr/server.js +3 -10
- package/dist/esm/useBlocker.d.ts +8 -5
- package/dist/esm/useBlocker.js +134 -155
- package/dist/esm/useBlocker.js.map +1 -1
- package/dist/esm/useCanGoBack.js +6 -5
- package/dist/esm/useCanGoBack.js.map +1 -1
- package/dist/esm/useLoaderData.js +12 -11
- package/dist/esm/useLoaderData.js.map +1 -1
- package/dist/esm/useLoaderDeps.js +12 -14
- package/dist/esm/useLoaderDeps.js.map +1 -1
- package/dist/esm/useLocation.js +6 -7
- package/dist/esm/useLocation.js.map +1 -1
- package/dist/esm/useMatch.js +23 -31
- package/dist/esm/useMatch.js.map +1 -1
- package/dist/esm/useNavigate.js +18 -22
- package/dist/esm/useNavigate.js.map +1 -1
- package/dist/esm/useParams.js +14 -13
- package/dist/esm/useParams.js.map +1 -1
- package/dist/esm/useRouteContext.js +9 -8
- package/dist/esm/useRouteContext.js.map +1 -1
- package/dist/esm/useRouter.js +9 -8
- package/dist/esm/useRouter.js.map +1 -1
- package/dist/esm/useRouterState.js +28 -37
- package/dist/esm/useRouterState.js.map +1 -1
- package/dist/esm/useSearch.js +13 -12
- package/dist/esm/useSearch.js.map +1 -1
- package/dist/esm/utils.js +56 -35
- package/dist/esm/utils.js.map +1 -1
- package/dist/source/useBlocker.d.ts +8 -5
- package/dist/source/useBlocker.jsx +2 -2
- package/dist/source/useBlocker.jsx.map +1 -1
- package/package.json +3 -3
- package/src/useBlocker.tsx +15 -10
- package/dist/cjs/index.cjs.map +0 -1
- package/dist/cjs/index.dev.cjs.map +0 -1
- package/dist/cjs/ssr/client.cjs.map +0 -1
- package/dist/cjs/ssr/server.cjs.map +0 -1
- package/dist/esm/index.dev.js.map +0 -1
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/ssr/client.js.map +0 -1
- package/dist/esm/ssr/server.js.map +0 -1
package/dist/esm/route.js
CHANGED
|
@@ -1,235 +1,210 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { BaseRouteApi, notFound, BaseRoute, BaseRootRoute } from "@tanstack/router-core";
|
|
1
|
+
import { useRouter } from "./useRouter.js";
|
|
3
2
|
import { Link } from "./link.js";
|
|
3
|
+
import { useMatch } from "./useMatch.js";
|
|
4
4
|
import { useLoaderData } from "./useLoaderData.js";
|
|
5
5
|
import { useLoaderDeps } from "./useLoaderDeps.js";
|
|
6
6
|
import { useParams } from "./useParams.js";
|
|
7
7
|
import { useSearch } from "./useSearch.js";
|
|
8
8
|
import { useNavigate } from "./useNavigate.js";
|
|
9
|
-
import { useMatch } from "./useMatch.js";
|
|
10
9
|
import { useRouteContext } from "./useRouteContext.js";
|
|
11
|
-
import {
|
|
10
|
+
import { BaseRootRoute, BaseRoute, BaseRouteApi, notFound } from "@tanstack/router-core";
|
|
11
|
+
import { createComponent, mergeProps } from "solid-js/web";
|
|
12
|
+
//#region src/route.tsx
|
|
12
13
|
function getRouteApi(id) {
|
|
13
|
-
|
|
14
|
-
id
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
class RouteApi extends BaseRouteApi {
|
|
18
|
-
/**
|
|
19
|
-
* @deprecated Use the `getRouteApi` function instead.
|
|
20
|
-
*/
|
|
21
|
-
constructor({
|
|
22
|
-
id
|
|
23
|
-
}) {
|
|
24
|
-
super({
|
|
25
|
-
id
|
|
26
|
-
});
|
|
27
|
-
this.useMatch = (opts) => {
|
|
28
|
-
return useMatch({
|
|
29
|
-
select: opts?.select,
|
|
30
|
-
from: this.id
|
|
31
|
-
});
|
|
32
|
-
};
|
|
33
|
-
this.useRouteContext = (opts) => {
|
|
34
|
-
return useRouteContext({
|
|
35
|
-
...opts,
|
|
36
|
-
from: this.id
|
|
37
|
-
});
|
|
38
|
-
};
|
|
39
|
-
this.useSearch = (opts) => {
|
|
40
|
-
return useSearch({
|
|
41
|
-
select: opts?.select,
|
|
42
|
-
from: this.id
|
|
43
|
-
});
|
|
44
|
-
};
|
|
45
|
-
this.useParams = (opts) => {
|
|
46
|
-
return useParams({
|
|
47
|
-
select: opts?.select,
|
|
48
|
-
from: this.id
|
|
49
|
-
});
|
|
50
|
-
};
|
|
51
|
-
this.useLoaderDeps = (opts) => {
|
|
52
|
-
return useLoaderDeps({
|
|
53
|
-
...opts,
|
|
54
|
-
from: this.id,
|
|
55
|
-
strict: false
|
|
56
|
-
});
|
|
57
|
-
};
|
|
58
|
-
this.useLoaderData = (opts) => {
|
|
59
|
-
return useLoaderData({
|
|
60
|
-
...opts,
|
|
61
|
-
from: this.id,
|
|
62
|
-
strict: false
|
|
63
|
-
});
|
|
64
|
-
};
|
|
65
|
-
this.useNavigate = () => {
|
|
66
|
-
const router = useRouter();
|
|
67
|
-
return useNavigate({
|
|
68
|
-
from: router.routesById[this.id].fullPath
|
|
69
|
-
});
|
|
70
|
-
};
|
|
71
|
-
this.notFound = (opts) => {
|
|
72
|
-
return notFound({
|
|
73
|
-
routeId: this.id,
|
|
74
|
-
...opts
|
|
75
|
-
});
|
|
76
|
-
};
|
|
77
|
-
this.Link = ((props) => {
|
|
78
|
-
const router = useRouter();
|
|
79
|
-
const fullPath = router.routesById[this.id].fullPath;
|
|
80
|
-
return createComponent(Link, mergeProps({
|
|
81
|
-
from: fullPath
|
|
82
|
-
}, props));
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
class Route extends BaseRoute {
|
|
87
|
-
/**
|
|
88
|
-
* @deprecated Use the `createRoute` function instead.
|
|
89
|
-
*/
|
|
90
|
-
constructor(options) {
|
|
91
|
-
super(options);
|
|
92
|
-
this.useMatch = (opts) => {
|
|
93
|
-
return useMatch({
|
|
94
|
-
select: opts?.select,
|
|
95
|
-
from: this.id
|
|
96
|
-
});
|
|
97
|
-
};
|
|
98
|
-
this.useRouteContext = (opts) => {
|
|
99
|
-
return useRouteContext({
|
|
100
|
-
...opts,
|
|
101
|
-
from: this.id
|
|
102
|
-
});
|
|
103
|
-
};
|
|
104
|
-
this.useSearch = (opts) => {
|
|
105
|
-
return useSearch({
|
|
106
|
-
select: opts?.select,
|
|
107
|
-
from: this.id
|
|
108
|
-
});
|
|
109
|
-
};
|
|
110
|
-
this.useParams = (opts) => {
|
|
111
|
-
return useParams({
|
|
112
|
-
select: opts?.select,
|
|
113
|
-
from: this.id
|
|
114
|
-
});
|
|
115
|
-
};
|
|
116
|
-
this.useLoaderDeps = (opts) => {
|
|
117
|
-
return useLoaderDeps({
|
|
118
|
-
...opts,
|
|
119
|
-
from: this.id
|
|
120
|
-
});
|
|
121
|
-
};
|
|
122
|
-
this.useLoaderData = (opts) => {
|
|
123
|
-
return useLoaderData({
|
|
124
|
-
...opts,
|
|
125
|
-
from: this.id
|
|
126
|
-
});
|
|
127
|
-
};
|
|
128
|
-
this.useNavigate = () => {
|
|
129
|
-
return useNavigate({
|
|
130
|
-
from: this.fullPath
|
|
131
|
-
});
|
|
132
|
-
};
|
|
133
|
-
this.Link = ((props) => {
|
|
134
|
-
const _self$ = this;
|
|
135
|
-
return createComponent(Link, mergeProps({
|
|
136
|
-
get from() {
|
|
137
|
-
return _self$.fullPath;
|
|
138
|
-
}
|
|
139
|
-
}, props));
|
|
140
|
-
});
|
|
141
|
-
}
|
|
14
|
+
return new RouteApi({ id });
|
|
142
15
|
}
|
|
16
|
+
var RouteApi = class extends BaseRouteApi {
|
|
17
|
+
/**
|
|
18
|
+
* @deprecated Use the `getRouteApi` function instead.
|
|
19
|
+
*/
|
|
20
|
+
constructor({ id }) {
|
|
21
|
+
super({ id });
|
|
22
|
+
this.useMatch = (opts) => {
|
|
23
|
+
return useMatch({
|
|
24
|
+
select: opts?.select,
|
|
25
|
+
from: this.id
|
|
26
|
+
});
|
|
27
|
+
};
|
|
28
|
+
this.useRouteContext = (opts) => {
|
|
29
|
+
return useRouteContext({
|
|
30
|
+
...opts,
|
|
31
|
+
from: this.id
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
this.useSearch = (opts) => {
|
|
35
|
+
return useSearch({
|
|
36
|
+
select: opts?.select,
|
|
37
|
+
from: this.id
|
|
38
|
+
});
|
|
39
|
+
};
|
|
40
|
+
this.useParams = (opts) => {
|
|
41
|
+
return useParams({
|
|
42
|
+
select: opts?.select,
|
|
43
|
+
from: this.id
|
|
44
|
+
});
|
|
45
|
+
};
|
|
46
|
+
this.useLoaderDeps = (opts) => {
|
|
47
|
+
return useLoaderDeps({
|
|
48
|
+
...opts,
|
|
49
|
+
from: this.id,
|
|
50
|
+
strict: false
|
|
51
|
+
});
|
|
52
|
+
};
|
|
53
|
+
this.useLoaderData = (opts) => {
|
|
54
|
+
return useLoaderData({
|
|
55
|
+
...opts,
|
|
56
|
+
from: this.id,
|
|
57
|
+
strict: false
|
|
58
|
+
});
|
|
59
|
+
};
|
|
60
|
+
this.useNavigate = () => {
|
|
61
|
+
return useNavigate({ from: useRouter().routesById[this.id].fullPath });
|
|
62
|
+
};
|
|
63
|
+
this.notFound = (opts) => {
|
|
64
|
+
return notFound({
|
|
65
|
+
routeId: this.id,
|
|
66
|
+
...opts
|
|
67
|
+
});
|
|
68
|
+
};
|
|
69
|
+
this.Link = ((props) => {
|
|
70
|
+
const fullPath = useRouter().routesById[this.id].fullPath;
|
|
71
|
+
return createComponent(Link, mergeProps({ from: fullPath }, props));
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
var Route = class extends BaseRoute {
|
|
76
|
+
/**
|
|
77
|
+
* @deprecated Use the `createRoute` function instead.
|
|
78
|
+
*/
|
|
79
|
+
constructor(options) {
|
|
80
|
+
super(options);
|
|
81
|
+
this.useMatch = (opts) => {
|
|
82
|
+
return useMatch({
|
|
83
|
+
select: opts?.select,
|
|
84
|
+
from: this.id
|
|
85
|
+
});
|
|
86
|
+
};
|
|
87
|
+
this.useRouteContext = (opts) => {
|
|
88
|
+
return useRouteContext({
|
|
89
|
+
...opts,
|
|
90
|
+
from: this.id
|
|
91
|
+
});
|
|
92
|
+
};
|
|
93
|
+
this.useSearch = (opts) => {
|
|
94
|
+
return useSearch({
|
|
95
|
+
select: opts?.select,
|
|
96
|
+
from: this.id
|
|
97
|
+
});
|
|
98
|
+
};
|
|
99
|
+
this.useParams = (opts) => {
|
|
100
|
+
return useParams({
|
|
101
|
+
select: opts?.select,
|
|
102
|
+
from: this.id
|
|
103
|
+
});
|
|
104
|
+
};
|
|
105
|
+
this.useLoaderDeps = (opts) => {
|
|
106
|
+
return useLoaderDeps({
|
|
107
|
+
...opts,
|
|
108
|
+
from: this.id
|
|
109
|
+
});
|
|
110
|
+
};
|
|
111
|
+
this.useLoaderData = (opts) => {
|
|
112
|
+
return useLoaderData({
|
|
113
|
+
...opts,
|
|
114
|
+
from: this.id
|
|
115
|
+
});
|
|
116
|
+
};
|
|
117
|
+
this.useNavigate = () => {
|
|
118
|
+
return useNavigate({ from: this.fullPath });
|
|
119
|
+
};
|
|
120
|
+
this.Link = ((props) => {
|
|
121
|
+
const _self$ = this;
|
|
122
|
+
return createComponent(Link, mergeProps({ get from() {
|
|
123
|
+
return _self$.fullPath;
|
|
124
|
+
} }, props));
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
};
|
|
143
128
|
function createRoute(options) {
|
|
144
|
-
|
|
129
|
+
return new Route(options);
|
|
145
130
|
}
|
|
146
131
|
function createRootRouteWithContext() {
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
}
|
|
151
|
-
const rootRouteWithContext = createRootRouteWithContext;
|
|
152
|
-
class RootRoute extends BaseRootRoute {
|
|
153
|
-
/**
|
|
154
|
-
* @deprecated `RootRoute` is now an internal implementation detail. Use `createRootRoute()` instead.
|
|
155
|
-
*/
|
|
156
|
-
constructor(options) {
|
|
157
|
-
super(options);
|
|
158
|
-
this.useMatch = (opts) => {
|
|
159
|
-
return useMatch({
|
|
160
|
-
select: opts?.select,
|
|
161
|
-
from: this.id
|
|
162
|
-
});
|
|
163
|
-
};
|
|
164
|
-
this.useRouteContext = (opts) => {
|
|
165
|
-
return useRouteContext({
|
|
166
|
-
...opts,
|
|
167
|
-
from: this.id
|
|
168
|
-
});
|
|
169
|
-
};
|
|
170
|
-
this.useSearch = (opts) => {
|
|
171
|
-
return useSearch({
|
|
172
|
-
select: opts?.select,
|
|
173
|
-
from: this.id
|
|
174
|
-
});
|
|
175
|
-
};
|
|
176
|
-
this.useParams = (opts) => {
|
|
177
|
-
return useParams({
|
|
178
|
-
select: opts?.select,
|
|
179
|
-
from: this.id
|
|
180
|
-
});
|
|
181
|
-
};
|
|
182
|
-
this.useLoaderDeps = (opts) => {
|
|
183
|
-
return useLoaderDeps({
|
|
184
|
-
...opts,
|
|
185
|
-
from: this.id
|
|
186
|
-
});
|
|
187
|
-
};
|
|
188
|
-
this.useLoaderData = (opts) => {
|
|
189
|
-
return useLoaderData({
|
|
190
|
-
...opts,
|
|
191
|
-
from: this.id
|
|
192
|
-
});
|
|
193
|
-
};
|
|
194
|
-
this.useNavigate = () => {
|
|
195
|
-
return useNavigate({
|
|
196
|
-
from: this.fullPath
|
|
197
|
-
});
|
|
198
|
-
};
|
|
199
|
-
this.Link = ((props) => {
|
|
200
|
-
const _self$2 = this;
|
|
201
|
-
return createComponent(Link, mergeProps({
|
|
202
|
-
get from() {
|
|
203
|
-
return _self$2.fullPath;
|
|
204
|
-
}
|
|
205
|
-
}, props));
|
|
206
|
-
});
|
|
207
|
-
}
|
|
132
|
+
return (options) => {
|
|
133
|
+
return createRootRoute(options);
|
|
134
|
+
};
|
|
208
135
|
}
|
|
136
|
+
/**
|
|
137
|
+
* @deprecated Use the `createRootRouteWithContext` function instead.
|
|
138
|
+
*/
|
|
139
|
+
var rootRouteWithContext = createRootRouteWithContext;
|
|
140
|
+
var RootRoute = class extends BaseRootRoute {
|
|
141
|
+
/**
|
|
142
|
+
* @deprecated `RootRoute` is now an internal implementation detail. Use `createRootRoute()` instead.
|
|
143
|
+
*/
|
|
144
|
+
constructor(options) {
|
|
145
|
+
super(options);
|
|
146
|
+
this.useMatch = (opts) => {
|
|
147
|
+
return useMatch({
|
|
148
|
+
select: opts?.select,
|
|
149
|
+
from: this.id
|
|
150
|
+
});
|
|
151
|
+
};
|
|
152
|
+
this.useRouteContext = (opts) => {
|
|
153
|
+
return useRouteContext({
|
|
154
|
+
...opts,
|
|
155
|
+
from: this.id
|
|
156
|
+
});
|
|
157
|
+
};
|
|
158
|
+
this.useSearch = (opts) => {
|
|
159
|
+
return useSearch({
|
|
160
|
+
select: opts?.select,
|
|
161
|
+
from: this.id
|
|
162
|
+
});
|
|
163
|
+
};
|
|
164
|
+
this.useParams = (opts) => {
|
|
165
|
+
return useParams({
|
|
166
|
+
select: opts?.select,
|
|
167
|
+
from: this.id
|
|
168
|
+
});
|
|
169
|
+
};
|
|
170
|
+
this.useLoaderDeps = (opts) => {
|
|
171
|
+
return useLoaderDeps({
|
|
172
|
+
...opts,
|
|
173
|
+
from: this.id
|
|
174
|
+
});
|
|
175
|
+
};
|
|
176
|
+
this.useLoaderData = (opts) => {
|
|
177
|
+
return useLoaderData({
|
|
178
|
+
...opts,
|
|
179
|
+
from: this.id
|
|
180
|
+
});
|
|
181
|
+
};
|
|
182
|
+
this.useNavigate = () => {
|
|
183
|
+
return useNavigate({ from: this.fullPath });
|
|
184
|
+
};
|
|
185
|
+
this.Link = ((props) => {
|
|
186
|
+
const _self$2 = this;
|
|
187
|
+
return createComponent(Link, mergeProps({ get from() {
|
|
188
|
+
return _self$2.fullPath;
|
|
189
|
+
} }, props));
|
|
190
|
+
});
|
|
191
|
+
}
|
|
192
|
+
};
|
|
209
193
|
function createRouteMask(opts) {
|
|
210
|
-
|
|
211
|
-
}
|
|
212
|
-
class NotFoundRoute extends Route {
|
|
213
|
-
constructor(options) {
|
|
214
|
-
super({
|
|
215
|
-
...options,
|
|
216
|
-
id: "404"
|
|
217
|
-
});
|
|
218
|
-
}
|
|
194
|
+
return opts;
|
|
219
195
|
}
|
|
196
|
+
var NotFoundRoute = class extends Route {
|
|
197
|
+
constructor(options) {
|
|
198
|
+
super({
|
|
199
|
+
...options,
|
|
200
|
+
id: "404"
|
|
201
|
+
});
|
|
202
|
+
}
|
|
203
|
+
};
|
|
220
204
|
function createRootRoute(options) {
|
|
221
|
-
|
|
205
|
+
return new RootRoute(options);
|
|
222
206
|
}
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
RouteApi,
|
|
228
|
-
createRootRoute,
|
|
229
|
-
createRootRouteWithContext,
|
|
230
|
-
createRoute,
|
|
231
|
-
createRouteMask,
|
|
232
|
-
getRouteApi,
|
|
233
|
-
rootRouteWithContext
|
|
234
|
-
};
|
|
235
|
-
//# sourceMappingURL=route.js.map
|
|
207
|
+
//#endregion
|
|
208
|
+
export { NotFoundRoute, RootRoute, Route, RouteApi, createRootRoute, createRootRouteWithContext, createRoute, createRouteMask, getRouteApi, rootRouteWithContext };
|
|
209
|
+
|
|
210
|
+
//# sourceMappingURL=route.js.map
|
package/dist/esm/route.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.js","sources":["../../src/route.tsx"],"sourcesContent":["import {\n BaseRootRoute,\n BaseRoute,\n BaseRouteApi,\n notFound,\n} from '@tanstack/router-core'\nimport { Link } from './link'\nimport { useLoaderData } from './useLoaderData'\nimport { useLoaderDeps } from './useLoaderDeps'\nimport { useParams } from './useParams'\nimport { useSearch } from './useSearch'\nimport { useNavigate } from './useNavigate'\nimport { useMatch } from './useMatch'\nimport { useRouteContext } from './useRouteContext'\nimport { useRouter } from './useRouter'\nimport type {\n AnyContext,\n AnyRoute,\n AnyRouter,\n ConstrainLiteral,\n ErrorComponentProps,\n NotFoundError,\n NotFoundRouteProps,\n Register,\n RegisteredRouter,\n ResolveFullPath,\n ResolveId,\n ResolveParams,\n RootRoute as RootRouteCore,\n RootRouteId,\n RootRouteOptions,\n RouteConstraints,\n Route as RouteCore,\n RouteIds,\n RouteMask,\n RouteOptions,\n RouteTypesById,\n RouterCore,\n ToMaskOptions,\n UseNavigateResult,\n} from '@tanstack/router-core'\nimport type { UseLoaderDataRoute } from './useLoaderData'\nimport type { UseMatchRoute } from './useMatch'\nimport type { UseLoaderDepsRoute } from './useLoaderDeps'\nimport type { UseParamsRoute } from './useParams'\nimport type { UseSearchRoute } from './useSearch'\nimport type * as Solid from 'solid-js'\nimport type { UseRouteContextRoute } from './useRouteContext'\nimport type { LinkComponentRoute } from './link'\n\ndeclare module '@tanstack/router-core' {\n export interface UpdatableRouteOptionsExtensions {\n component?: RouteComponent\n errorComponent?: false | null | undefined | ErrorRouteComponent\n notFoundComponent?: NotFoundRouteComponent\n pendingComponent?: RouteComponent\n }\n\n export interface RootRouteOptionsExtensions {\n shellComponent?: ({\n children,\n }: {\n children: Solid.JSX.Element\n }) => Solid.JSX.Element\n }\n\n export interface RouteExtensions<\n in out TId extends string,\n in out TFullPath extends string,\n > {\n useMatch: UseMatchRoute<TId>\n useRouteContext: UseRouteContextRoute<TId>\n useSearch: UseSearchRoute<TId>\n useParams: UseParamsRoute<TId>\n useLoaderDeps: UseLoaderDepsRoute<TId>\n useLoaderData: UseLoaderDataRoute<TId>\n useNavigate: () => UseNavigateResult<TFullPath>\n Link: LinkComponentRoute<TFullPath>\n }\n}\n\nexport function getRouteApi<\n const TId,\n TRouter extends AnyRouter = RegisteredRouter,\n>(id: ConstrainLiteral<TId, RouteIds<TRouter['routeTree']>>) {\n return new RouteApi<TId, TRouter>({ id })\n}\n\nexport class RouteApi<\n TId,\n TRouter extends AnyRouter = RegisteredRouter,\n> extends BaseRouteApi<TId, TRouter> {\n /**\n * @deprecated Use the `getRouteApi` function instead.\n */\n constructor({ id }: { id: TId }) {\n super({ id })\n }\n\n useMatch: UseMatchRoute<TId> = (opts) => {\n return useMatch({\n select: opts?.select,\n from: this.id,\n } as any) as any\n }\n\n useRouteContext: UseRouteContextRoute<TId> = (opts) => {\n return useRouteContext({ ...(opts as any), from: this.id as any }) as any\n }\n\n useSearch: UseSearchRoute<TId> = (opts) => {\n return useSearch({\n select: opts?.select,\n from: this.id,\n } as any) as any\n }\n\n useParams: UseParamsRoute<TId> = (opts) => {\n return useParams({\n select: opts?.select,\n from: this.id,\n } as any) as any\n }\n\n useLoaderDeps: UseLoaderDepsRoute<TId> = (opts) => {\n return useLoaderDeps({ ...opts, from: this.id, strict: false } as any)\n }\n\n useLoaderData: UseLoaderDataRoute<TId> = (opts) => {\n return useLoaderData({ ...opts, from: this.id, strict: false } as any)\n }\n\n useNavigate = (): UseNavigateResult<\n RouteTypesById<TRouter, TId>['fullPath']\n > => {\n const router = useRouter()\n return useNavigate({ from: router.routesById[this.id as string].fullPath })\n }\n\n notFound = (opts?: NotFoundError) => {\n return notFound({ routeId: this.id as string, ...opts })\n }\n\n Link: LinkComponentRoute<RouteTypesById<TRouter, TId>['fullPath']> = ((\n props,\n ) => {\n const router = useRouter()\n const fullPath = router.routesById[this.id as string].fullPath\n return <Link from={fullPath as never} {...props} />\n }) as LinkComponentRoute<RouteTypesById<TRouter, TId>['fullPath']>\n}\n\nexport class Route<\n in out TRegister = unknown,\n in out TParentRoute extends RouteConstraints['TParentRoute'] = AnyRoute,\n in out TPath extends RouteConstraints['TPath'] = '/',\n in out TFullPath extends RouteConstraints['TFullPath'] = ResolveFullPath<\n TParentRoute,\n TPath\n >,\n in out TCustomId extends RouteConstraints['TCustomId'] = string,\n in out TId extends RouteConstraints['TId'] = ResolveId<\n TParentRoute,\n TCustomId,\n TPath\n >,\n in out TSearchValidator = undefined,\n in out TParams = ResolveParams<TPath>,\n in out TRouterContext = AnyContext,\n in out TRouteContextFn = AnyContext,\n in out TBeforeLoadFn = AnyContext,\n in out TLoaderDeps extends Record<string, any> = {},\n in out TLoaderFn = undefined,\n in out TChildren = unknown,\n in out TFileRouteTypes = unknown,\n in out TSSR = unknown,\n in out TMiddlewares = unknown,\n in out THandlers = undefined,\n>\n extends BaseRoute<\n TRegister,\n TParentRoute,\n TPath,\n TFullPath,\n TCustomId,\n TId,\n TSearchValidator,\n TParams,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n TChildren,\n TFileRouteTypes,\n TSSR,\n TMiddlewares,\n THandlers\n >\n implements\n RouteCore<\n TRegister,\n TParentRoute,\n TPath,\n TFullPath,\n TCustomId,\n TId,\n TSearchValidator,\n TParams,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n TChildren,\n TFileRouteTypes,\n TSSR,\n TMiddlewares,\n THandlers\n >\n{\n /**\n * @deprecated Use the `createRoute` function instead.\n */\n constructor(\n options?: RouteOptions<\n TRegister,\n TParentRoute,\n TId,\n TCustomId,\n TFullPath,\n TPath,\n TSearchValidator,\n TParams,\n TLoaderDeps,\n TLoaderFn,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TSSR,\n TMiddlewares,\n THandlers\n >,\n ) {\n super(options)\n }\n\n useMatch: UseMatchRoute<TId> = (opts) => {\n return useMatch({\n select: opts?.select,\n from: this.id,\n } as any) as any\n }\n\n useRouteContext: UseRouteContextRoute<TId> = (opts?) => {\n return useRouteContext({ ...(opts as any), from: this.id }) as any\n }\n\n useSearch: UseSearchRoute<TId> = (opts) => {\n return useSearch({\n select: opts?.select,\n from: this.id,\n } as any) as any\n }\n\n useParams: UseParamsRoute<TId> = (opts) => {\n return useParams({\n select: opts?.select,\n from: this.id,\n } as any) as any\n }\n\n useLoaderDeps: UseLoaderDepsRoute<TId> = (opts) => {\n return useLoaderDeps({ ...opts, from: this.id } as any)\n }\n\n useLoaderData: UseLoaderDataRoute<TId> = (opts) => {\n return useLoaderData({ ...opts, from: this.id } as any)\n }\n\n useNavigate = (): UseNavigateResult<TFullPath> => {\n return useNavigate({ from: this.fullPath })\n }\n\n Link: LinkComponentRoute<TFullPath> = ((props) => {\n return <Link from={this.fullPath} {...props} />\n }) as LinkComponentRoute<TFullPath>\n}\n\nexport function createRoute<\n TRegister = unknown,\n TParentRoute extends RouteConstraints['TParentRoute'] = AnyRoute,\n TPath extends RouteConstraints['TPath'] = '/',\n TFullPath extends RouteConstraints['TFullPath'] = ResolveFullPath<\n TParentRoute,\n TPath\n >,\n TCustomId extends RouteConstraints['TCustomId'] = string,\n TId extends RouteConstraints['TId'] = ResolveId<\n TParentRoute,\n TCustomId,\n TPath\n >,\n TSearchValidator = undefined,\n TParams = ResolveParams<TPath>,\n TRouteContextFn = AnyContext,\n TBeforeLoadFn = AnyContext,\n TLoaderDeps extends Record<string, any> = {},\n TLoaderFn = undefined,\n TChildren = unknown,\n TSSR = unknown,\n THandlers = undefined,\n>(\n options: RouteOptions<\n TRegister,\n TParentRoute,\n TId,\n TCustomId,\n TFullPath,\n TPath,\n TSearchValidator,\n TParams,\n TLoaderDeps,\n TLoaderFn,\n AnyContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TSSR,\n THandlers\n >,\n): Route<\n TRegister,\n TParentRoute,\n TPath,\n TFullPath,\n TCustomId,\n TId,\n TSearchValidator,\n TParams,\n AnyContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n TChildren,\n unknown,\n TSSR,\n THandlers\n> {\n return new Route<\n TRegister,\n TParentRoute,\n TPath,\n TFullPath,\n TCustomId,\n TId,\n TSearchValidator,\n TParams,\n AnyContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n TChildren,\n unknown,\n TSSR,\n THandlers\n >(options)\n}\n\nexport type AnyRootRoute = RootRoute<\n any,\n any,\n any,\n any,\n any,\n any,\n any,\n any,\n any,\n any\n>\n\nexport function createRootRouteWithContext<TRouterContext extends {}>() {\n return <\n TRegister = Register,\n TRouteContextFn = AnyContext,\n TBeforeLoadFn = AnyContext,\n TSearchValidator = undefined,\n TLoaderDeps extends Record<string, any> = {},\n TLoaderFn = undefined,\n TSSR = unknown,\n THandlers = undefined,\n >(\n options?: RootRouteOptions<\n TRegister,\n TSearchValidator,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n TSSR,\n THandlers\n >,\n ) => {\n return createRootRoute<\n TRegister,\n TSearchValidator,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n TSSR,\n THandlers\n >(options)\n }\n}\n\n/**\n * @deprecated Use the `createRootRouteWithContext` function instead.\n */\nexport const rootRouteWithContext = createRootRouteWithContext\n\nexport class RootRoute<\n in out TRegister = Register,\n in out TSearchValidator = undefined,\n in out TRouterContext = {},\n in out TRouteContextFn = AnyContext,\n in out TBeforeLoadFn = AnyContext,\n in out TLoaderDeps extends Record<string, any> = {},\n in out TLoaderFn = undefined,\n in out TChildren = unknown,\n in out TFileRouteTypes = unknown,\n in out TSSR = unknown,\n in out THandlers = undefined,\n>\n extends BaseRootRoute<\n TRegister,\n TSearchValidator,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n TChildren,\n TFileRouteTypes,\n TSSR,\n THandlers\n >\n implements\n RootRouteCore<\n TRegister,\n TSearchValidator,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n TChildren,\n TFileRouteTypes,\n TSSR,\n THandlers\n >\n{\n /**\n * @deprecated `RootRoute` is now an internal implementation detail. Use `createRootRoute()` instead.\n */\n constructor(\n options?: RootRouteOptions<\n TRegister,\n TSearchValidator,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n TSSR,\n THandlers\n >,\n ) {\n super(options)\n }\n\n useMatch: UseMatchRoute<RootRouteId> = (opts) => {\n return useMatch({\n select: opts?.select,\n from: this.id,\n } as any) as any\n }\n\n useRouteContext: UseRouteContextRoute<RootRouteId> = (opts) => {\n return useRouteContext({ ...(opts as any), from: this.id }) as any\n }\n\n useSearch: UseSearchRoute<RootRouteId> = (opts) => {\n return useSearch({\n select: opts?.select,\n from: this.id,\n } as any) as any\n }\n\n useParams: UseParamsRoute<RootRouteId> = (opts) => {\n return useParams({\n select: opts?.select,\n from: this.id,\n } as any) as any\n }\n\n useLoaderDeps: UseLoaderDepsRoute<RootRouteId> = (opts) => {\n return useLoaderDeps({ ...opts, from: this.id } as any)\n }\n\n useLoaderData: UseLoaderDataRoute<RootRouteId> = (opts) => {\n return useLoaderData({ ...opts, from: this.id } as any)\n }\n\n useNavigate = (): UseNavigateResult<'/'> => {\n return useNavigate({ from: this.fullPath })\n }\n\n Link: LinkComponentRoute<'/'> = ((props) => {\n return <Link from={this.fullPath} {...(props as any)} />\n }) as LinkComponentRoute<'/'>\n}\n\nexport function createRouteMask<\n TRouteTree extends AnyRoute,\n TFrom extends string,\n TTo extends string,\n>(\n opts: {\n routeTree: TRouteTree\n } & ToMaskOptions<RouterCore<TRouteTree, 'never', false>, TFrom, TTo>,\n): RouteMask<TRouteTree> {\n return opts as any\n}\n\nexport type SolidNode = Solid.JSX.Element\n\nexport interface DefaultRouteTypes<TProps> {\n component: (props: TProps) => any\n}\nexport interface RouteTypes<TProps> extends DefaultRouteTypes<TProps> {}\n\nexport type AsyncRouteComponent<TProps> = RouteTypes<TProps>['component'] & {\n preload?: () => Promise<void>\n}\n\nexport type RouteComponent = AsyncRouteComponent<{}>\n\nexport type ErrorRouteComponent = AsyncRouteComponent<ErrorComponentProps>\n\nexport type NotFoundRouteComponent = RouteTypes<NotFoundRouteProps>['component']\n\nexport class NotFoundRoute<\n TRegister,\n TParentRoute extends AnyRootRoute,\n TRouterContext = AnyContext,\n TRouteContextFn = AnyContext,\n TBeforeLoadFn = AnyContext,\n TSearchValidator = undefined,\n TLoaderDeps extends Record<string, any> = {},\n TLoaderFn = undefined,\n TChildren = unknown,\n TSSR = unknown,\n THandlers = undefined,\n> extends Route<\n TRegister,\n TParentRoute,\n '/404',\n '/404',\n '404',\n '404',\n TSearchValidator,\n {},\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n TChildren,\n TSSR,\n THandlers\n> {\n constructor(\n options: Omit<\n RouteOptions<\n TRegister,\n TParentRoute,\n string,\n string,\n string,\n string,\n TSearchValidator,\n {},\n TLoaderDeps,\n TLoaderFn,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TSSR,\n THandlers\n >,\n | 'caseSensitive'\n | 'parseParams'\n | 'stringifyParams'\n | 'path'\n | 'id'\n | 'params'\n >,\n ) {\n super({\n ...(options as any),\n id: '404',\n })\n }\n}\n\nexport function createRootRoute<\n TRegister = Register,\n TSearchValidator = undefined,\n TRouterContext = {},\n TRouteContextFn = AnyContext,\n TBeforeLoadFn = AnyContext,\n TLoaderDeps extends Record<string, any> = {},\n TLoaderFn = undefined,\n TSSR = unknown,\n THandlers = undefined,\n>(\n options?: RootRouteOptions<\n TRegister,\n TSearchValidator,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n TSSR,\n THandlers\n >,\n): RootRoute<\n TRegister,\n TSearchValidator,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n unknown,\n unknown,\n TSSR,\n THandlers\n> {\n return new RootRoute<\n TRegister,\n TSearchValidator,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n unknown,\n unknown,\n TSSR,\n THandlers\n >(options)\n}\n"],"names":["getRouteApi","id","RouteApi","BaseRouteApi","constructor","useMatch","opts","select","from","useRouteContext","useSearch","useParams","useLoaderDeps","strict","useLoaderData","useNavigate","router","useRouter","routesById","fullPath","notFound","routeId","Link","props","_$createComponent","_$mergeProps","Route","BaseRoute","options","_self$","createRoute","createRootRouteWithContext","createRootRoute","rootRouteWithContext","RootRoute","BaseRootRoute","_self$2","createRouteMask","NotFoundRoute"],"mappings":";;;;;;;;;;;AAiFO,SAASA,YAGdC,IAA2D;AAC3D,SAAO,IAAIC,SAAuB;AAAA,IAAED;AAAAA,EAAAA,CAAI;AAC1C;AAEO,MAAMC,iBAGHC,aAA2B;AAAA;AAAA;AAAA;AAAA,EAInCC,YAAY;AAAA,IAAEH;AAAAA,EAAAA,GAAmB;AAC/B,UAAM;AAAA,MAAEA;AAAAA,IAAAA,CAAI;AAGdI,SAAAA,WAAgCC,CAAAA,SAAS;AACvC,aAAOD,SAAS;AAAA,QACdE,QAAQD,MAAMC;AAAAA,QACdC,MAAM,KAAKP;AAAAA,MAAAA,CACL;AAAA,IACV;AAEAQ,SAAAA,kBAA8CH,CAAAA,SAAS;AACrD,aAAOG,gBAAgB;AAAA,QAAE,GAAIH;AAAAA,QAAcE,MAAM,KAAKP;AAAAA,MAAAA,CAAW;AAAA,IACnE;AAEAS,SAAAA,YAAkCJ,CAAAA,SAAS;AACzC,aAAOI,UAAU;AAAA,QACfH,QAAQD,MAAMC;AAAAA,QACdC,MAAM,KAAKP;AAAAA,MAAAA,CACL;AAAA,IACV;AAEAU,SAAAA,YAAkCL,CAAAA,SAAS;AACzC,aAAOK,UAAU;AAAA,QACfJ,QAAQD,MAAMC;AAAAA,QACdC,MAAM,KAAKP;AAAAA,MAAAA,CACL;AAAA,IACV;AAEAW,SAAAA,gBAA0CN,CAAAA,SAAS;AACjD,aAAOM,cAAc;AAAA,QAAE,GAAGN;AAAAA,QAAME,MAAM,KAAKP;AAAAA,QAAIY,QAAQ;AAAA,MAAA,CAAc;AAAA,IACvE;AAEAC,SAAAA,gBAA0CR,CAAAA,SAAS;AACjD,aAAOQ,cAAc;AAAA,QAAE,GAAGR;AAAAA,QAAME,MAAM,KAAKP;AAAAA,QAAIY,QAAQ;AAAA,MAAA,CAAc;AAAA,IACvE;AAEAE,SAAAA,cAAcA,MAET;AACH,YAAMC,SAASC,UAAAA;AACf,aAAOF,YAAY;AAAA,QAAEP,MAAMQ,OAAOE,WAAW,KAAKjB,EAAY,EAAEkB;AAAAA,MAAAA,CAAU;AAAA,IAC5E;AAEAC,SAAAA,WAAWA,CAACd,SAAyB;AACnC,aAAOc,SAAS;AAAA,QAAEC,SAAS,KAAKpB;AAAAA,QAAc,GAAGK;AAAAA,MAAAA,CAAM;AAAA,IACzD;AAEAgB,SAAAA,QACEC,CAAAA,UACG;AACH,YAAMP,SAASC,UAAAA;AACf,YAAME,WAAWH,OAAOE,WAAW,KAAKjB,EAAY,EAAEkB;AACtD,aAAAK,gBAAQF,MAAIG,WAAA;AAAA,QAACjB,MAAMW;AAAAA,MAAAA,GAAuBI,KAAK,CAAA;AAAA,IACjD;AAAA,EApDA;AAqDF;AAEO,MAAMG,cA2BHC,UAyCV;AAAA;AAAA;AAAA;AAAA,EAIEvB,YACEwB,SAkBA;AACA,UAAMA,OAAO;AAGfvB,SAAAA,WAAgCC,CAAAA,SAAS;AACvC,aAAOD,SAAS;AAAA,QACdE,QAAQD,MAAMC;AAAAA,QACdC,MAAM,KAAKP;AAAAA,MAAAA,CACL;AAAA,IACV;AAEAQ,SAAAA,kBAA6CA,CAACH,SAAU;AACtD,aAAOG,gBAAgB;AAAA,QAAE,GAAIH;AAAAA,QAAcE,MAAM,KAAKP;AAAAA,MAAAA,CAAI;AAAA,IAC5D;AAEAS,SAAAA,YAAkCJ,CAAAA,SAAS;AACzC,aAAOI,UAAU;AAAA,QACfH,QAAQD,MAAMC;AAAAA,QACdC,MAAM,KAAKP;AAAAA,MAAAA,CACL;AAAA,IACV;AAEAU,SAAAA,YAAkCL,CAAAA,SAAS;AACzC,aAAOK,UAAU;AAAA,QACfJ,QAAQD,MAAMC;AAAAA,QACdC,MAAM,KAAKP;AAAAA,MAAAA,CACL;AAAA,IACV;AAEAW,SAAAA,gBAA0CN,CAAAA,SAAS;AACjD,aAAOM,cAAc;AAAA,QAAE,GAAGN;AAAAA,QAAME,MAAM,KAAKP;AAAAA,MAAAA,CAAW;AAAA,IACxD;AAEAa,SAAAA,gBAA0CR,CAAAA,SAAS;AACjD,aAAOQ,cAAc;AAAA,QAAE,GAAGR;AAAAA,QAAME,MAAM,KAAKP;AAAAA,MAAAA,CAAW;AAAA,IACxD;AAEAc,SAAAA,cAAcA,MAAoC;AAChD,aAAOA,YAAY;AAAA,QAAEP,MAAM,KAAKW;AAAAA,MAAAA,CAAU;AAAA,IAC5C;AAEAG,SAAAA,QAAwCC,CAAAA,UAAU;AAAA,YAAAM,SAAA;AAChD,aAAAL,gBAAQF,MAAIG,WAAA;AAAA,QAAA,IAACjB,OAAI;AAAA,iBAAEqB,OAAKV;AAAAA,QAAQ;AAAA,MAAA,GAAMI,KAAK,CAAA;AAAA,IAC7C;AAAA,EAzCA;AA0CF;AAEO,SAASO,YAwBdF,SAmCA;AACA,SAAO,IAAIF,MAkBTE,OAAO;AACX;AAeO,SAASG,6BAAwD;AACtE,SAAO,CAULH,YAWG;AACH,WAAOI,gBAULJ,OAAO;AAAA,EACX;AACF;AAKO,MAAMK,uBAAuBF;AAE7B,MAAMG,kBAaHC,cA2BV;AAAA;AAAA;AAAA;AAAA,EAIE/B,YACEwB,SAWA;AACA,UAAMA,OAAO;AAGfvB,SAAAA,WAAwCC,CAAAA,SAAS;AAC/C,aAAOD,SAAS;AAAA,QACdE,QAAQD,MAAMC;AAAAA,QACdC,MAAM,KAAKP;AAAAA,MAAAA,CACL;AAAA,IACV;AAEAQ,SAAAA,kBAAsDH,CAAAA,SAAS;AAC7D,aAAOG,gBAAgB;AAAA,QAAE,GAAIH;AAAAA,QAAcE,MAAM,KAAKP;AAAAA,MAAAA,CAAI;AAAA,IAC5D;AAEAS,SAAAA,YAA0CJ,CAAAA,SAAS;AACjD,aAAOI,UAAU;AAAA,QACfH,QAAQD,MAAMC;AAAAA,QACdC,MAAM,KAAKP;AAAAA,MAAAA,CACL;AAAA,IACV;AAEAU,SAAAA,YAA0CL,CAAAA,SAAS;AACjD,aAAOK,UAAU;AAAA,QACfJ,QAAQD,MAAMC;AAAAA,QACdC,MAAM,KAAKP;AAAAA,MAAAA,CACL;AAAA,IACV;AAEAW,SAAAA,gBAAkDN,CAAAA,SAAS;AACzD,aAAOM,cAAc;AAAA,QAAE,GAAGN;AAAAA,QAAME,MAAM,KAAKP;AAAAA,MAAAA,CAAW;AAAA,IACxD;AAEAa,SAAAA,gBAAkDR,CAAAA,SAAS;AACzD,aAAOQ,cAAc;AAAA,QAAE,GAAGR;AAAAA,QAAME,MAAM,KAAKP;AAAAA,MAAAA,CAAW;AAAA,IACxD;AAEAc,SAAAA,cAAcA,MAA8B;AAC1C,aAAOA,YAAY;AAAA,QAAEP,MAAM,KAAKW;AAAAA,MAAAA,CAAU;AAAA,IAC5C;AAEAG,SAAAA,QAAkCC,CAAAA,UAAU;AAAA,YAAAa,UAAA;AAC1C,aAAAZ,gBAAQF,MAAIG,WAAA;AAAA,QAAA,IAACjB,OAAI;AAAA,iBAAE4B,QAAKjB;AAAAA,QAAQ;AAAA,MAAA,GAAOI,KAAY,CAAA;AAAA,IACrD;AAAA,EAzCA;AA0CF;AAEO,SAASc,gBAKd/B,MAGuB;AACvB,SAAOA;AACT;AAmBO,MAAMgC,sBAYHZ,MAiBR;AAAA,EACAtB,YACEwB,SAyBA;AACA,UAAM;AAAA,MACJ,GAAIA;AAAAA,MACJ3B,IAAI;AAAA,IAAA,CACL;AAAA,EACH;AACF;AAEO,SAAS+B,gBAWdJ,SAuBA;AACA,SAAO,IAAIM,UAYTN,OAAO;AACX;"}
|
|
1
|
+
{"version":3,"file":"route.js","names":["BaseRootRoute","BaseRoute","BaseRouteApi","notFound","Link","useLoaderData","useLoaderDeps","useParams","useSearch","useNavigate","useMatch","useRouteContext","useRouter","AnyContext","AnyRoute","AnyRouter","ConstrainLiteral","ErrorComponentProps","NotFoundError","NotFoundRouteProps","Register","RegisteredRouter","ResolveFullPath","ResolveId","ResolveParams","RootRoute","RootRouteCore","RootRouteId","RootRouteOptions","RouteConstraints","Route","RouteCore","RouteIds","RouteMask","RouteOptions","RouteTypesById","RouterCore","ToMaskOptions","UseNavigateResult","UseLoaderDataRoute","UseMatchRoute","UseLoaderDepsRoute","UseParamsRoute","UseSearchRoute","Solid","UseRouteContextRoute","LinkComponentRoute","UpdatableRouteOptionsExtensions","component","RouteComponent","errorComponent","ErrorRouteComponent","notFoundComponent","NotFoundRouteComponent","pendingComponent","RootRouteOptionsExtensions","shellComponent","children","JSX","Element","RouteExtensions","TId","TFullPath","getRouteApi","id","TRouter","RouteApi","constructor","opts","select","from","strict","router","routesById","fullPath","routeId","props","_$createComponent","_$mergeProps","TParentRoute","TPath","TCustomId","Record","TRegister","TSearchValidator","TParams","TRouterContext","TRouteContextFn","TBeforeLoadFn","TLoaderDeps","TLoaderFn","TChildren","TFileRouteTypes","TSSR","TMiddlewares","THandlers","options","_self$","createRoute","AnyRootRoute","createRootRouteWithContext","createRootRoute","rootRouteWithContext","_self$2","createRouteMask","routeTree","TRouteTree","TFrom","TTo","SolidNode","DefaultRouteTypes","TProps","RouteTypes","AsyncRouteComponent","preload","Promise","NotFoundRoute","Omit"],"sources":["../../src/route.tsx"],"sourcesContent":["import {\n BaseRootRoute,\n BaseRoute,\n BaseRouteApi,\n notFound,\n} from '@tanstack/router-core'\nimport { Link } from './link'\nimport { useLoaderData } from './useLoaderData'\nimport { useLoaderDeps } from './useLoaderDeps'\nimport { useParams } from './useParams'\nimport { useSearch } from './useSearch'\nimport { useNavigate } from './useNavigate'\nimport { useMatch } from './useMatch'\nimport { useRouteContext } from './useRouteContext'\nimport { useRouter } from './useRouter'\nimport type {\n AnyContext,\n AnyRoute,\n AnyRouter,\n ConstrainLiteral,\n ErrorComponentProps,\n NotFoundError,\n NotFoundRouteProps,\n Register,\n RegisteredRouter,\n ResolveFullPath,\n ResolveId,\n ResolveParams,\n RootRoute as RootRouteCore,\n RootRouteId,\n RootRouteOptions,\n RouteConstraints,\n Route as RouteCore,\n RouteIds,\n RouteMask,\n RouteOptions,\n RouteTypesById,\n RouterCore,\n ToMaskOptions,\n UseNavigateResult,\n} from '@tanstack/router-core'\nimport type { UseLoaderDataRoute } from './useLoaderData'\nimport type { UseMatchRoute } from './useMatch'\nimport type { UseLoaderDepsRoute } from './useLoaderDeps'\nimport type { UseParamsRoute } from './useParams'\nimport type { UseSearchRoute } from './useSearch'\nimport type * as Solid from 'solid-js'\nimport type { UseRouteContextRoute } from './useRouteContext'\nimport type { LinkComponentRoute } from './link'\n\ndeclare module '@tanstack/router-core' {\n export interface UpdatableRouteOptionsExtensions {\n component?: RouteComponent\n errorComponent?: false | null | undefined | ErrorRouteComponent\n notFoundComponent?: NotFoundRouteComponent\n pendingComponent?: RouteComponent\n }\n\n export interface RootRouteOptionsExtensions {\n shellComponent?: ({\n children,\n }: {\n children: Solid.JSX.Element\n }) => Solid.JSX.Element\n }\n\n export interface RouteExtensions<\n in out TId extends string,\n in out TFullPath extends string,\n > {\n useMatch: UseMatchRoute<TId>\n useRouteContext: UseRouteContextRoute<TId>\n useSearch: UseSearchRoute<TId>\n useParams: UseParamsRoute<TId>\n useLoaderDeps: UseLoaderDepsRoute<TId>\n useLoaderData: UseLoaderDataRoute<TId>\n useNavigate: () => UseNavigateResult<TFullPath>\n Link: LinkComponentRoute<TFullPath>\n }\n}\n\nexport function getRouteApi<\n const TId,\n TRouter extends AnyRouter = RegisteredRouter,\n>(id: ConstrainLiteral<TId, RouteIds<TRouter['routeTree']>>) {\n return new RouteApi<TId, TRouter>({ id })\n}\n\nexport class RouteApi<\n TId,\n TRouter extends AnyRouter = RegisteredRouter,\n> extends BaseRouteApi<TId, TRouter> {\n /**\n * @deprecated Use the `getRouteApi` function instead.\n */\n constructor({ id }: { id: TId }) {\n super({ id })\n }\n\n useMatch: UseMatchRoute<TId> = (opts) => {\n return useMatch({\n select: opts?.select,\n from: this.id,\n } as any) as any\n }\n\n useRouteContext: UseRouteContextRoute<TId> = (opts) => {\n return useRouteContext({ ...(opts as any), from: this.id as any }) as any\n }\n\n useSearch: UseSearchRoute<TId> = (opts) => {\n return useSearch({\n select: opts?.select,\n from: this.id,\n } as any) as any\n }\n\n useParams: UseParamsRoute<TId> = (opts) => {\n return useParams({\n select: opts?.select,\n from: this.id,\n } as any) as any\n }\n\n useLoaderDeps: UseLoaderDepsRoute<TId> = (opts) => {\n return useLoaderDeps({ ...opts, from: this.id, strict: false } as any)\n }\n\n useLoaderData: UseLoaderDataRoute<TId> = (opts) => {\n return useLoaderData({ ...opts, from: this.id, strict: false } as any)\n }\n\n useNavigate = (): UseNavigateResult<\n RouteTypesById<TRouter, TId>['fullPath']\n > => {\n const router = useRouter()\n return useNavigate({ from: router.routesById[this.id as string].fullPath })\n }\n\n notFound = (opts?: NotFoundError) => {\n return notFound({ routeId: this.id as string, ...opts })\n }\n\n Link: LinkComponentRoute<RouteTypesById<TRouter, TId>['fullPath']> = ((\n props,\n ) => {\n const router = useRouter()\n const fullPath = router.routesById[this.id as string].fullPath\n return <Link from={fullPath as never} {...props} />\n }) as LinkComponentRoute<RouteTypesById<TRouter, TId>['fullPath']>\n}\n\nexport class Route<\n in out TRegister = unknown,\n in out TParentRoute extends RouteConstraints['TParentRoute'] = AnyRoute,\n in out TPath extends RouteConstraints['TPath'] = '/',\n in out TFullPath extends RouteConstraints['TFullPath'] = ResolveFullPath<\n TParentRoute,\n TPath\n >,\n in out TCustomId extends RouteConstraints['TCustomId'] = string,\n in out TId extends RouteConstraints['TId'] = ResolveId<\n TParentRoute,\n TCustomId,\n TPath\n >,\n in out TSearchValidator = undefined,\n in out TParams = ResolveParams<TPath>,\n in out TRouterContext = AnyContext,\n in out TRouteContextFn = AnyContext,\n in out TBeforeLoadFn = AnyContext,\n in out TLoaderDeps extends Record<string, any> = {},\n in out TLoaderFn = undefined,\n in out TChildren = unknown,\n in out TFileRouteTypes = unknown,\n in out TSSR = unknown,\n in out TMiddlewares = unknown,\n in out THandlers = undefined,\n>\n extends BaseRoute<\n TRegister,\n TParentRoute,\n TPath,\n TFullPath,\n TCustomId,\n TId,\n TSearchValidator,\n TParams,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n TChildren,\n TFileRouteTypes,\n TSSR,\n TMiddlewares,\n THandlers\n >\n implements\n RouteCore<\n TRegister,\n TParentRoute,\n TPath,\n TFullPath,\n TCustomId,\n TId,\n TSearchValidator,\n TParams,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n TChildren,\n TFileRouteTypes,\n TSSR,\n TMiddlewares,\n THandlers\n >\n{\n /**\n * @deprecated Use the `createRoute` function instead.\n */\n constructor(\n options?: RouteOptions<\n TRegister,\n TParentRoute,\n TId,\n TCustomId,\n TFullPath,\n TPath,\n TSearchValidator,\n TParams,\n TLoaderDeps,\n TLoaderFn,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TSSR,\n TMiddlewares,\n THandlers\n >,\n ) {\n super(options)\n }\n\n useMatch: UseMatchRoute<TId> = (opts) => {\n return useMatch({\n select: opts?.select,\n from: this.id,\n } as any) as any\n }\n\n useRouteContext: UseRouteContextRoute<TId> = (opts?) => {\n return useRouteContext({ ...(opts as any), from: this.id }) as any\n }\n\n useSearch: UseSearchRoute<TId> = (opts) => {\n return useSearch({\n select: opts?.select,\n from: this.id,\n } as any) as any\n }\n\n useParams: UseParamsRoute<TId> = (opts) => {\n return useParams({\n select: opts?.select,\n from: this.id,\n } as any) as any\n }\n\n useLoaderDeps: UseLoaderDepsRoute<TId> = (opts) => {\n return useLoaderDeps({ ...opts, from: this.id } as any)\n }\n\n useLoaderData: UseLoaderDataRoute<TId> = (opts) => {\n return useLoaderData({ ...opts, from: this.id } as any)\n }\n\n useNavigate = (): UseNavigateResult<TFullPath> => {\n return useNavigate({ from: this.fullPath })\n }\n\n Link: LinkComponentRoute<TFullPath> = ((props) => {\n return <Link from={this.fullPath} {...props} />\n }) as LinkComponentRoute<TFullPath>\n}\n\nexport function createRoute<\n TRegister = unknown,\n TParentRoute extends RouteConstraints['TParentRoute'] = AnyRoute,\n TPath extends RouteConstraints['TPath'] = '/',\n TFullPath extends RouteConstraints['TFullPath'] = ResolveFullPath<\n TParentRoute,\n TPath\n >,\n TCustomId extends RouteConstraints['TCustomId'] = string,\n TId extends RouteConstraints['TId'] = ResolveId<\n TParentRoute,\n TCustomId,\n TPath\n >,\n TSearchValidator = undefined,\n TParams = ResolveParams<TPath>,\n TRouteContextFn = AnyContext,\n TBeforeLoadFn = AnyContext,\n TLoaderDeps extends Record<string, any> = {},\n TLoaderFn = undefined,\n TChildren = unknown,\n TSSR = unknown,\n THandlers = undefined,\n>(\n options: RouteOptions<\n TRegister,\n TParentRoute,\n TId,\n TCustomId,\n TFullPath,\n TPath,\n TSearchValidator,\n TParams,\n TLoaderDeps,\n TLoaderFn,\n AnyContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TSSR,\n THandlers\n >,\n): Route<\n TRegister,\n TParentRoute,\n TPath,\n TFullPath,\n TCustomId,\n TId,\n TSearchValidator,\n TParams,\n AnyContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n TChildren,\n unknown,\n TSSR,\n THandlers\n> {\n return new Route<\n TRegister,\n TParentRoute,\n TPath,\n TFullPath,\n TCustomId,\n TId,\n TSearchValidator,\n TParams,\n AnyContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n TChildren,\n unknown,\n TSSR,\n THandlers\n >(options)\n}\n\nexport type AnyRootRoute = RootRoute<\n any,\n any,\n any,\n any,\n any,\n any,\n any,\n any,\n any,\n any\n>\n\nexport function createRootRouteWithContext<TRouterContext extends {}>() {\n return <\n TRegister = Register,\n TRouteContextFn = AnyContext,\n TBeforeLoadFn = AnyContext,\n TSearchValidator = undefined,\n TLoaderDeps extends Record<string, any> = {},\n TLoaderFn = undefined,\n TSSR = unknown,\n THandlers = undefined,\n >(\n options?: RootRouteOptions<\n TRegister,\n TSearchValidator,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n TSSR,\n THandlers\n >,\n ) => {\n return createRootRoute<\n TRegister,\n TSearchValidator,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n TSSR,\n THandlers\n >(options)\n }\n}\n\n/**\n * @deprecated Use the `createRootRouteWithContext` function instead.\n */\nexport const rootRouteWithContext = createRootRouteWithContext\n\nexport class RootRoute<\n in out TRegister = Register,\n in out TSearchValidator = undefined,\n in out TRouterContext = {},\n in out TRouteContextFn = AnyContext,\n in out TBeforeLoadFn = AnyContext,\n in out TLoaderDeps extends Record<string, any> = {},\n in out TLoaderFn = undefined,\n in out TChildren = unknown,\n in out TFileRouteTypes = unknown,\n in out TSSR = unknown,\n in out THandlers = undefined,\n>\n extends BaseRootRoute<\n TRegister,\n TSearchValidator,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n TChildren,\n TFileRouteTypes,\n TSSR,\n THandlers\n >\n implements\n RootRouteCore<\n TRegister,\n TSearchValidator,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n TChildren,\n TFileRouteTypes,\n TSSR,\n THandlers\n >\n{\n /**\n * @deprecated `RootRoute` is now an internal implementation detail. Use `createRootRoute()` instead.\n */\n constructor(\n options?: RootRouteOptions<\n TRegister,\n TSearchValidator,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n TSSR,\n THandlers\n >,\n ) {\n super(options)\n }\n\n useMatch: UseMatchRoute<RootRouteId> = (opts) => {\n return useMatch({\n select: opts?.select,\n from: this.id,\n } as any) as any\n }\n\n useRouteContext: UseRouteContextRoute<RootRouteId> = (opts) => {\n return useRouteContext({ ...(opts as any), from: this.id }) as any\n }\n\n useSearch: UseSearchRoute<RootRouteId> = (opts) => {\n return useSearch({\n select: opts?.select,\n from: this.id,\n } as any) as any\n }\n\n useParams: UseParamsRoute<RootRouteId> = (opts) => {\n return useParams({\n select: opts?.select,\n from: this.id,\n } as any) as any\n }\n\n useLoaderDeps: UseLoaderDepsRoute<RootRouteId> = (opts) => {\n return useLoaderDeps({ ...opts, from: this.id } as any)\n }\n\n useLoaderData: UseLoaderDataRoute<RootRouteId> = (opts) => {\n return useLoaderData({ ...opts, from: this.id } as any)\n }\n\n useNavigate = (): UseNavigateResult<'/'> => {\n return useNavigate({ from: this.fullPath })\n }\n\n Link: LinkComponentRoute<'/'> = ((props) => {\n return <Link from={this.fullPath} {...(props as any)} />\n }) as LinkComponentRoute<'/'>\n}\n\nexport function createRouteMask<\n TRouteTree extends AnyRoute,\n TFrom extends string,\n TTo extends string,\n>(\n opts: {\n routeTree: TRouteTree\n } & ToMaskOptions<RouterCore<TRouteTree, 'never', false>, TFrom, TTo>,\n): RouteMask<TRouteTree> {\n return opts as any\n}\n\nexport type SolidNode = Solid.JSX.Element\n\nexport interface DefaultRouteTypes<TProps> {\n component: (props: TProps) => any\n}\nexport interface RouteTypes<TProps> extends DefaultRouteTypes<TProps> {}\n\nexport type AsyncRouteComponent<TProps> = RouteTypes<TProps>['component'] & {\n preload?: () => Promise<void>\n}\n\nexport type RouteComponent = AsyncRouteComponent<{}>\n\nexport type ErrorRouteComponent = AsyncRouteComponent<ErrorComponentProps>\n\nexport type NotFoundRouteComponent = RouteTypes<NotFoundRouteProps>['component']\n\nexport class NotFoundRoute<\n TRegister,\n TParentRoute extends AnyRootRoute,\n TRouterContext = AnyContext,\n TRouteContextFn = AnyContext,\n TBeforeLoadFn = AnyContext,\n TSearchValidator = undefined,\n TLoaderDeps extends Record<string, any> = {},\n TLoaderFn = undefined,\n TChildren = unknown,\n TSSR = unknown,\n THandlers = undefined,\n> extends Route<\n TRegister,\n TParentRoute,\n '/404',\n '/404',\n '404',\n '404',\n TSearchValidator,\n {},\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n TChildren,\n TSSR,\n THandlers\n> {\n constructor(\n options: Omit<\n RouteOptions<\n TRegister,\n TParentRoute,\n string,\n string,\n string,\n string,\n TSearchValidator,\n {},\n TLoaderDeps,\n TLoaderFn,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TSSR,\n THandlers\n >,\n | 'caseSensitive'\n | 'parseParams'\n | 'stringifyParams'\n | 'path'\n | 'id'\n | 'params'\n >,\n ) {\n super({\n ...(options as any),\n id: '404',\n })\n }\n}\n\nexport function createRootRoute<\n TRegister = Register,\n TSearchValidator = undefined,\n TRouterContext = {},\n TRouteContextFn = AnyContext,\n TBeforeLoadFn = AnyContext,\n TLoaderDeps extends Record<string, any> = {},\n TLoaderFn = undefined,\n TSSR = unknown,\n THandlers = undefined,\n>(\n options?: RootRouteOptions<\n TRegister,\n TSearchValidator,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n TSSR,\n THandlers\n >,\n): RootRoute<\n TRegister,\n TSearchValidator,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n unknown,\n unknown,\n TSSR,\n THandlers\n> {\n return new RootRoute<\n TRegister,\n TSearchValidator,\n TRouterContext,\n TRouteContextFn,\n TBeforeLoadFn,\n TLoaderDeps,\n TLoaderFn,\n unknown,\n unknown,\n TSSR,\n THandlers\n >(options)\n}\n"],"mappings":"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"}
|
package/dist/esm/router.js
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import { RouterCore } from "@tanstack/router-core";
|
|
2
1
|
import { createFileRoute, createLazyFileRoute } from "./fileRoute.js";
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
import { RouterCore } from "@tanstack/router-core";
|
|
3
|
+
//#region src/router.ts
|
|
4
|
+
var createRouter = (options) => {
|
|
5
|
+
return new Router(options);
|
|
6
|
+
};
|
|
7
|
+
var Router = class extends RouterCore {
|
|
8
|
+
constructor(options) {
|
|
9
|
+
super(options);
|
|
10
|
+
}
|
|
5
11
|
};
|
|
6
|
-
class Router extends RouterCore {
|
|
7
|
-
constructor(options) {
|
|
8
|
-
super(options);
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
12
|
if (typeof globalThis !== "undefined") {
|
|
12
|
-
|
|
13
|
-
|
|
13
|
+
globalThis.createFileRoute = createFileRoute;
|
|
14
|
+
globalThis.createLazyFileRoute = createLazyFileRoute;
|
|
14
15
|
} else if (typeof window !== "undefined") {
|
|
15
|
-
|
|
16
|
-
|
|
16
|
+
window.createFileRoute = createFileRoute;
|
|
17
|
+
window.createLazyFileRoute = createLazyFileRoute;
|
|
17
18
|
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
//# sourceMappingURL=router.js.map
|
|
19
|
+
//#endregion
|
|
20
|
+
export { Router, createRouter };
|
|
21
|
+
|
|
22
|
+
//# sourceMappingURL=router.js.map
|
package/dist/esm/router.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.js","sources":["../../src/router.ts"],"sourcesContent":["import { RouterCore } from '@tanstack/router-core'\nimport { createFileRoute, createLazyFileRoute } from './fileRoute'\nimport type { RouterHistory } from '@tanstack/history'\nimport type {\n AnyRoute,\n CreateRouterFn,\n RouterConstructorOptions,\n TrailingSlashOption,\n} from '@tanstack/router-core'\nimport type {\n ErrorRouteComponent,\n NotFoundRouteComponent,\n RouteComponent,\n} from './route'\nimport type { JSX } from 'solid-js'\n\ndeclare module '@tanstack/router-core' {\n export interface RouterOptionsExtensions {\n /**\n * The default `component` a route should use if no component is provided.\n *\n * @default Outlet\n * @link [API Docs](https://tanstack.com/router/latest/docs/framework/solid/api/router/RouterOptionsType#defaultcomponent-property)\n */\n defaultComponent?: RouteComponent\n /**\n * The default `errorComponent` a route should use if no error component is provided.\n *\n * @default ErrorComponent\n * @link [API Docs](https://tanstack.com/router/latest/docs/framework/solid/api/router/RouterOptionsType#defaulterrorcomponent-property)\n * @link [Guide](https://tanstack.com/router/latest/docs/framework/solid/guide/data-loading#handling-errors-with-routeoptionserrorcomponent)\n */\n defaultErrorComponent?: ErrorRouteComponent\n /**\n * The default `pendingComponent` a route should use if no pending component is provided.\n *\n * @link [API Docs](https://tanstack.com/router/latest/docs/framework/solid/api/router/RouterOptionsType#defaultpendingcomponent-property)\n * @link [Guide](https://tanstack.com/router/latest/docs/framework/solid/guide/data-loading#showing-a-pending-component)\n */\n defaultPendingComponent?: RouteComponent\n /**\n * The default `notFoundComponent` a route should use if no notFound component is provided.\n *\n * @default NotFound\n * @link [API Docs](https://tanstack.com/router/latest/docs/framework/solid/api/router/RouterOptionsType#defaultnotfoundcomponent-property)\n * @link [Guide](https://tanstack.com/router/latest/docs/framework/solid/guide/not-found-errors#default-router-wide-not-found-handling)\n */\n defaultNotFoundComponent?: NotFoundRouteComponent\n /**\n * A component that will be used to wrap the entire router.\n *\n * This is useful for providing a context to the entire router.\n *\n * @link [API Docs](https://tanstack.com/router/latest/docs/framework/solid/api/router/RouterOptionsType#wrap-property)\n */\n Wrap?: (props: { children: any }) => JSX.Element\n /**\n * A component that will be used to wrap the inner contents of the router.\n *\n * This is useful for providing a context to the inner contents of the router where you also need access to the router context and hooks.\n *\n * @link [API Docs](https://tanstack.com/router/latest/docs/framework/solid/api/router/RouterOptionsType#innerwrap-property)\n */\n InnerWrap?: (props: { children: any }) => JSX.Element\n\n /**\n * The default `onCatch` handler for errors caught by the Router ErrorBoundary\n *\n * @link [API Docs](https://tanstack.com/router/latest/docs/framework/react/api/router/RouterOptionsType#defaultoncatch-property)\n * @link [Guide](https://tanstack.com/router/latest/docs/framework/react/guide/data-loading#handling-errors-with-routeoptionsoncatch)\n */\n defaultOnCatch?: (error: Error) => void\n }\n}\n\nexport const createRouter: CreateRouterFn = (options) => {\n return new Router(options)\n}\n\nexport class Router<\n in out TRouteTree extends AnyRoute,\n in out TTrailingSlashOption extends TrailingSlashOption = 'never',\n in out TDefaultStructuralSharingOption extends boolean = false,\n in out TRouterHistory extends RouterHistory = RouterHistory,\n in out TDehydrated extends Record<string, any> = Record<string, any>,\n> extends RouterCore<\n TRouteTree,\n TTrailingSlashOption,\n TDefaultStructuralSharingOption,\n TRouterHistory,\n TDehydrated\n> {\n constructor(\n options: RouterConstructorOptions<\n TRouteTree,\n TTrailingSlashOption,\n TDefaultStructuralSharingOption,\n TRouterHistory,\n TDehydrated\n >,\n ) {\n super(options)\n }\n}\n\nif (typeof globalThis !== 'undefined') {\n ;(globalThis as any).createFileRoute = createFileRoute\n ;(globalThis as any).createLazyFileRoute = createLazyFileRoute\n} else if (typeof window !== 'undefined') {\n ;(window as any).createFileRoute = createFileRoute\n ;(window as any).createLazyFileRoute = createLazyFileRoute\n}\n"],"
|
|
1
|
+
{"version":3,"file":"router.js","names":[],"sources":["../../src/router.ts"],"sourcesContent":["import { RouterCore } from '@tanstack/router-core'\nimport { createFileRoute, createLazyFileRoute } from './fileRoute'\nimport type { RouterHistory } from '@tanstack/history'\nimport type {\n AnyRoute,\n CreateRouterFn,\n RouterConstructorOptions,\n TrailingSlashOption,\n} from '@tanstack/router-core'\nimport type {\n ErrorRouteComponent,\n NotFoundRouteComponent,\n RouteComponent,\n} from './route'\nimport type { JSX } from 'solid-js'\n\ndeclare module '@tanstack/router-core' {\n export interface RouterOptionsExtensions {\n /**\n * The default `component` a route should use if no component is provided.\n *\n * @default Outlet\n * @link [API Docs](https://tanstack.com/router/latest/docs/framework/solid/api/router/RouterOptionsType#defaultcomponent-property)\n */\n defaultComponent?: RouteComponent\n /**\n * The default `errorComponent` a route should use if no error component is provided.\n *\n * @default ErrorComponent\n * @link [API Docs](https://tanstack.com/router/latest/docs/framework/solid/api/router/RouterOptionsType#defaulterrorcomponent-property)\n * @link [Guide](https://tanstack.com/router/latest/docs/framework/solid/guide/data-loading#handling-errors-with-routeoptionserrorcomponent)\n */\n defaultErrorComponent?: ErrorRouteComponent\n /**\n * The default `pendingComponent` a route should use if no pending component is provided.\n *\n * @link [API Docs](https://tanstack.com/router/latest/docs/framework/solid/api/router/RouterOptionsType#defaultpendingcomponent-property)\n * @link [Guide](https://tanstack.com/router/latest/docs/framework/solid/guide/data-loading#showing-a-pending-component)\n */\n defaultPendingComponent?: RouteComponent\n /**\n * The default `notFoundComponent` a route should use if no notFound component is provided.\n *\n * @default NotFound\n * @link [API Docs](https://tanstack.com/router/latest/docs/framework/solid/api/router/RouterOptionsType#defaultnotfoundcomponent-property)\n * @link [Guide](https://tanstack.com/router/latest/docs/framework/solid/guide/not-found-errors#default-router-wide-not-found-handling)\n */\n defaultNotFoundComponent?: NotFoundRouteComponent\n /**\n * A component that will be used to wrap the entire router.\n *\n * This is useful for providing a context to the entire router.\n *\n * @link [API Docs](https://tanstack.com/router/latest/docs/framework/solid/api/router/RouterOptionsType#wrap-property)\n */\n Wrap?: (props: { children: any }) => JSX.Element\n /**\n * A component that will be used to wrap the inner contents of the router.\n *\n * This is useful for providing a context to the inner contents of the router where you also need access to the router context and hooks.\n *\n * @link [API Docs](https://tanstack.com/router/latest/docs/framework/solid/api/router/RouterOptionsType#innerwrap-property)\n */\n InnerWrap?: (props: { children: any }) => JSX.Element\n\n /**\n * The default `onCatch` handler for errors caught by the Router ErrorBoundary\n *\n * @link [API Docs](https://tanstack.com/router/latest/docs/framework/react/api/router/RouterOptionsType#defaultoncatch-property)\n * @link [Guide](https://tanstack.com/router/latest/docs/framework/react/guide/data-loading#handling-errors-with-routeoptionsoncatch)\n */\n defaultOnCatch?: (error: Error) => void\n }\n}\n\nexport const createRouter: CreateRouterFn = (options) => {\n return new Router(options)\n}\n\nexport class Router<\n in out TRouteTree extends AnyRoute,\n in out TTrailingSlashOption extends TrailingSlashOption = 'never',\n in out TDefaultStructuralSharingOption extends boolean = false,\n in out TRouterHistory extends RouterHistory = RouterHistory,\n in out TDehydrated extends Record<string, any> = Record<string, any>,\n> extends RouterCore<\n TRouteTree,\n TTrailingSlashOption,\n TDefaultStructuralSharingOption,\n TRouterHistory,\n TDehydrated\n> {\n constructor(\n options: RouterConstructorOptions<\n TRouteTree,\n TTrailingSlashOption,\n TDefaultStructuralSharingOption,\n TRouterHistory,\n TDehydrated\n >,\n ) {\n super(options)\n }\n}\n\nif (typeof globalThis !== 'undefined') {\n ;(globalThis as any).createFileRoute = createFileRoute\n ;(globalThis as any).createLazyFileRoute = createLazyFileRoute\n} else if (typeof window !== 'undefined') {\n ;(window as any).createFileRoute = createFileRoute\n ;(window as any).createLazyFileRoute = createLazyFileRoute\n}\n"],"mappings":";;;AA2EA,IAAa,gBAAgC,YAAY;AACvD,QAAO,IAAI,OAAO,QAAQ;;AAG5B,IAAa,SAAb,cAMU,WAMR;CACA,YACE,SAOA;AACA,QAAM,QAAQ;;;AAIlB,IAAI,OAAO,eAAe,aAAa;AACnC,YAAmB,kBAAkB;AACrC,YAAmB,sBAAsB;WAClC,OAAO,WAAW,aAAa;AACtC,QAAe,kBAAkB;AACjC,QAAe,sBAAsB"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as Solid from "solid-js";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
};
|
|
6
|
-
|
|
2
|
+
//#region src/routerContext.tsx
|
|
3
|
+
var routerContext = Solid.createContext(null);
|
|
4
|
+
//#endregion
|
|
5
|
+
export { routerContext };
|
|
6
|
+
|
|
7
|
+
//# sourceMappingURL=routerContext.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routerContext.js","sources":["../../src/routerContext.tsx"],"sourcesContent":["import * as Solid from 'solid-js'\nimport type { AnyRouter } from '@tanstack/router-core'\n\nexport const routerContext = Solid.createContext<AnyRouter>(\n null as unknown as AnyRouter,\n)\n"],"
|
|
1
|
+
{"version":3,"file":"routerContext.js","names":["Solid","AnyRouter","routerContext","createContext"],"sources":["../../src/routerContext.tsx"],"sourcesContent":["import * as Solid from 'solid-js'\nimport type { AnyRouter } from '@tanstack/router-core'\n\nexport const routerContext = Solid.createContext<AnyRouter>(\n null as unknown as AnyRouter,\n)\n"],"mappings":";;AAGA,IAAaE,gBAAgBF,MAAMG,cACjC,KACD"}
|