@tanstack/react-router 1.92.6 → 1.92.9
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 -5
- package/dist/cjs/link.cjs.map +1 -1
- package/dist/cjs/link.d.cts +2 -2
- package/dist/cjs/redirects.cjs.map +1 -1
- package/dist/cjs/redirects.d.cts +1 -1
- package/dist/cjs/route.cjs.map +1 -1
- package/dist/cjs/route.d.cts +1 -1
- package/dist/cjs/useLoaderData.cjs.map +1 -1
- package/dist/cjs/useLoaderData.d.cts +1 -1
- package/dist/cjs/useLoaderDeps.cjs.map +1 -1
- package/dist/cjs/useLoaderDeps.d.cts +1 -1
- package/dist/cjs/useMatch.cjs.map +1 -1
- package/dist/cjs/useMatch.d.cts +1 -1
- package/dist/cjs/useNavigate.cjs.map +1 -1
- package/dist/cjs/useNavigate.d.cts +1 -1
- package/dist/cjs/useParams.cjs.map +1 -1
- package/dist/cjs/useParams.d.cts +1 -1
- package/dist/cjs/useRouteContext.cjs.map +1 -1
- package/dist/cjs/useRouteContext.d.cts +1 -1
- package/dist/cjs/useSearch.cjs.map +1 -1
- package/dist/cjs/useSearch.d.cts +1 -1
- package/dist/esm/Matches.d.ts +5 -5
- package/dist/esm/Matches.js.map +1 -1
- package/dist/esm/link.d.ts +2 -2
- package/dist/esm/link.js.map +1 -1
- package/dist/esm/redirects.d.ts +1 -1
- package/dist/esm/redirects.js.map +1 -1
- package/dist/esm/route.d.ts +1 -1
- package/dist/esm/route.js.map +1 -1
- package/dist/esm/useLoaderData.d.ts +1 -1
- package/dist/esm/useLoaderData.js.map +1 -1
- package/dist/esm/useLoaderDeps.d.ts +1 -1
- package/dist/esm/useLoaderDeps.js.map +1 -1
- package/dist/esm/useMatch.d.ts +1 -1
- package/dist/esm/useMatch.js.map +1 -1
- package/dist/esm/useNavigate.d.ts +1 -1
- package/dist/esm/useNavigate.js.map +1 -1
- package/dist/esm/useParams.d.ts +1 -1
- package/dist/esm/useParams.js.map +1 -1
- package/dist/esm/useRouteContext.d.ts +1 -1
- package/dist/esm/useRouteContext.js.map +1 -1
- package/dist/esm/useSearch.d.ts +1 -1
- package/dist/esm/useSearch.js.map +1 -1
- package/package.json +1 -1
- package/src/Matches.tsx +15 -22
- package/src/link.tsx +8 -8
- package/src/redirects.ts +4 -4
- package/src/route.ts +4 -3
- package/src/useLoaderData.tsx +1 -1
- package/src/useLoaderDeps.tsx +1 -1
- package/src/useMatch.tsx +1 -1
- package/src/useNavigate.tsx +4 -4
- package/src/useParams.tsx +1 -1
- package/src/useRouteContext.ts +1 -1
- package/src/useSearch.tsx +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useNavigate.js","sources":["../../src/useNavigate.tsx"],"sourcesContent":["import * as React from 'react'\nimport { useRouter } from './useRouter'\nimport type { FromPathOption, NavigateOptions } from './link'\nimport type { AnyRouter, RegisteredRouter } from './router'\n\nexport type UseNavigateResult<TDefaultFrom extends string> = <\n TRouter extends RegisteredRouter,\n TTo extends string | undefined,\n TFrom extends string = TDefaultFrom,\n TMaskFrom extends string = TFrom,\n TMaskTo extends string = '',\n>({\n from,\n ...rest\n}: NavigateOptions<TRouter, TFrom, TTo, TMaskFrom, TMaskTo>) => Promise<void>\n\nexport function useNavigate<\n TRouter extends AnyRouter = RegisteredRouter,\n TDefaultFrom extends string = string,\n>(_defaultOpts?: {\n from?: FromPathOption<TRouter, TDefaultFrom>\n}): UseNavigateResult<TDefaultFrom> {\n const { navigate } = useRouter()\n\n return React.useCallback(\n (options: NavigateOptions) => {\n return navigate({\n ...options,\n })\n },\n [navigate],\n ) as UseNavigateResult<TDefaultFrom>\n}\n\n// NOTE: I don't know of anyone using this. It's undocumented, so let's wait until someone needs it\n// export function typedNavigate<\n// TRouteTree extends AnyRoute = RegisteredRouter['routeTree'],\n// TDefaultFrom extends RoutePaths<TRouteTree> = '/',\n// >(navigate: (opts: NavigateOptions<any>) => Promise<void>) {\n// return navigate as <\n// TFrom extends RoutePaths<TRouteTree> = TDefaultFrom,\n// TTo extends string = '',\n// TMaskFrom extends RoutePaths<TRouteTree> = '/',\n// TMaskTo extends string = '',\n// >(\n// opts?: NavigateOptions<TRouteTree, TFrom, TTo, TMaskFrom, TMaskTo>,\n// ) => Promise<void>\n// } //\n\nexport function Navigate<\n TRouter extends AnyRouter = RegisteredRouter,\n TFrom extends string = string,\n TTo extends string | undefined =
|
|
1
|
+
{"version":3,"file":"useNavigate.js","sources":["../../src/useNavigate.tsx"],"sourcesContent":["import * as React from 'react'\nimport { useRouter } from './useRouter'\nimport type { FromPathOption, NavigateOptions } from './link'\nimport type { AnyRouter, RegisteredRouter } from './router'\n\nexport type UseNavigateResult<TDefaultFrom extends string> = <\n TRouter extends RegisteredRouter,\n TTo extends string | undefined,\n TFrom extends string = TDefaultFrom,\n TMaskFrom extends string = TFrom,\n TMaskTo extends string = '',\n>({\n from,\n ...rest\n}: NavigateOptions<TRouter, TFrom, TTo, TMaskFrom, TMaskTo>) => Promise<void>\n\nexport function useNavigate<\n TRouter extends AnyRouter = RegisteredRouter,\n TDefaultFrom extends string = string,\n>(_defaultOpts?: {\n from?: FromPathOption<TRouter, TDefaultFrom>\n}): UseNavigateResult<TDefaultFrom> {\n const { navigate } = useRouter()\n\n return React.useCallback(\n (options: NavigateOptions) => {\n return navigate({\n ...options,\n })\n },\n [navigate],\n ) as UseNavigateResult<TDefaultFrom>\n}\n\n// NOTE: I don't know of anyone using this. It's undocumented, so let's wait until someone needs it\n// export function typedNavigate<\n// TRouteTree extends AnyRoute = RegisteredRouter['routeTree'],\n// TDefaultFrom extends RoutePaths<TRouteTree> = '/',\n// >(navigate: (opts: NavigateOptions<any>) => Promise<void>) {\n// return navigate as <\n// TFrom extends RoutePaths<TRouteTree> = TDefaultFrom,\n// TTo extends string = '',\n// TMaskFrom extends RoutePaths<TRouteTree> = '/',\n// TMaskTo extends string = '',\n// >(\n// opts?: NavigateOptions<TRouteTree, TFrom, TTo, TMaskFrom, TMaskTo>,\n// ) => Promise<void>\n// } //\n\nexport function Navigate<\n TRouter extends AnyRouter = RegisteredRouter,\n const TFrom extends string = string,\n const TTo extends string | undefined = undefined,\n const TMaskFrom extends string = TFrom,\n const TMaskTo extends string = '',\n>(props: NavigateOptions<TRouter, TFrom, TTo, TMaskFrom, TMaskTo>): null {\n const { navigate } = useRouter()\n\n React.useEffect(() => {\n navigate({\n ...props,\n } as any)\n }, [])\n\n return null\n}\n"],"names":[],"mappings":";;AAgBO,SAAS,YAGd,cAEkC;AAC5B,QAAA,EAAE,SAAS,IAAI,UAAU;AAE/B,SAAO,MAAM;AAAA,IACX,CAAC,YAA6B;AAC5B,aAAO,SAAS;AAAA,QACd,GAAG;AAAA,MAAA,CACJ;AAAA,IACH;AAAA,IACA,CAAC,QAAQ;AAAA,EACX;AACF;AAiBO,SAAS,SAMd,OAAuE;AACjE,QAAA,EAAE,SAAS,IAAI,UAAU;AAE/B,QAAM,UAAU,MAAM;AACX,aAAA;AAAA,MACP,GAAG;AAAA,IAAA,CACG;AAAA,EACV,GAAG,EAAE;AAEE,SAAA;AACT;"}
|
package/dist/esm/useParams.d.ts
CHANGED
|
@@ -9,4 +9,4 @@ export type UseParamsOptions<TRouter extends AnyRouter, TFrom extends string | u
|
|
|
9
9
|
export type ResolveParams<TRouter extends AnyRouter, TFrom, TStrict extends boolean> = TStrict extends false ? AllParams<TRouter['routeTree']> : Expand<RouteById<TRouter['routeTree'], TFrom>['types']['allParams']>;
|
|
10
10
|
export type UseParamsResult<TRouter extends AnyRouter, TFrom, TStrict extends boolean, TSelected> = unknown extends TSelected ? ResolveParams<TRouter, TFrom, TStrict> : TSelected;
|
|
11
11
|
export type UseParamsRoute<out TFrom> = <TRouter extends AnyRouter = RegisteredRouter, TSelected = unknown, TStructuralSharing extends boolean = boolean>(opts?: UseParamsBaseOptions<TRouter, TFrom, true, TSelected, TStructuralSharing> & StructuralSharingOption<TRouter, TSelected, TStructuralSharing>) => UseParamsResult<TRouter, TFrom, true, TSelected>;
|
|
12
|
-
export declare function useParams<TRouter extends AnyRouter = RegisteredRouter, TFrom extends string | undefined = undefined, TStrict extends boolean = true, TSelected = unknown, TStructuralSharing extends boolean = boolean>(opts: UseParamsOptions<TRouter, TFrom, TStrict, TSelected, TStructuralSharing>): UseParamsResult<TRouter, TFrom, TStrict, TSelected>;
|
|
12
|
+
export declare function useParams<TRouter extends AnyRouter = RegisteredRouter, const TFrom extends string | undefined = undefined, TStrict extends boolean = true, TSelected = unknown, TStructuralSharing extends boolean = boolean>(opts: UseParamsOptions<TRouter, TFrom, TStrict, TSelected, TStructuralSharing>): UseParamsResult<TRouter, TFrom, TStrict, TSelected>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useParams.js","sources":["../../src/useParams.tsx"],"sourcesContent":["import { useMatch } from './useMatch'\nimport type {\n StructuralSharingOption,\n ValidateSelected,\n} from './structuralSharing'\nimport type { AllParams, RouteById } from './routeInfo'\nimport type { AnyRouter, RegisteredRouter } from './router'\nimport type { Expand, StrictOrFrom } from './utils'\n\nexport interface UseParamsBaseOptions<\n TRouter extends AnyRouter,\n TFrom,\n TStrict extends boolean,\n TSelected,\n TStructuralSharing,\n> {\n select?: (\n params: ResolveParams<TRouter, TFrom, TStrict>,\n ) => ValidateSelected<TRouter, TSelected, TStructuralSharing>\n}\n\nexport type UseParamsOptions<\n TRouter extends AnyRouter,\n TFrom extends string | undefined,\n TStrict extends boolean,\n TSelected,\n TStructuralSharing,\n> = StrictOrFrom<TRouter, TFrom, TStrict> &\n UseParamsBaseOptions<TRouter, TFrom, TStrict, TSelected, TStructuralSharing> &\n StructuralSharingOption<TRouter, TSelected, TStructuralSharing>\n\nexport type ResolveParams<\n TRouter extends AnyRouter,\n TFrom,\n TStrict extends boolean,\n> = TStrict extends false\n ? AllParams<TRouter['routeTree']>\n : Expand<RouteById<TRouter['routeTree'], TFrom>['types']['allParams']>\n\nexport type UseParamsResult<\n TRouter extends AnyRouter,\n TFrom,\n TStrict extends boolean,\n TSelected,\n> = unknown extends TSelected\n ? ResolveParams<TRouter, TFrom, TStrict>\n : TSelected\n\nexport type UseParamsRoute<out TFrom> = <\n TRouter extends AnyRouter = RegisteredRouter,\n TSelected = unknown,\n TStructuralSharing extends boolean = boolean,\n>(\n opts?: UseParamsBaseOptions<\n TRouter,\n TFrom,\n true,\n TSelected,\n TStructuralSharing\n > &\n StructuralSharingOption<TRouter, TSelected, TStructuralSharing>,\n) => UseParamsResult<TRouter, TFrom, true, TSelected>\n\nexport function useParams<\n TRouter extends AnyRouter = RegisteredRouter,\n TFrom extends string | undefined = undefined,\n TStrict extends boolean = true,\n TSelected = unknown,\n TStructuralSharing extends boolean = boolean,\n>(\n opts: UseParamsOptions<\n TRouter,\n TFrom,\n TStrict,\n TSelected,\n TStructuralSharing\n >,\n): UseParamsResult<TRouter, TFrom, TStrict, TSelected> {\n return useMatch({\n from: opts.from!,\n strict: opts.strict,\n structuralSharing: opts.structuralSharing,\n select: (match: any) => {\n return opts.select ? opts.select(match.params) : match.params\n },\n } as any) as UseParamsResult<TRouter, TFrom, TStrict, TSelected>\n}\n"],"names":[],"mappings":";AA+DO,SAAS,UAOd,MAOqD;AACrD,SAAO,SAAS;AAAA,IACd,MAAM,KAAK;AAAA,IACX,QAAQ,KAAK;AAAA,IACb,mBAAmB,KAAK;AAAA,IACxB,QAAQ,CAAC,UAAe;AACtB,aAAO,KAAK,SAAS,KAAK,OAAO,MAAM,MAAM,IAAI,MAAM;AAAA,IAAA;AAAA,EACzD,CACM;AACV;"}
|
|
1
|
+
{"version":3,"file":"useParams.js","sources":["../../src/useParams.tsx"],"sourcesContent":["import { useMatch } from './useMatch'\nimport type {\n StructuralSharingOption,\n ValidateSelected,\n} from './structuralSharing'\nimport type { AllParams, RouteById } from './routeInfo'\nimport type { AnyRouter, RegisteredRouter } from './router'\nimport type { Expand, StrictOrFrom } from './utils'\n\nexport interface UseParamsBaseOptions<\n TRouter extends AnyRouter,\n TFrom,\n TStrict extends boolean,\n TSelected,\n TStructuralSharing,\n> {\n select?: (\n params: ResolveParams<TRouter, TFrom, TStrict>,\n ) => ValidateSelected<TRouter, TSelected, TStructuralSharing>\n}\n\nexport type UseParamsOptions<\n TRouter extends AnyRouter,\n TFrom extends string | undefined,\n TStrict extends boolean,\n TSelected,\n TStructuralSharing,\n> = StrictOrFrom<TRouter, TFrom, TStrict> &\n UseParamsBaseOptions<TRouter, TFrom, TStrict, TSelected, TStructuralSharing> &\n StructuralSharingOption<TRouter, TSelected, TStructuralSharing>\n\nexport type ResolveParams<\n TRouter extends AnyRouter,\n TFrom,\n TStrict extends boolean,\n> = TStrict extends false\n ? AllParams<TRouter['routeTree']>\n : Expand<RouteById<TRouter['routeTree'], TFrom>['types']['allParams']>\n\nexport type UseParamsResult<\n TRouter extends AnyRouter,\n TFrom,\n TStrict extends boolean,\n TSelected,\n> = unknown extends TSelected\n ? ResolveParams<TRouter, TFrom, TStrict>\n : TSelected\n\nexport type UseParamsRoute<out TFrom> = <\n TRouter extends AnyRouter = RegisteredRouter,\n TSelected = unknown,\n TStructuralSharing extends boolean = boolean,\n>(\n opts?: UseParamsBaseOptions<\n TRouter,\n TFrom,\n true,\n TSelected,\n TStructuralSharing\n > &\n StructuralSharingOption<TRouter, TSelected, TStructuralSharing>,\n) => UseParamsResult<TRouter, TFrom, true, TSelected>\n\nexport function useParams<\n TRouter extends AnyRouter = RegisteredRouter,\n const TFrom extends string | undefined = undefined,\n TStrict extends boolean = true,\n TSelected = unknown,\n TStructuralSharing extends boolean = boolean,\n>(\n opts: UseParamsOptions<\n TRouter,\n TFrom,\n TStrict,\n TSelected,\n TStructuralSharing\n >,\n): UseParamsResult<TRouter, TFrom, TStrict, TSelected> {\n return useMatch({\n from: opts.from!,\n strict: opts.strict,\n structuralSharing: opts.structuralSharing,\n select: (match: any) => {\n return opts.select ? opts.select(match.params) : match.params\n },\n } as any) as UseParamsResult<TRouter, TFrom, TStrict, TSelected>\n}\n"],"names":[],"mappings":";AA+DO,SAAS,UAOd,MAOqD;AACrD,SAAO,SAAS;AAAA,IACd,MAAM,KAAK;AAAA,IACX,QAAQ,KAAK;AAAA,IACb,mBAAmB,KAAK;AAAA,IACxB,QAAQ,CAAC,UAAe;AACtB,aAAO,KAAK,SAAS,KAAK,OAAO,MAAM,MAAM,IAAI,MAAM;AAAA,IAAA;AAAA,EACzD,CACM;AACV;"}
|
|
@@ -8,4 +8,4 @@ export type UseRouteContextOptions<TRouter extends AnyRouter, TFrom extends stri
|
|
|
8
8
|
export type ResolveRouteContext<TRouter extends AnyRouter, TFrom, TStrict extends boolean> = TStrict extends false ? AllContext<TRouter['routeTree']> : Expand<RouteById<TRouter['routeTree'], TFrom>['types']['allContext']>;
|
|
9
9
|
export type UseRouteContextResult<TRouter extends AnyRouter, TFrom, TStrict extends boolean, TSelected> = unknown extends TSelected ? ResolveRouteContext<TRouter, TFrom, TStrict> : TSelected;
|
|
10
10
|
export type UseRouteContextRoute<out TFrom> = <TRouter extends AnyRouter = RegisteredRouter, TSelected = unknown>(opts?: UseRouteContextBaseOptions<TRouter, TFrom, true, TSelected>) => UseRouteContextResult<TRouter, TFrom, true, TSelected>;
|
|
11
|
-
export declare function useRouteContext<TRouter extends AnyRouter = RegisteredRouter, TFrom extends string | undefined = undefined, TStrict extends boolean = true, TSelected = unknown>(opts: UseRouteContextOptions<TRouter, TFrom, TStrict, TSelected>): UseRouteContextResult<TRouter, TFrom, TStrict, TSelected>;
|
|
11
|
+
export declare function useRouteContext<TRouter extends AnyRouter = RegisteredRouter, const TFrom extends string | undefined = undefined, TStrict extends boolean = true, TSelected = unknown>(opts: UseRouteContextOptions<TRouter, TFrom, TStrict, TSelected>): UseRouteContextResult<TRouter, TFrom, TStrict, TSelected>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useRouteContext.js","sources":["../../src/useRouteContext.ts"],"sourcesContent":["import { useMatch } from './useMatch'\nimport type { AllContext, RouteById } from './routeInfo'\nimport type { AnyRouter, RegisteredRouter } from './router'\nimport type { Expand, StrictOrFrom } from './utils'\n\nexport interface UseRouteContextBaseOptions<\n TRouter extends AnyRouter,\n TFrom,\n TStrict extends boolean,\n TSelected,\n> {\n select?: (search: ResolveRouteContext<TRouter, TFrom, TStrict>) => TSelected\n}\n\nexport type UseRouteContextOptions<\n TRouter extends AnyRouter,\n TFrom extends string | undefined,\n TStrict extends boolean,\n TSelected,\n> = StrictOrFrom<TRouter, TFrom, TStrict> &\n UseRouteContextBaseOptions<TRouter, TFrom, TStrict, TSelected>\n\nexport type ResolveRouteContext<\n TRouter extends AnyRouter,\n TFrom,\n TStrict extends boolean,\n> = TStrict extends false\n ? AllContext<TRouter['routeTree']>\n : Expand<RouteById<TRouter['routeTree'], TFrom>['types']['allContext']>\n\nexport type UseRouteContextResult<\n TRouter extends AnyRouter,\n TFrom,\n TStrict extends boolean,\n TSelected,\n> = unknown extends TSelected\n ? ResolveRouteContext<TRouter, TFrom, TStrict>\n : TSelected\n\nexport type UseRouteContextRoute<out TFrom> = <\n TRouter extends AnyRouter = RegisteredRouter,\n TSelected = unknown,\n>(\n opts?: UseRouteContextBaseOptions<TRouter, TFrom, true, TSelected>,\n) => UseRouteContextResult<TRouter, TFrom, true, TSelected>\n\nexport function useRouteContext<\n TRouter extends AnyRouter = RegisteredRouter,\n TFrom extends string | undefined = undefined,\n TStrict extends boolean = true,\n TSelected = unknown,\n>(\n opts: UseRouteContextOptions<TRouter, TFrom, TStrict, TSelected>,\n): UseRouteContextResult<TRouter, TFrom, TStrict, TSelected> {\n return useMatch({\n ...(opts as any),\n select: (match) =>\n opts.select ? opts.select(match.context) : match.context,\n }) as UseRouteContextResult<TRouter, TFrom, TStrict, TSelected>\n}\n"],"names":[],"mappings":";AA8CO,SAAS,gBAMd,MAC2D;AAC3D,SAAO,SAAS;AAAA,IACd,GAAI;AAAA,IACJ,QAAQ,CAAC,UACP,KAAK,SAAS,KAAK,OAAO,MAAM,OAAO,IAAI,MAAM;AAAA,EAAA,CACpD;AACH;"}
|
|
1
|
+
{"version":3,"file":"useRouteContext.js","sources":["../../src/useRouteContext.ts"],"sourcesContent":["import { useMatch } from './useMatch'\nimport type { AllContext, RouteById } from './routeInfo'\nimport type { AnyRouter, RegisteredRouter } from './router'\nimport type { Expand, StrictOrFrom } from './utils'\n\nexport interface UseRouteContextBaseOptions<\n TRouter extends AnyRouter,\n TFrom,\n TStrict extends boolean,\n TSelected,\n> {\n select?: (search: ResolveRouteContext<TRouter, TFrom, TStrict>) => TSelected\n}\n\nexport type UseRouteContextOptions<\n TRouter extends AnyRouter,\n TFrom extends string | undefined,\n TStrict extends boolean,\n TSelected,\n> = StrictOrFrom<TRouter, TFrom, TStrict> &\n UseRouteContextBaseOptions<TRouter, TFrom, TStrict, TSelected>\n\nexport type ResolveRouteContext<\n TRouter extends AnyRouter,\n TFrom,\n TStrict extends boolean,\n> = TStrict extends false\n ? AllContext<TRouter['routeTree']>\n : Expand<RouteById<TRouter['routeTree'], TFrom>['types']['allContext']>\n\nexport type UseRouteContextResult<\n TRouter extends AnyRouter,\n TFrom,\n TStrict extends boolean,\n TSelected,\n> = unknown extends TSelected\n ? ResolveRouteContext<TRouter, TFrom, TStrict>\n : TSelected\n\nexport type UseRouteContextRoute<out TFrom> = <\n TRouter extends AnyRouter = RegisteredRouter,\n TSelected = unknown,\n>(\n opts?: UseRouteContextBaseOptions<TRouter, TFrom, true, TSelected>,\n) => UseRouteContextResult<TRouter, TFrom, true, TSelected>\n\nexport function useRouteContext<\n TRouter extends AnyRouter = RegisteredRouter,\n const TFrom extends string | undefined = undefined,\n TStrict extends boolean = true,\n TSelected = unknown,\n>(\n opts: UseRouteContextOptions<TRouter, TFrom, TStrict, TSelected>,\n): UseRouteContextResult<TRouter, TFrom, TStrict, TSelected> {\n return useMatch({\n ...(opts as any),\n select: (match) =>\n opts.select ? opts.select(match.context) : match.context,\n }) as UseRouteContextResult<TRouter, TFrom, TStrict, TSelected>\n}\n"],"names":[],"mappings":";AA8CO,SAAS,gBAMd,MAC2D;AAC3D,SAAO,SAAS;AAAA,IACd,GAAI;AAAA,IACJ,QAAQ,CAAC,UACP,KAAK,SAAS,KAAK,OAAO,MAAM,OAAO,IAAI,MAAM;AAAA,EAAA,CACpD;AACH;"}
|
package/dist/esm/useSearch.d.ts
CHANGED
|
@@ -9,4 +9,4 @@ export type UseSearchOptions<TRouter extends AnyRouter, TFrom, TStrict extends b
|
|
|
9
9
|
export type UseSearchResult<TRouter extends AnyRouter, TFrom, TStrict extends boolean, TSelected> = unknown extends TSelected ? ResolveSearch<TRouter, TFrom, TStrict> : TSelected;
|
|
10
10
|
export type ResolveSearch<TRouter extends AnyRouter, TFrom, TStrict extends boolean> = TStrict extends false ? FullSearchSchema<TRouter['routeTree']> : Expand<RouteById<TRouter['routeTree'], TFrom>['types']['fullSearchSchema']>;
|
|
11
11
|
export type UseSearchRoute<out TFrom> = <TRouter extends AnyRouter = RegisteredRouter, TSelected = unknown, TStructuralSharing extends boolean = boolean>(opts?: UseSearchBaseOptions<TRouter, TFrom, true, TSelected, TStructuralSharing> & StructuralSharingOption<TRouter, TSelected, TStructuralSharing>) => UseSearchResult<TRouter, TFrom, true, TSelected>;
|
|
12
|
-
export declare function useSearch<TRouter extends AnyRouter = RegisteredRouter, TFrom extends string | undefined = undefined, TStrict extends boolean = true, TSelected = unknown, TStructuralSharing extends boolean = boolean>(opts: UseSearchOptions<TRouter, TFrom, TStrict, TSelected, TStructuralSharing>): UseSearchResult<TRouter, TFrom, TStrict, TSelected>;
|
|
12
|
+
export declare function useSearch<TRouter extends AnyRouter = RegisteredRouter, const TFrom extends string | undefined = undefined, TStrict extends boolean = true, TSelected = unknown, TStructuralSharing extends boolean = boolean>(opts: UseSearchOptions<TRouter, TFrom, TStrict, TSelected, TStructuralSharing>): UseSearchResult<TRouter, TFrom, TStrict, TSelected>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSearch.js","sources":["../../src/useSearch.tsx"],"sourcesContent":["import { useMatch } from './useMatch'\nimport type {\n StructuralSharingOption,\n ValidateSelected,\n} from './structuralSharing'\nimport type { FullSearchSchema, RouteById } from './routeInfo'\nimport type { AnyRouter, RegisteredRouter } from './router'\nimport type { Expand, StrictOrFrom } from './utils'\n\nexport interface UseSearchBaseOptions<\n TRouter extends AnyRouter,\n TFrom,\n TStrict extends boolean,\n TSelected,\n TStructuralSharing,\n> {\n select?: (\n state: ResolveSearch<TRouter, TFrom, TStrict>,\n ) => ValidateSelected<TRouter, TSelected, TStructuralSharing>\n}\n\nexport type UseSearchOptions<\n TRouter extends AnyRouter,\n TFrom,\n TStrict extends boolean,\n TSelected,\n TStructuralSharing,\n> = StrictOrFrom<TRouter, TFrom, TStrict> &\n UseSearchBaseOptions<TRouter, TFrom, TStrict, TSelected, TStructuralSharing> &\n StructuralSharingOption<TRouter, TSelected, TStructuralSharing>\n\nexport type UseSearchResult<\n TRouter extends AnyRouter,\n TFrom,\n TStrict extends boolean,\n TSelected,\n> = unknown extends TSelected\n ? ResolveSearch<TRouter, TFrom, TStrict>\n : TSelected\n\nexport type ResolveSearch<\n TRouter extends AnyRouter,\n TFrom,\n TStrict extends boolean,\n> = TStrict extends false\n ? FullSearchSchema<TRouter['routeTree']>\n : Expand<RouteById<TRouter['routeTree'], TFrom>['types']['fullSearchSchema']>\n\nexport type UseSearchRoute<out TFrom> = <\n TRouter extends AnyRouter = RegisteredRouter,\n TSelected = unknown,\n TStructuralSharing extends boolean = boolean,\n>(\n opts?: UseSearchBaseOptions<\n TRouter,\n TFrom,\n true,\n TSelected,\n TStructuralSharing\n > &\n StructuralSharingOption<TRouter, TSelected, TStructuralSharing>,\n) => UseSearchResult<TRouter, TFrom, true, TSelected>\n\nexport function useSearch<\n TRouter extends AnyRouter = RegisteredRouter,\n TFrom extends string | undefined = undefined,\n TStrict extends boolean = true,\n TSelected = unknown,\n TStructuralSharing extends boolean = boolean,\n>(\n opts: UseSearchOptions<\n TRouter,\n TFrom,\n TStrict,\n TSelected,\n TStructuralSharing\n >,\n): UseSearchResult<TRouter, TFrom, TStrict, TSelected> {\n return useMatch({\n from: opts.from!,\n strict: opts.strict,\n structuralSharing: opts.structuralSharing,\n select: (match: any) => {\n return opts.select ? opts.select(match.search) : match.search\n },\n }) as UseSearchResult<TRouter, TFrom, TStrict, TSelected>\n}\n"],"names":[],"mappings":";AA+DO,SAAS,UAOd,MAOqD;AACrD,SAAO,SAAS;AAAA,IACd,MAAM,KAAK;AAAA,IACX,QAAQ,KAAK;AAAA,IACb,mBAAmB,KAAK;AAAA,IACxB,QAAQ,CAAC,UAAe;AACtB,aAAO,KAAK,SAAS,KAAK,OAAO,MAAM,MAAM,IAAI,MAAM;AAAA,IAAA;AAAA,EACzD,CACD;AACH;"}
|
|
1
|
+
{"version":3,"file":"useSearch.js","sources":["../../src/useSearch.tsx"],"sourcesContent":["import { useMatch } from './useMatch'\nimport type {\n StructuralSharingOption,\n ValidateSelected,\n} from './structuralSharing'\nimport type { FullSearchSchema, RouteById } from './routeInfo'\nimport type { AnyRouter, RegisteredRouter } from './router'\nimport type { Expand, StrictOrFrom } from './utils'\n\nexport interface UseSearchBaseOptions<\n TRouter extends AnyRouter,\n TFrom,\n TStrict extends boolean,\n TSelected,\n TStructuralSharing,\n> {\n select?: (\n state: ResolveSearch<TRouter, TFrom, TStrict>,\n ) => ValidateSelected<TRouter, TSelected, TStructuralSharing>\n}\n\nexport type UseSearchOptions<\n TRouter extends AnyRouter,\n TFrom,\n TStrict extends boolean,\n TSelected,\n TStructuralSharing,\n> = StrictOrFrom<TRouter, TFrom, TStrict> &\n UseSearchBaseOptions<TRouter, TFrom, TStrict, TSelected, TStructuralSharing> &\n StructuralSharingOption<TRouter, TSelected, TStructuralSharing>\n\nexport type UseSearchResult<\n TRouter extends AnyRouter,\n TFrom,\n TStrict extends boolean,\n TSelected,\n> = unknown extends TSelected\n ? ResolveSearch<TRouter, TFrom, TStrict>\n : TSelected\n\nexport type ResolveSearch<\n TRouter extends AnyRouter,\n TFrom,\n TStrict extends boolean,\n> = TStrict extends false\n ? FullSearchSchema<TRouter['routeTree']>\n : Expand<RouteById<TRouter['routeTree'], TFrom>['types']['fullSearchSchema']>\n\nexport type UseSearchRoute<out TFrom> = <\n TRouter extends AnyRouter = RegisteredRouter,\n TSelected = unknown,\n TStructuralSharing extends boolean = boolean,\n>(\n opts?: UseSearchBaseOptions<\n TRouter,\n TFrom,\n true,\n TSelected,\n TStructuralSharing\n > &\n StructuralSharingOption<TRouter, TSelected, TStructuralSharing>,\n) => UseSearchResult<TRouter, TFrom, true, TSelected>\n\nexport function useSearch<\n TRouter extends AnyRouter = RegisteredRouter,\n const TFrom extends string | undefined = undefined,\n TStrict extends boolean = true,\n TSelected = unknown,\n TStructuralSharing extends boolean = boolean,\n>(\n opts: UseSearchOptions<\n TRouter,\n TFrom,\n TStrict,\n TSelected,\n TStructuralSharing\n >,\n): UseSearchResult<TRouter, TFrom, TStrict, TSelected> {\n return useMatch({\n from: opts.from!,\n strict: opts.strict,\n structuralSharing: opts.structuralSharing,\n select: (match: any) => {\n return opts.select ? opts.select(match.search) : match.search\n },\n }) as UseSearchResult<TRouter, TFrom, TStrict, TSelected>\n}\n"],"names":[],"mappings":";AA+DO,SAAS,UAOd,MAOqD;AACrD,SAAO,SAAS;AAAA,IACd,MAAM,KAAK;AAAA,IACX,QAAQ,KAAK;AAAA,IACb,mBAAmB,KAAK;AAAA,IACxB,QAAQ,CAAC,UAAe;AACtB,aAAO,KAAK,SAAS,KAAK,OAAO,MAAM,MAAM,IAAI,MAAM;AAAA,IAAA;AAAA,EACzD,CACD;AACH;"}
|
package/package.json
CHANGED
package/src/Matches.tsx
CHANGED
|
@@ -13,7 +13,7 @@ import type {
|
|
|
13
13
|
} from './structuralSharing'
|
|
14
14
|
import type { AnyRoute, ReactNode, StaticDataRouteOption } from './route'
|
|
15
15
|
import type { AnyRouter, RegisteredRouter, RouterState } from './router'
|
|
16
|
-
import type { ResolveRelativePath, ToOptions } from './link'
|
|
16
|
+
import type { ResolveRelativePath, ResolveRoute, ToOptions } from './link'
|
|
17
17
|
import type {
|
|
18
18
|
AllContext,
|
|
19
19
|
AllLoaderData,
|
|
@@ -273,7 +273,7 @@ export type UseMatchRouteOptions<
|
|
|
273
273
|
TFrom extends RoutePaths<TRouter['routeTree']> | string = RoutePaths<
|
|
274
274
|
TRouter['routeTree']
|
|
275
275
|
>,
|
|
276
|
-
TTo extends string = '',
|
|
276
|
+
TTo extends string | undefined = '',
|
|
277
277
|
TMaskFrom extends RoutePaths<TRouter['routeTree']> | string = TFrom,
|
|
278
278
|
TMaskTo extends string = '',
|
|
279
279
|
TOptions extends ToOptions<
|
|
@@ -297,16 +297,13 @@ export function useMatchRoute<TRouter extends AnyRouter = RegisteredRouter>() {
|
|
|
297
297
|
|
|
298
298
|
return React.useCallback(
|
|
299
299
|
<
|
|
300
|
-
TFrom extends
|
|
301
|
-
TTo extends string =
|
|
302
|
-
TMaskFrom extends
|
|
303
|
-
TMaskTo extends string = '',
|
|
304
|
-
TResolved extends string = ResolveRelativePath<TFrom, NoInfer<TTo>>,
|
|
300
|
+
const TFrom extends string = string,
|
|
301
|
+
const TTo extends string | undefined = undefined,
|
|
302
|
+
const TMaskFrom extends string = TFrom,
|
|
303
|
+
const TMaskTo extends string = '',
|
|
305
304
|
>(
|
|
306
305
|
opts: UseMatchRouteOptions<TRouter, TFrom, TTo, TMaskFrom, TMaskTo>,
|
|
307
|
-
):
|
|
308
|
-
| false
|
|
309
|
-
| RouteByPath<TRouter['routeTree'], TResolved>['types']['allParams'] => {
|
|
306
|
+
): false | ResolveRoute<TRouter, TFrom, TTo>['types']['allParams'] => {
|
|
310
307
|
const { pending, caseSensitive, fuzzy, includeSearch, ...rest } = opts
|
|
311
308
|
|
|
312
309
|
return router.matchRoute(rest as any, {
|
|
@@ -322,11 +319,9 @@ export function useMatchRoute<TRouter extends AnyRouter = RegisteredRouter>() {
|
|
|
322
319
|
|
|
323
320
|
export type MakeMatchRouteOptions<
|
|
324
321
|
TRouter extends AnyRouter = RegisteredRouter,
|
|
325
|
-
TFrom extends
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
TTo extends string = '',
|
|
329
|
-
TMaskFrom extends RoutePaths<TRouter['routeTree']> = TFrom,
|
|
322
|
+
TFrom extends string = string,
|
|
323
|
+
TTo extends string | undefined = undefined,
|
|
324
|
+
TMaskFrom extends string = TFrom,
|
|
330
325
|
TMaskTo extends string = '',
|
|
331
326
|
> = UseMatchRouteOptions<TRouter, TFrom, TTo, TMaskFrom, TMaskTo> & {
|
|
332
327
|
// If a function is passed as a child, it will be given the `isActive` boolean to aid in further styling on the element it returns
|
|
@@ -342,15 +337,13 @@ export type MakeMatchRouteOptions<
|
|
|
342
337
|
|
|
343
338
|
export function MatchRoute<
|
|
344
339
|
TRouter extends AnyRouter = RegisteredRouter,
|
|
345
|
-
TFrom extends
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
TMaskFrom extends RoutePaths<TRouter['routeTree']> = TFrom,
|
|
350
|
-
TMaskTo extends string = '',
|
|
340
|
+
const TFrom extends string = string,
|
|
341
|
+
const TTo extends string | undefined = undefined,
|
|
342
|
+
const TMaskFrom extends string = TFrom,
|
|
343
|
+
const TMaskTo extends string = '',
|
|
351
344
|
>(props: MakeMatchRouteOptions<TRouter, TFrom, TTo, TMaskFrom, TMaskTo>): any {
|
|
352
345
|
const matchRoute = useMatchRoute()
|
|
353
|
-
const params = matchRoute(props as any)
|
|
346
|
+
const params = matchRoute(props as any) as boolean
|
|
354
347
|
|
|
355
348
|
if (typeof props.children === 'function') {
|
|
356
349
|
return (props.children as any)(params)
|
package/src/link.tsx
CHANGED
|
@@ -555,10 +555,10 @@ const preloadWarning = 'Error preloading route! ☝️'
|
|
|
555
555
|
|
|
556
556
|
export function useLinkProps<
|
|
557
557
|
TRouter extends AnyRouter = RegisteredRouter,
|
|
558
|
-
TFrom extends
|
|
559
|
-
TTo extends string =
|
|
560
|
-
TMaskFrom extends
|
|
561
|
-
TMaskTo extends string = '',
|
|
558
|
+
const TFrom extends string = string,
|
|
559
|
+
const TTo extends string | undefined = undefined,
|
|
560
|
+
const TMaskFrom extends string = TFrom,
|
|
561
|
+
const TMaskTo extends string = '',
|
|
562
562
|
>(
|
|
563
563
|
options: UseLinkPropsOptions<TRouter, TFrom, TTo, TMaskFrom, TMaskTo>,
|
|
564
564
|
forwardedRef?: React.ForwardedRef<Element>,
|
|
@@ -976,10 +976,10 @@ export type CreateLinkProps = LinkProps<
|
|
|
976
976
|
|
|
977
977
|
export type LinkComponent<TComp> = <
|
|
978
978
|
TRouter extends AnyRouter = RegisteredRouter,
|
|
979
|
-
TFrom extends string = string,
|
|
980
|
-
TTo extends string | undefined = undefined,
|
|
981
|
-
TMaskFrom extends string = TFrom,
|
|
982
|
-
TMaskTo extends string = '',
|
|
979
|
+
const TFrom extends string = string,
|
|
980
|
+
const TTo extends string | undefined = undefined,
|
|
981
|
+
const TMaskFrom extends string = TFrom,
|
|
982
|
+
const TMaskTo extends string = '',
|
|
983
983
|
>(
|
|
984
984
|
props: LinkComponentProps<TComp, TRouter, TFrom, TTo, TMaskFrom, TMaskTo>,
|
|
985
985
|
) => React.ReactElement
|
package/src/redirects.ts
CHANGED
|
@@ -37,10 +37,10 @@ export type ResolvedRedirect<
|
|
|
37
37
|
|
|
38
38
|
export function redirect<
|
|
39
39
|
TRouter extends RegisteredRouter,
|
|
40
|
-
TTo extends string | undefined,
|
|
41
|
-
TFrom extends string = string,
|
|
42
|
-
TMaskFrom extends string = TFrom,
|
|
43
|
-
TMaskTo extends string = '',
|
|
40
|
+
const TTo extends string | undefined,
|
|
41
|
+
const TFrom extends string = string,
|
|
42
|
+
const TMaskFrom extends string = TFrom,
|
|
43
|
+
const TMaskTo extends string = '',
|
|
44
44
|
>(
|
|
45
45
|
opts: Redirect<TRouter, TFrom, TTo, TMaskFrom, TMaskTo>,
|
|
46
46
|
): Redirect<TRouter, TFrom, TTo, TMaskFrom, TMaskTo> {
|
package/src/route.ts
CHANGED
|
@@ -800,9 +800,10 @@ export type RouteTypesById<TRouter extends AnyRouter, TId> = RouteById<
|
|
|
800
800
|
TId
|
|
801
801
|
>['types']
|
|
802
802
|
|
|
803
|
-
export function getRouteApi<
|
|
804
|
-
|
|
805
|
-
|
|
803
|
+
export function getRouteApi<
|
|
804
|
+
const TId,
|
|
805
|
+
TRouter extends AnyRouter = RegisteredRouter,
|
|
806
|
+
>(id: ConstrainLiteral<TId, RouteIds<TRouter['routeTree']>>) {
|
|
806
807
|
return new RouteApi<TId, TRouter>({ id })
|
|
807
808
|
}
|
|
808
809
|
|
package/src/useLoaderData.tsx
CHANGED
|
@@ -69,7 +69,7 @@ export type UseLoaderDataRoute<out TId> = <
|
|
|
69
69
|
|
|
70
70
|
export function useLoaderData<
|
|
71
71
|
TRouter extends AnyRouter = RegisteredRouter,
|
|
72
|
-
TFrom extends string | undefined = undefined,
|
|
72
|
+
const TFrom extends string | undefined = undefined,
|
|
73
73
|
TStrict extends boolean = true,
|
|
74
74
|
TSelected = unknown,
|
|
75
75
|
TStructuralSharing extends boolean = boolean,
|
package/src/useLoaderDeps.tsx
CHANGED
|
@@ -48,7 +48,7 @@ export type UseLoaderDepsRoute<out TId> = <
|
|
|
48
48
|
|
|
49
49
|
export function useLoaderDeps<
|
|
50
50
|
TRouter extends AnyRouter = RegisteredRouter,
|
|
51
|
-
TFrom extends string | undefined = undefined,
|
|
51
|
+
const TFrom extends string | undefined = undefined,
|
|
52
52
|
TSelected = unknown,
|
|
53
53
|
TStructuralSharing extends boolean = boolean,
|
|
54
54
|
>(
|
package/src/useMatch.tsx
CHANGED
|
@@ -76,7 +76,7 @@ type ThrowConstraint<
|
|
|
76
76
|
|
|
77
77
|
export function useMatch<
|
|
78
78
|
TRouter extends AnyRouter = RegisteredRouter,
|
|
79
|
-
TFrom extends string | undefined = undefined,
|
|
79
|
+
const TFrom extends string | undefined = undefined,
|
|
80
80
|
TStrict extends boolean = true,
|
|
81
81
|
TThrow extends boolean = true,
|
|
82
82
|
TSelected = unknown,
|
package/src/useNavigate.tsx
CHANGED
|
@@ -49,10 +49,10 @@ export function useNavigate<
|
|
|
49
49
|
|
|
50
50
|
export function Navigate<
|
|
51
51
|
TRouter extends AnyRouter = RegisteredRouter,
|
|
52
|
-
TFrom extends string = string,
|
|
53
|
-
TTo extends string | undefined =
|
|
54
|
-
TMaskFrom extends string = TFrom,
|
|
55
|
-
TMaskTo extends string = '
|
|
52
|
+
const TFrom extends string = string,
|
|
53
|
+
const TTo extends string | undefined = undefined,
|
|
54
|
+
const TMaskFrom extends string = TFrom,
|
|
55
|
+
const TMaskTo extends string = '',
|
|
56
56
|
>(props: NavigateOptions<TRouter, TFrom, TTo, TMaskFrom, TMaskTo>): null {
|
|
57
57
|
const { navigate } = useRouter()
|
|
58
58
|
|
package/src/useParams.tsx
CHANGED
|
@@ -63,7 +63,7 @@ export type UseParamsRoute<out TFrom> = <
|
|
|
63
63
|
|
|
64
64
|
export function useParams<
|
|
65
65
|
TRouter extends AnyRouter = RegisteredRouter,
|
|
66
|
-
TFrom extends string | undefined = undefined,
|
|
66
|
+
const TFrom extends string | undefined = undefined,
|
|
67
67
|
TStrict extends boolean = true,
|
|
68
68
|
TSelected = unknown,
|
|
69
69
|
TStructuralSharing extends boolean = boolean,
|
package/src/useRouteContext.ts
CHANGED
|
@@ -46,7 +46,7 @@ export type UseRouteContextRoute<out TFrom> = <
|
|
|
46
46
|
|
|
47
47
|
export function useRouteContext<
|
|
48
48
|
TRouter extends AnyRouter = RegisteredRouter,
|
|
49
|
-
TFrom extends string | undefined = undefined,
|
|
49
|
+
const TFrom extends string | undefined = undefined,
|
|
50
50
|
TStrict extends boolean = true,
|
|
51
51
|
TSelected = unknown,
|
|
52
52
|
>(
|
package/src/useSearch.tsx
CHANGED
|
@@ -63,7 +63,7 @@ export type UseSearchRoute<out TFrom> = <
|
|
|
63
63
|
|
|
64
64
|
export function useSearch<
|
|
65
65
|
TRouter extends AnyRouter = RegisteredRouter,
|
|
66
|
-
TFrom extends string | undefined = undefined,
|
|
66
|
+
const TFrom extends string | undefined = undefined,
|
|
67
67
|
TStrict extends boolean = true,
|
|
68
68
|
TSelected = unknown,
|
|
69
69
|
TStructuralSharing extends boolean = boolean,
|