@tanstack/solid-router 1.168.18 → 1.168.20
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/Match.cjs +11 -5
- package/dist/cjs/Match.cjs.map +1 -1
- package/dist/esm/Match.js +11 -5
- package/dist/esm/Match.js.map +1 -1
- package/dist/source/Match.jsx +12 -6
- package/dist/source/Match.jsx.map +1 -1
- package/package.json +2 -2
- package/src/Match.tsx +12 -7
package/dist/cjs/Match.cjs
CHANGED
|
@@ -323,10 +323,17 @@ var Outlet = () => {
|
|
|
323
323
|
return router.stores.matchStores.get(id)?.get().status;
|
|
324
324
|
});
|
|
325
325
|
const shouldShowNotFound = () => childMatchStatus() !== "redirected" && parentGlobalNotFound();
|
|
326
|
+
const childRouteKey = solid_js.createMemo(() => {
|
|
327
|
+
if (shouldShowNotFound()) return void 0;
|
|
328
|
+
const cid = childMatchId();
|
|
329
|
+
if (!cid) return void 0;
|
|
330
|
+
return router.stores.matchStores.get(cid)?.routeId ?? cid;
|
|
331
|
+
});
|
|
326
332
|
return (0, solid_js_web.createComponent)(solid_js.Show, {
|
|
327
333
|
get when() {
|
|
328
|
-
return (
|
|
334
|
+
return childRouteKey();
|
|
329
335
|
},
|
|
336
|
+
keyed: true,
|
|
330
337
|
get fallback() {
|
|
331
338
|
return (0, solid_js_web.createComponent)(solid_js.Show, {
|
|
332
339
|
get when() {
|
|
@@ -335,15 +342,14 @@ var Outlet = () => {
|
|
|
335
342
|
children: (resolvedRoute) => require_renderRouteNotFound.renderRouteNotFound(router, resolvedRoute(), void 0)
|
|
336
343
|
});
|
|
337
344
|
},
|
|
338
|
-
children: (
|
|
339
|
-
const currentMatchId = solid_js.createMemo(() => childMatchIdAccessor());
|
|
345
|
+
children: (_routeKey) => {
|
|
340
346
|
return (0, solid_js_web.createComponent)(solid_js.Show, {
|
|
341
347
|
get when() {
|
|
342
348
|
return routeId() === _tanstack_router_core.rootRouteId;
|
|
343
349
|
},
|
|
344
350
|
get fallback() {
|
|
345
351
|
return (0, solid_js_web.createComponent)(Match, { get matchId() {
|
|
346
|
-
return
|
|
352
|
+
return childMatchId();
|
|
347
353
|
} });
|
|
348
354
|
},
|
|
349
355
|
get children() {
|
|
@@ -355,7 +361,7 @@ var Outlet = () => {
|
|
|
355
361
|
},
|
|
356
362
|
get children() {
|
|
357
363
|
return (0, solid_js_web.createComponent)(Match, { get matchId() {
|
|
358
|
-
return
|
|
364
|
+
return childMatchId();
|
|
359
365
|
} });
|
|
360
366
|
}
|
|
361
367
|
});
|
package/dist/cjs/Match.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Match.cjs","names":["Solid","createControlledPromise","getLocationChangeInfo","invariant","isNotFound","isRedirect","rootRouteId","isServer","Dynamic","CatchBoundary","ErrorComponent","useRouter","CatchNotFound","getNotFound","nearestMatchContext","SafeFragment","renderRouteNotFound","ScrollRestoration","AnyRoute","RootRouteOptions","Match","props","matchId","router","match","createMemo","id","undefined","stores","matchStores","get","rawMatchState","currentMatch","routeId","parentRouteId","routesById","parentRoute","ssr","_displayPending","hasPendingMatch","currentRouteId","Boolean","pendingRouteIds","nearestMatch","hasPending","_$createComponent","Show","when","children","currentMatchState","route","resolvePendingComponent","options","pendingComponent","defaultPendingComponent","routeErrorComponent","errorComponent","defaultErrorComponent","routeOnCatch","onCatch","defaultOnCatch","routeNotFoundComponent","isRoot","notFoundComponent","notFoundRoute","component","resolvedNoSsr","ResolvedSuspenseBoundary","Suspense","ResolvedCatchBoundary","ResolvedNotFoundBoundary","ShellComponent","shellComponent","Provider","value","fallback","_$memo","getResetKey","loadedAt","error","Error","notFoundError","process","env","NODE_ENV","console","warn","_$mergeProps","Switch","MatchInner","OnRendered","scrollRestoration","location","resolvedLocation","state","__TSR_key","createEffect","on","emit","type","useContext","remountFn","remountDeps","defaultRemountDeps","loaderDeps","params","_strictParams","search","_strictSearch","key","JSON","stringify","status","_forcePending","componentKey","out","Comp","defaultComponent","Outlet","getLoadPromise","fallbackMatch","_nonReactive","loadPromise","Promise","getMatch","keyedOut","keyed","_key","_","displayPendingResult","createResource","displayPendingPromise","minPendingResult","minPendingPromise","pendingMinMs","defaultPendingMinMs","routerMatch","setTimeout","resolve","loaderResult","r","FallbackComponent","_routeId","RouteErrorComponent","info","componentStack","nearestParentMatch","parentMatch","parentGlobalNotFound","globalNotFound","childMatchId","childMatchIdByRouteId","childMatchStatus","shouldShowNotFound","resolvedRoute","childMatchIdAccessor","currentMatchId"],"sources":["../../src/Match.tsx"],"sourcesContent":["import * as Solid from 'solid-js'\nimport {\n createControlledPromise,\n getLocationChangeInfo,\n invariant,\n isNotFound,\n isRedirect,\n rootRouteId,\n} from '@tanstack/router-core'\nimport { isServer } from '@tanstack/router-core/isServer'\nimport { Dynamic } from 'solid-js/web'\nimport { CatchBoundary, ErrorComponent } from './CatchBoundary'\nimport { useRouter } from './useRouter'\nimport { CatchNotFound, getNotFound } from './not-found'\nimport { nearestMatchContext } from './matchContext'\nimport { SafeFragment } from './SafeFragment'\nimport { renderRouteNotFound } from './renderRouteNotFound'\nimport { ScrollRestoration } from './scroll-restoration'\nimport type { AnyRoute, RootRouteOptions } from '@tanstack/router-core'\n\nexport const Match = (props: { matchId: string }) => {\n const router = useRouter()\n\n const match = Solid.createMemo(() => {\n const id = props.matchId\n if (!id) return undefined\n return router.stores.matchStores.get(id)?.get()\n })\n\n const rawMatchState = Solid.createMemo(() => {\n const currentMatch = match()\n if (!currentMatch) {\n return null\n }\n\n const routeId = currentMatch.routeId as string\n const parentRouteId = (router.routesById[routeId] as AnyRoute)?.parentRoute\n ?.id\n\n return {\n matchId: currentMatch.id,\n routeId,\n ssr: currentMatch.ssr,\n _displayPending: currentMatch._displayPending,\n parentRouteId: parentRouteId as string | undefined,\n }\n })\n\n const hasPendingMatch = Solid.createMemo(() => {\n const currentRouteId = rawMatchState()?.routeId\n return currentRouteId\n ? Boolean(router.stores.pendingRouteIds.get()[currentRouteId])\n : false\n })\n const nearestMatch = {\n matchId: () => rawMatchState()?.matchId,\n routeId: () => rawMatchState()?.routeId,\n match,\n hasPending: hasPendingMatch,\n }\n\n return (\n <Solid.Show when={rawMatchState()}>\n {(currentMatchState) => {\n const route: () => AnyRoute = () =>\n router.routesById[currentMatchState().routeId]\n\n const resolvePendingComponent = () =>\n route().options.pendingComponent ??\n router.options.defaultPendingComponent\n\n const routeErrorComponent = () =>\n route().options.errorComponent ?? router.options.defaultErrorComponent\n\n const routeOnCatch = () =>\n route().options.onCatch ?? router.options.defaultOnCatch\n\n const routeNotFoundComponent = () =>\n route().isRoot\n ? // If it's the root route, use the globalNotFound option, with fallback to the notFoundRoute's component\n (route().options.notFoundComponent ??\n router.options.notFoundRoute?.options.component)\n : route().options.notFoundComponent\n\n const resolvedNoSsr =\n currentMatchState().ssr === false ||\n currentMatchState().ssr === 'data-only'\n\n const ResolvedSuspenseBoundary = () => Solid.Suspense\n\n const ResolvedCatchBoundary = () =>\n routeErrorComponent() ? CatchBoundary : SafeFragment\n\n const ResolvedNotFoundBoundary = () =>\n routeNotFoundComponent() ? CatchNotFound : SafeFragment\n\n const ShellComponent = route().isRoot\n ? ((route().options as RootRouteOptions).shellComponent ??\n SafeFragment)\n : SafeFragment\n\n return (\n <ShellComponent>\n <nearestMatchContext.Provider value={nearestMatch}>\n <Dynamic\n component={ResolvedSuspenseBoundary()}\n fallback={\n // Don't show fallback on server when using no-ssr mode to avoid hydration mismatch\n (isServer ?? router.isServer) && resolvedNoSsr ? undefined : (\n <Dynamic component={resolvePendingComponent()} />\n )\n }\n >\n <Dynamic\n component={ResolvedCatchBoundary()}\n getResetKey={() => router.stores.loadedAt.get()}\n errorComponent={routeErrorComponent() || ErrorComponent}\n onCatch={(error: Error) => {\n // Forward not found errors (we don't want to show the error component for these)\n const notFoundError = getNotFound(error)\n if (notFoundError) {\n notFoundError.routeId ??= currentMatchState()\n .routeId as any\n throw notFoundError\n }\n if (process.env.NODE_ENV !== 'production') {\n console.warn(\n `Warning: Error in route match: ${currentMatchState().routeId}`,\n )\n }\n routeOnCatch()?.(error)\n }}\n >\n <Dynamic\n component={ResolvedNotFoundBoundary()}\n fallback={(error: any) => {\n const notFoundError = getNotFound(error) ?? error\n\n notFoundError.routeId ??= currentMatchState()\n .routeId as any\n\n // If the current not found handler doesn't exist or it has a\n // route ID which doesn't match the current route, rethrow the error\n if (\n !routeNotFoundComponent() ||\n (notFoundError.routeId &&\n notFoundError.routeId !==\n currentMatchState().routeId) ||\n (!notFoundError.routeId && !route().isRoot)\n )\n throw notFoundError\n\n return (\n <Dynamic\n component={routeNotFoundComponent()}\n {...notFoundError}\n />\n )\n }}\n >\n <Solid.Switch>\n <Solid.Match when={resolvedNoSsr}>\n <Solid.Show\n when={!(isServer ?? router.isServer)}\n fallback={\n <Dynamic component={resolvePendingComponent()} />\n }\n >\n <MatchInner />\n </Solid.Show>\n </Solid.Match>\n <Solid.Match when={!resolvedNoSsr}>\n <MatchInner />\n </Solid.Match>\n </Solid.Switch>\n </Dynamic>\n </Dynamic>\n </Dynamic>\n </nearestMatchContext.Provider>\n\n {currentMatchState().parentRouteId === rootRouteId ? (\n <>\n <OnRendered />\n {router.options.scrollRestoration &&\n (isServer ?? router.isServer) ? (\n <ScrollRestoration />\n ) : null}\n </>\n ) : null}\n </ShellComponent>\n )\n }}\n </Solid.Show>\n )\n}\n\n// On Rendered can't happen above the root layout because it needs to run\n// after the app has committed below the root layout. Keeping it here lets us\n// fire onRendered even after a hydration mismatch above the root layout\n// (like bad head/link tags, which is common).\nfunction OnRendered() {\n const router = useRouter()\n\n const location = Solid.createMemo(\n () => router.stores.resolvedLocation.get()?.state.__TSR_key,\n )\n Solid.createEffect(\n Solid.on([location], () => {\n router.emit({\n type: 'onRendered',\n ...getLocationChangeInfo(\n router.stores.location.get(),\n router.stores.resolvedLocation.get(),\n ),\n })\n }),\n )\n return null\n}\n\nexport const MatchInner = (): any => {\n const router = useRouter()\n const match = Solid.useContext(nearestMatchContext).match\n\n const rawMatchState = Solid.createMemo(() => {\n const currentMatch = match()\n if (!currentMatch) {\n return null\n }\n\n const routeId = currentMatch.routeId as string\n\n const remountFn =\n (router.routesById[routeId] as AnyRoute).options.remountDeps ??\n router.options.defaultRemountDeps\n const remountDeps = remountFn?.({\n routeId,\n loaderDeps: currentMatch.loaderDeps,\n params: currentMatch._strictParams,\n search: currentMatch._strictSearch,\n })\n const key = remountDeps ? JSON.stringify(remountDeps) : undefined\n\n return {\n key,\n routeId,\n match: {\n id: currentMatch.id,\n status: currentMatch.status,\n error: currentMatch.error,\n _forcePending: currentMatch._forcePending ?? false,\n _displayPending: currentMatch._displayPending ?? false,\n },\n }\n })\n\n return (\n <Solid.Show when={rawMatchState()}>\n {(currentMatchState) => {\n const route = () => router.routesById[currentMatchState().routeId]!\n\n const currentMatch = () => currentMatchState().match\n\n const componentKey = () =>\n currentMatchState().key ?? currentMatchState().match.id\n\n const out = () => {\n const Comp =\n route().options.component ?? router.options.defaultComponent\n if (Comp) {\n return <Comp />\n }\n return <Outlet />\n }\n\n const getLoadPromise = (\n matchId: string,\n fallbackMatch:\n | {\n _nonReactive: {\n loadPromise?: Promise<void>\n }\n }\n | undefined,\n ) => {\n return (\n router.getMatch(matchId)?._nonReactive.loadPromise ??\n fallbackMatch?._nonReactive.loadPromise\n )\n }\n\n const keyedOut = () => (\n <Solid.Show when={componentKey()} keyed>\n {(_key) => out()}\n </Solid.Show>\n )\n\n return (\n <Solid.Switch>\n <Solid.Match when={currentMatch()._displayPending}>\n {(_) => {\n const [displayPendingResult] = Solid.createResource(\n () =>\n router.getMatch(currentMatch().id)?._nonReactive\n .displayPendingPromise,\n )\n\n return <>{displayPendingResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch()._forcePending}>\n {(_) => {\n const [minPendingResult] = Solid.createResource(\n () =>\n router.getMatch(currentMatch().id)?._nonReactive\n .minPendingPromise,\n )\n\n return <>{minPendingResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch().status === 'pending'}>\n {(_) => {\n const pendingMinMs =\n route().options.pendingMinMs ??\n router.options.defaultPendingMinMs\n\n if (pendingMinMs) {\n const routerMatch = router.getMatch(currentMatch().id)\n if (\n routerMatch &&\n !routerMatch._nonReactive.minPendingPromise\n ) {\n // Create a promise that will resolve after the minPendingMs\n if (!(isServer ?? router.isServer)) {\n const minPendingPromise = createControlledPromise<void>()\n\n routerMatch._nonReactive.minPendingPromise =\n minPendingPromise\n\n setTimeout(() => {\n minPendingPromise.resolve()\n // We've handled the minPendingPromise, so we can delete it\n routerMatch._nonReactive.minPendingPromise = undefined\n }, pendingMinMs)\n }\n }\n }\n\n const [loaderResult] = Solid.createResource(async () => {\n await new Promise((r) => setTimeout(r, 0))\n return router.getMatch(currentMatch().id)?._nonReactive\n .loadPromise\n })\n\n const FallbackComponent =\n route().options.pendingComponent ??\n router.options.defaultPendingComponent\n\n return (\n <>\n {FallbackComponent && pendingMinMs > 0 ? (\n <Dynamic component={FallbackComponent} />\n ) : null}\n {loaderResult()}\n </>\n )\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch().status === 'notFound'}>\n {(_) => {\n if (!isNotFound(currentMatch().error)) {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(\n 'Invariant failed: Expected a notFound error',\n )\n }\n\n invariant()\n }\n\n // Use Show with keyed to ensure re-render when routeId changes\n return (\n <Solid.Show when={currentMatchState().routeId} keyed>\n {(_routeId) =>\n renderRouteNotFound(router, route(), currentMatch().error)\n }\n </Solid.Show>\n )\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch().status === 'redirected'}>\n {(_) => {\n const matchId = currentMatch().id\n const routerMatch = router.getMatch(matchId)\n\n if (!isRedirect(currentMatch().error)) {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(\n 'Invariant failed: Expected a redirect error',\n )\n }\n\n invariant()\n }\n\n const [loaderResult] = Solid.createResource(async () => {\n await new Promise((r) => setTimeout(r, 0))\n return getLoadPromise(matchId, routerMatch)\n })\n\n return <>{loaderResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch().status === 'error'}>\n {(_) => {\n if (isServer ?? router.isServer) {\n const RouteErrorComponent =\n (route().options.errorComponent ??\n router.options.defaultErrorComponent) ||\n ErrorComponent\n\n return (\n <RouteErrorComponent\n error={currentMatch().error}\n info={{\n componentStack: '',\n }}\n />\n )\n }\n\n throw currentMatch().error\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch().status === 'success'}>\n {keyedOut()}\n </Solid.Match>\n </Solid.Switch>\n )\n }}\n </Solid.Show>\n )\n}\n\nexport const Outlet = () => {\n const router = useRouter()\n const nearestParentMatch = Solid.useContext(nearestMatchContext)\n const parentMatch = nearestParentMatch.match\n const routeId = nearestParentMatch.routeId\n const route = Solid.createMemo(() =>\n routeId() ? router.routesById[routeId()!] : undefined,\n )\n\n const parentGlobalNotFound = Solid.createMemo(\n () => parentMatch()?.globalNotFound ?? false,\n )\n\n const childMatchId = Solid.createMemo(() => {\n const currentRouteId = routeId()\n return currentRouteId\n ? router.stores.childMatchIdByRouteId.get()[currentRouteId]\n : undefined\n })\n\n const childMatchStatus = Solid.createMemo(() => {\n const id = childMatchId()\n if (!id) return undefined\n return router.stores.matchStores.get(id)?.get().status\n })\n\n // Only show not-found if we're not in a redirected state\n const shouldShowNotFound = () =>\n childMatchStatus() !== 'redirected' && parentGlobalNotFound()\n\n return (\n <Solid.Show\n when={!shouldShowNotFound() && childMatchId()}\n fallback={\n <Solid.Show when={shouldShowNotFound() && route()}>\n {(resolvedRoute) =>\n renderRouteNotFound(router, resolvedRoute(), undefined)\n }\n </Solid.Show>\n }\n >\n {(childMatchIdAccessor) => {\n const currentMatchId = Solid.createMemo(() => childMatchIdAccessor())\n\n return (\n <Solid.Show\n when={routeId() === rootRouteId}\n fallback={<Match matchId={currentMatchId()} />}\n >\n <Solid.Suspense\n fallback={\n <Dynamic component={router.options.defaultPendingComponent} />\n }\n >\n <Match matchId={currentMatchId()} />\n </Solid.Suspense>\n </Solid.Show>\n )\n }}\n </Solid.Show>\n )\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Match.cjs","names":["Solid","createControlledPromise","getLocationChangeInfo","invariant","isNotFound","isRedirect","rootRouteId","isServer","Dynamic","CatchBoundary","ErrorComponent","useRouter","CatchNotFound","getNotFound","nearestMatchContext","SafeFragment","renderRouteNotFound","ScrollRestoration","AnyRoute","RootRouteOptions","Match","props","matchId","router","match","createMemo","id","undefined","stores","matchStores","get","rawMatchState","currentMatch","routeId","parentRouteId","routesById","parentRoute","ssr","_displayPending","hasPendingMatch","currentRouteId","Boolean","pendingRouteIds","nearestMatch","hasPending","_$createComponent","Show","when","children","currentMatchState","route","resolvePendingComponent","options","pendingComponent","defaultPendingComponent","routeErrorComponent","errorComponent","defaultErrorComponent","routeOnCatch","onCatch","defaultOnCatch","routeNotFoundComponent","isRoot","notFoundComponent","notFoundRoute","component","resolvedNoSsr","ResolvedSuspenseBoundary","Suspense","ResolvedCatchBoundary","ResolvedNotFoundBoundary","ShellComponent","shellComponent","Provider","value","fallback","_$memo","getResetKey","loadedAt","error","Error","notFoundError","process","env","NODE_ENV","console","warn","_$mergeProps","Switch","MatchInner","OnRendered","scrollRestoration","location","resolvedLocation","state","__TSR_key","createEffect","on","emit","type","useContext","remountFn","remountDeps","defaultRemountDeps","loaderDeps","params","_strictParams","search","_strictSearch","key","JSON","stringify","status","_forcePending","componentKey","out","Comp","defaultComponent","Outlet","getLoadPromise","fallbackMatch","_nonReactive","loadPromise","Promise","getMatch","keyedOut","keyed","_key","_","displayPendingResult","createResource","displayPendingPromise","minPendingResult","minPendingPromise","pendingMinMs","defaultPendingMinMs","routerMatch","setTimeout","resolve","loaderResult","r","FallbackComponent","_routeId","RouteErrorComponent","info","componentStack","nearestParentMatch","parentMatch","parentGlobalNotFound","globalNotFound","childMatchId","childMatchIdByRouteId","childMatchStatus","shouldShowNotFound","childRouteKey","cid","resolvedRoute","_routeKey"],"sources":["../../src/Match.tsx"],"sourcesContent":["import * as Solid from 'solid-js'\nimport {\n createControlledPromise,\n getLocationChangeInfo,\n invariant,\n isNotFound,\n isRedirect,\n rootRouteId,\n} from '@tanstack/router-core'\nimport { isServer } from '@tanstack/router-core/isServer'\nimport { Dynamic } from 'solid-js/web'\nimport { CatchBoundary, ErrorComponent } from './CatchBoundary'\nimport { useRouter } from './useRouter'\nimport { CatchNotFound, getNotFound } from './not-found'\nimport { nearestMatchContext } from './matchContext'\nimport { SafeFragment } from './SafeFragment'\nimport { renderRouteNotFound } from './renderRouteNotFound'\nimport { ScrollRestoration } from './scroll-restoration'\nimport type { AnyRoute, RootRouteOptions } from '@tanstack/router-core'\n\nexport const Match = (props: { matchId: string }) => {\n const router = useRouter()\n\n const match = Solid.createMemo(() => {\n const id = props.matchId\n if (!id) return undefined\n return router.stores.matchStores.get(id)?.get()\n })\n\n const rawMatchState = Solid.createMemo(() => {\n const currentMatch = match()\n if (!currentMatch) {\n return null\n }\n\n const routeId = currentMatch.routeId as string\n const parentRouteId = (router.routesById[routeId] as AnyRoute)?.parentRoute\n ?.id\n\n return {\n matchId: currentMatch.id,\n routeId,\n ssr: currentMatch.ssr,\n _displayPending: currentMatch._displayPending,\n parentRouteId: parentRouteId as string | undefined,\n }\n })\n\n const hasPendingMatch = Solid.createMemo(() => {\n const currentRouteId = rawMatchState()?.routeId\n return currentRouteId\n ? Boolean(router.stores.pendingRouteIds.get()[currentRouteId])\n : false\n })\n const nearestMatch = {\n matchId: () => rawMatchState()?.matchId,\n routeId: () => rawMatchState()?.routeId,\n match,\n hasPending: hasPendingMatch,\n }\n\n return (\n <Solid.Show when={rawMatchState()}>\n {(currentMatchState) => {\n const route: () => AnyRoute = () =>\n router.routesById[currentMatchState().routeId]\n\n const resolvePendingComponent = () =>\n route().options.pendingComponent ??\n router.options.defaultPendingComponent\n\n const routeErrorComponent = () =>\n route().options.errorComponent ?? router.options.defaultErrorComponent\n\n const routeOnCatch = () =>\n route().options.onCatch ?? router.options.defaultOnCatch\n\n const routeNotFoundComponent = () =>\n route().isRoot\n ? // If it's the root route, use the globalNotFound option, with fallback to the notFoundRoute's component\n (route().options.notFoundComponent ??\n router.options.notFoundRoute?.options.component)\n : route().options.notFoundComponent\n\n const resolvedNoSsr =\n currentMatchState().ssr === false ||\n currentMatchState().ssr === 'data-only'\n\n const ResolvedSuspenseBoundary = () => Solid.Suspense\n\n const ResolvedCatchBoundary = () =>\n routeErrorComponent() ? CatchBoundary : SafeFragment\n\n const ResolvedNotFoundBoundary = () =>\n routeNotFoundComponent() ? CatchNotFound : SafeFragment\n\n const ShellComponent = route().isRoot\n ? ((route().options as RootRouteOptions).shellComponent ??\n SafeFragment)\n : SafeFragment\n\n return (\n <ShellComponent>\n <nearestMatchContext.Provider value={nearestMatch}>\n <Dynamic\n component={ResolvedSuspenseBoundary()}\n fallback={\n // Don't show fallback on server when using no-ssr mode to avoid hydration mismatch\n (isServer ?? router.isServer) && resolvedNoSsr ? undefined : (\n <Dynamic component={resolvePendingComponent()} />\n )\n }\n >\n <Dynamic\n component={ResolvedCatchBoundary()}\n getResetKey={() => router.stores.loadedAt.get()}\n errorComponent={routeErrorComponent() || ErrorComponent}\n onCatch={(error: Error) => {\n // Forward not found errors (we don't want to show the error component for these)\n const notFoundError = getNotFound(error)\n if (notFoundError) {\n notFoundError.routeId ??= currentMatchState()\n .routeId as any\n throw notFoundError\n }\n if (process.env.NODE_ENV !== 'production') {\n console.warn(\n `Warning: Error in route match: ${currentMatchState().routeId}`,\n )\n }\n routeOnCatch()?.(error)\n }}\n >\n <Dynamic\n component={ResolvedNotFoundBoundary()}\n fallback={(error: any) => {\n const notFoundError = getNotFound(error) ?? error\n\n notFoundError.routeId ??= currentMatchState()\n .routeId as any\n\n // If the current not found handler doesn't exist or it has a\n // route ID which doesn't match the current route, rethrow the error\n if (\n !routeNotFoundComponent() ||\n (notFoundError.routeId &&\n notFoundError.routeId !==\n currentMatchState().routeId) ||\n (!notFoundError.routeId && !route().isRoot)\n )\n throw notFoundError\n\n return (\n <Dynamic\n component={routeNotFoundComponent()}\n {...notFoundError}\n />\n )\n }}\n >\n <Solid.Switch>\n <Solid.Match when={resolvedNoSsr}>\n <Solid.Show\n when={!(isServer ?? router.isServer)}\n fallback={\n <Dynamic component={resolvePendingComponent()} />\n }\n >\n <MatchInner />\n </Solid.Show>\n </Solid.Match>\n <Solid.Match when={!resolvedNoSsr}>\n <MatchInner />\n </Solid.Match>\n </Solid.Switch>\n </Dynamic>\n </Dynamic>\n </Dynamic>\n </nearestMatchContext.Provider>\n\n {currentMatchState().parentRouteId === rootRouteId ? (\n <>\n <OnRendered />\n {router.options.scrollRestoration &&\n (isServer ?? router.isServer) ? (\n <ScrollRestoration />\n ) : null}\n </>\n ) : null}\n </ShellComponent>\n )\n }}\n </Solid.Show>\n )\n}\n\n// On Rendered can't happen above the root layout because it needs to run\n// after the app has committed below the root layout. Keeping it here lets us\n// fire onRendered even after a hydration mismatch above the root layout\n// (like bad head/link tags, which is common).\nfunction OnRendered() {\n const router = useRouter()\n\n const location = Solid.createMemo(\n () => router.stores.resolvedLocation.get()?.state.__TSR_key,\n )\n Solid.createEffect(\n Solid.on([location], () => {\n router.emit({\n type: 'onRendered',\n ...getLocationChangeInfo(\n router.stores.location.get(),\n router.stores.resolvedLocation.get(),\n ),\n })\n }),\n )\n return null\n}\n\nexport const MatchInner = (): any => {\n const router = useRouter()\n const match = Solid.useContext(nearestMatchContext).match\n\n const rawMatchState = Solid.createMemo(() => {\n const currentMatch = match()\n if (!currentMatch) {\n return null\n }\n\n const routeId = currentMatch.routeId as string\n\n const remountFn =\n (router.routesById[routeId] as AnyRoute).options.remountDeps ??\n router.options.defaultRemountDeps\n const remountDeps = remountFn?.({\n routeId,\n loaderDeps: currentMatch.loaderDeps,\n params: currentMatch._strictParams,\n search: currentMatch._strictSearch,\n })\n const key = remountDeps ? JSON.stringify(remountDeps) : undefined\n\n return {\n key,\n routeId,\n match: {\n id: currentMatch.id,\n status: currentMatch.status,\n error: currentMatch.error,\n _forcePending: currentMatch._forcePending ?? false,\n _displayPending: currentMatch._displayPending ?? false,\n },\n }\n })\n\n return (\n <Solid.Show when={rawMatchState()}>\n {(currentMatchState) => {\n const route = () => router.routesById[currentMatchState().routeId]!\n\n const currentMatch = () => currentMatchState().match\n\n const componentKey = () =>\n currentMatchState().key ?? currentMatchState().match.id\n\n const out = () => {\n const Comp =\n route().options.component ?? router.options.defaultComponent\n if (Comp) {\n return <Comp />\n }\n return <Outlet />\n }\n\n const getLoadPromise = (\n matchId: string,\n fallbackMatch:\n | {\n _nonReactive: {\n loadPromise?: Promise<void>\n }\n }\n | undefined,\n ) => {\n return (\n router.getMatch(matchId)?._nonReactive.loadPromise ??\n fallbackMatch?._nonReactive.loadPromise\n )\n }\n\n const keyedOut = () => (\n <Solid.Show when={componentKey()} keyed>\n {(_key) => out()}\n </Solid.Show>\n )\n\n return (\n <Solid.Switch>\n <Solid.Match when={currentMatch()._displayPending}>\n {(_) => {\n const [displayPendingResult] = Solid.createResource(\n () =>\n router.getMatch(currentMatch().id)?._nonReactive\n .displayPendingPromise,\n )\n\n return <>{displayPendingResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch()._forcePending}>\n {(_) => {\n const [minPendingResult] = Solid.createResource(\n () =>\n router.getMatch(currentMatch().id)?._nonReactive\n .minPendingPromise,\n )\n\n return <>{minPendingResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch().status === 'pending'}>\n {(_) => {\n const pendingMinMs =\n route().options.pendingMinMs ??\n router.options.defaultPendingMinMs\n\n if (pendingMinMs) {\n const routerMatch = router.getMatch(currentMatch().id)\n if (\n routerMatch &&\n !routerMatch._nonReactive.minPendingPromise\n ) {\n // Create a promise that will resolve after the minPendingMs\n if (!(isServer ?? router.isServer)) {\n const minPendingPromise = createControlledPromise<void>()\n\n routerMatch._nonReactive.minPendingPromise =\n minPendingPromise\n\n setTimeout(() => {\n minPendingPromise.resolve()\n // We've handled the minPendingPromise, so we can delete it\n routerMatch._nonReactive.minPendingPromise = undefined\n }, pendingMinMs)\n }\n }\n }\n\n const [loaderResult] = Solid.createResource(async () => {\n await new Promise((r) => setTimeout(r, 0))\n return router.getMatch(currentMatch().id)?._nonReactive\n .loadPromise\n })\n\n const FallbackComponent =\n route().options.pendingComponent ??\n router.options.defaultPendingComponent\n\n return (\n <>\n {FallbackComponent && pendingMinMs > 0 ? (\n <Dynamic component={FallbackComponent} />\n ) : null}\n {loaderResult()}\n </>\n )\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch().status === 'notFound'}>\n {(_) => {\n if (!isNotFound(currentMatch().error)) {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(\n 'Invariant failed: Expected a notFound error',\n )\n }\n\n invariant()\n }\n\n // Use Show with keyed to ensure re-render when routeId changes\n return (\n <Solid.Show when={currentMatchState().routeId} keyed>\n {(_routeId) =>\n renderRouteNotFound(router, route(), currentMatch().error)\n }\n </Solid.Show>\n )\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch().status === 'redirected'}>\n {(_) => {\n const matchId = currentMatch().id\n const routerMatch = router.getMatch(matchId)\n\n if (!isRedirect(currentMatch().error)) {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(\n 'Invariant failed: Expected a redirect error',\n )\n }\n\n invariant()\n }\n\n const [loaderResult] = Solid.createResource(async () => {\n await new Promise((r) => setTimeout(r, 0))\n return getLoadPromise(matchId, routerMatch)\n })\n\n return <>{loaderResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch().status === 'error'}>\n {(_) => {\n if (isServer ?? router.isServer) {\n const RouteErrorComponent =\n (route().options.errorComponent ??\n router.options.defaultErrorComponent) ||\n ErrorComponent\n\n return (\n <RouteErrorComponent\n error={currentMatch().error}\n info={{\n componentStack: '',\n }}\n />\n )\n }\n\n throw currentMatch().error\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch().status === 'success'}>\n {keyedOut()}\n </Solid.Match>\n </Solid.Switch>\n )\n }}\n </Solid.Show>\n )\n}\n\nexport const Outlet = () => {\n const router = useRouter()\n const nearestParentMatch = Solid.useContext(nearestMatchContext)\n const parentMatch = nearestParentMatch.match\n const routeId = nearestParentMatch.routeId\n const route = Solid.createMemo(() =>\n routeId() ? router.routesById[routeId()!] : undefined,\n )\n\n const parentGlobalNotFound = Solid.createMemo(\n () => parentMatch()?.globalNotFound ?? false,\n )\n\n const childMatchId = Solid.createMemo(() => {\n const currentRouteId = routeId()\n return currentRouteId\n ? router.stores.childMatchIdByRouteId.get()[currentRouteId]\n : undefined\n })\n\n const childMatchStatus = Solid.createMemo(() => {\n const id = childMatchId()\n if (!id) return undefined\n return router.stores.matchStores.get(id)?.get().status\n })\n\n const shouldShowNotFound = () =>\n childMatchStatus() !== 'redirected' && parentGlobalNotFound()\n\n const childRouteKey = Solid.createMemo(() => {\n if (shouldShowNotFound()) return undefined\n const cid = childMatchId()\n if (!cid) return undefined\n return router.stores.matchStores.get(cid)?.routeId ?? cid\n })\n\n return (\n <Solid.Show\n when={childRouteKey()}\n keyed\n fallback={\n <Solid.Show when={shouldShowNotFound() && route()}>\n {(resolvedRoute) =>\n renderRouteNotFound(router, resolvedRoute(), undefined)\n }\n </Solid.Show>\n }\n >\n {(_routeKey: string) => {\n return (\n <Solid.Show\n when={routeId() === rootRouteId}\n fallback={<Match matchId={childMatchId()!} />}\n >\n <Solid.Suspense\n fallback={\n <Dynamic component={router.options.defaultPendingComponent} />\n }\n >\n <Match matchId={childMatchId()!} />\n </Solid.Suspense>\n </Solid.Show>\n )\n }}\n </Solid.Show>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;AAoBA,IAAaoB,SAASC,UAA+B;CACnD,MAAME,SAASZ,kBAAAA,WAAW;CAE1B,MAAMa,QAAQxB,SAAMyB,iBAAiB;EACnC,MAAMC,KAAKL,MAAMC;AACjB,MAAI,CAACI,GAAI,QAAOC,KAAAA;AAChB,SAAOJ,OAAOK,OAAOC,YAAYC,IAAIJ,GAAG,EAAEI,KAAK;GAC/C;CAEF,MAAMC,gBAAgB/B,SAAMyB,iBAAiB;EAC3C,MAAMO,eAAeR,OAAO;AAC5B,MAAI,CAACQ,aACH,QAAO;EAGT,MAAMC,UAAUD,aAAaC;EAC7B,MAAMC,gBAAiBX,OAAOY,WAAWF,UAAuBG,aAC5DV;AAEJ,SAAO;GACLJ,SAASU,aAAaN;GACtBO;GACAI,KAAKL,aAAaK;GAClBC,iBAAiBN,aAAaM;GACfJ;GAChB;GACD;CAQF,MAAMS,eAAe;EACnBrB,eAAeS,eAAe,EAAET;EAChCW,eAAeF,eAAe,EAAEE;EAChCT;EACAoB,YAVsB5C,SAAMyB,iBAAiB;GAC7C,MAAMe,iBAAiBT,eAAe,EAAEE;AACxC,UAAOO,iBACHC,QAAQlB,OAAOK,OAAOc,gBAAgBZ,KAAK,CAACU,gBAAgB,GAC5D;IACJ;EAMD;AAED,SAAA,GAAA,aAAA,iBACGxC,SAAM8C,MAAI;EAAA,IAACC,OAAI;AAAA,UAAEhB,eAAe;;EAAAiB,WAC7BC,sBAAsB;GACtB,MAAMC,cACJ3B,OAAOY,WAAWc,mBAAmB,CAAChB;GAExC,MAAMkB,gCACJD,OAAO,CAACE,QAAQC,oBAChB9B,OAAO6B,QAAQE;GAEjB,MAAMC,4BACJL,OAAO,CAACE,QAAQI,kBAAkBjC,OAAO6B,QAAQK;GAEnD,MAAMC,qBACJR,OAAO,CAACE,QAAQO,WAAWpC,OAAO6B,QAAQQ;GAE5C,MAAMC,+BACJX,OAAO,CAACY,SAEHZ,OAAO,CAACE,QAAQW,qBACjBxC,OAAO6B,QAAQY,eAAeZ,QAAQa,YACtCf,OAAO,CAACE,QAAQW;GAEtB,MAAMG,gBACJjB,mBAAmB,CAACZ,QAAQ,SAC5BY,mBAAmB,CAACZ,QAAQ;GAE9B,MAAM8B,iCAAiCnE,SAAMoE;GAE7C,MAAMC,8BACJd,qBAAqB,GAAG9C,sBAAAA,gBAAgBM,qBAAAA;GAE1C,MAAMuD,iCACJT,wBAAwB,GAAGjD,kBAAAA,gBAAgBG,qBAAAA;AAO7C,WAAA,GAAA,aAAA,iBALuBmC,OAAO,CAACY,SACzBZ,OAAO,CAACE,QAA6BoB,kBACvCzD,qBAAAA,eACAA,qBAAAA,cAGa,EAAA,IAAAiC,WAAA;AAAA,WAAA,EAAA,GAAA,aAAA,iBACZlC,qBAAAA,oBAAoB2D,UAAQ;KAACC,OAAO/B;KAAY,IAAAK,WAAA;AAAA,cAAA,GAAA,aAAA,iBAC9CxC,aAAAA,SAAO;OAAA,IACNyD,YAAS;AAAA,eAAEE,0BAA0B;;OAAA,IACrCQ,WAAQ;AAAA,gBAAA,GAAA,aAAA,YAEN,CAAA,GAACpE,+BAAAA,YAAYgB,OAAOhB,aAAa2D,eAAa,EAAA,GAAGvC,KAAAA,KAAAA,GAAAA,aAAAA,iBAC9CnB,aAAAA,SAAO,EAAA,IAACyD,YAAS;AAAA,gBAAEd,yBAAyB;WAAA,CAAA;;OAC9C,IAAAH,WAAA;AAAA,gBAAA,GAAA,aAAA,iBAGFxC,aAAAA,SAAO;SAAA,IACNyD,YAAS;AAAA,iBAAEI,uBAAuB;;SAClCQ,mBAAmBtD,OAAOK,OAAOkD,SAAShD,KAAK;SAAA,IAC/C0B,iBAAc;AAAA,iBAAED,qBAAqB,IAAI7C,sBAAAA;;SACzCiD,UAAUoB,UAAiB;UAEzB,MAAME,gBAAgBpE,kBAAAA,YAAYkE,MAAM;AACxC,cAAIE,eAAe;AACjBA,yBAAchD,YAAYgB,mBAAmB,CAC1ChB;AACH,iBAAMgD;;AAER,cAAA,QAAA,IAAA,aAA6B,aAC3BI,SAAQC,KACN,kCAAkCrC,mBAAmB,CAAChB,UACvD;AAEHyB,wBAAc,GAAGqB,MAAM;;SACxB,IAAA/B,WAAA;AAAA,kBAAA,GAAA,aAAA,iBAEAxC,aAAAA,SAAO;WAAA,IACNyD,YAAS;AAAA,mBAAEK,0BAA0B;;WACrCK,WAAWI,UAAe;YACxB,MAAME,gBAAgBpE,kBAAAA,YAAYkE,MAAM,IAAIA;AAE5CE,0BAAchD,YAAYgB,mBAAmB,CAC1ChB;AAIH,gBACE,CAAC4B,wBAAwB,IACxBoB,cAAchD,WACbgD,cAAchD,YACZgB,mBAAmB,CAAChB,WACvB,CAACgD,cAAchD,WAAW,CAACiB,OAAO,CAACY,OAEpC,OAAMmB;AAER,oBAAA,GAAA,aAAA,iBACGzE,aAAAA,UAAAA,GAAAA,aAAAA,YAAO,EAAA,IACNyD,YAAS;AAAA,oBAAEJ,wBAAwB;eAAA,EAC/BoB,cAAa,CAAA;;WAGtB,IAAAjC,WAAA;AAAA,oBAAA,GAAA,aAAA,iBAEAhD,SAAMwF,QAAM,EAAA,IAAAxC,WAAA;AAAA,oBAAA,EAAA,GAAA,aAAA,iBACVhD,SAAMoB,OAAK;cAAC2B,MAAMmB;cAAa,IAAAlB,WAAA;AAAA,uBAAA,GAAA,aAAA,iBAC7BhD,SAAM8C,MAAI;gBAAA,IACTC,OAAI;AAAA,wBAAE,EAAExC,+BAAAA,YAAYgB,OAAOhB;;gBAAS,IACpCoE,WAAQ;AAAA,yBAAA,GAAA,aAAA,iBACLnE,aAAAA,SAAO,EAAA,IAACyD,YAAS;AAAA,yBAAEd,yBAAyB;oBAAA,CAAA;;gBAAA,IAAAH,WAAA;AAAA,yBAAA,GAAA,aAAA,iBAG9CyC,YAAU,EAAA,CAAA;;gBAAA,CAAA;;cAAA,CAAA,GAAA,GAAA,aAAA,iBAGdzF,SAAMoB,OAAK;cAAC2B,MAAM,CAACmB;cAAa,IAAAlB,WAAA;AAAA,uBAAA,GAAA,aAAA,iBAC9ByC,YAAU,EAAA,CAAA;;cAAA,CAAA,CAAA;eAAA,CAAA;;WAAA,CAAA;;SAAA,CAAA;;OAAA,CAAA;;KAAA,CAAA,GAAA,GAAA,aAAA,aAAA,GAAA,aAAA,YAQtBxC,mBAAmB,CAACf,kBAAkB5B,sBAAAA,YAAW,EAAA,GAAA,EAAA,GAAA,aAAA,iBAE7CoF,YAAU,EAAA,CAAA,GAAA,GAAA,aAAA,aAAA,GAAA,aAAA,YACV,CAAA,EAAAnE,OAAO6B,QAAQuC,sBACfpF,+BAAAA,YAAYgB,OAAOhB,WAAS,EAAA,IAAA,GAAA,aAAA,iBAC1BU,2BAAAA,mBAAiB,EAAA,CAAA,GAChB,KAAI,CAAA,GAER,KAAI,CAAA;MAAA,CAAA;;EAGb,CAAA;;AASP,SAASyE,aAAa;CACpB,MAAMnE,SAASZ,kBAAAA,WAAW;CAE1B,MAAMiF,WAAW5F,SAAMyB,iBACfF,OAAOK,OAAOiE,iBAAiB/D,KAAK,EAAEgE,MAAMC,UACnD;AACD/F,UAAMgG,aACJhG,SAAMiG,GAAG,CAACL,SAAS,QAAQ;AACzBrE,SAAO2E,KAAK;GACVC,MAAM;GACN,IAAA,GAAA,sBAAA,uBACE5E,OAAOK,OAAOgE,SAAS9D,KAAK,EAC5BP,OAAOK,OAAOiE,iBAAiB/D,KACjC,CAAA;GACD,CAAC;GAEN,CAAC;AACD,QAAO;;AAGT,IAAa2D,mBAAwB;CACnC,MAAMlE,SAASZ,kBAAAA,WAAW;CAC1B,MAAMa,QAAQxB,SAAMoG,WAAWtF,qBAAAA,oBAAoB,CAACU;CAEpD,MAAMO,gBAAgB/B,SAAMyB,iBAAiB;EAC3C,MAAMO,eAAeR,OAAO;AAC5B,MAAI,CAACQ,aACH,QAAO;EAGT,MAAMC,UAAUD,aAAaC;EAK7B,MAAMqE,eAFH/E,OAAOY,WAAWF,SAAsBmB,QAAQkD,eACjD/E,OAAO6B,QAAQmD,sBACe;GAC9BtE;GACAuE,YAAYxE,aAAawE;GACzBC,QAAQzE,aAAa0E;GACrBC,QAAQ3E,aAAa4E;GACtB,CAAC;AAGF,SAAO;GACLC,KAHUP,cAAcQ,KAAKC,UAAUT,YAAY,GAAG3E,KAAAA;GAItDM;GACAT,OAAO;IACLE,IAAIM,aAAaN;IACjBsF,QAAQhF,aAAagF;IACrBjC,OAAO/C,aAAa+C;IACpBkC,eAAejF,aAAaiF,iBAAiB;IAC7C3E,iBAAiBN,aAAaM,mBAAmB;IACnD;GACD;GACD;AAEF,SAAA,GAAA,aAAA,iBACGtC,SAAM8C,MAAI;EAAA,IAACC,OAAI;AAAA,UAAEhB,eAAe;;EAAAiB,WAC7BC,sBAAsB;GACtB,MAAMC,cAAc3B,OAAOY,WAAWc,mBAAmB,CAAChB;GAE1D,MAAMD,qBAAqBiB,mBAAmB,CAACzB;GAE/C,MAAM0F,qBACJjE,mBAAmB,CAAC4D,OAAO5D,mBAAmB,CAACzB,MAAME;GAEvD,MAAMyF,YAAY;IAChB,MAAMC,OACJlE,OAAO,CAACE,QAAQa,aAAa1C,OAAO6B,QAAQiE;AAC9C,QAAID,KACF,SAAA,GAAA,aAAA,iBAAQA,MAAI,EAAA,CAAA;AAEd,YAAA,GAAA,aAAA,iBAAQE,QAAM,EAAA,CAAA;;GAGhB,MAAMC,kBACJjG,SACAkG,kBAOG;AACH,WACEjG,OAAOqG,SAAStG,QAAQ,EAAEmG,aAAaC,eACvCF,eAAeC,aAAaC;;GAIhC,MAAMG,kBAAAA,GAAAA,aAAAA,iBACH7H,SAAM8C,MAAI;IAAA,IAACC,OAAI;AAAA,YAAEmE,cAAc;;IAAEY,OAAK;IAAA9E,WACnC+E,SAASZ,KAAI;IAAC,CAEnB;AAED,WAAA,GAAA,aAAA,iBACGnH,SAAMwF,QAAM,EAAA,IAAAxC,WAAA;AAAA,WAAA;uCACVhD,SAAMoB,OAAK;MAAA,IAAC2B,OAAI;AAAA,cAAEf,cAAc,CAACM;;MAAeU,WAC7CgF,MAAM;OACN,MAAM,CAACC,wBAAwBjI,SAAMkI,qBAEjC3G,OAAOqG,SAAS5F,cAAc,CAACN,GAAG,EAAE+F,aACjCU,sBACN;AAED,eAAA,GAAA,aAAA,MAAUF,qBAAoB;;MAC/B,CAAA;uCAEFjI,SAAMoB,OAAK;MAAA,IAAC2B,OAAI;AAAA,cAAEf,cAAc,CAACiF;;MAAajE,WAC3CgF,MAAM;OACN,MAAM,CAACI,oBAAoBpI,SAAMkI,qBAE7B3G,OAAOqG,SAAS5F,cAAc,CAACN,GAAG,EAAE+F,aACjCY,kBACN;AAED,eAAA,GAAA,aAAA,MAAUD,iBAAgB;;MAC3B,CAAA;uCAEFpI,SAAMoB,OAAK;MAAA,IAAC2B,OAAI;AAAA,cAAEf,cAAc,CAACgF,WAAW;;MAAShE,WAClDgF,MAAM;OACN,MAAMM,eACJpF,OAAO,CAACE,QAAQkF,gBAChB/G,OAAO6B,QAAQmF;AAEjB,WAAID,cAAc;QAChB,MAAME,cAAcjH,OAAOqG,SAAS5F,cAAc,CAACN,GAAG;AACtD,YACE8G,eACA,CAACA,YAAYf,aAAaY;aAGtB,EAAE9H,+BAAAA,YAAYgB,OAAOhB,WAAW;UAClC,MAAM8H,qBAAAA,GAAAA,sBAAAA,0BAAmD;AAEzDG,sBAAYf,aAAaY,oBACvBA;AAEFI,2BAAiB;AACfJ,6BAAkBK,SAAS;AAE3BF,uBAAYf,aAAaY,oBAAoB1G,KAAAA;aAC5C2G,aAAa;;;;OAKtB,MAAM,CAACK,gBAAgB3I,SAAMkI,eAAe,YAAY;AACtD,cAAM,IAAIP,SAASiB,MAAMH,WAAWG,GAAG,EAAE,CAAC;AAC1C,eAAOrH,OAAOqG,SAAS5F,cAAc,CAACN,GAAG,EAAE+F,aACxCC;SACH;OAEF,MAAMmB,oBACJ3F,OAAO,CAACE,QAAQC,oBAChB9B,OAAO6B,QAAQE;AAEjB,cAAA,CAEKuF,qBAAqBP,eAAe,KAAA,GAAA,aAAA,iBAClC9H,aAAAA,SAAO,EAACyD,WAAW4E,mBAAiB,CAAA,GACnC,OAAA,GAAA,aAAA,MACHF,aAAY,CAAA;;MAGlB,CAAA;uCAEF3I,SAAMoB,OAAK;MAAA,IAAC2B,OAAI;AAAA,cAAEf,cAAc,CAACgF,WAAW;;MAAUhE,WACnDgF,MAAM;AACN,WAAI,EAAA,GAAA,sBAAA,YAAYhG,cAAc,CAAC+C,MAAM,EAAE;AACrC,YAAA,QAAA,IAAA,aAA6B,aAC3B,OAAM,IAAIC,MACR,8CACD;AAGH7E,SAAAA,GAAAA,sBAAAA,YAAW;;AAIb,eAAA,GAAA,aAAA,iBACGH,SAAM8C,MAAI;QAAA,IAACC,OAAI;AAAA,gBAAEE,mBAAmB,CAAChB;;QAAS6F,OAAK;QAAA9E,WAChD8F,aACA9H,4BAAAA,oBAAoBO,QAAQ2B,OAAO,EAAElB,cAAc,CAAC+C,MAAK;QAAC,CAAA;;MAIjE,CAAA;uCAEF/E,SAAMoB,OAAK;MAAA,IAAC2B,OAAI;AAAA,cAAEf,cAAc,CAACgF,WAAW;;MAAYhE,WACrDgF,MAAM;OACN,MAAM1G,UAAUU,cAAc,CAACN;OAC/B,MAAM8G,cAAcjH,OAAOqG,SAAStG,QAAQ;AAE5C,WAAI,EAAA,GAAA,sBAAA,YAAYU,cAAc,CAAC+C,MAAM,EAAE;AACrC,YAAA,QAAA,IAAA,aAA6B,aAC3B,OAAM,IAAIC,MACR,8CACD;AAGH7E,SAAAA,GAAAA,sBAAAA,YAAW;;OAGb,MAAM,CAACwI,gBAAgB3I,SAAMkI,eAAe,YAAY;AACtD,cAAM,IAAIP,SAASiB,MAAMH,WAAWG,GAAG,EAAE,CAAC;AAC1C,eAAOrB,eAAejG,SAASkH,YAAY;SAC3C;AAEF,eAAA,GAAA,aAAA,MAAUG,aAAY;;MACvB,CAAA;uCAEF3I,SAAMoB,OAAK;MAAA,IAAC2B,OAAI;AAAA,cAAEf,cAAc,CAACgF,WAAW;;MAAOhE,WAChDgF,MAAM;AACN,WAAIzH,+BAAAA,YAAYgB,OAAOhB,SAMrB,SAAA,GAAA,aAAA,kBAJG2C,OAAO,CAACE,QAAQI,kBACfjC,OAAO6B,QAAQK,0BACjB/C,sBAAAA,gBAGoB;QAAA,IAClBqE,QAAK;AAAA,gBAAE/C,cAAc,CAAC+C;;QACtBiE,MAAM,EACJC,gBAAgB,IAClB;QAAC,CAAA;AAKP,aAAMjH,cAAc,CAAC+C;;MACtB,CAAA;uCAEF/E,SAAMoB,OAAK;MAAA,IAAC2B,OAAI;AAAA,cAAEf,cAAc,CAACgF,WAAW;;MAAS,IAAAhE,WAAA;AAAA,cACnD6E,UAAU;;MAAA,CAAA;KAAA;MAAA,CAAA;;EAIlB,CAAA;;AAKP,IAAaP,eAAe;CAC1B,MAAM/F,SAASZ,kBAAAA,WAAW;CAC1B,MAAMuI,qBAAqBlJ,SAAMoG,WAAWtF,qBAAAA,oBAAoB;CAChE,MAAMqI,cAAcD,mBAAmB1H;CACvC,MAAMS,UAAUiH,mBAAmBjH;CACnC,MAAMiB,QAAQlD,SAAMyB,iBAClBQ,SAAS,GAAGV,OAAOY,WAAWF,SAAS,IAAKN,KAAAA,EAC7C;CAED,MAAMyH,uBAAuBpJ,SAAMyB,iBAC3B0H,aAAa,EAAEE,kBAAkB,MACxC;CAED,MAAMC,eAAetJ,SAAMyB,iBAAiB;EAC1C,MAAMe,iBAAiBP,SAAS;AAChC,SAAOO,iBACHjB,OAAOK,OAAO2H,sBAAsBzH,KAAK,CAACU,kBAC1Cb,KAAAA;GACJ;CAEF,MAAM6H,mBAAmBxJ,SAAMyB,iBAAiB;EAC9C,MAAMC,KAAK4H,cAAc;AACzB,MAAI,CAAC5H,GAAI,QAAOC,KAAAA;AAChB,SAAOJ,OAAOK,OAAOC,YAAYC,IAAIJ,GAAG,EAAEI,KAAK,CAACkF;GAChD;CAEF,MAAMyC,2BACJD,kBAAkB,KAAK,gBAAgBJ,sBAAsB;CAE/D,MAAMM,gBAAgB1J,SAAMyB,iBAAiB;AAC3C,MAAIgI,oBAAoB,CAAE,QAAO9H,KAAAA;EACjC,MAAMgI,MAAML,cAAc;AAC1B,MAAI,CAACK,IAAK,QAAOhI,KAAAA;AACjB,SAAOJ,OAAOK,OAAOC,YAAYC,IAAI6H,IAAI,EAAE1H,WAAW0H;GACtD;AAEF,SAAA,GAAA,aAAA,iBACG3J,SAAM8C,MAAI;EAAA,IACTC,OAAI;AAAA,UAAE2G,eAAe;;EACrB5B,OAAK;EAAA,IACLnD,WAAQ;AAAA,WAAA,GAAA,aAAA,iBACL3E,SAAM8C,MAAI;IAAA,IAACC,OAAI;AAAA,aAAA,GAAA,aAAA,YAAE,CAAA,CAAA0G,oBAAoB,CAAA,EAAA,IAAIvG,OAAO;;IAAAF,WAC7C4G,kBACA5I,4BAAAA,oBAAoBO,QAAQqI,eAAe,EAAEjI,KAAAA,EAAS;IAAC,CAAA;;EAAAqB,WAK3D6G,cAAsB;AACtB,WAAA,GAAA,aAAA,iBACG7J,SAAM8C,MAAI;IAAA,IACTC,OAAI;AAAA,YAAEd,SAAS,KAAK3B,sBAAAA;;IAAW,IAC/BqE,WAAQ;AAAA,aAAA,GAAA,aAAA,iBAAGvD,OAAK,EAAA,IAACE,UAAO;AAAA,aAAEgI,cAAc;QAAC,CAAA;;IAAA,IAAAtG,WAAA;AAAA,aAAA,GAAA,aAAA,iBAExChD,SAAMoE,UAAQ;MAAA,IACbO,WAAQ;AAAA,eAAA,GAAA,aAAA,iBACLnE,aAAAA,SAAO,EAAA,IAACyD,YAAS;AAAA,eAAE1C,OAAO6B,QAAQE;UAAuB,CAAA;;MAAA,IAAAN,WAAA;AAAA,eAAA,GAAA,aAAA,iBAG3D5B,OAAK,EAAA,IAACE,UAAO;AAAA,eAAEgI,cAAc;UAAC,CAAA;;MAAA,CAAA;;IAAA,CAAA;;EAItC,CAAA"}
|
package/dist/esm/Match.js
CHANGED
|
@@ -321,10 +321,17 @@ var Outlet = () => {
|
|
|
321
321
|
return router.stores.matchStores.get(id)?.get().status;
|
|
322
322
|
});
|
|
323
323
|
const shouldShowNotFound = () => childMatchStatus() !== "redirected" && parentGlobalNotFound();
|
|
324
|
+
const childRouteKey = Solid.createMemo(() => {
|
|
325
|
+
if (shouldShowNotFound()) return void 0;
|
|
326
|
+
const cid = childMatchId();
|
|
327
|
+
if (!cid) return void 0;
|
|
328
|
+
return router.stores.matchStores.get(cid)?.routeId ?? cid;
|
|
329
|
+
});
|
|
324
330
|
return createComponent(Solid.Show, {
|
|
325
331
|
get when() {
|
|
326
|
-
return
|
|
332
|
+
return childRouteKey();
|
|
327
333
|
},
|
|
334
|
+
keyed: true,
|
|
328
335
|
get fallback() {
|
|
329
336
|
return createComponent(Solid.Show, {
|
|
330
337
|
get when() {
|
|
@@ -333,15 +340,14 @@ var Outlet = () => {
|
|
|
333
340
|
children: (resolvedRoute) => renderRouteNotFound(router, resolvedRoute(), void 0)
|
|
334
341
|
});
|
|
335
342
|
},
|
|
336
|
-
children: (
|
|
337
|
-
const currentMatchId = Solid.createMemo(() => childMatchIdAccessor());
|
|
343
|
+
children: (_routeKey) => {
|
|
338
344
|
return createComponent(Solid.Show, {
|
|
339
345
|
get when() {
|
|
340
346
|
return routeId() === rootRouteId;
|
|
341
347
|
},
|
|
342
348
|
get fallback() {
|
|
343
349
|
return createComponent(Match, { get matchId() {
|
|
344
|
-
return
|
|
350
|
+
return childMatchId();
|
|
345
351
|
} });
|
|
346
352
|
},
|
|
347
353
|
get children() {
|
|
@@ -353,7 +359,7 @@ var Outlet = () => {
|
|
|
353
359
|
},
|
|
354
360
|
get children() {
|
|
355
361
|
return createComponent(Match, { get matchId() {
|
|
356
|
-
return
|
|
362
|
+
return childMatchId();
|
|
357
363
|
} });
|
|
358
364
|
}
|
|
359
365
|
});
|
package/dist/esm/Match.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Match.js","names":["Solid","createControlledPromise","getLocationChangeInfo","invariant","isNotFound","isRedirect","rootRouteId","isServer","Dynamic","CatchBoundary","ErrorComponent","useRouter","CatchNotFound","getNotFound","nearestMatchContext","SafeFragment","renderRouteNotFound","ScrollRestoration","AnyRoute","RootRouteOptions","Match","props","matchId","router","match","createMemo","id","undefined","stores","matchStores","get","rawMatchState","currentMatch","routeId","parentRouteId","routesById","parentRoute","ssr","_displayPending","hasPendingMatch","currentRouteId","Boolean","pendingRouteIds","nearestMatch","hasPending","_$createComponent","Show","when","children","currentMatchState","route","resolvePendingComponent","options","pendingComponent","defaultPendingComponent","routeErrorComponent","errorComponent","defaultErrorComponent","routeOnCatch","onCatch","defaultOnCatch","routeNotFoundComponent","isRoot","notFoundComponent","notFoundRoute","component","resolvedNoSsr","ResolvedSuspenseBoundary","Suspense","ResolvedCatchBoundary","ResolvedNotFoundBoundary","ShellComponent","shellComponent","Provider","value","fallback","_$memo","getResetKey","loadedAt","error","Error","notFoundError","process","env","NODE_ENV","console","warn","_$mergeProps","Switch","MatchInner","OnRendered","scrollRestoration","location","resolvedLocation","state","__TSR_key","createEffect","on","emit","type","useContext","remountFn","remountDeps","defaultRemountDeps","loaderDeps","params","_strictParams","search","_strictSearch","key","JSON","stringify","status","_forcePending","componentKey","out","Comp","defaultComponent","Outlet","getLoadPromise","fallbackMatch","_nonReactive","loadPromise","Promise","getMatch","keyedOut","keyed","_key","_","displayPendingResult","createResource","displayPendingPromise","minPendingResult","minPendingPromise","pendingMinMs","defaultPendingMinMs","routerMatch","setTimeout","resolve","loaderResult","r","FallbackComponent","_routeId","RouteErrorComponent","info","componentStack","nearestParentMatch","parentMatch","parentGlobalNotFound","globalNotFound","childMatchId","childMatchIdByRouteId","childMatchStatus","shouldShowNotFound","resolvedRoute","childMatchIdAccessor","currentMatchId"],"sources":["../../src/Match.tsx"],"sourcesContent":["import * as Solid from 'solid-js'\nimport {\n createControlledPromise,\n getLocationChangeInfo,\n invariant,\n isNotFound,\n isRedirect,\n rootRouteId,\n} from '@tanstack/router-core'\nimport { isServer } from '@tanstack/router-core/isServer'\nimport { Dynamic } from 'solid-js/web'\nimport { CatchBoundary, ErrorComponent } from './CatchBoundary'\nimport { useRouter } from './useRouter'\nimport { CatchNotFound, getNotFound } from './not-found'\nimport { nearestMatchContext } from './matchContext'\nimport { SafeFragment } from './SafeFragment'\nimport { renderRouteNotFound } from './renderRouteNotFound'\nimport { ScrollRestoration } from './scroll-restoration'\nimport type { AnyRoute, RootRouteOptions } from '@tanstack/router-core'\n\nexport const Match = (props: { matchId: string }) => {\n const router = useRouter()\n\n const match = Solid.createMemo(() => {\n const id = props.matchId\n if (!id) return undefined\n return router.stores.matchStores.get(id)?.get()\n })\n\n const rawMatchState = Solid.createMemo(() => {\n const currentMatch = match()\n if (!currentMatch) {\n return null\n }\n\n const routeId = currentMatch.routeId as string\n const parentRouteId = (router.routesById[routeId] as AnyRoute)?.parentRoute\n ?.id\n\n return {\n matchId: currentMatch.id,\n routeId,\n ssr: currentMatch.ssr,\n _displayPending: currentMatch._displayPending,\n parentRouteId: parentRouteId as string | undefined,\n }\n })\n\n const hasPendingMatch = Solid.createMemo(() => {\n const currentRouteId = rawMatchState()?.routeId\n return currentRouteId\n ? Boolean(router.stores.pendingRouteIds.get()[currentRouteId])\n : false\n })\n const nearestMatch = {\n matchId: () => rawMatchState()?.matchId,\n routeId: () => rawMatchState()?.routeId,\n match,\n hasPending: hasPendingMatch,\n }\n\n return (\n <Solid.Show when={rawMatchState()}>\n {(currentMatchState) => {\n const route: () => AnyRoute = () =>\n router.routesById[currentMatchState().routeId]\n\n const resolvePendingComponent = () =>\n route().options.pendingComponent ??\n router.options.defaultPendingComponent\n\n const routeErrorComponent = () =>\n route().options.errorComponent ?? router.options.defaultErrorComponent\n\n const routeOnCatch = () =>\n route().options.onCatch ?? router.options.defaultOnCatch\n\n const routeNotFoundComponent = () =>\n route().isRoot\n ? // If it's the root route, use the globalNotFound option, with fallback to the notFoundRoute's component\n (route().options.notFoundComponent ??\n router.options.notFoundRoute?.options.component)\n : route().options.notFoundComponent\n\n const resolvedNoSsr =\n currentMatchState().ssr === false ||\n currentMatchState().ssr === 'data-only'\n\n const ResolvedSuspenseBoundary = () => Solid.Suspense\n\n const ResolvedCatchBoundary = () =>\n routeErrorComponent() ? CatchBoundary : SafeFragment\n\n const ResolvedNotFoundBoundary = () =>\n routeNotFoundComponent() ? CatchNotFound : SafeFragment\n\n const ShellComponent = route().isRoot\n ? ((route().options as RootRouteOptions).shellComponent ??\n SafeFragment)\n : SafeFragment\n\n return (\n <ShellComponent>\n <nearestMatchContext.Provider value={nearestMatch}>\n <Dynamic\n component={ResolvedSuspenseBoundary()}\n fallback={\n // Don't show fallback on server when using no-ssr mode to avoid hydration mismatch\n (isServer ?? router.isServer) && resolvedNoSsr ? undefined : (\n <Dynamic component={resolvePendingComponent()} />\n )\n }\n >\n <Dynamic\n component={ResolvedCatchBoundary()}\n getResetKey={() => router.stores.loadedAt.get()}\n errorComponent={routeErrorComponent() || ErrorComponent}\n onCatch={(error: Error) => {\n // Forward not found errors (we don't want to show the error component for these)\n const notFoundError = getNotFound(error)\n if (notFoundError) {\n notFoundError.routeId ??= currentMatchState()\n .routeId as any\n throw notFoundError\n }\n if (process.env.NODE_ENV !== 'production') {\n console.warn(\n `Warning: Error in route match: ${currentMatchState().routeId}`,\n )\n }\n routeOnCatch()?.(error)\n }}\n >\n <Dynamic\n component={ResolvedNotFoundBoundary()}\n fallback={(error: any) => {\n const notFoundError = getNotFound(error) ?? error\n\n notFoundError.routeId ??= currentMatchState()\n .routeId as any\n\n // If the current not found handler doesn't exist or it has a\n // route ID which doesn't match the current route, rethrow the error\n if (\n !routeNotFoundComponent() ||\n (notFoundError.routeId &&\n notFoundError.routeId !==\n currentMatchState().routeId) ||\n (!notFoundError.routeId && !route().isRoot)\n )\n throw notFoundError\n\n return (\n <Dynamic\n component={routeNotFoundComponent()}\n {...notFoundError}\n />\n )\n }}\n >\n <Solid.Switch>\n <Solid.Match when={resolvedNoSsr}>\n <Solid.Show\n when={!(isServer ?? router.isServer)}\n fallback={\n <Dynamic component={resolvePendingComponent()} />\n }\n >\n <MatchInner />\n </Solid.Show>\n </Solid.Match>\n <Solid.Match when={!resolvedNoSsr}>\n <MatchInner />\n </Solid.Match>\n </Solid.Switch>\n </Dynamic>\n </Dynamic>\n </Dynamic>\n </nearestMatchContext.Provider>\n\n {currentMatchState().parentRouteId === rootRouteId ? (\n <>\n <OnRendered />\n {router.options.scrollRestoration &&\n (isServer ?? router.isServer) ? (\n <ScrollRestoration />\n ) : null}\n </>\n ) : null}\n </ShellComponent>\n )\n }}\n </Solid.Show>\n )\n}\n\n// On Rendered can't happen above the root layout because it needs to run\n// after the app has committed below the root layout. Keeping it here lets us\n// fire onRendered even after a hydration mismatch above the root layout\n// (like bad head/link tags, which is common).\nfunction OnRendered() {\n const router = useRouter()\n\n const location = Solid.createMemo(\n () => router.stores.resolvedLocation.get()?.state.__TSR_key,\n )\n Solid.createEffect(\n Solid.on([location], () => {\n router.emit({\n type: 'onRendered',\n ...getLocationChangeInfo(\n router.stores.location.get(),\n router.stores.resolvedLocation.get(),\n ),\n })\n }),\n )\n return null\n}\n\nexport const MatchInner = (): any => {\n const router = useRouter()\n const match = Solid.useContext(nearestMatchContext).match\n\n const rawMatchState = Solid.createMemo(() => {\n const currentMatch = match()\n if (!currentMatch) {\n return null\n }\n\n const routeId = currentMatch.routeId as string\n\n const remountFn =\n (router.routesById[routeId] as AnyRoute).options.remountDeps ??\n router.options.defaultRemountDeps\n const remountDeps = remountFn?.({\n routeId,\n loaderDeps: currentMatch.loaderDeps,\n params: currentMatch._strictParams,\n search: currentMatch._strictSearch,\n })\n const key = remountDeps ? JSON.stringify(remountDeps) : undefined\n\n return {\n key,\n routeId,\n match: {\n id: currentMatch.id,\n status: currentMatch.status,\n error: currentMatch.error,\n _forcePending: currentMatch._forcePending ?? false,\n _displayPending: currentMatch._displayPending ?? false,\n },\n }\n })\n\n return (\n <Solid.Show when={rawMatchState()}>\n {(currentMatchState) => {\n const route = () => router.routesById[currentMatchState().routeId]!\n\n const currentMatch = () => currentMatchState().match\n\n const componentKey = () =>\n currentMatchState().key ?? currentMatchState().match.id\n\n const out = () => {\n const Comp =\n route().options.component ?? router.options.defaultComponent\n if (Comp) {\n return <Comp />\n }\n return <Outlet />\n }\n\n const getLoadPromise = (\n matchId: string,\n fallbackMatch:\n | {\n _nonReactive: {\n loadPromise?: Promise<void>\n }\n }\n | undefined,\n ) => {\n return (\n router.getMatch(matchId)?._nonReactive.loadPromise ??\n fallbackMatch?._nonReactive.loadPromise\n )\n }\n\n const keyedOut = () => (\n <Solid.Show when={componentKey()} keyed>\n {(_key) => out()}\n </Solid.Show>\n )\n\n return (\n <Solid.Switch>\n <Solid.Match when={currentMatch()._displayPending}>\n {(_) => {\n const [displayPendingResult] = Solid.createResource(\n () =>\n router.getMatch(currentMatch().id)?._nonReactive\n .displayPendingPromise,\n )\n\n return <>{displayPendingResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch()._forcePending}>\n {(_) => {\n const [minPendingResult] = Solid.createResource(\n () =>\n router.getMatch(currentMatch().id)?._nonReactive\n .minPendingPromise,\n )\n\n return <>{minPendingResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch().status === 'pending'}>\n {(_) => {\n const pendingMinMs =\n route().options.pendingMinMs ??\n router.options.defaultPendingMinMs\n\n if (pendingMinMs) {\n const routerMatch = router.getMatch(currentMatch().id)\n if (\n routerMatch &&\n !routerMatch._nonReactive.minPendingPromise\n ) {\n // Create a promise that will resolve after the minPendingMs\n if (!(isServer ?? router.isServer)) {\n const minPendingPromise = createControlledPromise<void>()\n\n routerMatch._nonReactive.minPendingPromise =\n minPendingPromise\n\n setTimeout(() => {\n minPendingPromise.resolve()\n // We've handled the minPendingPromise, so we can delete it\n routerMatch._nonReactive.minPendingPromise = undefined\n }, pendingMinMs)\n }\n }\n }\n\n const [loaderResult] = Solid.createResource(async () => {\n await new Promise((r) => setTimeout(r, 0))\n return router.getMatch(currentMatch().id)?._nonReactive\n .loadPromise\n })\n\n const FallbackComponent =\n route().options.pendingComponent ??\n router.options.defaultPendingComponent\n\n return (\n <>\n {FallbackComponent && pendingMinMs > 0 ? (\n <Dynamic component={FallbackComponent} />\n ) : null}\n {loaderResult()}\n </>\n )\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch().status === 'notFound'}>\n {(_) => {\n if (!isNotFound(currentMatch().error)) {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(\n 'Invariant failed: Expected a notFound error',\n )\n }\n\n invariant()\n }\n\n // Use Show with keyed to ensure re-render when routeId changes\n return (\n <Solid.Show when={currentMatchState().routeId} keyed>\n {(_routeId) =>\n renderRouteNotFound(router, route(), currentMatch().error)\n }\n </Solid.Show>\n )\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch().status === 'redirected'}>\n {(_) => {\n const matchId = currentMatch().id\n const routerMatch = router.getMatch(matchId)\n\n if (!isRedirect(currentMatch().error)) {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(\n 'Invariant failed: Expected a redirect error',\n )\n }\n\n invariant()\n }\n\n const [loaderResult] = Solid.createResource(async () => {\n await new Promise((r) => setTimeout(r, 0))\n return getLoadPromise(matchId, routerMatch)\n })\n\n return <>{loaderResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch().status === 'error'}>\n {(_) => {\n if (isServer ?? router.isServer) {\n const RouteErrorComponent =\n (route().options.errorComponent ??\n router.options.defaultErrorComponent) ||\n ErrorComponent\n\n return (\n <RouteErrorComponent\n error={currentMatch().error}\n info={{\n componentStack: '',\n }}\n />\n )\n }\n\n throw currentMatch().error\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch().status === 'success'}>\n {keyedOut()}\n </Solid.Match>\n </Solid.Switch>\n )\n }}\n </Solid.Show>\n )\n}\n\nexport const Outlet = () => {\n const router = useRouter()\n const nearestParentMatch = Solid.useContext(nearestMatchContext)\n const parentMatch = nearestParentMatch.match\n const routeId = nearestParentMatch.routeId\n const route = Solid.createMemo(() =>\n routeId() ? router.routesById[routeId()!] : undefined,\n )\n\n const parentGlobalNotFound = Solid.createMemo(\n () => parentMatch()?.globalNotFound ?? false,\n )\n\n const childMatchId = Solid.createMemo(() => {\n const currentRouteId = routeId()\n return currentRouteId\n ? router.stores.childMatchIdByRouteId.get()[currentRouteId]\n : undefined\n })\n\n const childMatchStatus = Solid.createMemo(() => {\n const id = childMatchId()\n if (!id) return undefined\n return router.stores.matchStores.get(id)?.get().status\n })\n\n // Only show not-found if we're not in a redirected state\n const shouldShowNotFound = () =>\n childMatchStatus() !== 'redirected' && parentGlobalNotFound()\n\n return (\n <Solid.Show\n when={!shouldShowNotFound() && childMatchId()}\n fallback={\n <Solid.Show when={shouldShowNotFound() && route()}>\n {(resolvedRoute) =>\n renderRouteNotFound(router, resolvedRoute(), undefined)\n }\n </Solid.Show>\n }\n >\n {(childMatchIdAccessor) => {\n const currentMatchId = Solid.createMemo(() => childMatchIdAccessor())\n\n return (\n <Solid.Show\n when={routeId() === rootRouteId}\n fallback={<Match matchId={currentMatchId()} />}\n >\n <Solid.Suspense\n fallback={\n <Dynamic component={router.options.defaultPendingComponent} />\n }\n >\n <Match matchId={currentMatchId()} />\n </Solid.Suspense>\n </Solid.Show>\n )\n }}\n </Solid.Show>\n )\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Match.js","names":["Solid","createControlledPromise","getLocationChangeInfo","invariant","isNotFound","isRedirect","rootRouteId","isServer","Dynamic","CatchBoundary","ErrorComponent","useRouter","CatchNotFound","getNotFound","nearestMatchContext","SafeFragment","renderRouteNotFound","ScrollRestoration","AnyRoute","RootRouteOptions","Match","props","matchId","router","match","createMemo","id","undefined","stores","matchStores","get","rawMatchState","currentMatch","routeId","parentRouteId","routesById","parentRoute","ssr","_displayPending","hasPendingMatch","currentRouteId","Boolean","pendingRouteIds","nearestMatch","hasPending","_$createComponent","Show","when","children","currentMatchState","route","resolvePendingComponent","options","pendingComponent","defaultPendingComponent","routeErrorComponent","errorComponent","defaultErrorComponent","routeOnCatch","onCatch","defaultOnCatch","routeNotFoundComponent","isRoot","notFoundComponent","notFoundRoute","component","resolvedNoSsr","ResolvedSuspenseBoundary","Suspense","ResolvedCatchBoundary","ResolvedNotFoundBoundary","ShellComponent","shellComponent","Provider","value","fallback","_$memo","getResetKey","loadedAt","error","Error","notFoundError","process","env","NODE_ENV","console","warn","_$mergeProps","Switch","MatchInner","OnRendered","scrollRestoration","location","resolvedLocation","state","__TSR_key","createEffect","on","emit","type","useContext","remountFn","remountDeps","defaultRemountDeps","loaderDeps","params","_strictParams","search","_strictSearch","key","JSON","stringify","status","_forcePending","componentKey","out","Comp","defaultComponent","Outlet","getLoadPromise","fallbackMatch","_nonReactive","loadPromise","Promise","getMatch","keyedOut","keyed","_key","_","displayPendingResult","createResource","displayPendingPromise","minPendingResult","minPendingPromise","pendingMinMs","defaultPendingMinMs","routerMatch","setTimeout","resolve","loaderResult","r","FallbackComponent","_routeId","RouteErrorComponent","info","componentStack","nearestParentMatch","parentMatch","parentGlobalNotFound","globalNotFound","childMatchId","childMatchIdByRouteId","childMatchStatus","shouldShowNotFound","childRouteKey","cid","resolvedRoute","_routeKey"],"sources":["../../src/Match.tsx"],"sourcesContent":["import * as Solid from 'solid-js'\nimport {\n createControlledPromise,\n getLocationChangeInfo,\n invariant,\n isNotFound,\n isRedirect,\n rootRouteId,\n} from '@tanstack/router-core'\nimport { isServer } from '@tanstack/router-core/isServer'\nimport { Dynamic } from 'solid-js/web'\nimport { CatchBoundary, ErrorComponent } from './CatchBoundary'\nimport { useRouter } from './useRouter'\nimport { CatchNotFound, getNotFound } from './not-found'\nimport { nearestMatchContext } from './matchContext'\nimport { SafeFragment } from './SafeFragment'\nimport { renderRouteNotFound } from './renderRouteNotFound'\nimport { ScrollRestoration } from './scroll-restoration'\nimport type { AnyRoute, RootRouteOptions } from '@tanstack/router-core'\n\nexport const Match = (props: { matchId: string }) => {\n const router = useRouter()\n\n const match = Solid.createMemo(() => {\n const id = props.matchId\n if (!id) return undefined\n return router.stores.matchStores.get(id)?.get()\n })\n\n const rawMatchState = Solid.createMemo(() => {\n const currentMatch = match()\n if (!currentMatch) {\n return null\n }\n\n const routeId = currentMatch.routeId as string\n const parentRouteId = (router.routesById[routeId] as AnyRoute)?.parentRoute\n ?.id\n\n return {\n matchId: currentMatch.id,\n routeId,\n ssr: currentMatch.ssr,\n _displayPending: currentMatch._displayPending,\n parentRouteId: parentRouteId as string | undefined,\n }\n })\n\n const hasPendingMatch = Solid.createMemo(() => {\n const currentRouteId = rawMatchState()?.routeId\n return currentRouteId\n ? Boolean(router.stores.pendingRouteIds.get()[currentRouteId])\n : false\n })\n const nearestMatch = {\n matchId: () => rawMatchState()?.matchId,\n routeId: () => rawMatchState()?.routeId,\n match,\n hasPending: hasPendingMatch,\n }\n\n return (\n <Solid.Show when={rawMatchState()}>\n {(currentMatchState) => {\n const route: () => AnyRoute = () =>\n router.routesById[currentMatchState().routeId]\n\n const resolvePendingComponent = () =>\n route().options.pendingComponent ??\n router.options.defaultPendingComponent\n\n const routeErrorComponent = () =>\n route().options.errorComponent ?? router.options.defaultErrorComponent\n\n const routeOnCatch = () =>\n route().options.onCatch ?? router.options.defaultOnCatch\n\n const routeNotFoundComponent = () =>\n route().isRoot\n ? // If it's the root route, use the globalNotFound option, with fallback to the notFoundRoute's component\n (route().options.notFoundComponent ??\n router.options.notFoundRoute?.options.component)\n : route().options.notFoundComponent\n\n const resolvedNoSsr =\n currentMatchState().ssr === false ||\n currentMatchState().ssr === 'data-only'\n\n const ResolvedSuspenseBoundary = () => Solid.Suspense\n\n const ResolvedCatchBoundary = () =>\n routeErrorComponent() ? CatchBoundary : SafeFragment\n\n const ResolvedNotFoundBoundary = () =>\n routeNotFoundComponent() ? CatchNotFound : SafeFragment\n\n const ShellComponent = route().isRoot\n ? ((route().options as RootRouteOptions).shellComponent ??\n SafeFragment)\n : SafeFragment\n\n return (\n <ShellComponent>\n <nearestMatchContext.Provider value={nearestMatch}>\n <Dynamic\n component={ResolvedSuspenseBoundary()}\n fallback={\n // Don't show fallback on server when using no-ssr mode to avoid hydration mismatch\n (isServer ?? router.isServer) && resolvedNoSsr ? undefined : (\n <Dynamic component={resolvePendingComponent()} />\n )\n }\n >\n <Dynamic\n component={ResolvedCatchBoundary()}\n getResetKey={() => router.stores.loadedAt.get()}\n errorComponent={routeErrorComponent() || ErrorComponent}\n onCatch={(error: Error) => {\n // Forward not found errors (we don't want to show the error component for these)\n const notFoundError = getNotFound(error)\n if (notFoundError) {\n notFoundError.routeId ??= currentMatchState()\n .routeId as any\n throw notFoundError\n }\n if (process.env.NODE_ENV !== 'production') {\n console.warn(\n `Warning: Error in route match: ${currentMatchState().routeId}`,\n )\n }\n routeOnCatch()?.(error)\n }}\n >\n <Dynamic\n component={ResolvedNotFoundBoundary()}\n fallback={(error: any) => {\n const notFoundError = getNotFound(error) ?? error\n\n notFoundError.routeId ??= currentMatchState()\n .routeId as any\n\n // If the current not found handler doesn't exist or it has a\n // route ID which doesn't match the current route, rethrow the error\n if (\n !routeNotFoundComponent() ||\n (notFoundError.routeId &&\n notFoundError.routeId !==\n currentMatchState().routeId) ||\n (!notFoundError.routeId && !route().isRoot)\n )\n throw notFoundError\n\n return (\n <Dynamic\n component={routeNotFoundComponent()}\n {...notFoundError}\n />\n )\n }}\n >\n <Solid.Switch>\n <Solid.Match when={resolvedNoSsr}>\n <Solid.Show\n when={!(isServer ?? router.isServer)}\n fallback={\n <Dynamic component={resolvePendingComponent()} />\n }\n >\n <MatchInner />\n </Solid.Show>\n </Solid.Match>\n <Solid.Match when={!resolvedNoSsr}>\n <MatchInner />\n </Solid.Match>\n </Solid.Switch>\n </Dynamic>\n </Dynamic>\n </Dynamic>\n </nearestMatchContext.Provider>\n\n {currentMatchState().parentRouteId === rootRouteId ? (\n <>\n <OnRendered />\n {router.options.scrollRestoration &&\n (isServer ?? router.isServer) ? (\n <ScrollRestoration />\n ) : null}\n </>\n ) : null}\n </ShellComponent>\n )\n }}\n </Solid.Show>\n )\n}\n\n// On Rendered can't happen above the root layout because it needs to run\n// after the app has committed below the root layout. Keeping it here lets us\n// fire onRendered even after a hydration mismatch above the root layout\n// (like bad head/link tags, which is common).\nfunction OnRendered() {\n const router = useRouter()\n\n const location = Solid.createMemo(\n () => router.stores.resolvedLocation.get()?.state.__TSR_key,\n )\n Solid.createEffect(\n Solid.on([location], () => {\n router.emit({\n type: 'onRendered',\n ...getLocationChangeInfo(\n router.stores.location.get(),\n router.stores.resolvedLocation.get(),\n ),\n })\n }),\n )\n return null\n}\n\nexport const MatchInner = (): any => {\n const router = useRouter()\n const match = Solid.useContext(nearestMatchContext).match\n\n const rawMatchState = Solid.createMemo(() => {\n const currentMatch = match()\n if (!currentMatch) {\n return null\n }\n\n const routeId = currentMatch.routeId as string\n\n const remountFn =\n (router.routesById[routeId] as AnyRoute).options.remountDeps ??\n router.options.defaultRemountDeps\n const remountDeps = remountFn?.({\n routeId,\n loaderDeps: currentMatch.loaderDeps,\n params: currentMatch._strictParams,\n search: currentMatch._strictSearch,\n })\n const key = remountDeps ? JSON.stringify(remountDeps) : undefined\n\n return {\n key,\n routeId,\n match: {\n id: currentMatch.id,\n status: currentMatch.status,\n error: currentMatch.error,\n _forcePending: currentMatch._forcePending ?? false,\n _displayPending: currentMatch._displayPending ?? false,\n },\n }\n })\n\n return (\n <Solid.Show when={rawMatchState()}>\n {(currentMatchState) => {\n const route = () => router.routesById[currentMatchState().routeId]!\n\n const currentMatch = () => currentMatchState().match\n\n const componentKey = () =>\n currentMatchState().key ?? currentMatchState().match.id\n\n const out = () => {\n const Comp =\n route().options.component ?? router.options.defaultComponent\n if (Comp) {\n return <Comp />\n }\n return <Outlet />\n }\n\n const getLoadPromise = (\n matchId: string,\n fallbackMatch:\n | {\n _nonReactive: {\n loadPromise?: Promise<void>\n }\n }\n | undefined,\n ) => {\n return (\n router.getMatch(matchId)?._nonReactive.loadPromise ??\n fallbackMatch?._nonReactive.loadPromise\n )\n }\n\n const keyedOut = () => (\n <Solid.Show when={componentKey()} keyed>\n {(_key) => out()}\n </Solid.Show>\n )\n\n return (\n <Solid.Switch>\n <Solid.Match when={currentMatch()._displayPending}>\n {(_) => {\n const [displayPendingResult] = Solid.createResource(\n () =>\n router.getMatch(currentMatch().id)?._nonReactive\n .displayPendingPromise,\n )\n\n return <>{displayPendingResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch()._forcePending}>\n {(_) => {\n const [minPendingResult] = Solid.createResource(\n () =>\n router.getMatch(currentMatch().id)?._nonReactive\n .minPendingPromise,\n )\n\n return <>{minPendingResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch().status === 'pending'}>\n {(_) => {\n const pendingMinMs =\n route().options.pendingMinMs ??\n router.options.defaultPendingMinMs\n\n if (pendingMinMs) {\n const routerMatch = router.getMatch(currentMatch().id)\n if (\n routerMatch &&\n !routerMatch._nonReactive.minPendingPromise\n ) {\n // Create a promise that will resolve after the minPendingMs\n if (!(isServer ?? router.isServer)) {\n const minPendingPromise = createControlledPromise<void>()\n\n routerMatch._nonReactive.minPendingPromise =\n minPendingPromise\n\n setTimeout(() => {\n minPendingPromise.resolve()\n // We've handled the minPendingPromise, so we can delete it\n routerMatch._nonReactive.minPendingPromise = undefined\n }, pendingMinMs)\n }\n }\n }\n\n const [loaderResult] = Solid.createResource(async () => {\n await new Promise((r) => setTimeout(r, 0))\n return router.getMatch(currentMatch().id)?._nonReactive\n .loadPromise\n })\n\n const FallbackComponent =\n route().options.pendingComponent ??\n router.options.defaultPendingComponent\n\n return (\n <>\n {FallbackComponent && pendingMinMs > 0 ? (\n <Dynamic component={FallbackComponent} />\n ) : null}\n {loaderResult()}\n </>\n )\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch().status === 'notFound'}>\n {(_) => {\n if (!isNotFound(currentMatch().error)) {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(\n 'Invariant failed: Expected a notFound error',\n )\n }\n\n invariant()\n }\n\n // Use Show with keyed to ensure re-render when routeId changes\n return (\n <Solid.Show when={currentMatchState().routeId} keyed>\n {(_routeId) =>\n renderRouteNotFound(router, route(), currentMatch().error)\n }\n </Solid.Show>\n )\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch().status === 'redirected'}>\n {(_) => {\n const matchId = currentMatch().id\n const routerMatch = router.getMatch(matchId)\n\n if (!isRedirect(currentMatch().error)) {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(\n 'Invariant failed: Expected a redirect error',\n )\n }\n\n invariant()\n }\n\n const [loaderResult] = Solid.createResource(async () => {\n await new Promise((r) => setTimeout(r, 0))\n return getLoadPromise(matchId, routerMatch)\n })\n\n return <>{loaderResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch().status === 'error'}>\n {(_) => {\n if (isServer ?? router.isServer) {\n const RouteErrorComponent =\n (route().options.errorComponent ??\n router.options.defaultErrorComponent) ||\n ErrorComponent\n\n return (\n <RouteErrorComponent\n error={currentMatch().error}\n info={{\n componentStack: '',\n }}\n />\n )\n }\n\n throw currentMatch().error\n }}\n </Solid.Match>\n <Solid.Match when={currentMatch().status === 'success'}>\n {keyedOut()}\n </Solid.Match>\n </Solid.Switch>\n )\n }}\n </Solid.Show>\n )\n}\n\nexport const Outlet = () => {\n const router = useRouter()\n const nearestParentMatch = Solid.useContext(nearestMatchContext)\n const parentMatch = nearestParentMatch.match\n const routeId = nearestParentMatch.routeId\n const route = Solid.createMemo(() =>\n routeId() ? router.routesById[routeId()!] : undefined,\n )\n\n const parentGlobalNotFound = Solid.createMemo(\n () => parentMatch()?.globalNotFound ?? false,\n )\n\n const childMatchId = Solid.createMemo(() => {\n const currentRouteId = routeId()\n return currentRouteId\n ? router.stores.childMatchIdByRouteId.get()[currentRouteId]\n : undefined\n })\n\n const childMatchStatus = Solid.createMemo(() => {\n const id = childMatchId()\n if (!id) return undefined\n return router.stores.matchStores.get(id)?.get().status\n })\n\n const shouldShowNotFound = () =>\n childMatchStatus() !== 'redirected' && parentGlobalNotFound()\n\n const childRouteKey = Solid.createMemo(() => {\n if (shouldShowNotFound()) return undefined\n const cid = childMatchId()\n if (!cid) return undefined\n return router.stores.matchStores.get(cid)?.routeId ?? cid\n })\n\n return (\n <Solid.Show\n when={childRouteKey()}\n keyed\n fallback={\n <Solid.Show when={shouldShowNotFound() && route()}>\n {(resolvedRoute) =>\n renderRouteNotFound(router, resolvedRoute(), undefined)\n }\n </Solid.Show>\n }\n >\n {(_routeKey: string) => {\n return (\n <Solid.Show\n when={routeId() === rootRouteId}\n fallback={<Match matchId={childMatchId()!} />}\n >\n <Solid.Suspense\n fallback={\n <Dynamic component={router.options.defaultPendingComponent} />\n }\n >\n <Match matchId={childMatchId()!} />\n </Solid.Suspense>\n </Solid.Show>\n )\n }}\n </Solid.Show>\n )\n}\n"],"mappings":"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"}
|
package/dist/source/Match.jsx
CHANGED
|
@@ -305,16 +305,22 @@ export const Outlet = () => {
|
|
|
305
305
|
return undefined;
|
|
306
306
|
return router.stores.matchStores.get(id)?.get().status;
|
|
307
307
|
});
|
|
308
|
-
// Only show not-found if we're not in a redirected state
|
|
309
308
|
const shouldShowNotFound = () => childMatchStatus() !== 'redirected' && parentGlobalNotFound();
|
|
310
|
-
|
|
309
|
+
const childRouteKey = Solid.createMemo(() => {
|
|
310
|
+
if (shouldShowNotFound())
|
|
311
|
+
return undefined;
|
|
312
|
+
const cid = childMatchId();
|
|
313
|
+
if (!cid)
|
|
314
|
+
return undefined;
|
|
315
|
+
return router.stores.matchStores.get(cid)?.routeId ?? cid;
|
|
316
|
+
});
|
|
317
|
+
return (<Solid.Show when={childRouteKey()} keyed fallback={<Solid.Show when={shouldShowNotFound() && route()}>
|
|
311
318
|
{(resolvedRoute) => renderRouteNotFound(router, resolvedRoute(), undefined)}
|
|
312
319
|
</Solid.Show>}>
|
|
313
|
-
{(
|
|
314
|
-
|
|
315
|
-
return (<Solid.Show when={routeId() === rootRouteId} fallback={<Match matchId={currentMatchId()}/>}>
|
|
320
|
+
{(_routeKey) => {
|
|
321
|
+
return (<Solid.Show when={routeId() === rootRouteId} fallback={<Match matchId={childMatchId()}/>}>
|
|
316
322
|
<Solid.Suspense fallback={<Dynamic component={router.options.defaultPendingComponent}/>}>
|
|
317
|
-
<Match matchId={
|
|
323
|
+
<Match matchId={childMatchId()}/>
|
|
318
324
|
</Solid.Suspense>
|
|
319
325
|
</Solid.Show>);
|
|
320
326
|
}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Match.jsx","sourceRoot":"","sources":["../../src/Match.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Match.jsx","sourceRoot":"","sources":["../../src/Match.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tanstack/solid-router",
|
|
3
|
-
"version": "1.168.
|
|
3
|
+
"version": "1.168.20",
|
|
4
4
|
"description": "Modern and scalable routing for Solid applications",
|
|
5
5
|
"author": "Tanner Linsley",
|
|
6
6
|
"license": "MIT",
|
|
@@ -92,7 +92,7 @@
|
|
|
92
92
|
"@solidjs/meta": "^0.29.4",
|
|
93
93
|
"isbot": "^5.1.22",
|
|
94
94
|
"@tanstack/history": "1.161.6",
|
|
95
|
-
"@tanstack/router-core": "1.168.
|
|
95
|
+
"@tanstack/router-core": "1.168.15"
|
|
96
96
|
},
|
|
97
97
|
"devDependencies": {
|
|
98
98
|
"@solidjs/testing-library": "^0.8.10",
|
package/src/Match.tsx
CHANGED
|
@@ -469,13 +469,20 @@ export const Outlet = () => {
|
|
|
469
469
|
return router.stores.matchStores.get(id)?.get().status
|
|
470
470
|
})
|
|
471
471
|
|
|
472
|
-
// Only show not-found if we're not in a redirected state
|
|
473
472
|
const shouldShowNotFound = () =>
|
|
474
473
|
childMatchStatus() !== 'redirected' && parentGlobalNotFound()
|
|
475
474
|
|
|
475
|
+
const childRouteKey = Solid.createMemo(() => {
|
|
476
|
+
if (shouldShowNotFound()) return undefined
|
|
477
|
+
const cid = childMatchId()
|
|
478
|
+
if (!cid) return undefined
|
|
479
|
+
return router.stores.matchStores.get(cid)?.routeId ?? cid
|
|
480
|
+
})
|
|
481
|
+
|
|
476
482
|
return (
|
|
477
483
|
<Solid.Show
|
|
478
|
-
when={
|
|
484
|
+
when={childRouteKey()}
|
|
485
|
+
keyed
|
|
479
486
|
fallback={
|
|
480
487
|
<Solid.Show when={shouldShowNotFound() && route()}>
|
|
481
488
|
{(resolvedRoute) =>
|
|
@@ -484,20 +491,18 @@ export const Outlet = () => {
|
|
|
484
491
|
</Solid.Show>
|
|
485
492
|
}
|
|
486
493
|
>
|
|
487
|
-
{(
|
|
488
|
-
const currentMatchId = Solid.createMemo(() => childMatchIdAccessor())
|
|
489
|
-
|
|
494
|
+
{(_routeKey: string) => {
|
|
490
495
|
return (
|
|
491
496
|
<Solid.Show
|
|
492
497
|
when={routeId() === rootRouteId}
|
|
493
|
-
fallback={<Match matchId={
|
|
498
|
+
fallback={<Match matchId={childMatchId()!} />}
|
|
494
499
|
>
|
|
495
500
|
<Solid.Suspense
|
|
496
501
|
fallback={
|
|
497
502
|
<Dynamic component={router.options.defaultPendingComponent} />
|
|
498
503
|
}
|
|
499
504
|
>
|
|
500
|
-
<Match matchId={
|
|
505
|
+
<Match matchId={childMatchId()!} />
|
|
501
506
|
</Solid.Suspense>
|
|
502
507
|
</Solid.Show>
|
|
503
508
|
)
|