@tanstack/react-router 1.111.3 → 1.111.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.
Files changed (69) hide show
  1. package/dist/cjs/fileRoute.cjs +4 -1
  2. package/dist/cjs/fileRoute.cjs.map +1 -1
  3. package/dist/cjs/fileRoute.d.cts +4 -4
  4. package/dist/cjs/index.d.cts +1 -3
  5. package/dist/cjs/redirects.cjs.map +1 -1
  6. package/dist/cjs/redirects.d.cts +2 -16
  7. package/dist/cjs/route.cjs.map +1 -1
  8. package/dist/cjs/route.d.cts +1 -2
  9. package/dist/cjs/router.cjs.map +1 -1
  10. package/dist/cjs/router.d.cts +1 -2
  11. package/dist/cjs/typePrimitives.d.cts +3 -4
  12. package/dist/cjs/useLoaderData.cjs.map +1 -1
  13. package/dist/cjs/useLoaderData.d.cts +2 -5
  14. package/dist/cjs/useLoaderDeps.cjs.map +1 -1
  15. package/dist/cjs/useLoaderDeps.d.cts +2 -5
  16. package/dist/cjs/useMatch.cjs.map +1 -1
  17. package/dist/cjs/useMatch.d.cts +1 -2
  18. package/dist/cjs/useNavigate.cjs.map +1 -1
  19. package/dist/cjs/useNavigate.d.cts +1 -2
  20. package/dist/cjs/useParams.cjs.map +1 -1
  21. package/dist/cjs/useParams.d.cts +2 -5
  22. package/dist/cjs/useRouteContext.cjs.map +1 -1
  23. package/dist/cjs/useRouteContext.d.cts +1 -8
  24. package/dist/cjs/useSearch.cjs.map +1 -1
  25. package/dist/cjs/useSearch.d.cts +2 -5
  26. package/dist/cjs/utils.cjs.map +1 -1
  27. package/dist/cjs/utils.d.cts +0 -8
  28. package/dist/esm/fileRoute.d.ts +4 -4
  29. package/dist/esm/fileRoute.js +4 -1
  30. package/dist/esm/fileRoute.js.map +1 -1
  31. package/dist/esm/index.d.ts +1 -3
  32. package/dist/esm/redirects.d.ts +2 -16
  33. package/dist/esm/redirects.js.map +1 -1
  34. package/dist/esm/route.d.ts +1 -2
  35. package/dist/esm/route.js.map +1 -1
  36. package/dist/esm/router.d.ts +1 -2
  37. package/dist/esm/router.js.map +1 -1
  38. package/dist/esm/typePrimitives.d.ts +3 -4
  39. package/dist/esm/useLoaderData.d.ts +2 -5
  40. package/dist/esm/useLoaderData.js.map +1 -1
  41. package/dist/esm/useLoaderDeps.d.ts +2 -5
  42. package/dist/esm/useLoaderDeps.js.map +1 -1
  43. package/dist/esm/useMatch.d.ts +1 -2
  44. package/dist/esm/useMatch.js.map +1 -1
  45. package/dist/esm/useNavigate.d.ts +1 -2
  46. package/dist/esm/useNavigate.js.map +1 -1
  47. package/dist/esm/useParams.d.ts +2 -5
  48. package/dist/esm/useParams.js.map +1 -1
  49. package/dist/esm/useRouteContext.d.ts +1 -8
  50. package/dist/esm/useRouteContext.js.map +1 -1
  51. package/dist/esm/useSearch.d.ts +2 -5
  52. package/dist/esm/useSearch.js.map +1 -1
  53. package/dist/esm/utils.d.ts +0 -8
  54. package/dist/esm/utils.js.map +1 -1
  55. package/package.json +2 -2
  56. package/src/fileRoute.ts +12 -5
  57. package/src/index.tsx +4 -2
  58. package/src/redirects.ts +4 -36
  59. package/src/route.ts +1 -2
  60. package/src/router.ts +2 -1
  61. package/src/typePrimitives.ts +6 -3
  62. package/src/useLoaderData.tsx +6 -20
  63. package/src/useLoaderDeps.tsx +6 -13
  64. package/src/useMatch.tsx +1 -2
  65. package/src/useNavigate.tsx +5 -12
  66. package/src/useParams.tsx +4 -22
  67. package/src/useRouteContext.ts +5 -36
  68. package/src/useSearch.tsx +4 -22
  69. package/src/utils.ts +0 -19
package/src/useParams.tsx CHANGED
@@ -5,12 +5,11 @@ import type {
5
5
  ValidateSelected,
6
6
  } from './structuralSharing'
7
7
  import type { AnyRouter, RegisteredRouter } from './router'
8
- import type { StrictOrFrom } from './utils'
9
8
  import type {
10
- AllParams,
11
- Expand,
12
- RouteById,
9
+ ResolveUseParams,
10
+ StrictOrFrom,
13
11
  ThrowOrOptional,
12
+ UseParamsResult,
14
13
  } from '@tanstack/router-core'
15
14
 
16
15
  export interface UseParamsBaseOptions<
@@ -22,7 +21,7 @@ export interface UseParamsBaseOptions<
22
21
  TStructuralSharing,
23
22
  > {
24
23
  select?: (
25
- params: ResolveParams<TRouter, TFrom, TStrict>,
24
+ params: ResolveUseParams<TRouter, TFrom, TStrict>,
26
25
  ) => ValidateSelected<TRouter, TSelected, TStructuralSharing>
27
26
  shouldThrow?: TThrow
28
27
  }
@@ -45,23 +44,6 @@ export type UseParamsOptions<
45
44
  > &
46
45
  StructuralSharingOption<TRouter, TSelected, TStructuralSharing>
47
46
 
48
- export type ResolveParams<
49
- TRouter extends AnyRouter,
50
- TFrom,
51
- TStrict extends boolean,
52
- > = TStrict extends false
53
- ? AllParams<TRouter['routeTree']>
54
- : Expand<RouteById<TRouter['routeTree'], TFrom>['types']['allParams']>
55
-
56
- export type UseParamsResult<
57
- TRouter extends AnyRouter,
58
- TFrom,
59
- TStrict extends boolean,
60
- TSelected,
61
- > = unknown extends TSelected
62
- ? ResolveParams<TRouter, TFrom, TStrict>
63
- : TSelected
64
-
65
47
  export type UseParamsRoute<out TFrom> = <
66
48
  TRouter extends AnyRouter = RegisteredRouter,
67
49
  TSelected = unknown,
@@ -1,41 +1,10 @@
1
1
  import { useMatch } from './useMatch'
2
2
  import type { AnyRouter, RegisteredRouter } from './router'
3
- import type { StrictOrFrom } from './utils'
4
- import type { AllContext, Expand, RouteById } from '@tanstack/router-core'
5
-
6
- export interface UseRouteContextBaseOptions<
7
- TRouter extends AnyRouter,
8
- TFrom,
9
- TStrict extends boolean,
10
- TSelected,
11
- > {
12
- select?: (search: ResolveRouteContext<TRouter, TFrom, TStrict>) => TSelected
13
- }
14
-
15
- export type UseRouteContextOptions<
16
- TRouter extends AnyRouter,
17
- TFrom extends string | undefined,
18
- TStrict extends boolean,
19
- TSelected,
20
- > = StrictOrFrom<TRouter, TFrom, TStrict> &
21
- UseRouteContextBaseOptions<TRouter, TFrom, TStrict, TSelected>
22
-
23
- export type ResolveRouteContext<
24
- TRouter extends AnyRouter,
25
- TFrom,
26
- TStrict extends boolean,
27
- > = TStrict extends false
28
- ? AllContext<TRouter['routeTree']>
29
- : Expand<RouteById<TRouter['routeTree'], TFrom>['types']['allContext']>
30
-
31
- export type UseRouteContextResult<
32
- TRouter extends AnyRouter,
33
- TFrom,
34
- TStrict extends boolean,
35
- TSelected,
36
- > = unknown extends TSelected
37
- ? ResolveRouteContext<TRouter, TFrom, TStrict>
38
- : TSelected
3
+ import type {
4
+ UseRouteContextBaseOptions,
5
+ UseRouteContextOptions,
6
+ UseRouteContextResult,
7
+ } from '@tanstack/router-core'
39
8
 
40
9
  export type UseRouteContextRoute<out TFrom> = <
41
10
  TRouter extends AnyRouter = RegisteredRouter,
package/src/useSearch.tsx CHANGED
@@ -5,12 +5,11 @@ import type {
5
5
  ValidateSelected,
6
6
  } from './structuralSharing'
7
7
  import type { AnyRouter, RegisteredRouter } from './router'
8
- import type { StrictOrFrom } from './utils'
9
8
  import type {
10
- Expand,
11
- FullSearchSchema,
12
- RouteById,
9
+ ResolveUseSearch,
10
+ StrictOrFrom,
13
11
  ThrowOrOptional,
12
+ UseSearchResult,
14
13
  } from '@tanstack/router-core'
15
14
 
16
15
  export interface UseSearchBaseOptions<
@@ -22,7 +21,7 @@ export interface UseSearchBaseOptions<
22
21
  TStructuralSharing,
23
22
  > {
24
23
  select?: (
25
- state: ResolveSearch<TRouter, TFrom, TStrict>,
24
+ state: ResolveUseSearch<TRouter, TFrom, TStrict>,
26
25
  ) => ValidateSelected<TRouter, TSelected, TStructuralSharing>
27
26
  shouldThrow?: TThrow
28
27
  }
@@ -45,23 +44,6 @@ export type UseSearchOptions<
45
44
  > &
46
45
  StructuralSharingOption<TRouter, TSelected, TStructuralSharing>
47
46
 
48
- export type UseSearchResult<
49
- TRouter extends AnyRouter,
50
- TFrom,
51
- TStrict extends boolean,
52
- TSelected,
53
- > = unknown extends TSelected
54
- ? ResolveSearch<TRouter, TFrom, TStrict>
55
- : TSelected
56
-
57
- export type ResolveSearch<
58
- TRouter extends AnyRouter,
59
- TFrom,
60
- TStrict extends boolean,
61
- > = TStrict extends false
62
- ? FullSearchSchema<TRouter['routeTree']>
63
- : Expand<RouteById<TRouter['routeTree'], TFrom>['types']['fullSearchSchema']>
64
-
65
47
  export type UseSearchRoute<out TFrom> = <
66
48
  TRouter extends AnyRouter = RegisteredRouter,
67
49
  TSelected = unknown,
package/src/utils.ts CHANGED
@@ -1,9 +1,4 @@
1
1
  import * as React from 'react'
2
- import type {
3
- AnyRouter,
4
- ConstrainLiteral,
5
- RouteIds,
6
- } from '@tanstack/router-core'
7
2
 
8
3
  export function useStableCallback<T extends (...args: Array<any>) => any>(
9
4
  fn: T,
@@ -15,20 +10,6 @@ export function useStableCallback<T extends (...args: Array<any>) => any>(
15
10
  return ref.current as T
16
11
  }
17
12
 
18
- export type StrictOrFrom<
19
- TRouter extends AnyRouter,
20
- TFrom,
21
- TStrict extends boolean = true,
22
- > = TStrict extends false
23
- ? {
24
- from?: never
25
- strict: TStrict
26
- }
27
- : {
28
- from: ConstrainLiteral<TFrom, RouteIds<TRouter['routeTree']>>
29
- strict?: TStrict
30
- }
31
-
32
13
  export const useLayoutEffect =
33
14
  typeof window !== 'undefined' ? React.useLayoutEffect : React.useEffect
34
15