Socket
Socket
Sign inDemoInstall

@tanstack/react-router

Package Overview
Dependencies
Maintainers
2
Versions
583
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@tanstack/react-router - npm Package Compare versions

Comparing version 1.34.5 to 1.34.6

4

dist/esm/fileRoute.d.ts

@@ -11,3 +11,3 @@ import { ParsePathParams } from './link.js';

}
export declare function createFileRoute<TFilePath extends keyof FileRoutesByPath, TParentRoute extends AnyRoute = FileRoutesByPath[TFilePath]['parentRoute'], TId extends RouteConstraints['TId'] = FileRoutesByPath[TFilePath]['id'], TPath extends RouteConstraints['TPath'] = FileRoutesByPath[TFilePath]['path'], TFullPath extends RouteConstraints['TFullPath'] = FileRoutesByPath[TFilePath]['fullPath']>(path: TFilePath): <TSearchSchemaInput = {}, TSearchSchema = {}, TSearchSchemaUsed = ResolveSearchSchemaUsed<TSearchSchemaInput, TSearchSchema>, TFullSearchSchemaInput = ResolveFullSearchSchemaInput<TParentRoute, TSearchSchemaUsed>, TFullSearchSchema = ResolveFullSearchSchema<TParentRoute, TSearchSchema>, TParams = Record<ParsePathParams<TPath, never>, string>, TAllParams = ResolveAllParamsFromParent<TParentRoute, TParams>, TRouteContextReturn = RouteContext, TRouteContext = ResolveRouteContext<TRouteContextReturn>, TAllContext = Assign<IsAny<TParentRoute["types"]["allContext"], {}, TParentRoute["types"]["allContext"]>, TRouteContext>, TRouterContext = AnyContext, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = unknown, TLoaderData = ResolveLoaderData<TLoaderDataReturn>, TChildren = unknown>(options?: (FileBaseRouteOptions<TParentRoute, TPath, TSearchSchemaInput, TSearchSchema, TFullSearchSchema, TParams, TAllParams, TRouteContextReturn, TRouteContext, TRouterContext, TAllContext, TLoaderDeps, TLoaderDataReturn> & {
export declare function createFileRoute<TFilePath extends keyof FileRoutesByPath, TParentRoute extends AnyRoute = FileRoutesByPath[TFilePath]['parentRoute'], TId extends RouteConstraints['TId'] = FileRoutesByPath[TFilePath]['id'], TPath extends RouteConstraints['TPath'] = FileRoutesByPath[TFilePath]['path'], TFullPath extends RouteConstraints['TFullPath'] = FileRoutesByPath[TFilePath]['fullPath']>(path: TFilePath): <TSearchSchemaInput = {}, TSearchSchema = {}, TSearchSchemaUsed = ResolveSearchSchemaUsed<TSearchSchemaInput, TSearchSchema>, TFullSearchSchemaInput = ResolveFullSearchSchemaInput<TParentRoute, TSearchSchemaUsed>, TFullSearchSchema = ResolveFullSearchSchema<TParentRoute, TSearchSchema>, TParams = Record<ParsePathParams<TPath, never>, string>, TAllParams = ResolveAllParamsFromParent<TParentRoute, TParams>, TRouteContextReturn = RouteContext, TRouteContext = ResolveRouteContext<TRouteContextReturn>, TAllContext = Assign<IsAny<TParentRoute["types"]["allContext"], {}, TParentRoute["types"]["allContext"]>, TRouteContext>, TRouterContext = AnyContext, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = {}, TLoaderData = ResolveLoaderData<TLoaderDataReturn>, TChildren = unknown>(options?: (FileBaseRouteOptions<TParentRoute, TPath, TSearchSchemaInput, TSearchSchema, TFullSearchSchema, TParams, TAllParams, TRouteContextReturn, TRouteContext, TRouterContext, TAllContext, TLoaderDeps, TLoaderDataReturn> & {
caseSensitive?: boolean | undefined;

@@ -55,3 +55,3 @@ wrapInSuspense?: boolean | undefined;

});
createRoute: <TSearchSchemaInput = {}, TSearchSchema = {}, TSearchSchemaUsed = ResolveSearchSchemaUsed<TSearchSchemaInput, TSearchSchema>, TFullSearchSchemaInput = ResolveFullSearchSchemaInput<TParentRoute, TSearchSchemaUsed>, TFullSearchSchema = ResolveFullSearchSchema<TParentRoute, TSearchSchema>, TParams = Record<ParsePathParams<TPath>, string>, TAllParams = ResolveAllParamsFromParent<TParentRoute, TParams>, TRouteContextReturn = RouteContext, TRouteContext = ResolveRouteContext<TRouteContextReturn>, TAllContext = ResolveAllContext<TParentRoute, TRouteContext>, TRouterContext = AnyContext, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = unknown, TLoaderData = ResolveLoaderData<TLoaderDataReturn>, TChildren = unknown>(options?: FileBaseRouteOptions<TParentRoute, TPath, TSearchSchemaInput, TSearchSchema, TFullSearchSchema, TParams, TAllParams, TRouteContextReturn, TRouteContext, TRouterContext, TAllContext, TLoaderDeps, TLoaderDataReturn> & UpdatableRouteOptions<TId, TAllParams, TFullSearchSchema, TLoaderData, TAllContext, TRouteContext, TLoaderDeps>) => Route<TParentRoute, TPath, TFullPath, TFilePath, TId, TSearchSchemaInput, TSearchSchema, TSearchSchemaUsed, TFullSearchSchemaInput, TFullSearchSchema, TParams, TAllParams, TRouteContextReturn, TRouteContext, TAllContext, TRouterContext, TLoaderDeps, TLoaderDataReturn, TLoaderData, TChildren>;
createRoute: <TSearchSchemaInput = {}, TSearchSchema = {}, TSearchSchemaUsed = ResolveSearchSchemaUsed<TSearchSchemaInput, TSearchSchema>, TFullSearchSchemaInput = ResolveFullSearchSchemaInput<TParentRoute, TSearchSchemaUsed>, TFullSearchSchema = ResolveFullSearchSchema<TParentRoute, TSearchSchema>, TParams = Record<ParsePathParams<TPath>, string>, TAllParams = ResolveAllParamsFromParent<TParentRoute, TParams>, TRouteContextReturn = RouteContext, TRouteContext = ResolveRouteContext<TRouteContextReturn>, TAllContext = ResolveAllContext<TParentRoute, TRouteContext>, TRouterContext = AnyContext, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = {}, TLoaderData = ResolveLoaderData<TLoaderDataReturn>, TChildren = unknown>(options?: FileBaseRouteOptions<TParentRoute, TPath, TSearchSchemaInput, TSearchSchema, TFullSearchSchema, TParams, TAllParams, TRouteContextReturn, TRouteContext, TRouterContext, TAllContext, TLoaderDeps, TLoaderDataReturn> & UpdatableRouteOptions<TId, TAllParams, TFullSearchSchema, TLoaderData, TAllContext, TRouteContext, TLoaderDeps>) => Route<TParentRoute, TPath, TFullPath, TFilePath, TId, TSearchSchemaInput, TSearchSchema, TSearchSchemaUsed, TFullSearchSchemaInput, TFullSearchSchema, TParams, TAllParams, TRouteContextReturn, TRouteContext, TAllContext, TRouterContext, TLoaderDeps, TLoaderDataReturn, TLoaderData, TChildren>;
}

@@ -58,0 +58,0 @@ /**

import { AnyRouter, RegisteredRouter } from './router.js';
import { AnyRoute, ReactNode, StaticDataRouteOption } from './route.js';
import { ResolveRelativePath, ToOptions } from './link.js';
import { AllParams, FullSearchSchema, ParseRoute, RouteById, RouteByPath, RouteIds, RoutePaths } from './routeInfo.js';
import { AllContext, AllLoaderData, AllParams, FullSearchSchema, ParseRoute, RouteById, RouteByPath, RouteIds, RoutePaths } from './routeInfo.js';
import { ControlledPromise, DeepPartial, NoInfer } from './utils.js';

@@ -39,3 +39,3 @@ import * as React from 'react';

}
export type MakeRouteMatch<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TRouteId = ParseRoute<TRouteTree>['id'], TReturnIntersection extends boolean = false, TTypes extends AnyRoute['types'] = RouteById<TRouteTree, TRouteId>['types'], TAllParams = TReturnIntersection extends false ? TTypes['allParams'] : Partial<AllParams<TRouteTree>>, TFullSearchSchema = TReturnIntersection extends false ? TTypes['fullSearchSchema'] : Partial<FullSearchSchema<TRouteTree>>, TLoaderData = TTypes['loaderData'], TAllContext = TTypes['allContext'], TRouteContext = TTypes['routeContext'], TLoaderDeps = TTypes['loaderDeps']> = RouteMatch<TRouteId, TAllParams, TFullSearchSchema, TLoaderData, TAllContext, TRouteContext, TLoaderDeps>;
export type MakeRouteMatch<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TRouteId = ParseRoute<TRouteTree>['id'], TStrict extends boolean = true, TTypes extends AnyRoute['types'] = RouteById<TRouteTree, TRouteId>['types'], TAllParams = TStrict extends false ? AllParams<TRouteTree> : TTypes['allParams'], TFullSearchSchema = TStrict extends false ? FullSearchSchema<TRouteTree> : TTypes['fullSearchSchema'], TLoaderData = TStrict extends false ? AllLoaderData<TRouteTree> : TTypes['loaderData'], TAllContext = TStrict extends false ? AllContext<TRouteTree> : TTypes['allContext'], TRouteContext = TTypes['routeContext'], TLoaderDeps = TTypes['loaderDeps']> = RouteMatch<TRouteId, TAllParams, TFullSearchSchema, TLoaderData, TAllContext, TRouteContext, TLoaderDeps>;
export type AnyRouteMatch = RouteMatch<any, any, any, any, any, any, any>;

@@ -59,13 +59,10 @@ export declare function Matches(): React.JSX.Element;

export declare function MatchRoute<TRouter extends AnyRouter = RegisteredRouter, TFrom extends RoutePaths<TRouter['routeTree']> = RoutePaths<TRouter['routeTree']>, TTo extends string = '', TMaskFrom extends RoutePaths<TRouter['routeTree']> = TFrom, TMaskTo extends string = ''>(props: MakeMatchRouteOptions<TRouter, TFrom, TTo, TMaskFrom, TMaskTo>): any;
export declare function useMatches<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TRouteId extends RouteIds<TRouteTree> = ParseRoute<TRouteTree>['id'], TReturnIntersection extends boolean = false, TRouteMatch = MakeRouteMatch<TRouteTree, TRouteId, TReturnIntersection>, T = Array<TRouteMatch>>(opts?: {
export declare function useMatches<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TRouteId extends RouteIds<TRouteTree> = ParseRoute<TRouteTree>['id'], TRouteMatch = MakeRouteMatch<TRouteTree, TRouteId>, T = Array<TRouteMatch>>(opts?: {
select?: (matches: Array<TRouteMatch>) => T;
experimental_returnIntersection?: TReturnIntersection;
}): T;
export declare function useParentMatches<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TRouteId extends RouteIds<TRouteTree> = ParseRoute<TRouteTree>['id'], TReturnIntersection extends boolean = false, TRouteMatch = MakeRouteMatch<TRouteTree, TRouteId, TReturnIntersection>, T = Array<TRouteMatch>>(opts?: {
export declare function useParentMatches<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TRouteId extends RouteIds<TRouteTree> = ParseRoute<TRouteTree>['id'], TRouteMatch = MakeRouteMatch<TRouteTree, TRouteId>, T = Array<TRouteMatch>>(opts?: {
select?: (matches: Array<TRouteMatch>) => T;
experimental_returnIntersection?: TReturnIntersection;
}): T;
export declare function useChildMatches<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TRouteId extends RouteIds<TRouteTree> = ParseRoute<TRouteTree>['id'], TReturnIntersection extends boolean = false, TRouteMatch = MakeRouteMatch<TRouteTree, TRouteId, TReturnIntersection>, T = Array<TRouteMatch>>(opts?: {
export declare function useChildMatches<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TRouteId extends RouteIds<TRouteTree> = ParseRoute<TRouteTree>['id'], TRouteMatch = MakeRouteMatch<TRouteTree, TRouteId>, T = Array<TRouteMatch>>(opts?: {
select?: (matches: Array<TRouteMatch>) => T;
experimental_returnIntersection?: TReturnIntersection;
}): T;

@@ -72,0 +69,0 @@ export declare function isServerSideError(error: unknown): error is {

@@ -33,5 +33,5 @@ import { RootRouteId } from './root.js';

export type RoutePathOptionsIntersection<TCustomId, TPath> = UnionToIntersection<RoutePathOptions<TCustomId, TPath>>;
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 = unknown, TLoaderData = [TLoaderDataReturn] extends [never] ? undefined : 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>>;
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>>;
export type ParamsFallback<TPath extends string, TParams> = unknown extends TParams ? Record<ParsePathParams<TPath>, string> : TParams;
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 = unknown> = {
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 = {}> = {
validateSearch?: SearchSchemaValidator<TSearchSchemaInput, TSearchSchema>;

@@ -51,3 +51,3 @@ shouldReload?: boolean | ((match: LoaderFnContext<TAllParams, TFullSearchSchema, TAllContext, TRouteContext>) => any);

});
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 = unknown> = RoutePathOptions<TCustomId, TPath> & FileBaseRouteOptions<TParentRoute, TPath, TSearchSchemaInput, TSearchSchema, TFullSearchSchema, TParams, TAllParams, TRouteContextReturn, TRouteContext, TRouterContext, TAllContext, TLoaderDeps, TLoaderDataReturn> & {
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> & {
getParentRoute: () => TParentRoute;

@@ -140,3 +140,3 @@ };

export type SearchSchemaValidatorFn<TInput, TReturn> = (searchObj: TInput) => TReturn;
export type RouteLoaderFn<in out TAllParams = {}, in out TLoaderDeps extends Record<string, any> = {}, in out TAllContext = AnyContext, in out TRouteContext = AnyContext, TLoaderData = unknown> = (match: LoaderFnContext<TAllParams, TLoaderDeps, TAllContext, TRouteContext>) => Promise<TLoaderData> | TLoaderData;
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;
export interface LoaderFnContext<in out TAllParams = {}, in out TLoaderDeps = {}, in out TAllContext = AnyContext, in out TRouteContext = AnyContext> {

@@ -232,3 +232,3 @@ abortController: AbortController;

}
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 = unknown, in out TLoaderData = ResolveLoaderData<TLoaderDataReturn>, in out TChildren = unknown> {
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> {
isRoot: TParentRoute extends Route<any> ? true : false;

@@ -300,5 +300,5 @@ options: RouteOptions<TParentRoute, TCustomId, TPath, TSearchSchemaInput, TSearchSchema, TSearchSchemaUsed, TFullSearchSchemaInput, TFullSearchSchema, TParams, TAllParams, TRouteContextReturn, TRouteContext, TRouterContext, TAllContext, TLoaderDeps, TLoaderDataReturn, TLoaderData>;

}
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 = unknown, 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>;
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>;
export type AnyRootRoute = RootRoute<any, any, any, any, any, any, any, any>;
export type RootRouteOptions<TSearchSchemaInput = RootSearchSchema, TSearchSchema = RootSearchSchema, TSearchSchemaUsed = RootSearchSchema, TRouteContextReturn = RouteContext, TRouteContext = ResolveRouteContext<TRouteContextReturn>, TRouterContext = {}, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = unknown, TLoaderData = ResolveLoaderData<TLoaderDataReturn>> = Omit<RouteOptions<any, // TParentRoute
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
RootRouteId, // TCustomId

@@ -317,3 +317,3 @@ '', // TPath

TLoaderData>, 'path' | 'id' | 'getParentRoute' | 'caseSensitive' | 'parseParams' | 'stringifyParams'>;
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 = unknown, TLoaderData = [TLoaderDataReturn] extends [never] ? undefined : TLoaderDataReturn>(options?: RootRouteOptions<TSearchSchemaInput, TSearchSchema, TSearchSchemaUsed, TRouteContextReturn, TRouteContext, TRouterContext, TLoaderDeps, TLoaderDataReturn, TLoaderData>) => RootRoute<TSearchSchemaInput, TSearchSchema, TSearchSchemaUsed, TRouteContextReturn, TRouteContext, TRouterContext, TLoaderDeps, TLoaderData, ResolveLoaderData<TLoaderData>>;
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>>;
/**

@@ -326,3 +326,3 @@ * @deprecated Use the `createRootRouteWithContext` function instead.

};
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 = unknown, in out TLoaderData = ResolveLoaderData<TLoaderDataReturn>> extends Route<any, // TParentRoute
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
'/', // TPath

@@ -348,3 +348,3 @@ '/', // TFullPath

}
export declare function createRootRoute<TSearchSchemaInput = RootSearchSchema, TSearchSchema = RootSearchSchema, TSearchSchemaUsed = RootSearchSchema, TRouteContextReturn = RouteContext, TRouteContext = ResolveRouteContext<TRouteContextReturn>, TRouterContext = {}, TLoaderDeps extends Record<string, any> = {}, TLoaderDataReturn = unknown, TLoaderData = ResolveLoaderData<TLoaderDataReturn>>(options?: Omit<RouteOptions<any, // TParentRoute
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
RootRouteId, // TCustomId

@@ -408,5 +408,5 @@ '', // TPath

export type NotFoundRouteComponent = SyncRouteComponent<NotFoundRouteProps>;
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 = unknown, 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> {
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> {
constructor(options: Omit<RouteOptions<TParentRoute, string, string, TSearchSchemaInput, TSearchSchema, TSearchSchemaUsed, TFullSearchSchemaInput, TFullSearchSchema, {}, {}, TRouteContextReturn, TRouteContext, TRouterContext, TAllContext, TLoaderDeps, TLoaderDataReturn, TLoaderData>, 'caseSensitive' | 'parseParams' | 'stringifyParams' | 'path' | 'id'>);
}
export {};

@@ -1,4 +0,4 @@

import { AnyRoute } from './route.js';
import { AnyRoute, RootSearchSchema } from './route.js';
import { AnyRouter, TrailingSlashOption } from './router.js';
import { UnionToIntersection, UnionToTuple } from './utils.js';
import { Expand, MergeUnion } from './utils.js';

@@ -37,12 +37,5 @@ export type ParseRoute<TRouteTree, TAcc = TRouteTree> = TRouteTree extends {

export type RouteByToPath<TRouter extends AnyRouter, TTo> = Extract<RoutesByToPath<TRouter>[TTo], AnyRoute>;
type UnionizeCollisions<T, U> = {
[P in keyof T & keyof U]: T[P] extends U[P] ? T[P] : T[P] | U[P];
};
type Reducer<T, U, C = UnionizeCollisions<T, U>> = C & Omit<T, keyof C> & Omit<U, keyof C>;
type Reduce<TValue extends Array<any>, TResult = unknown> = TValue extends [
infer First,
...infer Rest
] ? Reduce<Rest, Reducer<TResult, First>> : TResult;
export type FullSearchSchema<TRouteTree extends AnyRoute> = Partial<Reduce<UnionToTuple<ParseRoute<TRouteTree>['types']['fullSearchSchema']>>>;
export type AllParams<TRouteTree extends AnyRoute> = UnionToIntersection<ParseRoute<TRouteTree>['types']['allParams']>;
export {};
export type FullSearchSchema<TRouteTree extends AnyRoute> = Expand<MergeUnion<Exclude<ParseRoute<TRouteTree>['types']['searchSchema'], RootSearchSchema>>>;
export type AllParams<TRouteTree extends AnyRoute> = Expand<MergeUnion<ParseRoute<TRouteTree>['types']['params']>>;
export type AllContext<TRouteTree extends AnyRoute> = Expand<MergeUnion<ParseRoute<TRouteTree>['types']['allContext']>>;
export type AllLoaderData<TRouteTree extends AnyRoute> = Expand<MergeUnion<ParseRoute<TRouteTree>['types']['loaderData']>>;

@@ -351,3 +351,3 @@ import { Store, NoInfer } from '@tanstack/react-store';

history: RouterHistory;
latestLocation: ParsedLocation;
latestLocation: ParsedLocation<FullSearchSchema<TRouteTree>>;
basepath: string;

@@ -370,3 +370,3 @@ routeTree: TRouteTree;

checkLatest: (promise: Promise<void>) => void;
parseLocation: (previousLocation?: ParsedLocation) => ParsedLocation<FullSearchSchema<TRouteTree>>;
parseLocation: (previousLocation?: ParsedLocation<FullSearchSchema<TRouteTree>>) => ParsedLocation<FullSearchSchema<TRouteTree>>;
resolvePathWithBase: (from: string, path: string) => string;

@@ -373,0 +373,0 @@ get looseRoutesById(): Record<string, AnyRoute>;

@@ -7,4 +7,5 @@ import { RegisteredRouter } from './router.js';

export declare function useLoaderData<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TFrom extends RouteIds<TRouteTree> = RouteIds<TRouteTree>, TRouteMatch extends MakeRouteMatch<TRouteTree, TFrom> = MakeRouteMatch<TRouteTree, TFrom>, TSelected = Required<TRouteMatch>['loaderData']>(opts: StrictOrFrom<TFrom> & {
export type UseLoaderDataOptions<TFrom, TStrict extends boolean, TRouteMatch, TSelected> = StrictOrFrom<TFrom, TStrict> & {
select?: (match: TRouteMatch) => TSelected;
}): TSelected;
};
export declare function useLoaderData<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TFrom extends RouteIds<TRouteTree> = RouteIds<TRouteTree>, TStrict extends boolean = true, TRouteMatch extends MakeRouteMatch<TRouteTree, TFrom, TStrict> = MakeRouteMatch<TRouteTree, TFrom, TStrict>, TSelected = Required<TRouteMatch>['loaderData']>(opts: UseLoaderDataOptions<TFrom, TStrict, TRouteMatch, TSelected>): TSelected;

@@ -7,4 +7,5 @@ import { RegisteredRouter } from './router.js';

export declare function useMatch<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TFrom extends RouteIds<TRouteTree> = RouteIds<TRouteTree>, TReturnIntersection extends boolean = false, TRouteMatch = MakeRouteMatch<TRouteTree, TFrom, TReturnIntersection>, TSelected = TRouteMatch>(opts: StrictOrFrom<TFrom, TReturnIntersection> & {
export type UseMatchOptions<TFrom, TStrict extends boolean, TRouteMatch, TSelected> = StrictOrFrom<TFrom, TStrict> & {
select?: (match: TRouteMatch) => TSelected;
}): TSelected;
};
export declare function useMatch<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TFrom extends RouteIds<TRouteTree> = RouteIds<TRouteTree>, TStrict extends boolean = true, TRouteMatch = MakeRouteMatch<TRouteTree, TFrom, TStrict>, TSelected = TRouteMatch>(opts: UseMatchOptions<TFrom, TStrict, TRouteMatch, TSelected>): TSelected;
import { AnyRoute } from './route.js';
import { AllParams, RouteById, RouteIds } from './routeInfo.js';
import { RegisteredRouter } from './router.js';
import { Expand, StrictOrFrom } from './utils.js';
import { StrictOrFrom } from './utils.js';
export declare function useParams<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TFrom extends RouteIds<TRouteTree> = RouteIds<TRouteTree>, TReturnIntersection extends boolean = false, TParams = TReturnIntersection extends false ? RouteById<TRouteTree, TFrom>['types']['allParams'] : Expand<Partial<AllParams<TRouteTree>>>, TSelected = TParams>(opts: StrictOrFrom<TFrom, TReturnIntersection> & {
export type UseParamsOptions<TFrom, TStrict extends boolean, TParams, TSelected> = StrictOrFrom<TFrom, TStrict> & {
select?: (params: TParams) => TSelected;
}): TSelected;
};
export declare function useParams<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TFrom extends RouteIds<TRouteTree> = RouteIds<TRouteTree>, TStrict extends boolean = true, TParams = TStrict extends false ? AllParams<TRouteTree> : RouteById<TRouteTree, TFrom>['types']['allParams'], TSelected = TParams>(opts: UseParamsOptions<TFrom, TStrict, TParams, TSelected>): TSelected;
import { AnyRoute } from './route.js';
import { RouteById, RouteIds } from './routeInfo.js';
import { AllContext, RouteById, RouteIds } from './routeInfo.js';
import { RegisteredRouter } from './router.js';
import { StrictOrFrom } from './utils.js';
import { Expand, StrictOrFrom } from './utils.js';
export declare function useRouteContext<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TFrom extends RouteIds<TRouteTree> = RouteIds<TRouteTree>, TRouteContext = RouteById<TRouteTree, TFrom>['types']['allContext'], TSelected = TRouteContext>(opts: StrictOrFrom<TFrom> & {
export type UseRouteContextOptions<TFrom, TStrict extends boolean, TRouteContext, TSelected> = StrictOrFrom<TFrom, TStrict> & {
select?: (search: TRouteContext) => TSelected;
}): TSelected;
};
export declare function useRouteContext<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TFrom extends RouteIds<TRouteTree> = RouteIds<TRouteTree>, TStrict extends boolean = true, TRouteContext = TStrict extends false ? AllContext<TRouteTree> : Expand<RouteById<TRouteTree, TFrom>['types']['allContext']>, TSelected = TRouteContext>(opts: UseRouteContextOptions<TFrom, TStrict, TRouteContext, TSelected>): TSelected;

@@ -6,4 +6,5 @@ import { AnyRoute, RootSearchSchema } from './route.js';

export declare function useSearch<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TFrom extends RouteIds<TRouteTree> = RouteIds<TRouteTree>, TReturnIntersection extends boolean = false, TSearch = TReturnIntersection extends false ? Exclude<RouteById<TRouteTree, TFrom>['types']['fullSearchSchema'], RootSearchSchema> : Partial<Omit<FullSearchSchema<TRouteTree>, keyof RootSearchSchema>>, TSelected = TSearch>(opts: StrictOrFrom<TFrom, TReturnIntersection> & {
export type UseSearchOptions<TFrom, TStrict extends boolean, TSearch, TSelected> = StrictOrFrom<TFrom, TStrict> & {
select?: (search: TSearch) => TSelected;
}): TSelected;
};
export declare function useSearch<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TFrom extends RouteIds<TRouteTree> = RouteIds<TRouteTree>, TStrict extends boolean = true, TSearch = TStrict extends false ? FullSearchSchema<TRouteTree> : Exclude<RouteById<TRouteTree, TFrom>['types']['fullSearchSchema'], RootSearchSchema>, TSelected = TSearch>(opts: UseSearchOptions<TFrom, TStrict, TSearch, TSelected>): TSelected;

@@ -24,4 +24,9 @@ import * as React from 'react';

export type NonNullableUpdater<TPrevious, TResult = TPrevious> = TResult | ((prev: TPrevious) => TResult);
type LastInUnion<T> = UnionToIntersection<T extends unknown ? (x: T) => 0 : never> extends (x: infer L) => 0 ? L : never;
export type UnionToTuple<T, TLast = LastInUnion<T>> = [T] extends [never] ? [] : [...UnionToTuple<Exclude<T, TLast>>, TLast];
export type MergeUnionObjects<TUnion> = TUnion extends MergeUnionPrimitive ? never : TUnion;
export type MergeUnionObject<TUnion> = MergeUnionObjects<TUnion> extends infer TObj ? {
[TKey in TObj extends any ? keyof TObj : never]?: TObj extends any ? TKey extends keyof TObj ? TObj[TKey] : never : never;
} : never;
export type MergeUnionPrimitive = ReadonlyArray<any> | number | string | bigint | boolean | symbol;
export type MergeUnionPrimitives<TUnion> = TUnion extends MergeUnionPrimitive ? TUnion : TUnion extends object ? never : TUnion;
export type MergeUnion<TUnion> = MergeUnionPrimitives<TUnion> | MergeUnionObject<MergeUnionObjects<TUnion>>;
export declare function last<T>(arr: Array<T>): T | undefined;

@@ -43,9 +48,8 @@ export declare function functionalUpdate<TResult>(updater: Updater<TResult> | NonNullableUpdater<TResult>, previous: TResult): TResult;

export type StringLiteral<T> = T extends string ? string extends T ? string : T : never;
export type StrictOrFrom<TFrom, TReturnIntersection extends boolean = false> = {
export type StrictOrFrom<TFrom, TStrict extends boolean = true> = TStrict extends false ? {
from?: never;
strict: TStrict;
} : {
from: StringLiteral<TFrom> | TFrom;
strict?: true;
} | {
from?: never;
strict: false;
experimental_returnIntersection?: TReturnIntersection;
strict?: TStrict;
};

@@ -70,2 +74,1 @@ export declare const useLayoutEffect: typeof React.useLayoutEffect;

export declare function usePrevious<T>(value: T): T | null;
export {};
{
"name": "@tanstack/react-router",
"version": "1.34.5",
"version": "1.34.6",
"description": "",

@@ -5,0 +5,0 @@ "author": "Tanner Linsley",

@@ -97,3 +97,3 @@ import warning from 'tiny-warning'

TLoaderDeps extends Record<string, any> = {},
TLoaderDataReturn = unknown,
TLoaderDataReturn = {},
TLoaderData = ResolveLoaderData<TLoaderDataReturn>,

@@ -100,0 +100,0 @@ TChildren = unknown,

@@ -74,6 +74,4 @@ import invariant from 'tiny-invariant'

TLoaderDeps extends Record<string, any> = {},
TLoaderDataReturn = unknown,
TLoaderData = [TLoaderDataReturn] extends [never]
? undefined
: TLoaderDataReturn,
TLoaderDataReturn = {},
TLoaderData = ResolveLoaderData<TLoaderDataReturn>,
> = BaseRouteOptions<

@@ -125,3 +123,3 @@ TParentRoute,

TLoaderDeps extends Record<string, any> = {},
TLoaderDataReturn = unknown,
TLoaderDataReturn = {},
> = {

@@ -192,3 +190,3 @@ validateSearch?: SearchSchemaValidator<TSearchSchemaInput, TSearchSchema>

TLoaderDeps extends Record<string, any> = {},
TLoaderDataReturn = unknown,
TLoaderDataReturn = {},
> = RoutePathOptions<TCustomId, TPath> &

@@ -350,3 +348,3 @@ FileBaseRouteOptions<

in out TRouteContext = AnyContext,
TLoaderData = unknown,
TLoaderData = undefined,
> = (

@@ -636,3 +634,3 @@ match: LoaderFnContext<TAllParams, TLoaderDeps, TAllContext, TRouteContext>,

in out TLoaderDeps extends Record<string, any> = {},
TLoaderDataReturn = unknown,
TLoaderDataReturn = {},
in out TLoaderData = ResolveLoaderData<TLoaderDataReturn>,

@@ -979,3 +977,3 @@ in out TChildren = unknown,

TLoaderDeps extends Record<string, any> = {},
TLoaderDataReturn = unknown,
TLoaderDataReturn = {},
TLoaderData = ResolveLoaderData<TLoaderDataReturn>,

@@ -1038,3 +1036,3 @@ TChildren = unknown,

TLoaderDeps extends Record<string, any> = {},
TLoaderDataReturn = unknown,
TLoaderDataReturn = {},
TLoaderData = ResolveLoaderData<TLoaderDataReturn>,

@@ -1079,6 +1077,4 @@ > = Omit<

TLoaderDeps extends Record<string, any> = {},
TLoaderDataReturn = unknown,
TLoaderData = [TLoaderDataReturn] extends [never]
? undefined
: TLoaderDataReturn,
TLoaderDataReturn = {},
TLoaderData = ResolveLoaderData<TLoaderDataReturn>,
>(

@@ -1127,3 +1123,3 @@ options?: RootRouteOptions<

TLoaderDeps extends Record<string, any> = {},
TLoaderDataReturn = unknown,
TLoaderDataReturn = {},
in out TLoaderData = ResolveLoaderData<TLoaderDataReturn>,

@@ -1180,3 +1176,3 @@ > extends Route<

TLoaderDeps extends Record<string, any> = {},
TLoaderDataReturn = unknown,
TLoaderDataReturn = {},
TLoaderData = ResolveLoaderData<TLoaderDataReturn>,

@@ -1339,3 +1335,3 @@ >(

TLoaderDeps extends Record<string, any> = {},
TLoaderDataReturn = unknown,
TLoaderDataReturn = {},
TLoaderData = ResolveLoaderData<TLoaderDataReturn>,

@@ -1342,0 +1338,0 @@ TChildren = unknown,

@@ -1,4 +0,4 @@

import type { AnyRoute } from './route'
import type { AnyRouter, Router, TrailingSlashOption } from './router'
import type { UnionToIntersection, UnionToTuple } from './utils'
import type { AnyRoute, RootSearchSchema } from './route'
import type { AnyRouter, TrailingSlashOption } from './router'
import type { Expand, MergeUnion } from './utils'

@@ -117,24 +117,18 @@ export type ParseRoute<TRouteTree, TAcc = TRouteTree> = TRouteTree extends {

// eslint-disable-next-line @typescript-eslint/naming-convention
type UnionizeCollisions<T, U> = {
[P in keyof T & keyof U]: T[P] extends U[P] ? T[P] : T[P] | U[P]
}
// eslint-disable-next-line @typescript-eslint/naming-convention
type Reducer<T, U, C = UnionizeCollisions<T, U>> = C &
Omit<T, keyof C> &
Omit<U, keyof C>
export type FullSearchSchema<TRouteTree extends AnyRoute> = Expand<
MergeUnion<
Exclude<ParseRoute<TRouteTree>['types']['searchSchema'], RootSearchSchema>
>
>
type Reduce<TValue extends Array<any>, TResult = unknown> = TValue extends [
infer First,
...infer Rest,
]
? Reduce<Rest, Reducer<TResult, First>>
: TResult
export type AllParams<TRouteTree extends AnyRoute> = Expand<
MergeUnion<ParseRoute<TRouteTree>['types']['params']>
>
export type FullSearchSchema<TRouteTree extends AnyRoute> = Partial<
Reduce<UnionToTuple<ParseRoute<TRouteTree>['types']['fullSearchSchema']>>
export type AllContext<TRouteTree extends AnyRoute> = Expand<
MergeUnion<ParseRoute<TRouteTree>['types']['allContext']>
>
export type AllParams<TRouteTree extends AnyRoute> = UnionToIntersection<
ParseRoute<TRouteTree>['types']['allParams']
export type AllLoaderData<TRouteTree extends AnyRoute> = Expand<
MergeUnion<ParseRoute<TRouteTree>['types']['loaderData']>
>
import { useMatch } from './useMatch'
import type { MakeRouteMatch } from './Matches'
import type { AnyRoute } from './route'
import type { RouteById, RouteIds } from './routeInfo'
import type { AllContext, RouteById, RouteIds } from './routeInfo'
import type { RegisteredRouter } from './router'
import type { StrictOrFrom } from './utils'
import type { Expand, StrictOrFrom } from './utils'
export type UseRouteContextOptions<
TFrom,
TStrict extends boolean,
TRouteContext,
TSelected,
> = StrictOrFrom<TFrom, TStrict> & {
select?: (search: TRouteContext) => TSelected
}
export function useRouteContext<
TRouteTree extends AnyRoute = RegisteredRouter['routeTree'],
TFrom extends RouteIds<TRouteTree> = RouteIds<TRouteTree>,
TRouteContext = RouteById<TRouteTree, TFrom>['types']['allContext'],
TStrict extends boolean = true,
TRouteContext = TStrict extends false
? AllContext<TRouteTree>
: Expand<RouteById<TRouteTree, TFrom>['types']['allContext']>,
TSelected = TRouteContext,
>(
opts: StrictOrFrom<TFrom> & {
select?: (search: TRouteContext) => TSelected
},
opts: UseRouteContextOptions<TFrom, TStrict, TRouteContext, TSelected>,
): TSelected {

@@ -18,0 +28,0 @@ return useMatch({

@@ -72,15 +72,35 @@ import * as React from 'react'

// from https://github.com/type-challenges/type-challenges/issues/737
type LastInUnion<T> =
UnionToIntersection<T extends unknown ? (x: T) => 0 : never> extends (
x: infer L,
) => 0
? L
export type MergeUnionObjects<TUnion> = TUnion extends MergeUnionPrimitive
? never
: TUnion
export type MergeUnionObject<TUnion> =
MergeUnionObjects<TUnion> extends infer TObj
? {
[TKey in TObj extends any ? keyof TObj : never]?: TObj extends any
? TKey extends keyof TObj
? TObj[TKey]
: never
: never
}
: never
export type UnionToTuple<T, TLast = LastInUnion<T>> = [T] extends [never]
? []
: [...UnionToTuple<Exclude<T, TLast>>, TLast]
//
export type MergeUnionPrimitive =
| ReadonlyArray<any>
| number
| string
| bigint
| boolean
| symbol
export type MergeUnionPrimitives<TUnion> = TUnion extends MergeUnionPrimitive
? TUnion
: TUnion extends object
? never
: TUnion
export type MergeUnion<TUnion> =
| MergeUnionPrimitives<TUnion>
| MergeUnionObject<MergeUnionObjects<TUnion>>
export function last<T>(arr: Array<T>) {

@@ -272,12 +292,14 @@ return arr[arr.length - 1]

export type StrictOrFrom<TFrom, TReturnIntersection extends boolean = false> =
| {
export type StrictOrFrom<
TFrom,
TStrict extends boolean = true,
> = TStrict extends false
? {
from?: never
strict: TStrict
}
: {
from: StringLiteral<TFrom> | TFrom
strict?: true
strict?: TStrict
}
| {
from?: never
strict: false
experimental_returnIntersection?: TReturnIntersection
}

@@ -284,0 +306,0 @@ export const useLayoutEffect =

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc