@tanstack/react-router 1.0.0 → 1.0.2

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 (147) hide show
  1. package/build/cjs/RouterProvider.js +3 -1
  2. package/build/cjs/RouterProvider.js.map +1 -1
  3. package/build/cjs/link.js +4 -1
  4. package/build/cjs/link.js.map +1 -1
  5. package/build/cjs/router.js +5 -4
  6. package/build/cjs/router.js.map +1 -1
  7. package/build/cjs/useNavigate.js +9 -6
  8. package/build/cjs/useNavigate.js.map +1 -1
  9. package/build/esm/index.js +21 -12
  10. package/build/esm/index.js.map +1 -1
  11. package/build/stats-html.html +1 -1
  12. package/build/stats-react.json +367 -367
  13. package/build/types/index.d.ts +24 -932
  14. package/build/types/link.d.ts +1 -1
  15. package/build/types/useNavigate.d.ts +2 -2
  16. package/build/umd/index.development.js +21 -12
  17. package/build/umd/index.development.js.map +1 -1
  18. package/build/umd/index.production.js +1 -1
  19. package/build/umd/index.production.js.map +1 -1
  20. package/package.json +2 -2
  21. package/src/RouterProvider.tsx +3 -1
  22. package/src/link.tsx +13 -7
  23. package/src/router.ts +5 -4
  24. package/src/useNavigate.tsx +10 -8
  25. package/build/cjs/_virtual/with-selector.development.js +0 -16
  26. package/build/cjs/_virtual/with-selector.development.js.map +0 -1
  27. package/build/cjs/_virtual/with-selector.js +0 -16
  28. package/build/cjs/_virtual/with-selector.js.map +0 -1
  29. package/build/cjs/_virtual/with-selector.production.min.js +0 -16
  30. package/build/cjs/_virtual/with-selector.production.min.js.map +0 -1
  31. package/build/cjs/build/esm/index.js +0 -79
  32. package/build/cjs/build/esm/index.js.map +0 -1
  33. package/build/cjs/node_modules/.pnpm/@tanstack_react-store@0.2.1_react-dom@18.2.0_react@18.2.0/node_modules/@tanstack/react-store/build/modern/index.js +0 -47
  34. package/build/cjs/node_modules/.pnpm/@tanstack_react-store@0.2.1_react-dom@18.2.0_react@18.2.0/node_modules/@tanstack/react-store/build/modern/index.js.map +0 -1
  35. package/build/cjs/node_modules/.pnpm/@tanstack_store@0.1.3/node_modules/@tanstack/store/build/modern/index.js +0 -70
  36. package/build/cjs/node_modules/.pnpm/@tanstack_store@0.1.3/node_modules/@tanstack/store/build/modern/index.js.map +0 -1
  37. package/build/cjs/node_modules/.pnpm/use-sync-external-store@1.2.0_react@18.2.0/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js +0 -188
  38. package/build/cjs/node_modules/.pnpm/use-sync-external-store@1.2.0_react@18.2.0/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js.map +0 -1
  39. package/build/cjs/node_modules/.pnpm/use-sync-external-store@1.2.0_react@18.2.0/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.js +0 -39
  40. package/build/cjs/node_modules/.pnpm/use-sync-external-store@1.2.0_react@18.2.0/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.js.map +0 -1
  41. package/build/cjs/node_modules/.pnpm/use-sync-external-store@1.2.0_react@18.2.0/node_modules/use-sync-external-store/shim/with-selector.js +0 -26
  42. package/build/cjs/node_modules/.pnpm/use-sync-external-store@1.2.0_react@18.2.0/node_modules/use-sync-external-store/shim/with-selector.js.map +0 -1
  43. package/build/cjs/packages/react-router/src/CatchBoundary.js +0 -123
  44. package/build/cjs/packages/react-router/src/CatchBoundary.js.map +0 -1
  45. package/build/cjs/packages/react-router/src/Matches.js +0 -235
  46. package/build/cjs/packages/react-router/src/Matches.js.map +0 -1
  47. package/build/cjs/packages/react-router/src/RouterProvider.js +0 -144
  48. package/build/cjs/packages/react-router/src/RouterProvider.js.map +0 -1
  49. package/build/cjs/packages/react-router/src/awaited.js +0 -43
  50. package/build/cjs/packages/react-router/src/awaited.js.map +0 -1
  51. package/build/cjs/packages/react-router/src/defer.js +0 -37
  52. package/build/cjs/packages/react-router/src/defer.js.map +0 -1
  53. package/build/cjs/packages/react-router/src/fileRoute.js +0 -27
  54. package/build/cjs/packages/react-router/src/fileRoute.js.map +0 -1
  55. package/build/cjs/packages/react-router/src/index.js +0 -61
  56. package/build/cjs/packages/react-router/src/index.js.map +0 -1
  57. package/build/cjs/packages/react-router/src/lazyRouteComponent.js +0 -54
  58. package/build/cjs/packages/react-router/src/lazyRouteComponent.js.map +0 -1
  59. package/build/cjs/packages/react-router/src/link.js +0 -148
  60. package/build/cjs/packages/react-router/src/link.js.map +0 -1
  61. package/build/cjs/packages/react-router/src/path.js +0 -209
  62. package/build/cjs/packages/react-router/src/path.js.map +0 -1
  63. package/build/cjs/packages/react-router/src/qss.js +0 -63
  64. package/build/cjs/packages/react-router/src/qss.js.map +0 -1
  65. package/build/cjs/packages/react-router/src/react.js +0 -634
  66. package/build/cjs/packages/react-router/src/react.js.map +0 -1
  67. package/build/cjs/packages/react-router/src/redirects.js +0 -25
  68. package/build/cjs/packages/react-router/src/redirects.js.map +0 -1
  69. package/build/cjs/packages/react-router/src/route.js +0 -134
  70. package/build/cjs/packages/react-router/src/route.js.map +0 -1
  71. package/build/cjs/packages/react-router/src/router.js +0 -1111
  72. package/build/cjs/packages/react-router/src/router.js.map +0 -1
  73. package/build/cjs/packages/react-router/src/scroll-restoration.js +0 -53
  74. package/build/cjs/packages/react-router/src/scroll-restoration.js.map +0 -1
  75. package/build/cjs/packages/react-router/src/searchParams.js +0 -81
  76. package/build/cjs/packages/react-router/src/searchParams.js.map +0 -1
  77. package/build/cjs/packages/react-router/src/useBlocker.js +0 -61
  78. package/build/cjs/packages/react-router/src/useBlocker.js.map +0 -1
  79. package/build/cjs/packages/react-router/src/useNavigate.js +0 -75
  80. package/build/cjs/packages/react-router/src/useNavigate.js.map +0 -1
  81. package/build/cjs/packages/react-router/src/useParams.js +0 -26
  82. package/build/cjs/packages/react-router/src/useParams.js.map +0 -1
  83. package/build/cjs/packages/react-router/src/useSearch.js +0 -25
  84. package/build/cjs/packages/react-router/src/useSearch.js.map +0 -1
  85. package/build/cjs/packages/react-router/src/utils.js +0 -239
  86. package/build/cjs/packages/react-router/src/utils.js.map +0 -1
  87. package/build/cjs/react/CatchBoundary.js +0 -123
  88. package/build/cjs/react/CatchBoundary.js.map +0 -1
  89. package/build/cjs/react/awaited.js +0 -43
  90. package/build/cjs/react/awaited.js.map +0 -1
  91. package/build/cjs/react/defer.js +0 -37
  92. package/build/cjs/react/defer.js.map +0 -1
  93. package/build/cjs/react.js +0 -650
  94. package/build/cjs/react.js.map +0 -1
  95. package/build/cjs/routerConfig.js +0 -209
  96. package/build/cjs/routerConfig.js.map +0 -1
  97. package/build/cjs/src/CatchBoundary.js +0 -126
  98. package/build/cjs/src/CatchBoundary.js.map +0 -1
  99. package/build/cjs/src/Matches.js +0 -235
  100. package/build/cjs/src/Matches.js.map +0 -1
  101. package/build/cjs/src/RouterProvider.js +0 -1051
  102. package/build/cjs/src/RouterProvider.js.map +0 -1
  103. package/build/cjs/src/awaited.js +0 -45
  104. package/build/cjs/src/awaited.js.map +0 -1
  105. package/build/cjs/src/defer.js +0 -39
  106. package/build/cjs/src/defer.js.map +0 -1
  107. package/build/cjs/src/fileRoute.js +0 -29
  108. package/build/cjs/src/fileRoute.js.map +0 -1
  109. package/build/cjs/src/index.js +0 -134
  110. package/build/cjs/src/index.js.map +0 -1
  111. package/build/cjs/src/lazyRouteComponent.js +0 -57
  112. package/build/cjs/src/lazyRouteComponent.js.map +0 -1
  113. package/build/cjs/src/link.js +0 -151
  114. package/build/cjs/src/link.js.map +0 -1
  115. package/build/cjs/src/path.js +0 -211
  116. package/build/cjs/src/path.js.map +0 -1
  117. package/build/cjs/src/qss.js +0 -65
  118. package/build/cjs/src/qss.js.map +0 -1
  119. package/build/cjs/src/redirects.js +0 -27
  120. package/build/cjs/src/redirects.js.map +0 -1
  121. package/build/cjs/src/route.js +0 -139
  122. package/build/cjs/src/route.js.map +0 -1
  123. package/build/cjs/src/router.js +0 -203
  124. package/build/cjs/src/router.js.map +0 -1
  125. package/build/cjs/src/scroll-restoration.js +0 -186
  126. package/build/cjs/src/scroll-restoration.js.map +0 -1
  127. package/build/cjs/src/searchParams.js +0 -83
  128. package/build/cjs/src/searchParams.js.map +0 -1
  129. package/build/cjs/src/useBlocker.js +0 -64
  130. package/build/cjs/src/useBlocker.js.map +0 -1
  131. package/build/cjs/src/useNavigate.js +0 -78
  132. package/build/cjs/src/useNavigate.js.map +0 -1
  133. package/build/cjs/src/useParams.js +0 -28
  134. package/build/cjs/src/useParams.js.map +0 -1
  135. package/build/cjs/src/useSearch.js +0 -27
  136. package/build/cjs/src/useSearch.js.map +0 -1
  137. package/build/cjs/src/utils.js +0 -230
  138. package/build/cjs/src/utils.js.map +0 -1
  139. package/build/cjs/useStore.js +0 -99
  140. package/build/cjs/useStore.js.map +0 -1
  141. package/build/types/RouteMatch.d.ts +0 -23
  142. package/build/types/injectHtml.d.ts +0 -0
  143. package/build/types/react/CatchBoundary.d.ts +0 -33
  144. package/build/types/react/awaited.d.ts +0 -9
  145. package/build/types/react/defer.d.ts +0 -19
  146. package/build/types/react.d.ts +0 -141
  147. package/build/types/useStore.d.ts +0 -12
@@ -1,99 +0,0 @@
1
- /**
2
- * @tanstack/react-router/src/index.tsx
3
- *
4
- * Copyright (c) TanStack
5
- *
6
- * This source code is licensed under the MIT license found in the
7
- * LICENSE.md file in the root directory of this source tree.
8
- *
9
- * @license MIT
10
- */
11
- 'use strict';
12
-
13
- var React = require('react');
14
- var utils = require('./utils.js');
15
-
16
- function _interopNamespaceDefault(e) {
17
- var n = Object.create(null);
18
- if (e) {
19
- Object.keys(e).forEach(function (k) {
20
- if (k !== 'default') {
21
- var d = Object.getOwnPropertyDescriptor(e, k);
22
- Object.defineProperty(n, k, d.get ? d : {
23
- enumerable: true,
24
- get: function () { return e[k]; }
25
- });
26
- }
27
- });
28
- }
29
- n.default = e;
30
- return Object.freeze(n);
31
- }
32
-
33
- var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
34
-
35
- const createStore = (createState, opts) => {
36
- let state;
37
- const listeners = new Set();
38
- const setState = (updater, opts2) => {
39
- const previousState = state;
40
- state = utils.functionalUpdate(updater, state);
41
- if (opts?.onUpdate) {
42
- state = opts.onUpdate(state, previousState);
43
- }
44
- if (opts2?.notify ?? true) {
45
- listeners.forEach(listener => listener(state, previousState));
46
- }
47
- };
48
- const getState = () => state;
49
- const subscribe = listener => {
50
- listeners.add(listener);
51
- return () => listeners.delete(listener);
52
- };
53
- const api = {
54
- setState,
55
- getState,
56
- subscribe
57
- };
58
- state = createState(setState, getState, api);
59
- return api;
60
- };
61
- const defaultSelector = state => state;
62
- function useStore(store, selector_
63
- // areEqual: (a: Slice, b: Slice) => boolean = shallow,
64
- ) {
65
- const state = store.getState();
66
- const selector = selector_ || defaultSelector;
67
- const slice = React__namespace.useMemo(() => selector(state), [state]);
68
- const [[sliceFromReducer, storeFromReducer], rerender] = React__namespace.useReducer((prev, shouldSync) => {
69
- if (shouldSync) {
70
- return [slice, store];
71
- }
72
- const nextState = store.getState();
73
- if (Object.is(state, nextState) && prev[1] === store) {
74
- return prev;
75
- }
76
- const nextSlice = selector(nextState);
77
- if (utils.shallow(prev[0], nextSlice) && prev[1] === store) {
78
- return prev;
79
- }
80
- return [nextSlice, store];
81
- }, undefined, () => [slice, store]);
82
- React__namespace.useEffect(() => {
83
- const unsubscribe = store.subscribe(() => rerender());
84
- rerender();
85
- return unsubscribe;
86
- }, [store]);
87
- if (storeFromReducer !== store) {
88
- rerender(true);
89
- return slice;
90
- }
91
- if (!utils.shallow(sliceFromReducer, slice)) {
92
- rerender(true);
93
- }
94
- return sliceFromReducer;
95
- }
96
-
97
- exports.createStore = createStore;
98
- exports.useStore = useStore;
99
- //# sourceMappingURL=useStore.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useStore.js","sources":["../../src/useStore.ts"],"sourcesContent":["import * as React from 'react'\nimport { NonNullableUpdater, functionalUpdate, shallow } from './utils'\n\nexport type Store<T> = {\n getState: () => T\n setState: (\n updater: NonNullableUpdater<T>,\n opts?: {\n notify?: boolean\n },\n ) => void\n subscribe: (listener: (state: T) => void) => () => void\n}\n\nexport const createStore = <T>(\n createState: (\n setState: (nextState: T) => void,\n getState: () => T,\n api: Store<T>,\n ) => T,\n opts?: {\n onUpdate?: (nextState: T, prevState: T) => T\n },\n): Store<T> => {\n let state: T\n const listeners = new Set<\n (nextState: T, prevState: T) => void | Promise<void>\n >()\n\n const setState = (\n updater: NonNullableUpdater<T>,\n opts2?: {\n notify?: boolean\n },\n ) => {\n const previousState = state\n state = functionalUpdate(updater, state)\n if (opts?.onUpdate) {\n state = opts.onUpdate(state, previousState)\n }\n if (opts2?.notify ?? true) {\n listeners.forEach((listener) => listener(state, previousState))\n }\n }\n\n const getState = () => state\n\n const subscribe = (\n listener: (nextState: T, prevState: T) => void | Promise<void>,\n ) => {\n listeners.add(listener)\n return () => listeners.delete(listener)\n }\n\n const api = { setState, getState, subscribe }\n state = createState(setState, getState, api)\n\n return api\n}\n\nconst defaultSelector = <T>(state: T) => state as any\n\nexport function useStore<State, Slice>(\n store: Store<State>,\n selector_?: (state: State) => Slice,\n // areEqual: (a: Slice, b: Slice) => boolean = shallow,\n) {\n const state = store.getState()\n const selector = (selector_ || defaultSelector) as (state: State) => Slice\n const slice = React.useMemo(() => selector(state), [state])\n\n const [[sliceFromReducer, storeFromReducer], rerender] = React.useReducer<\n React.Reducer<readonly [Slice, Store<State>], boolean | undefined>,\n undefined\n >(\n (prev, shouldSync?: boolean) => {\n if (shouldSync) {\n return [slice, store]\n }\n\n const nextState = store.getState()\n\n if (Object.is(state, nextState) && prev[1] === store) {\n return prev\n }\n\n const nextSlice = selector(nextState)\n\n if (shallow(prev[0], nextSlice) && prev[1] === store) {\n return prev\n }\n\n return [nextSlice, store]\n },\n undefined,\n () => [slice, store],\n )\n\n React.useEffect(() => {\n const unsubscribe = store.subscribe(() =>\n (rerender as React.DispatchWithoutAction)(),\n )\n ;(rerender as React.DispatchWithoutAction)()\n return unsubscribe\n }, [store])\n\n if (storeFromReducer !== store) {\n rerender(true)\n return slice\n }\n\n if (!shallow(sliceFromReducer, slice)) {\n rerender(true)\n }\n\n return sliceFromReducer\n}\n"],"names":["createStore","createState","opts","state","listeners","Set","setState","updater","opts2","previousState","functionalUpdate","onUpdate","notify","forEach","listener","getState","subscribe","add","delete","api","defaultSelector","useStore","store","selector_","selector","slice","React","useMemo","sliceFromReducer","storeFromReducer","rerender","useReducer","prev","shouldSync","nextState","Object","is","nextSlice","shallow","undefined","useEffect","unsubscribe"],"mappings":"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"}
@@ -1,23 +0,0 @@
1
- import { AnyRoute } from './route';
2
- import { ParseRoute, FullSearchSchema, RouteById, RouteIds } from './routeInfo';
3
- export interface RouteMatch<TRouteTree extends AnyRoute = AnyRoute, TRouteId extends RouteIds<TRouteTree> = ParseRoute<TRouteTree>['id']> {
4
- id: string;
5
- routeId: TRouteId;
6
- pathname: string;
7
- params: RouteById<TRouteTree, TRouteId>['types']['allParams'];
8
- status: 'pending' | 'success' | 'error';
9
- isFetching: boolean;
10
- invalid: boolean;
11
- error: unknown;
12
- paramsError: unknown;
13
- searchError: unknown;
14
- updatedAt: number;
15
- loadPromise?: Promise<void>;
16
- __resolveLoadPromise?: () => void;
17
- context: RouteById<TRouteTree, TRouteId>['types']['allContext'];
18
- routeSearch: RouteById<TRouteTree, TRouteId>['types']['searchSchema'];
19
- search: FullSearchSchema<TRouteTree> & RouteById<TRouteTree, TRouteId>['types']['fullSearchSchema'];
20
- fetchedAt: number;
21
- abortController: AbortController;
22
- }
23
- export type AnyRouteMatch = RouteMatch<any>;
File without changes
@@ -1,33 +0,0 @@
1
- import * as React from 'react';
2
- export declare function CatchBoundary(props: {
3
- resetKey: string;
4
- children: any;
5
- errorComponent?: any;
6
- onCatch: (error: any) => void;
7
- }): React.JSX.Element;
8
- export declare class CatchBoundaryImpl extends React.Component<{
9
- resetKey: string;
10
- children: (props: {
11
- error: any;
12
- reset: () => void;
13
- }) => any;
14
- onCatch?: (error: any) => void;
15
- }> {
16
- state: any;
17
- static getDerivedStateFromError(error: any): {
18
- error: any;
19
- };
20
- componentDidUpdate(prevProps: Readonly<{
21
- resetKey: string;
22
- children: (props: {
23
- error: any;
24
- reset: () => void;
25
- }) => any;
26
- onCatch?: ((error: any, info: any) => void) | undefined;
27
- }>, prevState: any): void;
28
- componentDidCatch(error: any): void;
29
- render(): any;
30
- }
31
- export declare function ErrorComponent({ error }: {
32
- error: any;
33
- }): React.JSX.Element;
@@ -1,9 +0,0 @@
1
- /// <reference types="react" />
2
- import { DeferredPromise } from '../defer';
3
- export type AwaitOptions<T> = {
4
- promise: DeferredPromise<T>;
5
- };
6
- export declare function useAwaited<T>({ promise }: AwaitOptions<T>): [T];
7
- export declare function Await<T>(props: AwaitOptions<T> & {
8
- children: (result: T) => JSX.Element;
9
- }): JSX.Element;
@@ -1,19 +0,0 @@
1
- export type DeferredPromiseState<T> = {
2
- uid: string;
3
- } & ({
4
- status: 'pending';
5
- data?: T;
6
- error?: unknown;
7
- } | {
8
- status: 'success';
9
- data: T;
10
- } | {
11
- status: 'error';
12
- data?: T;
13
- error: unknown;
14
- });
15
- export type DeferredPromise<T> = Promise<T> & {
16
- __deferredState: DeferredPromiseState<T>;
17
- };
18
- export declare function defer<T>(_promise: Promise<T>): DeferredPromise<T>;
19
- export declare function isDehydratedDeferred(obj: any): boolean;
@@ -1,141 +0,0 @@
1
- import * as React from 'react';
2
- import { LinkOptions, ToOptions, ResolveRelativePath, NavigateOptions } from './link';
3
- import { AnySearchSchema, AnyPathParams, AnyContext, AnyRoute } from './route';
4
- import { RoutePaths, RouteByPath, RouteIds, ParseRoute, RoutesById, RouteById, AllParams } from './routeInfo';
5
- import { RegisteredRouter, RouterOptions, Router, RouterState } from './router';
6
- import { RouteMatch } from './RouteMatch';
7
- import { NoInfer } from './utils';
8
- import { MatchRouteOptions, RouterContext } from './RouterProvider';
9
- export type RouteProps<TFullSearchSchema extends Record<string, any> = AnySearchSchema, TAllParams extends AnyPathParams = AnyPathParams, TAllContext extends Record<string, any> = AnyContext> = {
10
- useMatch: <TSelected = TAllContext>(opts?: {
11
- select?: (search: TAllContext) => TSelected;
12
- }) => TSelected;
13
- useRouteContext: <TSelected = TAllContext>(opts?: {
14
- select?: (search: TAllContext) => TSelected;
15
- }) => TSelected;
16
- useSearch: <TSelected = TFullSearchSchema>(opts?: {
17
- select?: (search: TFullSearchSchema) => TSelected;
18
- }) => TSelected;
19
- useParams: <TSelected = TAllParams>(opts?: {
20
- select?: (search: TAllParams) => TSelected;
21
- }) => TSelected;
22
- };
23
- export type ErrorRouteProps<TFullSearchSchema extends Record<string, any> = AnySearchSchema, TAllParams extends AnyPathParams = AnyPathParams, TAllContext extends Record<string, any> = AnyContext> = {
24
- error: unknown;
25
- info: {
26
- componentStack: string;
27
- };
28
- } & RouteProps<TFullSearchSchema, TAllParams, TAllContext>;
29
- export type PendingRouteProps<TFullSearchSchema extends Record<string, any> = AnySearchSchema, TAllParams extends AnyPathParams = AnyPathParams, TAllContext extends Record<string, any> = AnyContext> = RouteProps<TFullSearchSchema, TAllParams, TAllContext>;
30
- type ReactNode = any;
31
- export type SyncRouteComponent<TProps> = ((props: TProps) => ReactNode) | React.LazyExoticComponent<(props: TProps) => ReactNode>;
32
- export type AsyncRouteComponent<TProps> = SyncRouteComponent<TProps> & {
33
- preload?: () => Promise<void>;
34
- };
35
- export type RouteComponent<TFullSearchSchema extends Record<string, any>, TAllParams extends AnyPathParams, TAllContext extends Record<string, any>> = AsyncRouteComponent<RouteProps<TFullSearchSchema, TAllParams, TAllContext>>;
36
- export type ErrorRouteComponent<TFullSearchSchema extends Record<string, any>, TAllParams extends AnyPathParams, TAllContext extends Record<string, any>> = AsyncRouteComponent<ErrorRouteProps<TFullSearchSchema, TAllParams, TAllContext>>;
37
- export type PendingRouteComponent<TFullSearchSchema extends Record<string, any>, TAllParams extends AnyPathParams, TAllContext extends Record<string, any>> = AsyncRouteComponent<PendingRouteProps<TFullSearchSchema, TAllParams, TAllContext>>;
38
- export type AnyRouteComponent = RouteComponent<any, any, any>;
39
- export declare function lazyRouteComponent<T extends Record<string, any>, TKey extends keyof T = 'default'>(importer: () => Promise<T>, exportName?: TKey): T[TKey] extends (props: infer TProps) => any ? AsyncRouteComponent<TProps> : never;
40
- export type LinkPropsOptions<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TFrom extends RoutePaths<TRouteTree> = '/', TTo extends string = '', TMaskFrom extends RoutePaths<TRouteTree> = '/', TMaskTo extends string = ''> = LinkOptions<TRouteTree, TFrom, TTo, TMaskFrom, TMaskTo> & {
41
- activeProps?: React.AnchorHTMLAttributes<HTMLAnchorElement> | (() => React.AnchorHTMLAttributes<HTMLAnchorElement>);
42
- inactiveProps?: React.AnchorHTMLAttributes<HTMLAnchorElement> | (() => React.AnchorHTMLAttributes<HTMLAnchorElement>);
43
- startTransition?: boolean;
44
- };
45
- export type MakeUseMatchRouteOptions<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TFrom extends RoutePaths<TRouteTree> = '/', TTo extends string = '', TMaskFrom extends RoutePaths<TRouteTree> = '/', TMaskTo extends string = ''> = ToOptions<AnyRoute, TFrom, TTo, TMaskFrom, TMaskTo> & MatchRouteOptions;
46
- export type MakeMatchRouteOptions<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TFrom extends RoutePaths<TRouteTree> = '/', TTo extends string = '', TMaskFrom extends RoutePaths<TRouteTree> = '/', TMaskTo extends string = ''> = ToOptions<TRouteTree, TFrom, TTo, TMaskFrom, TMaskTo> & MatchRouteOptions & {
47
- children?: ((params?: RouteByPath<TRouteTree, ResolveRelativePath<TFrom, NoInfer<TTo>>>['types']['allParams']) => ReactNode) | React.ReactNode;
48
- };
49
- export type MakeLinkPropsOptions<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TFrom extends RoutePaths<TRouteTree> = '/', TTo extends string = '', TMaskFrom extends RoutePaths<TRouteTree> = '/', TMaskTo extends string = ''> = LinkPropsOptions<TRouteTree, TFrom, TTo, TMaskFrom, TMaskTo> & React.AnchorHTMLAttributes<HTMLAnchorElement>;
50
- export type MakeLinkOptions<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TFrom extends RoutePaths<TRouteTree> = '/', TTo extends string = '', TMaskFrom extends RoutePaths<TRouteTree> = '/', TMaskTo extends string = ''> = LinkPropsOptions<TRouteTree, TFrom, TTo, TMaskFrom, TMaskTo> & Omit<React.AnchorHTMLAttributes<HTMLAnchorElement>, 'children'> & {
51
- children?: React.ReactNode | ((state: {
52
- isActive: boolean;
53
- }) => React.ReactNode);
54
- };
55
- export type PromptProps = {
56
- message: string;
57
- condition?: boolean | any;
58
- children?: ReactNode;
59
- };
60
- export declare function useLinkProps<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TFrom extends RoutePaths<TRouteTree> = '/', TTo extends string = '', TMaskFrom extends RoutePaths<TRouteTree> = '/', TMaskTo extends string = ''>(options: MakeLinkPropsOptions<TRouteTree, TFrom, TTo, TMaskFrom, TMaskTo>): React.AnchorHTMLAttributes<HTMLAnchorElement>;
61
- export interface LinkComponent<TProps extends Record<string, any> = {}> {
62
- <TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TFrom extends RoutePaths<TRouteTree> = '/', TTo extends string = '', TMaskFrom extends RoutePaths<TRouteTree> = '/', TMaskTo extends string = ''>(props: MakeLinkOptions<TRouteTree, TFrom, TTo, TMaskFrom, TMaskTo> & TProps & React.RefAttributes<HTMLAnchorElement>): ReactNode;
63
- }
64
- export declare const Link: LinkComponent;
65
- export declare function Navigate<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TFrom extends RoutePaths<TRouteTree> = '/', TTo extends string = '', TMaskFrom extends RoutePaths<TRouteTree> = '/', TMaskTo extends string = ''>(props: NavigateOptions<TRouteTree, TFrom, TTo, TMaskFrom, TMaskTo>): null;
66
- export declare const matchesContext: React.Context<RouteMatch<AnyRoute, any>[]>;
67
- export type RouterProps<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TDehydrated extends Record<string, any> = Record<string, any>> = Omit<RouterOptions<TRouteTree, TDehydrated>, 'context'> & {
68
- router: Router<TRouteTree>;
69
- context?: Partial<RouterOptions<TRouteTree, TDehydrated>['context']>;
70
- };
71
- export declare function useRouter<TRouteTree extends AnyRoute = RegisteredRouter['routeTree']>(): RouterContext<TRouteTree>;
72
- export declare function useRouterState<TSelected = RouterState<RegisteredRouter['routeTree']>>(opts?: {
73
- select: (state: RouterState<RegisteredRouter['routeTree']>) => TSelected;
74
- }): TSelected;
75
- export declare function useMatches<T = RouteMatch[]>(opts?: {
76
- select?: (matches: RouteMatch[]) => T;
77
- }): T;
78
- type StrictOrFrom<TFrom> = {
79
- from: TFrom;
80
- strict?: true;
81
- } | {
82
- from?: never;
83
- strict: false;
84
- };
85
- export declare function useMatch<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TFrom extends RouteIds<TRouteTree> = RouteIds<TRouteTree>, TStrict extends boolean = true, TRouteMatchState = RouteMatch<TRouteTree, TFrom>, TSelected = TRouteMatchState>(opts: StrictOrFrom<TFrom> & {
86
- select?: (match: TRouteMatchState) => TSelected;
87
- }): TStrict extends true ? TRouteMatchState : TRouteMatchState | undefined;
88
- export type RouteFromIdOrRoute<T, TRouteTree extends AnyRoute = RegisteredRouter['routeTree']> = T extends ParseRoute<TRouteTree> ? T : T extends RouteIds<TRouteTree> ? RoutesById<TRouteTree>[T] : T extends string ? RouteIds<TRouteTree> : never;
89
- export declare function useRouteContext<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TFrom extends RouteIds<TRouteTree> = RouteIds<TRouteTree>, TStrict extends boolean = true, TRouteContext = RouteById<TRouteTree, TFrom>['types']['allContext'], TSelected = TRouteContext>(opts: StrictOrFrom<TFrom> & {
90
- select?: (search: TRouteContext) => TSelected;
91
- }): TStrict extends true ? TSelected : TSelected | undefined;
92
- export declare function useSearch<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TFrom extends RouteIds<TRouteTree> = RouteIds<TRouteTree>, TStrict extends boolean = true, TSearch = RouteById<TRouteTree, TFrom>['types']['fullSearchSchema'], TSelected = TSearch>(opts: StrictOrFrom<TFrom> & {
93
- select?: (search: TSearch) => TSelected;
94
- }): TStrict extends true ? TSelected : TSelected | undefined;
95
- export declare function useParams<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TFrom extends RouteIds<TRouteTree> = RouteIds<TRouteTree>, TDefaultSelected = AllParams<TRouteTree> & RouteById<TRouteTree, TFrom>['types']['allParams'], TSelected = TDefaultSelected>(opts: StrictOrFrom<TFrom> & {
96
- select?: (search: TDefaultSelected) => TSelected;
97
- }): TSelected;
98
- export declare function useNavigate<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TDefaultFrom extends RoutePaths<TRouteTree> = '/'>(defaultOpts?: {
99
- from?: TDefaultFrom;
100
- }): <TFrom extends RoutePaths<TRouteTree> = TDefaultFrom, TTo extends string = "", TMaskFrom extends RoutePaths<TRouteTree> = "/", TMaskTo extends string = "">(opts?: NavigateOptions<TRouteTree, TFrom, TTo, TMaskFrom, TMaskTo> | undefined) => Promise<void>;
101
- export declare function typedNavigate<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TDefaultFrom extends RoutePaths<TRouteTree> = '/'>(navigate: (opts: NavigateOptions<any>) => Promise<void>): <TFrom extends RoutePaths<TRouteTree> = TDefaultFrom, TTo extends string = "", TMaskFrom extends RoutePaths<TRouteTree> = "/", TMaskTo extends string = "">(opts?: NavigateOptions<TRouteTree, TFrom, TTo, TMaskFrom, TMaskTo> | undefined) => Promise<void>;
102
- export declare function useMatchRoute<TRouteTree extends AnyRoute = RegisteredRouter['routeTree']>(): <TFrom extends RoutePaths<TRouteTree> = "/", TTo extends string = "", TMaskFrom extends RoutePaths<TRouteTree> = "/", TMaskTo extends string = "", TResolved extends string = ResolveRelativePath<TFrom, NoInfer<TTo>>>(opts: MakeUseMatchRouteOptions<TRouteTree, TFrom, TTo, TMaskFrom, TMaskTo>) => false | RouteById<TRouteTree, TResolved>["types"]["allParams"];
103
- export declare function Matches(): JSX.Element;
104
- export declare function MatchRoute<TRouteTree extends AnyRoute = RegisteredRouter['routeTree'], TFrom extends RoutePaths<TRouteTree> = '/', TTo extends string = '', TMaskFrom extends RoutePaths<TRouteTree> = '/', TMaskTo extends string = ''>(props: MakeMatchRouteOptions<TRouteTree, TFrom, TTo, TMaskFrom, TMaskTo>): any;
105
- export declare function Outlet(): JSX.Element | null;
106
- export declare function CatchBoundary(props: {
107
- resetKey: string;
108
- children: any;
109
- errorComponent?: any;
110
- onCatch: (error: any) => void;
111
- }): JSX.Element;
112
- export declare class CatchBoundaryImpl extends React.Component<{
113
- resetKey: string;
114
- children: (props: {
115
- error: any;
116
- reset: () => void;
117
- }) => any;
118
- onCatch?: (error: any) => void;
119
- }> {
120
- state: any;
121
- static getDerivedStateFromError(error: any): {
122
- error: any;
123
- };
124
- componentDidUpdate(prevProps: Readonly<{
125
- resetKey: string;
126
- children: (props: {
127
- error: any;
128
- reset: () => void;
129
- }) => any;
130
- onCatch?: ((error: any, info: any) => void) | undefined;
131
- }>, prevState: any): void;
132
- componentDidCatch(error: any): void;
133
- render(): any;
134
- }
135
- export declare function ErrorComponent({ error }: {
136
- error: any;
137
- }): JSX.Element;
138
- export declare function useBlocker(message: string, condition?: boolean | any): void;
139
- export declare function Block({ message, condition, children }: PromptProps): any;
140
- export declare function shallow<T>(objA: T, objB: T): boolean;
141
- export {};
@@ -1,12 +0,0 @@
1
- import { NonNullableUpdater } from './utils';
2
- export type Store<T> = {
3
- getState: () => T;
4
- setState: (updater: NonNullableUpdater<T>, opts?: {
5
- notify?: boolean;
6
- }) => void;
7
- subscribe: (listener: (state: T) => void) => () => void;
8
- };
9
- export declare const createStore: <T>(createState: (setState: (nextState: T) => void, getState: () => T, api: Store<T>) => T, opts?: {
10
- onUpdate?: ((nextState: T, prevState: T) => T) | undefined;
11
- } | undefined) => Store<T>;
12
- export declare function useStore<State, Slice>(store: Store<State>, selector_?: (state: State) => Slice): Slice;