@tanstack/router-core 1.121.0-alpha.27 → 1.121.0-alpha.28
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/Matches.cjs.map +1 -1
- package/dist/cjs/Matches.d.cts +31 -1
- package/dist/cjs/RouterProvider.d.cts +2 -1
- package/dist/cjs/defer.cjs +1 -1
- package/dist/cjs/defer.cjs.map +1 -1
- package/dist/cjs/global.d.cts +7 -0
- package/dist/cjs/index.cjs +1 -2
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs/index.d.cts +6 -6
- package/dist/cjs/link.cjs.map +1 -1
- package/dist/cjs/link.d.cts +12 -0
- package/dist/cjs/lru-cache.cjs +62 -0
- package/dist/cjs/lru-cache.cjs.map +1 -0
- package/dist/cjs/lru-cache.d.cts +5 -0
- package/dist/cjs/not-found.cjs +1 -1
- package/dist/cjs/not-found.cjs.map +1 -1
- package/dist/cjs/path.cjs +316 -148
- package/dist/cjs/path.cjs.map +1 -1
- package/dist/cjs/path.d.cts +18 -24
- package/dist/cjs/qss.cjs.map +1 -1
- package/dist/cjs/redirect.cjs +3 -0
- package/dist/cjs/redirect.cjs.map +1 -1
- package/dist/cjs/route.cjs +6 -12
- package/dist/cjs/route.cjs.map +1 -1
- package/dist/cjs/route.d.cts +29 -9
- package/dist/cjs/router.cjs +453 -272
- package/dist/cjs/router.cjs.map +1 -1
- package/dist/cjs/router.d.cts +55 -85
- package/dist/cjs/scroll-restoration.cjs +20 -13
- package/dist/cjs/scroll-restoration.cjs.map +1 -1
- package/dist/cjs/scroll-restoration.d.cts +9 -1
- package/dist/cjs/searchMiddleware.cjs.map +1 -1
- package/dist/cjs/searchParams.cjs.map +1 -1
- package/dist/cjs/ssr/client.cjs +10 -0
- package/dist/cjs/ssr/client.cjs.map +1 -0
- package/dist/cjs/ssr/client.d.cts +5 -0
- package/dist/cjs/ssr/createRequestHandler.cjs +50 -0
- package/dist/cjs/ssr/createRequestHandler.cjs.map +1 -0
- package/dist/cjs/ssr/createRequestHandler.d.cts +9 -0
- package/dist/cjs/ssr/handlerCallback.cjs +7 -0
- package/dist/cjs/ssr/handlerCallback.cjs.map +1 -0
- package/dist/cjs/ssr/handlerCallback.d.cts +9 -0
- package/dist/cjs/ssr/headers.cjs +39 -0
- package/dist/cjs/ssr/headers.cjs.map +1 -0
- package/dist/cjs/ssr/headers.d.cts +5 -0
- package/dist/cjs/ssr/json.cjs +14 -0
- package/dist/cjs/ssr/json.cjs.map +1 -0
- package/dist/cjs/ssr/json.d.cts +4 -0
- package/dist/cjs/ssr/seroval-plugins.cjs +34 -0
- package/dist/cjs/ssr/seroval-plugins.cjs.map +1 -0
- package/dist/cjs/ssr/seroval-plugins.d.cts +10 -0
- package/dist/cjs/ssr/server.cjs +13 -0
- package/dist/cjs/ssr/server.cjs.map +1 -0
- package/dist/cjs/ssr/server.d.cts +6 -0
- package/dist/cjs/ssr/ssr-client.cjs +159 -0
- package/dist/cjs/ssr/ssr-client.cjs.map +1 -0
- package/dist/cjs/ssr/ssr-client.d.cts +29 -0
- package/dist/cjs/ssr/ssr-server.cjs +107 -0
- package/dist/cjs/ssr/ssr-server.cjs.map +1 -0
- package/dist/cjs/ssr/ssr-server.d.cts +18 -0
- package/dist/cjs/ssr/transformStreamWithRouter.cjs +183 -0
- package/dist/cjs/ssr/transformStreamWithRouter.cjs.map +1 -0
- package/dist/cjs/ssr/transformStreamWithRouter.d.cts +6 -0
- package/dist/cjs/ssr/tsrScript.cjs +4 -0
- package/dist/cjs/ssr/tsrScript.cjs.map +1 -0
- package/dist/cjs/ssr/tsrScript.d.cts +0 -0
- package/dist/cjs/utils.cjs +7 -25
- package/dist/cjs/utils.cjs.map +1 -1
- package/dist/cjs/utils.d.cts +1 -6
- package/dist/esm/Matches.d.ts +31 -1
- package/dist/esm/Matches.js.map +1 -1
- package/dist/esm/RouterProvider.d.ts +2 -1
- package/dist/esm/defer.js +1 -1
- package/dist/esm/defer.js.map +1 -1
- package/dist/esm/global.d.ts +7 -0
- package/dist/esm/index.d.ts +6 -6
- package/dist/esm/index.js +2 -3
- package/dist/esm/link.d.ts +12 -0
- package/dist/esm/link.js.map +1 -1
- package/dist/esm/lru-cache.d.ts +5 -0
- package/dist/esm/lru-cache.js +62 -0
- package/dist/esm/lru-cache.js.map +1 -0
- package/dist/esm/not-found.js +1 -1
- package/dist/esm/not-found.js.map +1 -1
- package/dist/esm/path.d.ts +18 -24
- package/dist/esm/path.js +316 -148
- package/dist/esm/path.js.map +1 -1
- package/dist/esm/qss.js.map +1 -1
- package/dist/esm/redirect.js +3 -0
- package/dist/esm/redirect.js.map +1 -1
- package/dist/esm/route.d.ts +29 -9
- package/dist/esm/route.js +6 -12
- package/dist/esm/route.js.map +1 -1
- package/dist/esm/router.d.ts +55 -85
- package/dist/esm/router.js +462 -281
- package/dist/esm/router.js.map +1 -1
- package/dist/esm/scroll-restoration.d.ts +9 -1
- package/dist/esm/scroll-restoration.js +20 -13
- package/dist/esm/scroll-restoration.js.map +1 -1
- package/dist/esm/searchMiddleware.js.map +1 -1
- package/dist/esm/searchParams.js.map +1 -1
- package/dist/esm/ssr/client.d.ts +5 -0
- package/dist/esm/ssr/client.js +10 -0
- package/dist/esm/ssr/client.js.map +1 -0
- package/dist/esm/ssr/createRequestHandler.d.ts +9 -0
- package/dist/esm/ssr/createRequestHandler.js +50 -0
- package/dist/esm/ssr/createRequestHandler.js.map +1 -0
- package/dist/esm/ssr/handlerCallback.d.ts +9 -0
- package/dist/esm/ssr/handlerCallback.js +7 -0
- package/dist/esm/ssr/handlerCallback.js.map +1 -0
- package/dist/esm/ssr/headers.d.ts +5 -0
- package/dist/esm/ssr/headers.js +39 -0
- package/dist/esm/ssr/headers.js.map +1 -0
- package/dist/esm/ssr/json.d.ts +4 -0
- package/dist/esm/ssr/json.js +14 -0
- package/dist/esm/ssr/json.js.map +1 -0
- package/dist/esm/ssr/seroval-plugins.d.ts +10 -0
- package/dist/esm/ssr/seroval-plugins.js +34 -0
- package/dist/esm/ssr/seroval-plugins.js.map +1 -0
- package/dist/esm/ssr/server.d.ts +6 -0
- package/dist/esm/ssr/server.js +13 -0
- package/dist/esm/ssr/server.js.map +1 -0
- package/dist/esm/ssr/ssr-client.d.ts +29 -0
- package/dist/esm/ssr/ssr-client.js +159 -0
- package/dist/esm/ssr/ssr-client.js.map +1 -0
- package/dist/esm/ssr/ssr-server.d.ts +18 -0
- package/dist/esm/ssr/ssr-server.js +107 -0
- package/dist/esm/ssr/ssr-server.js.map +1 -0
- package/dist/esm/ssr/transformStreamWithRouter.d.ts +6 -0
- package/dist/esm/ssr/transformStreamWithRouter.js +183 -0
- package/dist/esm/ssr/transformStreamWithRouter.js.map +1 -0
- package/dist/esm/ssr/tsrScript.d.ts +0 -0
- package/dist/esm/ssr/tsrScript.js +5 -0
- package/dist/esm/ssr/tsrScript.js.map +1 -0
- package/dist/esm/utils.d.ts +1 -6
- package/dist/esm/utils.js +8 -26
- package/dist/esm/utils.js.map +1 -1
- package/package.json +29 -2
- package/src/Matches.ts +40 -1
- package/src/RouterProvider.ts +2 -1
- package/src/global.ts +9 -0
- package/src/index.ts +12 -20
- package/src/link.ts +12 -0
- package/src/lru-cache.ts +68 -0
- package/src/path.ts +424 -174
- package/src/redirect.ts +3 -0
- package/src/route.ts +44 -13
- package/src/router.ts +580 -312
- package/src/scroll-restoration.ts +30 -18
- package/src/ssr/client.ts +5 -0
- package/src/ssr/createRequestHandler.ts +74 -0
- package/src/ssr/handlerCallback.ts +15 -0
- package/src/ssr/headers.ts +51 -0
- package/src/ssr/json.ts +18 -0
- package/src/ssr/seroval-plugins.ts +43 -0
- package/src/ssr/server.ts +10 -0
- package/src/ssr/ssr-client.ts +242 -0
- package/src/ssr/ssr-server.ts +132 -0
- package/src/ssr/transformStreamWithRouter.ts +259 -0
- package/src/ssr/tsrScript.ts +7 -0
- package/src/utils.ts +10 -39
- package/src/vite-env.d.ts +4 -0
- package/dist/cjs/serializer.d.cts +0 -22
- package/dist/esm/serializer.d.ts +0 -22
- package/src/serializer.ts +0 -32
package/src/redirect.ts
CHANGED
package/src/route.ts
CHANGED
|
@@ -8,6 +8,7 @@ import type { NavigateOptions, ParsePathParams } from './link'
|
|
|
8
8
|
import type { ParsedLocation } from './location'
|
|
9
9
|
import type {
|
|
10
10
|
AnyRouteMatch,
|
|
11
|
+
MakePreValidationErrorHandlingRouteMatchUnion,
|
|
11
12
|
MakeRouteMatchFromRoute,
|
|
12
13
|
MakeRouteMatchUnion,
|
|
13
14
|
RouteMatch,
|
|
@@ -612,7 +613,7 @@ export interface Route<
|
|
|
612
613
|
_lazyPromise?: Promise<void>
|
|
613
614
|
rank: number
|
|
614
615
|
to: TrimPathRight<TFullPath>
|
|
615
|
-
init: (opts: { originalIndex: number
|
|
616
|
+
init: (opts: { originalIndex: number }) => void
|
|
616
617
|
update: (
|
|
617
618
|
options: UpdatableRouteOptions<
|
|
618
619
|
TParentRoute,
|
|
@@ -823,6 +824,14 @@ export type FileBaseRouteOptions<
|
|
|
823
824
|
) => any
|
|
824
825
|
>
|
|
825
826
|
|
|
827
|
+
ssr?:
|
|
828
|
+
| undefined
|
|
829
|
+
| boolean
|
|
830
|
+
| 'data-only'
|
|
831
|
+
| ((
|
|
832
|
+
ctx: SsrContextOptions<TParentRoute, TSearchValidator, TParams>,
|
|
833
|
+
) => Awaitable<undefined | boolean | 'data-only'>)
|
|
834
|
+
|
|
826
835
|
// This async function is called before a route is loaded.
|
|
827
836
|
// If an error is thrown here, the route's loader will not be called.
|
|
828
837
|
// If thrown during a navigation, the navigation will be cancelled and the error will be passed to the `onError` function.
|
|
@@ -927,6 +936,27 @@ export interface RouteContextOptions<
|
|
|
927
936
|
context: Expand<RouteContextParameter<TParentRoute, TRouterContext>>
|
|
928
937
|
}
|
|
929
938
|
|
|
939
|
+
export interface SsrContextOptions<
|
|
940
|
+
in out TParentRoute extends AnyRoute,
|
|
941
|
+
in out TSearchValidator,
|
|
942
|
+
in out TParams,
|
|
943
|
+
> {
|
|
944
|
+
params:
|
|
945
|
+
| {
|
|
946
|
+
status: 'success'
|
|
947
|
+
value: Expand<ResolveAllParamsFromParent<TParentRoute, TParams>>
|
|
948
|
+
}
|
|
949
|
+
| { status: 'error'; error: unknown }
|
|
950
|
+
search:
|
|
951
|
+
| {
|
|
952
|
+
status: 'success'
|
|
953
|
+
value: Expand<ResolveFullSearchSchema<TParentRoute, TSearchValidator>>
|
|
954
|
+
}
|
|
955
|
+
| { status: 'error'; error: unknown }
|
|
956
|
+
location: ParsedLocation
|
|
957
|
+
matches: Array<MakePreValidationErrorHandlingRouteMatchUnion>
|
|
958
|
+
}
|
|
959
|
+
|
|
930
960
|
export interface BeforeLoadContextOptions<
|
|
931
961
|
in out TParentRoute extends AnyRoute,
|
|
932
962
|
in out TSearchValidator,
|
|
@@ -1124,6 +1154,7 @@ export interface UpdatableRouteOptions<
|
|
|
1124
1154
|
links?: AnyRouteMatch['links']
|
|
1125
1155
|
scripts?: AnyRouteMatch['headScripts']
|
|
1126
1156
|
meta?: AnyRouteMatch['meta']
|
|
1157
|
+
styles?: AnyRouteMatch['styles']
|
|
1127
1158
|
}>
|
|
1128
1159
|
scripts?: (
|
|
1129
1160
|
ctx: AssetFnContextOptions<
|
|
@@ -1139,7 +1170,6 @@ export interface UpdatableRouteOptions<
|
|
|
1139
1170
|
TLoaderDeps
|
|
1140
1171
|
>,
|
|
1141
1172
|
) => Awaitable<AnyRouteMatch['scripts']>
|
|
1142
|
-
ssr?: boolean
|
|
1143
1173
|
codeSplitGroupings?: Array<
|
|
1144
1174
|
Array<
|
|
1145
1175
|
| 'loader'
|
|
@@ -1205,6 +1235,13 @@ export interface LoaderFnContext<
|
|
|
1205
1235
|
route: AnyRoute
|
|
1206
1236
|
}
|
|
1207
1237
|
|
|
1238
|
+
export interface DefaultRootRouteOptionsExtensions {
|
|
1239
|
+
shellComponent?: unknown
|
|
1240
|
+
}
|
|
1241
|
+
|
|
1242
|
+
export interface RootRouteOptionsExtensions
|
|
1243
|
+
extends DefaultRootRouteOptionsExtensions {}
|
|
1244
|
+
|
|
1208
1245
|
export type RootRouteOptions<
|
|
1209
1246
|
TSearchValidator = undefined,
|
|
1210
1247
|
TRouterContext = {},
|
|
@@ -1234,7 +1271,8 @@ export type RootRouteOptions<
|
|
|
1234
1271
|
| 'parseParams'
|
|
1235
1272
|
| 'stringifyParams'
|
|
1236
1273
|
| 'params'
|
|
1237
|
-
>
|
|
1274
|
+
> &
|
|
1275
|
+
RootRouteOptionsExtensions
|
|
1238
1276
|
|
|
1239
1277
|
export type RouteConstraints = {
|
|
1240
1278
|
TParentRoute: AnyRoute
|
|
@@ -1279,8 +1317,8 @@ export type ErrorRouteProps = {
|
|
|
1279
1317
|
reset: () => void
|
|
1280
1318
|
}
|
|
1281
1319
|
|
|
1282
|
-
export type ErrorComponentProps = {
|
|
1283
|
-
error:
|
|
1320
|
+
export type ErrorComponentProps<TError = Error> = {
|
|
1321
|
+
error: TError
|
|
1284
1322
|
info?: { componentStack: string }
|
|
1285
1323
|
reset: () => void
|
|
1286
1324
|
}
|
|
@@ -1327,7 +1365,6 @@ export class BaseRoute<
|
|
|
1327
1365
|
private _path!: TPath
|
|
1328
1366
|
private _fullPath!: TFullPath
|
|
1329
1367
|
private _to!: TrimPathRight<TFullPath>
|
|
1330
|
-
private _ssr!: boolean
|
|
1331
1368
|
|
|
1332
1369
|
public get to() {
|
|
1333
1370
|
return this._to
|
|
@@ -1345,10 +1382,6 @@ export class BaseRoute<
|
|
|
1345
1382
|
return this._fullPath
|
|
1346
1383
|
}
|
|
1347
1384
|
|
|
1348
|
-
public get ssr() {
|
|
1349
|
-
return this._ssr
|
|
1350
|
-
}
|
|
1351
|
-
|
|
1352
1385
|
// Optional
|
|
1353
1386
|
children?: TChildren
|
|
1354
1387
|
originalIndex?: number
|
|
@@ -1417,7 +1450,7 @@ export class BaseRoute<
|
|
|
1417
1450
|
TFileRouteTypes
|
|
1418
1451
|
>
|
|
1419
1452
|
|
|
1420
|
-
init = (opts: { originalIndex: number
|
|
1453
|
+
init = (opts: { originalIndex: number }): void => {
|
|
1421
1454
|
this.originalIndex = opts.originalIndex
|
|
1422
1455
|
|
|
1423
1456
|
const options = this.options as
|
|
@@ -1483,7 +1516,6 @@ export class BaseRoute<
|
|
|
1483
1516
|
this._id = id as TId
|
|
1484
1517
|
this._fullPath = fullPath as TFullPath
|
|
1485
1518
|
this._to = fullPath as TrimPathRight<TFullPath>
|
|
1486
|
-
this._ssr = options?.ssr ?? opts.defaultSsr ?? true
|
|
1487
1519
|
}
|
|
1488
1520
|
|
|
1489
1521
|
clone = (other: typeof this) => {
|
|
@@ -1491,7 +1523,6 @@ export class BaseRoute<
|
|
|
1491
1523
|
this._id = other._id
|
|
1492
1524
|
this._fullPath = other._fullPath
|
|
1493
1525
|
this._to = other._to
|
|
1494
|
-
this._ssr = other._ssr
|
|
1495
1526
|
this.options.getParentRoute = other.options.getParentRoute
|
|
1496
1527
|
this.children = other.children
|
|
1497
1528
|
}
|