@tanstack/react-router 1.7.1 → 1.8.0

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 (200) hide show
  1. package/dist/cjs/CatchBoundary.cjs +106 -0
  2. package/dist/cjs/CatchBoundary.cjs.map +1 -0
  3. package/dist/cjs/Matches.cjs +278 -0
  4. package/dist/cjs/Matches.cjs.map +1 -0
  5. package/{build/cjs/RouterProvider.js → dist/cjs/RouterProvider.cjs} +55 -58
  6. package/dist/cjs/RouterProvider.cjs.map +1 -0
  7. package/dist/cjs/awaited.cjs +51 -0
  8. package/dist/cjs/awaited.cjs.map +1 -0
  9. package/dist/cjs/defer.cjs +30 -0
  10. package/dist/cjs/defer.cjs.map +1 -0
  11. package/dist/cjs/fileRoute.cjs +19 -0
  12. package/dist/cjs/fileRoute.cjs.map +1 -0
  13. package/dist/cjs/history.d.cts +7 -0
  14. package/{build/cjs/index.js → dist/cjs/index.cjs} +39 -51
  15. package/dist/cjs/index.cjs.map +1 -0
  16. package/dist/cjs/lazyRouteComponent.cjs +40 -0
  17. package/dist/cjs/lazyRouteComponent.cjs.map +1 -0
  18. package/dist/cjs/link.cjs +196 -0
  19. package/dist/cjs/link.cjs.map +1 -0
  20. package/dist/cjs/link.d.cts +85 -0
  21. package/{build/cjs/path.js → dist/cjs/path.cjs} +77 -94
  22. package/dist/cjs/path.cjs.map +1 -0
  23. package/dist/cjs/qss.cjs +45 -0
  24. package/dist/cjs/qss.cjs.map +1 -0
  25. package/dist/cjs/redirects.cjs +15 -0
  26. package/dist/cjs/redirects.cjs.map +1 -0
  27. package/dist/cjs/route.cjs +143 -0
  28. package/dist/cjs/route.cjs.map +1 -0
  29. package/dist/cjs/router.cjs +1070 -0
  30. package/dist/cjs/router.cjs.map +1 -0
  31. package/dist/cjs/routerContext.cjs +29 -0
  32. package/dist/cjs/routerContext.cjs.map +1 -0
  33. package/{build/cjs/scroll-restoration.js → dist/cjs/scroll-restoration.cjs} +58 -75
  34. package/dist/cjs/scroll-restoration.cjs.map +1 -0
  35. package/{build/cjs/searchParams.js → dist/cjs/searchParams.cjs} +18 -36
  36. package/dist/cjs/searchParams.cjs.map +1 -0
  37. package/dist/cjs/useBlocker.cjs +36 -0
  38. package/dist/cjs/useBlocker.cjs.map +1 -0
  39. package/dist/cjs/useNavigate.cjs +55 -0
  40. package/dist/cjs/useNavigate.cjs.map +1 -0
  41. package/dist/cjs/useParams.cjs +16 -0
  42. package/dist/cjs/useParams.cjs.map +1 -0
  43. package/dist/cjs/useRouteContext.cjs +11 -0
  44. package/dist/cjs/useRouteContext.cjs.map +1 -0
  45. package/dist/cjs/useRouter.cjs +33 -0
  46. package/dist/cjs/useRouter.cjs.map +1 -0
  47. package/dist/cjs/useRouterState.cjs +12 -0
  48. package/dist/cjs/useRouterState.cjs.map +1 -0
  49. package/dist/cjs/useSearch.cjs +13 -0
  50. package/dist/cjs/useSearch.cjs.map +1 -0
  51. package/{build/cjs/utils.js → dist/cjs/utils.cjs} +25 -116
  52. package/dist/cjs/utils.cjs.map +1 -0
  53. package/dist/esm/CatchBoundary.d.ts +36 -0
  54. package/dist/esm/CatchBoundary.js +89 -0
  55. package/dist/esm/CatchBoundary.js.map +1 -0
  56. package/dist/esm/Matches.d.ts +71 -0
  57. package/dist/esm/Matches.js +261 -0
  58. package/{build/cjs → dist/esm}/Matches.js.map +1 -1
  59. package/dist/esm/RouterProvider.d.ts +27 -0
  60. package/dist/esm/RouterProvider.js +136 -0
  61. package/{build/cjs → dist/esm}/RouterProvider.js.map +1 -1
  62. package/dist/esm/awaited.d.ts +9 -0
  63. package/dist/esm/awaited.js +51 -0
  64. package/dist/esm/awaited.js.map +1 -0
  65. package/dist/esm/defer.d.ts +22 -0
  66. package/dist/esm/defer.js +30 -0
  67. package/{build/cjs → dist/esm}/defer.js.map +1 -1
  68. package/dist/esm/fileRoute.d.ts +21 -0
  69. package/dist/esm/fileRoute.js +19 -0
  70. package/dist/esm/fileRoute.js.map +1 -0
  71. package/{build/types → dist/esm}/history.d.ts +1 -1
  72. package/dist/esm/index.d.ts +30 -0
  73. package/dist/esm/index.js +118 -0
  74. package/dist/esm/index.js.map +1 -0
  75. package/dist/esm/lazyRouteComponent.d.ts +2 -0
  76. package/dist/esm/lazyRouteComponent.js +23 -0
  77. package/{build/cjs → dist/esm}/lazyRouteComponent.js.map +1 -1
  78. package/{build/types → dist/esm}/link.d.ts +3 -1
  79. package/dist/esm/link.js +179 -0
  80. package/dist/esm/link.js.map +1 -0
  81. package/dist/esm/location.d.ts +12 -0
  82. package/dist/esm/path.d.ts +17 -0
  83. package/dist/esm/path.js +200 -0
  84. package/dist/esm/path.js.map +1 -0
  85. package/dist/esm/qss.d.ts +2 -0
  86. package/dist/esm/qss.js +45 -0
  87. package/dist/esm/qss.js.map +1 -0
  88. package/dist/esm/redirects.d.ts +11 -0
  89. package/dist/esm/redirects.js +15 -0
  90. package/{build/cjs → dist/esm}/redirects.js.map +1 -1
  91. package/dist/esm/route.d.ts +300 -0
  92. package/dist/esm/route.js +143 -0
  93. package/dist/esm/route.js.map +1 -0
  94. package/dist/esm/routeInfo.d.ts +31 -0
  95. package/dist/esm/router.d.ts +201 -0
  96. package/dist/esm/router.js +1070 -0
  97. package/{build/cjs → dist/esm}/router.js.map +1 -1
  98. package/dist/esm/routerContext.d.ts +3 -0
  99. package/dist/esm/routerContext.js +13 -0
  100. package/{build/cjs → dist/esm}/routerContext.js.map +1 -1
  101. package/dist/esm/scroll-restoration.d.ts +18 -0
  102. package/dist/esm/scroll-restoration.js +168 -0
  103. package/dist/esm/scroll-restoration.js.map +1 -0
  104. package/dist/esm/searchParams.d.ts +7 -0
  105. package/dist/esm/searchParams.js +63 -0
  106. package/{build/cjs → dist/esm}/searchParams.js.map +1 -1
  107. package/dist/esm/useBlocker.d.ts +9 -0
  108. package/dist/esm/useBlocker.js +19 -0
  109. package/{build/cjs → dist/esm}/useBlocker.js.map +1 -1
  110. package/dist/esm/useNavigate.d.ts +20 -0
  111. package/dist/esm/useNavigate.js +38 -0
  112. package/{build/cjs → dist/esm}/useNavigate.js.map +1 -1
  113. package/dist/esm/useParams.d.ts +7 -0
  114. package/dist/esm/useParams.js +16 -0
  115. package/{build/cjs → dist/esm}/useParams.js.map +1 -1
  116. package/dist/esm/useRouteContext.d.ts +7 -0
  117. package/dist/esm/useRouteContext.js +11 -0
  118. package/{build/cjs → dist/esm}/useRouteContext.js.map +1 -1
  119. package/dist/esm/useRouter.d.ts +5 -0
  120. package/dist/esm/useRouter.js +16 -0
  121. package/{build/cjs → dist/esm}/useRouter.js.map +1 -1
  122. package/dist/esm/useRouterState.d.ts +6 -0
  123. package/dist/esm/useRouterState.js +12 -0
  124. package/{build/cjs → dist/esm}/useRouterState.js.map +1 -1
  125. package/dist/esm/useSearch.d.ts +7 -0
  126. package/dist/esm/useSearch.js +13 -0
  127. package/dist/esm/useSearch.js.map +1 -0
  128. package/dist/esm/utils.d.ts +46 -0
  129. package/dist/esm/utils.js +137 -0
  130. package/{build/cjs → dist/esm}/utils.js.map +1 -1
  131. package/package.json +43 -22
  132. package/src/fileRoute.ts +4 -5
  133. package/src/link.tsx +5 -4
  134. package/src/route.ts +5 -6
  135. package/src/useSearch.tsx +5 -2
  136. package/build/cjs/CatchBoundary.js +0 -128
  137. package/build/cjs/CatchBoundary.js.map +0 -1
  138. package/build/cjs/Matches.js +0 -260
  139. package/build/cjs/_virtual/_rollupPluginBabelHelpers.js +0 -29
  140. package/build/cjs/_virtual/_rollupPluginBabelHelpers.js.map +0 -1
  141. package/build/cjs/awaited.js +0 -60
  142. package/build/cjs/awaited.js.map +0 -1
  143. package/build/cjs/defer.js +0 -42
  144. package/build/cjs/fileRoute.js +0 -31
  145. package/build/cjs/fileRoute.js.map +0 -1
  146. package/build/cjs/index.js.map +0 -1
  147. package/build/cjs/lazyRouteComponent.js +0 -54
  148. package/build/cjs/link.js +0 -224
  149. package/build/cjs/link.js.map +0 -1
  150. package/build/cjs/path.js.map +0 -1
  151. package/build/cjs/qss.js +0 -63
  152. package/build/cjs/qss.js.map +0 -1
  153. package/build/cjs/redirects.js +0 -28
  154. package/build/cjs/route.js +0 -292
  155. package/build/cjs/route.js.map +0 -1
  156. package/build/cjs/router.js +0 -1116
  157. package/build/cjs/routerContext.js +0 -42
  158. package/build/cjs/scroll-restoration.js.map +0 -1
  159. package/build/cjs/useBlocker.js +0 -55
  160. package/build/cjs/useNavigate.js +0 -88
  161. package/build/cjs/useParams.js +0 -27
  162. package/build/cjs/useRouteContext.js +0 -23
  163. package/build/cjs/useRouter.js +0 -44
  164. package/build/cjs/useRouterState.js +0 -24
  165. package/build/cjs/useSearch.js +0 -25
  166. package/build/cjs/useSearch.js.map +0 -1
  167. package/build/esm/index.js +0 -2874
  168. package/build/esm/index.js.map +0 -1
  169. package/build/stats-html.html +0 -4838
  170. package/build/stats-react.json +0 -1471
  171. package/build/umd/index.development.js +0 -3573
  172. package/build/umd/index.development.js.map +0 -1
  173. package/build/umd/index.production.js +0 -22
  174. package/build/umd/index.production.js.map +0 -1
  175. /package/{build/types/CatchBoundary.d.ts → dist/cjs/CatchBoundary.d.cts} +0 -0
  176. /package/{build/types/Matches.d.ts → dist/cjs/Matches.d.cts} +0 -0
  177. /package/{build/types/RouterProvider.d.ts → dist/cjs/RouterProvider.d.cts} +0 -0
  178. /package/{build/types/awaited.d.ts → dist/cjs/awaited.d.cts} +0 -0
  179. /package/{build/types/defer.d.ts → dist/cjs/defer.d.cts} +0 -0
  180. /package/{build/types/fileRoute.d.ts → dist/cjs/fileRoute.d.cts} +0 -0
  181. /package/{build/types/index.d.ts → dist/cjs/index.d.cts} +0 -0
  182. /package/{build/types/lazyRouteComponent.d.ts → dist/cjs/lazyRouteComponent.d.cts} +0 -0
  183. /package/{build/types/location.d.ts → dist/cjs/location.d.cts} +0 -0
  184. /package/{build/types/path.d.ts → dist/cjs/path.d.cts} +0 -0
  185. /package/{build/types/qss.d.ts → dist/cjs/qss.d.cts} +0 -0
  186. /package/{build/types/redirects.d.ts → dist/cjs/redirects.d.cts} +0 -0
  187. /package/{build/types/route.d.ts → dist/cjs/route.d.cts} +0 -0
  188. /package/{build/types/routeInfo.d.ts → dist/cjs/routeInfo.d.cts} +0 -0
  189. /package/{build/types/router.d.ts → dist/cjs/router.d.cts} +0 -0
  190. /package/{build/types/routerContext.d.ts → dist/cjs/routerContext.d.cts} +0 -0
  191. /package/{build/types/scroll-restoration.d.ts → dist/cjs/scroll-restoration.d.cts} +0 -0
  192. /package/{build/types/searchParams.d.ts → dist/cjs/searchParams.d.cts} +0 -0
  193. /package/{build/types/useBlocker.d.ts → dist/cjs/useBlocker.d.cts} +0 -0
  194. /package/{build/types/useNavigate.d.ts → dist/cjs/useNavigate.d.cts} +0 -0
  195. /package/{build/types/useParams.d.ts → dist/cjs/useParams.d.cts} +0 -0
  196. /package/{build/types/useRouteContext.d.ts → dist/cjs/useRouteContext.d.cts} +0 -0
  197. /package/{build/types/useRouter.d.ts → dist/cjs/useRouter.d.cts} +0 -0
  198. /package/{build/types/useRouterState.d.ts → dist/cjs/useRouterState.d.cts} +0 -0
  199. /package/{build/types/useSearch.d.ts → dist/cjs/useSearch.d.cts} +0 -0
  200. /package/{build/types/utils.d.ts → dist/cjs/utils.d.cts} +0 -0
@@ -1,42 +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
-
15
- function _interopNamespaceDefault(e) {
16
- var n = Object.create(null);
17
- if (e) {
18
- Object.keys(e).forEach(function (k) {
19
- if (k !== 'default') {
20
- var d = Object.getOwnPropertyDescriptor(e, k);
21
- Object.defineProperty(n, k, d.get ? d : {
22
- enumerable: true,
23
- get: function () { return e[k]; }
24
- });
25
- }
26
- });
27
- }
28
- n.default = e;
29
- return Object.freeze(n);
30
- }
31
-
32
- var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
33
-
34
- exports.routerContext = /*#__PURE__*/React__namespace.createContext(null);
35
- if (typeof document !== 'undefined') {
36
- if (window.__TSR_ROUTER_CONTEXT__) {
37
- exports.routerContext = window.__TSR_ROUTER_CONTEXT__;
38
- } else {
39
- window.__TSR_ROUTER_CONTEXT__ = exports.routerContext;
40
- }
41
- }
42
- //# sourceMappingURL=routerContext.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scroll-restoration.js","sources":["../../src/scroll-restoration.tsx"],"sourcesContent":["import * as React from 'react'\n\nconst useLayoutEffect =\n typeof window !== 'undefined' ? React.useLayoutEffect : React.useEffect\n\nimport { ParsedLocation } from './location'\nimport { useRouter } from './useRouter'\nimport { NonNullableUpdater, functionalUpdate } from './utils'\n\nconst windowKey = 'window'\nconst delimiter = '___'\n\nlet weakScrolledElements = new WeakSet<any>()\n\ntype CacheValue = Record<string, { scrollX: number; scrollY: number }>\ntype CacheState = {\n cached: CacheValue\n next: CacheValue\n}\n\ntype Cache = {\n state: CacheState\n set: (updater: NonNullableUpdater<CacheState>) => void\n}\n\nconst sessionsStorage = typeof window !== 'undefined' && window.sessionStorage\n\nlet cache: Cache = sessionsStorage\n ? (() => {\n const storageKey = 'tsr-scroll-restoration-v2'\n\n const state: CacheState = JSON.parse(\n window.sessionStorage.getItem(storageKey) || 'null',\n ) || { cached: {}, next: {} }\n\n return {\n state,\n set: (updater) => {\n cache.state = functionalUpdate(updater, cache.state)\n window.sessionStorage.setItem(storageKey, JSON.stringify(cache.state))\n },\n }\n })()\n : (undefined as any)\n\nexport type ScrollRestorationOptions = {\n getKey?: (location: ParsedLocation) => string\n}\n\nconst defaultGetKey = (location: ParsedLocation) => location.state.key!\n\nexport function useScrollRestoration(options?: ScrollRestorationOptions) {\n const router = useRouter()\n\n useLayoutEffect(() => {\n const getKey = options?.getKey || defaultGetKey\n\n const { history } = window\n if (history.scrollRestoration) {\n history.scrollRestoration = 'manual'\n }\n\n const onScroll = (event: Event) => {\n if (weakScrolledElements.has(event.target)) return\n weakScrolledElements.add(event.target)\n\n let elementSelector = ''\n\n if (event.target === document || event.target === window) {\n elementSelector = windowKey\n } else {\n const attrId = (event.target as Element).getAttribute(\n 'data-scroll-restoration-id',\n )\n\n if (attrId) {\n elementSelector = `[data-scroll-restoration-id=\"${attrId}\"]`\n } else {\n elementSelector = getCssSelector(event.target)\n }\n }\n\n if (!cache.state.next[elementSelector]) {\n cache.set((c) => ({\n ...c,\n next: {\n ...c.next,\n [elementSelector]: {\n scrollX: NaN,\n scrollY: NaN,\n },\n },\n }))\n }\n }\n\n if (typeof document !== 'undefined') {\n document.addEventListener('scroll', onScroll, true)\n }\n\n const unsubOnBeforeLoad = router.subscribe('onBeforeLoad', (event) => {\n if (event.pathChanged) {\n const restoreKey = getKey(event.fromLocation)\n for (const elementSelector in cache.state.next) {\n const entry = cache.state.next[elementSelector]!\n if (elementSelector === windowKey) {\n entry.scrollX = window.scrollX || 0\n entry.scrollY = window.scrollY || 0\n } else if (elementSelector) {\n const element = document.querySelector(elementSelector)\n entry.scrollX = element?.scrollLeft || 0\n entry.scrollY = element?.scrollTop || 0\n }\n\n cache.set((c) => {\n const next = { ...c.next }\n delete next[elementSelector]\n\n return {\n ...c,\n next,\n cached: {\n ...c.cached,\n [[restoreKey, elementSelector].join(delimiter)]: entry,\n },\n }\n })\n }\n }\n })\n\n const unsubOnResolved = router.subscribe('onResolved', (event) => {\n if (event.pathChanged) {\n if (!router.resetNextScroll) {\n return\n }\n\n router.resetNextScroll = true\n\n const getKey = options?.getKey || defaultGetKey\n\n const restoreKey = getKey(event.toLocation)\n let windowRestored = false\n\n for (const cacheKey in cache.state.cached) {\n const entry = cache.state.cached[cacheKey]!\n const [key, elementSelector] = cacheKey.split(delimiter)\n if (key === restoreKey) {\n if (elementSelector === windowKey) {\n windowRestored = true\n window.scrollTo(entry.scrollX, entry.scrollY)\n } else if (elementSelector) {\n const element = document.querySelector(elementSelector)\n if (element) {\n element.scrollLeft = entry.scrollX\n element.scrollTop = entry.scrollY\n }\n }\n }\n }\n\n if (!windowRestored) {\n window.scrollTo(0, 0)\n }\n\n cache.set((c) => ({ ...c, next: {} }))\n weakScrolledElements = new WeakSet<any>()\n }\n })\n\n return () => {\n document.removeEventListener('scroll', onScroll)\n unsubOnBeforeLoad()\n unsubOnResolved()\n }\n }, [])\n}\n\nexport function ScrollRestoration(props: ScrollRestorationOptions) {\n useScrollRestoration(props)\n return null\n}\n\nexport function useElementScrollRestoration(\n options: (\n | {\n id: string\n getElement?: () => Element | undefined | null\n }\n | {\n id?: string\n getElement: () => Element | undefined | null\n }\n ) & {\n getKey?: (location: ParsedLocation) => string\n },\n) {\n const router = useRouter()\n const getKey = options?.getKey || defaultGetKey\n\n let elementSelector = ''\n\n if (options.id) {\n elementSelector = `[data-scroll-restoration-id=\"${options.id}\"]`\n } else {\n const element = options.getElement?.()\n if (!element) {\n return\n }\n elementSelector = getCssSelector(element)\n }\n\n const restoreKey = getKey(router.latestLocation)\n const cacheKey = [restoreKey, elementSelector].join(delimiter)\n return cache.state.cached[cacheKey]\n}\n\nfunction getCssSelector(el: any): string {\n let path = [],\n parent\n while ((parent = el.parentNode)) {\n path.unshift(\n `${el.tagName}:nth-child(${\n ([].indexOf as any).call(parent.children, el) + 1\n })`,\n )\n el = parent\n }\n return `${path.join(' > ')}`.toLowerCase()\n}\n"],"names":["useLayoutEffect","window","React","useEffect","windowKey","delimiter","weakScrolledElements","WeakSet","sessionsStorage","sessionStorage","cache","storageKey","state","JSON","parse","getItem","cached","next","set","updater","functionalUpdate","setItem","stringify","undefined","defaultGetKey","location","key","useScrollRestoration","options","router","useRouter","getKey","history","scrollRestoration","onScroll","event","has","target","add","elementSelector","document","attrId","getAttribute","getCssSelector","c","scrollX","NaN","scrollY","addEventListener","unsubOnBeforeLoad","subscribe","pathChanged","restoreKey","fromLocation","entry","element","querySelector","scrollLeft","scrollTop","join","unsubOnResolved","resetNextScroll","toLocation","windowRestored","cacheKey","split","scrollTo","removeEventListener","ScrollRestoration","props","useElementScrollRestoration","id","getElement","latestLocation","el","path","parent","parentNode","unshift","tagName","indexOf","call","children","toLowerCase"],"mappings":"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"}
@@ -1,55 +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 useRouter = require('./useRouter.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
- function useBlocker(blockerFn, condition = true) {
36
- const {
37
- history
38
- } = useRouter.useRouter();
39
- React__namespace.useEffect(() => {
40
- if (!condition) return;
41
- return history.block(blockerFn);
42
- });
43
- }
44
- function Block({
45
- blocker,
46
- condition,
47
- children
48
- }) {
49
- useBlocker(blocker, condition);
50
- return children ?? null;
51
- }
52
-
53
- exports.Block = Block;
54
- exports.useBlocker = useBlocker;
55
- //# sourceMappingURL=useBlocker.js.map
@@ -1,88 +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 Matches = require('./Matches.js');
15
- var useRouter = require('./useRouter.js');
16
-
17
- function _interopNamespaceDefault(e) {
18
- var n = Object.create(null);
19
- if (e) {
20
- Object.keys(e).forEach(function (k) {
21
- if (k !== 'default') {
22
- var d = Object.getOwnPropertyDescriptor(e, k);
23
- Object.defineProperty(n, k, d.get ? d : {
24
- enumerable: true,
25
- get: function () { return e[k]; }
26
- });
27
- }
28
- });
29
- }
30
- n.default = e;
31
- return Object.freeze(n);
32
- }
33
-
34
- var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
35
-
36
- function useNavigate(_defaultOpts) {
37
- const {
38
- navigate
39
- } = useRouter.useRouter();
40
- const matchPathname = Matches.useMatch({
41
- strict: false,
42
- select: s => s.pathname
43
- });
44
- return React__namespace.useCallback(({
45
- from,
46
- ...rest
47
- }) => {
48
- return navigate({
49
- from: rest?.to ? matchPathname : undefined,
50
- ...rest
51
- });
52
- }, []);
53
- }
54
-
55
- // NOTE: I don't know of anyone using this. It's undocumented, so let's wait until someone needs it
56
- // export function typedNavigate<
57
- // TRouteTree extends AnyRoute = RegisteredRouter['routeTree'],
58
- // TDefaultFrom extends RoutePaths<TRouteTree> = '/',
59
- // >(navigate: (opts: NavigateOptions<any>) => Promise<void>) {
60
- // return navigate as <
61
- // TFrom extends RoutePaths<TRouteTree> = TDefaultFrom,
62
- // TTo extends string = '',
63
- // TMaskFrom extends RoutePaths<TRouteTree> = '/',
64
- // TMaskTo extends string = '',
65
- // >(
66
- // opts?: NavigateOptions<TRouteTree, TFrom, TTo, TMaskFrom, TMaskTo>,
67
- // ) => Promise<void>
68
- // } //
69
-
70
- function Navigate(props) {
71
- const {
72
- navigate
73
- } = useRouter.useRouter();
74
- const match = Matches.useMatch({
75
- strict: false
76
- });
77
- React__namespace.useEffect(() => {
78
- navigate({
79
- from: props.to ? match.pathname : undefined,
80
- ...props
81
- });
82
- }, []);
83
- return null;
84
- }
85
-
86
- exports.Navigate = Navigate;
87
- exports.useNavigate = useNavigate;
88
- //# sourceMappingURL=useNavigate.js.map
@@ -1,27 +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 utils = require('./utils.js');
14
- var useRouterState = require('./useRouterState.js');
15
- var Matches = require('./Matches.js');
16
-
17
- function useParams(opts) {
18
- return useRouterState.useRouterState({
19
- select: state => {
20
- const params = utils.last(Matches.getRenderedMatches(state))?.params;
21
- return opts?.select ? opts.select(params) : params;
22
- }
23
- });
24
- }
25
-
26
- exports.useParams = useParams;
27
- //# sourceMappingURL=useParams.js.map
@@ -1,23 +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 Matches = require('./Matches.js');
14
-
15
- function useRouteContext(opts) {
16
- return Matches.useMatch({
17
- ...opts,
18
- select: match => opts?.select ? opts.select(match.context) : match.context
19
- });
20
- }
21
-
22
- exports.useRouteContext = useRouteContext;
23
- //# sourceMappingURL=useRouteContext.js.map
@@ -1,44 +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 warning = require('tiny-warning');
15
- var routerContext = require('./routerContext.js');
16
-
17
- function _interopNamespaceDefault(e) {
18
- var n = Object.create(null);
19
- if (e) {
20
- Object.keys(e).forEach(function (k) {
21
- if (k !== 'default') {
22
- var d = Object.getOwnPropertyDescriptor(e, k);
23
- Object.defineProperty(n, k, d.get ? d : {
24
- enumerable: true,
25
- get: function () { return e[k]; }
26
- });
27
- }
28
- });
29
- }
30
- n.default = e;
31
- return Object.freeze(n);
32
- }
33
-
34
- var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
35
-
36
- function useRouter(opts) {
37
- const resolvedContext = typeof document !== 'undefined' ? window.__TSR_ROUTER_CONTEXT__ || routerContext.routerContext : routerContext.routerContext;
38
- const value = React__namespace.useContext(resolvedContext);
39
- warning(!((opts?.warn ?? true) && !value), 'useRouter must be used inside a <RouterProvider> component!');
40
- return value;
41
- }
42
-
43
- exports.useRouter = useRouter;
44
- //# sourceMappingURL=useRouter.js.map
@@ -1,24 +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 reactStore = require('@tanstack/react-store');
14
- var useRouter = require('./useRouter.js');
15
-
16
- function useRouterState(opts) {
17
- const contextRouter = useRouter.useRouter({
18
- warn: opts?.router === undefined
19
- });
20
- return reactStore.useStore((opts?.router || contextRouter).__store, opts?.select);
21
- }
22
-
23
- exports.useRouterState = useRouterState;
24
- //# sourceMappingURL=useRouterState.js.map
@@ -1,25 +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 Matches = require('./Matches.js');
14
-
15
- function useSearch(opts) {
16
- return Matches.useMatch({
17
- ...opts,
18
- select: match => {
19
- return opts?.select ? opts.select(match.search) : match.search;
20
- }
21
- });
22
- }
23
-
24
- exports.useSearch = useSearch;
25
- //# sourceMappingURL=useSearch.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useSearch.js","sources":["../../src/useSearch.tsx"],"sourcesContent":["import { AnyRoute, RootSearchSchema } from './route'\nimport { RouteIds, RouteById } from './routeInfo'\nimport { RegisteredRouter } from './router'\nimport { RouteMatch } from './Matches'\nimport { useMatch } from './Matches'\nimport { StrictOrFrom } from './utils'\n\nexport function useSearch<\n TRouteTree extends AnyRoute = RegisteredRouter['routeTree'],\n TFrom extends RouteIds<TRouteTree> = RouteIds<TRouteTree>,\n TSearch = Exclude<RouteById<TRouteTree, TFrom>['types']['fullSearchSchema'], RootSearchSchema>,\n TSelected = TSearch,\n>(\n opts: StrictOrFrom<TFrom> & {\n select?: (search: TSearch) => TSelected\n },\n) : TSelected {\n return useMatch({\n ...opts,\n select: (match: RouteMatch) => {\n return opts?.select ? opts.select(match.search as TSearch) : match.search\n },\n })\n}\n"],"names":["useSearch","opts","useMatch","select","match","search"],"mappings":";;;;;;;;;;;;;;AAOO,SAASA,SAASA,CAMvBC,IAEC,EACW;AACZ,EAAA,OAAOC,gBAAQ,CAAC;AACd,IAAA,GAAGD,IAAI;IACPE,MAAM,EAAGC,KAAiB,IAAK;AAC7B,MAAA,OAAOH,IAAI,EAAEE,MAAM,GAAGF,IAAI,CAACE,MAAM,CAACC,KAAK,CAACC,MAAiB,CAAC,GAAGD,KAAK,CAACC,MAAM,CAAA;AAC3E,KAAA;AACF,GAAC,CAAC,CAAA;AACJ;;;;"}