@tanstack/react-router 1.34.3 → 1.34.6
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 +5 -8
- package/dist/cjs/RouterProvider.cjs.map +1 -1
- package/dist/cjs/RouterProvider.d.cts +3 -1
- package/dist/cjs/Transitioner.cjs +1 -0
- package/dist/cjs/Transitioner.cjs.map +1 -1
- package/dist/cjs/fileRoute.cjs.map +1 -1
- package/dist/cjs/fileRoute.d.cts +2 -2
- package/dist/cjs/route.cjs.map +1 -1
- package/dist/cjs/route.d.cts +11 -11
- package/dist/cjs/routeInfo.d.cts +6 -13
- package/dist/cjs/router.cjs +16 -8
- package/dist/cjs/router.cjs.map +1 -1
- package/dist/cjs/router.d.cts +8 -2
- package/dist/cjs/useLoaderData.cjs.map +1 -1
- package/dist/cjs/useLoaderData.d.cts +3 -2
- package/dist/cjs/useMatch.cjs.map +1 -1
- package/dist/cjs/useMatch.d.cts +3 -2
- package/dist/cjs/useParams.cjs.map +1 -1
- package/dist/cjs/useParams.d.cts +4 -3
- package/dist/cjs/useRouteContext.cjs.map +1 -1
- package/dist/cjs/useRouteContext.d.cts +5 -4
- package/dist/cjs/useSearch.cjs.map +1 -1
- package/dist/cjs/useSearch.d.cts +3 -2
- package/dist/cjs/utils.cjs.map +1 -1
- package/dist/cjs/utils.d.cts +12 -9
- package/dist/esm/Matches.d.ts +5 -8
- package/dist/esm/Matches.js.map +1 -1
- package/dist/esm/RouterProvider.d.ts +3 -1
- package/dist/esm/RouterProvider.js.map +1 -1
- package/dist/esm/Transitioner.js +1 -0
- package/dist/esm/Transitioner.js.map +1 -1
- package/dist/esm/fileRoute.d.ts +2 -2
- package/dist/esm/fileRoute.js.map +1 -1
- package/dist/esm/route.d.ts +11 -11
- package/dist/esm/route.js.map +1 -1
- package/dist/esm/routeInfo.d.ts +6 -13
- package/dist/esm/router.d.ts +8 -2
- package/dist/esm/router.js +16 -8
- package/dist/esm/router.js.map +1 -1
- package/dist/esm/useLoaderData.d.ts +3 -2
- package/dist/esm/useLoaderData.js.map +1 -1
- package/dist/esm/useMatch.d.ts +3 -2
- package/dist/esm/useMatch.js.map +1 -1
- package/dist/esm/useParams.d.ts +4 -3
- package/dist/esm/useParams.js.map +1 -1
- package/dist/esm/useRouteContext.d.ts +5 -4
- package/dist/esm/useRouteContext.js.map +1 -1
- package/dist/esm/useSearch.d.ts +3 -2
- package/dist/esm/useSearch.js.map +1 -1
- package/dist/esm/utils.d.ts +12 -9
- package/dist/esm/utils.js.map +1 -1
- package/package.json +1 -1
- package/src/Matches.tsx +21 -27
- package/src/RouterProvider.tsx +3 -1
- package/src/Transitioner.tsx +1 -6
- package/src/fileRoute.ts +1 -1
- package/src/route.ts +13 -17
- package/src/routeInfo.ts +17 -23
- package/src/router.ts +26 -12
- package/src/useLoaderData.tsx +18 -9
- package/src/useMatch.tsx +12 -7
- package/src/useParams.tsx +14 -10
- package/src/useRouteContext.ts +16 -6
- package/src/useSearch.tsx +15 -10
- package/src/utils.ts +40 -18
package/dist/cjs/route.d.cts
CHANGED
|
@@ -30,9 +30,9 @@ export type RoutePathOptions<TCustomId, TPath> = {
|
|
|
30
30
|
export interface StaticDataRouteOption {
|
|
31
31
|
}
|
|
32
32
|
export type RoutePathOptionsIntersection<TCustomId, TPath> = UnionToIntersection<RoutePathOptions<TCustomId, TPath>>;
|
|
33
|
-
export type RouteOptions<TParentRoute extends AnyRoute = AnyRoute, TCustomId extends string = string, TPath extends string = string, TSearchSchemaInput = {}, TSearchSchema = {}, TSearchSchemaUsed = {}, TFullSearchSchemaInput = TSearchSchemaUsed, TFullSearchSchema = TSearchSchema, TParams = AnyPathParams, TAllParams = TParams, TRouteContextReturn = RouteContext, TRouteContext = RouteContext, TRouterContext = AnyContext, TAllContext = AnyContext, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn =
|
|
33
|
+
export type RouteOptions<TParentRoute extends AnyRoute = AnyRoute, TCustomId extends string = string, TPath extends string = string, TSearchSchemaInput = {}, TSearchSchema = {}, TSearchSchemaUsed = {}, TFullSearchSchemaInput = TSearchSchemaUsed, TFullSearchSchema = TSearchSchema, TParams = AnyPathParams, TAllParams = TParams, TRouteContextReturn = RouteContext, TRouteContext = RouteContext, TRouterContext = AnyContext, TAllContext = AnyContext, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = {}, TLoaderData = ResolveLoaderData<TLoaderDataReturn>> = BaseRouteOptions<TParentRoute, TCustomId, TPath, TSearchSchemaInput, TSearchSchema, TSearchSchemaUsed, TFullSearchSchemaInput, TFullSearchSchema, TParams, TAllParams, TRouteContextReturn, TRouteContext, TRouterContext, TAllContext, TLoaderDeps, TLoaderDataReturn> & UpdatableRouteOptions<NoInfer<TCustomId>, NoInfer<TAllParams>, NoInfer<TFullSearchSchema>, NoInfer<TLoaderData>, NoInfer<TAllContext>, NoInfer<TRouteContext>, NoInfer<TLoaderDeps>>;
|
|
34
34
|
export type ParamsFallback<TPath extends string, TParams> = unknown extends TParams ? Record<ParsePathParams<TPath>, string> : TParams;
|
|
35
|
-
export type FileBaseRouteOptions<TParentRoute extends AnyRoute = AnyRoute, TPath extends string = string, TSearchSchemaInput = {}, TSearchSchema = {}, TFullSearchSchema = TSearchSchema, TParams = {}, TAllParams = ParamsFallback<TPath, TParams>, TRouteContextReturn = RouteContext, TRouteContext = RouteContext, TRouterContext = AnyContext, TAllContext = AnyContext, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn =
|
|
35
|
+
export type FileBaseRouteOptions<TParentRoute extends AnyRoute = AnyRoute, TPath extends string = string, TSearchSchemaInput = {}, TSearchSchema = {}, TFullSearchSchema = TSearchSchema, TParams = {}, TAllParams = ParamsFallback<TPath, TParams>, TRouteContextReturn = RouteContext, TRouteContext = RouteContext, TRouterContext = AnyContext, TAllContext = AnyContext, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = {}> = {
|
|
36
36
|
validateSearch?: SearchSchemaValidator<TSearchSchemaInput, TSearchSchema>;
|
|
37
37
|
shouldReload?: boolean | ((match: LoaderFnContext<TAllParams, TFullSearchSchema, TAllContext, TRouteContext>) => any);
|
|
38
38
|
beforeLoad?: BeforeLoadFn<TFullSearchSchema, TParentRoute, TAllParams, TRouteContextReturn, TRouterContext>;
|
|
@@ -47,7 +47,7 @@ export type FileBaseRouteOptions<TParentRoute extends AnyRoute = AnyRoute, TPath
|
|
|
47
47
|
stringifyParams?: never;
|
|
48
48
|
parseParams?: never;
|
|
49
49
|
});
|
|
50
|
-
export type BaseRouteOptions<TParentRoute extends AnyRoute = AnyRoute, TCustomId extends string = string, TPath extends string = string, TSearchSchemaInput = {}, TSearchSchema = {}, TSearchSchemaUsed = {}, TFullSearchSchemaInput = TSearchSchemaUsed, TFullSearchSchema = TSearchSchema, TParams = {}, TAllParams = ParamsFallback<TPath, TParams>, TRouteContextReturn = RouteContext, TRouteContext = RouteContext, TRouterContext = AnyContext, TAllContext = AnyContext, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn =
|
|
50
|
+
export type BaseRouteOptions<TParentRoute extends AnyRoute = AnyRoute, TCustomId extends string = string, TPath extends string = string, TSearchSchemaInput = {}, TSearchSchema = {}, TSearchSchemaUsed = {}, TFullSearchSchemaInput = TSearchSchemaUsed, TFullSearchSchema = TSearchSchema, TParams = {}, TAllParams = ParamsFallback<TPath, TParams>, TRouteContextReturn = RouteContext, TRouteContext = RouteContext, TRouterContext = AnyContext, TAllContext = AnyContext, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = {}> = RoutePathOptions<TCustomId, TPath> & FileBaseRouteOptions<TParentRoute, TPath, TSearchSchemaInput, TSearchSchema, TFullSearchSchema, TParams, TAllParams, TRouteContextReturn, TRouteContext, TRouterContext, TAllContext, TLoaderDeps, TLoaderDataReturn> & {
|
|
51
51
|
getParentRoute: () => TParentRoute;
|
|
52
52
|
};
|
|
53
53
|
type BeforeLoadFn<in out TFullSearchSchema, in out TParentRoute extends AnyRoute, in out TAllParams, TRouteContextReturn, in out TRouterContext = AnyContext, in out TContext = IsAny<TParentRoute['types']['allContext'], TRouterContext>> = (opts: {
|
|
@@ -135,7 +135,7 @@ export type SearchSchemaValidatorObj<TInput, TReturn> = {
|
|
|
135
135
|
parse?: SearchSchemaValidatorFn<TInput, TReturn>;
|
|
136
136
|
};
|
|
137
137
|
export type SearchSchemaValidatorFn<TInput, TReturn> = (searchObj: TInput) => TReturn;
|
|
138
|
-
export type RouteLoaderFn<in out TAllParams = {}, in out TLoaderDeps extends Record<string, any> = {}, in out TAllContext = AnyContext, in out TRouteContext = AnyContext, TLoaderData =
|
|
138
|
+
export type RouteLoaderFn<in out TAllParams = {}, in out TLoaderDeps extends Record<string, any> = {}, in out TAllContext = AnyContext, in out TRouteContext = AnyContext, TLoaderData = undefined> = (match: LoaderFnContext<TAllParams, TLoaderDeps, TAllContext, TRouteContext>) => Promise<TLoaderData> | TLoaderData;
|
|
139
139
|
export interface LoaderFnContext<in out TAllParams = {}, in out TLoaderDeps = {}, in out TAllContext = AnyContext, in out TRouteContext = AnyContext> {
|
|
140
140
|
abortController: AbortController;
|
|
141
141
|
preload: boolean;
|
|
@@ -226,7 +226,7 @@ export declare class RouteApi<TId extends RouteIds<RegisteredRouter['routeTree']
|
|
|
226
226
|
useNavigate: () => UseNavigateResult<TRoute['fullPath']>;
|
|
227
227
|
notFound: (opts?: NotFoundError) => NotFoundError;
|
|
228
228
|
}
|
|
229
|
-
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 TSearchSchemaInput = {}, in out TSearchSchema = {}, in out TSearchSchemaUsed = ResolveSearchSchemaUsed<TSearchSchemaInput, TSearchSchema>, in out TFullSearchSchemaInput = ResolveFullSearchSchemaInput<TParentRoute, TSearchSchemaUsed>, in out TFullSearchSchema = ResolveFullSearchSchema<TParentRoute, TSearchSchema>, in out TParams = Record<ParsePathParams<TPath>, string>, in out TAllParams = ResolveAllParams<TParentRoute, TParams>, TRouteContextReturn = RouteContext, in out TRouteContext = ResolveRouteContext<TRouteContextReturn>, in out TAllContext = Assign<IsAny<TParentRoute['types']['allContext'], {}>, TRouteContext>, in out TRouterContext = AnyContext, in out TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn =
|
|
229
|
+
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 TSearchSchemaInput = {}, in out TSearchSchema = {}, in out TSearchSchemaUsed = ResolveSearchSchemaUsed<TSearchSchemaInput, TSearchSchema>, in out TFullSearchSchemaInput = ResolveFullSearchSchemaInput<TParentRoute, TSearchSchemaUsed>, in out TFullSearchSchema = ResolveFullSearchSchema<TParentRoute, TSearchSchema>, in out TParams = Record<ParsePathParams<TPath>, string>, in out TAllParams = ResolveAllParams<TParentRoute, TParams>, TRouteContextReturn = RouteContext, in out TRouteContext = ResolveRouteContext<TRouteContextReturn>, in out TAllContext = Assign<IsAny<TParentRoute['types']['allContext'], {}>, TRouteContext>, in out TRouterContext = AnyContext, in out TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = {}, in out TLoaderData = ResolveLoaderData<TLoaderDataReturn>, in out TChildren = unknown> {
|
|
230
230
|
isRoot: TParentRoute extends Route<any> ? true : false;
|
|
231
231
|
options: RouteOptions<TParentRoute, TCustomId, TPath, TSearchSchemaInput, TSearchSchema, TSearchSchemaUsed, TFullSearchSchemaInput, TFullSearchSchema, TParams, TAllParams, TRouteContextReturn, TRouteContext, TRouterContext, TAllContext, TLoaderDeps, TLoaderDataReturn, TLoaderData>;
|
|
232
232
|
parentRoute: TParentRoute;
|
|
@@ -293,9 +293,9 @@ export declare class Route<in out TParentRoute extends RouteConstraints['TParent
|
|
|
293
293
|
}) => TSelected;
|
|
294
294
|
useNavigate: () => UseNavigateResult<string>;
|
|
295
295
|
}
|
|
296
|
-
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>, TSearchSchemaInput = {}, TSearchSchema = {}, TSearchSchemaUsed = ResolveSearchSchemaUsed<TSearchSchemaInput, TSearchSchema>, TFullSearchSchemaInput = ResolveFullSearchSchemaInput<TParentRoute, TSearchSchemaUsed>, TFullSearchSchema = ResolveFullSearchSchema<TParentRoute, TSearchSchema>, TParams = Record<ParsePathParams<TPath>, string>, TAllParams = ResolveAllParams<TParentRoute, TParams>, TRouteContextReturn = RouteContext, TRouteContext = ResolveRouteContext<TRouteContextReturn>, TAllContext = Assign<IsAny<TParentRoute['types']['allContext'], {}>, TRouteContext>, TRouterContext = AnyContext, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn =
|
|
296
|
+
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>, TSearchSchemaInput = {}, TSearchSchema = {}, TSearchSchemaUsed = ResolveSearchSchemaUsed<TSearchSchemaInput, TSearchSchema>, TFullSearchSchemaInput = ResolveFullSearchSchemaInput<TParentRoute, TSearchSchemaUsed>, TFullSearchSchema = ResolveFullSearchSchema<TParentRoute, TSearchSchema>, TParams = Record<ParsePathParams<TPath>, string>, TAllParams = ResolveAllParams<TParentRoute, TParams>, TRouteContextReturn = RouteContext, TRouteContext = ResolveRouteContext<TRouteContextReturn>, TAllContext = Assign<IsAny<TParentRoute['types']['allContext'], {}>, TRouteContext>, TRouterContext = AnyContext, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = {}, TLoaderData = ResolveLoaderData<TLoaderDataReturn>, TChildren = unknown>(options: RouteOptions<TParentRoute, TCustomId, TPath, TSearchSchemaInput, TSearchSchema, TSearchSchemaUsed, TFullSearchSchemaInput, TFullSearchSchema, TParams, TAllParams, TRouteContextReturn, TRouteContext, TRouterContext, TAllContext, TLoaderDeps, TLoaderDataReturn, TLoaderData>): Route<TParentRoute, TPath, TFullPath, TCustomId, TId, TSearchSchemaInput, TSearchSchema, TSearchSchemaUsed, TFullSearchSchemaInput, TFullSearchSchema, TParams, TAllParams, TRouteContextReturn, TRouteContext, TAllContext, TRouterContext, TLoaderDeps, TLoaderDataReturn, TLoaderData, TChildren>;
|
|
297
297
|
export type AnyRootRoute = RootRoute<any, any, any, any, any, any, any, any>;
|
|
298
|
-
export type RootRouteOptions<TSearchSchemaInput = RootSearchSchema, TSearchSchema = RootSearchSchema, TSearchSchemaUsed = RootSearchSchema, TRouteContextReturn = RouteContext, TRouteContext = ResolveRouteContext<TRouteContextReturn>, TRouterContext = {}, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn =
|
|
298
|
+
export type RootRouteOptions<TSearchSchemaInput = RootSearchSchema, TSearchSchema = RootSearchSchema, TSearchSchemaUsed = RootSearchSchema, TRouteContextReturn = RouteContext, TRouteContext = ResolveRouteContext<TRouteContextReturn>, TRouterContext = {}, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = {}, TLoaderData = ResolveLoaderData<TLoaderDataReturn>> = Omit<RouteOptions<any, // TParentRoute
|
|
299
299
|
RootRouteId, // TCustomId
|
|
300
300
|
'', // TPath
|
|
301
301
|
TSearchSchemaInput, // TSearchSchemaInput
|
|
@@ -309,7 +309,7 @@ TRouteContext, // TRouteContext
|
|
|
309
309
|
TRouterContext, Assign<TRouterContext, TRouteContext>, // TAllContext
|
|
310
310
|
TLoaderDeps, TLoaderDataReturn, // TLoaderDataReturn,
|
|
311
311
|
TLoaderData>, 'path' | 'id' | 'getParentRoute' | 'caseSensitive' | 'parseParams' | 'stringifyParams'>;
|
|
312
|
-
export declare function createRootRouteWithContext<TRouterContext extends {}>(): <TSearchSchemaInput extends Record<string, any> = RootSearchSchema, TSearchSchema extends Record<string, any> = RootSearchSchema, TSearchSchemaUsed extends Record<string, any> = RootSearchSchema, TRouteContextReturn extends RouteContext = RouteContext, TRouteContext extends RouteContext = [TRouteContextReturn] extends [never] ? RouteContext : TRouteContextReturn, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn =
|
|
312
|
+
export declare function createRootRouteWithContext<TRouterContext extends {}>(): <TSearchSchemaInput extends Record<string, any> = RootSearchSchema, TSearchSchema extends Record<string, any> = RootSearchSchema, TSearchSchemaUsed extends Record<string, any> = RootSearchSchema, TRouteContextReturn extends RouteContext = RouteContext, TRouteContext extends RouteContext = [TRouteContextReturn] extends [never] ? RouteContext : TRouteContextReturn, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = {}, TLoaderData = ResolveLoaderData<TLoaderDataReturn>>(options?: RootRouteOptions<TSearchSchemaInput, TSearchSchema, TSearchSchemaUsed, TRouteContextReturn, TRouteContext, TRouterContext, TLoaderDeps, TLoaderDataReturn, TLoaderData>) => RootRoute<TSearchSchemaInput, TSearchSchema, TSearchSchemaUsed, TRouteContextReturn, TRouteContext, TRouterContext, TLoaderDeps, TLoaderData, ResolveLoaderData<TLoaderData>>;
|
|
313
313
|
/**
|
|
314
314
|
* @deprecated Use the `createRootRouteWithContext` function instead.
|
|
315
315
|
*/
|
|
@@ -317,7 +317,7 @@ export declare const rootRouteWithContext: typeof createRootRouteWithContext;
|
|
|
317
317
|
export type RootSearchSchema = {
|
|
318
318
|
__TRootSearchSchema__: '__TRootSearchSchema__';
|
|
319
319
|
};
|
|
320
|
-
export declare class RootRoute<in out TSearchSchemaInput = RootSearchSchema, in out TSearchSchema = RootSearchSchema, in out TSearchSchemaUsed = RootSearchSchema, TRouteContextReturn = RouteContext, in out TRouteContext = ResolveRouteContext<TRouteContextReturn>, in out TRouterContext = {}, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn =
|
|
320
|
+
export declare class RootRoute<in out TSearchSchemaInput = RootSearchSchema, in out TSearchSchema = RootSearchSchema, in out TSearchSchemaUsed = RootSearchSchema, TRouteContextReturn = RouteContext, in out TRouteContext = ResolveRouteContext<TRouteContextReturn>, in out TRouterContext = {}, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = {}, in out TLoaderData = ResolveLoaderData<TLoaderDataReturn>> extends Route<any, // TParentRoute
|
|
321
321
|
'/', // TPath
|
|
322
322
|
'/', // TFullPath
|
|
323
323
|
string, // TCustomId
|
|
@@ -338,7 +338,7 @@ TLoaderDeps, TLoaderDataReturn, TLoaderData, any> {
|
|
|
338
338
|
*/
|
|
339
339
|
constructor(options?: RootRouteOptions<TSearchSchemaInput, TSearchSchema, TSearchSchemaUsed, TRouteContextReturn, TRouteContext, TRouterContext, TLoaderDeps, TLoaderDataReturn, TLoaderData>);
|
|
340
340
|
}
|
|
341
|
-
export declare function createRootRoute<TSearchSchemaInput = RootSearchSchema, TSearchSchema = RootSearchSchema, TSearchSchemaUsed = RootSearchSchema, TRouteContextReturn = RouteContext, TRouteContext = ResolveRouteContext<TRouteContextReturn>, TRouterContext = {}, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn =
|
|
341
|
+
export declare function createRootRoute<TSearchSchemaInput = RootSearchSchema, TSearchSchema = RootSearchSchema, TSearchSchemaUsed = RootSearchSchema, TRouteContextReturn = RouteContext, TRouteContext = ResolveRouteContext<TRouteContextReturn>, TRouterContext = {}, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = {}, TLoaderData = ResolveLoaderData<TLoaderDataReturn>>(options?: Omit<RouteOptions<any, // TParentRoute
|
|
342
342
|
RootRouteId, // TCustomId
|
|
343
343
|
'', // TPath
|
|
344
344
|
TSearchSchemaInput, // TSearchSchemaInput
|
|
@@ -397,7 +397,7 @@ export type AsyncRouteComponent<TProps> = SyncRouteComponent<TProps> & {
|
|
|
397
397
|
export type RouteComponent<TProps = any> = AsyncRouteComponent<TProps>;
|
|
398
398
|
export type ErrorRouteComponent = RouteComponent<ErrorComponentProps>;
|
|
399
399
|
export type NotFoundRouteComponent = SyncRouteComponent<NotFoundRouteProps>;
|
|
400
|
-
export declare class NotFoundRoute<TParentRoute extends AnyRootRoute, TSearchSchemaInput extends Record<string, any> = {}, TSearchSchema = {}, TSearchSchemaUsed = {}, TFullSearchSchemaInput = ResolveFullSearchSchemaInput<TParentRoute, TSearchSchemaUsed>, TFullSearchSchema = ResolveFullSearchSchema<TParentRoute, TSearchSchema>, TRouteContextReturn = AnyContext, TRouteContext = RouteContext, TAllContext = Assign<IsAny<TParentRoute['types']['allContext'], {}>, TRouteContext>, TRouterContext = AnyContext, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn =
|
|
400
|
+
export declare class NotFoundRoute<TParentRoute extends AnyRootRoute, TSearchSchemaInput extends Record<string, any> = {}, TSearchSchema = {}, TSearchSchemaUsed = {}, TFullSearchSchemaInput = ResolveFullSearchSchemaInput<TParentRoute, TSearchSchemaUsed>, TFullSearchSchema = ResolveFullSearchSchema<TParentRoute, TSearchSchema>, TRouteContextReturn = AnyContext, TRouteContext = RouteContext, TAllContext = Assign<IsAny<TParentRoute['types']['allContext'], {}>, TRouteContext>, TRouterContext = AnyContext, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = {}, TLoaderData = ResolveLoaderData<TLoaderDataReturn>, TChildren = unknown> extends Route<TParentRoute, '/404', '/404', '404', '404', TSearchSchemaInput, TSearchSchema, TSearchSchemaUsed, TFullSearchSchemaInput, TFullSearchSchema, {}, {}, TRouteContextReturn, TRouteContext, TAllContext, TRouterContext, TLoaderDeps, TLoaderDataReturn, TLoaderData, TChildren> {
|
|
401
401
|
constructor(options: Omit<RouteOptions<TParentRoute, string, string, TSearchSchemaInput, TSearchSchema, TSearchSchemaUsed, TFullSearchSchemaInput, TFullSearchSchema, {}, {}, TRouteContextReturn, TRouteContext, TRouterContext, TAllContext, TLoaderDeps, TLoaderDataReturn, TLoaderData>, 'caseSensitive' | 'parseParams' | 'stringifyParams' | 'path' | 'id'>);
|
|
402
402
|
}
|
|
403
403
|
export {};
|
package/dist/cjs/routeInfo.d.cts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { AnyRoute } from './route.cjs';
|
|
1
|
+
import { AnyRoute, RootSearchSchema } from './route.cjs';
|
|
2
2
|
import { AnyRouter, TrailingSlashOption } from './router.cjs';
|
|
3
|
-
import {
|
|
3
|
+
import { Expand, MergeUnion } from './utils.cjs';
|
|
4
4
|
|
|
5
5
|
export type ParseRoute<TRouteTree, TAcc = TRouteTree> = TRouteTree extends {
|
|
6
6
|
types: {
|
|
@@ -34,14 +34,7 @@ export type RoutesByToPath<TRouter extends AnyRouter> = {
|
|
|
34
34
|
[TRoute in ParseRouteWithoutBranches<TRouter['routeTree']> as RouteToByRouter<TRouter, TRoute>]: TRoute;
|
|
35
35
|
};
|
|
36
36
|
export type RouteByToPath<TRouter extends AnyRouter, TTo> = Extract<RoutesByToPath<TRouter>[TTo], AnyRoute>;
|
|
37
|
-
type
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
type
|
|
41
|
-
type Reduce<TValue extends Array<any>, TResult = unknown> = TValue extends [
|
|
42
|
-
infer First,
|
|
43
|
-
...infer Rest
|
|
44
|
-
] ? Reduce<Rest, Reducer<TResult, First>> : TResult;
|
|
45
|
-
export type FullSearchSchema<TRouteTree extends AnyRoute> = Partial<Reduce<UnionToTuple<ParseRoute<TRouteTree>['types']['fullSearchSchema']>>>;
|
|
46
|
-
export type AllParams<TRouteTree extends AnyRoute> = UnionToIntersection<ParseRoute<TRouteTree>['types']['allParams']>;
|
|
47
|
-
export {};
|
|
37
|
+
export type FullSearchSchema<TRouteTree extends AnyRoute> = Expand<MergeUnion<Exclude<ParseRoute<TRouteTree>['types']['searchSchema'], RootSearchSchema>>>;
|
|
38
|
+
export type AllParams<TRouteTree extends AnyRoute> = Expand<MergeUnion<ParseRoute<TRouteTree>['types']['params']>>;
|
|
39
|
+
export type AllContext<TRouteTree extends AnyRoute> = Expand<MergeUnion<ParseRoute<TRouteTree>['types']['allContext']>>;
|
|
40
|
+
export type AllLoaderData<TRouteTree extends AnyRoute> = Expand<MergeUnion<ParseRoute<TRouteTree>['types']['loaderData']>>;
|
package/dist/cjs/router.cjs
CHANGED
|
@@ -567,7 +567,7 @@ class Router {
|
|
|
567
567
|
resetScroll
|
|
568
568
|
});
|
|
569
569
|
};
|
|
570
|
-
this.navigate = ({ from, to, ...rest }) => {
|
|
570
|
+
this.navigate = ({ from, to, __isRedirect, ...rest }) => {
|
|
571
571
|
const toString = String(to);
|
|
572
572
|
let isExternal;
|
|
573
573
|
try {
|
|
@@ -601,12 +601,6 @@ class Router {
|
|
|
601
601
|
const prevLocation = this.state.resolvedLocation;
|
|
602
602
|
const pathDidChange = prevLocation.href !== next.href;
|
|
603
603
|
this.cancelMatches();
|
|
604
|
-
this.emit({
|
|
605
|
-
type: "onBeforeLoad",
|
|
606
|
-
fromLocation: prevLocation,
|
|
607
|
-
toLocation: next,
|
|
608
|
-
pathChanged: pathDidChange
|
|
609
|
-
});
|
|
610
604
|
let pendingMatches;
|
|
611
605
|
this.__store.batch(() => {
|
|
612
606
|
pendingMatches = this.matchRoutes(next.pathname, next.search);
|
|
@@ -622,6 +616,20 @@ class Router {
|
|
|
622
616
|
})
|
|
623
617
|
}));
|
|
624
618
|
});
|
|
619
|
+
if (!this.state.redirect) {
|
|
620
|
+
this.emit({
|
|
621
|
+
type: "onBeforeNavigate",
|
|
622
|
+
fromLocation: prevLocation,
|
|
623
|
+
toLocation: next,
|
|
624
|
+
pathChanged: pathDidChange
|
|
625
|
+
});
|
|
626
|
+
}
|
|
627
|
+
this.emit({
|
|
628
|
+
type: "onBeforeLoad",
|
|
629
|
+
fromLocation: prevLocation,
|
|
630
|
+
toLocation: next,
|
|
631
|
+
pathChanged: pathDidChange
|
|
632
|
+
});
|
|
625
633
|
await this.loadMatches({
|
|
626
634
|
matches: pendingMatches,
|
|
627
635
|
location: next,
|
|
@@ -674,7 +682,7 @@ class Router {
|
|
|
674
682
|
if (redirects.isResolvedRedirect(err)) {
|
|
675
683
|
redirect = err;
|
|
676
684
|
if (!this.isServer) {
|
|
677
|
-
this.navigate({ ...err, replace: true });
|
|
685
|
+
this.navigate({ ...err, replace: true, __isRedirect: true });
|
|
678
686
|
this.load();
|
|
679
687
|
}
|
|
680
688
|
} else if (notFound.isNotFound(err)) {
|