@tanstack/solid-router 1.131.3 → 1.131.5
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 +31 -26
- package/dist/cjs/Match.cjs.map +1 -1
- package/dist/esm/Match.js +32 -27
- package/dist/esm/Match.js.map +1 -1
- package/dist/source/Match.jsx +33 -33
- package/dist/source/Match.jsx.map +1 -1
- package/package.json +3 -3
- package/src/Match.tsx +35 -36
package/dist/cjs/Match.cjs
CHANGED
|
@@ -36,7 +36,11 @@ const Match = (props) => {
|
|
|
36
36
|
select: (s) => {
|
|
37
37
|
const match = s.matches.find((d) => d.id === props.matchId);
|
|
38
38
|
invariant(match, `Could not find match for matchId "${props.matchId}". Please file an issue!`);
|
|
39
|
-
return
|
|
39
|
+
return {
|
|
40
|
+
routeId: match.routeId,
|
|
41
|
+
ssr: match.ssr,
|
|
42
|
+
_displayPending: match._displayPending
|
|
43
|
+
};
|
|
40
44
|
}
|
|
41
45
|
});
|
|
42
46
|
const route = () => router.routesById[matchState().routeId];
|
|
@@ -184,8 +188,7 @@ const MatchInner = (props) => {
|
|
|
184
188
|
const router = useRouter.useRouter();
|
|
185
189
|
const matchState = useRouterState.useRouterState({
|
|
186
190
|
select: (s) => {
|
|
187
|
-
const
|
|
188
|
-
const match2 = s.matches[matchIndex];
|
|
191
|
+
const match2 = s.matches.find((d) => d.id === props.matchId);
|
|
189
192
|
const routeId = match2.routeId;
|
|
190
193
|
const remountFn = router.routesById[routeId].options.remountDeps ?? router.options.defaultRemountDeps;
|
|
191
194
|
const remountDeps = remountFn == null ? void 0 : remountFn({
|
|
@@ -198,7 +201,13 @@ const MatchInner = (props) => {
|
|
|
198
201
|
return {
|
|
199
202
|
key,
|
|
200
203
|
routeId,
|
|
201
|
-
match:
|
|
204
|
+
match: {
|
|
205
|
+
id: match2.id,
|
|
206
|
+
status: match2.status,
|
|
207
|
+
error: match2.error,
|
|
208
|
+
_forcePending: match2._forcePending,
|
|
209
|
+
_displayPending: match2._displayPending
|
|
210
|
+
}
|
|
202
211
|
};
|
|
203
212
|
}
|
|
204
213
|
});
|
|
@@ -228,7 +237,7 @@ const MatchInner = (props) => {
|
|
|
228
237
|
children: (_) => {
|
|
229
238
|
const [displayPendingResult] = Solid__namespace.createResource(() => {
|
|
230
239
|
var _a;
|
|
231
|
-
return (_a = router.getMatch(match().id)) == null ? void 0 : _a.displayPendingPromise;
|
|
240
|
+
return (_a = router.getMatch(match().id)) == null ? void 0 : _a._nonReactive.displayPendingPromise;
|
|
232
241
|
});
|
|
233
242
|
return Solid.memo(displayPendingResult);
|
|
234
243
|
}
|
|
@@ -239,7 +248,7 @@ const MatchInner = (props) => {
|
|
|
239
248
|
children: (_) => {
|
|
240
249
|
const [minPendingResult] = Solid__namespace.createResource(() => {
|
|
241
250
|
var _a;
|
|
242
|
-
return (_a = router.getMatch(match().id)) == null ? void 0 : _a.minPendingPromise;
|
|
251
|
+
return (_a = router.getMatch(match().id)) == null ? void 0 : _a._nonReactive.minPendingPromise;
|
|
243
252
|
});
|
|
244
253
|
return Solid.memo(minPendingResult);
|
|
245
254
|
}
|
|
@@ -248,30 +257,26 @@ const MatchInner = (props) => {
|
|
|
248
257
|
return match().status === "pending";
|
|
249
258
|
},
|
|
250
259
|
children: (_) => {
|
|
251
|
-
var _a;
|
|
252
260
|
const pendingMinMs = route().options.pendingMinMs ?? router.options.defaultPendingMinMs;
|
|
253
|
-
if (pendingMinMs
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
minPendingPromise
|
|
260
|
-
})
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
minPendingPromise: void 0
|
|
267
|
-
}));
|
|
268
|
-
}, pendingMinMs);
|
|
261
|
+
if (pendingMinMs) {
|
|
262
|
+
const routerMatch = router.getMatch(match().id);
|
|
263
|
+
if (routerMatch && !routerMatch._nonReactive.minPendingPromise) {
|
|
264
|
+
if (!router.isServer) {
|
|
265
|
+
const minPendingPromise = routerCore.createControlledPromise();
|
|
266
|
+
Promise.resolve().then(() => {
|
|
267
|
+
routerMatch._nonReactive.minPendingPromise = minPendingPromise;
|
|
268
|
+
});
|
|
269
|
+
setTimeout(() => {
|
|
270
|
+
minPendingPromise.resolve();
|
|
271
|
+
routerMatch._nonReactive.minPendingPromise = void 0;
|
|
272
|
+
}, pendingMinMs);
|
|
273
|
+
}
|
|
269
274
|
}
|
|
270
275
|
}
|
|
271
276
|
const [loaderResult] = Solid__namespace.createResource(async () => {
|
|
272
|
-
var
|
|
277
|
+
var _a;
|
|
273
278
|
await new Promise((r) => setTimeout(r, 0));
|
|
274
|
-
return (
|
|
279
|
+
return (_a = router.getMatch(match().id)) == null ? void 0 : _a._nonReactive.loadPromise;
|
|
275
280
|
});
|
|
276
281
|
return Solid.memo(loaderResult);
|
|
277
282
|
}
|
|
@@ -292,7 +297,7 @@ const MatchInner = (props) => {
|
|
|
292
297
|
const [loaderResult] = Solid__namespace.createResource(async () => {
|
|
293
298
|
var _a;
|
|
294
299
|
await new Promise((r) => setTimeout(r, 0));
|
|
295
|
-
return (_a = router.getMatch(match().id)) == null ? void 0 : _a.loadPromise;
|
|
300
|
+
return (_a = router.getMatch(match().id)) == null ? void 0 : _a._nonReactive.loadPromise;
|
|
296
301
|
});
|
|
297
302
|
return Solid.memo(loaderResult);
|
|
298
303
|
}
|
package/dist/cjs/Match.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Match.cjs","sources":["../../src/Match.tsx"],"sourcesContent":["import * as Solid from 'solid-js'\nimport invariant from 'tiny-invariant'\nimport warning from 'tiny-warning'\nimport {\n createControlledPromise,\n getLocationChangeInfo,\n isNotFound,\n isRedirect,\n pick,\n rootRouteId,\n} from '@tanstack/router-core'\nimport { Dynamic } from 'solid-js/web'\nimport { CatchBoundary, ErrorComponent } from './CatchBoundary'\nimport { useRouterState } from './useRouterState'\nimport { useRouter } from './useRouter'\nimport { CatchNotFound } from './not-found'\nimport { matchContext } 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 const matchState = useRouterState({\n select: (s) => {\n const match = s.matches.find((d) => d.id === props.matchId)\n\n invariant(\n match,\n `Could not find match for matchId \"${props.matchId}\". Please file an issue!`,\n )\n return pick(match, ['routeId', 'ssr', '_displayPending'])\n },\n })\n\n const route: () => AnyRoute = () => router.routesById[matchState().routeId]\n\n const PendingComponent = () =>\n route().options.pendingComponent ?? 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 matchState().ssr === false || matchState().ssr === 'data-only'\n\n const ResolvedSuspenseBoundary = () =>\n // If we're on the root route, allow forcefully wrapping in suspense\n (!route().isRoot ||\n route().options.wrapInSuspense ||\n resolvedNoSsr ||\n matchState()._displayPending) &&\n (route().options.wrapInSuspense ??\n PendingComponent() ??\n ((route().options.errorComponent as any)?.preload || resolvedNoSsr))\n ? Solid.Suspense\n : SafeFragment\n\n const ResolvedCatchBoundary = () =>\n routeErrorComponent() ? CatchBoundary : SafeFragment\n\n const ResolvedNotFoundBoundary = () =>\n routeNotFoundComponent() ? CatchNotFound : SafeFragment\n\n const resetKey = useRouterState({\n select: (s) => s.loadedAt,\n })\n\n const parentRouteId = useRouterState({\n select: (s) => {\n const index = s.matches.findIndex((d) => d.id === props.matchId)\n return s.matches[index - 1]?.routeId as string\n },\n })\n\n const ShellComponent = route().isRoot\n ? ((route().options as RootRouteOptions).shellComponent ?? SafeFragment)\n : SafeFragment\n\n return (\n <ShellComponent>\n <matchContext.Provider value={() => props.matchId}>\n <Dynamic\n component={ResolvedSuspenseBoundary()}\n fallback={<Dynamic component={PendingComponent()} />}\n >\n <Dynamic\n component={ResolvedCatchBoundary()}\n getResetKey={() => resetKey()}\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 if (isNotFound(error)) throw error\n warning(false, `Error in route match: ${props.matchId}`)\n routeOnCatch()?.(error)\n }}\n >\n <Dynamic\n component={ResolvedNotFoundBoundary()}\n fallback={(error: any) => {\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 (error.routeId && error.routeId !== matchState().routeId) ||\n (!error.routeId && !route().isRoot)\n )\n throw error\n\n return (\n <Dynamic component={routeNotFoundComponent()} {...error} />\n )\n }}\n >\n <Solid.Switch>\n <Solid.Match when={resolvedNoSsr}>\n <Solid.Show\n when={!router.isServer}\n fallback={<Dynamic component={PendingComponent()} />}\n >\n <MatchInner matchId={props.matchId} />\n </Solid.Show>\n </Solid.Match>\n <Solid.Match when={!resolvedNoSsr}>\n <MatchInner matchId={props.matchId} />\n </Solid.Match>\n </Solid.Switch>\n </Dynamic>\n </Dynamic>\n </Dynamic>\n </matchContext.Provider>\n\n {parentRouteId() === rootRouteId ? (\n <>\n <OnRendered />\n <ScrollRestoration />\n </>\n ) : null}\n </ShellComponent>\n )\n}\n\n// On Rendered can't happen above the root layout because it actually\n// renders a dummy dom element to track the rendered state of the app.\n// We render a script tag with a key that changes based on the current\n// location state.__TSR_key. Also, because it's below the root layout, it\n// allows us to fire onRendered events even after a hydration mismatch\n// error that occurred above the root layout (like bad head/link tags,\n// which is common).\nfunction OnRendered() {\n const router = useRouter()\n\n const location = useRouterState({\n select: (s) => {\n return s.resolvedLocation?.state.__TSR_key\n },\n })\n Solid.createEffect(\n Solid.on([location], () => {\n router.emit({\n type: 'onRendered',\n ...getLocationChangeInfo(router.state),\n })\n }),\n )\n return null\n}\n\nexport const MatchInner = (props: { matchId: string }): any => {\n const router = useRouter()\n\n const matchState = useRouterState({\n select: (s) => {\n const matchIndex = s.matches.findIndex((d) => d.id === props.matchId)\n const match = s.matches[matchIndex]!\n const routeId = match.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: match.loaderDeps,\n params: match._strictParams,\n search: match._strictSearch,\n })\n const key = remountDeps ? JSON.stringify(remountDeps) : undefined\n\n return {\n key,\n routeId,\n match: pick(match, [\n 'id',\n 'status',\n 'error',\n '_forcePending',\n '_displayPending',\n ]),\n }\n },\n })\n\n const route = () => router.routesById[matchState().routeId]!\n\n const match = () => matchState().match\n\n const out = () => {\n const Comp = route().options.component ?? router.options.defaultComponent\n if (Comp) {\n return (\n <Solid.Show when={matchState().match.id} keyed>\n <Comp />\n </Solid.Show>\n )\n }\n return <Outlet />\n }\n\n return (\n <Solid.Switch>\n <Solid.Match when={match()._displayPending}>\n {(_) => {\n const [displayPendingResult] = Solid.createResource(\n () => router.getMatch(match().id)?.displayPendingPromise,\n )\n\n return <>{displayPendingResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={match()._forcePending}>\n {(_) => {\n const [minPendingResult] = Solid.createResource(\n () => router.getMatch(match().id)?.minPendingPromise,\n )\n\n return <>{minPendingResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={match().status === 'pending'}>\n {(_) => {\n const pendingMinMs =\n route().options.pendingMinMs ?? router.options.defaultPendingMinMs\n\n if (pendingMinMs && !router.getMatch(match().id)?.minPendingPromise) {\n // Create a promise that will resolve after the minPendingMs\n if (!router.isServer) {\n const minPendingPromise = createControlledPromise<void>()\n\n Promise.resolve().then(() => {\n router.updateMatch(match().id, (prev) => ({\n ...prev,\n minPendingPromise,\n }))\n })\n\n setTimeout(() => {\n minPendingPromise.resolve()\n\n // We've handled the minPendingPromise, so we can delete it\n router.updateMatch(match().id, (prev) => ({\n ...prev,\n minPendingPromise: undefined,\n }))\n }, pendingMinMs)\n }\n }\n\n const [loaderResult] = Solid.createResource(async () => {\n await new Promise((r) => setTimeout(r, 0))\n return router.getMatch(match().id)?.loadPromise\n })\n\n return <>{loaderResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={match().status === 'notFound'}>\n {(_) => {\n invariant(isNotFound(match().error), 'Expected a notFound error')\n\n return renderRouteNotFound(router, route(), match().error)\n }}\n </Solid.Match>\n <Solid.Match when={match().status === 'redirected'}>\n {(_) => {\n invariant(isRedirect(match().error), 'Expected a redirect error')\n\n const [loaderResult] = Solid.createResource(async () => {\n await new Promise((r) => setTimeout(r, 0))\n return router.getMatch(match().id)?.loadPromise\n })\n\n return <>{loaderResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={match().status === 'error'}>\n {(_) => {\n if (router.isServer) {\n const RouteErrorComponent =\n (route().options.errorComponent ??\n router.options.defaultErrorComponent) ||\n ErrorComponent\n\n return (\n <RouteErrorComponent\n error={match().error}\n info={{\n componentStack: '',\n }}\n />\n )\n }\n\n throw match().error\n }}\n </Solid.Match>\n <Solid.Match when={match().status === 'success'}>{out()}</Solid.Match>\n </Solid.Switch>\n )\n}\n\nexport const Outlet = () => {\n const router = useRouter()\n const matchId = Solid.useContext(matchContext)\n const routeId = useRouterState({\n select: (s) => s.matches.find((d) => d.id === matchId())?.routeId as string,\n })\n\n const route = () => router.routesById[routeId()]!\n\n const parentGlobalNotFound = useRouterState({\n select: (s) => {\n const matches = s.matches\n const parentMatch = matches.find((d) => d.id === matchId())\n invariant(\n parentMatch,\n `Could not find parent match for matchId \"${matchId()}\"`,\n )\n return parentMatch.globalNotFound\n },\n })\n\n const childMatchId = useRouterState({\n select: (s) => {\n const matches = s.matches\n const index = matches.findIndex((d) => d.id === matchId())\n const v = matches[index + 1]?.id\n return v\n },\n })\n\n return (\n <Solid.Switch>\n <Solid.Match when={parentGlobalNotFound()}>\n {renderRouteNotFound(router, route(), undefined)}\n </Solid.Match>\n <Solid.Match when={childMatchId()}>\n {(matchId) => {\n // const nextMatch = <Match matchId={matchId()} />\n\n return (\n <Solid.Show\n when={matchId() === rootRouteId}\n fallback={<Match matchId={matchId()} />}\n >\n <Solid.Suspense\n fallback={\n <Dynamic component={router.options.defaultPendingComponent} />\n }\n >\n <Match matchId={matchId()} />\n </Solid.Suspense>\n </Solid.Show>\n )\n }}\n </Solid.Match>\n </Solid.Switch>\n )\n}\n"],"names":["Match","props","router","useRouter","matchState","useRouterState","select","s","match","matches","find","d","id","matchId","invariant","pick","route","routesById","routeId","PendingComponent","options","pendingComponent","defaultPendingComponent","routeErrorComponent","errorComponent","defaultErrorComponent","routeOnCatch","onCatch","defaultOnCatch","routeNotFoundComponent","isRoot","notFoundComponent","notFoundRoute","component","resolvedNoSsr","ssr","ResolvedSuspenseBoundary","wrapInSuspense","_displayPending","preload","Solid","Suspense","SafeFragment","ResolvedCatchBoundary","CatchBoundary","ResolvedNotFoundBoundary","CatchNotFound","resetKey","loadedAt","parentRouteId","index","findIndex","ShellComponent","shellComponent","_$createComponent","children","matchContext","Provider","value","Dynamic","fallback","getResetKey","ErrorComponent","error","isNotFound","warning","_$mergeProps","Switch","when","Show","isServer","MatchInner","_$memo","rootRouteId","OnRendered","ScrollRestoration","location","resolvedLocation","state","__TSR_key","createEffect","on","emit","type","getLocationChangeInfo","matchIndex","remountFn","remountDeps","defaultRemountDeps","loaderDeps","params","_strictParams","search","_strictSearch","key","JSON","stringify","undefined","out","Comp","defaultComponent","keyed","Outlet","_","displayPendingResult","createResource","getMatch","displayPendingPromise","_forcePending","minPendingResult","minPendingPromise","status","pendingMinMs","defaultPendingMinMs","createControlledPromise","resolve","then","updateMatch","prev","setTimeout","loaderResult","Promise","r","loadPromise","renderRouteNotFound","isRedirect","RouteErrorComponent","info","componentStack","useContext","parentGlobalNotFound","parentMatch","globalNotFound","childMatchId","v"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Match.cjs","sources":["../../src/Match.tsx"],"sourcesContent":["import * as Solid from 'solid-js'\nimport invariant from 'tiny-invariant'\nimport warning from 'tiny-warning'\nimport {\n createControlledPromise,\n getLocationChangeInfo,\n isNotFound,\n isRedirect,\n rootRouteId,\n} from '@tanstack/router-core'\nimport { Dynamic } from 'solid-js/web'\nimport { CatchBoundary, ErrorComponent } from './CatchBoundary'\nimport { useRouterState } from './useRouterState'\nimport { useRouter } from './useRouter'\nimport { CatchNotFound } from './not-found'\nimport { matchContext } 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 const matchState = useRouterState({\n select: (s) => {\n const match = s.matches.find((d) => d.id === props.matchId)\n\n invariant(\n match,\n `Could not find match for matchId \"${props.matchId}\". Please file an issue!`,\n )\n return {\n routeId: match.routeId,\n ssr: match.ssr,\n _displayPending: match._displayPending,\n }\n },\n })\n\n const route: () => AnyRoute = () => router.routesById[matchState().routeId]\n\n const PendingComponent = () =>\n route().options.pendingComponent ?? 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 matchState().ssr === false || matchState().ssr === 'data-only'\n\n const ResolvedSuspenseBoundary = () =>\n // If we're on the root route, allow forcefully wrapping in suspense\n (!route().isRoot ||\n route().options.wrapInSuspense ||\n resolvedNoSsr ||\n matchState()._displayPending) &&\n (route().options.wrapInSuspense ??\n PendingComponent() ??\n ((route().options.errorComponent as any)?.preload || resolvedNoSsr))\n ? Solid.Suspense\n : SafeFragment\n\n const ResolvedCatchBoundary = () =>\n routeErrorComponent() ? CatchBoundary : SafeFragment\n\n const ResolvedNotFoundBoundary = () =>\n routeNotFoundComponent() ? CatchNotFound : SafeFragment\n\n const resetKey = useRouterState({\n select: (s) => s.loadedAt,\n })\n\n const parentRouteId = useRouterState({\n select: (s) => {\n const index = s.matches.findIndex((d) => d.id === props.matchId)\n return s.matches[index - 1]?.routeId as string\n },\n })\n\n const ShellComponent = route().isRoot\n ? ((route().options as RootRouteOptions).shellComponent ?? SafeFragment)\n : SafeFragment\n\n return (\n <ShellComponent>\n <matchContext.Provider value={() => props.matchId}>\n <Dynamic\n component={ResolvedSuspenseBoundary()}\n fallback={<Dynamic component={PendingComponent()} />}\n >\n <Dynamic\n component={ResolvedCatchBoundary()}\n getResetKey={() => resetKey()}\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 if (isNotFound(error)) throw error\n warning(false, `Error in route match: ${props.matchId}`)\n routeOnCatch()?.(error)\n }}\n >\n <Dynamic\n component={ResolvedNotFoundBoundary()}\n fallback={(error: any) => {\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 (error.routeId && error.routeId !== matchState().routeId) ||\n (!error.routeId && !route().isRoot)\n )\n throw error\n\n return (\n <Dynamic component={routeNotFoundComponent()} {...error} />\n )\n }}\n >\n <Solid.Switch>\n <Solid.Match when={resolvedNoSsr}>\n <Solid.Show\n when={!router.isServer}\n fallback={<Dynamic component={PendingComponent()} />}\n >\n <MatchInner matchId={props.matchId} />\n </Solid.Show>\n </Solid.Match>\n <Solid.Match when={!resolvedNoSsr}>\n <MatchInner matchId={props.matchId} />\n </Solid.Match>\n </Solid.Switch>\n </Dynamic>\n </Dynamic>\n </Dynamic>\n </matchContext.Provider>\n\n {parentRouteId() === rootRouteId ? (\n <>\n <OnRendered />\n <ScrollRestoration />\n </>\n ) : null}\n </ShellComponent>\n )\n}\n\n// On Rendered can't happen above the root layout because it actually\n// renders a dummy dom element to track the rendered state of the app.\n// We render a script tag with a key that changes based on the current\n// location state.__TSR_key. Also, because it's below the root layout, it\n// allows us to fire onRendered events even after a hydration mismatch\n// error that occurred above the root layout (like bad head/link tags,\n// which is common).\nfunction OnRendered() {\n const router = useRouter()\n\n const location = useRouterState({\n select: (s) => {\n return s.resolvedLocation?.state.__TSR_key\n },\n })\n Solid.createEffect(\n Solid.on([location], () => {\n router.emit({\n type: 'onRendered',\n ...getLocationChangeInfo(router.state),\n })\n }),\n )\n return null\n}\n\nexport const MatchInner = (props: { matchId: string }): any => {\n const router = useRouter()\n\n const matchState = useRouterState({\n select: (s) => {\n const match = s.matches.find((d) => d.id === props.matchId)!\n const routeId = match.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: match.loaderDeps,\n params: match._strictParams,\n search: match._strictSearch,\n })\n const key = remountDeps ? JSON.stringify(remountDeps) : undefined\n\n return {\n key,\n routeId,\n match: {\n id: match.id,\n status: match.status,\n error: match.error,\n _forcePending: match._forcePending,\n _displayPending: match._displayPending,\n },\n }\n },\n })\n\n const route = () => router.routesById[matchState().routeId]!\n\n const match = () => matchState().match\n\n const out = () => {\n const Comp = route().options.component ?? router.options.defaultComponent\n if (Comp) {\n return (\n <Solid.Show when={matchState().match.id} keyed>\n <Comp />\n </Solid.Show>\n )\n }\n return <Outlet />\n }\n\n return (\n <Solid.Switch>\n <Solid.Match when={match()._displayPending}>\n {(_) => {\n const [displayPendingResult] = Solid.createResource(\n () =>\n router.getMatch(match().id)?._nonReactive.displayPendingPromise,\n )\n\n return <>{displayPendingResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={match()._forcePending}>\n {(_) => {\n const [minPendingResult] = Solid.createResource(\n () => router.getMatch(match().id)?._nonReactive.minPendingPromise,\n )\n\n return <>{minPendingResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={match().status === 'pending'}>\n {(_) => {\n const pendingMinMs =\n route().options.pendingMinMs ?? router.options.defaultPendingMinMs\n\n if (pendingMinMs) {\n const routerMatch = router.getMatch(match().id)\n if (routerMatch && !routerMatch._nonReactive.minPendingPromise) {\n // Create a promise that will resolve after the minPendingMs\n if (!router.isServer) {\n const minPendingPromise = createControlledPromise<void>()\n\n Promise.resolve().then(() => {\n routerMatch._nonReactive.minPendingPromise = minPendingPromise\n })\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(match().id)?._nonReactive.loadPromise\n })\n\n return <>{loaderResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={match().status === 'notFound'}>\n {(_) => {\n invariant(isNotFound(match().error), 'Expected a notFound error')\n\n return renderRouteNotFound(router, route(), match().error)\n }}\n </Solid.Match>\n <Solid.Match when={match().status === 'redirected'}>\n {(_) => {\n invariant(isRedirect(match().error), 'Expected a redirect error')\n\n const [loaderResult] = Solid.createResource(async () => {\n await new Promise((r) => setTimeout(r, 0))\n return router.getMatch(match().id)?._nonReactive.loadPromise\n })\n\n return <>{loaderResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={match().status === 'error'}>\n {(_) => {\n if (router.isServer) {\n const RouteErrorComponent =\n (route().options.errorComponent ??\n router.options.defaultErrorComponent) ||\n ErrorComponent\n\n return (\n <RouteErrorComponent\n error={match().error}\n info={{\n componentStack: '',\n }}\n />\n )\n }\n\n throw match().error\n }}\n </Solid.Match>\n <Solid.Match when={match().status === 'success'}>{out()}</Solid.Match>\n </Solid.Switch>\n )\n}\n\nexport const Outlet = () => {\n const router = useRouter()\n const matchId = Solid.useContext(matchContext)\n const routeId = useRouterState({\n select: (s) => s.matches.find((d) => d.id === matchId())?.routeId as string,\n })\n\n const route = () => router.routesById[routeId()]!\n\n const parentGlobalNotFound = useRouterState({\n select: (s) => {\n const matches = s.matches\n const parentMatch = matches.find((d) => d.id === matchId())\n invariant(\n parentMatch,\n `Could not find parent match for matchId \"${matchId()}\"`,\n )\n return parentMatch.globalNotFound\n },\n })\n\n const childMatchId = useRouterState({\n select: (s) => {\n const matches = s.matches\n const index = matches.findIndex((d) => d.id === matchId())\n const v = matches[index + 1]?.id\n return v\n },\n })\n\n return (\n <Solid.Switch>\n <Solid.Match when={parentGlobalNotFound()}>\n {renderRouteNotFound(router, route(), undefined)}\n </Solid.Match>\n <Solid.Match when={childMatchId()}>\n {(matchId) => {\n // const nextMatch = <Match matchId={matchId()} />\n\n return (\n <Solid.Show\n when={matchId() === rootRouteId}\n fallback={<Match matchId={matchId()} />}\n >\n <Solid.Suspense\n fallback={\n <Dynamic component={router.options.defaultPendingComponent} />\n }\n >\n <Match matchId={matchId()} />\n </Solid.Suspense>\n </Solid.Show>\n )\n }}\n </Solid.Match>\n </Solid.Switch>\n )\n}\n"],"names":["Match","props","router","useRouter","matchState","useRouterState","select","s","match","matches","find","d","id","matchId","invariant","routeId","ssr","_displayPending","route","routesById","PendingComponent","options","pendingComponent","defaultPendingComponent","routeErrorComponent","errorComponent","defaultErrorComponent","routeOnCatch","onCatch","defaultOnCatch","routeNotFoundComponent","isRoot","notFoundComponent","notFoundRoute","component","resolvedNoSsr","ResolvedSuspenseBoundary","wrapInSuspense","preload","Solid","Suspense","SafeFragment","ResolvedCatchBoundary","CatchBoundary","ResolvedNotFoundBoundary","CatchNotFound","resetKey","loadedAt","parentRouteId","index","findIndex","ShellComponent","shellComponent","_$createComponent","children","matchContext","Provider","value","Dynamic","fallback","getResetKey","ErrorComponent","error","isNotFound","warning","_$mergeProps","Switch","when","Show","isServer","MatchInner","_$memo","rootRouteId","OnRendered","ScrollRestoration","location","resolvedLocation","state","__TSR_key","createEffect","on","emit","type","getLocationChangeInfo","remountFn","remountDeps","defaultRemountDeps","loaderDeps","params","_strictParams","search","_strictSearch","key","JSON","stringify","undefined","status","_forcePending","out","Comp","defaultComponent","keyed","Outlet","_","displayPendingResult","createResource","getMatch","_nonReactive","displayPendingPromise","minPendingResult","minPendingPromise","pendingMinMs","defaultPendingMinMs","routerMatch","createControlledPromise","resolve","then","setTimeout","loaderResult","Promise","r","loadPromise","renderRouteNotFound","isRedirect","RouteErrorComponent","info","componentStack","useContext","parentGlobalNotFound","parentMatch","globalNotFound","childMatchId","v"],"mappings":"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"}
|
package/dist/esm/Match.js
CHANGED
|
@@ -2,7 +2,7 @@ import { createComponent, memo, Dynamic, mergeProps } from "solid-js/web";
|
|
|
2
2
|
import * as Solid from "solid-js";
|
|
3
3
|
import invariant from "tiny-invariant";
|
|
4
4
|
import warning from "tiny-warning";
|
|
5
|
-
import { isNotFound, rootRouteId,
|
|
5
|
+
import { isNotFound, rootRouteId, createControlledPromise, isRedirect, getLocationChangeInfo } from "@tanstack/router-core";
|
|
6
6
|
import { ErrorComponent, CatchBoundary } from "./CatchBoundary.js";
|
|
7
7
|
import { useRouterState } from "./useRouterState.js";
|
|
8
8
|
import { useRouter } from "./useRouter.js";
|
|
@@ -17,7 +17,11 @@ const Match = (props) => {
|
|
|
17
17
|
select: (s) => {
|
|
18
18
|
const match = s.matches.find((d) => d.id === props.matchId);
|
|
19
19
|
invariant(match, `Could not find match for matchId "${props.matchId}". Please file an issue!`);
|
|
20
|
-
return
|
|
20
|
+
return {
|
|
21
|
+
routeId: match.routeId,
|
|
22
|
+
ssr: match.ssr,
|
|
23
|
+
_displayPending: match._displayPending
|
|
24
|
+
};
|
|
21
25
|
}
|
|
22
26
|
});
|
|
23
27
|
const route = () => router.routesById[matchState().routeId];
|
|
@@ -165,8 +169,7 @@ const MatchInner = (props) => {
|
|
|
165
169
|
const router = useRouter();
|
|
166
170
|
const matchState = useRouterState({
|
|
167
171
|
select: (s) => {
|
|
168
|
-
const
|
|
169
|
-
const match2 = s.matches[matchIndex];
|
|
172
|
+
const match2 = s.matches.find((d) => d.id === props.matchId);
|
|
170
173
|
const routeId = match2.routeId;
|
|
171
174
|
const remountFn = router.routesById[routeId].options.remountDeps ?? router.options.defaultRemountDeps;
|
|
172
175
|
const remountDeps = remountFn == null ? void 0 : remountFn({
|
|
@@ -179,7 +182,13 @@ const MatchInner = (props) => {
|
|
|
179
182
|
return {
|
|
180
183
|
key,
|
|
181
184
|
routeId,
|
|
182
|
-
match:
|
|
185
|
+
match: {
|
|
186
|
+
id: match2.id,
|
|
187
|
+
status: match2.status,
|
|
188
|
+
error: match2.error,
|
|
189
|
+
_forcePending: match2._forcePending,
|
|
190
|
+
_displayPending: match2._displayPending
|
|
191
|
+
}
|
|
183
192
|
};
|
|
184
193
|
}
|
|
185
194
|
});
|
|
@@ -209,7 +218,7 @@ const MatchInner = (props) => {
|
|
|
209
218
|
children: (_) => {
|
|
210
219
|
const [displayPendingResult] = Solid.createResource(() => {
|
|
211
220
|
var _a;
|
|
212
|
-
return (_a = router.getMatch(match().id)) == null ? void 0 : _a.displayPendingPromise;
|
|
221
|
+
return (_a = router.getMatch(match().id)) == null ? void 0 : _a._nonReactive.displayPendingPromise;
|
|
213
222
|
});
|
|
214
223
|
return memo(displayPendingResult);
|
|
215
224
|
}
|
|
@@ -220,7 +229,7 @@ const MatchInner = (props) => {
|
|
|
220
229
|
children: (_) => {
|
|
221
230
|
const [minPendingResult] = Solid.createResource(() => {
|
|
222
231
|
var _a;
|
|
223
|
-
return (_a = router.getMatch(match().id)) == null ? void 0 : _a.minPendingPromise;
|
|
232
|
+
return (_a = router.getMatch(match().id)) == null ? void 0 : _a._nonReactive.minPendingPromise;
|
|
224
233
|
});
|
|
225
234
|
return memo(minPendingResult);
|
|
226
235
|
}
|
|
@@ -229,30 +238,26 @@ const MatchInner = (props) => {
|
|
|
229
238
|
return match().status === "pending";
|
|
230
239
|
},
|
|
231
240
|
children: (_) => {
|
|
232
|
-
var _a;
|
|
233
241
|
const pendingMinMs = route().options.pendingMinMs ?? router.options.defaultPendingMinMs;
|
|
234
|
-
if (pendingMinMs
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
minPendingPromise
|
|
241
|
-
})
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
minPendingPromise: void 0
|
|
248
|
-
}));
|
|
249
|
-
}, pendingMinMs);
|
|
242
|
+
if (pendingMinMs) {
|
|
243
|
+
const routerMatch = router.getMatch(match().id);
|
|
244
|
+
if (routerMatch && !routerMatch._nonReactive.minPendingPromise) {
|
|
245
|
+
if (!router.isServer) {
|
|
246
|
+
const minPendingPromise = createControlledPromise();
|
|
247
|
+
Promise.resolve().then(() => {
|
|
248
|
+
routerMatch._nonReactive.minPendingPromise = minPendingPromise;
|
|
249
|
+
});
|
|
250
|
+
setTimeout(() => {
|
|
251
|
+
minPendingPromise.resolve();
|
|
252
|
+
routerMatch._nonReactive.minPendingPromise = void 0;
|
|
253
|
+
}, pendingMinMs);
|
|
254
|
+
}
|
|
250
255
|
}
|
|
251
256
|
}
|
|
252
257
|
const [loaderResult] = Solid.createResource(async () => {
|
|
253
|
-
var
|
|
258
|
+
var _a;
|
|
254
259
|
await new Promise((r) => setTimeout(r, 0));
|
|
255
|
-
return (
|
|
260
|
+
return (_a = router.getMatch(match().id)) == null ? void 0 : _a._nonReactive.loadPromise;
|
|
256
261
|
});
|
|
257
262
|
return memo(loaderResult);
|
|
258
263
|
}
|
|
@@ -273,7 +278,7 @@ const MatchInner = (props) => {
|
|
|
273
278
|
const [loaderResult] = Solid.createResource(async () => {
|
|
274
279
|
var _a;
|
|
275
280
|
await new Promise((r) => setTimeout(r, 0));
|
|
276
|
-
return (_a = router.getMatch(match().id)) == null ? void 0 : _a.loadPromise;
|
|
281
|
+
return (_a = router.getMatch(match().id)) == null ? void 0 : _a._nonReactive.loadPromise;
|
|
277
282
|
});
|
|
278
283
|
return memo(loaderResult);
|
|
279
284
|
}
|
package/dist/esm/Match.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Match.js","sources":["../../src/Match.tsx"],"sourcesContent":["import * as Solid from 'solid-js'\nimport invariant from 'tiny-invariant'\nimport warning from 'tiny-warning'\nimport {\n createControlledPromise,\n getLocationChangeInfo,\n isNotFound,\n isRedirect,\n pick,\n rootRouteId,\n} from '@tanstack/router-core'\nimport { Dynamic } from 'solid-js/web'\nimport { CatchBoundary, ErrorComponent } from './CatchBoundary'\nimport { useRouterState } from './useRouterState'\nimport { useRouter } from './useRouter'\nimport { CatchNotFound } from './not-found'\nimport { matchContext } 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 const matchState = useRouterState({\n select: (s) => {\n const match = s.matches.find((d) => d.id === props.matchId)\n\n invariant(\n match,\n `Could not find match for matchId \"${props.matchId}\". Please file an issue!`,\n )\n return pick(match, ['routeId', 'ssr', '_displayPending'])\n },\n })\n\n const route: () => AnyRoute = () => router.routesById[matchState().routeId]\n\n const PendingComponent = () =>\n route().options.pendingComponent ?? 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 matchState().ssr === false || matchState().ssr === 'data-only'\n\n const ResolvedSuspenseBoundary = () =>\n // If we're on the root route, allow forcefully wrapping in suspense\n (!route().isRoot ||\n route().options.wrapInSuspense ||\n resolvedNoSsr ||\n matchState()._displayPending) &&\n (route().options.wrapInSuspense ??\n PendingComponent() ??\n ((route().options.errorComponent as any)?.preload || resolvedNoSsr))\n ? Solid.Suspense\n : SafeFragment\n\n const ResolvedCatchBoundary = () =>\n routeErrorComponent() ? CatchBoundary : SafeFragment\n\n const ResolvedNotFoundBoundary = () =>\n routeNotFoundComponent() ? CatchNotFound : SafeFragment\n\n const resetKey = useRouterState({\n select: (s) => s.loadedAt,\n })\n\n const parentRouteId = useRouterState({\n select: (s) => {\n const index = s.matches.findIndex((d) => d.id === props.matchId)\n return s.matches[index - 1]?.routeId as string\n },\n })\n\n const ShellComponent = route().isRoot\n ? ((route().options as RootRouteOptions).shellComponent ?? SafeFragment)\n : SafeFragment\n\n return (\n <ShellComponent>\n <matchContext.Provider value={() => props.matchId}>\n <Dynamic\n component={ResolvedSuspenseBoundary()}\n fallback={<Dynamic component={PendingComponent()} />}\n >\n <Dynamic\n component={ResolvedCatchBoundary()}\n getResetKey={() => resetKey()}\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 if (isNotFound(error)) throw error\n warning(false, `Error in route match: ${props.matchId}`)\n routeOnCatch()?.(error)\n }}\n >\n <Dynamic\n component={ResolvedNotFoundBoundary()}\n fallback={(error: any) => {\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 (error.routeId && error.routeId !== matchState().routeId) ||\n (!error.routeId && !route().isRoot)\n )\n throw error\n\n return (\n <Dynamic component={routeNotFoundComponent()} {...error} />\n )\n }}\n >\n <Solid.Switch>\n <Solid.Match when={resolvedNoSsr}>\n <Solid.Show\n when={!router.isServer}\n fallback={<Dynamic component={PendingComponent()} />}\n >\n <MatchInner matchId={props.matchId} />\n </Solid.Show>\n </Solid.Match>\n <Solid.Match when={!resolvedNoSsr}>\n <MatchInner matchId={props.matchId} />\n </Solid.Match>\n </Solid.Switch>\n </Dynamic>\n </Dynamic>\n </Dynamic>\n </matchContext.Provider>\n\n {parentRouteId() === rootRouteId ? (\n <>\n <OnRendered />\n <ScrollRestoration />\n </>\n ) : null}\n </ShellComponent>\n )\n}\n\n// On Rendered can't happen above the root layout because it actually\n// renders a dummy dom element to track the rendered state of the app.\n// We render a script tag with a key that changes based on the current\n// location state.__TSR_key. Also, because it's below the root layout, it\n// allows us to fire onRendered events even after a hydration mismatch\n// error that occurred above the root layout (like bad head/link tags,\n// which is common).\nfunction OnRendered() {\n const router = useRouter()\n\n const location = useRouterState({\n select: (s) => {\n return s.resolvedLocation?.state.__TSR_key\n },\n })\n Solid.createEffect(\n Solid.on([location], () => {\n router.emit({\n type: 'onRendered',\n ...getLocationChangeInfo(router.state),\n })\n }),\n )\n return null\n}\n\nexport const MatchInner = (props: { matchId: string }): any => {\n const router = useRouter()\n\n const matchState = useRouterState({\n select: (s) => {\n const matchIndex = s.matches.findIndex((d) => d.id === props.matchId)\n const match = s.matches[matchIndex]!\n const routeId = match.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: match.loaderDeps,\n params: match._strictParams,\n search: match._strictSearch,\n })\n const key = remountDeps ? JSON.stringify(remountDeps) : undefined\n\n return {\n key,\n routeId,\n match: pick(match, [\n 'id',\n 'status',\n 'error',\n '_forcePending',\n '_displayPending',\n ]),\n }\n },\n })\n\n const route = () => router.routesById[matchState().routeId]!\n\n const match = () => matchState().match\n\n const out = () => {\n const Comp = route().options.component ?? router.options.defaultComponent\n if (Comp) {\n return (\n <Solid.Show when={matchState().match.id} keyed>\n <Comp />\n </Solid.Show>\n )\n }\n return <Outlet />\n }\n\n return (\n <Solid.Switch>\n <Solid.Match when={match()._displayPending}>\n {(_) => {\n const [displayPendingResult] = Solid.createResource(\n () => router.getMatch(match().id)?.displayPendingPromise,\n )\n\n return <>{displayPendingResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={match()._forcePending}>\n {(_) => {\n const [minPendingResult] = Solid.createResource(\n () => router.getMatch(match().id)?.minPendingPromise,\n )\n\n return <>{minPendingResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={match().status === 'pending'}>\n {(_) => {\n const pendingMinMs =\n route().options.pendingMinMs ?? router.options.defaultPendingMinMs\n\n if (pendingMinMs && !router.getMatch(match().id)?.minPendingPromise) {\n // Create a promise that will resolve after the minPendingMs\n if (!router.isServer) {\n const minPendingPromise = createControlledPromise<void>()\n\n Promise.resolve().then(() => {\n router.updateMatch(match().id, (prev) => ({\n ...prev,\n minPendingPromise,\n }))\n })\n\n setTimeout(() => {\n minPendingPromise.resolve()\n\n // We've handled the minPendingPromise, so we can delete it\n router.updateMatch(match().id, (prev) => ({\n ...prev,\n minPendingPromise: undefined,\n }))\n }, pendingMinMs)\n }\n }\n\n const [loaderResult] = Solid.createResource(async () => {\n await new Promise((r) => setTimeout(r, 0))\n return router.getMatch(match().id)?.loadPromise\n })\n\n return <>{loaderResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={match().status === 'notFound'}>\n {(_) => {\n invariant(isNotFound(match().error), 'Expected a notFound error')\n\n return renderRouteNotFound(router, route(), match().error)\n }}\n </Solid.Match>\n <Solid.Match when={match().status === 'redirected'}>\n {(_) => {\n invariant(isRedirect(match().error), 'Expected a redirect error')\n\n const [loaderResult] = Solid.createResource(async () => {\n await new Promise((r) => setTimeout(r, 0))\n return router.getMatch(match().id)?.loadPromise\n })\n\n return <>{loaderResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={match().status === 'error'}>\n {(_) => {\n if (router.isServer) {\n const RouteErrorComponent =\n (route().options.errorComponent ??\n router.options.defaultErrorComponent) ||\n ErrorComponent\n\n return (\n <RouteErrorComponent\n error={match().error}\n info={{\n componentStack: '',\n }}\n />\n )\n }\n\n throw match().error\n }}\n </Solid.Match>\n <Solid.Match when={match().status === 'success'}>{out()}</Solid.Match>\n </Solid.Switch>\n )\n}\n\nexport const Outlet = () => {\n const router = useRouter()\n const matchId = Solid.useContext(matchContext)\n const routeId = useRouterState({\n select: (s) => s.matches.find((d) => d.id === matchId())?.routeId as string,\n })\n\n const route = () => router.routesById[routeId()]!\n\n const parentGlobalNotFound = useRouterState({\n select: (s) => {\n const matches = s.matches\n const parentMatch = matches.find((d) => d.id === matchId())\n invariant(\n parentMatch,\n `Could not find parent match for matchId \"${matchId()}\"`,\n )\n return parentMatch.globalNotFound\n },\n })\n\n const childMatchId = useRouterState({\n select: (s) => {\n const matches = s.matches\n const index = matches.findIndex((d) => d.id === matchId())\n const v = matches[index + 1]?.id\n return v\n },\n })\n\n return (\n <Solid.Switch>\n <Solid.Match when={parentGlobalNotFound()}>\n {renderRouteNotFound(router, route(), undefined)}\n </Solid.Match>\n <Solid.Match when={childMatchId()}>\n {(matchId) => {\n // const nextMatch = <Match matchId={matchId()} />\n\n return (\n <Solid.Show\n when={matchId() === rootRouteId}\n fallback={<Match matchId={matchId()} />}\n >\n <Solid.Suspense\n fallback={\n <Dynamic component={router.options.defaultPendingComponent} />\n }\n >\n <Match matchId={matchId()} />\n </Solid.Suspense>\n </Solid.Show>\n )\n }}\n </Solid.Match>\n </Solid.Switch>\n )\n}\n"],"names":["Match","props","router","useRouter","matchState","useRouterState","select","s","match","matches","find","d","id","matchId","invariant","pick","route","routesById","routeId","PendingComponent","options","pendingComponent","defaultPendingComponent","routeErrorComponent","errorComponent","defaultErrorComponent","routeOnCatch","onCatch","defaultOnCatch","routeNotFoundComponent","isRoot","notFoundComponent","notFoundRoute","component","resolvedNoSsr","ssr","ResolvedSuspenseBoundary","wrapInSuspense","_displayPending","preload","Solid","Suspense","SafeFragment","ResolvedCatchBoundary","CatchBoundary","ResolvedNotFoundBoundary","CatchNotFound","resetKey","loadedAt","parentRouteId","index","findIndex","ShellComponent","shellComponent","_$createComponent","children","matchContext","Provider","value","Dynamic","fallback","getResetKey","ErrorComponent","error","isNotFound","warning","_$mergeProps","Switch","when","Show","isServer","MatchInner","_$memo","rootRouteId","OnRendered","ScrollRestoration","location","resolvedLocation","state","__TSR_key","createEffect","on","emit","type","getLocationChangeInfo","matchIndex","remountFn","remountDeps","defaultRemountDeps","loaderDeps","params","_strictParams","search","_strictSearch","key","JSON","stringify","undefined","out","Comp","defaultComponent","keyed","Outlet","_","displayPendingResult","createResource","getMatch","displayPendingPromise","_forcePending","minPendingResult","minPendingPromise","status","pendingMinMs","defaultPendingMinMs","createControlledPromise","resolve","then","updateMatch","prev","setTimeout","loaderResult","Promise","r","loadPromise","renderRouteNotFound","isRedirect","RouteErrorComponent","info","componentStack","useContext","parentGlobalNotFound","parentMatch","globalNotFound","childMatchId","v"],"mappings":";;;;;;;;;;;;;AAsBaA,MAAAA,QAAQA,CAACC,UAA+B;AACnD,QAAMC,SAASC,UAAU;AACzB,QAAMC,aAAaC,eAAe;AAAA,IAChCC,QAASC,CAAM,MAAA;AACPC,YAAAA,QAAQD,EAAEE,QAAQC,KAAMC,OAAMA,EAAEC,OAAOX,MAAMY,OAAO;AAE1DC,gBACEN,OACA,qCAAqCP,MAAMY,OAAO,0BACpD;AACA,aAAOE,KAAKP,OAAO,CAAC,WAAW,OAAO,iBAAiB,CAAC;AAAA,IAAA;AAAA,EAC1D,CACD;AAED,QAAMQ,QAAwBA,MAAMd,OAAOe,WAAWb,WAAAA,EAAac,OAAO;AAE1E,QAAMC,mBAAmBA,MACvBH,QAAQI,QAAQC,oBAAoBnB,OAAOkB,QAAQE;AAErD,QAAMC,sBAAsBA,MAC1BP,QAAQI,QAAQI,kBAAkBtB,OAAOkB,QAAQK;AAEnD,QAAMC,eAAeA,MACnBV,QAAQI,QAAQO,WAAWzB,OAAOkB,QAAQQ;AAEtCC,QAAAA,yBAAyBA;;AAC7Bb,iBAAAA,EAAQc;AAAAA;AAAAA,MAEHd,QAAQI,QAAQW,uBACjB7B,YAAOkB,QAAQY,kBAAf9B,mBAA8BkB,QAAQa;AAAAA,QACtCjB,MAAAA,EAAQI,QAAQW;AAAAA;AAEtB,QAAMG,gBACJ9B,aAAa+B,QAAQ,SAAS/B,WAAAA,EAAa+B,QAAQ;AAErD,QAAMC,2BAA2BA,MAAAA;;AAE9B;AAAA;AAAA,QAACpB,MAAM,EAAEc,UACRd,QAAQI,QAAQiB,kBAChBH,iBACA9B,WAAakC,EAAAA,qBACdtB,QAAQI,QAAQiB,kBACflB,yBACEH,WAAQI,EAAAA,QAAQI,mBAAhBR,mBAAwCuB,YAAWL,kBACnDM,MAAMC,WACNC;AAAAA;AAAAA;AAEN,QAAMC,wBAAwBA,MAC5BpB,oBAAoB,IAAIqB,gBAAgBF;AAE1C,QAAMG,2BAA2BA,MAC/BhB,uBAAuB,IAAIiB,gBAAgBJ;AAE7C,QAAMK,WAAW1C,eAAe;AAAA,IAC9BC,QAASC,OAAMA,EAAEyC;AAAAA,EAAAA,CAClB;AAED,QAAMC,gBAAgB5C,eAAe;AAAA,IACnCC,QAASC,CAAM,MAAA;;AACP2C,YAAAA,QAAQ3C,EAAEE,QAAQ0C,UAAWxC,OAAMA,EAAEC,OAAOX,MAAMY,OAAO;AAC/D,cAAON,OAAEE,QAAQyC,QAAQ,CAAC,MAAnB3C,mBAAsBW;AAAAA,IAAAA;AAAAA,EAC/B,CACD;AAEKkC,QAAAA,iBAAiBpC,QAAQc,SACzBd,QAAQI,QAA6BiC,kBAAkBX,eACzDA;AAEJ,SAAAY,gBACGF,gBAAc;AAAA,IAAA,IAAAG,WAAA;AAAA,aAAA,CAAAD,gBACZE,aAAaC,UAAQ;AAAA,QAACC,OAAOA,MAAMzD,MAAMY;AAAAA,QAAO,IAAA0C,WAAA;AAAA,iBAAAD,gBAC9CK,SAAO;AAAA,YAAA,IACN1B,YAAS;AAAA,qBAAEG,yBAAyB;AAAA,YAAC;AAAA,YAAA,IACrCwB,WAAQ;AAAA,qBAAAN,gBAAGK,SAAO;AAAA,gBAAA,IAAC1B,YAAS;AAAA,yBAAEd,iBAAiB;AAAA,gBAAA;AAAA,cAAC,CAAA;AAAA,YAAA;AAAA,YAAA,IAAAoC,WAAA;AAAA,qBAAAD,gBAE/CK,SAAO;AAAA,gBAAA,IACN1B,YAAS;AAAA,yBAAEU,sBAAsB;AAAA,gBAAC;AAAA,gBAClCkB,aAAaA,MAAMd,SAAS;AAAA,gBAAC,IAC7BvB,iBAAc;AAAA,yBAAED,oBAAyBuC,KAAAA;AAAAA,gBAAc;AAAA,gBACvDnC,SAASA,CAACoC,UAAiB;;AAErBC,sBAAAA,WAAWD,KAAK,EAASA,OAAAA;AAC7BE,0BAAQ,OAAO,yBAAyBhE,MAAMY,OAAO,EAAE;AACvDa,qCAAAA,MAAAA,mBAAiBqC;AAAAA,gBACnB;AAAA,gBAAC,IAAAR,WAAA;AAAA,yBAAAD,gBAEAK,SAAO;AAAA,oBAAA,IACN1B,YAAS;AAAA,6BAAEY,yBAAyB;AAAA,oBAAC;AAAA,oBACrCe,UAAUA,CAACG,UAAe;AAGxB,0BACE,CAAClC,uBAAuB,KACvBkC,MAAM7C,WAAW6C,MAAM7C,YAAYd,WAAAA,EAAac,WAChD,CAAC6C,MAAM7C,WAAW,CAACF,MAAM,EAAEc,OAEtBiC,OAAAA;AAERT,6BAAAA,gBACGK,SAAOO,WAAA;AAAA,wBAAA,IAACjC,YAAS;AAAA,iCAAEJ,uBAAuB;AAAA,wBAAA;AAAA,sBAAC,GAAMkC,KAAK,CAAA;AAAA,oBAE3D;AAAA,oBAAC,IAAAR,WAAA;AAAAD,6BAAAA,gBAEAd,MAAM2B,QAAM;AAAA,wBAAA,IAAAZ,WAAA;AAAA,iCAAA,CAAAD,gBACVd,MAAMxC,OAAK;AAAA,4BAACoE,MAAMlC;AAAAA,4BAAa,IAAAqB,WAAA;AAAAD,qCAAAA,gBAC7Bd,MAAM6B,MAAI;AAAA,gCAAA,IACTD,OAAI;AAAA,yCAAE,CAAClE,OAAOoE;AAAAA,gCAAQ;AAAA,gCAAA,IACtBV,WAAQ;AAAA,yCAAAN,gBAAGK,SAAO;AAAA,oCAAA,IAAC1B,YAAS;AAAA,6CAAEd,iBAAiB;AAAA,oCAAA;AAAA,kCAAC,CAAA;AAAA,gCAAA;AAAA,gCAAA,IAAAoC,WAAA;AAAA,yCAAAD,gBAE/CiB,YAAU;AAAA,oCAAA,IAAC1D,UAAO;AAAA,6CAAEZ,MAAMY;AAAAA,oCAAAA;AAAAA,kCAAO,CAAA;AAAA,gCAAA;AAAA,8BAAA,CAAA;AAAA,4BAAA;AAAA,0BAAA,CAAA,GAAAyC,gBAGrCd,MAAMxC,OAAK;AAAA,4BAACoE,MAAM,CAAClC;AAAAA,4BAAa,IAAAqB,WAAA;AAAA,qCAAAD,gBAC9BiB,YAAU;AAAA,gCAAA,IAAC1D,UAAO;AAAA,yCAAEZ,MAAMY;AAAAA,gCAAAA;AAAAA,8BAAO,CAAA;AAAA,4BAAA;AAAA,0BAAA,CAAA,CAAA;AAAA,wBAAA;AAAA,sBAAA,CAAA;AAAA,oBAAA;AAAA,kBAAA,CAAA;AAAA,gBAAA;AAAA,cAAA,CAAA;AAAA,YAAA;AAAA,UAAA,CAAA;AAAA,QAAA;AAAA,MAAA,CAAA,GAAA2D,KAQ7CA,MAAAA,WAAAvB,cAAc,MAAMwB,WAAW,MAAAnB,CAAAA,gBAE3BoB,YAAU,CAAA,CAAA,GAAApB,gBACVqB,0BAED,IAAI,CAAA;AAAA,IAAA;AAAA,EAAA,CAAA;AAGd;AASA,SAASD,aAAa;AACpB,QAAMxE,SAASC,UAAU;AAEzB,QAAMyE,WAAWvE,eAAe;AAAA,IAC9BC,QAASC,CAAM,MAAA;;AACNA,cAAAA,OAAEsE,qBAAFtE,mBAAoBuE,MAAMC;AAAAA,IAAAA;AAAAA,EACnC,CACD;AACDvC,QAAMwC,aACJxC,MAAMyC,GAAG,CAACL,QAAQ,GAAG,MAAM;AACzB1E,WAAOgF,KAAK;AAAA,MACVC,MAAM;AAAA,MACN,GAAGC,sBAAsBlF,OAAO4E,KAAK;AAAA,IAAA,CACtC;AAAA,EAAA,CACF,CACH;AACO,SAAA;AACT;AAEaP,MAAAA,aAAaA,CAACtE,UAAoC;AAC7D,QAAMC,SAASC,UAAU;AAEzB,QAAMC,aAAaC,eAAe;AAAA,IAChCC,QAASC,CAAM,MAAA;AACP8E,YAAAA,aAAa9E,EAAEE,QAAQ0C,UAAWxC,OAAMA,EAAEC,OAAOX,MAAMY,OAAO;AAC9DL,YAAAA,SAAQD,EAAEE,QAAQ4E,UAAU;AAClC,YAAMnE,UAAUV,OAAMU;AAEhBoE,YAAAA,YACHpF,OAAOe,WAAWC,OAAO,EAAeE,QAAQmE,eACjDrF,OAAOkB,QAAQoE;AACjB,YAAMD,cAAcD,uCAAY;AAAA,QAC9BpE;AAAAA,QACAuE,YAAYjF,OAAMiF;AAAAA,QAClBC,QAAQlF,OAAMmF;AAAAA,QACdC,QAAQpF,OAAMqF;AAAAA,MAAAA;AAEhB,YAAMC,MAAMP,cAAcQ,KAAKC,UAAUT,WAAW,IAAIU;AAEjD,aAAA;AAAA,QACLH;AAAAA,QACA5E;AAAAA,QACAV,OAAOO,KAAKP,QAAO,CACjB,MACA,UACA,SACA,iBACA,iBAAiB,CAClB;AAAA,MACH;AAAA,IAAA;AAAA,EACF,CACD;AAED,QAAMQ,QAAQA,MAAMd,OAAOe,WAAWb,WAAAA,EAAac,OAAO;AAEpDV,QAAAA,QAAQA,MAAMJ,WAAAA,EAAaI;AAEjC,QAAM0F,MAAMA,MAAM;AAChB,UAAMC,OAAOnF,QAAQI,QAAQa,aAAa/B,OAAOkB,QAAQgF;AACzD,QAAID,MAAM;AACR7C,aAAAA,gBACGd,MAAM6B,MAAI;AAAA,QAAA,IAACD,OAAI;AAAEhE,iBAAAA,WAAAA,EAAaI,MAAMI;AAAAA,QAAE;AAAA,QAAEyF,OAAK;AAAA,QAAA,IAAA9C,WAAA;AAAAD,iBAAAA,gBAC3C6C,MAAI,EAAA;AAAA,QAAA;AAAA,MAAA,CAAA;AAAA,IAAA;AAIX7C,WAAAA,gBAAQgD,QAAM,EAAA;AAAA,EAChB;AAEAhD,SAAAA,gBACGd,MAAM2B,QAAM;AAAA,IAAA,IAAAZ,WAAA;AAAA,aAAA,CAAAD,gBACVd,MAAMxC,OAAK;AAAA,QAAA,IAACoE,OAAI;AAAA,iBAAE5D,MAAQ8B,EAAAA;AAAAA,QAAe;AAAA,QAAAiB,UACtCgD,CAAM,MAAA;AACN,gBAAM,CAACC,oBAAoB,IAAIhE,MAAMiE,eACnC,MAAA;;AAAMvG,gCAAOwG,SAASlG,MAAM,EAAEI,EAAE,MAA1BV,mBAA6ByG;AAAAA,WACrC;AAEA,iBAAAnC,KAAUgC,oBAAoB;AAAA,QAAA;AAAA,MAChC,CAAC,GAAAlD,gBAEFd,MAAMxC,OAAK;AAAA,QAAA,IAACoE,OAAI;AAAA,iBAAE5D,MAAQoG,EAAAA;AAAAA,QAAa;AAAA,QAAArD,UACpCgD,CAAM,MAAA;AACN,gBAAM,CAACM,gBAAgB,IAAIrE,MAAMiE,eAC/B,MAAA;;AAAMvG,gCAAOwG,SAASlG,MAAM,EAAEI,EAAE,MAA1BV,mBAA6B4G;AAAAA,WACrC;AAEA,iBAAAtC,KAAUqC,gBAAgB;AAAA,QAAA;AAAA,MAC5B,CAAC,GAAAvD,gBAEFd,MAAMxC,OAAK;AAAA,QAAA,IAACoE,OAAI;AAAE5D,iBAAAA,MAAAA,EAAQuG,WAAW;AAAA,QAAS;AAAA,QAAAxD,UAC3CgD,CAAM,MAAA;;AACN,gBAAMS,eACJhG,QAAQI,QAAQ4F,gBAAgB9G,OAAOkB,QAAQ6F;AAE7CD,cAAAA,gBAAgB,GAAC9G,YAAOwG,SAASlG,QAAQI,EAAE,MAA1BV,mBAA6B4G,oBAAmB;AAE/D,gBAAA,CAAC5G,OAAOoE,UAAU;AACpB,oBAAMwC,oBAAoBI,wBAA8B;AAEhDC,sBAAAA,UAAUC,KAAK,MAAM;AAC3BlH,uBAAOmH,YAAY7G,MAAQI,EAAAA,IAAK0G,CAAU,UAAA;AAAA,kBACxC,GAAGA;AAAAA,kBACHR;AAAAA,gBAAAA,EACA;AAAA,cAAA,CACH;AAEDS,yBAAW,MAAM;AACfT,kCAAkBK,QAAQ;AAG1BjH,uBAAOmH,YAAY7G,MAAQI,EAAAA,IAAK0G,CAAU,UAAA;AAAA,kBACxC,GAAGA;AAAAA,kBACHR,mBAAmBb;AAAAA,gBAAAA,EACnB;AAAA,iBACDe,YAAY;AAAA,YAAA;AAAA,UACjB;AAGF,gBAAM,CAACQ,YAAY,IAAIhF,MAAMiE,eAAe,YAAY;;AACtD,kBAAM,IAAIgB,QAASC,CAAAA,MAAMH,WAAWG,GAAG,CAAC,CAAC;AACzC,oBAAOxH,MAAAA,OAAOwG,SAASlG,MAAM,EAAEI,EAAE,MAA1BV,gBAAAA,IAA6ByH;AAAAA,UAAAA,CACrC;AAED,iBAAAnD,KAAUgD,YAAY;AAAA,QAAA;AAAA,MACxB,CAAC,GAAAlE,gBAEFd,MAAMxC,OAAK;AAAA,QAAA,IAACoE,OAAI;AAAE5D,iBAAAA,MAAAA,EAAQuG,WAAW;AAAA,QAAU;AAAA,QAAAxD,UAC5CgD,CAAM,MAAA;AACNzF,oBAAUkD,WAAWxD,MAAQuD,EAAAA,KAAK,GAAG,2BAA2B;AAEhE,iBAAO6D,oBAAoB1H,QAAQc,MAASR,GAAAA,MAAAA,EAAQuD,KAAK;AAAA,QAAA;AAAA,MAC3D,CAAC,GAAAT,gBAEFd,MAAMxC,OAAK;AAAA,QAAA,IAACoE,OAAI;AAAE5D,iBAAAA,MAAAA,EAAQuG,WAAW;AAAA,QAAY;AAAA,QAAAxD,UAC9CgD,CAAM,MAAA;AACNzF,oBAAU+G,WAAWrH,MAAQuD,EAAAA,KAAK,GAAG,2BAA2B;AAEhE,gBAAM,CAACyD,YAAY,IAAIhF,MAAMiE,eAAe,YAAY;;AACtD,kBAAM,IAAIgB,QAASC,CAAAA,MAAMH,WAAWG,GAAG,CAAC,CAAC;AACzC,oBAAOxH,YAAOwG,SAASlG,MAAM,EAAEI,EAAE,MAA1BV,mBAA6ByH;AAAAA,UAAAA,CACrC;AAED,iBAAAnD,KAAUgD,YAAY;AAAA,QAAA;AAAA,MACxB,CAAC,GAAAlE,gBAEFd,MAAMxC,OAAK;AAAA,QAAA,IAACoE,OAAI;AAAE5D,iBAAAA,MAAAA,EAAQuG,WAAW;AAAA,QAAO;AAAA,QAAAxD,UACzCgD,CAAM,MAAA;AACN,cAAIrG,OAAOoE,UAAU;AACnB,kBAAMwD,uBACH9G,QAAQI,QAAQI,kBACftB,OAAOkB,QAAQK,0BACjBqC;AAEF,mBAAAR,gBACGwE,qBAAmB;AAAA,cAAA,IAClB/D,QAAK;AAAA,uBAAEvD,MAAQuD,EAAAA;AAAAA,cAAK;AAAA,cACpBgE,MAAM;AAAA,gBACJC,gBAAgB;AAAA,cAAA;AAAA,YAClB,CAAC;AAAA,UAAA;AAKP,gBAAMxH,MAAQuD,EAAAA;AAAAA,QAAAA;AAAAA,MAChB,CAAC,GAAAT,gBAEFd,MAAMxC,OAAK;AAAA,QAAA,IAACoE,OAAI;AAAE5D,iBAAAA,MAAAA,EAAQuG,WAAW;AAAA,QAAS;AAAA,QAAA,IAAAxD,WAAA;AAAA,iBAAG2C,IAAI;AAAA,QAAA;AAAA,MAAC,CAAA,CAAA;AAAA,IAAA;AAAA,EAAA,CAAA;AAG7D;AAEO,MAAMI,SAASA,MAAM;AAC1B,QAAMpG,SAASC,UAAU;AACnBU,QAAAA,UAAU2B,MAAMyF,WAAWzE,YAAY;AAC7C,QAAMtC,UAAUb,eAAe;AAAA,IAC7BC,QAASC,CAAMA;;AAAAA,qBAAEE,QAAQC,KAAMC,OAAMA,EAAEC,OAAOC,QAAS,CAAA,MAAxCN,mBAA2CW;AAAAA;AAAAA,EAAAA,CAC3D;AAED,QAAMF,QAAQA,MAAMd,OAAOe,WAAWC,SAAS;AAE/C,QAAMgH,uBAAuB7H,eAAe;AAAA,IAC1CC,QAASC,CAAM,MAAA;AACb,YAAME,UAAUF,EAAEE;AAClB,YAAM0H,cAAc1H,QAAQC,KAAMC,OAAMA,EAAEC,OAAOC,SAAS;AAC1DC,gBACEqH,aACA,4CAA4CtH,QAAS,CAAA,GACvD;AACA,aAAOsH,YAAYC;AAAAA,IAAAA;AAAAA,EACrB,CACD;AAED,QAAMC,eAAehI,eAAe;AAAA,IAClCC,QAASC,CAAM,MAAA;;AACb,YAAME,UAAUF,EAAEE;AAClB,YAAMyC,QAAQzC,QAAQ0C,UAAWxC,OAAMA,EAAEC,OAAOC,SAAS;AACzD,YAAMyH,KAAI7H,aAAQyC,QAAQ,CAAC,MAAjBzC,mBAAoBG;AACvB0H,aAAAA;AAAAA,IAAAA;AAAAA,EACT,CACD;AAEDhF,SAAAA,gBACGd,MAAM2B,QAAM;AAAA,IAAA,IAAAZ,WAAA;AAAA,aAAA,CAAAD,gBACVd,MAAMxC,OAAK;AAAA,QAAA,IAACoE,OAAI;AAAA,iBAAE8D,qBAAqB;AAAA,QAAC;AAAA,QAAA,IAAA3E,WAAA;AAAA,iBACtCqE,oBAAoB1H,QAAQc,MAAM,GAAGiF,MAAS;AAAA,QAAA;AAAA,MAAC,CAAA,GAAA3C,gBAEjDd,MAAMxC,OAAK;AAAA,QAAA,IAACoE,OAAI;AAAA,iBAAEiE,aAAa;AAAA,QAAC;AAAA,QAAA9E,UAC7B1C,CAAAA,aAAY;AAGZyC,iBAAAA,gBACGd,MAAM6B,MAAI;AAAA,YAAA,IACTD,OAAI;AAAA,qBAAEvD,SAAc4D,MAAAA;AAAAA,YAAW;AAAA,YAAA,IAC/Bb,WAAQ;AAAA,qBAAAN,gBAAGtD,OAAK;AAAA,gBAAA,IAACa,UAAO;AAAA,yBAAEA,SAAQ;AAAA,gBAAA;AAAA,cAAC,CAAA;AAAA,YAAA;AAAA,YAAA,IAAA0C,WAAA;AAAAD,qBAAAA,gBAElCd,MAAMC,UAAQ;AAAA,gBAAA,IACbmB,WAAQ;AAAA,yBAAAN,gBACLK,SAAO;AAAA,oBAAA,IAAC1B,YAAS;AAAA,6BAAE/B,OAAOkB,QAAQE;AAAAA,oBAAAA;AAAAA,kBAAuB,CAAA;AAAA,gBAAA;AAAA,gBAAA,IAAAiC,WAAA;AAAA,yBAAAD,gBAG3DtD,OAAK;AAAA,oBAAA,IAACa,UAAO;AAAA,6BAAEA,SAAQ;AAAA,oBAAA;AAAA,kBAAC,CAAA;AAAA,gBAAA;AAAA,cAAA,CAAA;AAAA,YAAA;AAAA,UAAA,CAAA;AAAA,QAAA;AAAA,MAIjC,CAAC,CAAA;AAAA,IAAA;AAAA,EAAA,CAAA;AAIT;"}
|
|
1
|
+
{"version":3,"file":"Match.js","sources":["../../src/Match.tsx"],"sourcesContent":["import * as Solid from 'solid-js'\nimport invariant from 'tiny-invariant'\nimport warning from 'tiny-warning'\nimport {\n createControlledPromise,\n getLocationChangeInfo,\n isNotFound,\n isRedirect,\n rootRouteId,\n} from '@tanstack/router-core'\nimport { Dynamic } from 'solid-js/web'\nimport { CatchBoundary, ErrorComponent } from './CatchBoundary'\nimport { useRouterState } from './useRouterState'\nimport { useRouter } from './useRouter'\nimport { CatchNotFound } from './not-found'\nimport { matchContext } 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 const matchState = useRouterState({\n select: (s) => {\n const match = s.matches.find((d) => d.id === props.matchId)\n\n invariant(\n match,\n `Could not find match for matchId \"${props.matchId}\". Please file an issue!`,\n )\n return {\n routeId: match.routeId,\n ssr: match.ssr,\n _displayPending: match._displayPending,\n }\n },\n })\n\n const route: () => AnyRoute = () => router.routesById[matchState().routeId]\n\n const PendingComponent = () =>\n route().options.pendingComponent ?? 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 matchState().ssr === false || matchState().ssr === 'data-only'\n\n const ResolvedSuspenseBoundary = () =>\n // If we're on the root route, allow forcefully wrapping in suspense\n (!route().isRoot ||\n route().options.wrapInSuspense ||\n resolvedNoSsr ||\n matchState()._displayPending) &&\n (route().options.wrapInSuspense ??\n PendingComponent() ??\n ((route().options.errorComponent as any)?.preload || resolvedNoSsr))\n ? Solid.Suspense\n : SafeFragment\n\n const ResolvedCatchBoundary = () =>\n routeErrorComponent() ? CatchBoundary : SafeFragment\n\n const ResolvedNotFoundBoundary = () =>\n routeNotFoundComponent() ? CatchNotFound : SafeFragment\n\n const resetKey = useRouterState({\n select: (s) => s.loadedAt,\n })\n\n const parentRouteId = useRouterState({\n select: (s) => {\n const index = s.matches.findIndex((d) => d.id === props.matchId)\n return s.matches[index - 1]?.routeId as string\n },\n })\n\n const ShellComponent = route().isRoot\n ? ((route().options as RootRouteOptions).shellComponent ?? SafeFragment)\n : SafeFragment\n\n return (\n <ShellComponent>\n <matchContext.Provider value={() => props.matchId}>\n <Dynamic\n component={ResolvedSuspenseBoundary()}\n fallback={<Dynamic component={PendingComponent()} />}\n >\n <Dynamic\n component={ResolvedCatchBoundary()}\n getResetKey={() => resetKey()}\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 if (isNotFound(error)) throw error\n warning(false, `Error in route match: ${props.matchId}`)\n routeOnCatch()?.(error)\n }}\n >\n <Dynamic\n component={ResolvedNotFoundBoundary()}\n fallback={(error: any) => {\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 (error.routeId && error.routeId !== matchState().routeId) ||\n (!error.routeId && !route().isRoot)\n )\n throw error\n\n return (\n <Dynamic component={routeNotFoundComponent()} {...error} />\n )\n }}\n >\n <Solid.Switch>\n <Solid.Match when={resolvedNoSsr}>\n <Solid.Show\n when={!router.isServer}\n fallback={<Dynamic component={PendingComponent()} />}\n >\n <MatchInner matchId={props.matchId} />\n </Solid.Show>\n </Solid.Match>\n <Solid.Match when={!resolvedNoSsr}>\n <MatchInner matchId={props.matchId} />\n </Solid.Match>\n </Solid.Switch>\n </Dynamic>\n </Dynamic>\n </Dynamic>\n </matchContext.Provider>\n\n {parentRouteId() === rootRouteId ? (\n <>\n <OnRendered />\n <ScrollRestoration />\n </>\n ) : null}\n </ShellComponent>\n )\n}\n\n// On Rendered can't happen above the root layout because it actually\n// renders a dummy dom element to track the rendered state of the app.\n// We render a script tag with a key that changes based on the current\n// location state.__TSR_key. Also, because it's below the root layout, it\n// allows us to fire onRendered events even after a hydration mismatch\n// error that occurred above the root layout (like bad head/link tags,\n// which is common).\nfunction OnRendered() {\n const router = useRouter()\n\n const location = useRouterState({\n select: (s) => {\n return s.resolvedLocation?.state.__TSR_key\n },\n })\n Solid.createEffect(\n Solid.on([location], () => {\n router.emit({\n type: 'onRendered',\n ...getLocationChangeInfo(router.state),\n })\n }),\n )\n return null\n}\n\nexport const MatchInner = (props: { matchId: string }): any => {\n const router = useRouter()\n\n const matchState = useRouterState({\n select: (s) => {\n const match = s.matches.find((d) => d.id === props.matchId)!\n const routeId = match.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: match.loaderDeps,\n params: match._strictParams,\n search: match._strictSearch,\n })\n const key = remountDeps ? JSON.stringify(remountDeps) : undefined\n\n return {\n key,\n routeId,\n match: {\n id: match.id,\n status: match.status,\n error: match.error,\n _forcePending: match._forcePending,\n _displayPending: match._displayPending,\n },\n }\n },\n })\n\n const route = () => router.routesById[matchState().routeId]!\n\n const match = () => matchState().match\n\n const out = () => {\n const Comp = route().options.component ?? router.options.defaultComponent\n if (Comp) {\n return (\n <Solid.Show when={matchState().match.id} keyed>\n <Comp />\n </Solid.Show>\n )\n }\n return <Outlet />\n }\n\n return (\n <Solid.Switch>\n <Solid.Match when={match()._displayPending}>\n {(_) => {\n const [displayPendingResult] = Solid.createResource(\n () =>\n router.getMatch(match().id)?._nonReactive.displayPendingPromise,\n )\n\n return <>{displayPendingResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={match()._forcePending}>\n {(_) => {\n const [minPendingResult] = Solid.createResource(\n () => router.getMatch(match().id)?._nonReactive.minPendingPromise,\n )\n\n return <>{minPendingResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={match().status === 'pending'}>\n {(_) => {\n const pendingMinMs =\n route().options.pendingMinMs ?? router.options.defaultPendingMinMs\n\n if (pendingMinMs) {\n const routerMatch = router.getMatch(match().id)\n if (routerMatch && !routerMatch._nonReactive.minPendingPromise) {\n // Create a promise that will resolve after the minPendingMs\n if (!router.isServer) {\n const minPendingPromise = createControlledPromise<void>()\n\n Promise.resolve().then(() => {\n routerMatch._nonReactive.minPendingPromise = minPendingPromise\n })\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(match().id)?._nonReactive.loadPromise\n })\n\n return <>{loaderResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={match().status === 'notFound'}>\n {(_) => {\n invariant(isNotFound(match().error), 'Expected a notFound error')\n\n return renderRouteNotFound(router, route(), match().error)\n }}\n </Solid.Match>\n <Solid.Match when={match().status === 'redirected'}>\n {(_) => {\n invariant(isRedirect(match().error), 'Expected a redirect error')\n\n const [loaderResult] = Solid.createResource(async () => {\n await new Promise((r) => setTimeout(r, 0))\n return router.getMatch(match().id)?._nonReactive.loadPromise\n })\n\n return <>{loaderResult()}</>\n }}\n </Solid.Match>\n <Solid.Match when={match().status === 'error'}>\n {(_) => {\n if (router.isServer) {\n const RouteErrorComponent =\n (route().options.errorComponent ??\n router.options.defaultErrorComponent) ||\n ErrorComponent\n\n return (\n <RouteErrorComponent\n error={match().error}\n info={{\n componentStack: '',\n }}\n />\n )\n }\n\n throw match().error\n }}\n </Solid.Match>\n <Solid.Match when={match().status === 'success'}>{out()}</Solid.Match>\n </Solid.Switch>\n )\n}\n\nexport const Outlet = () => {\n const router = useRouter()\n const matchId = Solid.useContext(matchContext)\n const routeId = useRouterState({\n select: (s) => s.matches.find((d) => d.id === matchId())?.routeId as string,\n })\n\n const route = () => router.routesById[routeId()]!\n\n const parentGlobalNotFound = useRouterState({\n select: (s) => {\n const matches = s.matches\n const parentMatch = matches.find((d) => d.id === matchId())\n invariant(\n parentMatch,\n `Could not find parent match for matchId \"${matchId()}\"`,\n )\n return parentMatch.globalNotFound\n },\n })\n\n const childMatchId = useRouterState({\n select: (s) => {\n const matches = s.matches\n const index = matches.findIndex((d) => d.id === matchId())\n const v = matches[index + 1]?.id\n return v\n },\n })\n\n return (\n <Solid.Switch>\n <Solid.Match when={parentGlobalNotFound()}>\n {renderRouteNotFound(router, route(), undefined)}\n </Solid.Match>\n <Solid.Match when={childMatchId()}>\n {(matchId) => {\n // const nextMatch = <Match matchId={matchId()} />\n\n return (\n <Solid.Show\n when={matchId() === rootRouteId}\n fallback={<Match matchId={matchId()} />}\n >\n <Solid.Suspense\n fallback={\n <Dynamic component={router.options.defaultPendingComponent} />\n }\n >\n <Match matchId={matchId()} />\n </Solid.Suspense>\n </Solid.Show>\n )\n }}\n </Solid.Match>\n </Solid.Switch>\n )\n}\n"],"names":["Match","props","router","useRouter","matchState","useRouterState","select","s","match","matches","find","d","id","matchId","invariant","routeId","ssr","_displayPending","route","routesById","PendingComponent","options","pendingComponent","defaultPendingComponent","routeErrorComponent","errorComponent","defaultErrorComponent","routeOnCatch","onCatch","defaultOnCatch","routeNotFoundComponent","isRoot","notFoundComponent","notFoundRoute","component","resolvedNoSsr","ResolvedSuspenseBoundary","wrapInSuspense","preload","Solid","Suspense","SafeFragment","ResolvedCatchBoundary","CatchBoundary","ResolvedNotFoundBoundary","CatchNotFound","resetKey","loadedAt","parentRouteId","index","findIndex","ShellComponent","shellComponent","_$createComponent","children","matchContext","Provider","value","Dynamic","fallback","getResetKey","ErrorComponent","error","isNotFound","warning","_$mergeProps","Switch","when","Show","isServer","MatchInner","_$memo","rootRouteId","OnRendered","ScrollRestoration","location","resolvedLocation","state","__TSR_key","createEffect","on","emit","type","getLocationChangeInfo","remountFn","remountDeps","defaultRemountDeps","loaderDeps","params","_strictParams","search","_strictSearch","key","JSON","stringify","undefined","status","_forcePending","out","Comp","defaultComponent","keyed","Outlet","_","displayPendingResult","createResource","getMatch","_nonReactive","displayPendingPromise","minPendingResult","minPendingPromise","pendingMinMs","defaultPendingMinMs","routerMatch","createControlledPromise","resolve","then","setTimeout","loaderResult","Promise","r","loadPromise","renderRouteNotFound","isRedirect","RouteErrorComponent","info","componentStack","useContext","parentGlobalNotFound","parentMatch","globalNotFound","childMatchId","v"],"mappings":"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"}
|
package/dist/source/Match.jsx
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as Solid from 'solid-js';
|
|
2
2
|
import invariant from 'tiny-invariant';
|
|
3
3
|
import warning from 'tiny-warning';
|
|
4
|
-
import { createControlledPromise, getLocationChangeInfo, isNotFound, isRedirect,
|
|
4
|
+
import { createControlledPromise, getLocationChangeInfo, isNotFound, isRedirect, rootRouteId, } from '@tanstack/router-core';
|
|
5
5
|
import { Dynamic } from 'solid-js/web';
|
|
6
6
|
import { CatchBoundary, ErrorComponent } from './CatchBoundary';
|
|
7
7
|
import { useRouterState } from './useRouterState';
|
|
@@ -17,7 +17,11 @@ export const Match = (props) => {
|
|
|
17
17
|
select: (s) => {
|
|
18
18
|
const match = s.matches.find((d) => d.id === props.matchId);
|
|
19
19
|
invariant(match, `Could not find match for matchId "${props.matchId}". Please file an issue!`);
|
|
20
|
-
return
|
|
20
|
+
return {
|
|
21
|
+
routeId: match.routeId,
|
|
22
|
+
ssr: match.ssr,
|
|
23
|
+
_displayPending: match._displayPending,
|
|
24
|
+
};
|
|
21
25
|
},
|
|
22
26
|
});
|
|
23
27
|
const route = () => router.routesById[matchState().routeId];
|
|
@@ -121,8 +125,7 @@ export const MatchInner = (props) => {
|
|
|
121
125
|
const router = useRouter();
|
|
122
126
|
const matchState = useRouterState({
|
|
123
127
|
select: (s) => {
|
|
124
|
-
const
|
|
125
|
-
const match = s.matches[matchIndex];
|
|
128
|
+
const match = s.matches.find((d) => d.id === props.matchId);
|
|
126
129
|
const routeId = match.routeId;
|
|
127
130
|
const remountFn = router.routesById[routeId].options.remountDeps ??
|
|
128
131
|
router.options.defaultRemountDeps;
|
|
@@ -136,13 +139,13 @@ export const MatchInner = (props) => {
|
|
|
136
139
|
return {
|
|
137
140
|
key,
|
|
138
141
|
routeId,
|
|
139
|
-
match:
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
142
|
+
match: {
|
|
143
|
+
id: match.id,
|
|
144
|
+
status: match.status,
|
|
145
|
+
error: match.error,
|
|
146
|
+
_forcePending: match._forcePending,
|
|
147
|
+
_displayPending: match._displayPending,
|
|
148
|
+
},
|
|
146
149
|
};
|
|
147
150
|
},
|
|
148
151
|
});
|
|
@@ -160,42 +163,39 @@ export const MatchInner = (props) => {
|
|
|
160
163
|
return (<Solid.Switch>
|
|
161
164
|
<Solid.Match when={match()._displayPending}>
|
|
162
165
|
{(_) => {
|
|
163
|
-
const [displayPendingResult] = Solid.createResource(() => router.getMatch(match().id)?.displayPendingPromise);
|
|
166
|
+
const [displayPendingResult] = Solid.createResource(() => router.getMatch(match().id)?._nonReactive.displayPendingPromise);
|
|
164
167
|
return <>{displayPendingResult()}</>;
|
|
165
168
|
}}
|
|
166
169
|
</Solid.Match>
|
|
167
170
|
<Solid.Match when={match()._forcePending}>
|
|
168
171
|
{(_) => {
|
|
169
|
-
const [minPendingResult] = Solid.createResource(() => router.getMatch(match().id)?.minPendingPromise);
|
|
172
|
+
const [minPendingResult] = Solid.createResource(() => router.getMatch(match().id)?._nonReactive.minPendingPromise);
|
|
170
173
|
return <>{minPendingResult()}</>;
|
|
171
174
|
}}
|
|
172
175
|
</Solid.Match>
|
|
173
176
|
<Solid.Match when={match().status === 'pending'}>
|
|
174
177
|
{(_) => {
|
|
175
178
|
const pendingMinMs = route().options.pendingMinMs ?? router.options.defaultPendingMinMs;
|
|
176
|
-
if (pendingMinMs
|
|
177
|
-
|
|
178
|
-
if (!
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
minPendingPromise
|
|
184
|
-
})
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
minPendingPromise: undefined,
|
|
192
|
-
}));
|
|
193
|
-
}, pendingMinMs);
|
|
179
|
+
if (pendingMinMs) {
|
|
180
|
+
const routerMatch = router.getMatch(match().id);
|
|
181
|
+
if (routerMatch && !routerMatch._nonReactive.minPendingPromise) {
|
|
182
|
+
// Create a promise that will resolve after the minPendingMs
|
|
183
|
+
if (!router.isServer) {
|
|
184
|
+
const minPendingPromise = createControlledPromise();
|
|
185
|
+
Promise.resolve().then(() => {
|
|
186
|
+
routerMatch._nonReactive.minPendingPromise = minPendingPromise;
|
|
187
|
+
});
|
|
188
|
+
setTimeout(() => {
|
|
189
|
+
minPendingPromise.resolve();
|
|
190
|
+
// We've handled the minPendingPromise, so we can delete it
|
|
191
|
+
routerMatch._nonReactive.minPendingPromise = undefined;
|
|
192
|
+
}, pendingMinMs);
|
|
193
|
+
}
|
|
194
194
|
}
|
|
195
195
|
}
|
|
196
196
|
const [loaderResult] = Solid.createResource(async () => {
|
|
197
197
|
await new Promise((r) => setTimeout(r, 0));
|
|
198
|
-
return router.getMatch(match().id)?.loadPromise;
|
|
198
|
+
return router.getMatch(match().id)?._nonReactive.loadPromise;
|
|
199
199
|
});
|
|
200
200
|
return <>{loaderResult()}</>;
|
|
201
201
|
}}
|
|
@@ -211,7 +211,7 @@ export const MatchInner = (props) => {
|
|
|
211
211
|
invariant(isRedirect(match().error), 'Expected a redirect error');
|
|
212
212
|
const [loaderResult] = Solid.createResource(async () => {
|
|
213
213
|
await new Promise((r) => setTimeout(r, 0));
|
|
214
|
-
return router.getMatch(match().id)?.loadPromise;
|
|
214
|
+
return router.getMatch(match().id)?._nonReactive.loadPromise;
|
|
215
215
|
});
|
|
216
216
|
return <>{loaderResult()}</>;
|
|
217
217
|
}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Match.jsx","sourceRoot":"","sources":["../../src/Match.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,UAAU,CAAA;AACjC,OAAO,SAAS,MAAM,gBAAgB,CAAA;AACtC,OAAO,OAAO,MAAM,cAAc,CAAA;AAClC,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,UAAU,EACV,UAAU,EACV,IAAI,EACJ,WAAW,GACZ,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAGxD,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,KAA0B,EAAE,EAAE;IAClD,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAC1B,MAAM,UAAU,GAAG,cAAc,CAAC;QAChC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE;YACZ,MAAM,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,OAAO,CAAC,CAAA;YAE3D,SAAS,CACP,KAAK,EACL,qCAAqC,KAAK,CAAC,OAAO,0BAA0B,CAC7E,CAAA;YACD,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAA;QAC3D,CAAC;KACF,CAAC,CAAA;IAEF,MAAM,KAAK,GAAmB,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,OAAO,CAAC,CAAA;IAE3E,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAC5B,KAAK,EAAE,CAAC,OAAO,CAAC,gBAAgB,IAAI,MAAM,CAAC,OAAO,CAAC,uBAAuB,CAAA;IAE5E,MAAM,mBAAmB,GAAG,GAAG,EAAE,CAC/B,KAAK,EAAE,CAAC,OAAO,CAAC,cAAc,IAAI,MAAM,CAAC,OAAO,CAAC,qBAAqB,CAAA;IAExE,MAAM,YAAY,GAAG,GAAG,EAAE,CACxB,KAAK,EAAE,CAAC,OAAO,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,CAAA;IAE1D,MAAM,sBAAsB,GAAG,GAAG,EAAE,CAClC,KAAK,EAAE,CAAC,MAAM;QACZ,CAAC,CAAC,wGAAwG;YACxG,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,iBAAiB;gBAClC,MAAM,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,SAAS,CAAC;QAClD,CAAC,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAA;IAEvC,MAAM,aAAa,GACjB,UAAU,EAAE,CAAC,GAAG,KAAK,KAAK,IAAI,UAAU,EAAE,CAAC,GAAG,KAAK,WAAW,CAAA;IAEhE,MAAM,wBAAwB,GAAG,GAAG,EAAE;IACpC,oEAAoE;IACpE,CAAC,CAAC,KAAK,EAAE,CAAC,MAAM;QACd,KAAK,EAAE,CAAC,OAAO,CAAC,cAAc;QAC9B,aAAa;QACb,UAAU,EAAE,CAAC,eAAe,CAAC;QAC/B,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,cAAc;YAC7B,gBAAgB,EAAE;YAClB,CAAE,KAAK,EAAE,CAAC,OAAO,CAAC,cAAsB,EAAE,OAAO,IAAI,aAAa,CAAC,CAAC;QACpE,CAAC,CAAC,KAAK,CAAC,QAAQ;QAChB,CAAC,CAAC,YAAY,CAAA;IAElB,MAAM,qBAAqB,GAAG,GAAG,EAAE,CACjC,mBAAmB,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CAAA;IAEtD,MAAM,wBAAwB,GAAG,GAAG,EAAE,CACpC,sBAAsB,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,CAAA;IAEzD,MAAM,QAAQ,GAAG,cAAc,CAAC;QAC9B,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ;KAC1B,CAAC,CAAA;IAEF,MAAM,aAAa,GAAG,cAAc,CAAC;QACnC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE;YACZ,MAAM,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,OAAO,CAAC,CAAA;YAChE,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,OAAiB,CAAA;QAChD,CAAC;KACF,CAAC,CAAA;IAEF,MAAM,cAAc,GAAG,KAAK,EAAE,CAAC,MAAM;QACnC,CAAC,CAAC,CAAE,KAAK,EAAE,CAAC,OAA4B,CAAC,cAAc,IAAI,YAAY,CAAC;QACxE,CAAC,CAAC,YAAY,CAAA;IAEhB,OAAO,CACL,CAAC,cAAc,CACb;MAAA,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAChD;QAAA,CAAC,OAAO,CACN,SAAS,CAAC,CAAC,wBAAwB,EAAE,CAAC,CACtC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,gBAAgB,EAAE,CAAC,EAAG,CAAC,CAErD;UAAA,CAAC,OAAO,CACN,SAAS,CAAC,CAAC,qBAAqB,EAAE,CAAC,CACnC,WAAW,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,CAC9B,cAAc,CAAC,CAAC,mBAAmB,EAAE,IAAI,cAAc,CAAC,CACxD,OAAO,CAAC,CAAC,CAAC,KAAY,EAAE,EAAE;YACxB,iFAAiF;YACjF,IAAI,UAAU,CAAC,KAAK,CAAC;gBAAE,MAAM,KAAK,CAAA;YAClC,OAAO,CAAC,KAAK,EAAE,yBAAyB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;YACxD,YAAY,EAAE,EAAE,CAAC,KAAK,CAAC,CAAA;QACzB,CAAC,CAAC,CAEF;YAAA,CAAC,OAAO,CACN,SAAS,CAAC,CAAC,wBAAwB,EAAE,CAAC,CACtC,QAAQ,CAAC,CAAC,CAAC,KAAU,EAAE,EAAE;YACvB,6DAA6D;YAC7D,oEAAoE;YACpE,IACE,CAAC,sBAAsB,EAAE;gBACzB,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC,OAAO,CAAC;gBACzD,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC;gBAEnC,MAAM,KAAK,CAAA;YAEb,OAAO,CACL,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,sBAAsB,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,EAAG,CAC5D,CAAA;QACH,CAAC,CAAC,CAEF;cAAA,CAAC,KAAK,CAAC,MAAM,CACX;gBAAA,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAC/B;kBAAA,CAAC,KAAK,CAAC,IAAI,CACT,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CACvB,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,gBAAgB,EAAE,CAAC,EAAG,CAAC,CAErD;oBAAA,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,EACrC;kBAAA,EAAE,KAAK,CAAC,IAAI,CACd;gBAAA,EAAE,KAAK,CAAC,KAAK,CACb;gBAAA,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAChC;kBAAA,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,EACrC;gBAAA,EAAE,KAAK,CAAC,KAAK,CACf;cAAA,EAAE,KAAK,CAAC,MAAM,CAChB;YAAA,EAAE,OAAO,CACX;UAAA,EAAE,OAAO,CACX;QAAA,EAAE,OAAO,CACX;MAAA,EAAE,YAAY,CAAC,QAAQ,CAEvB;;MAAA,CAAC,aAAa,EAAE,KAAK,WAAW,CAAC,CAAC,CAAC,CACjC,EACE;UAAA,CAAC,UAAU,CAAC,AAAD,EACX;UAAA,CAAC,iBAAiB,CAAC,AAAD,EACpB;QAAA,GAAG,CACJ,CAAC,CAAC,CAAC,IAAI,CACV;IAAA,EAAE,cAAc,CAAC,CAClB,CAAA;AACH,CAAC,CAAA;AAED,qEAAqE;AACrE,sEAAsE;AACtE,sEAAsE;AACtE,yEAAyE;AACzE,sEAAsE;AACtE,sEAAsE;AACtE,oBAAoB;AACpB,SAAS,UAAU;IACjB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAE1B,MAAM,QAAQ,GAAG,cAAc,CAAC;QAC9B,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE;YACZ,OAAO,CAAC,CAAC,gBAAgB,EAAE,KAAK,CAAC,SAAS,CAAA;QAC5C,CAAC;KACF,CAAC,CAAA;IACF,KAAK,CAAC,YAAY,CAChB,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE;QACxB,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,YAAY;YAClB,GAAG,qBAAqB,CAAC,MAAM,CAAC,KAAK,CAAC;SACvC,CAAC,CAAA;IACJ,CAAC,CAAC,CACH,CAAA;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAA0B,EAAO,EAAE;IAC5D,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAE1B,MAAM,UAAU,GAAG,cAAc,CAAC;QAChC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE;YACZ,MAAM,UAAU,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,OAAO,CAAC,CAAA;YACrE,MAAM,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,UAAU,CAAE,CAAA;YACpC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAiB,CAAA;YAEvC,MAAM,SAAS,GACZ,MAAM,CAAC,UAAU,CAAC,OAAO,CAAc,CAAC,OAAO,CAAC,WAAW;gBAC5D,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAA;YACnC,MAAM,WAAW,GAAG,SAAS,EAAE,CAAC;gBAC9B,OAAO;gBACP,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,MAAM,EAAE,KAAK,CAAC,aAAa;gBAC3B,MAAM,EAAE,KAAK,CAAC,aAAa;aAC5B,CAAC,CAAA;YACF,MAAM,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;YAEjE,OAAO;gBACL,GAAG;gBACH,OAAO;gBACP,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;oBACjB,IAAI;oBACJ,QAAQ;oBACR,OAAO;oBACP,eAAe;oBACf,iBAAiB;iBAClB,CAAC;aACH,CAAA;QACH,CAAC;KACF,CAAC,CAAA;IAEF,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,OAAO,CAAE,CAAA;IAE5D,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC,UAAU,EAAE,CAAC,KAAK,CAAA;IAEtC,MAAM,GAAG,GAAG,GAAG,EAAE;QACf,MAAM,IAAI,GAAG,KAAK,EAAE,CAAC,OAAO,CAAC,SAAS,IAAI,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAA;QACzE,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,CACL,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAC5C;UAAA,CAAC,IAAI,CAAC,AAAD,EACP;QAAA,EAAE,KAAK,CAAC,IAAI,CAAC,CACd,CAAA;QACH,CAAC;QACD,OAAO,CAAC,MAAM,CAAC,AAAD,EAAG,CAAA;IACnB,CAAC,CAAA;IAED,OAAO,CACL,CAAC,KAAK,CAAC,MAAM,CACX;MAAA,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,eAAe,CAAC,CACzC;QAAA,CAAC,CAAC,CAAC,EAAE,EAAE;YACL,MAAM,CAAC,oBAAoB,CAAC,GAAG,KAAK,CAAC,cAAc,CACjD,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,qBAAqB,CACzD,CAAA;YAED,OAAO,EAAE,CAAC,oBAAoB,EAAE,CAAC,GAAG,CAAA;QACtC,CAAC,CACH;MAAA,EAAE,KAAK,CAAC,KAAK,CACb;MAAA,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,aAAa,CAAC,CACvC;QAAA,CAAC,CAAC,CAAC,EAAE,EAAE;YACL,MAAM,CAAC,gBAAgB,CAAC,GAAG,KAAK,CAAC,cAAc,CAC7C,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,iBAAiB,CACrD,CAAA;YAED,OAAO,EAAE,CAAC,gBAAgB,EAAE,CAAC,GAAG,CAAA;QAClC,CAAC,CACH;MAAA,EAAE,KAAK,CAAC,KAAK,CACb;MAAA,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,MAAM,KAAK,SAAS,CAAC,CAC9C;QAAA,CAAC,CAAC,CAAC,EAAE,EAAE;YACL,MAAM,YAAY,GAChB,KAAK,EAAE,CAAC,OAAO,CAAC,YAAY,IAAI,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAA;YAEpE,IAAI,YAAY,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC;gBACpE,4DAA4D;gBAC5D,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;oBACrB,MAAM,iBAAiB,GAAG,uBAAuB,EAAQ,CAAA;oBAEzD,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;wBAC1B,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;4BACxC,GAAG,IAAI;4BACP,iBAAiB;yBAClB,CAAC,CAAC,CAAA;oBACL,CAAC,CAAC,CAAA;oBAEF,UAAU,CAAC,GAAG,EAAE;wBACd,iBAAiB,CAAC,OAAO,EAAE,CAAA;wBAE3B,2DAA2D;wBAC3D,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;4BACxC,GAAG,IAAI;4BACP,iBAAiB,EAAE,SAAS;yBAC7B,CAAC,CAAC,CAAA;oBACL,CAAC,EAAE,YAAY,CAAC,CAAA;gBAClB,CAAC;YACH,CAAC;YAED,MAAM,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,IAAI,EAAE;gBACrD,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;gBAC1C,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,CAAA;YACjD,CAAC,CAAC,CAAA;YAEF,OAAO,EAAE,CAAC,YAAY,EAAE,CAAC,GAAG,CAAA;QAC9B,CAAC,CACH;MAAA,EAAE,KAAK,CAAC,KAAK,CACb;MAAA,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,MAAM,KAAK,UAAU,CAAC,CAC/C;QAAA,CAAC,CAAC,CAAC,EAAE,EAAE;YACL,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,EAAE,2BAA2B,CAAC,CAAA;YAEjE,OAAO,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,CAAA;QAC5D,CAAC,CACH;MAAA,EAAE,KAAK,CAAC,KAAK,CACb;MAAA,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,MAAM,KAAK,YAAY,CAAC,CACjD;QAAA,CAAC,CAAC,CAAC,EAAE,EAAE;YACL,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,EAAE,2BAA2B,CAAC,CAAA;YAEjE,MAAM,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,IAAI,EAAE;gBACrD,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;gBAC1C,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,CAAA;YACjD,CAAC,CAAC,CAAA;YAEF,OAAO,EAAE,CAAC,YAAY,EAAE,CAAC,GAAG,CAAA;QAC9B,CAAC,CACH;MAAA,EAAE,KAAK,CAAC,KAAK,CACb;MAAA,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,MAAM,KAAK,OAAO,CAAC,CAC5C;QAAA,CAAC,CAAC,CAAC,EAAE,EAAE;YACL,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACpB,MAAM,mBAAmB,GACvB,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,cAAc;oBAC7B,MAAM,CAAC,OAAO,CAAC,qBAAqB,CAAC;oBACvC,cAAc,CAAA;gBAEhB,OAAO,CACL,CAAC,mBAAmB,CAClB,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CACrB,IAAI,CAAC,CAAC;wBACJ,cAAc,EAAE,EAAE;qBACnB,CAAC,EACF,CACH,CAAA;YACH,CAAC;YAED,MAAM,KAAK,EAAE,CAAC,KAAK,CAAA;QACrB,CAAC,CACH;MAAA,EAAE,KAAK,CAAC,KAAK,CACb;MAAA,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,CAAC,KAAK,CACvE;IAAA,EAAE,KAAK,CAAC,MAAM,CAAC,CAChB,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,EAAE;IACzB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAC1B,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;IAC9C,MAAM,OAAO,GAAG,cAAc,CAAC;QAC7B,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,EAAE,CAAC,EAAE,OAAiB;KAC5E,CAAC,CAAA;IAEF,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,CAAE,CAAA;IAEjD,MAAM,oBAAoB,GAAG,cAAc,CAAC;QAC1C,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE;YACZ,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,CAAA;YACzB,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,EAAE,CAAC,CAAA;YAC3D,SAAS,CACP,WAAW,EACX,4CAA4C,OAAO,EAAE,GAAG,CACzD,CAAA;YACD,OAAO,WAAW,CAAC,cAAc,CAAA;QACnC,CAAC;KACF,CAAC,CAAA;IAEF,MAAM,YAAY,GAAG,cAAc,CAAC;QAClC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE;YACZ,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,CAAA;YACzB,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,EAAE,CAAC,CAAA;YAC1D,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,EAAE,CAAA;YAChC,OAAO,CAAC,CAAA;QACV,CAAC;KACF,CAAC,CAAA;IAEF,OAAO,CACL,CAAC,KAAK,CAAC,MAAM,CACX;MAAA,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,oBAAoB,EAAE,CAAC,CACxC;QAAA,CAAC,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,SAAS,CAAC,CAClD;MAAA,EAAE,KAAK,CAAC,KAAK,CACb;MAAA,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC,CAChC;QAAA,CAAC,CAAC,OAAO,EAAE,EAAE;YACX,kDAAkD;YAElD,OAAO,CACL,CAAC,KAAK,CAAC,IAAI,CACT,IAAI,CAAC,CAAC,OAAO,EAAE,KAAK,WAAW,CAAC,CAChC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC,EAAG,CAAC,CAExC;cAAA,CAAC,KAAK,CAAC,QAAQ,CACb,QAAQ,CAAC,CACP,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,uBAAuB,CAAC,EAC7D,CAAC,CAED;gBAAA,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC,EAC5B;cAAA,EAAE,KAAK,CAAC,QAAQ,CAClB;YAAA,EAAE,KAAK,CAAC,IAAI,CAAC,CACd,CAAA;QACH,CAAC,CACH;MAAA,EAAE,KAAK,CAAC,KAAK,CACf;IAAA,EAAE,KAAK,CAAC,MAAM,CAAC,CAChB,CAAA;AACH,CAAC,CAAA"}
|
|
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.131.
|
|
3
|
+
"version": "1.131.5",
|
|
4
4
|
"description": "Modern and scalable routing for Solid applications",
|
|
5
5
|
"author": "Tanner Linsley",
|
|
6
6
|
"license": "MIT",
|
|
@@ -88,8 +88,8 @@
|
|
|
88
88
|
"isbot": "^5.1.22",
|
|
89
89
|
"tiny-invariant": "^1.3.3",
|
|
90
90
|
"tiny-warning": "^1.0.3",
|
|
91
|
-
"@tanstack/
|
|
92
|
-
"@tanstack/
|
|
91
|
+
"@tanstack/history": "1.131.2",
|
|
92
|
+
"@tanstack/router-core": "1.131.5"
|
|
93
93
|
},
|
|
94
94
|
"devDependencies": {
|
|
95
95
|
"@solidjs/testing-library": "^0.8.10",
|
package/src/Match.tsx
CHANGED
|
@@ -6,7 +6,6 @@ import {
|
|
|
6
6
|
getLocationChangeInfo,
|
|
7
7
|
isNotFound,
|
|
8
8
|
isRedirect,
|
|
9
|
-
pick,
|
|
10
9
|
rootRouteId,
|
|
11
10
|
} from '@tanstack/router-core'
|
|
12
11
|
import { Dynamic } from 'solid-js/web'
|
|
@@ -30,7 +29,11 @@ export const Match = (props: { matchId: string }) => {
|
|
|
30
29
|
match,
|
|
31
30
|
`Could not find match for matchId "${props.matchId}". Please file an issue!`,
|
|
32
31
|
)
|
|
33
|
-
return
|
|
32
|
+
return {
|
|
33
|
+
routeId: match.routeId,
|
|
34
|
+
ssr: match.ssr,
|
|
35
|
+
_displayPending: match._displayPending,
|
|
36
|
+
}
|
|
34
37
|
},
|
|
35
38
|
})
|
|
36
39
|
|
|
@@ -182,8 +185,7 @@ export const MatchInner = (props: { matchId: string }): any => {
|
|
|
182
185
|
|
|
183
186
|
const matchState = useRouterState({
|
|
184
187
|
select: (s) => {
|
|
185
|
-
const
|
|
186
|
-
const match = s.matches[matchIndex]!
|
|
188
|
+
const match = s.matches.find((d) => d.id === props.matchId)!
|
|
187
189
|
const routeId = match.routeId as string
|
|
188
190
|
|
|
189
191
|
const remountFn =
|
|
@@ -200,13 +202,13 @@ export const MatchInner = (props: { matchId: string }): any => {
|
|
|
200
202
|
return {
|
|
201
203
|
key,
|
|
202
204
|
routeId,
|
|
203
|
-
match:
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
205
|
+
match: {
|
|
206
|
+
id: match.id,
|
|
207
|
+
status: match.status,
|
|
208
|
+
error: match.error,
|
|
209
|
+
_forcePending: match._forcePending,
|
|
210
|
+
_displayPending: match._displayPending,
|
|
211
|
+
},
|
|
210
212
|
}
|
|
211
213
|
},
|
|
212
214
|
})
|
|
@@ -232,7 +234,8 @@ export const MatchInner = (props: { matchId: string }): any => {
|
|
|
232
234
|
<Solid.Match when={match()._displayPending}>
|
|
233
235
|
{(_) => {
|
|
234
236
|
const [displayPendingResult] = Solid.createResource(
|
|
235
|
-
() =>
|
|
237
|
+
() =>
|
|
238
|
+
router.getMatch(match().id)?._nonReactive.displayPendingPromise,
|
|
236
239
|
)
|
|
237
240
|
|
|
238
241
|
return <>{displayPendingResult()}</>
|
|
@@ -241,7 +244,7 @@ export const MatchInner = (props: { matchId: string }): any => {
|
|
|
241
244
|
<Solid.Match when={match()._forcePending}>
|
|
242
245
|
{(_) => {
|
|
243
246
|
const [minPendingResult] = Solid.createResource(
|
|
244
|
-
() => router.getMatch(match().id)?.minPendingPromise,
|
|
247
|
+
() => router.getMatch(match().id)?._nonReactive.minPendingPromise,
|
|
245
248
|
)
|
|
246
249
|
|
|
247
250
|
return <>{minPendingResult()}</>
|
|
@@ -252,33 +255,29 @@ export const MatchInner = (props: { matchId: string }): any => {
|
|
|
252
255
|
const pendingMinMs =
|
|
253
256
|
route().options.pendingMinMs ?? router.options.defaultPendingMinMs
|
|
254
257
|
|
|
255
|
-
if (pendingMinMs
|
|
256
|
-
|
|
257
|
-
if (!
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
minPendingPromise
|
|
264
|
-
})
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
...prev,
|
|
273
|
-
minPendingPromise: undefined,
|
|
274
|
-
}))
|
|
275
|
-
}, pendingMinMs)
|
|
258
|
+
if (pendingMinMs) {
|
|
259
|
+
const routerMatch = router.getMatch(match().id)
|
|
260
|
+
if (routerMatch && !routerMatch._nonReactive.minPendingPromise) {
|
|
261
|
+
// Create a promise that will resolve after the minPendingMs
|
|
262
|
+
if (!router.isServer) {
|
|
263
|
+
const minPendingPromise = createControlledPromise<void>()
|
|
264
|
+
|
|
265
|
+
Promise.resolve().then(() => {
|
|
266
|
+
routerMatch._nonReactive.minPendingPromise = minPendingPromise
|
|
267
|
+
})
|
|
268
|
+
|
|
269
|
+
setTimeout(() => {
|
|
270
|
+
minPendingPromise.resolve()
|
|
271
|
+
// We've handled the minPendingPromise, so we can delete it
|
|
272
|
+
routerMatch._nonReactive.minPendingPromise = undefined
|
|
273
|
+
}, pendingMinMs)
|
|
274
|
+
}
|
|
276
275
|
}
|
|
277
276
|
}
|
|
278
277
|
|
|
279
278
|
const [loaderResult] = Solid.createResource(async () => {
|
|
280
279
|
await new Promise((r) => setTimeout(r, 0))
|
|
281
|
-
return router.getMatch(match().id)?.loadPromise
|
|
280
|
+
return router.getMatch(match().id)?._nonReactive.loadPromise
|
|
282
281
|
})
|
|
283
282
|
|
|
284
283
|
return <>{loaderResult()}</>
|
|
@@ -297,7 +296,7 @@ export const MatchInner = (props: { matchId: string }): any => {
|
|
|
297
296
|
|
|
298
297
|
const [loaderResult] = Solid.createResource(async () => {
|
|
299
298
|
await new Promise((r) => setTimeout(r, 0))
|
|
300
|
-
return router.getMatch(match().id)?.loadPromise
|
|
299
|
+
return router.getMatch(match().id)?._nonReactive.loadPromise
|
|
301
300
|
})
|
|
302
301
|
|
|
303
302
|
return <>{loaderResult()}</>
|