@tanstack/router-core 1.108.0 → 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.
- package/dist/cjs/RouterProvider.d.cts +9 -1
- package/dist/cjs/fileRoute.d.cts +12 -0
- package/dist/cjs/index.d.cts +14 -5
- package/dist/cjs/link.cjs.map +1 -1
- package/dist/cjs/link.d.cts +80 -5
- package/dist/cjs/redirect.d.cts +18 -0
- package/dist/cjs/route.d.cts +71 -6
- package/dist/cjs/routeInfo.d.cts +54 -0
- package/dist/cjs/router.cjs.map +1 -1
- package/dist/cjs/router.d.cts +15 -0
- package/dist/cjs/useLoaderData.d.cts +5 -0
- package/dist/cjs/useLoaderDeps.d.cts +5 -0
- package/dist/cjs/useNavigate.d.cts +3 -0
- package/dist/cjs/useParams.d.cts +5 -0
- package/dist/cjs/useRouteContext.d.cts +9 -0
- package/dist/cjs/useSearch.d.cts +5 -0
- package/dist/cjs/utils.cjs.map +1 -1
- package/dist/cjs/utils.d.cts +9 -0
- package/dist/esm/RouterProvider.d.ts +9 -1
- package/dist/esm/fileRoute.d.ts +12 -0
- package/dist/esm/index.d.ts +14 -5
- package/dist/esm/link.d.ts +80 -5
- package/dist/esm/link.js.map +1 -1
- package/dist/esm/redirect.d.ts +18 -0
- package/dist/esm/route.d.ts +71 -6
- package/dist/esm/routeInfo.d.ts +54 -0
- package/dist/esm/router.d.ts +15 -0
- package/dist/esm/router.js.map +1 -1
- package/dist/esm/useLoaderData.d.ts +5 -0
- package/dist/esm/useLoaderDeps.d.ts +5 -0
- package/dist/esm/useNavigate.d.ts +3 -0
- package/dist/esm/useParams.d.ts +5 -0
- package/dist/esm/useRouteContext.d.ts +9 -0
- package/dist/esm/useSearch.d.ts +5 -0
- package/dist/esm/utils.d.ts +9 -0
- package/dist/esm/utils.js.map +1 -1
- package/package.json +1 -1
- package/src/RouterProvider.ts +31 -1
- package/src/fileRoute.ts +32 -0
- package/src/index.ts +89 -1
- package/src/link.ts +445 -37
- package/src/redirect.ts +36 -0
- package/src/route.ts +250 -28
- package/src/routeInfo.ts +235 -0
- package/src/router.ts +32 -0
- package/src/useLoaderData.ts +20 -0
- package/src/useLoaderDeps.ts +13 -0
- package/src/useNavigate.ts +13 -0
- package/src/useParams.ts +20 -0
- package/src/useRouteContext.ts +39 -0
- package/src/useSearch.ts +20 -0
- package/src/utils.ts +17 -0
package/src/useSearch.ts
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { FullSearchSchema, RouteById } from './routeInfo'
|
|
2
|
+
import type { AnyRouter } from './router'
|
|
3
|
+
import type { Expand } from './utils'
|
|
4
|
+
|
|
5
|
+
export type UseSearchResult<
|
|
6
|
+
TRouter extends AnyRouter,
|
|
7
|
+
TFrom,
|
|
8
|
+
TStrict extends boolean,
|
|
9
|
+
TSelected,
|
|
10
|
+
> = unknown extends TSelected
|
|
11
|
+
? ResolveUseSearch<TRouter, TFrom, TStrict>
|
|
12
|
+
: TSelected
|
|
13
|
+
|
|
14
|
+
export type ResolveUseSearch<
|
|
15
|
+
TRouter extends AnyRouter,
|
|
16
|
+
TFrom,
|
|
17
|
+
TStrict extends boolean,
|
|
18
|
+
> = TStrict extends false
|
|
19
|
+
? FullSearchSchema<TRouter['routeTree']>
|
|
20
|
+
: Expand<RouteById<TRouter['routeTree'], TFrom>['types']['fullSearchSchema']>
|
package/src/utils.ts
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
import type { RouteIds } from './routeInfo'
|
|
2
|
+
import type { AnyRouter } from './router'
|
|
3
|
+
|
|
1
4
|
export type NoInfer<T> = [T][T extends any ? 0 : never]
|
|
2
5
|
export type IsAny<TValue, TYesResult, TNoResult = TValue> = 1 extends 0 & TValue
|
|
3
6
|
? TYesResult
|
|
@@ -330,6 +333,20 @@ export type ThrowOrOptional<T, TThrow extends boolean> = TThrow extends true
|
|
|
330
333
|
? T
|
|
331
334
|
: T | undefined
|
|
332
335
|
|
|
336
|
+
export type StrictOrFrom<
|
|
337
|
+
TRouter extends AnyRouter,
|
|
338
|
+
TFrom,
|
|
339
|
+
TStrict extends boolean = true,
|
|
340
|
+
> = TStrict extends false
|
|
341
|
+
? {
|
|
342
|
+
from?: never
|
|
343
|
+
strict: TStrict
|
|
344
|
+
}
|
|
345
|
+
: {
|
|
346
|
+
from: ConstrainLiteral<TFrom, RouteIds<TRouter['routeTree']>>
|
|
347
|
+
strict?: TStrict
|
|
348
|
+
}
|
|
349
|
+
|
|
333
350
|
export type ControlledPromise<T> = Promise<T> & {
|
|
334
351
|
resolve: (value: T) => void
|
|
335
352
|
reject: (value: any) => void
|