@tanstack/react-router 1.47.5 → 1.48.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/fileRoute.cjs.map +1 -1
- package/dist/cjs/fileRoute.d.cts +3 -3
- package/dist/cjs/index.d.cts +1 -1
- package/dist/cjs/route.cjs.map +1 -1
- package/dist/cjs/route.d.cts +64 -67
- package/dist/cjs/router.cjs.map +1 -1
- package/dist/cjs/router.d.cts +1 -1
- package/dist/esm/fileRoute.d.ts +3 -3
- package/dist/esm/fileRoute.js.map +1 -1
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/route.d.ts +64 -67
- package/dist/esm/route.js.map +1 -1
- package/dist/esm/router.d.ts +1 -1
- package/dist/esm/router.js.map +1 -1
- package/package.json +1 -1
- package/src/fileRoute.ts +10 -25
- package/src/index.tsx +1 -3
- package/src/route.ts +202 -202
- package/src/router.ts +0 -2
package/dist/cjs/route.d.cts
CHANGED
|
@@ -32,7 +32,7 @@ export type RoutePathOptionsIntersection<TCustomId, TPath> = {
|
|
|
32
32
|
path: TPath;
|
|
33
33
|
id: TCustomId;
|
|
34
34
|
};
|
|
35
|
-
export type RouteOptions<TParentRoute extends AnyRoute = AnyRoute, TCustomId extends string = string, TPath extends string = string,
|
|
35
|
+
export type RouteOptions<TParentRoute extends AnyRoute = AnyRoute, TCustomId extends string = string, TPath extends string = string, TSearchValidator extends AnySearchValidator = DefaultSearchValidator, TParams = AnyPathParams, TAllParams = TParams, TRouteContextReturn = RouteContext, TRouteContext = RouteContext, TParentAllContext = AnyContext, TAllContext = AnyContext, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = {}, TLoaderData = ResolveLoaderData<TLoaderDataReturn>> = BaseRouteOptions<TParentRoute, TCustomId, TPath, TSearchValidator, TParams, TAllParams, TRouteContextReturn, TParentAllContext, TAllContext, TLoaderDeps, TLoaderDataReturn> & UpdatableRouteOptions<NoInfer<TParentRoute>, NoInfer<TCustomId>, NoInfer<TAllParams>, NoInfer<TSearchValidator>, NoInfer<TLoaderData>, NoInfer<TAllContext>, NoInfer<TRouteContext>, NoInfer<TLoaderDeps>>;
|
|
36
36
|
export type ParseParamsFn<TPath extends string, TParams> = (rawParams: Record<ParsePathParams<TPath>, string>) => TParams extends Record<ParsePathParams<TPath>, any> ? TParams : Record<ParsePathParams<TPath>, any>;
|
|
37
37
|
export type StringifyParamsFn<TPath extends string, TParams> = (params: TParams) => Record<ParsePathParams<TPath>, string>;
|
|
38
38
|
export type ParamsOptions<TPath extends string, TParams> = {
|
|
@@ -52,16 +52,14 @@ export type ParamsOptions<TPath extends string, TParams> = {
|
|
|
52
52
|
export interface FullSearchSchemaOption<TFullSearchSchema> {
|
|
53
53
|
search: TFullSearchSchema;
|
|
54
54
|
}
|
|
55
|
-
export type FileBaseRouteOptions<
|
|
56
|
-
validateSearch?:
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
beforeLoad?: (ctx: BeforeLoadContext<TFullSearchSchema, TAllParams, TParentAllContext>) => Promise<TRouteContextReturn> | TRouteContextReturn | void;
|
|
61
|
-
loaderDeps?: (opts: FullSearchSchemaOption<TFullSearchSchema>) => TLoaderDeps;
|
|
55
|
+
export type FileBaseRouteOptions<TParentRoute extends AnyRoute = AnyRoute, TPath extends string = string, TSearchValidator extends AnySearchValidator = undefined, TParams = {}, TAllParams = {}, TRouteContextReturn = RouteContext, TParentAllContext = AnyContext, TAllContext = AnyContext, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = {}> = {
|
|
56
|
+
validateSearch?: TSearchValidator;
|
|
57
|
+
shouldReload?: boolean | ((match: LoaderFnContext<TAllParams, ResolveFullSearchSchema<TParentRoute, TSearchValidator>, TAllContext>) => any);
|
|
58
|
+
beforeLoad?: (ctx: BeforeLoadContext<ResolveFullSearchSchema<TParentRoute, TSearchValidator>, TAllParams, TParentAllContext>) => Promise<TRouteContextReturn> | TRouteContextReturn | void;
|
|
59
|
+
loaderDeps?: (opts: FullSearchSchemaOption<ResolveFullSearchSchema<TParentRoute, TSearchValidator>>) => TLoaderDeps;
|
|
62
60
|
loader?: (ctx: LoaderFnContext<TAllParams, TLoaderDeps, TAllContext>) => TLoaderDataReturn | Promise<TLoaderDataReturn>;
|
|
63
61
|
} & ParamsOptions<TPath, TParams>;
|
|
64
|
-
export type BaseRouteOptions<TParentRoute extends AnyRoute = AnyRoute, TCustomId extends string = string, TPath extends string = string,
|
|
62
|
+
export type BaseRouteOptions<TParentRoute extends AnyRoute = AnyRoute, TCustomId extends string = string, TPath extends string = string, TSearchValidator extends AnySearchValidator = undefined, TParams = {}, TAllParams = {}, TRouteContextReturn = RouteContext, TParentAllContext = AnyContext, TAllContext = AnyContext, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = {}> = RoutePathOptions<TCustomId, TPath> & FileBaseRouteOptions<TParentRoute, TPath, TSearchValidator, TParams, TAllParams, TRouteContextReturn, TParentAllContext, TAllContext, TLoaderDeps, TLoaderDataReturn> & {
|
|
65
63
|
getParentRoute: () => TParentRoute;
|
|
66
64
|
};
|
|
67
65
|
export interface BeforeLoadContext<TFullSearchSchema, TAllParams, TParentAllContext> extends FullSearchSchemaOption<TFullSearchSchema> {
|
|
@@ -77,7 +75,7 @@ export interface BeforeLoadContext<TFullSearchSchema, TAllParams, TParentAllCont
|
|
|
77
75
|
buildLocation: BuildLocationFn;
|
|
78
76
|
cause: 'preload' | 'enter' | 'stay';
|
|
79
77
|
}
|
|
80
|
-
export type UpdatableRouteOptions<
|
|
78
|
+
export type UpdatableRouteOptions<TParentRoute extends AnyRoute, TRouteId, TAllParams, TSearchValidator extends AnySearchValidator, TLoaderData, TAllContext, TRouteContext, TLoaderDeps> = {
|
|
81
79
|
caseSensitive?: boolean;
|
|
82
80
|
wrapInSuspense?: boolean;
|
|
83
81
|
component?: RouteComponent;
|
|
@@ -90,16 +88,16 @@ export type UpdatableRouteOptions<TRouteId, TAllParams, TFullSearchSchema, TLoad
|
|
|
90
88
|
gcTime?: number;
|
|
91
89
|
preloadStaleTime?: number;
|
|
92
90
|
preloadGcTime?: number;
|
|
93
|
-
preSearchFilters?: Array<SearchFilter<
|
|
94
|
-
postSearchFilters?: Array<SearchFilter<
|
|
91
|
+
preSearchFilters?: Array<SearchFilter<ResolveFullSearchSchema<TParentRoute, TSearchValidator>>>;
|
|
92
|
+
postSearchFilters?: Array<SearchFilter<ResolveFullSearchSchema<TParentRoute, TSearchValidator>>>;
|
|
95
93
|
onCatch?: (error: Error, errorInfo: React.ErrorInfo) => void;
|
|
96
94
|
onError?: (err: any) => void;
|
|
97
|
-
onEnter?: (match:
|
|
98
|
-
onStay?: (match:
|
|
99
|
-
onLeave?: (match:
|
|
95
|
+
onEnter?: (match: RouteMatch<TRouteId, TAllParams, ResolveFullSearchSchema<TParentRoute, TSearchValidator>, TLoaderData, TAllContext, TRouteContext, TLoaderDeps>) => void;
|
|
96
|
+
onStay?: (match: RouteMatch<TRouteId, TAllParams, ResolveFullSearchSchema<TParentRoute, TSearchValidator>, TLoaderData, TAllContext, TRouteContext, TLoaderDeps>) => void;
|
|
97
|
+
onLeave?: (match: RouteMatch<TRouteId, TAllParams, ResolveFullSearchSchema<TParentRoute, TSearchValidator>, TLoaderData, TAllContext, TRouteContext, TLoaderDeps>) => void;
|
|
100
98
|
meta?: (ctx: {
|
|
101
|
-
matches: Array<
|
|
102
|
-
match:
|
|
99
|
+
matches: Array<RouteMatch<TRouteId, TAllParams, ResolveFullSearchSchema<TParentRoute, TSearchValidator>, TLoaderData, TAllContext, TRouteContext, TLoaderDeps>>;
|
|
100
|
+
match: RouteMatch<TRouteId, TAllParams, ResolveFullSearchSchema<TParentRoute, TSearchValidator>, TLoaderData, TAllContext, TRouteContext, TLoaderDeps>;
|
|
103
101
|
params: TAllParams;
|
|
104
102
|
loaderData: TLoaderData;
|
|
105
103
|
}) => Array<React.JSX.IntrinsicElements['meta']>;
|
|
@@ -142,11 +140,23 @@ type LdJsonArray = Array<LdJsonValue> | ReadonlyArray<LdJsonValue>;
|
|
|
142
140
|
type LdJsonPrimitive = string | number | boolean | null;
|
|
143
141
|
type LdJsonValue = LdJsonPrimitive | LdJsonObject | LdJsonArray;
|
|
144
142
|
export type RouteLinkEntry = {};
|
|
145
|
-
export
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
export
|
|
143
|
+
export interface SearchValidatorObj<TInput, TOutput> {
|
|
144
|
+
parse: SearchValidatorFn<TInput, TOutput>;
|
|
145
|
+
}
|
|
146
|
+
export type AnySearchValidatorObj = SearchValidatorObj<any, any>;
|
|
147
|
+
export interface SearchValidatorAdapter<TInput, TOutput> {
|
|
148
|
+
types: {
|
|
149
|
+
input: TInput;
|
|
150
|
+
output: TOutput;
|
|
151
|
+
};
|
|
152
|
+
parse: (input: unknown) => TOutput;
|
|
153
|
+
}
|
|
154
|
+
export type AnySearchValidatorAdapter = SearchValidatorAdapter<any, any>;
|
|
155
|
+
export type AnySearchValidatorFn = SearchValidatorFn<any, any>;
|
|
156
|
+
export type SearchValidatorFn<TInput, TOutput> = (input: TInput) => TOutput;
|
|
157
|
+
export type SearchValidator<TInput, TOutput> = SearchValidatorObj<TInput, TOutput> | SearchValidatorFn<TInput, TOutput> | SearchValidatorAdapter<TInput, TOutput> | undefined;
|
|
158
|
+
export type AnySearchValidator = SearchValidator<any, any>;
|
|
159
|
+
export type DefaultSearchValidator = SearchValidator<Record<string, unknown>, AnySearchSchema>;
|
|
150
160
|
export type RouteLoaderFn<in out TAllParams = {}, in out TLoaderDeps extends Record<string, any> = {}, in out TAllContext = AnyContext, TLoaderData = undefined> = (match: LoaderFnContext<TAllParams, TLoaderDeps, TAllContext>) => TLoaderData | Promise<TLoaderData>;
|
|
151
161
|
export interface LoaderFnContext<in out TAllParams = {}, in out TLoaderDeps = {}, in out TAllContext = AnyContext> {
|
|
152
162
|
abortController: AbortController;
|
|
@@ -187,9 +197,12 @@ export type InferAllContext<TRoute> = TRoute extends {
|
|
|
187
197
|
allContext: infer TAllContext;
|
|
188
198
|
};
|
|
189
199
|
} ? TAllContext : {};
|
|
190
|
-
export type
|
|
191
|
-
export type
|
|
192
|
-
export type
|
|
200
|
+
export type ResolveSearchSchemaFnInput<TSearchValidator extends AnySearchValidator> = TSearchValidator extends (input: infer TSearchSchemaInput) => any ? TSearchSchemaInput extends SearchSchemaInput ? Omit<TSearchSchemaInput, keyof SearchSchemaInput> : ResolveSearchSchemaFn<TSearchValidator> : AnySearchSchema;
|
|
201
|
+
export type ResolveSearchSchemaInput<TSearchValidator extends AnySearchValidator> = TSearchValidator extends AnySearchValidatorAdapter ? TSearchValidator['types']['input'] : TSearchValidator extends AnySearchValidatorObj ? ResolveSearchSchemaFnInput<TSearchValidator['parse']> : ResolveSearchSchemaFnInput<TSearchValidator>;
|
|
202
|
+
export type ResolveSearchSchemaFn<TSearchValidator extends AnySearchValidator> = TSearchValidator extends (...args: any) => infer TSearchSchema ? TSearchSchema : AnySearchSchema;
|
|
203
|
+
export type ResolveSearchSchema<TSearchValidator extends AnySearchValidator> = unknown extends TSearchValidator ? TSearchValidator : TSearchValidator extends AnySearchValidatorAdapter ? TSearchValidator['types']['output'] : TSearchValidator extends AnySearchValidatorObj ? ResolveSearchSchemaFn<TSearchValidator['parse']> : ResolveSearchSchemaFn<TSearchValidator>;
|
|
204
|
+
export type ResolveFullSearchSchema<TParentRoute extends AnyRoute, TSearchValidator extends AnySearchValidator> = unknown extends TParentRoute ? ResolveSearchSchema<TSearchValidator> : Assign<InferFullSearchSchema<TParentRoute>, ResolveSearchSchema<TSearchValidator>>;
|
|
205
|
+
export type ResolveFullSearchSchemaInput<TParentRoute extends AnyRoute, TSearchValidator extends AnySearchValidator> = Assign<InferFullSearchSchemaInput<TParentRoute>, ResolveSearchSchemaInput<TSearchValidator>>;
|
|
193
206
|
export type ResolveRouteContext<TRouteContextReturn> = [
|
|
194
207
|
TRouteContextReturn
|
|
195
208
|
] extends [never] ? RouteContext : TRouteContextReturn;
|
|
@@ -197,9 +210,9 @@ export type ResolveAllContext<TParentRoute extends AnyRoute, TRouteContext> = As
|
|
|
197
210
|
export type ResolveLoaderData<TLoaderDataReturn> = [TLoaderDataReturn] extends [
|
|
198
211
|
never
|
|
199
212
|
] ? undefined : TLoaderDataReturn;
|
|
200
|
-
export interface AnyRoute extends Route<any, any, any, any, any, any, any, any, any, any, any, any, any, any, any
|
|
213
|
+
export interface AnyRoute extends Route<any, any, any, any, any, any, any, any, any, any, any, any, any, any, any> {
|
|
201
214
|
}
|
|
202
|
-
export type AnyRouteWithContext<TContext> = Route<any, any, any, any, any, any, any, any, any, any, any, any,
|
|
215
|
+
export type AnyRouteWithContext<TContext> = Route<any, any, any, any, any, any, any, any, any, any, any, any, TContext, any, any>;
|
|
203
216
|
export type ResolveAllParamsFromParent<TParentRoute extends AnyRoute, TParams> = Assign<InferAllParams<TParentRoute>, TParams>;
|
|
204
217
|
export type RouteConstraints = {
|
|
205
218
|
TParentRoute: AnyRoute;
|
|
@@ -248,9 +261,9 @@ export declare class RouteApi<TId extends RouteIds<RegisteredRouter['routeTree']
|
|
|
248
261
|
useNavigate: () => UseNavigateResult<TRoute["fullPath"]>;
|
|
249
262
|
notFound: (opts?: NotFoundError) => NotFoundError;
|
|
250
263
|
}
|
|
251
|
-
export declare class Route<in out TParentRoute extends RouteConstraints['TParentRoute'] = AnyRoute, in out TPath extends RouteConstraints['TPath'] = '/', in out TFullPath extends RouteConstraints['TFullPath'] = ResolveFullPath<TParentRoute, TPath>, in out TCustomId extends RouteConstraints['TCustomId'] = string, in out TId extends RouteConstraints['TId'] = ResolveId<TParentRoute, TCustomId, TPath>, in out
|
|
264
|
+
export declare class Route<in out TParentRoute extends RouteConstraints['TParentRoute'] = AnyRoute, in out TPath extends RouteConstraints['TPath'] = '/', in out TFullPath extends RouteConstraints['TFullPath'] = ResolveFullPath<TParentRoute, TPath>, in out TCustomId extends RouteConstraints['TCustomId'] = string, in out TId extends RouteConstraints['TId'] = ResolveId<TParentRoute, TCustomId, TPath>, in out TSearchValidator extends AnySearchValidator = DefaultSearchValidator, in out TParams = Record<ParsePathParams<TPath>, string>, in out TAllParams = ResolveAllParamsFromParent<TParentRoute, TParams>, TRouteContextReturn = RouteContext, in out TRouteContext = ResolveRouteContext<TRouteContextReturn>, in out TAllContext = ResolveAllContext<TParentRoute, TRouteContext>, in out TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = {}, in out TLoaderData = ResolveLoaderData<TLoaderDataReturn>, in out TChildren = unknown> {
|
|
252
265
|
isRoot: TParentRoute extends Route<any> ? true : false;
|
|
253
|
-
options: RouteOptions<TParentRoute, TCustomId, TPath,
|
|
266
|
+
options: RouteOptions<TParentRoute, TCustomId, TPath, TSearchValidator, TParams, TAllParams, TRouteContextReturn, TRouteContext, InferAllContext<TParentRoute>, TAllContext, TLoaderDeps, TLoaderDataReturn, TLoaderData>;
|
|
254
267
|
parentRoute: TParentRoute;
|
|
255
268
|
id: TId;
|
|
256
269
|
path: TPath;
|
|
@@ -265,7 +278,7 @@ export declare class Route<in out TParentRoute extends RouteConstraints['TParent
|
|
|
265
278
|
/**
|
|
266
279
|
* @deprecated Use the `createRoute` function instead.
|
|
267
280
|
*/
|
|
268
|
-
constructor(options?: RouteOptions<TParentRoute, TCustomId, TPath,
|
|
281
|
+
constructor(options?: RouteOptions<TParentRoute, TCustomId, TPath, TSearchValidator, TParams, TAllParams, TRouteContextReturn, TRouteContext, InferAllContext<TParentRoute>, TAllContext, TLoaderDeps, TLoaderDataReturn, TLoaderData>);
|
|
269
282
|
types: {
|
|
270
283
|
parentRoute: TParentRoute;
|
|
271
284
|
path: TPath;
|
|
@@ -273,11 +286,11 @@ export declare class Route<in out TParentRoute extends RouteConstraints['TParent
|
|
|
273
286
|
fullPath: TFullPath;
|
|
274
287
|
customId: TCustomId;
|
|
275
288
|
id: TId;
|
|
276
|
-
searchSchema:
|
|
277
|
-
searchSchemaInput:
|
|
278
|
-
|
|
279
|
-
fullSearchSchema:
|
|
280
|
-
fullSearchSchemaInput:
|
|
289
|
+
searchSchema: ResolveSearchSchema<TSearchValidator>;
|
|
290
|
+
searchSchemaInput: ResolveSearchSchemaInput<TSearchValidator>;
|
|
291
|
+
searchValidator: TSearchValidator;
|
|
292
|
+
fullSearchSchema: ResolveFullSearchSchema<TParentRoute, TSearchValidator>;
|
|
293
|
+
fullSearchSchemaInput: ResolveFullSearchSchemaInput<TParentRoute, TSearchValidator>;
|
|
281
294
|
params: TParams;
|
|
282
295
|
allParams: TAllParams;
|
|
283
296
|
routeContext: TRouteContext;
|
|
@@ -289,11 +302,11 @@ export declare class Route<in out TParentRoute extends RouteConstraints['TParent
|
|
|
289
302
|
init: (opts: {
|
|
290
303
|
originalIndex: number;
|
|
291
304
|
}) => void;
|
|
292
|
-
addChildren<const TNewChildren extends Record<string, AnyRoute> | ReadonlyArray<AnyRoute>>(children: TNewChildren): Route<TParentRoute, TPath, TFullPath, TCustomId, TId,
|
|
305
|
+
addChildren<const TNewChildren extends Record<string, AnyRoute> | ReadonlyArray<AnyRoute>>(children: TNewChildren): Route<TParentRoute, TPath, TFullPath, TCustomId, TId, TSearchValidator, TParams, TAllParams, TRouteContextReturn, TRouteContext, TAllContext, TLoaderDeps, TLoaderDataReturn, TLoaderData, TNewChildren>;
|
|
293
306
|
updateLoader: <TNewLoaderData = unknown>(options: {
|
|
294
307
|
loader: RouteLoaderFn<TAllParams, TLoaderDeps, TAllContext, TNewLoaderData>;
|
|
295
|
-
}) => Route<TParentRoute, TPath, TFullPath, TCustomId, TId,
|
|
296
|
-
update: (options: UpdatableRouteOptions<TCustomId, TAllParams,
|
|
308
|
+
}) => Route<TParentRoute, TPath, TFullPath, TCustomId, TId, TSearchValidator, TParams, TAllParams, TRouteContextReturn, TRouteContext, TAllContext, TLoaderDeps, TNewLoaderData, TChildren>;
|
|
309
|
+
update: (options: UpdatableRouteOptions<TParentRoute, TCustomId, TAllParams, TSearchValidator, TLoaderData, TAllContext, TRouteContext, TLoaderDeps>) => this;
|
|
297
310
|
lazy: (lazyFn: () => Promise<LazyRoute<any>>) => this;
|
|
298
311
|
useMatch: <TRouter extends AnyRouter = AnyRouter, TRouteTree extends AnyRoute = TRouter["routeTree"], TRouteMatch = MakeRouteMatch<TRouteTree, TId>, TSelected = TRouteMatch>(opts?: {
|
|
299
312
|
select?: (match: TRouteMatch) => TSelected;
|
|
@@ -301,8 +314,8 @@ export declare class Route<in out TParentRoute extends RouteConstraints['TParent
|
|
|
301
314
|
useRouteContext: <TSelected = Expand<TAllContext>>(opts?: {
|
|
302
315
|
select?: (search: Expand<TAllContext>) => TSelected;
|
|
303
316
|
}) => TSelected;
|
|
304
|
-
useSearch: <TSelected = Expand<
|
|
305
|
-
select?: (search: Expand<
|
|
317
|
+
useSearch: <TSelected = Expand<ResolveFullSearchSchema<TParentRoute, TSearchValidator>>>(opts?: {
|
|
318
|
+
select?: (search: Expand<ResolveFullSearchSchema<TParentRoute, TSearchValidator>>) => TSelected;
|
|
306
319
|
}) => TSelected;
|
|
307
320
|
useParams: <TSelected = Expand<TAllParams>>(opts?: {
|
|
308
321
|
select?: (search: Expand<TAllParams>) => TSelected;
|
|
@@ -315,15 +328,12 @@ export declare class Route<in out TParentRoute extends RouteConstraints['TParent
|
|
|
315
328
|
}) => TSelected;
|
|
316
329
|
useNavigate: () => UseNavigateResult<TFullPath>;
|
|
317
330
|
}
|
|
318
|
-
export declare function createRoute<TParentRoute extends RouteConstraints['TParentRoute'] = AnyRoute, TPath extends RouteConstraints['TPath'] = '/', TFullPath extends RouteConstraints['TFullPath'] = ResolveFullPath<TParentRoute, TPath>, TCustomId extends RouteConstraints['TCustomId'] = string, TId extends RouteConstraints['TId'] = ResolveId<TParentRoute, TCustomId, TPath>,
|
|
331
|
+
export declare function createRoute<TParentRoute extends RouteConstraints['TParentRoute'] = AnyRoute, TPath extends RouteConstraints['TPath'] = '/', TFullPath extends RouteConstraints['TFullPath'] = ResolveFullPath<TParentRoute, TPath>, TCustomId extends RouteConstraints['TCustomId'] = string, TId extends RouteConstraints['TId'] = ResolveId<TParentRoute, TCustomId, TPath>, TSearchValidator extends AnySearchValidator = DefaultSearchValidator, TParams = Record<ParsePathParams<TPath>, string>, TAllParams = ResolveAllParamsFromParent<TParentRoute, TParams>, TRouteContextReturn = RouteContext, TRouteContext = ResolveRouteContext<TRouteContextReturn>, TAllContext = ResolveAllContext<TParentRoute, TRouteContext>, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = {}, TLoaderData = ResolveLoaderData<TLoaderDataReturn>, TChildren = unknown>(options: RouteOptions<TParentRoute, TCustomId, TPath, TSearchValidator, TParams, TAllParams, TRouteContextReturn, TRouteContext, InferAllContext<TParentRoute>, TAllContext, TLoaderDeps, TLoaderDataReturn, TLoaderData>): Route<TParentRoute, TPath, TFullPath, TCustomId, TId, TSearchValidator, TParams, TAllParams, TRouteContextReturn, TRouteContext, TAllContext, TLoaderDeps, TLoaderDataReturn, TLoaderData, TChildren>;
|
|
319
332
|
export type AnyRootRoute = RootRoute<any, any, any, any, any, any, any, any>;
|
|
320
|
-
export type RootRouteOptions<
|
|
333
|
+
export type RootRouteOptions<TSearchValidator extends AnySearchValidator = DefaultSearchValidator, TRouteContextReturn = RouteContext, TRouteContext = ResolveRouteContext<TRouteContextReturn>, TRouterContext = {}, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = {}, TLoaderData = ResolveLoaderData<TLoaderDataReturn>> = Omit<RouteOptions<any, // TParentRoute
|
|
321
334
|
RootRouteId, // TCustomId
|
|
322
335
|
'', // TPath
|
|
323
|
-
|
|
324
|
-
TSearchSchema, // TSearchSchema
|
|
325
|
-
TSearchSchema, // TFullSearchSchema
|
|
326
|
-
{}, // TParams
|
|
336
|
+
TSearchValidator, {}, // TParams
|
|
327
337
|
{}, // TAllParams
|
|
328
338
|
TRouteContextReturn, // TRouteContextReturn
|
|
329
339
|
TRouteContext, // TRouteContext
|
|
@@ -331,20 +341,17 @@ TRouterContext, // TParentAllContext
|
|
|
331
341
|
Assign<TRouterContext, TRouteContext>, // TAllContext
|
|
332
342
|
TLoaderDeps, TLoaderDataReturn, // TLoaderDataReturn,
|
|
333
343
|
TLoaderData>, 'path' | 'id' | 'getParentRoute' | 'caseSensitive' | 'parseParams' | 'stringifyParams' | 'params'>;
|
|
334
|
-
export declare function createRootRouteWithContext<TRouterContext extends {}>(): <
|
|
344
|
+
export declare function createRootRouteWithContext<TRouterContext extends {}>(): <TSearchValidator extends AnySearchValidator = DefaultSearchValidator, TRouteContextReturn extends RouteContext = RouteContext, TRouteContext extends RouteContext = ResolveRouteContext<TRouteContextReturn>, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = {}, TLoaderData = ResolveLoaderData<TLoaderDataReturn>>(options?: RootRouteOptions<TSearchValidator, TRouteContextReturn, TRouteContext, TRouterContext, TLoaderDeps, TLoaderDataReturn, TLoaderData>) => RootRoute<TSearchValidator, TRouteContextReturn, TRouteContext, TRouterContext, TLoaderDeps, TLoaderData, ResolveLoaderData<TLoaderData>, unknown>;
|
|
335
345
|
/**
|
|
336
346
|
* @deprecated Use the `createRootRouteWithContext` function instead.
|
|
337
347
|
*/
|
|
338
348
|
export declare const rootRouteWithContext: typeof createRootRouteWithContext;
|
|
339
|
-
export declare class RootRoute<in out
|
|
349
|
+
export declare class RootRoute<in out TSearchValidator extends AnySearchValidator = DefaultSearchValidator, TRouteContextReturn = RouteContext, in out TRouteContext = ResolveRouteContext<TRouteContextReturn>, in out TRouterContext = {}, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = {}, in out TLoaderData = ResolveLoaderData<TLoaderDataReturn>, TChildren = unknown> extends Route<any, // TParentRoute
|
|
340
350
|
'/', // TPath
|
|
341
351
|
'/', // TFullPath
|
|
342
352
|
string, // TCustomId
|
|
343
353
|
RootRouteId, // TId
|
|
344
|
-
|
|
345
|
-
TSearchSchema, // TSearchSchema
|
|
346
|
-
TSearchSchemaUsed, TSearchSchemaUsed, // TFullSearchSchemaInput
|
|
347
|
-
TSearchSchema, // TFullSearchSchema
|
|
354
|
+
TSearchValidator, // TSearchValidator
|
|
348
355
|
{}, // TParams
|
|
349
356
|
{}, // TAllParams
|
|
350
357
|
TRouteContextReturn, // TRouteContextReturn
|
|
@@ -354,20 +361,10 @@ TLoaderDeps, TLoaderDataReturn, TLoaderData, TChildren> {
|
|
|
354
361
|
/**
|
|
355
362
|
* @deprecated `RootRoute` is now an internal implementation detail. Use `createRootRoute()` instead.
|
|
356
363
|
*/
|
|
357
|
-
constructor(options?: RootRouteOptions<
|
|
358
|
-
addChildren<const TNewChildren extends Record<string, AnyRoute> | ReadonlyArray<AnyRoute>>(children: TNewChildren): RootRoute<
|
|
364
|
+
constructor(options?: RootRouteOptions<TSearchValidator, TRouteContextReturn, TRouteContext, TRouterContext, TLoaderDeps, TLoaderDataReturn, TLoaderData>);
|
|
365
|
+
addChildren<const TNewChildren extends Record<string, AnyRoute> | ReadonlyArray<AnyRoute>>(children: TNewChildren): RootRoute<TSearchValidator, TRouteContextReturn, TRouteContext, TRouterContext, TLoaderDeps, TLoaderDataReturn, TLoaderData, TNewChildren>;
|
|
359
366
|
}
|
|
360
|
-
export declare function createRootRoute<
|
|
361
|
-
RootRouteId, // TCustomId
|
|
362
|
-
'', // TPath
|
|
363
|
-
TSearchSchemaInput, // TSearchSchemaInput
|
|
364
|
-
TSearchSchema, // TSearchSchema
|
|
365
|
-
TSearchSchema, {}, // TParams
|
|
366
|
-
{}, // TAllParams
|
|
367
|
-
TRouteContextReturn, // TRouteContextReturn
|
|
368
|
-
TRouteContext, // TRouteContext
|
|
369
|
-
TRouterContext, Assign<TRouterContext, TRouteContext>, // TAllContext
|
|
370
|
-
TLoaderDeps, TLoaderDataReturn, TLoaderData>, 'path' | 'id' | 'getParentRoute' | 'caseSensitive' | 'parseParams' | 'stringifyParams' | 'params'>): RootRoute<TSearchSchemaInput, TSearchSchema, TSearchSchemaUsed, TRouteContextReturn, TRouteContext, TRouterContext, TLoaderDeps, TLoaderDataReturn, TLoaderData, unknown>;
|
|
367
|
+
export declare function createRootRoute<TSearchValidator extends AnySearchValidator = DefaultSearchValidator, TRouteContextReturn = RouteContext, TRouteContext = ResolveRouteContext<TRouteContextReturn>, TRouterContext = {}, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = {}, TLoaderData = ResolveLoaderData<TLoaderDataReturn>>(options?: RootRouteOptions<TSearchValidator, TRouteContextReturn, TRouteContext, TRouterContext, TLoaderDeps, TLoaderDataReturn, TLoaderData>): RootRoute<TSearchValidator, TRouteContextReturn, TRouteContext, TRouterContext, TLoaderDeps, TLoaderDataReturn, TLoaderData, unknown>;
|
|
371
368
|
export type ResolveFullPath<TParentRoute extends AnyRoute, TPath extends string, TPrefixed = RoutePrefix<TParentRoute['fullPath'], TPath>> = TPrefixed extends RootRouteId ? '/' : TPrefixed;
|
|
372
369
|
type RoutePrefix<TPrefix extends string, TPath extends string> = string extends TPath ? RootRouteId : TPath extends string ? TPrefix extends RootRouteId ? TPath extends '/' ? '/' : `/${TrimPath<TPath>}` : `${TPrefix}/${TPath}` extends '/' ? '/' : `/${TrimPathLeft<`${TrimPathRight<TPrefix>}/${TrimPath<TPath>}`>}` : never;
|
|
373
370
|
export type TrimPath<T extends string> = '' extends T ? '' : TrimPathRight<TrimPathLeft<T>>;
|
|
@@ -414,7 +411,7 @@ export type AsyncRouteComponent<TProps> = SyncRouteComponent<TProps> & {
|
|
|
414
411
|
export type RouteComponent<TProps = any> = AsyncRouteComponent<TProps>;
|
|
415
412
|
export type ErrorRouteComponent = RouteComponent<ErrorComponentProps>;
|
|
416
413
|
export type NotFoundRouteComponent = SyncRouteComponent<NotFoundRouteProps>;
|
|
417
|
-
export declare class NotFoundRoute<TParentRoute extends AnyRootRoute,
|
|
418
|
-
constructor(options: Omit<RouteOptions<TParentRoute, string, string,
|
|
414
|
+
export declare class NotFoundRoute<TParentRoute extends AnyRootRoute, TSearchValidator extends AnySearchValidator = DefaultSearchValidator, TRouteContextReturn = AnyContext, TRouteContext = RouteContext, TAllContext = ResolveAllContext<TParentRoute, TRouteContext>, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = {}, TLoaderData = ResolveLoaderData<TLoaderDataReturn>, TChildren = unknown> extends Route<TParentRoute, '/404', '/404', '404', '404', TSearchValidator, {}, {}, TRouteContextReturn, TRouteContext, TAllContext, TLoaderDeps, TLoaderDataReturn, TLoaderData, TChildren> {
|
|
415
|
+
constructor(options: Omit<RouteOptions<TParentRoute, string, string, TSearchValidator, {}, {}, TRouteContextReturn, TRouteContext, InferAllContext<TParentRoute>, TAllContext, TLoaderDeps, TLoaderDataReturn, TLoaderData>, 'caseSensitive' | 'parseParams' | 'stringifyParams' | 'path' | 'id' | 'params'>);
|
|
419
416
|
}
|
|
420
417
|
export {};
|