[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-tanstack-react-router":3,"mdc-pz2rzb-key":48,"related-repo-tanstack-react-router":7303,"related-org-tanstack-react-router":7408},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":11,"stars":23,"repoUrl":24,"updatedAt":25,"license":26,"forks":27,"topics":28,"repo":43,"sourceUrl":46,"mdContent":47},"react-router","implement TanStack Router in React applications","React bindings for TanStack Router: RouterProvider, useRouter, useRouterState, useMatch, useMatches, useLocation, useSearch, useParams, useNavigate, useLoaderData, useLoaderDeps, useRouteContext, useBlocker, useCanGoBack, Link, Navigate, Outlet, CatchBoundary, ErrorComponent. React-specific patterns for hooks, providers, SSR hydration, and createLink with forwardRef.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},"tanstack","TanStack","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Ftanstack.png",[12,16,19,20],{"name":13,"slug":14,"type":15},"React","react","tag",{"name":17,"slug":18,"type":15},"Routing","routing",{"name":9,"slug":8,"type":15},{"name":21,"slug":22,"type":15},"Frontend","frontend",14787,"https:\u002F\u002Fgithub.com\u002FTanStack\u002Frouter","2026-07-30T05:26:57.476719",null,1761,[29,30,31,14,32,33,18,34,35,36,37,38,39,40,41,42],"framework","fullstack","javascript","route","router","rpc","search","searchparams","server-functions","ssr","state-management","typesafe","typescript","url",{"repoUrl":24,"stars":23,"forks":27,"topics":44,"description":45},[29,30,31,14,32,33,18,34,35,36,37,38,39,40,41,42],"🤖 A client-first, server-capable, fully type-safe router and full-stack framework for the web (React and more).","https:\u002F\u002Fgithub.com\u002FTanStack\u002Frouter\u002Ftree\u002FHEAD\u002Fpackages\u002Freact-router\u002Fskills\u002Freact-router","---\nname: react-router\ndescription: >-\n  React bindings for TanStack Router: RouterProvider, useRouter,\n  useRouterState, useMatch, useMatches, useLocation, useSearch,\n  useParams, useNavigate, useLoaderData, useLoaderDeps,\n  useRouteContext, useBlocker, useCanGoBack, Link, Navigate,\n  Outlet, CatchBoundary, ErrorComponent. React-specific patterns\n  for hooks, providers, SSR hydration, and createLink with\n  forwardRef.\nmetadata:\n  type: framework\n  library: tanstack-router\n  library_version: '1.166.2'\n  framework: react\nrequires:\n  - router-core\nsources:\n  - TanStack\u002Frouter:packages\u002Freact-router\u002Fsrc\n  - TanStack\u002Frouter:docs\u002Frouter\u002Fguide\u002Fcreating-a-router.md\n  - TanStack\u002Frouter:docs\u002Frouter\u002Finstallation\u002Fmanual.md\n---\n\n# React Router (`@tanstack\u002Freact-router`)\n\nThis skill builds on router-core. Read [router-core](..\u002F..\u002F..\u002Frouter-core\u002Fskills\u002Frouter-core\u002FSKILL.md) first for foundational concepts.\n\n> **CRITICAL**: TanStack Router types are FULLY INFERRED. Never cast, never annotate inferred values.\n> **CRITICAL**: TanStack Router is CLIENT-FIRST. Loaders run on the client by default, not on the server.\n> **CRITICAL**: Do not confuse `@tanstack\u002Freact-router` with `react-router-dom`\u002F`react-router`. They are completely different libraries with different APIs.\n\n## Full Setup: File-Based Routing with Vite\n\n### 1. Install Dependencies\n\n```bash\nnpm install @tanstack\u002Freact-router\nnpm install -D @tanstack\u002Frouter-plugin @tanstack\u002Freact-router-devtools\n```\n\n### 2. Configure Vite Plugin\n\n```ts\n\u002F\u002F vite.config.ts\nimport { defineConfig } from 'vite'\nimport react from '@vitejs\u002Fplugin-react'\nimport { tanstackRouter } from '@tanstack\u002Frouter-plugin\u002Fvite'\n\nexport default defineConfig({\n  plugins: [\n    \u002F\u002F MUST come before react()\n    tanstackRouter({\n      target: 'react',\n      autoCodeSplitting: true,\n    }),\n    react(),\n  ],\n})\n```\n\n### 3. Create Root Route\n\n```tsx\n\u002F\u002F src\u002Froutes\u002F__root.tsx\nimport { createRootRoute, Link, Outlet } from '@tanstack\u002Freact-router'\nimport { TanStackRouterDevtools } from '@tanstack\u002Freact-router-devtools'\n\nexport const Route = createRootRoute({\n  component: RootLayout,\n})\n\nfunction RootLayout() {\n  return (\n    \u003C>\n      \u003Cnav>\n        \u003CLink to=\"\u002F\" className=\"[&.active]:font-bold\">\n          Home\n        \u003C\u002FLink>\n        \u003CLink to=\"\u002Fabout\" className=\"[&.active]:font-bold\">\n          About\n        \u003C\u002FLink>\n      \u003C\u002Fnav>\n      \u003Chr \u002F>\n      \u003COutlet \u002F>\n      \u003CTanStackRouterDevtools \u002F>\n    \u003C\u002F>\n  )\n}\n```\n\n### 4. Create Route Files\n\n```tsx\n\u002F\u002F src\u002Froutes\u002Findex.tsx\nimport { createFileRoute } from '@tanstack\u002Freact-router'\n\nexport const Route = createFileRoute('\u002F')({\n  component: HomePage,\n})\n\nfunction HomePage() {\n  return \u003Ch1>Welcome Home\u003C\u002Fh1>\n}\n```\n\n```tsx\n\u002F\u002F src\u002Froutes\u002Fabout.tsx\nimport { createFileRoute } from '@tanstack\u002Freact-router'\n\nexport const Route = createFileRoute('\u002Fabout')({\n  component: AboutPage,\n})\n\nfunction AboutPage() {\n  return \u003Ch1>About\u003C\u002Fh1>\n}\n```\n\n### 5. Create Router Instance and Register Types\n\n```tsx\n\u002F\u002F src\u002Fmain.tsx\nimport { StrictMode } from 'react'\nimport ReactDOM from 'react-dom\u002Fclient'\nimport { RouterProvider, createRouter } from '@tanstack\u002Freact-router'\nimport { routeTree } from '.\u002FrouteTree.gen'\n\nconst router = createRouter({ routeTree })\n\n\u002F\u002F REQUIRED — without this, Link\u002FuseNavigate\u002FuseSearch have no type safety\ndeclare module '@tanstack\u002Freact-router' {\n  interface Register {\n    router: typeof router\n  }\n}\n\nconst rootElement = document.getElementById('root')!\nif (!rootElement.innerHTML) {\n  const root = ReactDOM.createRoot(rootElement)\n  root.render(\n    \u003CStrictMode>\n      \u003CRouterProvider router={router} \u002F>\n    \u003C\u002FStrictMode>,\n  )\n}\n```\n\n## Hooks Reference\n\nAll hooks are imported from `@tanstack\u002Freact-router`.\n\n### `useRouter()`\n\nAccess the router instance directly:\n\n```tsx\nimport { useRouter } from '@tanstack\u002Freact-router'\n\nfunction InvalidateButton() {\n  const router = useRouter()\n  return \u003Cbutton onClick={() => router.invalidate()}>Refresh data\u003C\u002Fbutton>\n}\n```\n\n### `useRouterState()`\n\nSubscribe to router state changes. Exposes the entire state and thus incurs\na performance cost. For matches or location favor `useMatches` and `useLocation`.\n\n```tsx\nimport { useRouterState } from '@tanstack\u002Freact-router'\n\nfunction LoadingIndicator() {\n  const isLoading = useRouterState({ select: (s) => s.isLoading })\n  return isLoading ? \u003Cdiv>Loading...\u003C\u002Fdiv> : null\n}\n```\n\n### `useNavigate()`\n\nProgrammatic navigation (prefer `\u003CLink>` for user-clickable elements):\n\n```tsx\nimport { useNavigate } from '@tanstack\u002Freact-router'\n\nfunction AfterSubmit() {\n  const navigate = useNavigate()\n\n  const handleSubmit = async () => {\n    await saveData()\n    navigate({ to: '\u002Fposts\u002F$postId', params: { postId: '123' } })\n  }\n\n  return \u003Cbutton onClick={handleSubmit}>Save\u003C\u002Fbutton>\n}\n```\n\n### `useSearch({ from })`\n\nRead validated search params:\n\n```tsx\nimport { useSearch } from '@tanstack\u002Freact-router'\n\nfunction Pagination() {\n  const { page } = useSearch({ from: '\u002Fproducts' })\n  return \u003Cspan>Page {page}\u003C\u002Fspan>\n}\n```\n\n### `useParams({ from })`\n\nRead path params:\n\n```tsx\nimport { useParams } from '@tanstack\u002Freact-router'\n\nfunction PostHeader() {\n  const { postId } = useParams({ from: '\u002Fposts\u002F$postId' })\n  return \u003Ch2>Post {postId}\u003C\u002Fh2>\n}\n```\n\n### `useLoaderData({ from })`\n\nRead data returned from the route loader:\n\n```tsx\nimport { useLoaderData } from '@tanstack\u002Freact-router'\n\nfunction PostContent() {\n  const { post } = useLoaderData({ from: '\u002Fposts\u002F$postId' })\n  return \u003Carticle>{post.content}\u003C\u002Farticle>\n}\n```\n\n### `useMatch({ from })`\n\nAccess the full route match (params, search, loader data, context):\n\n```tsx\nimport { useMatch } from '@tanstack\u002Freact-router'\n\nfunction PostDetails() {\n  const match = useMatch({ from: '\u002Fposts\u002F$postId' })\n  return \u003Cdiv>{match.loaderData.post.title}\u003C\u002Fdiv>\n}\n```\n\n### Other Hooks\n\nAll imported from `@tanstack\u002Freact-router`:\n\n- **`useMatches()`** — array of all active route matches (useful for breadcrumbs)\n- **`useRouteContext({ from })`** — read context from `beforeLoad` or parent routes\n- **`useBlocker({ shouldBlockFn })`** — block navigation for unsaved changes\n- **`useCanGoBack()`** — returns `boolean`, check if history has entries to go back to\n- **`useLocation()`** — current parsed location (`pathname`, `search`, `hash`)\n- **`useLinkProps({ to, params?, search? })`** — get `\u003Ca>` props for custom link elements\n- **`useMatchRoute()`** — returns a function: `matchRoute({ to }) => match | false`\n\n## Components Reference\n\n### `RouterProvider`\n\nMount the router at the top of your React tree:\n\n```tsx\n\u003CRouterProvider router={router} \u002F>\n```\n\n### `Link`\n\nType-safe navigation link with `\u003Ca>` semantics:\n\n```tsx\n\u003CLink to=\"\u002Fposts\u002F$postId\" params={{ postId: '42' }}>\n  View Post\n\u003C\u002FLink>\n```\n\n### `Outlet`\n\nRenders the matched child route component:\n\n```tsx\nfunction Layout() {\n  return (\n    \u003Cdiv>\n      \u003CSidebar \u002F>\n      \u003Cmain>\n        \u003COutlet \u002F>\n      \u003C\u002Fmain>\n    \u003C\u002Fdiv>\n  )\n}\n```\n\n### `Navigate`\n\nDeclarative redirect component:\n\n```tsx\nimport { Navigate } from '@tanstack\u002Freact-router'\n\nfunction OldPage() {\n  return \u003CNavigate to=\"\u002Fnew-page\" \u002F>\n}\n```\n\n### `Await`\n\nRenders deferred data from unawaited loader promises with Suspense:\n\n```tsx\nimport { Await } from '@tanstack\u002Freact-router'\nimport { Suspense } from 'react'\n\nfunction PostWithComments() {\n  const { deferredComments } = Route.useLoaderData()\n  return (\n    \u003Cdiv>\n      \u003Ch1>Post\u003C\u002Fh1>\n      \u003CSuspense fallback={\u003Cdiv>Loading comments...\u003C\u002Fdiv>}>\n        \u003CAwait promise={deferredComments}>\n          {(comments) => (\n            \u003Cul>\n              {comments.map((c) => (\n                \u003Cli key={c.id}>{c.text}\u003C\u002Fli>\n              ))}\n            \u003C\u002Ful>\n          )}\n        \u003C\u002FAwait>\n      \u003C\u002FSuspense>\n    \u003C\u002Fdiv>\n  )\n}\n```\n\n### `CatchBoundary`\n\nError boundary for component-level error handling (route-level errors use `errorComponent` route option):\n\n```tsx\nimport { CatchBoundary } from '@tanstack\u002Freact-router'\n;\u003CCatchBoundary\n  getResetKey={() => 'widget'}\n  onCatch={(error) => console.error(error)}\n  errorComponent={({ error }) => \u003Cdiv>Error: {error.message}\u003C\u002Fdiv>}\n>\n  \u003CRiskyWidget \u002F>\n\u003C\u002FCatchBoundary>\n```\n\n## React-Specific Patterns\n\n### Custom Link Component with `createLink`\n\nWrap `Link` in a custom component while preserving type safety:\n\n```tsx\nimport { createLink } from '@tanstack\u002Freact-router'\nimport { forwardRef, type ComponentPropsWithoutRef } from 'react'\n\nconst StyledLinkComponent = forwardRef\u003C\n  HTMLAnchorElement,\n  ComponentPropsWithoutRef\u003C'a'>\n>((props, ref) => (\n  \u003Ca ref={ref} {...props} className={`styled-link ${props.className ?? ''}`} \u002F>\n))\n\nconst StyledLink = createLink(StyledLinkComponent)\n\n\u002F\u002F Usage — same type-safe props as Link\nfunction Nav() {\n  return (\n    \u003CStyledLink to=\"\u002Fposts\u002F$postId\" params={{ postId: '42' }}>\n      Post\n    \u003C\u002FStyledLink>\n  )\n}\n```\n\n### Reusable Components with Router Hooks\n\nTo create a component that uses router hooks across multiple routes, pass a union of route paths as the `from` prop:\n\n```tsx\nfunction PostIdDisplay({ from }: { from: '\u002Fposts\u002F$id' | '\u002Fdrafts\u002F$id' }) {\n  const { id } = useParams({ from })\n  return \u003Cspan>ID: {id}\u003C\u002Fspan>\n}\n\n\u002F\u002F Usage in different route components\n\u003CPostIdDisplay from=\"\u002Fposts\u002F$id\" \u002F>\n\u003CPostIdDisplay from=\"\u002Fdrafts\u002F$id\" \u002F>\n```\n\nThis pattern avoids `strict: false` (which returns an imprecise union) while keeping the component reusable across specific known routes.\n\n### Auth Provider Must Wrap RouterProvider\n\nIf routes use auth context (via `createRootRouteWithContext`), the auth provider must be an ancestor of `RouterProvider`:\n\n```tsx\n\u002F\u002F CORRECT — AuthProvider wraps RouterProvider\nfunction App() {\n  return (\n    \u003CAuthProvider>\n      \u003CRouterProvider router={router} \u002F>\n    \u003C\u002FAuthProvider>\n  )\n}\n\n\u002F\u002F WRONG — RouterProvider outside auth provider\nfunction App() {\n  return (\n    \u003CRouterProvider router={router}>\n      \u003CAuthProvider>{\u002F* ... *\u002F}\u003C\u002FAuthProvider>\n    \u003C\u002FRouterProvider>\n  )\n}\n```\n\nOr use the `Wrap` router option to provide context without wrapping externally:\n\n```tsx\nconst router = createRouter({\n  routeTree,\n  Wrap: ({ children }) => (\n    \u003CQueryClientProvider client={queryClient}>{children}\u003C\u002FQueryClientProvider>\n  ),\n})\n```\n\n## Common Mistakes\n\n### 1. HIGH: Using React hooks in `beforeLoad` or `loader`\n\n`beforeLoad` and `loader` are NOT React components — they are plain async functions. React hooks cannot be called in them. Pass auth state via router context instead.\n\n```tsx\n\u002F\u002F WRONG — useAuth is a React hook, cannot be called here\nbeforeLoad: () => {\n  const auth = useAuth()\n  if (!auth.user) throw redirect({ to: '\u002Flogin' })\n}\n\n\u002F\u002F CORRECT — read auth from router context\nbeforeLoad: ({ context }) => {\n  if (!context.auth.isAuthenticated) {\n    throw redirect({ to: '\u002Flogin' })\n  }\n}\n```\n\n### 2. HIGH: Wrapping RouterProvider inside an auth provider incorrectly\n\nCreate the router once with an `undefined!` placeholder, then inject live auth via `RouterProvider`'s `context` prop. Do NOT recreate the router on auth changes — this resets caches and rebuilds the tree.\n\n```tsx\n\u002F\u002F CORRECT — create router once, inject live auth via context prop\nconst router = createRouter({\n  routeTree,\n  context: { auth: undefined! }, \u002F\u002F placeholder, filled by RouterProvider\n})\n\nfunction InnerApp() {\n  const auth = useAuth()\n  return \u003CRouterProvider router={router} context={{ auth }} \u002F>\n}\n\nfunction App() {\n  return (\n    \u003CAuthProvider>\n      \u003CInnerApp \u002F>\n    \u003C\u002FAuthProvider>\n  )\n}\n```\n\n### 3. MEDIUM: Missing Suspense boundary for `Await`\u002Fdeferred data\n\n`Await` requires a `\u003CSuspense>` ancestor. Without it, the deferred promise has no fallback UI and throws.\n\n```tsx\n\u002F\u002F WRONG — no Suspense boundary\n\u003CAwait promise={deferredData}>{(data) => \u003Cdiv>{data}\u003C\u002Fdiv>}\u003C\u002FAwait>\n\n\u002F\u002F CORRECT — wrap in Suspense\n\u003CSuspense fallback={\u003Cdiv>Loading...\u003C\u002Fdiv>}>\n  \u003CAwait promise={deferredData}>{(data) => \u003Cdiv>{data}\u003C\u002Fdiv>}\u003C\u002FAwait>\n\u003C\u002FSuspense>\n```\n\n## Cross-References\n\n- [router-core\u002FSKILL.md](..\u002F..\u002F..\u002Frouter-core\u002Fskills\u002Frouter-core\u002FSKILL.md) — all sub-skills for domain-specific patterns (search params, data loading, navigation, auth, SSR, etc.)\n",{"data":49,"body":59},{"name":4,"description":6,"metadata":50,"requires":53,"sources":55},{"type":29,"library":51,"library_version":52,"framework":14},"tanstack-router","1.166.2",[54],"router-core",[56,57,58],"TanStack\u002Frouter:packages\u002Freact-router\u002Fsrc","TanStack\u002Frouter:docs\u002Frouter\u002Fguide\u002Fcreating-a-router.md","TanStack\u002Frouter:docs\u002Frouter\u002Finstallation\u002Fmanual.md",{"type":60,"children":61},"root",[62,80,94,143,150,157,218,224,558,564,1077,1083,1292,1496,1502,2056,2062,2073,2083,2088,2259,2269,2289,2499,2509,2522,2832,2842,2847,3035,3045,3050,3235,3245,3250,3438,3448,3453,3648,3654,3665,3819,3825,3834,3839,3874,3883,3895,3991,4000,4005,4149,4159,4164,4281,4291,4296,4829,4839,4852,5067,5073,5085,5097,5579,5585,5597,5867,5880,5886,5905,6156,6169,6319,6325,6344,6360,6666,6672,6699,7005,7018,7036,7278,7284,7297],{"type":63,"tag":64,"props":65,"children":67},"element","h1",{"id":66},"react-router-tanstackreact-router",[68,71,78],{"type":69,"value":70},"text","React Router (",{"type":63,"tag":72,"props":73,"children":75},"code",{"className":74},[],[76],{"type":69,"value":77},"@tanstack\u002Freact-router",{"type":69,"value":79},")",{"type":63,"tag":81,"props":82,"children":83},"p",{},[84,86,92],{"type":69,"value":85},"This skill builds on router-core. Read ",{"type":63,"tag":87,"props":88,"children":90},"a",{"href":89},"..\u002F..\u002F..\u002Frouter-core\u002Fskills\u002Frouter-core\u002FSKILL.md",[91],{"type":69,"value":54},{"type":69,"value":93}," first for foundational concepts.",{"type":63,"tag":95,"props":96,"children":97},"blockquote",{},[98],{"type":63,"tag":81,"props":99,"children":100},{},[101,107,109,113,115,119,121,126,128,134,136,141],{"type":63,"tag":102,"props":103,"children":104},"strong",{},[105],{"type":69,"value":106},"CRITICAL",{"type":69,"value":108},": TanStack Router types are FULLY INFERRED. Never cast, never annotate inferred values.\n",{"type":63,"tag":102,"props":110,"children":111},{},[112],{"type":69,"value":106},{"type":69,"value":114},": TanStack Router is CLIENT-FIRST. Loaders run on the client by default, not on the server.\n",{"type":63,"tag":102,"props":116,"children":117},{},[118],{"type":69,"value":106},{"type":69,"value":120},": Do not confuse ",{"type":63,"tag":72,"props":122,"children":124},{"className":123},[],[125],{"type":69,"value":77},{"type":69,"value":127}," with ",{"type":63,"tag":72,"props":129,"children":131},{"className":130},[],[132],{"type":69,"value":133},"react-router-dom",{"type":69,"value":135},"\u002F",{"type":63,"tag":72,"props":137,"children":139},{"className":138},[],[140],{"type":69,"value":4},{"type":69,"value":142},". They are completely different libraries with different APIs.",{"type":63,"tag":144,"props":145,"children":147},"h2",{"id":146},"full-setup-file-based-routing-with-vite",[148],{"type":69,"value":149},"Full Setup: File-Based Routing with Vite",{"type":63,"tag":151,"props":152,"children":154},"h3",{"id":153},"_1-install-dependencies",[155],{"type":69,"value":156},"1. Install Dependencies",{"type":63,"tag":158,"props":159,"children":164},"pre",{"className":160,"code":161,"language":162,"meta":163,"style":163},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","npm install @tanstack\u002Freact-router\nnpm install -D @tanstack\u002Frouter-plugin @tanstack\u002Freact-router-devtools\n","bash","",[165],{"type":63,"tag":72,"props":166,"children":167},{"__ignoreMap":163},[168,191],{"type":63,"tag":169,"props":170,"children":173},"span",{"class":171,"line":172},"line",1,[174,180,186],{"type":63,"tag":169,"props":175,"children":177},{"style":176},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[178],{"type":69,"value":179},"npm",{"type":63,"tag":169,"props":181,"children":183},{"style":182},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[184],{"type":69,"value":185}," install",{"type":63,"tag":169,"props":187,"children":188},{"style":182},[189],{"type":69,"value":190}," @tanstack\u002Freact-router\n",{"type":63,"tag":169,"props":192,"children":194},{"class":171,"line":193},2,[195,199,203,208,213],{"type":63,"tag":169,"props":196,"children":197},{"style":176},[198],{"type":69,"value":179},{"type":63,"tag":169,"props":200,"children":201},{"style":182},[202],{"type":69,"value":185},{"type":63,"tag":169,"props":204,"children":205},{"style":182},[206],{"type":69,"value":207}," -D",{"type":63,"tag":169,"props":209,"children":210},{"style":182},[211],{"type":69,"value":212}," @tanstack\u002Frouter-plugin",{"type":63,"tag":169,"props":214,"children":215},{"style":182},[216],{"type":69,"value":217}," @tanstack\u002Freact-router-devtools\n",{"type":63,"tag":151,"props":219,"children":221},{"id":220},"_2-configure-vite-plugin",[222],{"type":69,"value":223},"2. Configure Vite Plugin",{"type":63,"tag":158,"props":225,"children":229},{"className":226,"code":227,"language":228,"meta":163,"style":163},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u002F\u002F vite.config.ts\nimport { defineConfig } from 'vite'\nimport react from '@vitejs\u002Fplugin-react'\nimport { tanstackRouter } from '@tanstack\u002Frouter-plugin\u002Fvite'\n\nexport default defineConfig({\n  plugins: [\n    \u002F\u002F MUST come before react()\n    tanstackRouter({\n      target: 'react',\n      autoCodeSplitting: true,\n    }),\n    react(),\n  ],\n})\n","ts",[230],{"type":63,"tag":72,"props":231,"children":232},{"__ignoreMap":163},[233,242,288,319,357,367,396,416,425,442,473,496,513,531,544],{"type":63,"tag":169,"props":234,"children":235},{"class":171,"line":172},[236],{"type":63,"tag":169,"props":237,"children":239},{"style":238},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic",[240],{"type":69,"value":241},"\u002F\u002F vite.config.ts\n",{"type":63,"tag":169,"props":243,"children":244},{"class":171,"line":193},[245,251,257,263,268,273,278,283],{"type":63,"tag":169,"props":246,"children":248},{"style":247},"--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic",[249],{"type":69,"value":250},"import",{"type":63,"tag":169,"props":252,"children":254},{"style":253},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[255],{"type":69,"value":256}," {",{"type":63,"tag":169,"props":258,"children":260},{"style":259},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[261],{"type":69,"value":262}," defineConfig",{"type":63,"tag":169,"props":264,"children":265},{"style":253},[266],{"type":69,"value":267}," }",{"type":63,"tag":169,"props":269,"children":270},{"style":247},[271],{"type":69,"value":272}," from",{"type":63,"tag":169,"props":274,"children":275},{"style":253},[276],{"type":69,"value":277}," '",{"type":63,"tag":169,"props":279,"children":280},{"style":182},[281],{"type":69,"value":282},"vite",{"type":63,"tag":169,"props":284,"children":285},{"style":253},[286],{"type":69,"value":287},"'\n",{"type":63,"tag":169,"props":289,"children":291},{"class":171,"line":290},3,[292,296,301,306,310,315],{"type":63,"tag":169,"props":293,"children":294},{"style":247},[295],{"type":69,"value":250},{"type":63,"tag":169,"props":297,"children":298},{"style":259},[299],{"type":69,"value":300}," react ",{"type":63,"tag":169,"props":302,"children":303},{"style":247},[304],{"type":69,"value":305},"from",{"type":63,"tag":169,"props":307,"children":308},{"style":253},[309],{"type":69,"value":277},{"type":63,"tag":169,"props":311,"children":312},{"style":182},[313],{"type":69,"value":314},"@vitejs\u002Fplugin-react",{"type":63,"tag":169,"props":316,"children":317},{"style":253},[318],{"type":69,"value":287},{"type":63,"tag":169,"props":320,"children":322},{"class":171,"line":321},4,[323,327,331,336,340,344,348,353],{"type":63,"tag":169,"props":324,"children":325},{"style":247},[326],{"type":69,"value":250},{"type":63,"tag":169,"props":328,"children":329},{"style":253},[330],{"type":69,"value":256},{"type":63,"tag":169,"props":332,"children":333},{"style":259},[334],{"type":69,"value":335}," tanstackRouter",{"type":63,"tag":169,"props":337,"children":338},{"style":253},[339],{"type":69,"value":267},{"type":63,"tag":169,"props":341,"children":342},{"style":247},[343],{"type":69,"value":272},{"type":63,"tag":169,"props":345,"children":346},{"style":253},[347],{"type":69,"value":277},{"type":63,"tag":169,"props":349,"children":350},{"style":182},[351],{"type":69,"value":352},"@tanstack\u002Frouter-plugin\u002Fvite",{"type":63,"tag":169,"props":354,"children":355},{"style":253},[356],{"type":69,"value":287},{"type":63,"tag":169,"props":358,"children":360},{"class":171,"line":359},5,[361],{"type":63,"tag":169,"props":362,"children":364},{"emptyLinePlaceholder":363},true,[365],{"type":69,"value":366},"\n",{"type":63,"tag":169,"props":368,"children":370},{"class":171,"line":369},6,[371,376,381,386,391],{"type":63,"tag":169,"props":372,"children":373},{"style":247},[374],{"type":69,"value":375},"export",{"type":63,"tag":169,"props":377,"children":378},{"style":247},[379],{"type":69,"value":380}," default",{"type":63,"tag":169,"props":382,"children":384},{"style":383},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[385],{"type":69,"value":262},{"type":63,"tag":169,"props":387,"children":388},{"style":259},[389],{"type":69,"value":390},"(",{"type":63,"tag":169,"props":392,"children":393},{"style":253},[394],{"type":69,"value":395},"{\n",{"type":63,"tag":169,"props":397,"children":399},{"class":171,"line":398},7,[400,406,411],{"type":63,"tag":169,"props":401,"children":403},{"style":402},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[404],{"type":69,"value":405},"  plugins",{"type":63,"tag":169,"props":407,"children":408},{"style":253},[409],{"type":69,"value":410},":",{"type":63,"tag":169,"props":412,"children":413},{"style":259},[414],{"type":69,"value":415}," [\n",{"type":63,"tag":169,"props":417,"children":419},{"class":171,"line":418},8,[420],{"type":63,"tag":169,"props":421,"children":422},{"style":238},[423],{"type":69,"value":424},"    \u002F\u002F MUST come before react()\n",{"type":63,"tag":169,"props":426,"children":428},{"class":171,"line":427},9,[429,434,438],{"type":63,"tag":169,"props":430,"children":431},{"style":383},[432],{"type":69,"value":433},"    tanstackRouter",{"type":63,"tag":169,"props":435,"children":436},{"style":259},[437],{"type":69,"value":390},{"type":63,"tag":169,"props":439,"children":440},{"style":253},[441],{"type":69,"value":395},{"type":63,"tag":169,"props":443,"children":445},{"class":171,"line":444},10,[446,451,455,459,463,468],{"type":63,"tag":169,"props":447,"children":448},{"style":402},[449],{"type":69,"value":450},"      target",{"type":63,"tag":169,"props":452,"children":453},{"style":253},[454],{"type":69,"value":410},{"type":63,"tag":169,"props":456,"children":457},{"style":253},[458],{"type":69,"value":277},{"type":63,"tag":169,"props":460,"children":461},{"style":182},[462],{"type":69,"value":14},{"type":63,"tag":169,"props":464,"children":465},{"style":253},[466],{"type":69,"value":467},"'",{"type":63,"tag":169,"props":469,"children":470},{"style":253},[471],{"type":69,"value":472},",\n",{"type":63,"tag":169,"props":474,"children":476},{"class":171,"line":475},11,[477,482,486,492],{"type":63,"tag":169,"props":478,"children":479},{"style":402},[480],{"type":69,"value":481},"      autoCodeSplitting",{"type":63,"tag":169,"props":483,"children":484},{"style":253},[485],{"type":69,"value":410},{"type":63,"tag":169,"props":487,"children":489},{"style":488},"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC",[490],{"type":69,"value":491}," true",{"type":63,"tag":169,"props":493,"children":494},{"style":253},[495],{"type":69,"value":472},{"type":63,"tag":169,"props":497,"children":499},{"class":171,"line":498},12,[500,505,509],{"type":63,"tag":169,"props":501,"children":502},{"style":253},[503],{"type":69,"value":504},"    }",{"type":63,"tag":169,"props":506,"children":507},{"style":259},[508],{"type":69,"value":79},{"type":63,"tag":169,"props":510,"children":511},{"style":253},[512],{"type":69,"value":472},{"type":63,"tag":169,"props":514,"children":516},{"class":171,"line":515},13,[517,522,527],{"type":63,"tag":169,"props":518,"children":519},{"style":383},[520],{"type":69,"value":521},"    react",{"type":63,"tag":169,"props":523,"children":524},{"style":259},[525],{"type":69,"value":526},"()",{"type":63,"tag":169,"props":528,"children":529},{"style":253},[530],{"type":69,"value":472},{"type":63,"tag":169,"props":532,"children":534},{"class":171,"line":533},14,[535,540],{"type":63,"tag":169,"props":536,"children":537},{"style":259},[538],{"type":69,"value":539},"  ]",{"type":63,"tag":169,"props":541,"children":542},{"style":253},[543],{"type":69,"value":472},{"type":63,"tag":169,"props":545,"children":547},{"class":171,"line":546},15,[548,553],{"type":63,"tag":169,"props":549,"children":550},{"style":253},[551],{"type":69,"value":552},"}",{"type":63,"tag":169,"props":554,"children":555},{"style":259},[556],{"type":69,"value":557},")\n",{"type":63,"tag":151,"props":559,"children":561},{"id":560},"_3-create-root-route",[562],{"type":69,"value":563},"3. Create Root Route",{"type":63,"tag":158,"props":565,"children":569},{"className":566,"code":567,"language":568,"meta":163,"style":163},"language-tsx shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u002F\u002F src\u002Froutes\u002F__root.tsx\nimport { createRootRoute, Link, Outlet } from '@tanstack\u002Freact-router'\nimport { TanStackRouterDevtools } from '@tanstack\u002Freact-router-devtools'\n\nexport const Route = createRootRoute({\n  component: RootLayout,\n})\n\nfunction RootLayout() {\n  return (\n    \u003C>\n      \u003Cnav>\n        \u003CLink to=\"\u002F\" className=\"[&.active]:font-bold\">\n          Home\n        \u003C\u002FLink>\n        \u003CLink to=\"\u002Fabout\" className=\"[&.active]:font-bold\">\n          About\n        \u003C\u002FLink>\n      \u003C\u002Fnav>\n      \u003Chr \u002F>\n      \u003COutlet \u002F>\n      \u003CTanStackRouterDevtools \u002F>\n    \u003C\u002F>\n  )\n}\n","tsx",[570],{"type":63,"tag":72,"props":571,"children":572},{"__ignoreMap":163},[573,581,636,673,680,715,736,747,754,775,788,796,814,875,883,899,956,965,981,998,1016,1033,1050,1059,1068],{"type":63,"tag":169,"props":574,"children":575},{"class":171,"line":172},[576],{"type":63,"tag":169,"props":577,"children":578},{"style":238},[579],{"type":69,"value":580},"\u002F\u002F src\u002Froutes\u002F__root.tsx\n",{"type":63,"tag":169,"props":582,"children":583},{"class":171,"line":193},[584,588,592,597,602,607,611,616,620,624,628,632],{"type":63,"tag":169,"props":585,"children":586},{"style":247},[587],{"type":69,"value":250},{"type":63,"tag":169,"props":589,"children":590},{"style":253},[591],{"type":69,"value":256},{"type":63,"tag":169,"props":593,"children":594},{"style":259},[595],{"type":69,"value":596}," createRootRoute",{"type":63,"tag":169,"props":598,"children":599},{"style":253},[600],{"type":69,"value":601},",",{"type":63,"tag":169,"props":603,"children":604},{"style":259},[605],{"type":69,"value":606}," Link",{"type":63,"tag":169,"props":608,"children":609},{"style":253},[610],{"type":69,"value":601},{"type":63,"tag":169,"props":612,"children":613},{"style":259},[614],{"type":69,"value":615}," Outlet",{"type":63,"tag":169,"props":617,"children":618},{"style":253},[619],{"type":69,"value":267},{"type":63,"tag":169,"props":621,"children":622},{"style":247},[623],{"type":69,"value":272},{"type":63,"tag":169,"props":625,"children":626},{"style":253},[627],{"type":69,"value":277},{"type":63,"tag":169,"props":629,"children":630},{"style":182},[631],{"type":69,"value":77},{"type":63,"tag":169,"props":633,"children":634},{"style":253},[635],{"type":69,"value":287},{"type":63,"tag":169,"props":637,"children":638},{"class":171,"line":290},[639,643,647,652,656,660,664,669],{"type":63,"tag":169,"props":640,"children":641},{"style":247},[642],{"type":69,"value":250},{"type":63,"tag":169,"props":644,"children":645},{"style":253},[646],{"type":69,"value":256},{"type":63,"tag":169,"props":648,"children":649},{"style":259},[650],{"type":69,"value":651}," TanStackRouterDevtools",{"type":63,"tag":169,"props":653,"children":654},{"style":253},[655],{"type":69,"value":267},{"type":63,"tag":169,"props":657,"children":658},{"style":247},[659],{"type":69,"value":272},{"type":63,"tag":169,"props":661,"children":662},{"style":253},[663],{"type":69,"value":277},{"type":63,"tag":169,"props":665,"children":666},{"style":182},[667],{"type":69,"value":668},"@tanstack\u002Freact-router-devtools",{"type":63,"tag":169,"props":670,"children":671},{"style":253},[672],{"type":69,"value":287},{"type":63,"tag":169,"props":674,"children":675},{"class":171,"line":321},[676],{"type":63,"tag":169,"props":677,"children":678},{"emptyLinePlaceholder":363},[679],{"type":69,"value":366},{"type":63,"tag":169,"props":681,"children":682},{"class":171,"line":359},[683,687,693,698,703,707,711],{"type":63,"tag":169,"props":684,"children":685},{"style":247},[686],{"type":69,"value":375},{"type":63,"tag":169,"props":688,"children":690},{"style":689},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[691],{"type":69,"value":692}," const",{"type":63,"tag":169,"props":694,"children":695},{"style":259},[696],{"type":69,"value":697}," Route ",{"type":63,"tag":169,"props":699,"children":700},{"style":253},[701],{"type":69,"value":702},"=",{"type":63,"tag":169,"props":704,"children":705},{"style":383},[706],{"type":69,"value":596},{"type":63,"tag":169,"props":708,"children":709},{"style":259},[710],{"type":69,"value":390},{"type":63,"tag":169,"props":712,"children":713},{"style":253},[714],{"type":69,"value":395},{"type":63,"tag":169,"props":716,"children":717},{"class":171,"line":369},[718,723,727,732],{"type":63,"tag":169,"props":719,"children":720},{"style":402},[721],{"type":69,"value":722},"  component",{"type":63,"tag":169,"props":724,"children":725},{"style":253},[726],{"type":69,"value":410},{"type":63,"tag":169,"props":728,"children":729},{"style":259},[730],{"type":69,"value":731}," RootLayout",{"type":63,"tag":169,"props":733,"children":734},{"style":253},[735],{"type":69,"value":472},{"type":63,"tag":169,"props":737,"children":738},{"class":171,"line":398},[739,743],{"type":63,"tag":169,"props":740,"children":741},{"style":253},[742],{"type":69,"value":552},{"type":63,"tag":169,"props":744,"children":745},{"style":259},[746],{"type":69,"value":557},{"type":63,"tag":169,"props":748,"children":749},{"class":171,"line":418},[750],{"type":63,"tag":169,"props":751,"children":752},{"emptyLinePlaceholder":363},[753],{"type":69,"value":366},{"type":63,"tag":169,"props":755,"children":756},{"class":171,"line":427},[757,762,766,770],{"type":63,"tag":169,"props":758,"children":759},{"style":689},[760],{"type":69,"value":761},"function",{"type":63,"tag":169,"props":763,"children":764},{"style":383},[765],{"type":69,"value":731},{"type":63,"tag":169,"props":767,"children":768},{"style":253},[769],{"type":69,"value":526},{"type":63,"tag":169,"props":771,"children":772},{"style":253},[773],{"type":69,"value":774}," {\n",{"type":63,"tag":169,"props":776,"children":777},{"class":171,"line":444},[778,783],{"type":63,"tag":169,"props":779,"children":780},{"style":247},[781],{"type":69,"value":782},"  return",{"type":63,"tag":169,"props":784,"children":785},{"style":402},[786],{"type":69,"value":787}," (\n",{"type":63,"tag":169,"props":789,"children":790},{"class":171,"line":475},[791],{"type":63,"tag":169,"props":792,"children":793},{"style":253},[794],{"type":69,"value":795},"    \u003C>\n",{"type":63,"tag":169,"props":797,"children":798},{"class":171,"line":498},[799,804,809],{"type":63,"tag":169,"props":800,"children":801},{"style":253},[802],{"type":69,"value":803},"      \u003C",{"type":63,"tag":169,"props":805,"children":806},{"style":402},[807],{"type":69,"value":808},"nav",{"type":63,"tag":169,"props":810,"children":811},{"style":253},[812],{"type":69,"value":813},">\n",{"type":63,"tag":169,"props":815,"children":816},{"class":171,"line":515},[817,822,827,832,836,841,845,849,854,858,862,867,871],{"type":63,"tag":169,"props":818,"children":819},{"style":253},[820],{"type":69,"value":821},"        \u003C",{"type":63,"tag":169,"props":823,"children":824},{"style":176},[825],{"type":69,"value":826},"Link",{"type":63,"tag":169,"props":828,"children":829},{"style":689},[830],{"type":69,"value":831}," to",{"type":63,"tag":169,"props":833,"children":834},{"style":253},[835],{"type":69,"value":702},{"type":63,"tag":169,"props":837,"children":838},{"style":253},[839],{"type":69,"value":840},"\"",{"type":63,"tag":169,"props":842,"children":843},{"style":182},[844],{"type":69,"value":135},{"type":63,"tag":169,"props":846,"children":847},{"style":253},[848],{"type":69,"value":840},{"type":63,"tag":169,"props":850,"children":851},{"style":689},[852],{"type":69,"value":853}," className",{"type":63,"tag":169,"props":855,"children":856},{"style":253},[857],{"type":69,"value":702},{"type":63,"tag":169,"props":859,"children":860},{"style":253},[861],{"type":69,"value":840},{"type":63,"tag":169,"props":863,"children":864},{"style":182},[865],{"type":69,"value":866},"[&.active]:font-bold",{"type":63,"tag":169,"props":868,"children":869},{"style":253},[870],{"type":69,"value":840},{"type":63,"tag":169,"props":872,"children":873},{"style":253},[874],{"type":69,"value":813},{"type":63,"tag":169,"props":876,"children":877},{"class":171,"line":533},[878],{"type":63,"tag":169,"props":879,"children":880},{"style":259},[881],{"type":69,"value":882},"          Home\n",{"type":63,"tag":169,"props":884,"children":885},{"class":171,"line":546},[886,891,895],{"type":63,"tag":169,"props":887,"children":888},{"style":253},[889],{"type":69,"value":890},"        \u003C\u002F",{"type":63,"tag":169,"props":892,"children":893},{"style":176},[894],{"type":69,"value":826},{"type":63,"tag":169,"props":896,"children":897},{"style":253},[898],{"type":69,"value":813},{"type":63,"tag":169,"props":900,"children":902},{"class":171,"line":901},16,[903,907,911,915,919,923,928,932,936,940,944,948,952],{"type":63,"tag":169,"props":904,"children":905},{"style":253},[906],{"type":69,"value":821},{"type":63,"tag":169,"props":908,"children":909},{"style":176},[910],{"type":69,"value":826},{"type":63,"tag":169,"props":912,"children":913},{"style":689},[914],{"type":69,"value":831},{"type":63,"tag":169,"props":916,"children":917},{"style":253},[918],{"type":69,"value":702},{"type":63,"tag":169,"props":920,"children":921},{"style":253},[922],{"type":69,"value":840},{"type":63,"tag":169,"props":924,"children":925},{"style":182},[926],{"type":69,"value":927},"\u002Fabout",{"type":63,"tag":169,"props":929,"children":930},{"style":253},[931],{"type":69,"value":840},{"type":63,"tag":169,"props":933,"children":934},{"style":689},[935],{"type":69,"value":853},{"type":63,"tag":169,"props":937,"children":938},{"style":253},[939],{"type":69,"value":702},{"type":63,"tag":169,"props":941,"children":942},{"style":253},[943],{"type":69,"value":840},{"type":63,"tag":169,"props":945,"children":946},{"style":182},[947],{"type":69,"value":866},{"type":63,"tag":169,"props":949,"children":950},{"style":253},[951],{"type":69,"value":840},{"type":63,"tag":169,"props":953,"children":954},{"style":253},[955],{"type":69,"value":813},{"type":63,"tag":169,"props":957,"children":959},{"class":171,"line":958},17,[960],{"type":63,"tag":169,"props":961,"children":962},{"style":259},[963],{"type":69,"value":964},"          About\n",{"type":63,"tag":169,"props":966,"children":968},{"class":171,"line":967},18,[969,973,977],{"type":63,"tag":169,"props":970,"children":971},{"style":253},[972],{"type":69,"value":890},{"type":63,"tag":169,"props":974,"children":975},{"style":176},[976],{"type":69,"value":826},{"type":63,"tag":169,"props":978,"children":979},{"style":253},[980],{"type":69,"value":813},{"type":63,"tag":169,"props":982,"children":984},{"class":171,"line":983},19,[985,990,994],{"type":63,"tag":169,"props":986,"children":987},{"style":253},[988],{"type":69,"value":989},"      \u003C\u002F",{"type":63,"tag":169,"props":991,"children":992},{"style":402},[993],{"type":69,"value":808},{"type":63,"tag":169,"props":995,"children":996},{"style":253},[997],{"type":69,"value":813},{"type":63,"tag":169,"props":999,"children":1001},{"class":171,"line":1000},20,[1002,1006,1011],{"type":63,"tag":169,"props":1003,"children":1004},{"style":253},[1005],{"type":69,"value":803},{"type":63,"tag":169,"props":1007,"children":1008},{"style":402},[1009],{"type":69,"value":1010},"hr",{"type":63,"tag":169,"props":1012,"children":1013},{"style":253},[1014],{"type":69,"value":1015}," \u002F>\n",{"type":63,"tag":169,"props":1017,"children":1019},{"class":171,"line":1018},21,[1020,1024,1029],{"type":63,"tag":169,"props":1021,"children":1022},{"style":253},[1023],{"type":69,"value":803},{"type":63,"tag":169,"props":1025,"children":1026},{"style":176},[1027],{"type":69,"value":1028},"Outlet",{"type":63,"tag":169,"props":1030,"children":1031},{"style":253},[1032],{"type":69,"value":1015},{"type":63,"tag":169,"props":1034,"children":1036},{"class":171,"line":1035},22,[1037,1041,1046],{"type":63,"tag":169,"props":1038,"children":1039},{"style":253},[1040],{"type":69,"value":803},{"type":63,"tag":169,"props":1042,"children":1043},{"style":176},[1044],{"type":69,"value":1045},"TanStackRouterDevtools",{"type":63,"tag":169,"props":1047,"children":1048},{"style":253},[1049],{"type":69,"value":1015},{"type":63,"tag":169,"props":1051,"children":1053},{"class":171,"line":1052},23,[1054],{"type":63,"tag":169,"props":1055,"children":1056},{"style":253},[1057],{"type":69,"value":1058},"    \u003C\u002F>\n",{"type":63,"tag":169,"props":1060,"children":1062},{"class":171,"line":1061},24,[1063],{"type":63,"tag":169,"props":1064,"children":1065},{"style":402},[1066],{"type":69,"value":1067},"  )\n",{"type":63,"tag":169,"props":1069,"children":1071},{"class":171,"line":1070},25,[1072],{"type":63,"tag":169,"props":1073,"children":1074},{"style":253},[1075],{"type":69,"value":1076},"}\n",{"type":63,"tag":151,"props":1078,"children":1080},{"id":1079},"_4-create-route-files",[1081],{"type":69,"value":1082},"4. Create Route Files",{"type":63,"tag":158,"props":1084,"children":1086},{"className":566,"code":1085,"language":568,"meta":163,"style":163},"\u002F\u002F src\u002Froutes\u002Findex.tsx\nimport { createFileRoute } from '@tanstack\u002Freact-router'\n\nexport const Route = createFileRoute('\u002F')({\n  component: HomePage,\n})\n\nfunction HomePage() {\n  return \u003Ch1>Welcome Home\u003C\u002Fh1>\n}\n",[1087],{"type":63,"tag":72,"props":1088,"children":1089},{"__ignoreMap":163},[1090,1098,1134,1141,1189,1209,1220,1227,1246,1285],{"type":63,"tag":169,"props":1091,"children":1092},{"class":171,"line":172},[1093],{"type":63,"tag":169,"props":1094,"children":1095},{"style":238},[1096],{"type":69,"value":1097},"\u002F\u002F src\u002Froutes\u002Findex.tsx\n",{"type":63,"tag":169,"props":1099,"children":1100},{"class":171,"line":193},[1101,1105,1109,1114,1118,1122,1126,1130],{"type":63,"tag":169,"props":1102,"children":1103},{"style":247},[1104],{"type":69,"value":250},{"type":63,"tag":169,"props":1106,"children":1107},{"style":253},[1108],{"type":69,"value":256},{"type":63,"tag":169,"props":1110,"children":1111},{"style":259},[1112],{"type":69,"value":1113}," createFileRoute",{"type":63,"tag":169,"props":1115,"children":1116},{"style":253},[1117],{"type":69,"value":267},{"type":63,"tag":169,"props":1119,"children":1120},{"style":247},[1121],{"type":69,"value":272},{"type":63,"tag":169,"props":1123,"children":1124},{"style":253},[1125],{"type":69,"value":277},{"type":63,"tag":169,"props":1127,"children":1128},{"style":182},[1129],{"type":69,"value":77},{"type":63,"tag":169,"props":1131,"children":1132},{"style":253},[1133],{"type":69,"value":287},{"type":63,"tag":169,"props":1135,"children":1136},{"class":171,"line":290},[1137],{"type":63,"tag":169,"props":1138,"children":1139},{"emptyLinePlaceholder":363},[1140],{"type":69,"value":366},{"type":63,"tag":169,"props":1142,"children":1143},{"class":171,"line":321},[1144,1148,1152,1156,1160,1164,1168,1172,1176,1180,1185],{"type":63,"tag":169,"props":1145,"children":1146},{"style":247},[1147],{"type":69,"value":375},{"type":63,"tag":169,"props":1149,"children":1150},{"style":689},[1151],{"type":69,"value":692},{"type":63,"tag":169,"props":1153,"children":1154},{"style":259},[1155],{"type":69,"value":697},{"type":63,"tag":169,"props":1157,"children":1158},{"style":253},[1159],{"type":69,"value":702},{"type":63,"tag":169,"props":1161,"children":1162},{"style":383},[1163],{"type":69,"value":1113},{"type":63,"tag":169,"props":1165,"children":1166},{"style":259},[1167],{"type":69,"value":390},{"type":63,"tag":169,"props":1169,"children":1170},{"style":253},[1171],{"type":69,"value":467},{"type":63,"tag":169,"props":1173,"children":1174},{"style":182},[1175],{"type":69,"value":135},{"type":63,"tag":169,"props":1177,"children":1178},{"style":253},[1179],{"type":69,"value":467},{"type":63,"tag":169,"props":1181,"children":1182},{"style":259},[1183],{"type":69,"value":1184},")(",{"type":63,"tag":169,"props":1186,"children":1187},{"style":253},[1188],{"type":69,"value":395},{"type":63,"tag":169,"props":1190,"children":1191},{"class":171,"line":359},[1192,1196,1200,1205],{"type":63,"tag":169,"props":1193,"children":1194},{"style":402},[1195],{"type":69,"value":722},{"type":63,"tag":169,"props":1197,"children":1198},{"style":253},[1199],{"type":69,"value":410},{"type":63,"tag":169,"props":1201,"children":1202},{"style":259},[1203],{"type":69,"value":1204}," HomePage",{"type":63,"tag":169,"props":1206,"children":1207},{"style":253},[1208],{"type":69,"value":472},{"type":63,"tag":169,"props":1210,"children":1211},{"class":171,"line":369},[1212,1216],{"type":63,"tag":169,"props":1213,"children":1214},{"style":253},[1215],{"type":69,"value":552},{"type":63,"tag":169,"props":1217,"children":1218},{"style":259},[1219],{"type":69,"value":557},{"type":63,"tag":169,"props":1221,"children":1222},{"class":171,"line":398},[1223],{"type":63,"tag":169,"props":1224,"children":1225},{"emptyLinePlaceholder":363},[1226],{"type":69,"value":366},{"type":63,"tag":169,"props":1228,"children":1229},{"class":171,"line":418},[1230,1234,1238,1242],{"type":63,"tag":169,"props":1231,"children":1232},{"style":689},[1233],{"type":69,"value":761},{"type":63,"tag":169,"props":1235,"children":1236},{"style":383},[1237],{"type":69,"value":1204},{"type":63,"tag":169,"props":1239,"children":1240},{"style":253},[1241],{"type":69,"value":526},{"type":63,"tag":169,"props":1243,"children":1244},{"style":253},[1245],{"type":69,"value":774},{"type":63,"tag":169,"props":1247,"children":1248},{"class":171,"line":427},[1249,1253,1258,1262,1267,1272,1277,1281],{"type":63,"tag":169,"props":1250,"children":1251},{"style":247},[1252],{"type":69,"value":782},{"type":63,"tag":169,"props":1254,"children":1255},{"style":253},[1256],{"type":69,"value":1257}," \u003C",{"type":63,"tag":169,"props":1259,"children":1260},{"style":402},[1261],{"type":69,"value":64},{"type":63,"tag":169,"props":1263,"children":1264},{"style":253},[1265],{"type":69,"value":1266},">",{"type":63,"tag":169,"props":1268,"children":1269},{"style":259},[1270],{"type":69,"value":1271},"Welcome Home",{"type":63,"tag":169,"props":1273,"children":1274},{"style":253},[1275],{"type":69,"value":1276},"\u003C\u002F",{"type":63,"tag":169,"props":1278,"children":1279},{"style":402},[1280],{"type":69,"value":64},{"type":63,"tag":169,"props":1282,"children":1283},{"style":253},[1284],{"type":69,"value":813},{"type":63,"tag":169,"props":1286,"children":1287},{"class":171,"line":444},[1288],{"type":63,"tag":169,"props":1289,"children":1290},{"style":253},[1291],{"type":69,"value":1076},{"type":63,"tag":158,"props":1293,"children":1295},{"className":566,"code":1294,"language":568,"meta":163,"style":163},"\u002F\u002F src\u002Froutes\u002Fabout.tsx\nimport { createFileRoute } from '@tanstack\u002Freact-router'\n\nexport const Route = createFileRoute('\u002Fabout')({\n  component: AboutPage,\n})\n\nfunction AboutPage() {\n  return \u003Ch1>About\u003C\u002Fh1>\n}\n",[1296],{"type":63,"tag":72,"props":1297,"children":1298},{"__ignoreMap":163},[1299,1307,1342,1349,1396,1416,1427,1434,1453,1489],{"type":63,"tag":169,"props":1300,"children":1301},{"class":171,"line":172},[1302],{"type":63,"tag":169,"props":1303,"children":1304},{"style":238},[1305],{"type":69,"value":1306},"\u002F\u002F src\u002Froutes\u002Fabout.tsx\n",{"type":63,"tag":169,"props":1308,"children":1309},{"class":171,"line":193},[1310,1314,1318,1322,1326,1330,1334,1338],{"type":63,"tag":169,"props":1311,"children":1312},{"style":247},[1313],{"type":69,"value":250},{"type":63,"tag":169,"props":1315,"children":1316},{"style":253},[1317],{"type":69,"value":256},{"type":63,"tag":169,"props":1319,"children":1320},{"style":259},[1321],{"type":69,"value":1113},{"type":63,"tag":169,"props":1323,"children":1324},{"style":253},[1325],{"type":69,"value":267},{"type":63,"tag":169,"props":1327,"children":1328},{"style":247},[1329],{"type":69,"value":272},{"type":63,"tag":169,"props":1331,"children":1332},{"style":253},[1333],{"type":69,"value":277},{"type":63,"tag":169,"props":1335,"children":1336},{"style":182},[1337],{"type":69,"value":77},{"type":63,"tag":169,"props":1339,"children":1340},{"style":253},[1341],{"type":69,"value":287},{"type":63,"tag":169,"props":1343,"children":1344},{"class":171,"line":290},[1345],{"type":63,"tag":169,"props":1346,"children":1347},{"emptyLinePlaceholder":363},[1348],{"type":69,"value":366},{"type":63,"tag":169,"props":1350,"children":1351},{"class":171,"line":321},[1352,1356,1360,1364,1368,1372,1376,1380,1384,1388,1392],{"type":63,"tag":169,"props":1353,"children":1354},{"style":247},[1355],{"type":69,"value":375},{"type":63,"tag":169,"props":1357,"children":1358},{"style":689},[1359],{"type":69,"value":692},{"type":63,"tag":169,"props":1361,"children":1362},{"style":259},[1363],{"type":69,"value":697},{"type":63,"tag":169,"props":1365,"children":1366},{"style":253},[1367],{"type":69,"value":702},{"type":63,"tag":169,"props":1369,"children":1370},{"style":383},[1371],{"type":69,"value":1113},{"type":63,"tag":169,"props":1373,"children":1374},{"style":259},[1375],{"type":69,"value":390},{"type":63,"tag":169,"props":1377,"children":1378},{"style":253},[1379],{"type":69,"value":467},{"type":63,"tag":169,"props":1381,"children":1382},{"style":182},[1383],{"type":69,"value":927},{"type":63,"tag":169,"props":1385,"children":1386},{"style":253},[1387],{"type":69,"value":467},{"type":63,"tag":169,"props":1389,"children":1390},{"style":259},[1391],{"type":69,"value":1184},{"type":63,"tag":169,"props":1393,"children":1394},{"style":253},[1395],{"type":69,"value":395},{"type":63,"tag":169,"props":1397,"children":1398},{"class":171,"line":359},[1399,1403,1407,1412],{"type":63,"tag":169,"props":1400,"children":1401},{"style":402},[1402],{"type":69,"value":722},{"type":63,"tag":169,"props":1404,"children":1405},{"style":253},[1406],{"type":69,"value":410},{"type":63,"tag":169,"props":1408,"children":1409},{"style":259},[1410],{"type":69,"value":1411}," AboutPage",{"type":63,"tag":169,"props":1413,"children":1414},{"style":253},[1415],{"type":69,"value":472},{"type":63,"tag":169,"props":1417,"children":1418},{"class":171,"line":369},[1419,1423],{"type":63,"tag":169,"props":1420,"children":1421},{"style":253},[1422],{"type":69,"value":552},{"type":63,"tag":169,"props":1424,"children":1425},{"style":259},[1426],{"type":69,"value":557},{"type":63,"tag":169,"props":1428,"children":1429},{"class":171,"line":398},[1430],{"type":63,"tag":169,"props":1431,"children":1432},{"emptyLinePlaceholder":363},[1433],{"type":69,"value":366},{"type":63,"tag":169,"props":1435,"children":1436},{"class":171,"line":418},[1437,1441,1445,1449],{"type":63,"tag":169,"props":1438,"children":1439},{"style":689},[1440],{"type":69,"value":761},{"type":63,"tag":169,"props":1442,"children":1443},{"style":383},[1444],{"type":69,"value":1411},{"type":63,"tag":169,"props":1446,"children":1447},{"style":253},[1448],{"type":69,"value":526},{"type":63,"tag":169,"props":1450,"children":1451},{"style":253},[1452],{"type":69,"value":774},{"type":63,"tag":169,"props":1454,"children":1455},{"class":171,"line":427},[1456,1460,1464,1468,1472,1477,1481,1485],{"type":63,"tag":169,"props":1457,"children":1458},{"style":247},[1459],{"type":69,"value":782},{"type":63,"tag":169,"props":1461,"children":1462},{"style":253},[1463],{"type":69,"value":1257},{"type":63,"tag":169,"props":1465,"children":1466},{"style":402},[1467],{"type":69,"value":64},{"type":63,"tag":169,"props":1469,"children":1470},{"style":253},[1471],{"type":69,"value":1266},{"type":63,"tag":169,"props":1473,"children":1474},{"style":259},[1475],{"type":69,"value":1476},"About",{"type":63,"tag":169,"props":1478,"children":1479},{"style":253},[1480],{"type":69,"value":1276},{"type":63,"tag":169,"props":1482,"children":1483},{"style":402},[1484],{"type":69,"value":64},{"type":63,"tag":169,"props":1486,"children":1487},{"style":253},[1488],{"type":69,"value":813},{"type":63,"tag":169,"props":1490,"children":1491},{"class":171,"line":444},[1492],{"type":63,"tag":169,"props":1493,"children":1494},{"style":253},[1495],{"type":69,"value":1076},{"type":63,"tag":151,"props":1497,"children":1499},{"id":1498},"_5-create-router-instance-and-register-types",[1500],{"type":69,"value":1501},"5. Create Router Instance and Register Types",{"type":63,"tag":158,"props":1503,"children":1505},{"className":566,"code":1504,"language":568,"meta":163,"style":163},"\u002F\u002F src\u002Fmain.tsx\nimport { StrictMode } from 'react'\nimport ReactDOM from 'react-dom\u002Fclient'\nimport { RouterProvider, createRouter } from '@tanstack\u002Freact-router'\nimport { routeTree } from '.\u002FrouteTree.gen'\n\nconst router = createRouter({ routeTree })\n\n\u002F\u002F REQUIRED — without this, Link\u002FuseNavigate\u002FuseSearch have no type safety\ndeclare module '@tanstack\u002Freact-router' {\n  interface Register {\n    router: typeof router\n  }\n}\n\nconst rootElement = document.getElementById('root')!\nif (!rootElement.innerHTML) {\n  const root = ReactDOM.createRoot(rootElement)\n  root.render(\n    \u003CStrictMode>\n      \u003CRouterProvider router={router} \u002F>\n    \u003C\u002FStrictMode>,\n  )\n}\n",[1506],{"type":63,"tag":72,"props":1507,"children":1508},{"__ignoreMap":163},[1509,1517,1553,1582,1627,1664,1671,1714,1721,1729,1758,1775,1797,1805,1812,1819,1875,1911,1955,1977,1994,2025,2042,2049],{"type":63,"tag":169,"props":1510,"children":1511},{"class":171,"line":172},[1512],{"type":63,"tag":169,"props":1513,"children":1514},{"style":238},[1515],{"type":69,"value":1516},"\u002F\u002F src\u002Fmain.tsx\n",{"type":63,"tag":169,"props":1518,"children":1519},{"class":171,"line":193},[1520,1524,1528,1533,1537,1541,1545,1549],{"type":63,"tag":169,"props":1521,"children":1522},{"style":247},[1523],{"type":69,"value":250},{"type":63,"tag":169,"props":1525,"children":1526},{"style":253},[1527],{"type":69,"value":256},{"type":63,"tag":169,"props":1529,"children":1530},{"style":259},[1531],{"type":69,"value":1532}," StrictMode",{"type":63,"tag":169,"props":1534,"children":1535},{"style":253},[1536],{"type":69,"value":267},{"type":63,"tag":169,"props":1538,"children":1539},{"style":247},[1540],{"type":69,"value":272},{"type":63,"tag":169,"props":1542,"children":1543},{"style":253},[1544],{"type":69,"value":277},{"type":63,"tag":169,"props":1546,"children":1547},{"style":182},[1548],{"type":69,"value":14},{"type":63,"tag":169,"props":1550,"children":1551},{"style":253},[1552],{"type":69,"value":287},{"type":63,"tag":169,"props":1554,"children":1555},{"class":171,"line":290},[1556,1560,1565,1569,1573,1578],{"type":63,"tag":169,"props":1557,"children":1558},{"style":247},[1559],{"type":69,"value":250},{"type":63,"tag":169,"props":1561,"children":1562},{"style":259},[1563],{"type":69,"value":1564}," ReactDOM ",{"type":63,"tag":169,"props":1566,"children":1567},{"style":247},[1568],{"type":69,"value":305},{"type":63,"tag":169,"props":1570,"children":1571},{"style":253},[1572],{"type":69,"value":277},{"type":63,"tag":169,"props":1574,"children":1575},{"style":182},[1576],{"type":69,"value":1577},"react-dom\u002Fclient",{"type":63,"tag":169,"props":1579,"children":1580},{"style":253},[1581],{"type":69,"value":287},{"type":63,"tag":169,"props":1583,"children":1584},{"class":171,"line":321},[1585,1589,1593,1598,1602,1607,1611,1615,1619,1623],{"type":63,"tag":169,"props":1586,"children":1587},{"style":247},[1588],{"type":69,"value":250},{"type":63,"tag":169,"props":1590,"children":1591},{"style":253},[1592],{"type":69,"value":256},{"type":63,"tag":169,"props":1594,"children":1595},{"style":259},[1596],{"type":69,"value":1597}," RouterProvider",{"type":63,"tag":169,"props":1599,"children":1600},{"style":253},[1601],{"type":69,"value":601},{"type":63,"tag":169,"props":1603,"children":1604},{"style":259},[1605],{"type":69,"value":1606}," createRouter",{"type":63,"tag":169,"props":1608,"children":1609},{"style":253},[1610],{"type":69,"value":267},{"type":63,"tag":169,"props":1612,"children":1613},{"style":247},[1614],{"type":69,"value":272},{"type":63,"tag":169,"props":1616,"children":1617},{"style":253},[1618],{"type":69,"value":277},{"type":63,"tag":169,"props":1620,"children":1621},{"style":182},[1622],{"type":69,"value":77},{"type":63,"tag":169,"props":1624,"children":1625},{"style":253},[1626],{"type":69,"value":287},{"type":63,"tag":169,"props":1628,"children":1629},{"class":171,"line":359},[1630,1634,1638,1643,1647,1651,1655,1660],{"type":63,"tag":169,"props":1631,"children":1632},{"style":247},[1633],{"type":69,"value":250},{"type":63,"tag":169,"props":1635,"children":1636},{"style":253},[1637],{"type":69,"value":256},{"type":63,"tag":169,"props":1639,"children":1640},{"style":259},[1641],{"type":69,"value":1642}," routeTree",{"type":63,"tag":169,"props":1644,"children":1645},{"style":253},[1646],{"type":69,"value":267},{"type":63,"tag":169,"props":1648,"children":1649},{"style":247},[1650],{"type":69,"value":272},{"type":63,"tag":169,"props":1652,"children":1653},{"style":253},[1654],{"type":69,"value":277},{"type":63,"tag":169,"props":1656,"children":1657},{"style":182},[1658],{"type":69,"value":1659},".\u002FrouteTree.gen",{"type":63,"tag":169,"props":1661,"children":1662},{"style":253},[1663],{"type":69,"value":287},{"type":63,"tag":169,"props":1665,"children":1666},{"class":171,"line":369},[1667],{"type":63,"tag":169,"props":1668,"children":1669},{"emptyLinePlaceholder":363},[1670],{"type":69,"value":366},{"type":63,"tag":169,"props":1672,"children":1673},{"class":171,"line":398},[1674,1679,1684,1688,1692,1696,1701,1706,1710],{"type":63,"tag":169,"props":1675,"children":1676},{"style":689},[1677],{"type":69,"value":1678},"const",{"type":63,"tag":169,"props":1680,"children":1681},{"style":259},[1682],{"type":69,"value":1683}," router ",{"type":63,"tag":169,"props":1685,"children":1686},{"style":253},[1687],{"type":69,"value":702},{"type":63,"tag":169,"props":1689,"children":1690},{"style":383},[1691],{"type":69,"value":1606},{"type":63,"tag":169,"props":1693,"children":1694},{"style":259},[1695],{"type":69,"value":390},{"type":63,"tag":169,"props":1697,"children":1698},{"style":253},[1699],{"type":69,"value":1700},"{",{"type":63,"tag":169,"props":1702,"children":1703},{"style":259},[1704],{"type":69,"value":1705}," routeTree ",{"type":63,"tag":169,"props":1707,"children":1708},{"style":253},[1709],{"type":69,"value":552},{"type":63,"tag":169,"props":1711,"children":1712},{"style":259},[1713],{"type":69,"value":557},{"type":63,"tag":169,"props":1715,"children":1716},{"class":171,"line":418},[1717],{"type":63,"tag":169,"props":1718,"children":1719},{"emptyLinePlaceholder":363},[1720],{"type":69,"value":366},{"type":63,"tag":169,"props":1722,"children":1723},{"class":171,"line":427},[1724],{"type":63,"tag":169,"props":1725,"children":1726},{"style":238},[1727],{"type":69,"value":1728},"\u002F\u002F REQUIRED — without this, Link\u002FuseNavigate\u002FuseSearch have no type safety\n",{"type":63,"tag":169,"props":1730,"children":1731},{"class":171,"line":444},[1732,1737,1742,1746,1750,1754],{"type":63,"tag":169,"props":1733,"children":1734},{"style":689},[1735],{"type":69,"value":1736},"declare",{"type":63,"tag":169,"props":1738,"children":1739},{"style":689},[1740],{"type":69,"value":1741}," module",{"type":63,"tag":169,"props":1743,"children":1744},{"style":253},[1745],{"type":69,"value":277},{"type":63,"tag":169,"props":1747,"children":1748},{"style":182},[1749],{"type":69,"value":77},{"type":63,"tag":169,"props":1751,"children":1752},{"style":253},[1753],{"type":69,"value":467},{"type":63,"tag":169,"props":1755,"children":1756},{"style":253},[1757],{"type":69,"value":774},{"type":63,"tag":169,"props":1759,"children":1760},{"class":171,"line":475},[1761,1766,1771],{"type":63,"tag":169,"props":1762,"children":1763},{"style":689},[1764],{"type":69,"value":1765},"  interface",{"type":63,"tag":169,"props":1767,"children":1768},{"style":176},[1769],{"type":69,"value":1770}," Register",{"type":63,"tag":169,"props":1772,"children":1773},{"style":253},[1774],{"type":69,"value":774},{"type":63,"tag":169,"props":1776,"children":1777},{"class":171,"line":498},[1778,1783,1787,1792],{"type":63,"tag":169,"props":1779,"children":1780},{"style":402},[1781],{"type":69,"value":1782},"    router",{"type":63,"tag":169,"props":1784,"children":1785},{"style":253},[1786],{"type":69,"value":410},{"type":63,"tag":169,"props":1788,"children":1789},{"style":253},[1790],{"type":69,"value":1791}," typeof",{"type":63,"tag":169,"props":1793,"children":1794},{"style":259},[1795],{"type":69,"value":1796}," router\n",{"type":63,"tag":169,"props":1798,"children":1799},{"class":171,"line":515},[1800],{"type":63,"tag":169,"props":1801,"children":1802},{"style":253},[1803],{"type":69,"value":1804},"  }\n",{"type":63,"tag":169,"props":1806,"children":1807},{"class":171,"line":533},[1808],{"type":63,"tag":169,"props":1809,"children":1810},{"style":253},[1811],{"type":69,"value":1076},{"type":63,"tag":169,"props":1813,"children":1814},{"class":171,"line":546},[1815],{"type":63,"tag":169,"props":1816,"children":1817},{"emptyLinePlaceholder":363},[1818],{"type":69,"value":366},{"type":63,"tag":169,"props":1820,"children":1821},{"class":171,"line":901},[1822,1826,1831,1835,1840,1845,1850,1854,1858,1862,1866,1870],{"type":63,"tag":169,"props":1823,"children":1824},{"style":689},[1825],{"type":69,"value":1678},{"type":63,"tag":169,"props":1827,"children":1828},{"style":259},[1829],{"type":69,"value":1830}," rootElement ",{"type":63,"tag":169,"props":1832,"children":1833},{"style":253},[1834],{"type":69,"value":702},{"type":63,"tag":169,"props":1836,"children":1837},{"style":259},[1838],{"type":69,"value":1839}," document",{"type":63,"tag":169,"props":1841,"children":1842},{"style":253},[1843],{"type":69,"value":1844},".",{"type":63,"tag":169,"props":1846,"children":1847},{"style":383},[1848],{"type":69,"value":1849},"getElementById",{"type":63,"tag":169,"props":1851,"children":1852},{"style":259},[1853],{"type":69,"value":390},{"type":63,"tag":169,"props":1855,"children":1856},{"style":253},[1857],{"type":69,"value":467},{"type":63,"tag":169,"props":1859,"children":1860},{"style":182},[1861],{"type":69,"value":60},{"type":63,"tag":169,"props":1863,"children":1864},{"style":253},[1865],{"type":69,"value":467},{"type":63,"tag":169,"props":1867,"children":1868},{"style":259},[1869],{"type":69,"value":79},{"type":63,"tag":169,"props":1871,"children":1872},{"style":253},[1873],{"type":69,"value":1874},"!\n",{"type":63,"tag":169,"props":1876,"children":1877},{"class":171,"line":958},[1878,1883,1888,1893,1898,1902,1907],{"type":63,"tag":169,"props":1879,"children":1880},{"style":247},[1881],{"type":69,"value":1882},"if",{"type":63,"tag":169,"props":1884,"children":1885},{"style":259},[1886],{"type":69,"value":1887}," (",{"type":63,"tag":169,"props":1889,"children":1890},{"style":253},[1891],{"type":69,"value":1892},"!",{"type":63,"tag":169,"props":1894,"children":1895},{"style":259},[1896],{"type":69,"value":1897},"rootElement",{"type":63,"tag":169,"props":1899,"children":1900},{"style":253},[1901],{"type":69,"value":1844},{"type":63,"tag":169,"props":1903,"children":1904},{"style":259},[1905],{"type":69,"value":1906},"innerHTML) ",{"type":63,"tag":169,"props":1908,"children":1909},{"style":253},[1910],{"type":69,"value":395},{"type":63,"tag":169,"props":1912,"children":1913},{"class":171,"line":967},[1914,1919,1924,1929,1934,1938,1943,1947,1951],{"type":63,"tag":169,"props":1915,"children":1916},{"style":689},[1917],{"type":69,"value":1918},"  const",{"type":63,"tag":169,"props":1920,"children":1921},{"style":259},[1922],{"type":69,"value":1923}," root",{"type":63,"tag":169,"props":1925,"children":1926},{"style":253},[1927],{"type":69,"value":1928}," =",{"type":63,"tag":169,"props":1930,"children":1931},{"style":259},[1932],{"type":69,"value":1933}," ReactDOM",{"type":63,"tag":169,"props":1935,"children":1936},{"style":253},[1937],{"type":69,"value":1844},{"type":63,"tag":169,"props":1939,"children":1940},{"style":383},[1941],{"type":69,"value":1942},"createRoot",{"type":63,"tag":169,"props":1944,"children":1945},{"style":402},[1946],{"type":69,"value":390},{"type":63,"tag":169,"props":1948,"children":1949},{"style":259},[1950],{"type":69,"value":1897},{"type":63,"tag":169,"props":1952,"children":1953},{"style":402},[1954],{"type":69,"value":557},{"type":63,"tag":169,"props":1956,"children":1957},{"class":171,"line":983},[1958,1963,1967,1972],{"type":63,"tag":169,"props":1959,"children":1960},{"style":259},[1961],{"type":69,"value":1962},"  root",{"type":63,"tag":169,"props":1964,"children":1965},{"style":253},[1966],{"type":69,"value":1844},{"type":63,"tag":169,"props":1968,"children":1969},{"style":383},[1970],{"type":69,"value":1971},"render",{"type":63,"tag":169,"props":1973,"children":1974},{"style":402},[1975],{"type":69,"value":1976},"(\n",{"type":63,"tag":169,"props":1978,"children":1979},{"class":171,"line":1000},[1980,1985,1990],{"type":63,"tag":169,"props":1981,"children":1982},{"style":253},[1983],{"type":69,"value":1984},"    \u003C",{"type":63,"tag":169,"props":1986,"children":1987},{"style":176},[1988],{"type":69,"value":1989},"StrictMode",{"type":63,"tag":169,"props":1991,"children":1992},{"style":253},[1993],{"type":69,"value":813},{"type":63,"tag":169,"props":1995,"children":1996},{"class":171,"line":1018},[1997,2001,2006,2011,2016,2020],{"type":63,"tag":169,"props":1998,"children":1999},{"style":253},[2000],{"type":69,"value":803},{"type":63,"tag":169,"props":2002,"children":2003},{"style":176},[2004],{"type":69,"value":2005},"RouterProvider",{"type":63,"tag":169,"props":2007,"children":2008},{"style":689},[2009],{"type":69,"value":2010}," router",{"type":63,"tag":169,"props":2012,"children":2013},{"style":253},[2014],{"type":69,"value":2015},"={",{"type":63,"tag":169,"props":2017,"children":2018},{"style":259},[2019],{"type":69,"value":33},{"type":63,"tag":169,"props":2021,"children":2022},{"style":253},[2023],{"type":69,"value":2024},"} \u002F>\n",{"type":63,"tag":169,"props":2026,"children":2027},{"class":171,"line":1035},[2028,2033,2037],{"type":63,"tag":169,"props":2029,"children":2030},{"style":253},[2031],{"type":69,"value":2032},"    \u003C\u002F",{"type":63,"tag":169,"props":2034,"children":2035},{"style":176},[2036],{"type":69,"value":1989},{"type":63,"tag":169,"props":2038,"children":2039},{"style":253},[2040],{"type":69,"value":2041},">,\n",{"type":63,"tag":169,"props":2043,"children":2044},{"class":171,"line":1052},[2045],{"type":63,"tag":169,"props":2046,"children":2047},{"style":402},[2048],{"type":69,"value":1067},{"type":63,"tag":169,"props":2050,"children":2051},{"class":171,"line":1061},[2052],{"type":63,"tag":169,"props":2053,"children":2054},{"style":253},[2055],{"type":69,"value":1076},{"type":63,"tag":144,"props":2057,"children":2059},{"id":2058},"hooks-reference",[2060],{"type":69,"value":2061},"Hooks Reference",{"type":63,"tag":81,"props":2063,"children":2064},{},[2065,2067,2072],{"type":69,"value":2066},"All hooks are imported from ",{"type":63,"tag":72,"props":2068,"children":2070},{"className":2069},[],[2071],{"type":69,"value":77},{"type":69,"value":1844},{"type":63,"tag":151,"props":2074,"children":2076},{"id":2075},"userouter",[2077],{"type":63,"tag":72,"props":2078,"children":2080},{"className":2079},[],[2081],{"type":69,"value":2082},"useRouter()",{"type":63,"tag":81,"props":2084,"children":2085},{},[2086],{"type":69,"value":2087},"Access the router instance directly:",{"type":63,"tag":158,"props":2089,"children":2091},{"className":566,"code":2090,"language":568,"meta":163,"style":163},"import { useRouter } from '@tanstack\u002Freact-router'\n\nfunction InvalidateButton() {\n  const router = useRouter()\n  return \u003Cbutton onClick={() => router.invalidate()}>Refresh data\u003C\u002Fbutton>\n}\n",[2092],{"type":63,"tag":72,"props":2093,"children":2094},{"__ignoreMap":163},[2095,2131,2138,2158,2182,2252],{"type":63,"tag":169,"props":2096,"children":2097},{"class":171,"line":172},[2098,2102,2106,2111,2115,2119,2123,2127],{"type":63,"tag":169,"props":2099,"children":2100},{"style":247},[2101],{"type":69,"value":250},{"type":63,"tag":169,"props":2103,"children":2104},{"style":253},[2105],{"type":69,"value":256},{"type":63,"tag":169,"props":2107,"children":2108},{"style":259},[2109],{"type":69,"value":2110}," useRouter",{"type":63,"tag":169,"props":2112,"children":2113},{"style":253},[2114],{"type":69,"value":267},{"type":63,"tag":169,"props":2116,"children":2117},{"style":247},[2118],{"type":69,"value":272},{"type":63,"tag":169,"props":2120,"children":2121},{"style":253},[2122],{"type":69,"value":277},{"type":63,"tag":169,"props":2124,"children":2125},{"style":182},[2126],{"type":69,"value":77},{"type":63,"tag":169,"props":2128,"children":2129},{"style":253},[2130],{"type":69,"value":287},{"type":63,"tag":169,"props":2132,"children":2133},{"class":171,"line":193},[2134],{"type":63,"tag":169,"props":2135,"children":2136},{"emptyLinePlaceholder":363},[2137],{"type":69,"value":366},{"type":63,"tag":169,"props":2139,"children":2140},{"class":171,"line":290},[2141,2145,2150,2154],{"type":63,"tag":169,"props":2142,"children":2143},{"style":689},[2144],{"type":69,"value":761},{"type":63,"tag":169,"props":2146,"children":2147},{"style":383},[2148],{"type":69,"value":2149}," InvalidateButton",{"type":63,"tag":169,"props":2151,"children":2152},{"style":253},[2153],{"type":69,"value":526},{"type":63,"tag":169,"props":2155,"children":2156},{"style":253},[2157],{"type":69,"value":774},{"type":63,"tag":169,"props":2159,"children":2160},{"class":171,"line":321},[2161,2165,2169,2173,2177],{"type":63,"tag":169,"props":2162,"children":2163},{"style":689},[2164],{"type":69,"value":1918},{"type":63,"tag":169,"props":2166,"children":2167},{"style":259},[2168],{"type":69,"value":2010},{"type":63,"tag":169,"props":2170,"children":2171},{"style":253},[2172],{"type":69,"value":1928},{"type":63,"tag":169,"props":2174,"children":2175},{"style":383},[2176],{"type":69,"value":2110},{"type":63,"tag":169,"props":2178,"children":2179},{"style":402},[2180],{"type":69,"value":2181},"()\n",{"type":63,"tag":169,"props":2183,"children":2184},{"class":171,"line":359},[2185,2189,2193,2198,2203,2208,2213,2217,2221,2226,2230,2235,2240,2244,2248],{"type":63,"tag":169,"props":2186,"children":2187},{"style":247},[2188],{"type":69,"value":782},{"type":63,"tag":169,"props":2190,"children":2191},{"style":253},[2192],{"type":69,"value":1257},{"type":63,"tag":169,"props":2194,"children":2195},{"style":402},[2196],{"type":69,"value":2197},"button",{"type":63,"tag":169,"props":2199,"children":2200},{"style":689},[2201],{"type":69,"value":2202}," onClick",{"type":63,"tag":169,"props":2204,"children":2205},{"style":253},[2206],{"type":69,"value":2207},"={()",{"type":63,"tag":169,"props":2209,"children":2210},{"style":689},[2211],{"type":69,"value":2212}," =>",{"type":63,"tag":169,"props":2214,"children":2215},{"style":259},[2216],{"type":69,"value":2010},{"type":63,"tag":169,"props":2218,"children":2219},{"style":253},[2220],{"type":69,"value":1844},{"type":63,"tag":169,"props":2222,"children":2223},{"style":383},[2224],{"type":69,"value":2225},"invalidate",{"type":63,"tag":169,"props":2227,"children":2228},{"style":259},[2229],{"type":69,"value":526},{"type":63,"tag":169,"props":2231,"children":2232},{"style":253},[2233],{"type":69,"value":2234},"}>",{"type":63,"tag":169,"props":2236,"children":2237},{"style":259},[2238],{"type":69,"value":2239},"Refresh data",{"type":63,"tag":169,"props":2241,"children":2242},{"style":253},[2243],{"type":69,"value":1276},{"type":63,"tag":169,"props":2245,"children":2246},{"style":402},[2247],{"type":69,"value":2197},{"type":63,"tag":169,"props":2249,"children":2250},{"style":253},[2251],{"type":69,"value":813},{"type":63,"tag":169,"props":2253,"children":2254},{"class":171,"line":369},[2255],{"type":63,"tag":169,"props":2256,"children":2257},{"style":253},[2258],{"type":69,"value":1076},{"type":63,"tag":151,"props":2260,"children":2262},{"id":2261},"userouterstate",[2263],{"type":63,"tag":72,"props":2264,"children":2266},{"className":2265},[],[2267],{"type":69,"value":2268},"useRouterState()",{"type":63,"tag":81,"props":2270,"children":2271},{},[2272,2274,2280,2282,2288],{"type":69,"value":2273},"Subscribe to router state changes. Exposes the entire state and thus incurs\na performance cost. For matches or location favor ",{"type":63,"tag":72,"props":2275,"children":2277},{"className":2276},[],[2278],{"type":69,"value":2279},"useMatches",{"type":69,"value":2281}," and ",{"type":63,"tag":72,"props":2283,"children":2285},{"className":2284},[],[2286],{"type":69,"value":2287},"useLocation",{"type":69,"value":1844},{"type":63,"tag":158,"props":2290,"children":2292},{"className":566,"code":2291,"language":568,"meta":163,"style":163},"import { useRouterState } from '@tanstack\u002Freact-router'\n\nfunction LoadingIndicator() {\n  const isLoading = useRouterState({ select: (s) => s.isLoading })\n  return isLoading ? \u003Cdiv>Loading...\u003C\u002Fdiv> : null\n}\n",[2293],{"type":63,"tag":72,"props":2294,"children":2295},{"__ignoreMap":163},[2296,2332,2339,2359,2436,2492],{"type":63,"tag":169,"props":2297,"children":2298},{"class":171,"line":172},[2299,2303,2307,2312,2316,2320,2324,2328],{"type":63,"tag":169,"props":2300,"children":2301},{"style":247},[2302],{"type":69,"value":250},{"type":63,"tag":169,"props":2304,"children":2305},{"style":253},[2306],{"type":69,"value":256},{"type":63,"tag":169,"props":2308,"children":2309},{"style":259},[2310],{"type":69,"value":2311}," useRouterState",{"type":63,"tag":169,"props":2313,"children":2314},{"style":253},[2315],{"type":69,"value":267},{"type":63,"tag":169,"props":2317,"children":2318},{"style":247},[2319],{"type":69,"value":272},{"type":63,"tag":169,"props":2321,"children":2322},{"style":253},[2323],{"type":69,"value":277},{"type":63,"tag":169,"props":2325,"children":2326},{"style":182},[2327],{"type":69,"value":77},{"type":63,"tag":169,"props":2329,"children":2330},{"style":253},[2331],{"type":69,"value":287},{"type":63,"tag":169,"props":2333,"children":2334},{"class":171,"line":193},[2335],{"type":63,"tag":169,"props":2336,"children":2337},{"emptyLinePlaceholder":363},[2338],{"type":69,"value":366},{"type":63,"tag":169,"props":2340,"children":2341},{"class":171,"line":290},[2342,2346,2351,2355],{"type":63,"tag":169,"props":2343,"children":2344},{"style":689},[2345],{"type":69,"value":761},{"type":63,"tag":169,"props":2347,"children":2348},{"style":383},[2349],{"type":69,"value":2350}," LoadingIndicator",{"type":63,"tag":169,"props":2352,"children":2353},{"style":253},[2354],{"type":69,"value":526},{"type":63,"tag":169,"props":2356,"children":2357},{"style":253},[2358],{"type":69,"value":774},{"type":63,"tag":169,"props":2360,"children":2361},{"class":171,"line":321},[2362,2366,2371,2375,2379,2383,2387,2392,2396,2400,2406,2410,2414,2419,2423,2428,2432],{"type":63,"tag":169,"props":2363,"children":2364},{"style":689},[2365],{"type":69,"value":1918},{"type":63,"tag":169,"props":2367,"children":2368},{"style":259},[2369],{"type":69,"value":2370}," isLoading",{"type":63,"tag":169,"props":2372,"children":2373},{"style":253},[2374],{"type":69,"value":1928},{"type":63,"tag":169,"props":2376,"children":2377},{"style":383},[2378],{"type":69,"value":2311},{"type":63,"tag":169,"props":2380,"children":2381},{"style":402},[2382],{"type":69,"value":390},{"type":63,"tag":169,"props":2384,"children":2385},{"style":253},[2386],{"type":69,"value":1700},{"type":63,"tag":169,"props":2388,"children":2389},{"style":383},[2390],{"type":69,"value":2391}," select",{"type":63,"tag":169,"props":2393,"children":2394},{"style":253},[2395],{"type":69,"value":410},{"type":63,"tag":169,"props":2397,"children":2398},{"style":253},[2399],{"type":69,"value":1887},{"type":63,"tag":169,"props":2401,"children":2403},{"style":2402},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic",[2404],{"type":69,"value":2405},"s",{"type":63,"tag":169,"props":2407,"children":2408},{"style":253},[2409],{"type":69,"value":79},{"type":63,"tag":169,"props":2411,"children":2412},{"style":689},[2413],{"type":69,"value":2212},{"type":63,"tag":169,"props":2415,"children":2416},{"style":259},[2417],{"type":69,"value":2418}," s",{"type":63,"tag":169,"props":2420,"children":2421},{"style":253},[2422],{"type":69,"value":1844},{"type":63,"tag":169,"props":2424,"children":2425},{"style":259},[2426],{"type":69,"value":2427},"isLoading",{"type":63,"tag":169,"props":2429,"children":2430},{"style":253},[2431],{"type":69,"value":267},{"type":63,"tag":169,"props":2433,"children":2434},{"style":402},[2435],{"type":69,"value":557},{"type":63,"tag":169,"props":2437,"children":2438},{"class":171,"line":359},[2439,2443,2447,2452,2456,2461,2465,2470,2474,2478,2482,2487],{"type":63,"tag":169,"props":2440,"children":2441},{"style":247},[2442],{"type":69,"value":782},{"type":63,"tag":169,"props":2444,"children":2445},{"style":259},[2446],{"type":69,"value":2370},{"type":63,"tag":169,"props":2448,"children":2449},{"style":253},[2450],{"type":69,"value":2451}," ?",{"type":63,"tag":169,"props":2453,"children":2454},{"style":253},[2455],{"type":69,"value":1257},{"type":63,"tag":169,"props":2457,"children":2458},{"style":402},[2459],{"type":69,"value":2460},"div",{"type":63,"tag":169,"props":2462,"children":2463},{"style":253},[2464],{"type":69,"value":1266},{"type":63,"tag":169,"props":2466,"children":2467},{"style":259},[2468],{"type":69,"value":2469},"Loading...",{"type":63,"tag":169,"props":2471,"children":2472},{"style":253},[2473],{"type":69,"value":1276},{"type":63,"tag":169,"props":2475,"children":2476},{"style":402},[2477],{"type":69,"value":2460},{"type":63,"tag":169,"props":2479,"children":2480},{"style":253},[2481],{"type":69,"value":1266},{"type":63,"tag":169,"props":2483,"children":2484},{"style":253},[2485],{"type":69,"value":2486}," :",{"type":63,"tag":169,"props":2488,"children":2489},{"style":253},[2490],{"type":69,"value":2491}," null\n",{"type":63,"tag":169,"props":2493,"children":2494},{"class":171,"line":369},[2495],{"type":63,"tag":169,"props":2496,"children":2497},{"style":253},[2498],{"type":69,"value":1076},{"type":63,"tag":151,"props":2500,"children":2502},{"id":2501},"usenavigate",[2503],{"type":63,"tag":72,"props":2504,"children":2506},{"className":2505},[],[2507],{"type":69,"value":2508},"useNavigate()",{"type":63,"tag":81,"props":2510,"children":2511},{},[2512,2514,2520],{"type":69,"value":2513},"Programmatic navigation (prefer ",{"type":63,"tag":72,"props":2515,"children":2517},{"className":2516},[],[2518],{"type":69,"value":2519},"\u003CLink>",{"type":69,"value":2521}," for user-clickable elements):",{"type":63,"tag":158,"props":2523,"children":2525},{"className":566,"code":2524,"language":568,"meta":163,"style":163},"import { useNavigate } from '@tanstack\u002Freact-router'\n\nfunction AfterSubmit() {\n  const navigate = useNavigate()\n\n  const handleSubmit = async () => {\n    await saveData()\n    navigate({ to: '\u002Fposts\u002F$postId', params: { postId: '123' } })\n  }\n\n  return \u003Cbutton onClick={handleSubmit}>Save\u003C\u002Fbutton>\n}\n",[2526],{"type":63,"tag":72,"props":2527,"children":2528},{"__ignoreMap":163},[2529,2565,2572,2592,2616,2623,2657,2674,2762,2769,2776,2825],{"type":63,"tag":169,"props":2530,"children":2531},{"class":171,"line":172},[2532,2536,2540,2545,2549,2553,2557,2561],{"type":63,"tag":169,"props":2533,"children":2534},{"style":247},[2535],{"type":69,"value":250},{"type":63,"tag":169,"props":2537,"children":2538},{"style":253},[2539],{"type":69,"value":256},{"type":63,"tag":169,"props":2541,"children":2542},{"style":259},[2543],{"type":69,"value":2544}," useNavigate",{"type":63,"tag":169,"props":2546,"children":2547},{"style":253},[2548],{"type":69,"value":267},{"type":63,"tag":169,"props":2550,"children":2551},{"style":247},[2552],{"type":69,"value":272},{"type":63,"tag":169,"props":2554,"children":2555},{"style":253},[2556],{"type":69,"value":277},{"type":63,"tag":169,"props":2558,"children":2559},{"style":182},[2560],{"type":69,"value":77},{"type":63,"tag":169,"props":2562,"children":2563},{"style":253},[2564],{"type":69,"value":287},{"type":63,"tag":169,"props":2566,"children":2567},{"class":171,"line":193},[2568],{"type":63,"tag":169,"props":2569,"children":2570},{"emptyLinePlaceholder":363},[2571],{"type":69,"value":366},{"type":63,"tag":169,"props":2573,"children":2574},{"class":171,"line":290},[2575,2579,2584,2588],{"type":63,"tag":169,"props":2576,"children":2577},{"style":689},[2578],{"type":69,"value":761},{"type":63,"tag":169,"props":2580,"children":2581},{"style":383},[2582],{"type":69,"value":2583}," AfterSubmit",{"type":63,"tag":169,"props":2585,"children":2586},{"style":253},[2587],{"type":69,"value":526},{"type":63,"tag":169,"props":2589,"children":2590},{"style":253},[2591],{"type":69,"value":774},{"type":63,"tag":169,"props":2593,"children":2594},{"class":171,"line":321},[2595,2599,2604,2608,2612],{"type":63,"tag":169,"props":2596,"children":2597},{"style":689},[2598],{"type":69,"value":1918},{"type":63,"tag":169,"props":2600,"children":2601},{"style":259},[2602],{"type":69,"value":2603}," navigate",{"type":63,"tag":169,"props":2605,"children":2606},{"style":253},[2607],{"type":69,"value":1928},{"type":63,"tag":169,"props":2609,"children":2610},{"style":383},[2611],{"type":69,"value":2544},{"type":63,"tag":169,"props":2613,"children":2614},{"style":402},[2615],{"type":69,"value":2181},{"type":63,"tag":169,"props":2617,"children":2618},{"class":171,"line":359},[2619],{"type":63,"tag":169,"props":2620,"children":2621},{"emptyLinePlaceholder":363},[2622],{"type":69,"value":366},{"type":63,"tag":169,"props":2624,"children":2625},{"class":171,"line":369},[2626,2630,2635,2639,2644,2649,2653],{"type":63,"tag":169,"props":2627,"children":2628},{"style":689},[2629],{"type":69,"value":1918},{"type":63,"tag":169,"props":2631,"children":2632},{"style":259},[2633],{"type":69,"value":2634}," handleSubmit",{"type":63,"tag":169,"props":2636,"children":2637},{"style":253},[2638],{"type":69,"value":1928},{"type":63,"tag":169,"props":2640,"children":2641},{"style":689},[2642],{"type":69,"value":2643}," async",{"type":63,"tag":169,"props":2645,"children":2646},{"style":253},[2647],{"type":69,"value":2648}," ()",{"type":63,"tag":169,"props":2650,"children":2651},{"style":689},[2652],{"type":69,"value":2212},{"type":63,"tag":169,"props":2654,"children":2655},{"style":253},[2656],{"type":69,"value":774},{"type":63,"tag":169,"props":2658,"children":2659},{"class":171,"line":398},[2660,2665,2670],{"type":63,"tag":169,"props":2661,"children":2662},{"style":247},[2663],{"type":69,"value":2664},"    await",{"type":63,"tag":169,"props":2666,"children":2667},{"style":383},[2668],{"type":69,"value":2669}," saveData",{"type":63,"tag":169,"props":2671,"children":2672},{"style":402},[2673],{"type":69,"value":2181},{"type":63,"tag":169,"props":2675,"children":2676},{"class":171,"line":418},[2677,2682,2686,2690,2694,2698,2702,2707,2711,2715,2720,2724,2728,2733,2737,2741,2746,2750,2754,2758],{"type":63,"tag":169,"props":2678,"children":2679},{"style":383},[2680],{"type":69,"value":2681},"    navigate",{"type":63,"tag":169,"props":2683,"children":2684},{"style":402},[2685],{"type":69,"value":390},{"type":63,"tag":169,"props":2687,"children":2688},{"style":253},[2689],{"type":69,"value":1700},{"type":63,"tag":169,"props":2691,"children":2692},{"style":402},[2693],{"type":69,"value":831},{"type":63,"tag":169,"props":2695,"children":2696},{"style":253},[2697],{"type":69,"value":410},{"type":63,"tag":169,"props":2699,"children":2700},{"style":253},[2701],{"type":69,"value":277},{"type":63,"tag":169,"props":2703,"children":2704},{"style":182},[2705],{"type":69,"value":2706},"\u002Fposts\u002F$postId",{"type":63,"tag":169,"props":2708,"children":2709},{"style":253},[2710],{"type":69,"value":467},{"type":63,"tag":169,"props":2712,"children":2713},{"style":253},[2714],{"type":69,"value":601},{"type":63,"tag":169,"props":2716,"children":2717},{"style":402},[2718],{"type":69,"value":2719}," params",{"type":63,"tag":169,"props":2721,"children":2722},{"style":253},[2723],{"type":69,"value":410},{"type":63,"tag":169,"props":2725,"children":2726},{"style":253},[2727],{"type":69,"value":256},{"type":63,"tag":169,"props":2729,"children":2730},{"style":402},[2731],{"type":69,"value":2732}," postId",{"type":63,"tag":169,"props":2734,"children":2735},{"style":253},[2736],{"type":69,"value":410},{"type":63,"tag":169,"props":2738,"children":2739},{"style":253},[2740],{"type":69,"value":277},{"type":63,"tag":169,"props":2742,"children":2743},{"style":182},[2744],{"type":69,"value":2745},"123",{"type":63,"tag":169,"props":2747,"children":2748},{"style":253},[2749],{"type":69,"value":467},{"type":63,"tag":169,"props":2751,"children":2752},{"style":253},[2753],{"type":69,"value":267},{"type":63,"tag":169,"props":2755,"children":2756},{"style":253},[2757],{"type":69,"value":267},{"type":63,"tag":169,"props":2759,"children":2760},{"style":402},[2761],{"type":69,"value":557},{"type":63,"tag":169,"props":2763,"children":2764},{"class":171,"line":427},[2765],{"type":63,"tag":169,"props":2766,"children":2767},{"style":253},[2768],{"type":69,"value":1804},{"type":63,"tag":169,"props":2770,"children":2771},{"class":171,"line":444},[2772],{"type":63,"tag":169,"props":2773,"children":2774},{"emptyLinePlaceholder":363},[2775],{"type":69,"value":366},{"type":63,"tag":169,"props":2777,"children":2778},{"class":171,"line":475},[2779,2783,2787,2791,2795,2799,2804,2808,2813,2817,2821],{"type":63,"tag":169,"props":2780,"children":2781},{"style":247},[2782],{"type":69,"value":782},{"type":63,"tag":169,"props":2784,"children":2785},{"style":253},[2786],{"type":69,"value":1257},{"type":63,"tag":169,"props":2788,"children":2789},{"style":402},[2790],{"type":69,"value":2197},{"type":63,"tag":169,"props":2792,"children":2793},{"style":689},[2794],{"type":69,"value":2202},{"type":63,"tag":169,"props":2796,"children":2797},{"style":253},[2798],{"type":69,"value":2015},{"type":63,"tag":169,"props":2800,"children":2801},{"style":259},[2802],{"type":69,"value":2803},"handleSubmit",{"type":63,"tag":169,"props":2805,"children":2806},{"style":253},[2807],{"type":69,"value":2234},{"type":63,"tag":169,"props":2809,"children":2810},{"style":259},[2811],{"type":69,"value":2812},"Save",{"type":63,"tag":169,"props":2814,"children":2815},{"style":253},[2816],{"type":69,"value":1276},{"type":63,"tag":169,"props":2818,"children":2819},{"style":402},[2820],{"type":69,"value":2197},{"type":63,"tag":169,"props":2822,"children":2823},{"style":253},[2824],{"type":69,"value":813},{"type":63,"tag":169,"props":2826,"children":2827},{"class":171,"line":498},[2828],{"type":63,"tag":169,"props":2829,"children":2830},{"style":253},[2831],{"type":69,"value":1076},{"type":63,"tag":151,"props":2833,"children":2835},{"id":2834},"usesearch-from",[2836],{"type":63,"tag":72,"props":2837,"children":2839},{"className":2838},[],[2840],{"type":69,"value":2841},"useSearch({ from })",{"type":63,"tag":81,"props":2843,"children":2844},{},[2845],{"type":69,"value":2846},"Read validated search params:",{"type":63,"tag":158,"props":2848,"children":2850},{"className":566,"code":2849,"language":568,"meta":163,"style":163},"import { useSearch } from '@tanstack\u002Freact-router'\n\nfunction Pagination() {\n  const { page } = useSearch({ from: '\u002Fproducts' })\n  return \u003Cspan>Page {page}\u003C\u002Fspan>\n}\n",[2851],{"type":63,"tag":72,"props":2852,"children":2853},{"__ignoreMap":163},[2854,2890,2897,2917,2982,3028],{"type":63,"tag":169,"props":2855,"children":2856},{"class":171,"line":172},[2857,2861,2865,2870,2874,2878,2882,2886],{"type":63,"tag":169,"props":2858,"children":2859},{"style":247},[2860],{"type":69,"value":250},{"type":63,"tag":169,"props":2862,"children":2863},{"style":253},[2864],{"type":69,"value":256},{"type":63,"tag":169,"props":2866,"children":2867},{"style":259},[2868],{"type":69,"value":2869}," useSearch",{"type":63,"tag":169,"props":2871,"children":2872},{"style":253},[2873],{"type":69,"value":267},{"type":63,"tag":169,"props":2875,"children":2876},{"style":247},[2877],{"type":69,"value":272},{"type":63,"tag":169,"props":2879,"children":2880},{"style":253},[2881],{"type":69,"value":277},{"type":63,"tag":169,"props":2883,"children":2884},{"style":182},[2885],{"type":69,"value":77},{"type":63,"tag":169,"props":2887,"children":2888},{"style":253},[2889],{"type":69,"value":287},{"type":63,"tag":169,"props":2891,"children":2892},{"class":171,"line":193},[2893],{"type":63,"tag":169,"props":2894,"children":2895},{"emptyLinePlaceholder":363},[2896],{"type":69,"value":366},{"type":63,"tag":169,"props":2898,"children":2899},{"class":171,"line":290},[2900,2904,2909,2913],{"type":63,"tag":169,"props":2901,"children":2902},{"style":689},[2903],{"type":69,"value":761},{"type":63,"tag":169,"props":2905,"children":2906},{"style":383},[2907],{"type":69,"value":2908}," Pagination",{"type":63,"tag":169,"props":2910,"children":2911},{"style":253},[2912],{"type":69,"value":526},{"type":63,"tag":169,"props":2914,"children":2915},{"style":253},[2916],{"type":69,"value":774},{"type":63,"tag":169,"props":2918,"children":2919},{"class":171,"line":321},[2920,2924,2928,2933,2937,2941,2945,2949,2953,2957,2961,2965,2970,2974,2978],{"type":63,"tag":169,"props":2921,"children":2922},{"style":689},[2923],{"type":69,"value":1918},{"type":63,"tag":169,"props":2925,"children":2926},{"style":253},[2927],{"type":69,"value":256},{"type":63,"tag":169,"props":2929,"children":2930},{"style":259},[2931],{"type":69,"value":2932}," page",{"type":63,"tag":169,"props":2934,"children":2935},{"style":253},[2936],{"type":69,"value":267},{"type":63,"tag":169,"props":2938,"children":2939},{"style":253},[2940],{"type":69,"value":1928},{"type":63,"tag":169,"props":2942,"children":2943},{"style":383},[2944],{"type":69,"value":2869},{"type":63,"tag":169,"props":2946,"children":2947},{"style":402},[2948],{"type":69,"value":390},{"type":63,"tag":169,"props":2950,"children":2951},{"style":253},[2952],{"type":69,"value":1700},{"type":63,"tag":169,"props":2954,"children":2955},{"style":402},[2956],{"type":69,"value":272},{"type":63,"tag":169,"props":2958,"children":2959},{"style":253},[2960],{"type":69,"value":410},{"type":63,"tag":169,"props":2962,"children":2963},{"style":253},[2964],{"type":69,"value":277},{"type":63,"tag":169,"props":2966,"children":2967},{"style":182},[2968],{"type":69,"value":2969},"\u002Fproducts",{"type":63,"tag":169,"props":2971,"children":2972},{"style":253},[2973],{"type":69,"value":467},{"type":63,"tag":169,"props":2975,"children":2976},{"style":253},[2977],{"type":69,"value":267},{"type":63,"tag":169,"props":2979,"children":2980},{"style":402},[2981],{"type":69,"value":557},{"type":63,"tag":169,"props":2983,"children":2984},{"class":171,"line":359},[2985,2989,2993,2997,3001,3006,3010,3015,3020,3024],{"type":63,"tag":169,"props":2986,"children":2987},{"style":247},[2988],{"type":69,"value":782},{"type":63,"tag":169,"props":2990,"children":2991},{"style":253},[2992],{"type":69,"value":1257},{"type":63,"tag":169,"props":2994,"children":2995},{"style":402},[2996],{"type":69,"value":169},{"type":63,"tag":169,"props":2998,"children":2999},{"style":253},[3000],{"type":69,"value":1266},{"type":63,"tag":169,"props":3002,"children":3003},{"style":259},[3004],{"type":69,"value":3005},"Page ",{"type":63,"tag":169,"props":3007,"children":3008},{"style":253},[3009],{"type":69,"value":1700},{"type":63,"tag":169,"props":3011,"children":3012},{"style":259},[3013],{"type":69,"value":3014},"page",{"type":63,"tag":169,"props":3016,"children":3017},{"style":253},[3018],{"type":69,"value":3019},"}\u003C\u002F",{"type":63,"tag":169,"props":3021,"children":3022},{"style":402},[3023],{"type":69,"value":169},{"type":63,"tag":169,"props":3025,"children":3026},{"style":253},[3027],{"type":69,"value":813},{"type":63,"tag":169,"props":3029,"children":3030},{"class":171,"line":369},[3031],{"type":63,"tag":169,"props":3032,"children":3033},{"style":253},[3034],{"type":69,"value":1076},{"type":63,"tag":151,"props":3036,"children":3038},{"id":3037},"useparams-from",[3039],{"type":63,"tag":72,"props":3040,"children":3042},{"className":3041},[],[3043],{"type":69,"value":3044},"useParams({ from })",{"type":63,"tag":81,"props":3046,"children":3047},{},[3048],{"type":69,"value":3049},"Read path params:",{"type":63,"tag":158,"props":3051,"children":3053},{"className":566,"code":3052,"language":568,"meta":163,"style":163},"import { useParams } from '@tanstack\u002Freact-router'\n\nfunction PostHeader() {\n  const { postId } = useParams({ from: '\u002Fposts\u002F$postId' })\n  return \u003Ch2>Post {postId}\u003C\u002Fh2>\n}\n",[3054],{"type":63,"tag":72,"props":3055,"children":3056},{"__ignoreMap":163},[3057,3093,3100,3120,3183,3228],{"type":63,"tag":169,"props":3058,"children":3059},{"class":171,"line":172},[3060,3064,3068,3073,3077,3081,3085,3089],{"type":63,"tag":169,"props":3061,"children":3062},{"style":247},[3063],{"type":69,"value":250},{"type":63,"tag":169,"props":3065,"children":3066},{"style":253},[3067],{"type":69,"value":256},{"type":63,"tag":169,"props":3069,"children":3070},{"style":259},[3071],{"type":69,"value":3072}," useParams",{"type":63,"tag":169,"props":3074,"children":3075},{"style":253},[3076],{"type":69,"value":267},{"type":63,"tag":169,"props":3078,"children":3079},{"style":247},[3080],{"type":69,"value":272},{"type":63,"tag":169,"props":3082,"children":3083},{"style":253},[3084],{"type":69,"value":277},{"type":63,"tag":169,"props":3086,"children":3087},{"style":182},[3088],{"type":69,"value":77},{"type":63,"tag":169,"props":3090,"children":3091},{"style":253},[3092],{"type":69,"value":287},{"type":63,"tag":169,"props":3094,"children":3095},{"class":171,"line":193},[3096],{"type":63,"tag":169,"props":3097,"children":3098},{"emptyLinePlaceholder":363},[3099],{"type":69,"value":366},{"type":63,"tag":169,"props":3101,"children":3102},{"class":171,"line":290},[3103,3107,3112,3116],{"type":63,"tag":169,"props":3104,"children":3105},{"style":689},[3106],{"type":69,"value":761},{"type":63,"tag":169,"props":3108,"children":3109},{"style":383},[3110],{"type":69,"value":3111}," PostHeader",{"type":63,"tag":169,"props":3113,"children":3114},{"style":253},[3115],{"type":69,"value":526},{"type":63,"tag":169,"props":3117,"children":3118},{"style":253},[3119],{"type":69,"value":774},{"type":63,"tag":169,"props":3121,"children":3122},{"class":171,"line":321},[3123,3127,3131,3135,3139,3143,3147,3151,3155,3159,3163,3167,3171,3175,3179],{"type":63,"tag":169,"props":3124,"children":3125},{"style":689},[3126],{"type":69,"value":1918},{"type":63,"tag":169,"props":3128,"children":3129},{"style":253},[3130],{"type":69,"value":256},{"type":63,"tag":169,"props":3132,"children":3133},{"style":259},[3134],{"type":69,"value":2732},{"type":63,"tag":169,"props":3136,"children":3137},{"style":253},[3138],{"type":69,"value":267},{"type":63,"tag":169,"props":3140,"children":3141},{"style":253},[3142],{"type":69,"value":1928},{"type":63,"tag":169,"props":3144,"children":3145},{"style":383},[3146],{"type":69,"value":3072},{"type":63,"tag":169,"props":3148,"children":3149},{"style":402},[3150],{"type":69,"value":390},{"type":63,"tag":169,"props":3152,"children":3153},{"style":253},[3154],{"type":69,"value":1700},{"type":63,"tag":169,"props":3156,"children":3157},{"style":402},[3158],{"type":69,"value":272},{"type":63,"tag":169,"props":3160,"children":3161},{"style":253},[3162],{"type":69,"value":410},{"type":63,"tag":169,"props":3164,"children":3165},{"style":253},[3166],{"type":69,"value":277},{"type":63,"tag":169,"props":3168,"children":3169},{"style":182},[3170],{"type":69,"value":2706},{"type":63,"tag":169,"props":3172,"children":3173},{"style":253},[3174],{"type":69,"value":467},{"type":63,"tag":169,"props":3176,"children":3177},{"style":253},[3178],{"type":69,"value":267},{"type":63,"tag":169,"props":3180,"children":3181},{"style":402},[3182],{"type":69,"value":557},{"type":63,"tag":169,"props":3184,"children":3185},{"class":171,"line":359},[3186,3190,3194,3198,3202,3207,3211,3216,3220,3224],{"type":63,"tag":169,"props":3187,"children":3188},{"style":247},[3189],{"type":69,"value":782},{"type":63,"tag":169,"props":3191,"children":3192},{"style":253},[3193],{"type":69,"value":1257},{"type":63,"tag":169,"props":3195,"children":3196},{"style":402},[3197],{"type":69,"value":144},{"type":63,"tag":169,"props":3199,"children":3200},{"style":253},[3201],{"type":69,"value":1266},{"type":63,"tag":169,"props":3203,"children":3204},{"style":259},[3205],{"type":69,"value":3206},"Post ",{"type":63,"tag":169,"props":3208,"children":3209},{"style":253},[3210],{"type":69,"value":1700},{"type":63,"tag":169,"props":3212,"children":3213},{"style":259},[3214],{"type":69,"value":3215},"postId",{"type":63,"tag":169,"props":3217,"children":3218},{"style":253},[3219],{"type":69,"value":3019},{"type":63,"tag":169,"props":3221,"children":3222},{"style":402},[3223],{"type":69,"value":144},{"type":63,"tag":169,"props":3225,"children":3226},{"style":253},[3227],{"type":69,"value":813},{"type":63,"tag":169,"props":3229,"children":3230},{"class":171,"line":369},[3231],{"type":63,"tag":169,"props":3232,"children":3233},{"style":253},[3234],{"type":69,"value":1076},{"type":63,"tag":151,"props":3236,"children":3238},{"id":3237},"useloaderdata-from",[3239],{"type":63,"tag":72,"props":3240,"children":3242},{"className":3241},[],[3243],{"type":69,"value":3244},"useLoaderData({ from })",{"type":63,"tag":81,"props":3246,"children":3247},{},[3248],{"type":69,"value":3249},"Read data returned from the route loader:",{"type":63,"tag":158,"props":3251,"children":3253},{"className":566,"code":3252,"language":568,"meta":163,"style":163},"import { useLoaderData } from '@tanstack\u002Freact-router'\n\nfunction PostContent() {\n  const { post } = useLoaderData({ from: '\u002Fposts\u002F$postId' })\n  return \u003Carticle>{post.content}\u003C\u002Farticle>\n}\n",[3254],{"type":63,"tag":72,"props":3255,"children":3256},{"__ignoreMap":163},[3257,3293,3300,3320,3384,3431],{"type":63,"tag":169,"props":3258,"children":3259},{"class":171,"line":172},[3260,3264,3268,3273,3277,3281,3285,3289],{"type":63,"tag":169,"props":3261,"children":3262},{"style":247},[3263],{"type":69,"value":250},{"type":63,"tag":169,"props":3265,"children":3266},{"style":253},[3267],{"type":69,"value":256},{"type":63,"tag":169,"props":3269,"children":3270},{"style":259},[3271],{"type":69,"value":3272}," useLoaderData",{"type":63,"tag":169,"props":3274,"children":3275},{"style":253},[3276],{"type":69,"value":267},{"type":63,"tag":169,"props":3278,"children":3279},{"style":247},[3280],{"type":69,"value":272},{"type":63,"tag":169,"props":3282,"children":3283},{"style":253},[3284],{"type":69,"value":277},{"type":63,"tag":169,"props":3286,"children":3287},{"style":182},[3288],{"type":69,"value":77},{"type":63,"tag":169,"props":3290,"children":3291},{"style":253},[3292],{"type":69,"value":287},{"type":63,"tag":169,"props":3294,"children":3295},{"class":171,"line":193},[3296],{"type":63,"tag":169,"props":3297,"children":3298},{"emptyLinePlaceholder":363},[3299],{"type":69,"value":366},{"type":63,"tag":169,"props":3301,"children":3302},{"class":171,"line":290},[3303,3307,3312,3316],{"type":63,"tag":169,"props":3304,"children":3305},{"style":689},[3306],{"type":69,"value":761},{"type":63,"tag":169,"props":3308,"children":3309},{"style":383},[3310],{"type":69,"value":3311}," PostContent",{"type":63,"tag":169,"props":3313,"children":3314},{"style":253},[3315],{"type":69,"value":526},{"type":63,"tag":169,"props":3317,"children":3318},{"style":253},[3319],{"type":69,"value":774},{"type":63,"tag":169,"props":3321,"children":3322},{"class":171,"line":321},[3323,3327,3331,3336,3340,3344,3348,3352,3356,3360,3364,3368,3372,3376,3380],{"type":63,"tag":169,"props":3324,"children":3325},{"style":689},[3326],{"type":69,"value":1918},{"type":63,"tag":169,"props":3328,"children":3329},{"style":253},[3330],{"type":69,"value":256},{"type":63,"tag":169,"props":3332,"children":3333},{"style":259},[3334],{"type":69,"value":3335}," post",{"type":63,"tag":169,"props":3337,"children":3338},{"style":253},[3339],{"type":69,"value":267},{"type":63,"tag":169,"props":3341,"children":3342},{"style":253},[3343],{"type":69,"value":1928},{"type":63,"tag":169,"props":3345,"children":3346},{"style":383},[3347],{"type":69,"value":3272},{"type":63,"tag":169,"props":3349,"children":3350},{"style":402},[3351],{"type":69,"value":390},{"type":63,"tag":169,"props":3353,"children":3354},{"style":253},[3355],{"type":69,"value":1700},{"type":63,"tag":169,"props":3357,"children":3358},{"style":402},[3359],{"type":69,"value":272},{"type":63,"tag":169,"props":3361,"children":3362},{"style":253},[3363],{"type":69,"value":410},{"type":63,"tag":169,"props":3365,"children":3366},{"style":253},[3367],{"type":69,"value":277},{"type":63,"tag":169,"props":3369,"children":3370},{"style":182},[3371],{"type":69,"value":2706},{"type":63,"tag":169,"props":3373,"children":3374},{"style":253},[3375],{"type":69,"value":467},{"type":63,"tag":169,"props":3377,"children":3378},{"style":253},[3379],{"type":69,"value":267},{"type":63,"tag":169,"props":3381,"children":3382},{"style":402},[3383],{"type":69,"value":557},{"type":63,"tag":169,"props":3385,"children":3386},{"class":171,"line":359},[3387,3391,3395,3400,3405,3410,3414,3419,3423,3427],{"type":63,"tag":169,"props":3388,"children":3389},{"style":247},[3390],{"type":69,"value":782},{"type":63,"tag":169,"props":3392,"children":3393},{"style":253},[3394],{"type":69,"value":1257},{"type":63,"tag":169,"props":3396,"children":3397},{"style":402},[3398],{"type":69,"value":3399},"article",{"type":63,"tag":169,"props":3401,"children":3402},{"style":253},[3403],{"type":69,"value":3404},">{",{"type":63,"tag":169,"props":3406,"children":3407},{"style":259},[3408],{"type":69,"value":3409},"post",{"type":63,"tag":169,"props":3411,"children":3412},{"style":253},[3413],{"type":69,"value":1844},{"type":63,"tag":169,"props":3415,"children":3416},{"style":259},[3417],{"type":69,"value":3418},"content",{"type":63,"tag":169,"props":3420,"children":3421},{"style":253},[3422],{"type":69,"value":3019},{"type":63,"tag":169,"props":3424,"children":3425},{"style":402},[3426],{"type":69,"value":3399},{"type":63,"tag":169,"props":3428,"children":3429},{"style":253},[3430],{"type":69,"value":813},{"type":63,"tag":169,"props":3432,"children":3433},{"class":171,"line":369},[3434],{"type":63,"tag":169,"props":3435,"children":3436},{"style":253},[3437],{"type":69,"value":1076},{"type":63,"tag":151,"props":3439,"children":3441},{"id":3440},"usematch-from",[3442],{"type":63,"tag":72,"props":3443,"children":3445},{"className":3444},[],[3446],{"type":69,"value":3447},"useMatch({ from })",{"type":63,"tag":81,"props":3449,"children":3450},{},[3451],{"type":69,"value":3452},"Access the full route match (params, search, loader data, context):",{"type":63,"tag":158,"props":3454,"children":3456},{"className":566,"code":3455,"language":568,"meta":163,"style":163},"import { useMatch } from '@tanstack\u002Freact-router'\n\nfunction PostDetails() {\n  const match = useMatch({ from: '\u002Fposts\u002F$postId' })\n  return \u003Cdiv>{match.loaderData.post.title}\u003C\u002Fdiv>\n}\n",[3457],{"type":63,"tag":72,"props":3458,"children":3459},{"__ignoreMap":163},[3460,3496,3503,3523,3579,3641],{"type":63,"tag":169,"props":3461,"children":3462},{"class":171,"line":172},[3463,3467,3471,3476,3480,3484,3488,3492],{"type":63,"tag":169,"props":3464,"children":3465},{"style":247},[3466],{"type":69,"value":250},{"type":63,"tag":169,"props":3468,"children":3469},{"style":253},[3470],{"type":69,"value":256},{"type":63,"tag":169,"props":3472,"children":3473},{"style":259},[3474],{"type":69,"value":3475}," useMatch",{"type":63,"tag":169,"props":3477,"children":3478},{"style":253},[3479],{"type":69,"value":267},{"type":63,"tag":169,"props":3481,"children":3482},{"style":247},[3483],{"type":69,"value":272},{"type":63,"tag":169,"props":3485,"children":3486},{"style":253},[3487],{"type":69,"value":277},{"type":63,"tag":169,"props":3489,"children":3490},{"style":182},[3491],{"type":69,"value":77},{"type":63,"tag":169,"props":3493,"children":3494},{"style":253},[3495],{"type":69,"value":287},{"type":63,"tag":169,"props":3497,"children":3498},{"class":171,"line":193},[3499],{"type":63,"tag":169,"props":3500,"children":3501},{"emptyLinePlaceholder":363},[3502],{"type":69,"value":366},{"type":63,"tag":169,"props":3504,"children":3505},{"class":171,"line":290},[3506,3510,3515,3519],{"type":63,"tag":169,"props":3507,"children":3508},{"style":689},[3509],{"type":69,"value":761},{"type":63,"tag":169,"props":3511,"children":3512},{"style":383},[3513],{"type":69,"value":3514}," PostDetails",{"type":63,"tag":169,"props":3516,"children":3517},{"style":253},[3518],{"type":69,"value":526},{"type":63,"tag":169,"props":3520,"children":3521},{"style":253},[3522],{"type":69,"value":774},{"type":63,"tag":169,"props":3524,"children":3525},{"class":171,"line":321},[3526,3530,3535,3539,3543,3547,3551,3555,3559,3563,3567,3571,3575],{"type":63,"tag":169,"props":3527,"children":3528},{"style":689},[3529],{"type":69,"value":1918},{"type":63,"tag":169,"props":3531,"children":3532},{"style":259},[3533],{"type":69,"value":3534}," match",{"type":63,"tag":169,"props":3536,"children":3537},{"style":253},[3538],{"type":69,"value":1928},{"type":63,"tag":169,"props":3540,"children":3541},{"style":383},[3542],{"type":69,"value":3475},{"type":63,"tag":169,"props":3544,"children":3545},{"style":402},[3546],{"type":69,"value":390},{"type":63,"tag":169,"props":3548,"children":3549},{"style":253},[3550],{"type":69,"value":1700},{"type":63,"tag":169,"props":3552,"children":3553},{"style":402},[3554],{"type":69,"value":272},{"type":63,"tag":169,"props":3556,"children":3557},{"style":253},[3558],{"type":69,"value":410},{"type":63,"tag":169,"props":3560,"children":3561},{"style":253},[3562],{"type":69,"value":277},{"type":63,"tag":169,"props":3564,"children":3565},{"style":182},[3566],{"type":69,"value":2706},{"type":63,"tag":169,"props":3568,"children":3569},{"style":253},[3570],{"type":69,"value":467},{"type":63,"tag":169,"props":3572,"children":3573},{"style":253},[3574],{"type":69,"value":267},{"type":63,"tag":169,"props":3576,"children":3577},{"style":402},[3578],{"type":69,"value":557},{"type":63,"tag":169,"props":3580,"children":3581},{"class":171,"line":359},[3582,3586,3590,3594,3598,3603,3607,3612,3616,3620,3624,3629,3633,3637],{"type":63,"tag":169,"props":3583,"children":3584},{"style":247},[3585],{"type":69,"value":782},{"type":63,"tag":169,"props":3587,"children":3588},{"style":253},[3589],{"type":69,"value":1257},{"type":63,"tag":169,"props":3591,"children":3592},{"style":402},[3593],{"type":69,"value":2460},{"type":63,"tag":169,"props":3595,"children":3596},{"style":253},[3597],{"type":69,"value":3404},{"type":63,"tag":169,"props":3599,"children":3600},{"style":259},[3601],{"type":69,"value":3602},"match",{"type":63,"tag":169,"props":3604,"children":3605},{"style":253},[3606],{"type":69,"value":1844},{"type":63,"tag":169,"props":3608,"children":3609},{"style":259},[3610],{"type":69,"value":3611},"loaderData",{"type":63,"tag":169,"props":3613,"children":3614},{"style":253},[3615],{"type":69,"value":1844},{"type":63,"tag":169,"props":3617,"children":3618},{"style":259},[3619],{"type":69,"value":3409},{"type":63,"tag":169,"props":3621,"children":3622},{"style":253},[3623],{"type":69,"value":1844},{"type":63,"tag":169,"props":3625,"children":3626},{"style":259},[3627],{"type":69,"value":3628},"title",{"type":63,"tag":169,"props":3630,"children":3631},{"style":253},[3632],{"type":69,"value":3019},{"type":63,"tag":169,"props":3634,"children":3635},{"style":402},[3636],{"type":69,"value":2460},{"type":63,"tag":169,"props":3638,"children":3639},{"style":253},[3640],{"type":69,"value":813},{"type":63,"tag":169,"props":3642,"children":3643},{"class":171,"line":369},[3644],{"type":63,"tag":169,"props":3645,"children":3646},{"style":253},[3647],{"type":69,"value":1076},{"type":63,"tag":151,"props":3649,"children":3651},{"id":3650},"other-hooks",[3652],{"type":69,"value":3653},"Other Hooks",{"type":63,"tag":81,"props":3655,"children":3656},{},[3657,3659,3664],{"type":69,"value":3658},"All imported from ",{"type":63,"tag":72,"props":3660,"children":3662},{"className":3661},[],[3663],{"type":69,"value":77},{"type":69,"value":410},{"type":63,"tag":3666,"props":3667,"children":3668},"ul",{},[3669,3684,3706,3720,3742,3777,3799],{"type":63,"tag":3670,"props":3671,"children":3672},"li",{},[3673,3682],{"type":63,"tag":102,"props":3674,"children":3675},{},[3676],{"type":63,"tag":72,"props":3677,"children":3679},{"className":3678},[],[3680],{"type":69,"value":3681},"useMatches()",{"type":69,"value":3683}," — array of all active route matches (useful for breadcrumbs)",{"type":63,"tag":3670,"props":3685,"children":3686},{},[3687,3696,3698,3704],{"type":63,"tag":102,"props":3688,"children":3689},{},[3690],{"type":63,"tag":72,"props":3691,"children":3693},{"className":3692},[],[3694],{"type":69,"value":3695},"useRouteContext({ from })",{"type":69,"value":3697}," — read context from ",{"type":63,"tag":72,"props":3699,"children":3701},{"className":3700},[],[3702],{"type":69,"value":3703},"beforeLoad",{"type":69,"value":3705}," or parent routes",{"type":63,"tag":3670,"props":3707,"children":3708},{},[3709,3718],{"type":63,"tag":102,"props":3710,"children":3711},{},[3712],{"type":63,"tag":72,"props":3713,"children":3715},{"className":3714},[],[3716],{"type":69,"value":3717},"useBlocker({ shouldBlockFn })",{"type":69,"value":3719}," — block navigation for unsaved changes",{"type":63,"tag":3670,"props":3721,"children":3722},{},[3723,3732,3734,3740],{"type":63,"tag":102,"props":3724,"children":3725},{},[3726],{"type":63,"tag":72,"props":3727,"children":3729},{"className":3728},[],[3730],{"type":69,"value":3731},"useCanGoBack()",{"type":69,"value":3733}," — returns ",{"type":63,"tag":72,"props":3735,"children":3737},{"className":3736},[],[3738],{"type":69,"value":3739},"boolean",{"type":69,"value":3741},", check if history has entries to go back to",{"type":63,"tag":3670,"props":3743,"children":3744},{},[3745,3754,3756,3762,3764,3769,3770,3776],{"type":63,"tag":102,"props":3746,"children":3747},{},[3748],{"type":63,"tag":72,"props":3749,"children":3751},{"className":3750},[],[3752],{"type":69,"value":3753},"useLocation()",{"type":69,"value":3755}," — current parsed location (",{"type":63,"tag":72,"props":3757,"children":3759},{"className":3758},[],[3760],{"type":69,"value":3761},"pathname",{"type":69,"value":3763},", ",{"type":63,"tag":72,"props":3765,"children":3767},{"className":3766},[],[3768],{"type":69,"value":35},{"type":69,"value":3763},{"type":63,"tag":72,"props":3771,"children":3773},{"className":3772},[],[3774],{"type":69,"value":3775},"hash",{"type":69,"value":79},{"type":63,"tag":3670,"props":3778,"children":3779},{},[3780,3789,3791,3797],{"type":63,"tag":102,"props":3781,"children":3782},{},[3783],{"type":63,"tag":72,"props":3784,"children":3786},{"className":3785},[],[3787],{"type":69,"value":3788},"useLinkProps({ to, params?, search? })",{"type":69,"value":3790}," — get ",{"type":63,"tag":72,"props":3792,"children":3794},{"className":3793},[],[3795],{"type":69,"value":3796},"\u003Ca>",{"type":69,"value":3798}," props for custom link elements",{"type":63,"tag":3670,"props":3800,"children":3801},{},[3802,3811,3813],{"type":63,"tag":102,"props":3803,"children":3804},{},[3805],{"type":63,"tag":72,"props":3806,"children":3808},{"className":3807},[],[3809],{"type":69,"value":3810},"useMatchRoute()",{"type":69,"value":3812}," — returns a function: ",{"type":63,"tag":72,"props":3814,"children":3816},{"className":3815},[],[3817],{"type":69,"value":3818},"matchRoute({ to }) => match | false",{"type":63,"tag":144,"props":3820,"children":3822},{"id":3821},"components-reference",[3823],{"type":69,"value":3824},"Components Reference",{"type":63,"tag":151,"props":3826,"children":3828},{"id":3827},"routerprovider",[3829],{"type":63,"tag":72,"props":3830,"children":3832},{"className":3831},[],[3833],{"type":69,"value":2005},{"type":63,"tag":81,"props":3835,"children":3836},{},[3837],{"type":69,"value":3838},"Mount the router at the top of your React tree:",{"type":63,"tag":158,"props":3840,"children":3842},{"className":566,"code":3841,"language":568,"meta":163,"style":163},"\u003CRouterProvider router={router} \u002F>\n",[3843],{"type":63,"tag":72,"props":3844,"children":3845},{"__ignoreMap":163},[3846],{"type":63,"tag":169,"props":3847,"children":3848},{"class":171,"line":172},[3849,3854,3858,3862,3866,3870],{"type":63,"tag":169,"props":3850,"children":3851},{"style":253},[3852],{"type":69,"value":3853},"\u003C",{"type":63,"tag":169,"props":3855,"children":3856},{"style":176},[3857],{"type":69,"value":2005},{"type":63,"tag":169,"props":3859,"children":3860},{"style":689},[3861],{"type":69,"value":2010},{"type":63,"tag":169,"props":3863,"children":3864},{"style":253},[3865],{"type":69,"value":2015},{"type":63,"tag":169,"props":3867,"children":3868},{"style":259},[3869],{"type":69,"value":33},{"type":63,"tag":169,"props":3871,"children":3872},{"style":253},[3873],{"type":69,"value":2024},{"type":63,"tag":151,"props":3875,"children":3877},{"id":3876},"link",[3878],{"type":63,"tag":72,"props":3879,"children":3881},{"className":3880},[],[3882],{"type":69,"value":826},{"type":63,"tag":81,"props":3884,"children":3885},{},[3886,3888,3893],{"type":69,"value":3887},"Type-safe navigation link with ",{"type":63,"tag":72,"props":3889,"children":3891},{"className":3890},[],[3892],{"type":69,"value":3796},{"type":69,"value":3894}," semantics:",{"type":63,"tag":158,"props":3896,"children":3898},{"className":566,"code":3897,"language":568,"meta":163,"style":163},"\u003CLink to=\"\u002Fposts\u002F$postId\" params={{ postId: '42' }}>\n  View Post\n\u003C\u002FLink>\n",[3899],{"type":63,"tag":72,"props":3900,"children":3901},{"__ignoreMap":163},[3902,3968,3976],{"type":63,"tag":169,"props":3903,"children":3904},{"class":171,"line":172},[3905,3909,3913,3917,3921,3925,3929,3933,3937,3942,3946,3950,3954,3959,3963],{"type":63,"tag":169,"props":3906,"children":3907},{"style":253},[3908],{"type":69,"value":3853},{"type":63,"tag":169,"props":3910,"children":3911},{"style":176},[3912],{"type":69,"value":826},{"type":63,"tag":169,"props":3914,"children":3915},{"style":689},[3916],{"type":69,"value":831},{"type":63,"tag":169,"props":3918,"children":3919},{"style":253},[3920],{"type":69,"value":702},{"type":63,"tag":169,"props":3922,"children":3923},{"style":253},[3924],{"type":69,"value":840},{"type":63,"tag":169,"props":3926,"children":3927},{"style":182},[3928],{"type":69,"value":2706},{"type":63,"tag":169,"props":3930,"children":3931},{"style":253},[3932],{"type":69,"value":840},{"type":63,"tag":169,"props":3934,"children":3935},{"style":689},[3936],{"type":69,"value":2719},{"type":63,"tag":169,"props":3938,"children":3939},{"style":253},[3940],{"type":69,"value":3941},"={{",{"type":63,"tag":169,"props":3943,"children":3944},{"style":402},[3945],{"type":69,"value":2732},{"type":63,"tag":169,"props":3947,"children":3948},{"style":253},[3949],{"type":69,"value":410},{"type":63,"tag":169,"props":3951,"children":3952},{"style":253},[3953],{"type":69,"value":277},{"type":63,"tag":169,"props":3955,"children":3956},{"style":182},[3957],{"type":69,"value":3958},"42",{"type":63,"tag":169,"props":3960,"children":3961},{"style":253},[3962],{"type":69,"value":467},{"type":63,"tag":169,"props":3964,"children":3965},{"style":253},[3966],{"type":69,"value":3967}," }}>\n",{"type":63,"tag":169,"props":3969,"children":3970},{"class":171,"line":193},[3971],{"type":63,"tag":169,"props":3972,"children":3973},{"style":259},[3974],{"type":69,"value":3975},"  View Post\n",{"type":63,"tag":169,"props":3977,"children":3978},{"class":171,"line":290},[3979,3983,3987],{"type":63,"tag":169,"props":3980,"children":3981},{"style":253},[3982],{"type":69,"value":1276},{"type":63,"tag":169,"props":3984,"children":3985},{"style":176},[3986],{"type":69,"value":826},{"type":63,"tag":169,"props":3988,"children":3989},{"style":253},[3990],{"type":69,"value":813},{"type":63,"tag":151,"props":3992,"children":3994},{"id":3993},"outlet",[3995],{"type":63,"tag":72,"props":3996,"children":3998},{"className":3997},[],[3999],{"type":69,"value":1028},{"type":63,"tag":81,"props":4001,"children":4002},{},[4003],{"type":69,"value":4004},"Renders the matched child route component:",{"type":63,"tag":158,"props":4006,"children":4008},{"className":566,"code":4007,"language":568,"meta":163,"style":163},"function Layout() {\n  return (\n    \u003Cdiv>\n      \u003CSidebar \u002F>\n      \u003Cmain>\n        \u003COutlet \u002F>\n      \u003C\u002Fmain>\n    \u003C\u002Fdiv>\n  )\n}\n",[4009],{"type":63,"tag":72,"props":4010,"children":4011},{"__ignoreMap":163},[4012,4032,4043,4058,4074,4090,4105,4120,4135,4142],{"type":63,"tag":169,"props":4013,"children":4014},{"class":171,"line":172},[4015,4019,4024,4028],{"type":63,"tag":169,"props":4016,"children":4017},{"style":689},[4018],{"type":69,"value":761},{"type":63,"tag":169,"props":4020,"children":4021},{"style":383},[4022],{"type":69,"value":4023}," Layout",{"type":63,"tag":169,"props":4025,"children":4026},{"style":253},[4027],{"type":69,"value":526},{"type":63,"tag":169,"props":4029,"children":4030},{"style":253},[4031],{"type":69,"value":774},{"type":63,"tag":169,"props":4033,"children":4034},{"class":171,"line":193},[4035,4039],{"type":63,"tag":169,"props":4036,"children":4037},{"style":247},[4038],{"type":69,"value":782},{"type":63,"tag":169,"props":4040,"children":4041},{"style":402},[4042],{"type":69,"value":787},{"type":63,"tag":169,"props":4044,"children":4045},{"class":171,"line":290},[4046,4050,4054],{"type":63,"tag":169,"props":4047,"children":4048},{"style":253},[4049],{"type":69,"value":1984},{"type":63,"tag":169,"props":4051,"children":4052},{"style":402},[4053],{"type":69,"value":2460},{"type":63,"tag":169,"props":4055,"children":4056},{"style":253},[4057],{"type":69,"value":813},{"type":63,"tag":169,"props":4059,"children":4060},{"class":171,"line":321},[4061,4065,4070],{"type":63,"tag":169,"props":4062,"children":4063},{"style":253},[4064],{"type":69,"value":803},{"type":63,"tag":169,"props":4066,"children":4067},{"style":176},[4068],{"type":69,"value":4069},"Sidebar",{"type":63,"tag":169,"props":4071,"children":4072},{"style":253},[4073],{"type":69,"value":1015},{"type":63,"tag":169,"props":4075,"children":4076},{"class":171,"line":359},[4077,4081,4086],{"type":63,"tag":169,"props":4078,"children":4079},{"style":253},[4080],{"type":69,"value":803},{"type":63,"tag":169,"props":4082,"children":4083},{"style":402},[4084],{"type":69,"value":4085},"main",{"type":63,"tag":169,"props":4087,"children":4088},{"style":253},[4089],{"type":69,"value":813},{"type":63,"tag":169,"props":4091,"children":4092},{"class":171,"line":369},[4093,4097,4101],{"type":63,"tag":169,"props":4094,"children":4095},{"style":253},[4096],{"type":69,"value":821},{"type":63,"tag":169,"props":4098,"children":4099},{"style":176},[4100],{"type":69,"value":1028},{"type":63,"tag":169,"props":4102,"children":4103},{"style":253},[4104],{"type":69,"value":1015},{"type":63,"tag":169,"props":4106,"children":4107},{"class":171,"line":398},[4108,4112,4116],{"type":63,"tag":169,"props":4109,"children":4110},{"style":253},[4111],{"type":69,"value":989},{"type":63,"tag":169,"props":4113,"children":4114},{"style":402},[4115],{"type":69,"value":4085},{"type":63,"tag":169,"props":4117,"children":4118},{"style":253},[4119],{"type":69,"value":813},{"type":63,"tag":169,"props":4121,"children":4122},{"class":171,"line":418},[4123,4127,4131],{"type":63,"tag":169,"props":4124,"children":4125},{"style":253},[4126],{"type":69,"value":2032},{"type":63,"tag":169,"props":4128,"children":4129},{"style":402},[4130],{"type":69,"value":2460},{"type":63,"tag":169,"props":4132,"children":4133},{"style":253},[4134],{"type":69,"value":813},{"type":63,"tag":169,"props":4136,"children":4137},{"class":171,"line":427},[4138],{"type":63,"tag":169,"props":4139,"children":4140},{"style":402},[4141],{"type":69,"value":1067},{"type":63,"tag":169,"props":4143,"children":4144},{"class":171,"line":444},[4145],{"type":63,"tag":169,"props":4146,"children":4147},{"style":253},[4148],{"type":69,"value":1076},{"type":63,"tag":151,"props":4150,"children":4152},{"id":4151},"navigate",[4153],{"type":63,"tag":72,"props":4154,"children":4156},{"className":4155},[],[4157],{"type":69,"value":4158},"Navigate",{"type":63,"tag":81,"props":4160,"children":4161},{},[4162],{"type":69,"value":4163},"Declarative redirect component:",{"type":63,"tag":158,"props":4165,"children":4167},{"className":566,"code":4166,"language":568,"meta":163,"style":163},"import { Navigate } from '@tanstack\u002Freact-router'\n\nfunction OldPage() {\n  return \u003CNavigate to=\"\u002Fnew-page\" \u002F>\n}\n",[4168],{"type":63,"tag":72,"props":4169,"children":4170},{"__ignoreMap":163},[4171,4207,4214,4234,4274],{"type":63,"tag":169,"props":4172,"children":4173},{"class":171,"line":172},[4174,4178,4182,4187,4191,4195,4199,4203],{"type":63,"tag":169,"props":4175,"children":4176},{"style":247},[4177],{"type":69,"value":250},{"type":63,"tag":169,"props":4179,"children":4180},{"style":253},[4181],{"type":69,"value":256},{"type":63,"tag":169,"props":4183,"children":4184},{"style":259},[4185],{"type":69,"value":4186}," Navigate",{"type":63,"tag":169,"props":4188,"children":4189},{"style":253},[4190],{"type":69,"value":267},{"type":63,"tag":169,"props":4192,"children":4193},{"style":247},[4194],{"type":69,"value":272},{"type":63,"tag":169,"props":4196,"children":4197},{"style":253},[4198],{"type":69,"value":277},{"type":63,"tag":169,"props":4200,"children":4201},{"style":182},[4202],{"type":69,"value":77},{"type":63,"tag":169,"props":4204,"children":4205},{"style":253},[4206],{"type":69,"value":287},{"type":63,"tag":169,"props":4208,"children":4209},{"class":171,"line":193},[4210],{"type":63,"tag":169,"props":4211,"children":4212},{"emptyLinePlaceholder":363},[4213],{"type":69,"value":366},{"type":63,"tag":169,"props":4215,"children":4216},{"class":171,"line":290},[4217,4221,4226,4230],{"type":63,"tag":169,"props":4218,"children":4219},{"style":689},[4220],{"type":69,"value":761},{"type":63,"tag":169,"props":4222,"children":4223},{"style":383},[4224],{"type":69,"value":4225}," OldPage",{"type":63,"tag":169,"props":4227,"children":4228},{"style":253},[4229],{"type":69,"value":526},{"type":63,"tag":169,"props":4231,"children":4232},{"style":253},[4233],{"type":69,"value":774},{"type":63,"tag":169,"props":4235,"children":4236},{"class":171,"line":321},[4237,4241,4245,4249,4253,4257,4261,4266,4270],{"type":63,"tag":169,"props":4238,"children":4239},{"style":247},[4240],{"type":69,"value":782},{"type":63,"tag":169,"props":4242,"children":4243},{"style":253},[4244],{"type":69,"value":1257},{"type":63,"tag":169,"props":4246,"children":4247},{"style":176},[4248],{"type":69,"value":4158},{"type":63,"tag":169,"props":4250,"children":4251},{"style":689},[4252],{"type":69,"value":831},{"type":63,"tag":169,"props":4254,"children":4255},{"style":253},[4256],{"type":69,"value":702},{"type":63,"tag":169,"props":4258,"children":4259},{"style":253},[4260],{"type":69,"value":840},{"type":63,"tag":169,"props":4262,"children":4263},{"style":182},[4264],{"type":69,"value":4265},"\u002Fnew-page",{"type":63,"tag":169,"props":4267,"children":4268},{"style":253},[4269],{"type":69,"value":840},{"type":63,"tag":169,"props":4271,"children":4272},{"style":253},[4273],{"type":69,"value":1015},{"type":63,"tag":169,"props":4275,"children":4276},{"class":171,"line":359},[4277],{"type":63,"tag":169,"props":4278,"children":4279},{"style":253},[4280],{"type":69,"value":1076},{"type":63,"tag":151,"props":4282,"children":4284},{"id":4283},"await",[4285],{"type":63,"tag":72,"props":4286,"children":4288},{"className":4287},[],[4289],{"type":69,"value":4290},"Await",{"type":63,"tag":81,"props":4292,"children":4293},{},[4294],{"type":69,"value":4295},"Renders deferred data from unawaited loader promises with Suspense:",{"type":63,"tag":158,"props":4297,"children":4299},{"className":566,"code":4298,"language":568,"meta":163,"style":163},"import { Await } from '@tanstack\u002Freact-router'\nimport { Suspense } from 'react'\n\nfunction PostWithComments() {\n  const { deferredComments } = Route.useLoaderData()\n  return (\n    \u003Cdiv>\n      \u003Ch1>Post\u003C\u002Fh1>\n      \u003CSuspense fallback={\u003Cdiv>Loading comments...\u003C\u002Fdiv>}>\n        \u003CAwait promise={deferredComments}>\n          {(comments) => (\n            \u003Cul>\n              {comments.map((c) => (\n                \u003Cli key={c.id}>{c.text}\u003C\u002Fli>\n              ))}\n            \u003C\u002Ful>\n          )}\n        \u003C\u002FAwait>\n      \u003C\u002FSuspense>\n    \u003C\u002Fdiv>\n  )\n}\n",[4300],{"type":63,"tag":72,"props":4301,"children":4302},{"__ignoreMap":163},[4303,4339,4375,4382,4402,4444,4455,4470,4502,4550,4580,4605,4621,4667,4730,4742,4758,4770,4785,4800,4815,4822],{"type":63,"tag":169,"props":4304,"children":4305},{"class":171,"line":172},[4306,4310,4314,4319,4323,4327,4331,4335],{"type":63,"tag":169,"props":4307,"children":4308},{"style":247},[4309],{"type":69,"value":250},{"type":63,"tag":169,"props":4311,"children":4312},{"style":253},[4313],{"type":69,"value":256},{"type":63,"tag":169,"props":4315,"children":4316},{"style":259},[4317],{"type":69,"value":4318}," Await",{"type":63,"tag":169,"props":4320,"children":4321},{"style":253},[4322],{"type":69,"value":267},{"type":63,"tag":169,"props":4324,"children":4325},{"style":247},[4326],{"type":69,"value":272},{"type":63,"tag":169,"props":4328,"children":4329},{"style":253},[4330],{"type":69,"value":277},{"type":63,"tag":169,"props":4332,"children":4333},{"style":182},[4334],{"type":69,"value":77},{"type":63,"tag":169,"props":4336,"children":4337},{"style":253},[4338],{"type":69,"value":287},{"type":63,"tag":169,"props":4340,"children":4341},{"class":171,"line":193},[4342,4346,4350,4355,4359,4363,4367,4371],{"type":63,"tag":169,"props":4343,"children":4344},{"style":247},[4345],{"type":69,"value":250},{"type":63,"tag":169,"props":4347,"children":4348},{"style":253},[4349],{"type":69,"value":256},{"type":63,"tag":169,"props":4351,"children":4352},{"style":259},[4353],{"type":69,"value":4354}," Suspense",{"type":63,"tag":169,"props":4356,"children":4357},{"style":253},[4358],{"type":69,"value":267},{"type":63,"tag":169,"props":4360,"children":4361},{"style":247},[4362],{"type":69,"value":272},{"type":63,"tag":169,"props":4364,"children":4365},{"style":253},[4366],{"type":69,"value":277},{"type":63,"tag":169,"props":4368,"children":4369},{"style":182},[4370],{"type":69,"value":14},{"type":63,"tag":169,"props":4372,"children":4373},{"style":253},[4374],{"type":69,"value":287},{"type":63,"tag":169,"props":4376,"children":4377},{"class":171,"line":290},[4378],{"type":63,"tag":169,"props":4379,"children":4380},{"emptyLinePlaceholder":363},[4381],{"type":69,"value":366},{"type":63,"tag":169,"props":4383,"children":4384},{"class":171,"line":321},[4385,4389,4394,4398],{"type":63,"tag":169,"props":4386,"children":4387},{"style":689},[4388],{"type":69,"value":761},{"type":63,"tag":169,"props":4390,"children":4391},{"style":383},[4392],{"type":69,"value":4393}," PostWithComments",{"type":63,"tag":169,"props":4395,"children":4396},{"style":253},[4397],{"type":69,"value":526},{"type":63,"tag":169,"props":4399,"children":4400},{"style":253},[4401],{"type":69,"value":774},{"type":63,"tag":169,"props":4403,"children":4404},{"class":171,"line":359},[4405,4409,4413,4418,4422,4426,4431,4435,4440],{"type":63,"tag":169,"props":4406,"children":4407},{"style":689},[4408],{"type":69,"value":1918},{"type":63,"tag":169,"props":4410,"children":4411},{"style":253},[4412],{"type":69,"value":256},{"type":63,"tag":169,"props":4414,"children":4415},{"style":259},[4416],{"type":69,"value":4417}," deferredComments",{"type":63,"tag":169,"props":4419,"children":4420},{"style":253},[4421],{"type":69,"value":267},{"type":63,"tag":169,"props":4423,"children":4424},{"style":253},[4425],{"type":69,"value":1928},{"type":63,"tag":169,"props":4427,"children":4428},{"style":259},[4429],{"type":69,"value":4430}," Route",{"type":63,"tag":169,"props":4432,"children":4433},{"style":253},[4434],{"type":69,"value":1844},{"type":63,"tag":169,"props":4436,"children":4437},{"style":383},[4438],{"type":69,"value":4439},"useLoaderData",{"type":63,"tag":169,"props":4441,"children":4442},{"style":402},[4443],{"type":69,"value":2181},{"type":63,"tag":169,"props":4445,"children":4446},{"class":171,"line":369},[4447,4451],{"type":63,"tag":169,"props":4448,"children":4449},{"style":247},[4450],{"type":69,"value":782},{"type":63,"tag":169,"props":4452,"children":4453},{"style":402},[4454],{"type":69,"value":787},{"type":63,"tag":169,"props":4456,"children":4457},{"class":171,"line":398},[4458,4462,4466],{"type":63,"tag":169,"props":4459,"children":4460},{"style":253},[4461],{"type":69,"value":1984},{"type":63,"tag":169,"props":4463,"children":4464},{"style":402},[4465],{"type":69,"value":2460},{"type":63,"tag":169,"props":4467,"children":4468},{"style":253},[4469],{"type":69,"value":813},{"type":63,"tag":169,"props":4471,"children":4472},{"class":171,"line":418},[4473,4477,4481,4485,4490,4494,4498],{"type":63,"tag":169,"props":4474,"children":4475},{"style":253},[4476],{"type":69,"value":803},{"type":63,"tag":169,"props":4478,"children":4479},{"style":402},[4480],{"type":69,"value":64},{"type":63,"tag":169,"props":4482,"children":4483},{"style":253},[4484],{"type":69,"value":1266},{"type":63,"tag":169,"props":4486,"children":4487},{"style":259},[4488],{"type":69,"value":4489},"Post",{"type":63,"tag":169,"props":4491,"children":4492},{"style":253},[4493],{"type":69,"value":1276},{"type":63,"tag":169,"props":4495,"children":4496},{"style":402},[4497],{"type":69,"value":64},{"type":63,"tag":169,"props":4499,"children":4500},{"style":253},[4501],{"type":69,"value":813},{"type":63,"tag":169,"props":4503,"children":4504},{"class":171,"line":427},[4505,4509,4514,4519,4524,4528,4532,4537,4541,4545],{"type":63,"tag":169,"props":4506,"children":4507},{"style":253},[4508],{"type":69,"value":803},{"type":63,"tag":169,"props":4510,"children":4511},{"style":176},[4512],{"type":69,"value":4513},"Suspense",{"type":63,"tag":169,"props":4515,"children":4516},{"style":689},[4517],{"type":69,"value":4518}," fallback",{"type":63,"tag":169,"props":4520,"children":4521},{"style":253},[4522],{"type":69,"value":4523},"={\u003C",{"type":63,"tag":169,"props":4525,"children":4526},{"style":402},[4527],{"type":69,"value":2460},{"type":63,"tag":169,"props":4529,"children":4530},{"style":253},[4531],{"type":69,"value":1266},{"type":63,"tag":169,"props":4533,"children":4534},{"style":259},[4535],{"type":69,"value":4536},"Loading comments...",{"type":63,"tag":169,"props":4538,"children":4539},{"style":253},[4540],{"type":69,"value":1276},{"type":63,"tag":169,"props":4542,"children":4543},{"style":402},[4544],{"type":69,"value":2460},{"type":63,"tag":169,"props":4546,"children":4547},{"style":253},[4548],{"type":69,"value":4549},">}>\n",{"type":63,"tag":169,"props":4551,"children":4552},{"class":171,"line":444},[4553,4557,4561,4566,4570,4575],{"type":63,"tag":169,"props":4554,"children":4555},{"style":253},[4556],{"type":69,"value":821},{"type":63,"tag":169,"props":4558,"children":4559},{"style":176},[4560],{"type":69,"value":4290},{"type":63,"tag":169,"props":4562,"children":4563},{"style":689},[4564],{"type":69,"value":4565}," promise",{"type":63,"tag":169,"props":4567,"children":4568},{"style":253},[4569],{"type":69,"value":2015},{"type":63,"tag":169,"props":4571,"children":4572},{"style":259},[4573],{"type":69,"value":4574},"deferredComments",{"type":63,"tag":169,"props":4576,"children":4577},{"style":253},[4578],{"type":69,"value":4579},"}>\n",{"type":63,"tag":169,"props":4581,"children":4582},{"class":171,"line":475},[4583,4588,4593,4597,4601],{"type":63,"tag":169,"props":4584,"children":4585},{"style":253},[4586],{"type":69,"value":4587},"          {(",{"type":63,"tag":169,"props":4589,"children":4590},{"style":2402},[4591],{"type":69,"value":4592},"comments",{"type":63,"tag":169,"props":4594,"children":4595},{"style":253},[4596],{"type":69,"value":79},{"type":63,"tag":169,"props":4598,"children":4599},{"style":689},[4600],{"type":69,"value":2212},{"type":63,"tag":169,"props":4602,"children":4603},{"style":259},[4604],{"type":69,"value":787},{"type":63,"tag":169,"props":4606,"children":4607},{"class":171,"line":498},[4608,4613,4617],{"type":63,"tag":169,"props":4609,"children":4610},{"style":253},[4611],{"type":69,"value":4612},"            \u003C",{"type":63,"tag":169,"props":4614,"children":4615},{"style":402},[4616],{"type":69,"value":3666},{"type":63,"tag":169,"props":4618,"children":4619},{"style":253},[4620],{"type":69,"value":813},{"type":63,"tag":169,"props":4622,"children":4623},{"class":171,"line":515},[4624,4629,4633,4637,4642,4646,4650,4655,4659,4663],{"type":63,"tag":169,"props":4625,"children":4626},{"style":253},[4627],{"type":69,"value":4628},"              {",{"type":63,"tag":169,"props":4630,"children":4631},{"style":259},[4632],{"type":69,"value":4592},{"type":63,"tag":169,"props":4634,"children":4635},{"style":253},[4636],{"type":69,"value":1844},{"type":63,"tag":169,"props":4638,"children":4639},{"style":383},[4640],{"type":69,"value":4641},"map",{"type":63,"tag":169,"props":4643,"children":4644},{"style":259},[4645],{"type":69,"value":390},{"type":63,"tag":169,"props":4647,"children":4648},{"style":253},[4649],{"type":69,"value":390},{"type":63,"tag":169,"props":4651,"children":4652},{"style":2402},[4653],{"type":69,"value":4654},"c",{"type":63,"tag":169,"props":4656,"children":4657},{"style":253},[4658],{"type":69,"value":79},{"type":63,"tag":169,"props":4660,"children":4661},{"style":689},[4662],{"type":69,"value":2212},{"type":63,"tag":169,"props":4664,"children":4665},{"style":259},[4666],{"type":69,"value":787},{"type":63,"tag":169,"props":4668,"children":4669},{"class":171,"line":533},[4670,4675,4679,4684,4688,4692,4696,4701,4706,4710,4714,4718,4722,4726],{"type":63,"tag":169,"props":4671,"children":4672},{"style":253},[4673],{"type":69,"value":4674},"                \u003C",{"type":63,"tag":169,"props":4676,"children":4677},{"style":402},[4678],{"type":69,"value":3670},{"type":63,"tag":169,"props":4680,"children":4681},{"style":689},[4682],{"type":69,"value":4683}," key",{"type":63,"tag":169,"props":4685,"children":4686},{"style":253},[4687],{"type":69,"value":2015},{"type":63,"tag":169,"props":4689,"children":4690},{"style":259},[4691],{"type":69,"value":4654},{"type":63,"tag":169,"props":4693,"children":4694},{"style":253},[4695],{"type":69,"value":1844},{"type":63,"tag":169,"props":4697,"children":4698},{"style":259},[4699],{"type":69,"value":4700},"id",{"type":63,"tag":169,"props":4702,"children":4703},{"style":253},[4704],{"type":69,"value":4705},"}>{",{"type":63,"tag":169,"props":4707,"children":4708},{"style":259},[4709],{"type":69,"value":4654},{"type":63,"tag":169,"props":4711,"children":4712},{"style":253},[4713],{"type":69,"value":1844},{"type":63,"tag":169,"props":4715,"children":4716},{"style":259},[4717],{"type":69,"value":69},{"type":63,"tag":169,"props":4719,"children":4720},{"style":253},[4721],{"type":69,"value":3019},{"type":63,"tag":169,"props":4723,"children":4724},{"style":402},[4725],{"type":69,"value":3670},{"type":63,"tag":169,"props":4727,"children":4728},{"style":253},[4729],{"type":69,"value":813},{"type":63,"tag":169,"props":4731,"children":4732},{"class":171,"line":546},[4733,4738],{"type":63,"tag":169,"props":4734,"children":4735},{"style":259},[4736],{"type":69,"value":4737},"              ))",{"type":63,"tag":169,"props":4739,"children":4740},{"style":253},[4741],{"type":69,"value":1076},{"type":63,"tag":169,"props":4743,"children":4744},{"class":171,"line":901},[4745,4750,4754],{"type":63,"tag":169,"props":4746,"children":4747},{"style":253},[4748],{"type":69,"value":4749},"            \u003C\u002F",{"type":63,"tag":169,"props":4751,"children":4752},{"style":402},[4753],{"type":69,"value":3666},{"type":63,"tag":169,"props":4755,"children":4756},{"style":253},[4757],{"type":69,"value":813},{"type":63,"tag":169,"props":4759,"children":4760},{"class":171,"line":958},[4761,4766],{"type":63,"tag":169,"props":4762,"children":4763},{"style":259},[4764],{"type":69,"value":4765},"          )",{"type":63,"tag":169,"props":4767,"children":4768},{"style":253},[4769],{"type":69,"value":1076},{"type":63,"tag":169,"props":4771,"children":4772},{"class":171,"line":967},[4773,4777,4781],{"type":63,"tag":169,"props":4774,"children":4775},{"style":253},[4776],{"type":69,"value":890},{"type":63,"tag":169,"props":4778,"children":4779},{"style":176},[4780],{"type":69,"value":4290},{"type":63,"tag":169,"props":4782,"children":4783},{"style":253},[4784],{"type":69,"value":813},{"type":63,"tag":169,"props":4786,"children":4787},{"class":171,"line":983},[4788,4792,4796],{"type":63,"tag":169,"props":4789,"children":4790},{"style":253},[4791],{"type":69,"value":989},{"type":63,"tag":169,"props":4793,"children":4794},{"style":176},[4795],{"type":69,"value":4513},{"type":63,"tag":169,"props":4797,"children":4798},{"style":253},[4799],{"type":69,"value":813},{"type":63,"tag":169,"props":4801,"children":4802},{"class":171,"line":1000},[4803,4807,4811],{"type":63,"tag":169,"props":4804,"children":4805},{"style":253},[4806],{"type":69,"value":2032},{"type":63,"tag":169,"props":4808,"children":4809},{"style":402},[4810],{"type":69,"value":2460},{"type":63,"tag":169,"props":4812,"children":4813},{"style":253},[4814],{"type":69,"value":813},{"type":63,"tag":169,"props":4816,"children":4817},{"class":171,"line":1018},[4818],{"type":63,"tag":169,"props":4819,"children":4820},{"style":402},[4821],{"type":69,"value":1067},{"type":63,"tag":169,"props":4823,"children":4824},{"class":171,"line":1035},[4825],{"type":63,"tag":169,"props":4826,"children":4827},{"style":253},[4828],{"type":69,"value":1076},{"type":63,"tag":151,"props":4830,"children":4832},{"id":4831},"catchboundary",[4833],{"type":63,"tag":72,"props":4834,"children":4836},{"className":4835},[],[4837],{"type":69,"value":4838},"CatchBoundary",{"type":63,"tag":81,"props":4840,"children":4841},{},[4842,4844,4850],{"type":69,"value":4843},"Error boundary for component-level error handling (route-level errors use ",{"type":63,"tag":72,"props":4845,"children":4847},{"className":4846},[],[4848],{"type":69,"value":4849},"errorComponent",{"type":69,"value":4851}," route option):",{"type":63,"tag":158,"props":4853,"children":4855},{"className":566,"code":4854,"language":568,"meta":163,"style":163},"import { CatchBoundary } from '@tanstack\u002Freact-router'\n;\u003CCatchBoundary\n  getResetKey={() => 'widget'}\n  onCatch={(error) => console.error(error)}\n  errorComponent={({ error }) => \u003Cdiv>Error: {error.message}\u003C\u002Fdiv>}\n>\n  \u003CRiskyWidget \u002F>\n\u003C\u002FCatchBoundary>\n",[4856],{"type":63,"tag":72,"props":4857,"children":4858},{"__ignoreMap":163},[4859,4895,4908,4942,4963,5028,5035,5052],{"type":63,"tag":169,"props":4860,"children":4861},{"class":171,"line":172},[4862,4866,4870,4875,4879,4883,4887,4891],{"type":63,"tag":169,"props":4863,"children":4864},{"style":247},[4865],{"type":69,"value":250},{"type":63,"tag":169,"props":4867,"children":4868},{"style":253},[4869],{"type":69,"value":256},{"type":63,"tag":169,"props":4871,"children":4872},{"style":259},[4873],{"type":69,"value":4874}," CatchBoundary",{"type":63,"tag":169,"props":4876,"children":4877},{"style":253},[4878],{"type":69,"value":267},{"type":63,"tag":169,"props":4880,"children":4881},{"style":247},[4882],{"type":69,"value":272},{"type":63,"tag":169,"props":4884,"children":4885},{"style":253},[4886],{"type":69,"value":277},{"type":63,"tag":169,"props":4888,"children":4889},{"style":182},[4890],{"type":69,"value":77},{"type":63,"tag":169,"props":4892,"children":4893},{"style":253},[4894],{"type":69,"value":287},{"type":63,"tag":169,"props":4896,"children":4897},{"class":171,"line":193},[4898,4903],{"type":63,"tag":169,"props":4899,"children":4900},{"style":253},[4901],{"type":69,"value":4902},";\u003C",{"type":63,"tag":169,"props":4904,"children":4905},{"style":259},[4906],{"type":69,"value":4907},"CatchBoundary\n",{"type":63,"tag":169,"props":4909,"children":4910},{"class":171,"line":290},[4911,4916,4920,4925,4929,4934,4938],{"type":63,"tag":169,"props":4912,"children":4913},{"style":259},[4914],{"type":69,"value":4915},"  getResetKey",{"type":63,"tag":169,"props":4917,"children":4918},{"style":253},[4919],{"type":69,"value":2015},{"type":63,"tag":169,"props":4921,"children":4922},{"style":259},[4923],{"type":69,"value":4924},"() => ",{"type":63,"tag":169,"props":4926,"children":4927},{"style":253},[4928],{"type":69,"value":467},{"type":63,"tag":169,"props":4930,"children":4931},{"style":402},[4932],{"type":69,"value":4933},"widget",{"type":63,"tag":169,"props":4935,"children":4936},{"style":253},[4937],{"type":69,"value":467},{"type":63,"tag":169,"props":4939,"children":4940},{"style":253},[4941],{"type":69,"value":1076},{"type":63,"tag":169,"props":4943,"children":4944},{"class":171,"line":321},[4945,4950,4954,4959],{"type":63,"tag":169,"props":4946,"children":4947},{"style":259},[4948],{"type":69,"value":4949},"  onCatch",{"type":63,"tag":169,"props":4951,"children":4952},{"style":253},[4953],{"type":69,"value":2015},{"type":63,"tag":169,"props":4955,"children":4956},{"style":259},[4957],{"type":69,"value":4958},"(error) => console.error(error)",{"type":63,"tag":169,"props":4960,"children":4961},{"style":253},[4962],{"type":69,"value":1076},{"type":63,"tag":169,"props":4964,"children":4965},{"class":171,"line":359},[4966,4971,4975,4979,4983,4988,4992,4997,5002,5006,5010,5015,5019,5023],{"type":63,"tag":169,"props":4967,"children":4968},{"style":259},[4969],{"type":69,"value":4970},"  errorComponent",{"type":63,"tag":169,"props":4972,"children":4973},{"style":253},[4974],{"type":69,"value":2015},{"type":63,"tag":169,"props":4976,"children":4977},{"style":259},[4978],{"type":69,"value":390},{"type":63,"tag":169,"props":4980,"children":4981},{"style":253},[4982],{"type":69,"value":1700},{"type":63,"tag":169,"props":4984,"children":4985},{"style":259},[4986],{"type":69,"value":4987}," error",{"type":63,"tag":169,"props":4989,"children":4990},{"style":253},[4991],{"type":69,"value":267},{"type":63,"tag":169,"props":4993,"children":4994},{"style":259},[4995],{"type":69,"value":4996},") => \u003Cdiv>",{"type":63,"tag":169,"props":4998,"children":4999},{"style":402},[5000],{"type":69,"value":5001},"Error",{"type":63,"tag":169,"props":5003,"children":5004},{"style":253},[5005],{"type":69,"value":410},{"type":63,"tag":169,"props":5007,"children":5008},{"style":253},[5009],{"type":69,"value":256},{"type":63,"tag":169,"props":5011,"children":5012},{"style":259},[5013],{"type":69,"value":5014},"error.message",{"type":63,"tag":169,"props":5016,"children":5017},{"style":253},[5018],{"type":69,"value":3019},{"type":63,"tag":169,"props":5020,"children":5021},{"style":259},[5022],{"type":69,"value":2460},{"type":63,"tag":169,"props":5024,"children":5025},{"style":253},[5026],{"type":69,"value":5027},">}\n",{"type":63,"tag":169,"props":5029,"children":5030},{"class":171,"line":369},[5031],{"type":63,"tag":169,"props":5032,"children":5033},{"style":253},[5034],{"type":69,"value":813},{"type":63,"tag":169,"props":5036,"children":5037},{"class":171,"line":398},[5038,5043,5048],{"type":63,"tag":169,"props":5039,"children":5040},{"style":253},[5041],{"type":69,"value":5042},"  \u003C",{"type":63,"tag":169,"props":5044,"children":5045},{"style":176},[5046],{"type":69,"value":5047},"RiskyWidget",{"type":63,"tag":169,"props":5049,"children":5050},{"style":253},[5051],{"type":69,"value":1015},{"type":63,"tag":169,"props":5053,"children":5054},{"class":171,"line":418},[5055,5059,5063],{"type":63,"tag":169,"props":5056,"children":5057},{"style":253},[5058],{"type":69,"value":1276},{"type":63,"tag":169,"props":5060,"children":5061},{"style":259},[5062],{"type":69,"value":4838},{"type":63,"tag":169,"props":5064,"children":5065},{"style":253},[5066],{"type":69,"value":813},{"type":63,"tag":144,"props":5068,"children":5070},{"id":5069},"react-specific-patterns",[5071],{"type":69,"value":5072},"React-Specific Patterns",{"type":63,"tag":151,"props":5074,"children":5076},{"id":5075},"custom-link-component-with-createlink",[5077,5079],{"type":69,"value":5078},"Custom Link Component with ",{"type":63,"tag":72,"props":5080,"children":5082},{"className":5081},[],[5083],{"type":69,"value":5084},"createLink",{"type":63,"tag":81,"props":5086,"children":5087},{},[5088,5090,5095],{"type":69,"value":5089},"Wrap ",{"type":63,"tag":72,"props":5091,"children":5093},{"className":5092},[],[5094],{"type":69,"value":826},{"type":69,"value":5096}," in a custom component while preserving type safety:",{"type":63,"tag":158,"props":5098,"children":5100},{"className":566,"code":5099,"language":568,"meta":163,"style":163},"import { createLink } from '@tanstack\u002Freact-router'\nimport { forwardRef, type ComponentPropsWithoutRef } from 'react'\n\nconst StyledLinkComponent = forwardRef\u003C\n  HTMLAnchorElement,\n  ComponentPropsWithoutRef\u003C'a'>\n>((props, ref) => (\n  \u003Ca ref={ref} {...props} className={`styled-link ${props.className ?? ''}`} \u002F>\n))\n\nconst StyledLink = createLink(StyledLinkComponent)\n\n\u002F\u002F Usage — same type-safe props as Link\nfunction Nav() {\n  return (\n    \u003CStyledLink to=\"\u002Fposts\u002F$postId\" params={{ postId: '42' }}>\n      Post\n    \u003C\u002FStyledLink>\n  )\n}\n",[5101],{"type":63,"tag":72,"props":5102,"children":5103},{"__ignoreMap":163},[5104,5140,5190,5197,5222,5234,5262,5303,5392,5400,5407,5432,5439,5447,5467,5478,5542,5550,5565,5572],{"type":63,"tag":169,"props":5105,"children":5106},{"class":171,"line":172},[5107,5111,5115,5120,5124,5128,5132,5136],{"type":63,"tag":169,"props":5108,"children":5109},{"style":247},[5110],{"type":69,"value":250},{"type":63,"tag":169,"props":5112,"children":5113},{"style":253},[5114],{"type":69,"value":256},{"type":63,"tag":169,"props":5116,"children":5117},{"style":259},[5118],{"type":69,"value":5119}," createLink",{"type":63,"tag":169,"props":5121,"children":5122},{"style":253},[5123],{"type":69,"value":267},{"type":63,"tag":169,"props":5125,"children":5126},{"style":247},[5127],{"type":69,"value":272},{"type":63,"tag":169,"props":5129,"children":5130},{"style":253},[5131],{"type":69,"value":277},{"type":63,"tag":169,"props":5133,"children":5134},{"style":182},[5135],{"type":69,"value":77},{"type":63,"tag":169,"props":5137,"children":5138},{"style":253},[5139],{"type":69,"value":287},{"type":63,"tag":169,"props":5141,"children":5142},{"class":171,"line":193},[5143,5147,5151,5156,5160,5165,5170,5174,5178,5182,5186],{"type":63,"tag":169,"props":5144,"children":5145},{"style":247},[5146],{"type":69,"value":250},{"type":63,"tag":169,"props":5148,"children":5149},{"style":253},[5150],{"type":69,"value":256},{"type":63,"tag":169,"props":5152,"children":5153},{"style":259},[5154],{"type":69,"value":5155}," forwardRef",{"type":63,"tag":169,"props":5157,"children":5158},{"style":253},[5159],{"type":69,"value":601},{"type":63,"tag":169,"props":5161,"children":5162},{"style":247},[5163],{"type":69,"value":5164}," type",{"type":63,"tag":169,"props":5166,"children":5167},{"style":259},[5168],{"type":69,"value":5169}," ComponentPropsWithoutRef",{"type":63,"tag":169,"props":5171,"children":5172},{"style":253},[5173],{"type":69,"value":267},{"type":63,"tag":169,"props":5175,"children":5176},{"style":247},[5177],{"type":69,"value":272},{"type":63,"tag":169,"props":5179,"children":5180},{"style":253},[5181],{"type":69,"value":277},{"type":63,"tag":169,"props":5183,"children":5184},{"style":182},[5185],{"type":69,"value":14},{"type":63,"tag":169,"props":5187,"children":5188},{"style":253},[5189],{"type":69,"value":287},{"type":63,"tag":169,"props":5191,"children":5192},{"class":171,"line":290},[5193],{"type":63,"tag":169,"props":5194,"children":5195},{"emptyLinePlaceholder":363},[5196],{"type":69,"value":366},{"type":63,"tag":169,"props":5198,"children":5199},{"class":171,"line":321},[5200,5204,5209,5213,5217],{"type":63,"tag":169,"props":5201,"children":5202},{"style":689},[5203],{"type":69,"value":1678},{"type":63,"tag":169,"props":5205,"children":5206},{"style":259},[5207],{"type":69,"value":5208}," StyledLinkComponent ",{"type":63,"tag":169,"props":5210,"children":5211},{"style":253},[5212],{"type":69,"value":702},{"type":63,"tag":169,"props":5214,"children":5215},{"style":259},[5216],{"type":69,"value":5155},{"type":63,"tag":169,"props":5218,"children":5219},{"style":253},[5220],{"type":69,"value":5221},"\u003C\n",{"type":63,"tag":169,"props":5223,"children":5224},{"class":171,"line":359},[5225,5230],{"type":63,"tag":169,"props":5226,"children":5227},{"style":259},[5228],{"type":69,"value":5229},"  HTMLAnchorElement",{"type":63,"tag":169,"props":5231,"children":5232},{"style":253},[5233],{"type":69,"value":472},{"type":63,"tag":169,"props":5235,"children":5236},{"class":171,"line":369},[5237,5242,5246,5250,5254,5258],{"type":63,"tag":169,"props":5238,"children":5239},{"style":259},[5240],{"type":69,"value":5241},"  ComponentPropsWithoutRef",{"type":63,"tag":169,"props":5243,"children":5244},{"style":253},[5245],{"type":69,"value":3853},{"type":63,"tag":169,"props":5247,"children":5248},{"style":253},[5249],{"type":69,"value":467},{"type":63,"tag":169,"props":5251,"children":5252},{"style":182},[5253],{"type":69,"value":87},{"type":63,"tag":169,"props":5255,"children":5256},{"style":253},[5257],{"type":69,"value":467},{"type":63,"tag":169,"props":5259,"children":5260},{"style":253},[5261],{"type":69,"value":813},{"type":63,"tag":169,"props":5263,"children":5264},{"class":171,"line":398},[5265,5269,5273,5277,5282,5286,5291,5295,5299],{"type":63,"tag":169,"props":5266,"children":5267},{"style":253},[5268],{"type":69,"value":1266},{"type":63,"tag":169,"props":5270,"children":5271},{"style":259},[5272],{"type":69,"value":390},{"type":63,"tag":169,"props":5274,"children":5275},{"style":253},[5276],{"type":69,"value":390},{"type":63,"tag":169,"props":5278,"children":5279},{"style":2402},[5280],{"type":69,"value":5281},"props",{"type":63,"tag":169,"props":5283,"children":5284},{"style":253},[5285],{"type":69,"value":601},{"type":63,"tag":169,"props":5287,"children":5288},{"style":2402},[5289],{"type":69,"value":5290}," ref",{"type":63,"tag":169,"props":5292,"children":5293},{"style":253},[5294],{"type":69,"value":79},{"type":63,"tag":169,"props":5296,"children":5297},{"style":689},[5298],{"type":69,"value":2212},{"type":63,"tag":169,"props":5300,"children":5301},{"style":259},[5302],{"type":69,"value":787},{"type":63,"tag":169,"props":5304,"children":5305},{"class":171,"line":418},[5306,5310,5314,5318,5322,5327,5332,5336,5341,5346,5350,5355,5360,5365,5369,5373,5378,5383,5388],{"type":63,"tag":169,"props":5307,"children":5308},{"style":253},[5309],{"type":69,"value":5042},{"type":63,"tag":169,"props":5311,"children":5312},{"style":402},[5313],{"type":69,"value":87},{"type":63,"tag":169,"props":5315,"children":5316},{"style":689},[5317],{"type":69,"value":5290},{"type":63,"tag":169,"props":5319,"children":5320},{"style":253},[5321],{"type":69,"value":2015},{"type":63,"tag":169,"props":5323,"children":5324},{"style":259},[5325],{"type":69,"value":5326},"ref",{"type":63,"tag":169,"props":5328,"children":5329},{"style":253},[5330],{"type":69,"value":5331},"} {...",{"type":63,"tag":169,"props":5333,"children":5334},{"style":259},[5335],{"type":69,"value":5281},{"type":63,"tag":169,"props":5337,"children":5338},{"style":253},[5339],{"type":69,"value":5340},"} ",{"type":63,"tag":169,"props":5342,"children":5343},{"style":689},[5344],{"type":69,"value":5345},"className",{"type":63,"tag":169,"props":5347,"children":5348},{"style":253},[5349],{"type":69,"value":2015},{"type":63,"tag":169,"props":5351,"children":5352},{"style":253},[5353],{"type":69,"value":5354},"`",{"type":63,"tag":169,"props":5356,"children":5357},{"style":182},[5358],{"type":69,"value":5359},"styled-link ",{"type":63,"tag":169,"props":5361,"children":5362},{"style":253},[5363],{"type":69,"value":5364},"${",{"type":63,"tag":169,"props":5366,"children":5367},{"style":259},[5368],{"type":69,"value":5281},{"type":63,"tag":169,"props":5370,"children":5371},{"style":253},[5372],{"type":69,"value":1844},{"type":63,"tag":169,"props":5374,"children":5375},{"style":259},[5376],{"type":69,"value":5377},"className ",{"type":63,"tag":169,"props":5379,"children":5380},{"style":253},[5381],{"type":69,"value":5382},"??",{"type":63,"tag":169,"props":5384,"children":5385},{"style":253},[5386],{"type":69,"value":5387}," ''}`",{"type":63,"tag":169,"props":5389,"children":5390},{"style":253},[5391],{"type":69,"value":2024},{"type":63,"tag":169,"props":5393,"children":5394},{"class":171,"line":427},[5395],{"type":63,"tag":169,"props":5396,"children":5397},{"style":259},[5398],{"type":69,"value":5399},"))\n",{"type":63,"tag":169,"props":5401,"children":5402},{"class":171,"line":444},[5403],{"type":63,"tag":169,"props":5404,"children":5405},{"emptyLinePlaceholder":363},[5406],{"type":69,"value":366},{"type":63,"tag":169,"props":5408,"children":5409},{"class":171,"line":475},[5410,5414,5419,5423,5427],{"type":63,"tag":169,"props":5411,"children":5412},{"style":689},[5413],{"type":69,"value":1678},{"type":63,"tag":169,"props":5415,"children":5416},{"style":259},[5417],{"type":69,"value":5418}," StyledLink ",{"type":63,"tag":169,"props":5420,"children":5421},{"style":253},[5422],{"type":69,"value":702},{"type":63,"tag":169,"props":5424,"children":5425},{"style":383},[5426],{"type":69,"value":5119},{"type":63,"tag":169,"props":5428,"children":5429},{"style":259},[5430],{"type":69,"value":5431},"(StyledLinkComponent)\n",{"type":63,"tag":169,"props":5433,"children":5434},{"class":171,"line":498},[5435],{"type":63,"tag":169,"props":5436,"children":5437},{"emptyLinePlaceholder":363},[5438],{"type":69,"value":366},{"type":63,"tag":169,"props":5440,"children":5441},{"class":171,"line":515},[5442],{"type":63,"tag":169,"props":5443,"children":5444},{"style":238},[5445],{"type":69,"value":5446},"\u002F\u002F Usage — same type-safe props as Link\n",{"type":63,"tag":169,"props":5448,"children":5449},{"class":171,"line":533},[5450,5454,5459,5463],{"type":63,"tag":169,"props":5451,"children":5452},{"style":689},[5453],{"type":69,"value":761},{"type":63,"tag":169,"props":5455,"children":5456},{"style":383},[5457],{"type":69,"value":5458}," Nav",{"type":63,"tag":169,"props":5460,"children":5461},{"style":253},[5462],{"type":69,"value":526},{"type":63,"tag":169,"props":5464,"children":5465},{"style":253},[5466],{"type":69,"value":774},{"type":63,"tag":169,"props":5468,"children":5469},{"class":171,"line":546},[5470,5474],{"type":63,"tag":169,"props":5471,"children":5472},{"style":247},[5473],{"type":69,"value":782},{"type":63,"tag":169,"props":5475,"children":5476},{"style":402},[5477],{"type":69,"value":787},{"type":63,"tag":169,"props":5479,"children":5480},{"class":171,"line":901},[5481,5485,5490,5494,5498,5502,5506,5510,5514,5518,5522,5526,5530,5534,5538],{"type":63,"tag":169,"props":5482,"children":5483},{"style":253},[5484],{"type":69,"value":1984},{"type":63,"tag":169,"props":5486,"children":5487},{"style":176},[5488],{"type":69,"value":5489},"StyledLink",{"type":63,"tag":169,"props":5491,"children":5492},{"style":689},[5493],{"type":69,"value":831},{"type":63,"tag":169,"props":5495,"children":5496},{"style":253},[5497],{"type":69,"value":702},{"type":63,"tag":169,"props":5499,"children":5500},{"style":253},[5501],{"type":69,"value":840},{"type":63,"tag":169,"props":5503,"children":5504},{"style":182},[5505],{"type":69,"value":2706},{"type":63,"tag":169,"props":5507,"children":5508},{"style":253},[5509],{"type":69,"value":840},{"type":63,"tag":169,"props":5511,"children":5512},{"style":689},[5513],{"type":69,"value":2719},{"type":63,"tag":169,"props":5515,"children":5516},{"style":253},[5517],{"type":69,"value":3941},{"type":63,"tag":169,"props":5519,"children":5520},{"style":402},[5521],{"type":69,"value":2732},{"type":63,"tag":169,"props":5523,"children":5524},{"style":253},[5525],{"type":69,"value":410},{"type":63,"tag":169,"props":5527,"children":5528},{"style":253},[5529],{"type":69,"value":277},{"type":63,"tag":169,"props":5531,"children":5532},{"style":182},[5533],{"type":69,"value":3958},{"type":63,"tag":169,"props":5535,"children":5536},{"style":253},[5537],{"type":69,"value":467},{"type":63,"tag":169,"props":5539,"children":5540},{"style":253},[5541],{"type":69,"value":3967},{"type":63,"tag":169,"props":5543,"children":5544},{"class":171,"line":958},[5545],{"type":63,"tag":169,"props":5546,"children":5547},{"style":259},[5548],{"type":69,"value":5549},"      Post\n",{"type":63,"tag":169,"props":5551,"children":5552},{"class":171,"line":967},[5553,5557,5561],{"type":63,"tag":169,"props":5554,"children":5555},{"style":253},[5556],{"type":69,"value":2032},{"type":63,"tag":169,"props":5558,"children":5559},{"style":176},[5560],{"type":69,"value":5489},{"type":63,"tag":169,"props":5562,"children":5563},{"style":253},[5564],{"type":69,"value":813},{"type":63,"tag":169,"props":5566,"children":5567},{"class":171,"line":983},[5568],{"type":63,"tag":169,"props":5569,"children":5570},{"style":402},[5571],{"type":69,"value":1067},{"type":63,"tag":169,"props":5573,"children":5574},{"class":171,"line":1000},[5575],{"type":63,"tag":169,"props":5576,"children":5577},{"style":253},[5578],{"type":69,"value":1076},{"type":63,"tag":151,"props":5580,"children":5582},{"id":5581},"reusable-components-with-router-hooks",[5583],{"type":69,"value":5584},"Reusable Components with Router Hooks",{"type":63,"tag":81,"props":5586,"children":5587},{},[5588,5590,5595],{"type":69,"value":5589},"To create a component that uses router hooks across multiple routes, pass a union of route paths as the ",{"type":63,"tag":72,"props":5591,"children":5593},{"className":5592},[],[5594],{"type":69,"value":305},{"type":69,"value":5596}," prop:",{"type":63,"tag":158,"props":5598,"children":5600},{"className":566,"code":5599,"language":568,"meta":163,"style":163},"function PostIdDisplay({ from }: { from: '\u002Fposts\u002F$id' | '\u002Fdrafts\u002F$id' }) {\n  const { id } = useParams({ from })\n  return \u003Cspan>ID: {id}\u003C\u002Fspan>\n}\n\n\u002F\u002F Usage in different route components\n\u003CPostIdDisplay from=\"\u002Fposts\u002F$id\" \u002F>\n\u003CPostIdDisplay from=\"\u002Fdrafts\u002F$id\" \u002F>\n",[5601],{"type":63,"tag":72,"props":5602,"children":5603},{"__ignoreMap":163},[5604,5682,5730,5774,5781,5788,5796,5832],{"type":63,"tag":169,"props":5605,"children":5606},{"class":171,"line":172},[5607,5611,5616,5621,5625,5630,5634,5638,5642,5646,5651,5655,5660,5664,5669,5673,5678],{"type":63,"tag":169,"props":5608,"children":5609},{"style":689},[5610],{"type":69,"value":761},{"type":63,"tag":169,"props":5612,"children":5613},{"style":383},[5614],{"type":69,"value":5615}," PostIdDisplay",{"type":63,"tag":169,"props":5617,"children":5618},{"style":253},[5619],{"type":69,"value":5620},"({",{"type":63,"tag":169,"props":5622,"children":5623},{"style":2402},[5624],{"type":69,"value":272},{"type":63,"tag":169,"props":5626,"children":5627},{"style":253},[5628],{"type":69,"value":5629}," }:",{"type":63,"tag":169,"props":5631,"children":5632},{"style":253},[5633],{"type":69,"value":256},{"type":63,"tag":169,"props":5635,"children":5636},{"style":402},[5637],{"type":69,"value":272},{"type":63,"tag":169,"props":5639,"children":5640},{"style":253},[5641],{"type":69,"value":410},{"type":63,"tag":169,"props":5643,"children":5644},{"style":253},[5645],{"type":69,"value":277},{"type":63,"tag":169,"props":5647,"children":5648},{"style":182},[5649],{"type":69,"value":5650},"\u002Fposts\u002F$id",{"type":63,"tag":169,"props":5652,"children":5653},{"style":253},[5654],{"type":69,"value":467},{"type":63,"tag":169,"props":5656,"children":5657},{"style":253},[5658],{"type":69,"value":5659}," |",{"type":63,"tag":169,"props":5661,"children":5662},{"style":253},[5663],{"type":69,"value":277},{"type":63,"tag":169,"props":5665,"children":5666},{"style":182},[5667],{"type":69,"value":5668},"\u002Fdrafts\u002F$id",{"type":63,"tag":169,"props":5670,"children":5671},{"style":253},[5672],{"type":69,"value":467},{"type":63,"tag":169,"props":5674,"children":5675},{"style":253},[5676],{"type":69,"value":5677}," })",{"type":63,"tag":169,"props":5679,"children":5680},{"style":253},[5681],{"type":69,"value":774},{"type":63,"tag":169,"props":5683,"children":5684},{"class":171,"line":193},[5685,5689,5693,5698,5702,5706,5710,5714,5718,5722,5726],{"type":63,"tag":169,"props":5686,"children":5687},{"style":689},[5688],{"type":69,"value":1918},{"type":63,"tag":169,"props":5690,"children":5691},{"style":253},[5692],{"type":69,"value":256},{"type":63,"tag":169,"props":5694,"children":5695},{"style":259},[5696],{"type":69,"value":5697}," id",{"type":63,"tag":169,"props":5699,"children":5700},{"style":253},[5701],{"type":69,"value":267},{"type":63,"tag":169,"props":5703,"children":5704},{"style":253},[5705],{"type":69,"value":1928},{"type":63,"tag":169,"props":5707,"children":5708},{"style":383},[5709],{"type":69,"value":3072},{"type":63,"tag":169,"props":5711,"children":5712},{"style":402},[5713],{"type":69,"value":390},{"type":63,"tag":169,"props":5715,"children":5716},{"style":253},[5717],{"type":69,"value":1700},{"type":63,"tag":169,"props":5719,"children":5720},{"style":259},[5721],{"type":69,"value":272},{"type":63,"tag":169,"props":5723,"children":5724},{"style":253},[5725],{"type":69,"value":267},{"type":63,"tag":169,"props":5727,"children":5728},{"style":402},[5729],{"type":69,"value":557},{"type":63,"tag":169,"props":5731,"children":5732},{"class":171,"line":290},[5733,5737,5741,5745,5749,5754,5758,5762,5766,5770],{"type":63,"tag":169,"props":5734,"children":5735},{"style":247},[5736],{"type":69,"value":782},{"type":63,"tag":169,"props":5738,"children":5739},{"style":253},[5740],{"type":69,"value":1257},{"type":63,"tag":169,"props":5742,"children":5743},{"style":402},[5744],{"type":69,"value":169},{"type":63,"tag":169,"props":5746,"children":5747},{"style":253},[5748],{"type":69,"value":1266},{"type":63,"tag":169,"props":5750,"children":5751},{"style":259},[5752],{"type":69,"value":5753},"ID: ",{"type":63,"tag":169,"props":5755,"children":5756},{"style":253},[5757],{"type":69,"value":1700},{"type":63,"tag":169,"props":5759,"children":5760},{"style":259},[5761],{"type":69,"value":4700},{"type":63,"tag":169,"props":5763,"children":5764},{"style":253},[5765],{"type":69,"value":3019},{"type":63,"tag":169,"props":5767,"children":5768},{"style":402},[5769],{"type":69,"value":169},{"type":63,"tag":169,"props":5771,"children":5772},{"style":253},[5773],{"type":69,"value":813},{"type":63,"tag":169,"props":5775,"children":5776},{"class":171,"line":321},[5777],{"type":63,"tag":169,"props":5778,"children":5779},{"style":253},[5780],{"type":69,"value":1076},{"type":63,"tag":169,"props":5782,"children":5783},{"class":171,"line":359},[5784],{"type":63,"tag":169,"props":5785,"children":5786},{"emptyLinePlaceholder":363},[5787],{"type":69,"value":366},{"type":63,"tag":169,"props":5789,"children":5790},{"class":171,"line":369},[5791],{"type":63,"tag":169,"props":5792,"children":5793},{"style":238},[5794],{"type":69,"value":5795},"\u002F\u002F Usage in different route components\n",{"type":63,"tag":169,"props":5797,"children":5798},{"class":171,"line":398},[5799,5803,5808,5812,5816,5820,5824,5828],{"type":63,"tag":169,"props":5800,"children":5801},{"style":253},[5802],{"type":69,"value":3853},{"type":63,"tag":169,"props":5804,"children":5805},{"style":176},[5806],{"type":69,"value":5807},"PostIdDisplay",{"type":63,"tag":169,"props":5809,"children":5810},{"style":689},[5811],{"type":69,"value":272},{"type":63,"tag":169,"props":5813,"children":5814},{"style":253},[5815],{"type":69,"value":702},{"type":63,"tag":169,"props":5817,"children":5818},{"style":253},[5819],{"type":69,"value":840},{"type":63,"tag":169,"props":5821,"children":5822},{"style":182},[5823],{"type":69,"value":5650},{"type":63,"tag":169,"props":5825,"children":5826},{"style":253},[5827],{"type":69,"value":840},{"type":63,"tag":169,"props":5829,"children":5830},{"style":253},[5831],{"type":69,"value":1015},{"type":63,"tag":169,"props":5833,"children":5834},{"class":171,"line":418},[5835,5839,5843,5847,5851,5855,5859,5863],{"type":63,"tag":169,"props":5836,"children":5837},{"style":253},[5838],{"type":69,"value":3853},{"type":63,"tag":169,"props":5840,"children":5841},{"style":176},[5842],{"type":69,"value":5807},{"type":63,"tag":169,"props":5844,"children":5845},{"style":689},[5846],{"type":69,"value":272},{"type":63,"tag":169,"props":5848,"children":5849},{"style":253},[5850],{"type":69,"value":702},{"type":63,"tag":169,"props":5852,"children":5853},{"style":253},[5854],{"type":69,"value":840},{"type":63,"tag":169,"props":5856,"children":5857},{"style":182},[5858],{"type":69,"value":5668},{"type":63,"tag":169,"props":5860,"children":5861},{"style":253},[5862],{"type":69,"value":840},{"type":63,"tag":169,"props":5864,"children":5865},{"style":253},[5866],{"type":69,"value":1015},{"type":63,"tag":81,"props":5868,"children":5869},{},[5870,5872,5878],{"type":69,"value":5871},"This pattern avoids ",{"type":63,"tag":72,"props":5873,"children":5875},{"className":5874},[],[5876],{"type":69,"value":5877},"strict: false",{"type":69,"value":5879}," (which returns an imprecise union) while keeping the component reusable across specific known routes.",{"type":63,"tag":151,"props":5881,"children":5883},{"id":5882},"auth-provider-must-wrap-routerprovider",[5884],{"type":69,"value":5885},"Auth Provider Must Wrap RouterProvider",{"type":63,"tag":81,"props":5887,"children":5888},{},[5889,5891,5897,5899,5904],{"type":69,"value":5890},"If routes use auth context (via ",{"type":63,"tag":72,"props":5892,"children":5894},{"className":5893},[],[5895],{"type":69,"value":5896},"createRootRouteWithContext",{"type":69,"value":5898},"), the auth provider must be an ancestor of ",{"type":63,"tag":72,"props":5900,"children":5902},{"className":5901},[],[5903],{"type":69,"value":2005},{"type":69,"value":410},{"type":63,"tag":158,"props":5906,"children":5908},{"className":566,"code":5907,"language":568,"meta":163,"style":163},"\u002F\u002F CORRECT — AuthProvider wraps RouterProvider\nfunction App() {\n  return (\n    \u003CAuthProvider>\n      \u003CRouterProvider router={router} \u002F>\n    \u003C\u002FAuthProvider>\n  )\n}\n\n\u002F\u002F WRONG — RouterProvider outside auth provider\nfunction App() {\n  return (\n    \u003CRouterProvider router={router}>\n      \u003CAuthProvider>{\u002F* ... *\u002F}\u003C\u002FAuthProvider>\n    \u003C\u002FRouterProvider>\n  )\n}\n",[5909],{"type":63,"tag":72,"props":5910,"children":5911},{"__ignoreMap":163},[5912,5920,5940,5951,5967,5994,6009,6016,6023,6030,6038,6057,6068,6095,6127,6142,6149],{"type":63,"tag":169,"props":5913,"children":5914},{"class":171,"line":172},[5915],{"type":63,"tag":169,"props":5916,"children":5917},{"style":238},[5918],{"type":69,"value":5919},"\u002F\u002F CORRECT — AuthProvider wraps RouterProvider\n",{"type":63,"tag":169,"props":5921,"children":5922},{"class":171,"line":193},[5923,5927,5932,5936],{"type":63,"tag":169,"props":5924,"children":5925},{"style":689},[5926],{"type":69,"value":761},{"type":63,"tag":169,"props":5928,"children":5929},{"style":383},[5930],{"type":69,"value":5931}," App",{"type":63,"tag":169,"props":5933,"children":5934},{"style":253},[5935],{"type":69,"value":526},{"type":63,"tag":169,"props":5937,"children":5938},{"style":253},[5939],{"type":69,"value":774},{"type":63,"tag":169,"props":5941,"children":5942},{"class":171,"line":290},[5943,5947],{"type":63,"tag":169,"props":5944,"children":5945},{"style":247},[5946],{"type":69,"value":782},{"type":63,"tag":169,"props":5948,"children":5949},{"style":402},[5950],{"type":69,"value":787},{"type":63,"tag":169,"props":5952,"children":5953},{"class":171,"line":321},[5954,5958,5963],{"type":63,"tag":169,"props":5955,"children":5956},{"style":253},[5957],{"type":69,"value":1984},{"type":63,"tag":169,"props":5959,"children":5960},{"style":176},[5961],{"type":69,"value":5962},"AuthProvider",{"type":63,"tag":169,"props":5964,"children":5965},{"style":253},[5966],{"type":69,"value":813},{"type":63,"tag":169,"props":5968,"children":5969},{"class":171,"line":359},[5970,5974,5978,5982,5986,5990],{"type":63,"tag":169,"props":5971,"children":5972},{"style":253},[5973],{"type":69,"value":803},{"type":63,"tag":169,"props":5975,"children":5976},{"style":176},[5977],{"type":69,"value":2005},{"type":63,"tag":169,"props":5979,"children":5980},{"style":689},[5981],{"type":69,"value":2010},{"type":63,"tag":169,"props":5983,"children":5984},{"style":253},[5985],{"type":69,"value":2015},{"type":63,"tag":169,"props":5987,"children":5988},{"style":259},[5989],{"type":69,"value":33},{"type":63,"tag":169,"props":5991,"children":5992},{"style":253},[5993],{"type":69,"value":2024},{"type":63,"tag":169,"props":5995,"children":5996},{"class":171,"line":369},[5997,6001,6005],{"type":63,"tag":169,"props":5998,"children":5999},{"style":253},[6000],{"type":69,"value":2032},{"type":63,"tag":169,"props":6002,"children":6003},{"style":176},[6004],{"type":69,"value":5962},{"type":63,"tag":169,"props":6006,"children":6007},{"style":253},[6008],{"type":69,"value":813},{"type":63,"tag":169,"props":6010,"children":6011},{"class":171,"line":398},[6012],{"type":63,"tag":169,"props":6013,"children":6014},{"style":402},[6015],{"type":69,"value":1067},{"type":63,"tag":169,"props":6017,"children":6018},{"class":171,"line":418},[6019],{"type":63,"tag":169,"props":6020,"children":6021},{"style":253},[6022],{"type":69,"value":1076},{"type":63,"tag":169,"props":6024,"children":6025},{"class":171,"line":427},[6026],{"type":63,"tag":169,"props":6027,"children":6028},{"emptyLinePlaceholder":363},[6029],{"type":69,"value":366},{"type":63,"tag":169,"props":6031,"children":6032},{"class":171,"line":444},[6033],{"type":63,"tag":169,"props":6034,"children":6035},{"style":238},[6036],{"type":69,"value":6037},"\u002F\u002F WRONG — RouterProvider outside auth provider\n",{"type":63,"tag":169,"props":6039,"children":6040},{"class":171,"line":475},[6041,6045,6049,6053],{"type":63,"tag":169,"props":6042,"children":6043},{"style":689},[6044],{"type":69,"value":761},{"type":63,"tag":169,"props":6046,"children":6047},{"style":383},[6048],{"type":69,"value":5931},{"type":63,"tag":169,"props":6050,"children":6051},{"style":253},[6052],{"type":69,"value":526},{"type":63,"tag":169,"props":6054,"children":6055},{"style":253},[6056],{"type":69,"value":774},{"type":63,"tag":169,"props":6058,"children":6059},{"class":171,"line":498},[6060,6064],{"type":63,"tag":169,"props":6061,"children":6062},{"style":247},[6063],{"type":69,"value":782},{"type":63,"tag":169,"props":6065,"children":6066},{"style":402},[6067],{"type":69,"value":787},{"type":63,"tag":169,"props":6069,"children":6070},{"class":171,"line":515},[6071,6075,6079,6083,6087,6091],{"type":63,"tag":169,"props":6072,"children":6073},{"style":253},[6074],{"type":69,"value":1984},{"type":63,"tag":169,"props":6076,"children":6077},{"style":176},[6078],{"type":69,"value":2005},{"type":63,"tag":169,"props":6080,"children":6081},{"style":689},[6082],{"type":69,"value":2010},{"type":63,"tag":169,"props":6084,"children":6085},{"style":253},[6086],{"type":69,"value":2015},{"type":63,"tag":169,"props":6088,"children":6089},{"style":259},[6090],{"type":69,"value":33},{"type":63,"tag":169,"props":6092,"children":6093},{"style":253},[6094],{"type":69,"value":4579},{"type":63,"tag":169,"props":6096,"children":6097},{"class":171,"line":533},[6098,6102,6106,6110,6115,6119,6123],{"type":63,"tag":169,"props":6099,"children":6100},{"style":253},[6101],{"type":69,"value":803},{"type":63,"tag":169,"props":6103,"children":6104},{"style":176},[6105],{"type":69,"value":5962},{"type":63,"tag":169,"props":6107,"children":6108},{"style":253},[6109],{"type":69,"value":3404},{"type":63,"tag":169,"props":6111,"children":6112},{"style":238},[6113],{"type":69,"value":6114},"\u002F* ... *\u002F",{"type":63,"tag":169,"props":6116,"children":6117},{"style":253},[6118],{"type":69,"value":3019},{"type":63,"tag":169,"props":6120,"children":6121},{"style":176},[6122],{"type":69,"value":5962},{"type":63,"tag":169,"props":6124,"children":6125},{"style":253},[6126],{"type":69,"value":813},{"type":63,"tag":169,"props":6128,"children":6129},{"class":171,"line":546},[6130,6134,6138],{"type":63,"tag":169,"props":6131,"children":6132},{"style":253},[6133],{"type":69,"value":2032},{"type":63,"tag":169,"props":6135,"children":6136},{"style":176},[6137],{"type":69,"value":2005},{"type":63,"tag":169,"props":6139,"children":6140},{"style":253},[6141],{"type":69,"value":813},{"type":63,"tag":169,"props":6143,"children":6144},{"class":171,"line":901},[6145],{"type":63,"tag":169,"props":6146,"children":6147},{"style":402},[6148],{"type":69,"value":1067},{"type":63,"tag":169,"props":6150,"children":6151},{"class":171,"line":958},[6152],{"type":63,"tag":169,"props":6153,"children":6154},{"style":253},[6155],{"type":69,"value":1076},{"type":63,"tag":81,"props":6157,"children":6158},{},[6159,6161,6167],{"type":69,"value":6160},"Or use the ",{"type":63,"tag":72,"props":6162,"children":6164},{"className":6163},[],[6165],{"type":69,"value":6166},"Wrap",{"type":69,"value":6168}," router option to provide context without wrapping externally:",{"type":63,"tag":158,"props":6170,"children":6172},{"className":566,"code":6171,"language":568,"meta":163,"style":163},"const router = createRouter({\n  routeTree,\n  Wrap: ({ children }) => (\n    \u003CQueryClientProvider client={queryClient}>{children}\u003C\u002FQueryClientProvider>\n  ),\n})\n",[6173],{"type":63,"tag":72,"props":6174,"children":6175},{"__ignoreMap":163},[6176,6203,6215,6249,6296,6308],{"type":63,"tag":169,"props":6177,"children":6178},{"class":171,"line":172},[6179,6183,6187,6191,6195,6199],{"type":63,"tag":169,"props":6180,"children":6181},{"style":689},[6182],{"type":69,"value":1678},{"type":63,"tag":169,"props":6184,"children":6185},{"style":259},[6186],{"type":69,"value":1683},{"type":63,"tag":169,"props":6188,"children":6189},{"style":253},[6190],{"type":69,"value":702},{"type":63,"tag":169,"props":6192,"children":6193},{"style":383},[6194],{"type":69,"value":1606},{"type":63,"tag":169,"props":6196,"children":6197},{"style":259},[6198],{"type":69,"value":390},{"type":63,"tag":169,"props":6200,"children":6201},{"style":253},[6202],{"type":69,"value":395},{"type":63,"tag":169,"props":6204,"children":6205},{"class":171,"line":193},[6206,6211],{"type":63,"tag":169,"props":6207,"children":6208},{"style":259},[6209],{"type":69,"value":6210},"  routeTree",{"type":63,"tag":169,"props":6212,"children":6213},{"style":253},[6214],{"type":69,"value":472},{"type":63,"tag":169,"props":6216,"children":6217},{"class":171,"line":290},[6218,6223,6227,6232,6237,6241,6245],{"type":63,"tag":169,"props":6219,"children":6220},{"style":383},[6221],{"type":69,"value":6222},"  Wrap",{"type":63,"tag":169,"props":6224,"children":6225},{"style":253},[6226],{"type":69,"value":410},{"type":63,"tag":169,"props":6228,"children":6229},{"style":253},[6230],{"type":69,"value":6231}," ({",{"type":63,"tag":169,"props":6233,"children":6234},{"style":2402},[6235],{"type":69,"value":6236}," children",{"type":63,"tag":169,"props":6238,"children":6239},{"style":253},[6240],{"type":69,"value":5677},{"type":63,"tag":169,"props":6242,"children":6243},{"style":689},[6244],{"type":69,"value":2212},{"type":63,"tag":169,"props":6246,"children":6247},{"style":259},[6248],{"type":69,"value":787},{"type":63,"tag":169,"props":6250,"children":6251},{"class":171,"line":321},[6252,6256,6261,6266,6270,6275,6279,6284,6288,6292],{"type":63,"tag":169,"props":6253,"children":6254},{"style":253},[6255],{"type":69,"value":1984},{"type":63,"tag":169,"props":6257,"children":6258},{"style":176},[6259],{"type":69,"value":6260},"QueryClientProvider",{"type":63,"tag":169,"props":6262,"children":6263},{"style":689},[6264],{"type":69,"value":6265}," client",{"type":63,"tag":169,"props":6267,"children":6268},{"style":253},[6269],{"type":69,"value":2015},{"type":63,"tag":169,"props":6271,"children":6272},{"style":259},[6273],{"type":69,"value":6274},"queryClient",{"type":63,"tag":169,"props":6276,"children":6277},{"style":253},[6278],{"type":69,"value":4705},{"type":63,"tag":169,"props":6280,"children":6281},{"style":259},[6282],{"type":69,"value":6283},"children",{"type":63,"tag":169,"props":6285,"children":6286},{"style":253},[6287],{"type":69,"value":3019},{"type":63,"tag":169,"props":6289,"children":6290},{"style":176},[6291],{"type":69,"value":6260},{"type":63,"tag":169,"props":6293,"children":6294},{"style":253},[6295],{"type":69,"value":813},{"type":63,"tag":169,"props":6297,"children":6298},{"class":171,"line":359},[6299,6304],{"type":63,"tag":169,"props":6300,"children":6301},{"style":259},[6302],{"type":69,"value":6303},"  )",{"type":63,"tag":169,"props":6305,"children":6306},{"style":253},[6307],{"type":69,"value":472},{"type":63,"tag":169,"props":6309,"children":6310},{"class":171,"line":369},[6311,6315],{"type":63,"tag":169,"props":6312,"children":6313},{"style":253},[6314],{"type":69,"value":552},{"type":63,"tag":169,"props":6316,"children":6317},{"style":259},[6318],{"type":69,"value":557},{"type":63,"tag":144,"props":6320,"children":6322},{"id":6321},"common-mistakes",[6323],{"type":69,"value":6324},"Common Mistakes",{"type":63,"tag":151,"props":6326,"children":6328},{"id":6327},"_1-high-using-react-hooks-in-beforeload-or-loader",[6329,6331,6336,6338],{"type":69,"value":6330},"1. HIGH: Using React hooks in ",{"type":63,"tag":72,"props":6332,"children":6334},{"className":6333},[],[6335],{"type":69,"value":3703},{"type":69,"value":6337}," or ",{"type":63,"tag":72,"props":6339,"children":6341},{"className":6340},[],[6342],{"type":69,"value":6343},"loader",{"type":63,"tag":81,"props":6345,"children":6346},{},[6347,6352,6353,6358],{"type":63,"tag":72,"props":6348,"children":6350},{"className":6349},[],[6351],{"type":69,"value":3703},{"type":69,"value":2281},{"type":63,"tag":72,"props":6354,"children":6356},{"className":6355},[],[6357],{"type":69,"value":6343},{"type":69,"value":6359}," are NOT React components — they are plain async functions. React hooks cannot be called in them. Pass auth state via router context instead.",{"type":63,"tag":158,"props":6361,"children":6363},{"className":566,"code":6362,"language":568,"meta":163,"style":163},"\u002F\u002F WRONG — useAuth is a React hook, cannot be called here\nbeforeLoad: () => {\n  const auth = useAuth()\n  if (!auth.user) throw redirect({ to: '\u002Flogin' })\n}\n\n\u002F\u002F CORRECT — read auth from router context\nbeforeLoad: ({ context }) => {\n  if (!context.auth.isAuthenticated) {\n    throw redirect({ to: '\u002Flogin' })\n  }\n}\n",[6364],{"type":63,"tag":72,"props":6365,"children":6366},{"__ignoreMap":163},[6367,6375,6398,6423,6505,6512,6519,6527,6559,6604,6652,6659],{"type":63,"tag":169,"props":6368,"children":6369},{"class":171,"line":172},[6370],{"type":63,"tag":169,"props":6371,"children":6372},{"style":238},[6373],{"type":69,"value":6374},"\u002F\u002F WRONG — useAuth is a React hook, cannot be called here\n",{"type":63,"tag":169,"props":6376,"children":6377},{"class":171,"line":193},[6378,6382,6386,6390,6394],{"type":63,"tag":169,"props":6379,"children":6380},{"style":176},[6381],{"type":69,"value":3703},{"type":63,"tag":169,"props":6383,"children":6384},{"style":253},[6385],{"type":69,"value":410},{"type":63,"tag":169,"props":6387,"children":6388},{"style":253},[6389],{"type":69,"value":2648},{"type":63,"tag":169,"props":6391,"children":6392},{"style":689},[6393],{"type":69,"value":2212},{"type":63,"tag":169,"props":6395,"children":6396},{"style":253},[6397],{"type":69,"value":774},{"type":63,"tag":169,"props":6399,"children":6400},{"class":171,"line":290},[6401,6405,6410,6414,6419],{"type":63,"tag":169,"props":6402,"children":6403},{"style":689},[6404],{"type":69,"value":1918},{"type":63,"tag":169,"props":6406,"children":6407},{"style":259},[6408],{"type":69,"value":6409}," auth",{"type":63,"tag":169,"props":6411,"children":6412},{"style":253},[6413],{"type":69,"value":1928},{"type":63,"tag":169,"props":6415,"children":6416},{"style":383},[6417],{"type":69,"value":6418}," useAuth",{"type":63,"tag":169,"props":6420,"children":6421},{"style":402},[6422],{"type":69,"value":2181},{"type":63,"tag":169,"props":6424,"children":6425},{"class":171,"line":321},[6426,6431,6435,6439,6444,6448,6453,6458,6463,6468,6472,6476,6480,6484,6488,6493,6497,6501],{"type":63,"tag":169,"props":6427,"children":6428},{"style":247},[6429],{"type":69,"value":6430},"  if",{"type":63,"tag":169,"props":6432,"children":6433},{"style":402},[6434],{"type":69,"value":1887},{"type":63,"tag":169,"props":6436,"children":6437},{"style":253},[6438],{"type":69,"value":1892},{"type":63,"tag":169,"props":6440,"children":6441},{"style":259},[6442],{"type":69,"value":6443},"auth",{"type":63,"tag":169,"props":6445,"children":6446},{"style":253},[6447],{"type":69,"value":1844},{"type":63,"tag":169,"props":6449,"children":6450},{"style":259},[6451],{"type":69,"value":6452},"user",{"type":63,"tag":169,"props":6454,"children":6455},{"style":402},[6456],{"type":69,"value":6457},") ",{"type":63,"tag":169,"props":6459,"children":6460},{"style":247},[6461],{"type":69,"value":6462},"throw",{"type":63,"tag":169,"props":6464,"children":6465},{"style":383},[6466],{"type":69,"value":6467}," redirect",{"type":63,"tag":169,"props":6469,"children":6470},{"style":402},[6471],{"type":69,"value":390},{"type":63,"tag":169,"props":6473,"children":6474},{"style":253},[6475],{"type":69,"value":1700},{"type":63,"tag":169,"props":6477,"children":6478},{"style":402},[6479],{"type":69,"value":831},{"type":63,"tag":169,"props":6481,"children":6482},{"style":253},[6483],{"type":69,"value":410},{"type":63,"tag":169,"props":6485,"children":6486},{"style":253},[6487],{"type":69,"value":277},{"type":63,"tag":169,"props":6489,"children":6490},{"style":182},[6491],{"type":69,"value":6492},"\u002Flogin",{"type":63,"tag":169,"props":6494,"children":6495},{"style":253},[6496],{"type":69,"value":467},{"type":63,"tag":169,"props":6498,"children":6499},{"style":253},[6500],{"type":69,"value":267},{"type":63,"tag":169,"props":6502,"children":6503},{"style":402},[6504],{"type":69,"value":557},{"type":63,"tag":169,"props":6506,"children":6507},{"class":171,"line":359},[6508],{"type":63,"tag":169,"props":6509,"children":6510},{"style":253},[6511],{"type":69,"value":1076},{"type":63,"tag":169,"props":6513,"children":6514},{"class":171,"line":369},[6515],{"type":63,"tag":169,"props":6516,"children":6517},{"emptyLinePlaceholder":363},[6518],{"type":69,"value":366},{"type":63,"tag":169,"props":6520,"children":6521},{"class":171,"line":398},[6522],{"type":63,"tag":169,"props":6523,"children":6524},{"style":238},[6525],{"type":69,"value":6526},"\u002F\u002F CORRECT — read auth from router context\n",{"type":63,"tag":169,"props":6528,"children":6529},{"class":171,"line":418},[6530,6534,6538,6542,6547,6551,6555],{"type":63,"tag":169,"props":6531,"children":6532},{"style":176},[6533],{"type":69,"value":3703},{"type":63,"tag":169,"props":6535,"children":6536},{"style":253},[6537],{"type":69,"value":410},{"type":63,"tag":169,"props":6539,"children":6540},{"style":253},[6541],{"type":69,"value":6231},{"type":63,"tag":169,"props":6543,"children":6544},{"style":2402},[6545],{"type":69,"value":6546}," context",{"type":63,"tag":169,"props":6548,"children":6549},{"style":253},[6550],{"type":69,"value":5677},{"type":63,"tag":169,"props":6552,"children":6553},{"style":689},[6554],{"type":69,"value":2212},{"type":63,"tag":169,"props":6556,"children":6557},{"style":253},[6558],{"type":69,"value":774},{"type":63,"tag":169,"props":6560,"children":6561},{"class":171,"line":427},[6562,6566,6570,6574,6579,6583,6587,6591,6596,6600],{"type":63,"tag":169,"props":6563,"children":6564},{"style":247},[6565],{"type":69,"value":6430},{"type":63,"tag":169,"props":6567,"children":6568},{"style":402},[6569],{"type":69,"value":1887},{"type":63,"tag":169,"props":6571,"children":6572},{"style":253},[6573],{"type":69,"value":1892},{"type":63,"tag":169,"props":6575,"children":6576},{"style":259},[6577],{"type":69,"value":6578},"context",{"type":63,"tag":169,"props":6580,"children":6581},{"style":253},[6582],{"type":69,"value":1844},{"type":63,"tag":169,"props":6584,"children":6585},{"style":259},[6586],{"type":69,"value":6443},{"type":63,"tag":169,"props":6588,"children":6589},{"style":253},[6590],{"type":69,"value":1844},{"type":63,"tag":169,"props":6592,"children":6593},{"style":259},[6594],{"type":69,"value":6595},"isAuthenticated",{"type":63,"tag":169,"props":6597,"children":6598},{"style":402},[6599],{"type":69,"value":6457},{"type":63,"tag":169,"props":6601,"children":6602},{"style":253},[6603],{"type":69,"value":395},{"type":63,"tag":169,"props":6605,"children":6606},{"class":171,"line":444},[6607,6612,6616,6620,6624,6628,6632,6636,6640,6644,6648],{"type":63,"tag":169,"props":6608,"children":6609},{"style":247},[6610],{"type":69,"value":6611},"    throw",{"type":63,"tag":169,"props":6613,"children":6614},{"style":383},[6615],{"type":69,"value":6467},{"type":63,"tag":169,"props":6617,"children":6618},{"style":402},[6619],{"type":69,"value":390},{"type":63,"tag":169,"props":6621,"children":6622},{"style":253},[6623],{"type":69,"value":1700},{"type":63,"tag":169,"props":6625,"children":6626},{"style":402},[6627],{"type":69,"value":831},{"type":63,"tag":169,"props":6629,"children":6630},{"style":253},[6631],{"type":69,"value":410},{"type":63,"tag":169,"props":6633,"children":6634},{"style":253},[6635],{"type":69,"value":277},{"type":63,"tag":169,"props":6637,"children":6638},{"style":182},[6639],{"type":69,"value":6492},{"type":63,"tag":169,"props":6641,"children":6642},{"style":253},[6643],{"type":69,"value":467},{"type":63,"tag":169,"props":6645,"children":6646},{"style":253},[6647],{"type":69,"value":267},{"type":63,"tag":169,"props":6649,"children":6650},{"style":402},[6651],{"type":69,"value":557},{"type":63,"tag":169,"props":6653,"children":6654},{"class":171,"line":475},[6655],{"type":63,"tag":169,"props":6656,"children":6657},{"style":253},[6658],{"type":69,"value":1804},{"type":63,"tag":169,"props":6660,"children":6661},{"class":171,"line":498},[6662],{"type":63,"tag":169,"props":6663,"children":6664},{"style":253},[6665],{"type":69,"value":1076},{"type":63,"tag":151,"props":6667,"children":6669},{"id":6668},"_2-high-wrapping-routerprovider-inside-an-auth-provider-incorrectly",[6670],{"type":69,"value":6671},"2. HIGH: Wrapping RouterProvider inside an auth provider incorrectly",{"type":63,"tag":81,"props":6673,"children":6674},{},[6675,6677,6683,6685,6690,6692,6697],{"type":69,"value":6676},"Create the router once with an ",{"type":63,"tag":72,"props":6678,"children":6680},{"className":6679},[],[6681],{"type":69,"value":6682},"undefined!",{"type":69,"value":6684}," placeholder, then inject live auth via ",{"type":63,"tag":72,"props":6686,"children":6688},{"className":6687},[],[6689],{"type":69,"value":2005},{"type":69,"value":6691},"'s ",{"type":63,"tag":72,"props":6693,"children":6695},{"className":6694},[],[6696],{"type":69,"value":6578},{"type":69,"value":6698}," prop. Do NOT recreate the router on auth changes — this resets caches and rebuilds the tree.",{"type":63,"tag":158,"props":6700,"children":6702},{"className":566,"code":6701,"language":568,"meta":163,"style":163},"\u002F\u002F CORRECT — create router once, inject live auth via context prop\nconst router = createRouter({\n  routeTree,\n  context: { auth: undefined! }, \u002F\u002F placeholder, filled by RouterProvider\n})\n\nfunction InnerApp() {\n  const auth = useAuth()\n  return \u003CRouterProvider router={router} context={{ auth }} \u002F>\n}\n\nfunction App() {\n  return (\n    \u003CAuthProvider>\n      \u003CInnerApp \u002F>\n    \u003C\u002FAuthProvider>\n  )\n}\n",[6703],{"type":63,"tag":72,"props":6704,"children":6705},{"__ignoreMap":163},[6706,6714,6741,6752,6791,6802,6809,6829,6852,6901,6908,6915,6934,6945,6960,6976,6991,6998],{"type":63,"tag":169,"props":6707,"children":6708},{"class":171,"line":172},[6709],{"type":63,"tag":169,"props":6710,"children":6711},{"style":238},[6712],{"type":69,"value":6713},"\u002F\u002F CORRECT — create router once, inject live auth via context prop\n",{"type":63,"tag":169,"props":6715,"children":6716},{"class":171,"line":193},[6717,6721,6725,6729,6733,6737],{"type":63,"tag":169,"props":6718,"children":6719},{"style":689},[6720],{"type":69,"value":1678},{"type":63,"tag":169,"props":6722,"children":6723},{"style":259},[6724],{"type":69,"value":1683},{"type":63,"tag":169,"props":6726,"children":6727},{"style":253},[6728],{"type":69,"value":702},{"type":63,"tag":169,"props":6730,"children":6731},{"style":383},[6732],{"type":69,"value":1606},{"type":63,"tag":169,"props":6734,"children":6735},{"style":259},[6736],{"type":69,"value":390},{"type":63,"tag":169,"props":6738,"children":6739},{"style":253},[6740],{"type":69,"value":395},{"type":63,"tag":169,"props":6742,"children":6743},{"class":171,"line":290},[6744,6748],{"type":63,"tag":169,"props":6745,"children":6746},{"style":259},[6747],{"type":69,"value":6210},{"type":63,"tag":169,"props":6749,"children":6750},{"style":253},[6751],{"type":69,"value":472},{"type":63,"tag":169,"props":6753,"children":6754},{"class":171,"line":321},[6755,6760,6764,6768,6772,6776,6781,6786],{"type":63,"tag":169,"props":6756,"children":6757},{"style":402},[6758],{"type":69,"value":6759},"  context",{"type":63,"tag":169,"props":6761,"children":6762},{"style":253},[6763],{"type":69,"value":410},{"type":63,"tag":169,"props":6765,"children":6766},{"style":253},[6767],{"type":69,"value":256},{"type":63,"tag":169,"props":6769,"children":6770},{"style":402},[6771],{"type":69,"value":6409},{"type":63,"tag":169,"props":6773,"children":6774},{"style":253},[6775],{"type":69,"value":410},{"type":63,"tag":169,"props":6777,"children":6778},{"style":253},[6779],{"type":69,"value":6780}," undefined!",{"type":63,"tag":169,"props":6782,"children":6783},{"style":253},[6784],{"type":69,"value":6785}," },",{"type":63,"tag":169,"props":6787,"children":6788},{"style":238},[6789],{"type":69,"value":6790}," \u002F\u002F placeholder, filled by RouterProvider\n",{"type":63,"tag":169,"props":6792,"children":6793},{"class":171,"line":359},[6794,6798],{"type":63,"tag":169,"props":6795,"children":6796},{"style":253},[6797],{"type":69,"value":552},{"type":63,"tag":169,"props":6799,"children":6800},{"style":259},[6801],{"type":69,"value":557},{"type":63,"tag":169,"props":6803,"children":6804},{"class":171,"line":369},[6805],{"type":63,"tag":169,"props":6806,"children":6807},{"emptyLinePlaceholder":363},[6808],{"type":69,"value":366},{"type":63,"tag":169,"props":6810,"children":6811},{"class":171,"line":398},[6812,6816,6821,6825],{"type":63,"tag":169,"props":6813,"children":6814},{"style":689},[6815],{"type":69,"value":761},{"type":63,"tag":169,"props":6817,"children":6818},{"style":383},[6819],{"type":69,"value":6820}," InnerApp",{"type":63,"tag":169,"props":6822,"children":6823},{"style":253},[6824],{"type":69,"value":526},{"type":63,"tag":169,"props":6826,"children":6827},{"style":253},[6828],{"type":69,"value":774},{"type":63,"tag":169,"props":6830,"children":6831},{"class":171,"line":418},[6832,6836,6840,6844,6848],{"type":63,"tag":169,"props":6833,"children":6834},{"style":689},[6835],{"type":69,"value":1918},{"type":63,"tag":169,"props":6837,"children":6838},{"style":259},[6839],{"type":69,"value":6409},{"type":63,"tag":169,"props":6841,"children":6842},{"style":253},[6843],{"type":69,"value":1928},{"type":63,"tag":169,"props":6845,"children":6846},{"style":383},[6847],{"type":69,"value":6418},{"type":63,"tag":169,"props":6849,"children":6850},{"style":402},[6851],{"type":69,"value":2181},{"type":63,"tag":169,"props":6853,"children":6854},{"class":171,"line":427},[6855,6859,6863,6867,6871,6875,6879,6883,6887,6891,6896],{"type":63,"tag":169,"props":6856,"children":6857},{"style":247},[6858],{"type":69,"value":782},{"type":63,"tag":169,"props":6860,"children":6861},{"style":253},[6862],{"type":69,"value":1257},{"type":63,"tag":169,"props":6864,"children":6865},{"style":176},[6866],{"type":69,"value":2005},{"type":63,"tag":169,"props":6868,"children":6869},{"style":689},[6870],{"type":69,"value":2010},{"type":63,"tag":169,"props":6872,"children":6873},{"style":253},[6874],{"type":69,"value":2015},{"type":63,"tag":169,"props":6876,"children":6877},{"style":259},[6878],{"type":69,"value":33},{"type":63,"tag":169,"props":6880,"children":6881},{"style":253},[6882],{"type":69,"value":5340},{"type":63,"tag":169,"props":6884,"children":6885},{"style":689},[6886],{"type":69,"value":6578},{"type":63,"tag":169,"props":6888,"children":6889},{"style":253},[6890],{"type":69,"value":3941},{"type":63,"tag":169,"props":6892,"children":6893},{"style":259},[6894],{"type":69,"value":6895}," auth ",{"type":63,"tag":169,"props":6897,"children":6898},{"style":253},[6899],{"type":69,"value":6900},"}} \u002F>\n",{"type":63,"tag":169,"props":6902,"children":6903},{"class":171,"line":444},[6904],{"type":63,"tag":169,"props":6905,"children":6906},{"style":253},[6907],{"type":69,"value":1076},{"type":63,"tag":169,"props":6909,"children":6910},{"class":171,"line":475},[6911],{"type":63,"tag":169,"props":6912,"children":6913},{"emptyLinePlaceholder":363},[6914],{"type":69,"value":366},{"type":63,"tag":169,"props":6916,"children":6917},{"class":171,"line":498},[6918,6922,6926,6930],{"type":63,"tag":169,"props":6919,"children":6920},{"style":689},[6921],{"type":69,"value":761},{"type":63,"tag":169,"props":6923,"children":6924},{"style":383},[6925],{"type":69,"value":5931},{"type":63,"tag":169,"props":6927,"children":6928},{"style":253},[6929],{"type":69,"value":526},{"type":63,"tag":169,"props":6931,"children":6932},{"style":253},[6933],{"type":69,"value":774},{"type":63,"tag":169,"props":6935,"children":6936},{"class":171,"line":515},[6937,6941],{"type":63,"tag":169,"props":6938,"children":6939},{"style":247},[6940],{"type":69,"value":782},{"type":63,"tag":169,"props":6942,"children":6943},{"style":402},[6944],{"type":69,"value":787},{"type":63,"tag":169,"props":6946,"children":6947},{"class":171,"line":533},[6948,6952,6956],{"type":63,"tag":169,"props":6949,"children":6950},{"style":253},[6951],{"type":69,"value":1984},{"type":63,"tag":169,"props":6953,"children":6954},{"style":176},[6955],{"type":69,"value":5962},{"type":63,"tag":169,"props":6957,"children":6958},{"style":253},[6959],{"type":69,"value":813},{"type":63,"tag":169,"props":6961,"children":6962},{"class":171,"line":546},[6963,6967,6972],{"type":63,"tag":169,"props":6964,"children":6965},{"style":253},[6966],{"type":69,"value":803},{"type":63,"tag":169,"props":6968,"children":6969},{"style":176},[6970],{"type":69,"value":6971},"InnerApp",{"type":63,"tag":169,"props":6973,"children":6974},{"style":253},[6975],{"type":69,"value":1015},{"type":63,"tag":169,"props":6977,"children":6978},{"class":171,"line":901},[6979,6983,6987],{"type":63,"tag":169,"props":6980,"children":6981},{"style":253},[6982],{"type":69,"value":2032},{"type":63,"tag":169,"props":6984,"children":6985},{"style":176},[6986],{"type":69,"value":5962},{"type":63,"tag":169,"props":6988,"children":6989},{"style":253},[6990],{"type":69,"value":813},{"type":63,"tag":169,"props":6992,"children":6993},{"class":171,"line":958},[6994],{"type":63,"tag":169,"props":6995,"children":6996},{"style":402},[6997],{"type":69,"value":1067},{"type":63,"tag":169,"props":6999,"children":7000},{"class":171,"line":967},[7001],{"type":63,"tag":169,"props":7002,"children":7003},{"style":253},[7004],{"type":69,"value":1076},{"type":63,"tag":151,"props":7006,"children":7008},{"id":7007},"_3-medium-missing-suspense-boundary-for-awaitdeferred-data",[7009,7011,7016],{"type":69,"value":7010},"3. MEDIUM: Missing Suspense boundary for ",{"type":63,"tag":72,"props":7012,"children":7014},{"className":7013},[],[7015],{"type":69,"value":4290},{"type":69,"value":7017},"\u002Fdeferred data",{"type":63,"tag":81,"props":7019,"children":7020},{},[7021,7026,7028,7034],{"type":63,"tag":72,"props":7022,"children":7024},{"className":7023},[],[7025],{"type":69,"value":4290},{"type":69,"value":7027}," requires a ",{"type":63,"tag":72,"props":7029,"children":7031},{"className":7030},[],[7032],{"type":69,"value":7033},"\u003CSuspense>",{"type":69,"value":7035}," ancestor. Without it, the deferred promise has no fallback UI and throws.",{"type":63,"tag":158,"props":7037,"children":7039},{"className":566,"code":7038,"language":568,"meta":163,"style":163},"\u002F\u002F WRONG — no Suspense boundary\n\u003CAwait promise={deferredData}>{(data) => \u003Cdiv>{data}\u003C\u002Fdiv>}\u003C\u002FAwait>\n\n\u002F\u002F CORRECT — wrap in Suspense\n\u003CSuspense fallback={\u003Cdiv>Loading...\u003C\u002Fdiv>}>\n  \u003CAwait promise={deferredData}>{(data) => \u003Cdiv>{data}\u003C\u002Fdiv>}\u003C\u002FAwait>\n\u003C\u002FSuspense>\n",[7040],{"type":63,"tag":72,"props":7041,"children":7042},{"__ignoreMap":163},[7043,7051,7130,7137,7145,7188,7263],{"type":63,"tag":169,"props":7044,"children":7045},{"class":171,"line":172},[7046],{"type":63,"tag":169,"props":7047,"children":7048},{"style":238},[7049],{"type":69,"value":7050},"\u002F\u002F WRONG — no Suspense boundary\n",{"type":63,"tag":169,"props":7052,"children":7053},{"class":171,"line":193},[7054,7058,7062,7066,7070,7075,7080,7085,7089,7093,7097,7101,7105,7109,7113,7117,7122,7126],{"type":63,"tag":169,"props":7055,"children":7056},{"style":253},[7057],{"type":69,"value":3853},{"type":63,"tag":169,"props":7059,"children":7060},{"style":176},[7061],{"type":69,"value":4290},{"type":63,"tag":169,"props":7063,"children":7064},{"style":689},[7065],{"type":69,"value":4565},{"type":63,"tag":169,"props":7067,"children":7068},{"style":253},[7069],{"type":69,"value":2015},{"type":63,"tag":169,"props":7071,"children":7072},{"style":259},[7073],{"type":69,"value":7074},"deferredData",{"type":63,"tag":169,"props":7076,"children":7077},{"style":253},[7078],{"type":69,"value":7079},"}>{(",{"type":63,"tag":169,"props":7081,"children":7082},{"style":2402},[7083],{"type":69,"value":7084},"data",{"type":63,"tag":169,"props":7086,"children":7087},{"style":253},[7088],{"type":69,"value":79},{"type":63,"tag":169,"props":7090,"children":7091},{"style":689},[7092],{"type":69,"value":2212},{"type":63,"tag":169,"props":7094,"children":7095},{"style":253},[7096],{"type":69,"value":1257},{"type":63,"tag":169,"props":7098,"children":7099},{"style":402},[7100],{"type":69,"value":2460},{"type":63,"tag":169,"props":7102,"children":7103},{"style":253},[7104],{"type":69,"value":3404},{"type":63,"tag":169,"props":7106,"children":7107},{"style":259},[7108],{"type":69,"value":7084},{"type":63,"tag":169,"props":7110,"children":7111},{"style":253},[7112],{"type":69,"value":3019},{"type":63,"tag":169,"props":7114,"children":7115},{"style":402},[7116],{"type":69,"value":2460},{"type":63,"tag":169,"props":7118,"children":7119},{"style":253},[7120],{"type":69,"value":7121},">}\u003C\u002F",{"type":63,"tag":169,"props":7123,"children":7124},{"style":176},[7125],{"type":69,"value":4290},{"type":63,"tag":169,"props":7127,"children":7128},{"style":253},[7129],{"type":69,"value":813},{"type":63,"tag":169,"props":7131,"children":7132},{"class":171,"line":290},[7133],{"type":63,"tag":169,"props":7134,"children":7135},{"emptyLinePlaceholder":363},[7136],{"type":69,"value":366},{"type":63,"tag":169,"props":7138,"children":7139},{"class":171,"line":321},[7140],{"type":63,"tag":169,"props":7141,"children":7142},{"style":238},[7143],{"type":69,"value":7144},"\u002F\u002F CORRECT — wrap in Suspense\n",{"type":63,"tag":169,"props":7146,"children":7147},{"class":171,"line":359},[7148,7152,7156,7160,7164,7168,7172,7176,7180,7184],{"type":63,"tag":169,"props":7149,"children":7150},{"style":253},[7151],{"type":69,"value":3853},{"type":63,"tag":169,"props":7153,"children":7154},{"style":176},[7155],{"type":69,"value":4513},{"type":63,"tag":169,"props":7157,"children":7158},{"style":689},[7159],{"type":69,"value":4518},{"type":63,"tag":169,"props":7161,"children":7162},{"style":253},[7163],{"type":69,"value":4523},{"type":63,"tag":169,"props":7165,"children":7166},{"style":402},[7167],{"type":69,"value":2460},{"type":63,"tag":169,"props":7169,"children":7170},{"style":253},[7171],{"type":69,"value":1266},{"type":63,"tag":169,"props":7173,"children":7174},{"style":259},[7175],{"type":69,"value":2469},{"type":63,"tag":169,"props":7177,"children":7178},{"style":253},[7179],{"type":69,"value":1276},{"type":63,"tag":169,"props":7181,"children":7182},{"style":402},[7183],{"type":69,"value":2460},{"type":63,"tag":169,"props":7185,"children":7186},{"style":253},[7187],{"type":69,"value":4549},{"type":63,"tag":169,"props":7189,"children":7190},{"class":171,"line":369},[7191,7195,7199,7203,7207,7211,7215,7219,7223,7227,7231,7235,7239,7243,7247,7251,7255,7259],{"type":63,"tag":169,"props":7192,"children":7193},{"style":253},[7194],{"type":69,"value":5042},{"type":63,"tag":169,"props":7196,"children":7197},{"style":176},[7198],{"type":69,"value":4290},{"type":63,"tag":169,"props":7200,"children":7201},{"style":689},[7202],{"type":69,"value":4565},{"type":63,"tag":169,"props":7204,"children":7205},{"style":253},[7206],{"type":69,"value":2015},{"type":63,"tag":169,"props":7208,"children":7209},{"style":259},[7210],{"type":69,"value":7074},{"type":63,"tag":169,"props":7212,"children":7213},{"style":253},[7214],{"type":69,"value":7079},{"type":63,"tag":169,"props":7216,"children":7217},{"style":2402},[7218],{"type":69,"value":7084},{"type":63,"tag":169,"props":7220,"children":7221},{"style":253},[7222],{"type":69,"value":79},{"type":63,"tag":169,"props":7224,"children":7225},{"style":689},[7226],{"type":69,"value":2212},{"type":63,"tag":169,"props":7228,"children":7229},{"style":253},[7230],{"type":69,"value":1257},{"type":63,"tag":169,"props":7232,"children":7233},{"style":402},[7234],{"type":69,"value":2460},{"type":63,"tag":169,"props":7236,"children":7237},{"style":253},[7238],{"type":69,"value":3404},{"type":63,"tag":169,"props":7240,"children":7241},{"style":259},[7242],{"type":69,"value":7084},{"type":63,"tag":169,"props":7244,"children":7245},{"style":253},[7246],{"type":69,"value":3019},{"type":63,"tag":169,"props":7248,"children":7249},{"style":402},[7250],{"type":69,"value":2460},{"type":63,"tag":169,"props":7252,"children":7253},{"style":253},[7254],{"type":69,"value":7121},{"type":63,"tag":169,"props":7256,"children":7257},{"style":176},[7258],{"type":69,"value":4290},{"type":63,"tag":169,"props":7260,"children":7261},{"style":253},[7262],{"type":69,"value":813},{"type":63,"tag":169,"props":7264,"children":7265},{"class":171,"line":398},[7266,7270,7274],{"type":63,"tag":169,"props":7267,"children":7268},{"style":253},[7269],{"type":69,"value":1276},{"type":63,"tag":169,"props":7271,"children":7272},{"style":176},[7273],{"type":69,"value":4513},{"type":63,"tag":169,"props":7275,"children":7276},{"style":253},[7277],{"type":69,"value":813},{"type":63,"tag":144,"props":7279,"children":7281},{"id":7280},"cross-references",[7282],{"type":69,"value":7283},"Cross-References",{"type":63,"tag":3666,"props":7285,"children":7286},{},[7287],{"type":63,"tag":3670,"props":7288,"children":7289},{},[7290,7295],{"type":63,"tag":87,"props":7291,"children":7292},{"href":89},[7293],{"type":69,"value":7294},"router-core\u002FSKILL.md",{"type":69,"value":7296}," — all sub-skills for domain-specific patterns (search params, data loading, navigation, auth, SSR, etc.)",{"type":63,"tag":7298,"props":7299,"children":7300},"style",{},[7301],{"type":69,"value":7302},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"items":7304,"total":7407},[7305,7319,7334,7350,7363,7382,7393],{"slug":7306,"name":7306,"fn":7307,"description":7308,"org":7309,"tags":7310,"stars":23,"repoUrl":24,"updatedAt":7318},"auth-and-guards","implement route protection in TanStack Router","Route protection with beforeLoad, redirect()\u002Fthrow redirect(), isRedirect helper, authenticated layout routes (_authenticated), non-redirect auth (inline login), RBAC with roles and permissions, auth provider integration (Auth0, Clerk, Supabase), router context for auth state.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7311,7313,7314,7315,7316],{"name":7312,"slug":6443,"type":15},"Auth",{"name":21,"slug":22,"type":15},{"name":17,"slug":18,"type":15},{"name":9,"slug":8,"type":15},{"name":7317,"slug":51,"type":15},"TanStack Router","2026-07-30T05:27:07.639032",{"slug":7320,"name":7320,"fn":7321,"description":7322,"org":7323,"tags":7324,"stars":23,"repoUrl":24,"updatedAt":7333},"auth-server-primitives","implement server-side authentication primitives","Server-side authentication primitives for TanStack Start: session cookies (HttpOnly, Secure, SameSite, __Host- prefix), session read\u002Fissue\u002Fdestroy via createServerFn and middleware, OAuth authorization-code flow with state and PKCE, password-reset enumeration defense, CSRF for non-GET RPCs, rate limiting auth endpoints, session rotation on privilege change. Pairs with router-core\u002Fauth-and-guards for the routing side.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7325,7326,7329,7332],{"name":7312,"slug":6443,"type":15},{"name":7327,"slug":7328,"type":15},"OAuth","oauth",{"name":7330,"slug":7331,"type":15},"Security","security",{"name":9,"slug":8,"type":15},"2026-07-30T05:26:59.504396",{"slug":7335,"name":7335,"fn":7336,"description":7337,"org":7338,"tags":7339,"stars":23,"repoUrl":24,"updatedAt":7349},"code-splitting","configure code splitting in TanStack Router","Automatic code splitting (autoCodeSplitting), .lazy.tsx convention, createLazyFileRoute, createLazyRoute, lazyRouteComponent, getRouteApi for typed hooks in split files, codeSplitGroupings per-route override, splitBehavior programmatic config, critical vs non-critical properties.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7340,7343,7344,7347,7348],{"name":7341,"slug":7342,"type":15},"Engineering","engineering",{"name":21,"slug":22,"type":15},{"name":7345,"slug":7346,"type":15},"Performance","performance",{"name":9,"slug":8,"type":15},{"name":7317,"slug":51,"type":15},"2026-07-30T05:27:11.494406",{"slug":7351,"name":7351,"fn":7352,"description":7353,"org":7354,"tags":7355,"stars":23,"repoUrl":24,"updatedAt":7362},"data-loading","manage data loading in TanStack Router","Route loader option, loaderDeps for cache keys, staleTime\u002FgcTime\u002F defaultPreloadStaleTime SWR caching, pendingComponent\u002FpendingMs\u002F pendingMinMs, errorComponent\u002FonError\u002FonCatch, beforeLoad, router context and createRootRouteWithContext DI pattern, router.invalidate, Await component, deferred data loading with unawaited promises.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7356,7359,7360,7361],{"name":7357,"slug":7358,"type":15},"Caching","caching",{"name":7345,"slug":7346,"type":15},{"name":9,"slug":8,"type":15},{"name":7317,"slug":51,"type":15},"2026-07-30T05:26:54.487943",{"slug":7364,"name":7364,"fn":7365,"description":7366,"org":7367,"tags":7368,"stars":23,"repoUrl":24,"updatedAt":7381},"deployment","deploy TanStack Start applications","Deploy to Cloudflare Workers, Netlify, Vercel, Node.js\u002FDocker, Bun, Railway. Selective SSR (ssr option per route), SPA mode, static prerendering, ISR with Cache-Control headers, SEO and head management.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7369,7372,7374,7377,7378],{"name":7370,"slug":7371,"type":15},"Cloudflare","cloudflare",{"name":7373,"slug":7364,"type":15},"Deployment",{"name":7375,"slug":7376,"type":15},"Netlify","netlify",{"name":9,"slug":8,"type":15},{"name":7379,"slug":7380,"type":15},"Vercel","vercel","2026-07-30T05:26:50.509927",{"slug":7383,"name":7383,"fn":7384,"description":7385,"org":7386,"tags":7387,"stars":23,"repoUrl":24,"updatedAt":7392},"execution-model","manage isomorphic execution models","Isomorphic-by-default principle, environment boundary functions (createServerFn, createServerOnlyFn, createClientOnlyFn, createIsomorphicFn), ClientOnly component, useHydrated hook, import protection, dead code elimination, environment variable safety (VITE_ prefix, process.env).",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7388,7391],{"name":7389,"slug":7390,"type":15},"Architecture","architecture",{"name":9,"slug":8,"type":15},"2026-07-30T05:27:04.558441",{"slug":7394,"name":7394,"fn":7395,"description":7396,"org":7397,"tags":7398,"stars":23,"repoUrl":24,"updatedAt":7406},"middleware","implement TanStack Router middleware","createMiddleware, request middleware (.server only), server function middleware (.client + .server), context passing via next({ context }), sendContext for client-server transfer, global middleware via createStart in src\u002Fstart.ts, middleware factories, method order enforcement, fetch override precedence.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7399,7402,7403,7405],{"name":7400,"slug":7401,"type":15},"Backend","backend",{"name":21,"slug":22,"type":15},{"name":7404,"slug":7394,"type":15},"Middleware",{"name":9,"slug":8,"type":15},"2026-07-30T05:26:58.546019",30,{"items":7409,"total":7547},[7410,7424,7436,7448,7461,7473,7483,7493,7506,7516,7527,7537],{"slug":7411,"name":7411,"fn":7412,"description":7413,"org":7414,"tags":7415,"stars":7421,"repoUrl":7422,"updatedAt":7423},"aggregation","perform data aggregation in TanStack Table","Aggregate TanStack Table columns independently of grouping, including grand totals, caller-selected row totals, multiple keyed aggregations, custom context-based definitions, grouped merges, manual values, and worker constraints.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7416,7419,7420],{"name":7417,"slug":7418,"type":15},"Data Analysis","data-analysis",{"name":21,"slug":22,"type":15},{"name":9,"slug":8,"type":15},28175,"https:\u002F\u002Fgithub.com\u002FTanStack\u002Ftable","2026-07-30T05:25:59.429787",{"slug":7425,"name":7425,"fn":7426,"description":7427,"org":7428,"tags":7429,"stars":7421,"repoUrl":7422,"updatedAt":7435},"api-not-found","diagnose TanStack Table API errors","Diagnose missing TanStack Table v9 exports, options, state slices, and instance methods. Load before inventing an API when code sees a type error, undefined feature method, absent object key, adapter mismatch, or v8-shaped example.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7430,7433,7434],{"name":7431,"slug":7432,"type":15},"Debugging","debugging",{"name":21,"slug":22,"type":15},{"name":9,"slug":8,"type":15},"2026-07-30T05:26:05.418735",{"slug":7437,"name":7437,"fn":7438,"description":7439,"org":7440,"tags":7441,"stars":7421,"repoUrl":7422,"updatedAt":7447},"cell-selection","select rectangular cell ranges in tables","Select rectangular cell ranges with cellSelectionFeature: two-corner range state keyed by row and column id, mousedown\u002Fmouseenter handlers, selection edges, render-order resolution under pinning, and autoResetCellSelection. Load when ranges widen unexpectedly after sorting or column reordering, when a drag re-renders the whole table, or when building copy-to-clipboard from a selection.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7442,7443,7444],{"name":7417,"slug":7418,"type":15},{"name":9,"slug":8,"type":15},{"name":7445,"slug":7446,"type":15},"UI Components","ui-components","2026-07-30T05:25:38.403427",{"slug":7449,"name":7449,"fn":7450,"description":7451,"org":7452,"tags":7453,"stars":7421,"repoUrl":7422,"updatedAt":7460},"client-vs-server","manage TanStack Table data pipelines","Choose client or server ownership for filtering, grouping, sorting, expanding, and pagination in TanStack Table v9. Load for manual* flags, mixed pipelines, server counts, or deciding which dataset each row-model stage receives.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7454,7457,7458,7459],{"name":7455,"slug":7456,"type":15},"Data Pipeline","data-pipeline",{"name":21,"slug":22,"type":15},{"name":7345,"slug":7346,"type":15},{"name":9,"slug":8,"type":15},"2026-07-30T05:25:45.400104",{"slug":7462,"name":7462,"fn":7463,"description":7464,"org":7465,"tags":7466,"stars":7421,"repoUrl":7422,"updatedAt":7472},"column-faceting","build faceted filter UIs","Build faceted filter UIs with columnFacetingFeature, facetedRowModel, facetedUniqueValues, and facetedMinMaxValues. Load for facet counts, numeric ranges, own-filter exclusion, or server-page facet completeness.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7467,7470,7471],{"name":7468,"slug":7469,"type":15},"Data Visualization","data-visualization",{"name":21,"slug":22,"type":15},{"name":9,"slug":8,"type":15},"2026-07-30T05:25:41.397257",{"slug":7474,"name":7474,"fn":7475,"description":7476,"org":7477,"tags":7478,"stars":7421,"repoUrl":7422,"updatedAt":7482},"column-filtering","implement column filtering in TanStack Table","Filter columns with columnFilteringFeature, filteredRowModel, filterFns, filterMeta, nested-row direction, and manualFiltering. Load for accessor compatibility, controlled filter updaters, fuzzy metadata, or client\u002Fserver ownership.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7479,7480,7481],{"name":7417,"slug":7418,"type":15},{"name":21,"slug":22,"type":15},{"name":9,"slug":8,"type":15},"2026-07-30T05:25:53.391632",{"slug":7484,"name":7484,"fn":7485,"description":7486,"org":7487,"tags":7488,"stars":7421,"repoUrl":7422,"updatedAt":7492},"column-ordering","manage TanStack Table column ordering","Control TanStack Table v9 leaf columnOrder with stable IDs while accounting for pinning regions, visibility, and groupedColumnMode precedence. Load for drag-and-drop columns or rendered order that differs from state.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7489,7490,7491],{"name":21,"slug":22,"type":15},{"name":9,"slug":8,"type":15},{"name":7445,"slug":7446,"type":15},"2026-07-30T05:26:03.37801",{"slug":7494,"name":7494,"fn":7495,"description":7496,"org":7497,"tags":7498,"stars":7421,"repoUrl":7422,"updatedAt":7505},"column-pinning","configure column pinning in TanStack Table","Pin columns into logical start, center, and end regions with columnPinningFeature and renderer-owned sticky CSS. Load for RTL offsets, z-index, backgrounds, overflow, widths, gaps, or overlaps.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7499,7502,7503,7504],{"name":7500,"slug":7501,"type":15},"CSS","css",{"name":21,"slug":22,"type":15},{"name":9,"slug":8,"type":15},{"name":7445,"slug":7446,"type":15},"2026-07-30T05:25:55.377366",{"slug":7507,"name":7507,"fn":7508,"description":7509,"org":7510,"tags":7511,"stars":7421,"repoUrl":7422,"updatedAt":7515},"column-resizing","implement column resizing in TanStack Table","Wire columnResizingFeature, header.getResizeHandler, resize mode and direction, pointer or touch events, and performant CSS-variable updates. Load when resize state changes but widths do not, or large tables resize slowly.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7512,7513,7514],{"name":21,"slug":22,"type":15},{"name":9,"slug":8,"type":15},{"name":7445,"slug":7446,"type":15},"2026-07-30T05:25:51.400011",{"slug":7517,"name":7517,"fn":7518,"description":7519,"org":7520,"tags":7521,"stars":7421,"repoUrl":7422,"updatedAt":7526},"column-sizing","configure column sizing in TanStack Table","Use columnSizingFeature numeric size, minSize, maxSize, getSize, getStart, getAfter, and total-size APIs in table, grid, or flex CSS. Load for auto or percentage misconceptions and sizing\u002Fpinning layout mismatch.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7522,7523,7524,7525],{"name":7500,"slug":7501,"type":15},{"name":21,"slug":22,"type":15},{"name":9,"slug":8,"type":15},{"name":7445,"slug":7446,"type":15},"2026-07-30T05:25:48.703799",{"slug":7528,"name":7528,"fn":7529,"description":7530,"org":7531,"tags":7532,"stars":7421,"repoUrl":7422,"updatedAt":7536},"column-visibility","manage column visibility in TanStack Table","Hide columns with columnVisibilityFeature while rendering visibility-aware header, column, and cell collections. Load when hidden columns remain in the DOM, false-versus-absent state is confused, or enableHiding is misunderstood.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7533,7534,7535],{"name":21,"slug":22,"type":15},{"name":9,"slug":8,"type":15},{"name":7445,"slug":7446,"type":15},"2026-07-30T05:25:47.367943",{"slug":7538,"name":7538,"fn":7539,"description":7540,"org":7541,"tags":7542,"stars":7421,"repoUrl":7422,"updatedAt":7546},"core","build data grids with TanStack Table","Use TanStack Table v9 as a headless data-grid state and row-processing engine. Load for first-table architecture, stable data and columns, row numbering with getDisplayIndex, semantic rendering, framework adapter choice, or deciding what Table owns versus the renderer.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[7543,7544,7545],{"name":7417,"slug":7418,"type":15},{"name":21,"slug":22,"type":15},{"name":7445,"slug":7446,"type":15},"2026-07-30T05:25:52.366295",125]