@tanstack/react-router 0.0.1-beta.200 → 0.0.1-beta.202

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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tanstack/react-router",
3
3
  "author": "Tanner Linsley",
4
- "version": "0.0.1-beta.200",
4
+ "version": "0.0.1-beta.202",
5
5
  "license": "MIT",
6
6
  "repository": "tanstack/router",
7
7
  "homepage": "https://tanstack.com/router",
@@ -44,7 +44,7 @@
44
44
  "tiny-warning": "^1.0.3",
45
45
  "@tanstack/react-store": "^0.0.1",
46
46
  "@gisatcz/cross-package-react-context": "^0.2.0",
47
- "@tanstack/router-core": "0.0.1-beta.200"
47
+ "@tanstack/router-core": "0.0.1-beta.202"
48
48
  },
49
49
  "scripts": {
50
50
  "build": "rollup --config rollup.config.js"
package/src/react.tsx CHANGED
@@ -385,6 +385,9 @@ export function useLinkProps<
385
385
  options: MakeLinkPropsOptions<TRouteTree, TFrom, TTo, TMaskFrom, TMaskTo>,
386
386
  ): React.AnchorHTMLAttributes<HTMLAnchorElement> {
387
387
  const router = useRouter()
388
+ const match = useMatch({
389
+ strict: false,
390
+ })
388
391
 
389
392
  const {
390
393
  // custom props
@@ -395,11 +398,10 @@ export function useLinkProps<
395
398
  inactiveProps = () => ({}),
396
399
  activeOptions,
397
400
  disabled,
398
- // fromCurrent,
399
401
  hash,
400
402
  search,
401
403
  params,
402
- to = '.',
404
+ to,
403
405
  state,
404
406
  mask,
405
407
  preload,
@@ -416,7 +418,10 @@ export function useLinkProps<
416
418
  ...rest
417
419
  } = options
418
420
 
419
- const linkInfo = router.buildLink(options as any)
421
+ const linkInfo = router.buildLink({
422
+ from: options.to ? match.pathname : undefined,
423
+ ...options,
424
+ } as any)
420
425
 
421
426
  if (linkInfo.type === 'external') {
422
427
  const { href } = linkInfo
@@ -539,9 +544,13 @@ export function Navigate<
539
544
  TMaskTo extends string = '',
540
545
  >(props: NavigateOptions<TRouteTree, TFrom, TTo, TMaskFrom, TMaskTo>): null {
541
546
  const router = useRouter()
547
+ const match = useMatch({ strict: false })
542
548
 
543
549
  useLayoutEffect(() => {
544
- router.navigate(props as any)
550
+ router.navigate({
551
+ from: props.to ? match.pathname : undefined,
552
+ ...props,
553
+ } as any)
545
554
  }, [])
546
555
 
547
556
  return null
@@ -841,6 +850,9 @@ export function useNavigate<
841
850
  TDefaultFrom extends RoutePaths<TRouteTree> = '/',
842
851
  >(defaultOpts?: { from?: TDefaultFrom }) {
843
852
  const router = useRouter()
853
+ const match = useMatch({
854
+ strict: false,
855
+ })
844
856
  return React.useCallback(
845
857
  <
846
858
  TFrom extends RoutePaths<TRouteTree> = TDefaultFrom,
@@ -850,7 +862,11 @@ export function useNavigate<
850
862
  >(
851
863
  opts?: NavigateOptions<TRouteTree, TFrom, TTo, TMaskFrom, TMaskTo>,
852
864
  ) => {
853
- return router.navigate({ ...defaultOpts, ...(opts as any) })
865
+ return router.navigate({
866
+ from: opts?.to ? match.pathname : undefined,
867
+ ...defaultOpts,
868
+ ...(opts as any),
869
+ })
854
870
  },
855
871
  [],
856
872
  )