[{"data":1,"prerenderedAt":5800},["ShallowReactive",2],{"navigation":3,"examples-nav":228,"-examples-vite-ssr-vue-router":357,"-examples-vite-ssr-vue-router-surround":5795},[4,83,212,218,225],{"title":5,"path":6,"stem":7,"children":8,"icon":82},"","/docs","1.docs/1.index",[9,12,17,22,27,32,37,42,47,52,57,62,67,72,77],{"title":10,"path":6,"stem":7,"icon":11},"Introduction","i-lucide-compass",{"title":13,"path":14,"stem":15,"icon":16},"Quick Start","/docs/quick-start","1.docs/2.quick-start","i-lucide-zap",{"title":18,"path":19,"stem":20,"icon":21},"Renderer","/docs/renderer","1.docs/4.renderer","ri:layout-masonry-line",{"title":23,"path":24,"stem":25,"icon":26},"Routing","/docs/routing","1.docs/5.routing","ri:direction-line",{"title":28,"path":29,"stem":30,"icon":31},"Assets","/docs/assets","1.docs/50.assets","ri:image-2-line",{"title":33,"path":34,"stem":35,"icon":36},"Configuration","/docs/configuration","1.docs/50.configuration","ri:settings-3-line",{"title":38,"path":39,"stem":40,"icon":41},"Database","/docs/database","1.docs/50.database","ri:database-2-line",{"title":43,"path":44,"stem":45,"icon":46},"Lifecycle","/docs/lifecycle","1.docs/50.lifecycle","i-lucide-layers",{"title":48,"path":49,"stem":50,"icon":51},"Plugins","/docs/plugins","1.docs/50.plugins","ri:plug-line",{"title":53,"path":54,"stem":55,"icon":56},"Tasks","/docs/tasks","1.docs/50.tasks","codicon:run-all",{"title":58,"path":59,"stem":60,"icon":61},"Server Entry","/docs/server-entry","1.docs/6.server-entry","ri:server-line",{"title":63,"path":64,"stem":65,"icon":66},"Cache","/docs/cache","1.docs/7.cache","ri:speed-line",{"title":68,"path":69,"stem":70,"icon":71},"KV Storage","/docs/storage","1.docs/8.storage","carbon:datastore",{"title":73,"path":74,"stem":75,"icon":76},"Migration Guide","/docs/migration","1.docs/99.migration","ri:arrow-right-up-line",{"title":78,"path":79,"stem":80,"icon":81},"Nightly Channel","/docs/nightly","1.docs/99.nightly","ri:moon-fill","i-lucide-book-open",{"title":84,"path":85,"stem":86,"children":87,"icon":89},"Deploy","/deploy","2.deploy/0.index",[88,90,111],{"title":84,"path":85,"stem":86,"icon":89},"ri:upload-cloud-2-line",{"title":91,"path":92,"stem":93,"children":94,"page":110},"Runtimes","/deploy/runtimes","2.deploy/10.runtimes",[95,100,105],{"title":96,"path":97,"stem":98,"icon":99},"Node.js","/deploy/runtimes/node","2.deploy/10.runtimes/1.node","akar-icons:node-fill",{"title":101,"path":102,"stem":103,"icon":104},"Bun","/deploy/runtimes/bun","2.deploy/10.runtimes/bun","simple-icons:bun",{"title":106,"path":107,"stem":108,"icon":109},"Deno","/deploy/runtimes/deno","2.deploy/10.runtimes/deno","simple-icons:deno",false,{"title":112,"path":113,"stem":114,"children":115,"page":110},"Providers","/deploy/providers","2.deploy/20.providers",[116,120,124,128,132,136,140,144,148,152,156,160,164,168,172,176,180,184,188,192,196,200,204,208],{"title":117,"path":118,"stem":119},"Alwaysdata","/deploy/providers/alwaysdata","2.deploy/20.providers/alwaysdata",{"title":121,"path":122,"stem":123},"AWS Lambda","/deploy/providers/aws","2.deploy/20.providers/aws",{"title":125,"path":126,"stem":127},"AWS Amplify","/deploy/providers/aws-amplify","2.deploy/20.providers/aws-amplify",{"title":129,"path":130,"stem":131},"Azure","/deploy/providers/azure","2.deploy/20.providers/azure",{"title":133,"path":134,"stem":135},"Cleavr","/deploy/providers/cleavr","2.deploy/20.providers/cleavr",{"title":137,"path":138,"stem":139},"Cloudflare","/deploy/providers/cloudflare","2.deploy/20.providers/cloudflare",{"title":141,"path":142,"stem":143},"Deno Deploy","/deploy/providers/deno-deploy","2.deploy/20.providers/deno-deploy",{"title":145,"path":146,"stem":147},"DigitalOcean","/deploy/providers/digitalocean","2.deploy/20.providers/digitalocean",{"title":149,"path":150,"stem":151},"Firebase","/deploy/providers/firebase","2.deploy/20.providers/firebase",{"title":153,"path":154,"stem":155},"Flightcontrol","/deploy/providers/flightcontrol","2.deploy/20.providers/flightcontrol",{"title":157,"path":158,"stem":159},"Genezio","/deploy/providers/genezio","2.deploy/20.providers/genezio",{"title":161,"path":162,"stem":163},"GitHub Pages","/deploy/providers/github-pages","2.deploy/20.providers/github-pages",{"title":165,"path":166,"stem":167},"GitLab Pages","/deploy/providers/gitlab-pages","2.deploy/20.providers/gitlab-pages",{"title":169,"path":170,"stem":171},"Heroku","/deploy/providers/heroku","2.deploy/20.providers/heroku",{"title":173,"path":174,"stem":175},"IIS","/deploy/providers/iis","2.deploy/20.providers/iis",{"title":177,"path":178,"stem":179},"Koyeb","/deploy/providers/koyeb","2.deploy/20.providers/koyeb",{"title":181,"path":182,"stem":183},"Netlify","/deploy/providers/netlify","2.deploy/20.providers/netlify",{"title":185,"path":186,"stem":187},"Platform.sh","/deploy/providers/platform-sh","2.deploy/20.providers/platform-sh",{"title":189,"path":190,"stem":191},"Render.com","/deploy/providers/render","2.deploy/20.providers/render",{"title":193,"path":194,"stem":195},"StormKit","/deploy/providers/stormkit","2.deploy/20.providers/stormkit",{"title":197,"path":198,"stem":199},"Vercel","/deploy/providers/vercel","2.deploy/20.providers/vercel",{"title":201,"path":202,"stem":203},"Zeabur","/deploy/providers/zeabur","2.deploy/20.providers/zeabur",{"title":205,"path":206,"stem":207},"Zephyr Cloud","/deploy/providers/zephyr","2.deploy/20.providers/zephyr",{"title":209,"path":210,"stem":211},"Zerops","/deploy/providers/zerops","2.deploy/20.providers/zerops",{"title":213,"path":214,"stem":215,"children":216,"icon":36},"Config","/config","3.config/0.index",[217],{"title":213,"path":214,"stem":215,"icon":36},{"title":219,"path":220,"stem":221,"children":222,"icon":224},"Examples","/examples","4.examples/0.index",[223],{"title":219,"path":220,"stem":221,"icon":224},"i-lucide-folder-code",{"title":5,"path":226,"stem":227},"/","index",[229,234,239,243,247,250,255,259,263,267,271,275,279,284,288,291,295,299,303,308,312,317,321,325,329,333,337,341,345,349,353],{"title":230,"description":231,"category":232,"path":233},"API Routes","File-based API routing with HTTP method support and dynamic parameters.","features","/examples/api-routes/readme",{"title":235,"description":236,"category":237,"path":238},"Auto Imports","Automatic imports for utilities and composables.","config","/examples/auto-imports/readme",{"title":240,"description":241,"category":232,"path":242},"Cached Handler","Cache route responses with configurable bypass logic.","/examples/cached-handler/readme",{"title":244,"description":245,"category":232,"path":246},"Custom Error Handler","Customize error responses with a global error handler.","/examples/custom-error-handler/readme",{"title":38,"description":248,"category":232,"path":249},"Built-in database support with SQL template literals.","/examples/database/readme",{"title":251,"description":252,"category":253,"path":254},"Elysia","Integrate Elysia with Nitro using the server entry.","backend frameworks","/examples/elysia/readme",{"title":256,"description":257,"category":253,"path":258},"Express","Integrate Express with Nitro using the server entry.","/examples/express/readme",{"title":260,"description":261,"category":253,"path":262},"Fastify","Integrate Fastify with Nitro using the server entry.","/examples/fastify/readme",{"title":264,"description":265,"category":232,"path":266},"Hello World","Minimal Nitro server using the web standard fetch handler.","/examples/hello-world/readme",{"title":268,"description":269,"category":253,"path":270},"Hono","Integrate Hono with Nitro using the server entry.","/examples/hono/readme",{"title":272,"description":273,"category":237,"path":274},"Import Alias","Custom import aliases for cleaner module paths.","/examples/import-alias/readme",{"title":276,"description":277,"category":232,"path":278},"Middleware","Request middleware for authentication, logging, and request modification.","/examples/middleware/readme",{"title":280,"description":281,"category":282,"path":283},"Mono JSX","Server-side JSX rendering in Nitro with mono-jsx.","server side rendering","/examples/mono-jsx/readme",{"title":285,"description":286,"category":282,"path":287},"Nano JSX","Server-side JSX rendering in Nitro with nano-jsx.","/examples/nano-jsx/readme",{"title":48,"description":289,"category":232,"path":290},"Extend Nitro with custom plugins for hooks and lifecycle events.","/examples/plugins/readme",{"title":292,"description":293,"category":282,"path":294},"Custom Renderer","Build a custom HTML renderer in Nitro with server-side data fetching.","/examples/renderer/readme",{"title":296,"description":297,"category":237,"path":298},"Runtime Config","Environment-aware configuration with runtime access.","/examples/runtime-config/readme",{"title":300,"description":301,"category":232,"path":302},"Server Fetch","Internal server-to-server requests without network overhead.","/examples/server-fetch/readme",{"title":304,"description":305,"category":306,"path":307},"Shiki","Server-side syntax highlighting in Nitro with Shiki.","integrations","/examples/shiki/readme",{"title":309,"description":310,"category":232,"path":311},"Virtual Routes","Define routes programmatically using Nitro's virtual module system.","/examples/virtual-routes/readme",{"title":313,"description":314,"category":315,"path":316},"Vite Nitro Plugin","Use Nitro as a Vite plugin for programmatic configuration.","vite","/examples/vite-nitro-plugin/readme",{"title":318,"description":319,"category":315,"path":320},"Vite RSC","React Server Components with Vite and Nitro.","/examples/vite-rsc/readme",{"title":322,"description":323,"category":282,"path":324},"Vite SSR HTML","Server-side rendering with vanilla HTML, Vite, and Nitro.","/examples/vite-ssr-html/readme",{"title":326,"description":327,"category":282,"path":328},"SSR with Preact","Server-side rendering with Preact in Nitro using Vite.","/examples/vite-ssr-preact/readme",{"title":330,"description":331,"category":282,"path":332},"SSR with React","Server-side rendering with React in Nitro using Vite.","/examples/vite-ssr-react/readme",{"title":334,"description":335,"category":282,"path":336},"SSR with SolidJS","Server-side rendering with SolidJS in Nitro using Vite.","/examples/vite-ssr-solid/readme",{"title":338,"description":339,"category":282,"path":340},"SSR with TanStack Router","Client-side routing with TanStack Router in Nitro using Vite.","/examples/vite-ssr-tsr-react/readme",{"title":342,"description":343,"category":282,"path":344},"SSR with TanStack Start","Full-stack React with TanStack Start in Nitro using Vite.","/examples/vite-ssr-tss-react/readme",{"title":346,"description":347,"category":282,"path":348},"SSR with Vue Router","Server-side rendering with Vue Router in Nitro using Vite.","/examples/vite-ssr-vue-router/readme",{"title":350,"description":351,"category":315,"path":352},"Vite + tRPC","End-to-end typesafe APIs with tRPC in Nitro using Vite.","/examples/vite-trpc/readme",{"title":354,"description":355,"category":232,"path":356},"WebSocket","Real-time bidirectional communication with WebSocket support.","/examples/websocket/readme",{"id":358,"title":346,"body":359,"category":282,"description":347,"extension":5788,"icon":5789,"meta":5790,"navigation":5791,"path":348,"seo":5792,"stem":5793,"__hash__":5794},"examples/examples/vite-ssr-vue-router/README.md",{"type":360,"value":361,"toc":5779},"minimark",[362,3886,3889,3894,3913,3917,3928,4162,4172,4176,4179,4487,4494,4498,4501,5107,5125,5129,5132,5266,5277,5281,5284,5746,5750,5776],[363,364,367,564,588,910,1470,1635,2360,2710,2780,3268,3370,3835],"code-tree",{":expand-all":365,"default-value":366,"expand-all":5},"true","app/entry-server.ts",[368,369,374],"pre",{"className":370,"code":371,"filename":372,"language":373,"meta":5,"style":5},"language-json shiki shiki-themes github-light github-dark github-dark","{\n  \"type\": \"module\",\n  \"scripts\": {\n    \"build\": \"vite build\",\n    \"dev\": \"vite dev\",\n    \"preview\": \"vite preview\"\n  },\n  \"devDependencies\": {\n    \"@vitejs/plugin-vue\": \"^6.0.4\",\n    \"nitro\": \"latest\",\n    \"unhead\": \"^2.1.3\",\n    \"vite\": \"beta\",\n    \"vite-plugin-devtools-json\": \"^1.0.0\",\n    \"vue\": \"^3.5.27\",\n    \"vue-router\": \"^4.6.4\"\n  }\n}\n","package.json","json",[375,376,377,386,403,412,425,438,449,455,463,476,489,502,515,528,541,552,558],"code",{"__ignoreMap":5},[378,379,382],"span",{"class":380,"line":381},"line",1,[378,383,385],{"class":384},"slsVL","{\n",[378,387,389,393,396,400],{"class":380,"line":388},2,[378,390,392],{"class":391},"suiK_","  \"type\"",[378,394,395],{"class":384},": ",[378,397,399],{"class":398},"sfrk1","\"module\"",[378,401,402],{"class":384},",\n",[378,404,406,409],{"class":380,"line":405},3,[378,407,408],{"class":391},"  \"scripts\"",[378,410,411],{"class":384},": {\n",[378,413,415,418,420,423],{"class":380,"line":414},4,[378,416,417],{"class":391},"    \"build\"",[378,419,395],{"class":384},[378,421,422],{"class":398},"\"vite build\"",[378,424,402],{"class":384},[378,426,428,431,433,436],{"class":380,"line":427},5,[378,429,430],{"class":391},"    \"dev\"",[378,432,395],{"class":384},[378,434,435],{"class":398},"\"vite dev\"",[378,437,402],{"class":384},[378,439,441,444,446],{"class":380,"line":440},6,[378,442,443],{"class":391},"    \"preview\"",[378,445,395],{"class":384},[378,447,448],{"class":398},"\"vite preview\"\n",[378,450,452],{"class":380,"line":451},7,[378,453,454],{"class":384},"  },\n",[378,456,458,461],{"class":380,"line":457},8,[378,459,460],{"class":391},"  \"devDependencies\"",[378,462,411],{"class":384},[378,464,466,469,471,474],{"class":380,"line":465},9,[378,467,468],{"class":391},"    \"@vitejs/plugin-vue\"",[378,470,395],{"class":384},[378,472,473],{"class":398},"\"^6.0.4\"",[378,475,402],{"class":384},[378,477,479,482,484,487],{"class":380,"line":478},10,[378,480,481],{"class":391},"    \"nitro\"",[378,483,395],{"class":384},[378,485,486],{"class":398},"\"latest\"",[378,488,402],{"class":384},[378,490,492,495,497,500],{"class":380,"line":491},11,[378,493,494],{"class":391},"    \"unhead\"",[378,496,395],{"class":384},[378,498,499],{"class":398},"\"^2.1.3\"",[378,501,402],{"class":384},[378,503,505,508,510,513],{"class":380,"line":504},12,[378,506,507],{"class":391},"    \"vite\"",[378,509,395],{"class":384},[378,511,512],{"class":398},"\"beta\"",[378,514,402],{"class":384},[378,516,518,521,523,526],{"class":380,"line":517},13,[378,519,520],{"class":391},"    \"vite-plugin-devtools-json\"",[378,522,395],{"class":384},[378,524,525],{"class":398},"\"^1.0.0\"",[378,527,402],{"class":384},[378,529,531,534,536,539],{"class":380,"line":530},14,[378,532,533],{"class":391},"    \"vue\"",[378,535,395],{"class":384},[378,537,538],{"class":398},"\"^3.5.27\"",[378,540,402],{"class":384},[378,542,544,547,549],{"class":380,"line":543},15,[378,545,546],{"class":391},"    \"vue-router\"",[378,548,395],{"class":384},[378,550,551],{"class":398},"\"^4.6.4\"\n",[378,553,555],{"class":380,"line":554},16,[378,556,557],{"class":384},"  }\n",[378,559,561],{"class":380,"line":560},17,[378,562,563],{"class":384},"}\n",[368,565,568],{"className":370,"code":566,"filename":567,"language":373,"meta":5,"style":5},"{\n  \"extends\": \"nitro/tsconfig\"\n}\n","tsconfig.json",[375,569,570,574,584],{"__ignoreMap":5},[378,571,572],{"class":380,"line":381},[378,573,385],{"class":384},[378,575,576,579,581],{"class":380,"line":388},[378,577,578],{"class":391},"  \"extends\"",[378,580,395],{"class":384},[378,582,583],{"class":398},"\"nitro/tsconfig\"\n",[378,585,586],{"class":380,"line":405},[378,587,563],{"class":384},[368,589,594],{"className":590,"code":591,"filename":592,"language":593,"meta":5,"style":5},"language-js shiki shiki-themes github-light github-dark github-dark","import vue from \"@vitejs/plugin-vue\";\nimport { defineConfig } from \"vite\";\nimport devtoolsJson from \"vite-plugin-devtools-json\";\nimport { nitro } from \"nitro/vite\";\n\nexport default defineConfig((_env) => ({\n  plugins: [patchVueExclude(vue(), /\\?assets/), devtoolsJson(), nitro()],\n  environments: {\n    client: { build: { rollupOptions: { input: \"./app/entry-client.ts\" } } },\n    ssr: { build: { rollupOptions: { input: \"./app/entry-server.ts\" } } },\n  },\n}));\n\n// Workaround https://github.com/vitejs/vite-plugin-vue/issues/677\nfunction patchVueExclude(plugin, exclude) {\n  const original = plugin.transform.handler;\n  plugin.transform.handler = function (...args) {\n    if (exclude.test(args[1])) return;\n    return original.call(this, ...args);\n  };\n  return plugin;\n}\n","vite.config.mjs","js",[375,595,596,614,628,642,656,662,690,735,740,751,761,765,770,774,780,802,816,840,866,890,896,905],{"__ignoreMap":5},[378,597,598,602,605,608,611],{"class":380,"line":381},[378,599,601],{"class":600},"so5gQ","import",[378,603,604],{"class":384}," vue ",[378,606,607],{"class":600},"from",[378,609,610],{"class":398}," \"@vitejs/plugin-vue\"",[378,612,613],{"class":384},";\n",[378,615,616,618,621,623,626],{"class":380,"line":388},[378,617,601],{"class":600},[378,619,620],{"class":384}," { defineConfig } ",[378,622,607],{"class":600},[378,624,625],{"class":398}," \"vite\"",[378,627,613],{"class":384},[378,629,630,632,635,637,640],{"class":380,"line":405},[378,631,601],{"class":600},[378,633,634],{"class":384}," devtoolsJson ",[378,636,607],{"class":600},[378,638,639],{"class":398}," \"vite-plugin-devtools-json\"",[378,641,613],{"class":384},[378,643,644,646,649,651,654],{"class":380,"line":414},[378,645,601],{"class":600},[378,647,648],{"class":384}," { nitro } ",[378,650,607],{"class":600},[378,652,653],{"class":398}," \"nitro/vite\"",[378,655,613],{"class":384},[378,657,658],{"class":380,"line":427},[378,659,661],{"emptyLinePlaceholder":660},true,"\n",[378,663,664,667,670,674,677,681,684,687],{"class":380,"line":440},[378,665,666],{"class":600},"export",[378,668,669],{"class":600}," default",[378,671,673],{"class":672},"shcOC"," defineConfig",[378,675,676],{"class":384},"((",[378,678,680],{"class":679},"sQHwn","_env",[378,682,683],{"class":384},") ",[378,685,686],{"class":600},"=>",[378,688,689],{"class":384}," ({\n",[378,691,692,695,698,701,704,707,710,714,718,720,723,726,729,732],{"class":380,"line":451},[378,693,694],{"class":384},"  plugins: [",[378,696,697],{"class":672},"patchVueExclude",[378,699,700],{"class":384},"(",[378,702,703],{"class":672},"vue",[378,705,706],{"class":384},"(),",[378,708,709],{"class":398}," /",[378,711,713],{"class":712},"sAxt1","\\?",[378,715,717],{"class":716},"sQeJH","assets",[378,719,226],{"class":398},[378,721,722],{"class":384},"), ",[378,724,725],{"class":672},"devtoolsJson",[378,727,728],{"class":384},"(), ",[378,730,731],{"class":672},"nitro",[378,733,734],{"class":384},"()],\n",[378,736,737],{"class":380,"line":457},[378,738,739],{"class":384},"  environments: {\n",[378,741,742,745,748],{"class":380,"line":465},[378,743,744],{"class":384},"    client: { build: { rollupOptions: { input: ",[378,746,747],{"class":398},"\"./app/entry-client.ts\"",[378,749,750],{"class":384}," } } },\n",[378,752,753,756,759],{"class":380,"line":478},[378,754,755],{"class":384},"    ssr: { build: { rollupOptions: { input: ",[378,757,758],{"class":398},"\"./app/entry-server.ts\"",[378,760,750],{"class":384},[378,762,763],{"class":380,"line":491},[378,764,454],{"class":384},[378,766,767],{"class":380,"line":504},[378,768,769],{"class":384},"}));\n",[378,771,772],{"class":380,"line":517},[378,773,661],{"emptyLinePlaceholder":660},[378,775,776],{"class":380,"line":530},[378,777,779],{"class":778},"sCsY4","// Workaround https://github.com/vitejs/vite-plugin-vue/issues/677\n",[378,781,782,785,788,790,793,796,799],{"class":380,"line":543},[378,783,784],{"class":600},"function",[378,786,787],{"class":672}," patchVueExclude",[378,789,700],{"class":384},[378,791,792],{"class":679},"plugin",[378,794,795],{"class":384},", ",[378,797,798],{"class":679},"exclude",[378,800,801],{"class":384},") {\n",[378,803,804,807,810,813],{"class":380,"line":554},[378,805,806],{"class":600},"  const",[378,808,809],{"class":391}," original",[378,811,812],{"class":600}," =",[378,814,815],{"class":384}," plugin.transform.handler;\n",[378,817,818,821,824,826,829,832,835,838],{"class":380,"line":560},[378,819,820],{"class":384},"  plugin.transform.",[378,822,823],{"class":672},"handler",[378,825,812],{"class":600},[378,827,828],{"class":600}," function",[378,830,831],{"class":384}," (",[378,833,834],{"class":600},"...",[378,836,837],{"class":679},"args",[378,839,801],{"class":384},[378,841,843,846,849,852,855,858,861,864],{"class":380,"line":842},18,[378,844,845],{"class":600},"    if",[378,847,848],{"class":384}," (exclude.",[378,850,851],{"class":672},"test",[378,853,854],{"class":384},"(args[",[378,856,857],{"class":391},"1",[378,859,860],{"class":384},"])) ",[378,862,863],{"class":600},"return",[378,865,613],{"class":384},[378,867,869,872,875,878,880,883,885,887],{"class":380,"line":868},19,[378,870,871],{"class":600},"    return",[378,873,874],{"class":384}," original.",[378,876,877],{"class":672},"call",[378,879,700],{"class":384},[378,881,882],{"class":391},"this",[378,884,795],{"class":384},[378,886,834],{"class":600},[378,888,889],{"class":384},"args);\n",[378,891,893],{"class":380,"line":892},20,[378,894,895],{"class":384},"  };\n",[378,897,899,902],{"class":380,"line":898},21,[378,900,901],{"class":600},"  return",[378,903,904],{"class":384}," plugin;\n",[378,906,908],{"class":380,"line":907},22,[378,909,563],{"class":384},[368,911,915],{"className":912,"code":913,"filename":914,"language":703,"meta":5,"style":5},"language-vue shiki shiki-themes github-light github-dark github-dark","\u003Cscript setup lang=\"ts\">\nimport { RouterLink, RouterView } from \"vue-router\";\nimport \"./styles.css\";\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cnav>\n    \u003Cul>\n      \u003Cli>\n        \u003CRouterLink to=\"/\" exact-active-class=\"active\">Home\u003C/RouterLink>\n      \u003C/li>\n      \u003Cli>\n        \u003CRouterLink to=\"/about\" active-class=\"active\">About\u003C/RouterLink>\n      \u003C/li>\n    \u003C/ul>\n  \u003C/nav>\n  \u003CRouterView />\n\u003C/template>\n\n\u003Cstyle scoped>\nnav {\n  background: white;\n  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);\n  padding: 1rem;\n}\n\nnav ul {\n  list-style: none;\n  margin: 0;\n  padding: 0;\n  display: flex;\n  gap: 2rem;\n  max-width: 800px;\n  margin: 0 auto;\n}\n\nnav a {\n  color: #666;\n  text-decoration: none;\n}\n\nnav a:hover {\n  color: #333;\n}\n\nnav a.active {\n  color: #646cff;\n}\n\u003C/style>\n","app/app.vue",[375,916,917,941,955,964,973,977,986,996,1006,1016,1047,1056,1064,1091,1099,1108,1117,1127,1135,1139,1151,1158,1170,1215,1230,1235,1240,1250,1263,1275,1286,1299,1314,1329,1343,1348,1353,1363,1376,1388,1393,1398,1410,1422,1427,1432,1444,1456,1461],{"__ignoreMap":5},[378,918,919,922,926,929,932,935,938],{"class":380,"line":381},[378,920,921],{"class":384},"\u003C",[378,923,925],{"class":924},"sByVh","script",[378,927,928],{"class":672}," setup",[378,930,931],{"class":672}," lang",[378,933,934],{"class":384},"=",[378,936,937],{"class":398},"\"ts\"",[378,939,940],{"class":384},">\n",[378,942,943,945,948,950,953],{"class":380,"line":388},[378,944,601],{"class":600},[378,946,947],{"class":384}," { RouterLink, RouterView } ",[378,949,607],{"class":600},[378,951,952],{"class":398}," \"vue-router\"",[378,954,613],{"class":384},[378,956,957,959,962],{"class":380,"line":405},[378,958,601],{"class":600},[378,960,961],{"class":398}," \"./styles.css\"",[378,963,613],{"class":384},[378,965,966,969,971],{"class":380,"line":414},[378,967,968],{"class":384},"\u003C/",[378,970,925],{"class":924},[378,972,940],{"class":384},[378,974,975],{"class":380,"line":427},[378,976,661],{"emptyLinePlaceholder":660},[378,978,979,981,984],{"class":380,"line":440},[378,980,921],{"class":384},[378,982,983],{"class":924},"template",[378,985,940],{"class":384},[378,987,988,991,994],{"class":380,"line":451},[378,989,990],{"class":384},"  \u003C",[378,992,993],{"class":924},"nav",[378,995,940],{"class":384},[378,997,998,1001,1004],{"class":380,"line":457},[378,999,1000],{"class":384},"    \u003C",[378,1002,1003],{"class":924},"ul",[378,1005,940],{"class":384},[378,1007,1008,1011,1014],{"class":380,"line":465},[378,1009,1010],{"class":384},"      \u003C",[378,1012,1013],{"class":924},"li",[378,1015,940],{"class":384},[378,1017,1018,1021,1024,1027,1029,1032,1035,1037,1040,1043,1045],{"class":380,"line":478},[378,1019,1020],{"class":384},"        \u003C",[378,1022,1023],{"class":924},"RouterLink",[378,1025,1026],{"class":672}," to",[378,1028,934],{"class":384},[378,1030,1031],{"class":398},"\"/\"",[378,1033,1034],{"class":672}," exact-active-class",[378,1036,934],{"class":384},[378,1038,1039],{"class":398},"\"active\"",[378,1041,1042],{"class":384},">Home\u003C/",[378,1044,1023],{"class":924},[378,1046,940],{"class":384},[378,1048,1049,1052,1054],{"class":380,"line":491},[378,1050,1051],{"class":384},"      \u003C/",[378,1053,1013],{"class":924},[378,1055,940],{"class":384},[378,1057,1058,1060,1062],{"class":380,"line":504},[378,1059,1010],{"class":384},[378,1061,1013],{"class":924},[378,1063,940],{"class":384},[378,1065,1066,1068,1070,1072,1074,1077,1080,1082,1084,1087,1089],{"class":380,"line":517},[378,1067,1020],{"class":384},[378,1069,1023],{"class":924},[378,1071,1026],{"class":672},[378,1073,934],{"class":384},[378,1075,1076],{"class":398},"\"/about\"",[378,1078,1079],{"class":672}," active-class",[378,1081,934],{"class":384},[378,1083,1039],{"class":398},[378,1085,1086],{"class":384},">About\u003C/",[378,1088,1023],{"class":924},[378,1090,940],{"class":384},[378,1092,1093,1095,1097],{"class":380,"line":530},[378,1094,1051],{"class":384},[378,1096,1013],{"class":924},[378,1098,940],{"class":384},[378,1100,1101,1104,1106],{"class":380,"line":543},[378,1102,1103],{"class":384},"    \u003C/",[378,1105,1003],{"class":924},[378,1107,940],{"class":384},[378,1109,1110,1113,1115],{"class":380,"line":554},[378,1111,1112],{"class":384},"  \u003C/",[378,1114,993],{"class":924},[378,1116,940],{"class":384},[378,1118,1119,1121,1124],{"class":380,"line":560},[378,1120,990],{"class":384},[378,1122,1123],{"class":924},"RouterView",[378,1125,1126],{"class":384}," />\n",[378,1128,1129,1131,1133],{"class":380,"line":842},[378,1130,968],{"class":384},[378,1132,983],{"class":924},[378,1134,940],{"class":384},[378,1136,1137],{"class":380,"line":868},[378,1138,661],{"emptyLinePlaceholder":660},[378,1140,1141,1143,1146,1149],{"class":380,"line":892},[378,1142,921],{"class":384},[378,1144,1145],{"class":924},"style",[378,1147,1148],{"class":672}," scoped",[378,1150,940],{"class":384},[378,1152,1153,1155],{"class":380,"line":898},[378,1154,993],{"class":924},[378,1156,1157],{"class":384}," {\n",[378,1159,1160,1163,1165,1168],{"class":380,"line":907},[378,1161,1162],{"class":391},"  background",[378,1164,395],{"class":384},[378,1166,1167],{"class":391},"white",[378,1169,613],{"class":384},[378,1171,1173,1176,1178,1181,1184,1187,1190,1192,1195,1197,1199,1201,1203,1205,1207,1209,1212],{"class":380,"line":1172},23,[378,1174,1175],{"class":391},"  box-shadow",[378,1177,395],{"class":384},[378,1179,1180],{"class":391},"0",[378,1182,1183],{"class":391}," 1",[378,1185,1186],{"class":600},"px",[378,1188,1189],{"class":391}," 3",[378,1191,1186],{"class":600},[378,1193,1194],{"class":391}," rgba",[378,1196,700],{"class":384},[378,1198,1180],{"class":391},[378,1200,795],{"class":384},[378,1202,1180],{"class":391},[378,1204,795],{"class":384},[378,1206,1180],{"class":391},[378,1208,795],{"class":384},[378,1210,1211],{"class":391},"0.1",[378,1213,1214],{"class":384},");\n",[378,1216,1218,1221,1223,1225,1228],{"class":380,"line":1217},24,[378,1219,1220],{"class":391},"  padding",[378,1222,395],{"class":384},[378,1224,857],{"class":391},[378,1226,1227],{"class":600},"rem",[378,1229,613],{"class":384},[378,1231,1233],{"class":380,"line":1232},25,[378,1234,563],{"class":384},[378,1236,1238],{"class":380,"line":1237},26,[378,1239,661],{"emptyLinePlaceholder":660},[378,1241,1243,1245,1248],{"class":380,"line":1242},27,[378,1244,993],{"class":924},[378,1246,1247],{"class":924}," ul",[378,1249,1157],{"class":384},[378,1251,1253,1256,1258,1261],{"class":380,"line":1252},28,[378,1254,1255],{"class":391},"  list-style",[378,1257,395],{"class":384},[378,1259,1260],{"class":391},"none",[378,1262,613],{"class":384},[378,1264,1266,1269,1271,1273],{"class":380,"line":1265},29,[378,1267,1268],{"class":391},"  margin",[378,1270,395],{"class":384},[378,1272,1180],{"class":391},[378,1274,613],{"class":384},[378,1276,1278,1280,1282,1284],{"class":380,"line":1277},30,[378,1279,1220],{"class":391},[378,1281,395],{"class":384},[378,1283,1180],{"class":391},[378,1285,613],{"class":384},[378,1287,1289,1292,1294,1297],{"class":380,"line":1288},31,[378,1290,1291],{"class":391},"  display",[378,1293,395],{"class":384},[378,1295,1296],{"class":391},"flex",[378,1298,613],{"class":384},[378,1300,1302,1305,1307,1310,1312],{"class":380,"line":1301},32,[378,1303,1304],{"class":391},"  gap",[378,1306,395],{"class":384},[378,1308,1309],{"class":391},"2",[378,1311,1227],{"class":600},[378,1313,613],{"class":384},[378,1315,1317,1320,1322,1325,1327],{"class":380,"line":1316},33,[378,1318,1319],{"class":391},"  max-width",[378,1321,395],{"class":384},[378,1323,1324],{"class":391},"800",[378,1326,1186],{"class":600},[378,1328,613],{"class":384},[378,1330,1332,1334,1336,1338,1341],{"class":380,"line":1331},34,[378,1333,1268],{"class":391},[378,1335,395],{"class":384},[378,1337,1180],{"class":391},[378,1339,1340],{"class":391}," auto",[378,1342,613],{"class":384},[378,1344,1346],{"class":380,"line":1345},35,[378,1347,563],{"class":384},[378,1349,1351],{"class":380,"line":1350},36,[378,1352,661],{"emptyLinePlaceholder":660},[378,1354,1356,1358,1361],{"class":380,"line":1355},37,[378,1357,993],{"class":924},[378,1359,1360],{"class":924}," a",[378,1362,1157],{"class":384},[378,1364,1366,1369,1371,1374],{"class":380,"line":1365},38,[378,1367,1368],{"class":391},"  color",[378,1370,395],{"class":384},[378,1372,1373],{"class":391},"#666",[378,1375,613],{"class":384},[378,1377,1379,1382,1384,1386],{"class":380,"line":1378},39,[378,1380,1381],{"class":391},"  text-decoration",[378,1383,395],{"class":384},[378,1385,1260],{"class":391},[378,1387,613],{"class":384},[378,1389,1391],{"class":380,"line":1390},40,[378,1392,563],{"class":384},[378,1394,1396],{"class":380,"line":1395},41,[378,1397,661],{"emptyLinePlaceholder":660},[378,1399,1401,1403,1405,1408],{"class":380,"line":1400},42,[378,1402,993],{"class":924},[378,1404,1360],{"class":924},[378,1406,1407],{"class":672},":hover",[378,1409,1157],{"class":384},[378,1411,1413,1415,1417,1420],{"class":380,"line":1412},43,[378,1414,1368],{"class":391},[378,1416,395],{"class":384},[378,1418,1419],{"class":391},"#333",[378,1421,613],{"class":384},[378,1423,1425],{"class":380,"line":1424},44,[378,1426,563],{"class":384},[378,1428,1430],{"class":380,"line":1429},45,[378,1431,661],{"emptyLinePlaceholder":660},[378,1433,1435,1437,1439,1442],{"class":380,"line":1434},46,[378,1436,993],{"class":924},[378,1438,1360],{"class":924},[378,1440,1441],{"class":672},".active",[378,1443,1157],{"class":384},[378,1445,1447,1449,1451,1454],{"class":380,"line":1446},47,[378,1448,1368],{"class":391},[378,1450,395],{"class":384},[378,1452,1453],{"class":391},"#646cff",[378,1455,613],{"class":384},[378,1457,1459],{"class":380,"line":1458},48,[378,1460,563],{"class":384},[378,1462,1464,1466,1468],{"class":380,"line":1463},49,[378,1465,968],{"class":384},[378,1467,1145],{"class":924},[378,1469,940],{"class":384},[368,1471,1476],{"className":1472,"code":1473,"filename":1474,"language":1475,"meta":5,"style":5},"language-ts shiki shiki-themes github-light github-dark github-dark","import { createSSRApp } from \"vue\";\nimport { RouterView, createRouter, createWebHistory } from \"vue-router\";\nimport { routes } from \"./routes.ts\";\n\nasync function main() {\n  const app = createSSRApp(RouterView);\n  const router = createRouter({ history: createWebHistory(), routes });\n  app.use(router);\n\n  await router.isReady();\n  app.mount(\"#root\");\n}\n\n// eslint-disable-next-line unicorn/prefer-top-level-await\nmain();\n","app/entry-client.ts","ts",[375,1477,1478,1492,1505,1519,1523,1536,1551,1572,1583,1587,1601,1615,1619,1623,1628],{"__ignoreMap":5},[378,1479,1480,1482,1485,1487,1490],{"class":380,"line":381},[378,1481,601],{"class":600},[378,1483,1484],{"class":384}," { createSSRApp } ",[378,1486,607],{"class":600},[378,1488,1489],{"class":398}," \"vue\"",[378,1491,613],{"class":384},[378,1493,1494,1496,1499,1501,1503],{"class":380,"line":388},[378,1495,601],{"class":600},[378,1497,1498],{"class":384}," { RouterView, createRouter, createWebHistory } ",[378,1500,607],{"class":600},[378,1502,952],{"class":398},[378,1504,613],{"class":384},[378,1506,1507,1509,1512,1514,1517],{"class":380,"line":405},[378,1508,601],{"class":600},[378,1510,1511],{"class":384}," { routes } ",[378,1513,607],{"class":600},[378,1515,1516],{"class":398}," \"./routes.ts\"",[378,1518,613],{"class":384},[378,1520,1521],{"class":380,"line":414},[378,1522,661],{"emptyLinePlaceholder":660},[378,1524,1525,1528,1530,1533],{"class":380,"line":427},[378,1526,1527],{"class":600},"async",[378,1529,828],{"class":600},[378,1531,1532],{"class":672}," main",[378,1534,1535],{"class":384},"() {\n",[378,1537,1538,1540,1543,1545,1548],{"class":380,"line":440},[378,1539,806],{"class":600},[378,1541,1542],{"class":391}," app",[378,1544,812],{"class":600},[378,1546,1547],{"class":672}," createSSRApp",[378,1549,1550],{"class":384},"(RouterView);\n",[378,1552,1553,1555,1558,1560,1563,1566,1569],{"class":380,"line":451},[378,1554,806],{"class":600},[378,1556,1557],{"class":391}," router",[378,1559,812],{"class":600},[378,1561,1562],{"class":672}," createRouter",[378,1564,1565],{"class":384},"({ history: ",[378,1567,1568],{"class":672},"createWebHistory",[378,1570,1571],{"class":384},"(), routes });\n",[378,1573,1574,1577,1580],{"class":380,"line":457},[378,1575,1576],{"class":384},"  app.",[378,1578,1579],{"class":672},"use",[378,1581,1582],{"class":384},"(router);\n",[378,1584,1585],{"class":380,"line":465},[378,1586,661],{"emptyLinePlaceholder":660},[378,1588,1589,1592,1595,1598],{"class":380,"line":478},[378,1590,1591],{"class":600},"  await",[378,1593,1594],{"class":384}," router.",[378,1596,1597],{"class":672},"isReady",[378,1599,1600],{"class":384},"();\n",[378,1602,1603,1605,1608,1610,1613],{"class":380,"line":491},[378,1604,1576],{"class":384},[378,1606,1607],{"class":672},"mount",[378,1609,700],{"class":384},[378,1611,1612],{"class":398},"\"#root\"",[378,1614,1214],{"class":384},[378,1616,1617],{"class":380,"line":504},[378,1618,563],{"class":384},[378,1620,1621],{"class":380,"line":517},[378,1622,661],{"emptyLinePlaceholder":660},[378,1624,1625],{"class":380,"line":530},[378,1626,1627],{"class":778},"// eslint-disable-next-line unicorn/prefer-top-level-await\n",[378,1629,1630,1633],{"class":380,"line":543},[378,1631,1632],{"class":672},"main",[378,1634,1600],{"class":384},[368,1636,1638],{"className":1472,"code":1637,"filename":366,"language":1475,"meta":5,"style":5},"import { createSSRApp } from \"vue\";\nimport { renderToString } from \"vue/server-renderer\";\nimport { RouterView, createMemoryHistory, createRouter } from \"vue-router\";\nimport { createHead, transformHtmlTemplate } from \"unhead/server\";\n\nimport { routes } from \"./routes.ts\";\n\nimport clientAssets from \"./entry-client.ts?assets=client\";\n\nasync function handler(request: Request): Promise\u003CResponse> {\n  const app = createSSRApp(RouterView);\n  const router = createRouter({ history: createMemoryHistory(), routes });\n  app.use(router);\n\n  const url = new URL(request.url);\n  const href = url.href.slice(url.origin.length);\n\n  await router.push(href);\n  await router.isReady();\n\n  const assets = clientAssets.merge(\n    ...(await Promise.all(\n      router.currentRoute.value.matched\n        .map((to) => to.meta.assets)\n        .filter(Boolean)\n        .map((fn) => (fn as any)().then((m: any) => m.default))\n    ))\n  );\n\n  const head = createHead();\n\n  head.push({\n    link: [\n      ...assets.css.map((attrs: any) => ({ rel: \"stylesheet\", ...attrs })),\n      ...assets.js.map((attrs: any) => ({ rel: \"modulepreload\", ...attrs })),\n    ],\n    script: [{ type: \"module\", src: clientAssets.entry }],\n  });\n\n  const renderedApp = await renderToString(app);\n\n  const html = await transformHtmlTemplate(head, htmlTemplate(renderedApp));\n\n  return new Response(html, {\n    headers: { \"Content-Type\": \"text/html;charset=utf-8\" },\n  });\n}\n\nfunction htmlTemplate(body: string): string {\n  return /* html */ `\u003C!DOCTYPE html>\n\u003Chtml lang=\"en\">\n\u003Chead>\n  \u003Cmeta charset=\"UTF-8\" />\n  \u003Cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n  \u003Ctitle>Vue Router Custom Framework\u003C/title>\n\u003C/head>\n\u003Cbody>\n  \u003Cdiv id=\"root\">${body}\u003C/div>\n\u003C/body>\n\u003C/html>`;\n}\n\nexport default {\n  fetch: handler,\n};\n",[375,1639,1640,1652,1666,1679,1693,1697,1709,1713,1727,1731,1767,1779,1796,1804,1808,1826,1849,1853,1865,1875,1879,1897,1917,1922,1942,1952,1998,2003,2008,2012,2026,2030,2040,2045,2081,2113,2118,2128,2133,2137,2155,2159,2182,2186,2198,2214,2218,2222,2226,2251,2262,2268,2274,2280,2286,2292,2298,2304,2315,2321,2329,2334,2339,2348,2354],{"__ignoreMap":5},[378,1641,1642,1644,1646,1648,1650],{"class":380,"line":381},[378,1643,601],{"class":600},[378,1645,1484],{"class":384},[378,1647,607],{"class":600},[378,1649,1489],{"class":398},[378,1651,613],{"class":384},[378,1653,1654,1656,1659,1661,1664],{"class":380,"line":388},[378,1655,601],{"class":600},[378,1657,1658],{"class":384}," { renderToString } ",[378,1660,607],{"class":600},[378,1662,1663],{"class":398}," \"vue/server-renderer\"",[378,1665,613],{"class":384},[378,1667,1668,1670,1673,1675,1677],{"class":380,"line":405},[378,1669,601],{"class":600},[378,1671,1672],{"class":384}," { RouterView, createMemoryHistory, createRouter } ",[378,1674,607],{"class":600},[378,1676,952],{"class":398},[378,1678,613],{"class":384},[378,1680,1681,1683,1686,1688,1691],{"class":380,"line":414},[378,1682,601],{"class":600},[378,1684,1685],{"class":384}," { createHead, transformHtmlTemplate } ",[378,1687,607],{"class":600},[378,1689,1690],{"class":398}," \"unhead/server\"",[378,1692,613],{"class":384},[378,1694,1695],{"class":380,"line":427},[378,1696,661],{"emptyLinePlaceholder":660},[378,1698,1699,1701,1703,1705,1707],{"class":380,"line":440},[378,1700,601],{"class":600},[378,1702,1511],{"class":384},[378,1704,607],{"class":600},[378,1706,1516],{"class":398},[378,1708,613],{"class":384},[378,1710,1711],{"class":380,"line":451},[378,1712,661],{"emptyLinePlaceholder":660},[378,1714,1715,1717,1720,1722,1725],{"class":380,"line":457},[378,1716,601],{"class":600},[378,1718,1719],{"class":384}," clientAssets ",[378,1721,607],{"class":600},[378,1723,1724],{"class":398}," \"./entry-client.ts?assets=client\"",[378,1726,613],{"class":384},[378,1728,1729],{"class":380,"line":465},[378,1730,661],{"emptyLinePlaceholder":660},[378,1732,1733,1735,1737,1740,1742,1745,1748,1751,1754,1756,1759,1761,1764],{"class":380,"line":478},[378,1734,1527],{"class":600},[378,1736,828],{"class":600},[378,1738,1739],{"class":672}," handler",[378,1741,700],{"class":384},[378,1743,1744],{"class":679},"request",[378,1746,1747],{"class":600},":",[378,1749,1750],{"class":672}," Request",[378,1752,1753],{"class":384},")",[378,1755,1747],{"class":600},[378,1757,1758],{"class":672}," Promise",[378,1760,921],{"class":384},[378,1762,1763],{"class":672},"Response",[378,1765,1766],{"class":384},"> {\n",[378,1768,1769,1771,1773,1775,1777],{"class":380,"line":491},[378,1770,806],{"class":600},[378,1772,1542],{"class":391},[378,1774,812],{"class":600},[378,1776,1547],{"class":672},[378,1778,1550],{"class":384},[378,1780,1781,1783,1785,1787,1789,1791,1794],{"class":380,"line":504},[378,1782,806],{"class":600},[378,1784,1557],{"class":391},[378,1786,812],{"class":600},[378,1788,1562],{"class":672},[378,1790,1565],{"class":384},[378,1792,1793],{"class":672},"createMemoryHistory",[378,1795,1571],{"class":384},[378,1797,1798,1800,1802],{"class":380,"line":517},[378,1799,1576],{"class":384},[378,1801,1579],{"class":672},[378,1803,1582],{"class":384},[378,1805,1806],{"class":380,"line":530},[378,1807,661],{"emptyLinePlaceholder":660},[378,1809,1810,1812,1815,1817,1820,1823],{"class":380,"line":543},[378,1811,806],{"class":600},[378,1813,1814],{"class":391}," url",[378,1816,812],{"class":600},[378,1818,1819],{"class":600}," new",[378,1821,1822],{"class":672}," URL",[378,1824,1825],{"class":384},"(request.url);\n",[378,1827,1828,1830,1833,1835,1838,1841,1844,1847],{"class":380,"line":554},[378,1829,806],{"class":600},[378,1831,1832],{"class":391}," href",[378,1834,812],{"class":600},[378,1836,1837],{"class":384}," url.href.",[378,1839,1840],{"class":672},"slice",[378,1842,1843],{"class":384},"(url.origin.",[378,1845,1846],{"class":391},"length",[378,1848,1214],{"class":384},[378,1850,1851],{"class":380,"line":560},[378,1852,661],{"emptyLinePlaceholder":660},[378,1854,1855,1857,1859,1862],{"class":380,"line":842},[378,1856,1591],{"class":600},[378,1858,1594],{"class":384},[378,1860,1861],{"class":672},"push",[378,1863,1864],{"class":384},"(href);\n",[378,1866,1867,1869,1871,1873],{"class":380,"line":868},[378,1868,1591],{"class":600},[378,1870,1594],{"class":384},[378,1872,1597],{"class":672},[378,1874,1600],{"class":384},[378,1876,1877],{"class":380,"line":892},[378,1878,661],{"emptyLinePlaceholder":660},[378,1880,1881,1883,1886,1888,1891,1894],{"class":380,"line":898},[378,1882,806],{"class":600},[378,1884,1885],{"class":391}," assets",[378,1887,812],{"class":600},[378,1889,1890],{"class":384}," clientAssets.",[378,1892,1893],{"class":672},"merge",[378,1895,1896],{"class":384},"(\n",[378,1898,1899,1902,1904,1907,1909,1912,1915],{"class":380,"line":907},[378,1900,1901],{"class":600},"    ...",[378,1903,700],{"class":384},[378,1905,1906],{"class":600},"await",[378,1908,1758],{"class":391},[378,1910,1911],{"class":384},".",[378,1913,1914],{"class":672},"all",[378,1916,1896],{"class":384},[378,1918,1919],{"class":380,"line":1172},[378,1920,1921],{"class":384},"      router.currentRoute.value.matched\n",[378,1923,1924,1927,1930,1932,1935,1937,1939],{"class":380,"line":1217},[378,1925,1926],{"class":384},"        .",[378,1928,1929],{"class":672},"map",[378,1931,676],{"class":384},[378,1933,1934],{"class":679},"to",[378,1936,683],{"class":384},[378,1938,686],{"class":600},[378,1940,1941],{"class":384}," to.meta.assets)\n",[378,1943,1944,1946,1949],{"class":380,"line":1232},[378,1945,1926],{"class":384},[378,1947,1948],{"class":672},"filter",[378,1950,1951],{"class":384},"(Boolean)\n",[378,1953,1954,1956,1958,1960,1963,1965,1967,1970,1973,1976,1979,1982,1984,1987,1989,1991,1993,1995],{"class":380,"line":1237},[378,1955,1926],{"class":384},[378,1957,1929],{"class":672},[378,1959,676],{"class":384},[378,1961,1962],{"class":679},"fn",[378,1964,683],{"class":384},[378,1966,686],{"class":600},[378,1968,1969],{"class":384}," (fn ",[378,1971,1972],{"class":600},"as",[378,1974,1975],{"class":391}," any",[378,1977,1978],{"class":384},")().",[378,1980,1981],{"class":672},"then",[378,1983,676],{"class":384},[378,1985,1986],{"class":679},"m",[378,1988,1747],{"class":600},[378,1990,1975],{"class":391},[378,1992,683],{"class":384},[378,1994,686],{"class":600},[378,1996,1997],{"class":384}," m.default))\n",[378,1999,2000],{"class":380,"line":1242},[378,2001,2002],{"class":384},"    ))\n",[378,2004,2005],{"class":380,"line":1252},[378,2006,2007],{"class":384},"  );\n",[378,2009,2010],{"class":380,"line":1265},[378,2011,661],{"emptyLinePlaceholder":660},[378,2013,2014,2016,2019,2021,2024],{"class":380,"line":1277},[378,2015,806],{"class":600},[378,2017,2018],{"class":391}," head",[378,2020,812],{"class":600},[378,2022,2023],{"class":672}," createHead",[378,2025,1600],{"class":384},[378,2027,2028],{"class":380,"line":1288},[378,2029,661],{"emptyLinePlaceholder":660},[378,2031,2032,2035,2037],{"class":380,"line":1301},[378,2033,2034],{"class":384},"  head.",[378,2036,1861],{"class":672},[378,2038,2039],{"class":384},"({\n",[378,2041,2042],{"class":380,"line":1316},[378,2043,2044],{"class":384},"    link: [\n",[378,2046,2047,2050,2053,2055,2057,2060,2062,2064,2066,2068,2071,2074,2076,2078],{"class":380,"line":1331},[378,2048,2049],{"class":600},"      ...",[378,2051,2052],{"class":384},"assets.css.",[378,2054,1929],{"class":672},[378,2056,676],{"class":384},[378,2058,2059],{"class":679},"attrs",[378,2061,1747],{"class":600},[378,2063,1975],{"class":391},[378,2065,683],{"class":384},[378,2067,686],{"class":600},[378,2069,2070],{"class":384}," ({ rel: ",[378,2072,2073],{"class":398},"\"stylesheet\"",[378,2075,795],{"class":384},[378,2077,834],{"class":600},[378,2079,2080],{"class":384},"attrs })),\n",[378,2082,2083,2085,2088,2090,2092,2094,2096,2098,2100,2102,2104,2107,2109,2111],{"class":380,"line":1345},[378,2084,2049],{"class":600},[378,2086,2087],{"class":384},"assets.js.",[378,2089,1929],{"class":672},[378,2091,676],{"class":384},[378,2093,2059],{"class":679},[378,2095,1747],{"class":600},[378,2097,1975],{"class":391},[378,2099,683],{"class":384},[378,2101,686],{"class":600},[378,2103,2070],{"class":384},[378,2105,2106],{"class":398},"\"modulepreload\"",[378,2108,795],{"class":384},[378,2110,834],{"class":600},[378,2112,2080],{"class":384},[378,2114,2115],{"class":380,"line":1350},[378,2116,2117],{"class":384},"    ],\n",[378,2119,2120,2123,2125],{"class":380,"line":1355},[378,2121,2122],{"class":384},"    script: [{ type: ",[378,2124,399],{"class":398},[378,2126,2127],{"class":384},", src: clientAssets.entry }],\n",[378,2129,2130],{"class":380,"line":1365},[378,2131,2132],{"class":384},"  });\n",[378,2134,2135],{"class":380,"line":1378},[378,2136,661],{"emptyLinePlaceholder":660},[378,2138,2139,2141,2144,2146,2149,2152],{"class":380,"line":1390},[378,2140,806],{"class":600},[378,2142,2143],{"class":391}," renderedApp",[378,2145,812],{"class":600},[378,2147,2148],{"class":600}," await",[378,2150,2151],{"class":672}," renderToString",[378,2153,2154],{"class":384},"(app);\n",[378,2156,2157],{"class":380,"line":1395},[378,2158,661],{"emptyLinePlaceholder":660},[378,2160,2161,2163,2166,2168,2170,2173,2176,2179],{"class":380,"line":1400},[378,2162,806],{"class":600},[378,2164,2165],{"class":391}," html",[378,2167,812],{"class":600},[378,2169,2148],{"class":600},[378,2171,2172],{"class":672}," transformHtmlTemplate",[378,2174,2175],{"class":384},"(head, ",[378,2177,2178],{"class":672},"htmlTemplate",[378,2180,2181],{"class":384},"(renderedApp));\n",[378,2183,2184],{"class":380,"line":1412},[378,2185,661],{"emptyLinePlaceholder":660},[378,2187,2188,2190,2192,2195],{"class":380,"line":1424},[378,2189,901],{"class":600},[378,2191,1819],{"class":600},[378,2193,2194],{"class":672}," Response",[378,2196,2197],{"class":384},"(html, {\n",[378,2199,2200,2203,2206,2208,2211],{"class":380,"line":1429},[378,2201,2202],{"class":384},"    headers: { ",[378,2204,2205],{"class":398},"\"Content-Type\"",[378,2207,395],{"class":384},[378,2209,2210],{"class":398},"\"text/html;charset=utf-8\"",[378,2212,2213],{"class":384}," },\n",[378,2215,2216],{"class":380,"line":1434},[378,2217,2132],{"class":384},[378,2219,2220],{"class":380,"line":1446},[378,2221,563],{"class":384},[378,2223,2224],{"class":380,"line":1458},[378,2225,661],{"emptyLinePlaceholder":660},[378,2227,2228,2230,2233,2235,2238,2240,2243,2245,2247,2249],{"class":380,"line":1463},[378,2229,784],{"class":600},[378,2231,2232],{"class":672}," htmlTemplate",[378,2234,700],{"class":384},[378,2236,2237],{"class":679},"body",[378,2239,1747],{"class":600},[378,2241,2242],{"class":391}," string",[378,2244,1753],{"class":384},[378,2246,1747],{"class":600},[378,2248,2242],{"class":391},[378,2250,1157],{"class":384},[378,2252,2254,2256,2259],{"class":380,"line":2253},50,[378,2255,901],{"class":600},[378,2257,2258],{"class":778}," /* html */",[378,2260,2261],{"class":398}," `\u003C!DOCTYPE html>\n",[378,2263,2265],{"class":380,"line":2264},51,[378,2266,2267],{"class":398},"\u003Chtml lang=\"en\">\n",[378,2269,2271],{"class":380,"line":2270},52,[378,2272,2273],{"class":398},"\u003Chead>\n",[378,2275,2277],{"class":380,"line":2276},53,[378,2278,2279],{"class":398},"  \u003Cmeta charset=\"UTF-8\" />\n",[378,2281,2283],{"class":380,"line":2282},54,[378,2284,2285],{"class":398},"  \u003Cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n",[378,2287,2289],{"class":380,"line":2288},55,[378,2290,2291],{"class":398},"  \u003Ctitle>Vue Router Custom Framework\u003C/title>\n",[378,2293,2295],{"class":380,"line":2294},56,[378,2296,2297],{"class":398},"\u003C/head>\n",[378,2299,2301],{"class":380,"line":2300},57,[378,2302,2303],{"class":398},"\u003Cbody>\n",[378,2305,2307,2310,2312],{"class":380,"line":2306},58,[378,2308,2309],{"class":398},"  \u003Cdiv id=\"root\">${",[378,2311,2237],{"class":384},[378,2313,2314],{"class":398},"}\u003C/div>\n",[378,2316,2318],{"class":380,"line":2317},59,[378,2319,2320],{"class":398},"\u003C/body>\n",[378,2322,2324,2327],{"class":380,"line":2323},60,[378,2325,2326],{"class":398},"\u003C/html>`",[378,2328,613],{"class":384},[378,2330,2332],{"class":380,"line":2331},61,[378,2333,563],{"class":384},[378,2335,2337],{"class":380,"line":2336},62,[378,2338,661],{"emptyLinePlaceholder":660},[378,2340,2342,2344,2346],{"class":380,"line":2341},63,[378,2343,666],{"class":600},[378,2345,669],{"class":600},[378,2347,1157],{"class":384},[378,2349,2351],{"class":380,"line":2350},64,[378,2352,2353],{"class":384},"  fetch: handler,\n",[378,2355,2357],{"class":380,"line":2356},65,[378,2358,2359],{"class":384},"};\n",[368,2361,2364],{"className":1472,"code":2362,"filename":2363,"language":1475,"meta":5,"style":5},"import type { RouteRecordRaw } from \"vue-router\";\n\nexport const routes: RouteRecordRaw[] = [\n  {\n    path: \"/\",\n    name: \"app\",\n    component: () => import(\"./app.vue\"),\n    meta: {\n      assets: () => import(\"./app.vue?assets\"),\n    },\n    children: [\n      {\n        path: \"/\",\n        name: \"home\",\n        component: () => import(\"./pages/index.vue\"),\n        meta: {\n          assets: () => import(\"./pages/index.vue?assets\"),\n        },\n      },\n      {\n        path: \"/about\",\n        name: \"about\",\n        component: () => import(\"./pages/about.vue\"),\n        meta: {\n          assets: () => import(\"./pages/about.vue?assets\"),\n        },\n      },\n      {\n        path: \"/:catchAll(.*)\",\n        name: \"not-found\",\n        component: () => import(\"./pages/not-found.vue\"),\n        meta: {\n          assets: () => import(\"./pages/not-found.vue?assets\"),\n        },\n      },\n    ],\n  },\n];\n","app/routes.ts",[375,2365,2366,2382,2386,2409,2414,2423,2433,2454,2459,2477,2482,2487,2492,2501,2511,2529,2534,2552,2557,2562,2566,2574,2583,2600,2604,2621,2625,2629,2633,2642,2651,2668,2672,2689,2693,2697,2701,2705],{"__ignoreMap":5},[378,2367,2368,2370,2373,2376,2378,2380],{"class":380,"line":381},[378,2369,601],{"class":600},[378,2371,2372],{"class":600}," type",[378,2374,2375],{"class":384}," { RouteRecordRaw } ",[378,2377,607],{"class":600},[378,2379,952],{"class":398},[378,2381,613],{"class":384},[378,2383,2384],{"class":380,"line":388},[378,2385,661],{"emptyLinePlaceholder":660},[378,2387,2388,2390,2393,2396,2398,2401,2404,2406],{"class":380,"line":405},[378,2389,666],{"class":600},[378,2391,2392],{"class":600}," const",[378,2394,2395],{"class":391}," routes",[378,2397,1747],{"class":600},[378,2399,2400],{"class":672}," RouteRecordRaw",[378,2402,2403],{"class":384},"[] ",[378,2405,934],{"class":600},[378,2407,2408],{"class":384}," [\n",[378,2410,2411],{"class":380,"line":414},[378,2412,2413],{"class":384},"  {\n",[378,2415,2416,2419,2421],{"class":380,"line":427},[378,2417,2418],{"class":384},"    path: ",[378,2420,1031],{"class":398},[378,2422,402],{"class":384},[378,2424,2425,2428,2431],{"class":380,"line":440},[378,2426,2427],{"class":384},"    name: ",[378,2429,2430],{"class":398},"\"app\"",[378,2432,402],{"class":384},[378,2434,2435,2438,2441,2443,2446,2448,2451],{"class":380,"line":451},[378,2436,2437],{"class":672},"    component",[378,2439,2440],{"class":384},": () ",[378,2442,686],{"class":600},[378,2444,2445],{"class":600}," import",[378,2447,700],{"class":384},[378,2449,2450],{"class":398},"\"./app.vue\"",[378,2452,2453],{"class":384},"),\n",[378,2455,2456],{"class":380,"line":457},[378,2457,2458],{"class":384},"    meta: {\n",[378,2460,2461,2464,2466,2468,2470,2472,2475],{"class":380,"line":465},[378,2462,2463],{"class":672},"      assets",[378,2465,2440],{"class":384},[378,2467,686],{"class":600},[378,2469,2445],{"class":600},[378,2471,700],{"class":384},[378,2473,2474],{"class":398},"\"./app.vue?assets\"",[378,2476,2453],{"class":384},[378,2478,2479],{"class":380,"line":478},[378,2480,2481],{"class":384},"    },\n",[378,2483,2484],{"class":380,"line":491},[378,2485,2486],{"class":384},"    children: [\n",[378,2488,2489],{"class":380,"line":504},[378,2490,2491],{"class":384},"      {\n",[378,2493,2494,2497,2499],{"class":380,"line":517},[378,2495,2496],{"class":384},"        path: ",[378,2498,1031],{"class":398},[378,2500,402],{"class":384},[378,2502,2503,2506,2509],{"class":380,"line":530},[378,2504,2505],{"class":384},"        name: ",[378,2507,2508],{"class":398},"\"home\"",[378,2510,402],{"class":384},[378,2512,2513,2516,2518,2520,2522,2524,2527],{"class":380,"line":543},[378,2514,2515],{"class":672},"        component",[378,2517,2440],{"class":384},[378,2519,686],{"class":600},[378,2521,2445],{"class":600},[378,2523,700],{"class":384},[378,2525,2526],{"class":398},"\"./pages/index.vue\"",[378,2528,2453],{"class":384},[378,2530,2531],{"class":380,"line":554},[378,2532,2533],{"class":384},"        meta: {\n",[378,2535,2536,2539,2541,2543,2545,2547,2550],{"class":380,"line":560},[378,2537,2538],{"class":672},"          assets",[378,2540,2440],{"class":384},[378,2542,686],{"class":600},[378,2544,2445],{"class":600},[378,2546,700],{"class":384},[378,2548,2549],{"class":398},"\"./pages/index.vue?assets\"",[378,2551,2453],{"class":384},[378,2553,2554],{"class":380,"line":842},[378,2555,2556],{"class":384},"        },\n",[378,2558,2559],{"class":380,"line":868},[378,2560,2561],{"class":384},"      },\n",[378,2563,2564],{"class":380,"line":892},[378,2565,2491],{"class":384},[378,2567,2568,2570,2572],{"class":380,"line":898},[378,2569,2496],{"class":384},[378,2571,1076],{"class":398},[378,2573,402],{"class":384},[378,2575,2576,2578,2581],{"class":380,"line":907},[378,2577,2505],{"class":384},[378,2579,2580],{"class":398},"\"about\"",[378,2582,402],{"class":384},[378,2584,2585,2587,2589,2591,2593,2595,2598],{"class":380,"line":1172},[378,2586,2515],{"class":672},[378,2588,2440],{"class":384},[378,2590,686],{"class":600},[378,2592,2445],{"class":600},[378,2594,700],{"class":384},[378,2596,2597],{"class":398},"\"./pages/about.vue\"",[378,2599,2453],{"class":384},[378,2601,2602],{"class":380,"line":1217},[378,2603,2533],{"class":384},[378,2605,2606,2608,2610,2612,2614,2616,2619],{"class":380,"line":1232},[378,2607,2538],{"class":672},[378,2609,2440],{"class":384},[378,2611,686],{"class":600},[378,2613,2445],{"class":600},[378,2615,700],{"class":384},[378,2617,2618],{"class":398},"\"./pages/about.vue?assets\"",[378,2620,2453],{"class":384},[378,2622,2623],{"class":380,"line":1237},[378,2624,2556],{"class":384},[378,2626,2627],{"class":380,"line":1242},[378,2628,2561],{"class":384},[378,2630,2631],{"class":380,"line":1252},[378,2632,2491],{"class":384},[378,2634,2635,2637,2640],{"class":380,"line":1265},[378,2636,2496],{"class":384},[378,2638,2639],{"class":398},"\"/:catchAll(.*)\"",[378,2641,402],{"class":384},[378,2643,2644,2646,2649],{"class":380,"line":1277},[378,2645,2505],{"class":384},[378,2647,2648],{"class":398},"\"not-found\"",[378,2650,402],{"class":384},[378,2652,2653,2655,2657,2659,2661,2663,2666],{"class":380,"line":1288},[378,2654,2515],{"class":672},[378,2656,2440],{"class":384},[378,2658,686],{"class":600},[378,2660,2445],{"class":600},[378,2662,700],{"class":384},[378,2664,2665],{"class":398},"\"./pages/not-found.vue\"",[378,2667,2453],{"class":384},[378,2669,2670],{"class":380,"line":1301},[378,2671,2533],{"class":384},[378,2673,2674,2676,2678,2680,2682,2684,2687],{"class":380,"line":1316},[378,2675,2538],{"class":672},[378,2677,2440],{"class":384},[378,2679,686],{"class":600},[378,2681,2445],{"class":600},[378,2683,700],{"class":384},[378,2685,2686],{"class":398},"\"./pages/not-found.vue?assets\"",[378,2688,2453],{"class":384},[378,2690,2691],{"class":380,"line":1331},[378,2692,2556],{"class":384},[378,2694,2695],{"class":380,"line":1345},[378,2696,2561],{"class":384},[378,2698,2699],{"class":380,"line":1350},[378,2700,2117],{"class":384},[378,2702,2703],{"class":380,"line":1355},[378,2704,454],{"class":384},[378,2706,2707],{"class":380,"line":1365},[378,2708,2709],{"class":384},"];\n",[368,2711,2714],{"className":1472,"code":2712,"filename":2713,"language":1475,"meta":5,"style":5},"declare module \"*.vue\" {\n  import type { DefineComponent } from \"vue\";\n  const component: DefineComponent\u003C{}, {}, any>;\n  export default component;\n}\n","app/shims.d.ts",[375,2715,2716,2729,2745,2766,2776],{"__ignoreMap":5},[378,2717,2718,2721,2724,2727],{"class":380,"line":381},[378,2719,2720],{"class":600},"declare",[378,2722,2723],{"class":600}," module",[378,2725,2726],{"class":398}," \"*.vue\"",[378,2728,1157],{"class":384},[378,2730,2731,2734,2736,2739,2741,2743],{"class":380,"line":388},[378,2732,2733],{"class":600},"  import",[378,2735,2372],{"class":600},[378,2737,2738],{"class":384}," { DefineComponent } ",[378,2740,607],{"class":600},[378,2742,1489],{"class":398},[378,2744,613],{"class":384},[378,2746,2747,2749,2752,2754,2757,2760,2763],{"class":380,"line":405},[378,2748,806],{"class":600},[378,2750,2751],{"class":391}," component",[378,2753,1747],{"class":600},[378,2755,2756],{"class":672}," DefineComponent",[378,2758,2759],{"class":384},"\u003C{}, {}, ",[378,2761,2762],{"class":391},"any",[378,2764,2765],{"class":384},">;\n",[378,2767,2768,2771,2773],{"class":380,"line":414},[378,2769,2770],{"class":600},"  export",[378,2772,669],{"class":600},[378,2774,2775],{"class":384}," component;\n",[378,2777,2778],{"class":380,"line":427},[378,2779,563],{"class":384},[368,2781,2786],{"className":2782,"code":2783,"filename":2784,"language":2785,"meta":5,"style":5},"language-css shiki shiki-themes github-light github-dark github-dark","* {\n  box-sizing: border-box;\n}\n\nbody {\n  margin: 0;\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif;\n  background: #f5f5f5;\n  color: #333;\n}\n\nmain {\n  max-width: 800px;\n  margin: 0 auto;\n  padding: 2rem;\n}\n\nh1 {\n  font-size: 2.5rem;\n  margin-bottom: 0.5rem;\n}\n\n.card {\n  background: white;\n  border-radius: 8px;\n  padding: 2rem;\n  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n  margin: 2rem 0;\n}\n\nbutton {\n  background: rgb(83, 91, 242);\n  color: white;\n  border: none;\n  padding: 0.5rem 1rem;\n  border-radius: 4px;\n  font-size: 1rem;\n  cursor: pointer;\n}\n\nbutton:hover {\n  background: #535bf2;\n}\n\n.subtitle {\n  color: #666;\n  font-size: 1.1rem;\n  margin-bottom: 2rem;\n}\n","app/styles.css","css",[375,2787,2788,2795,2807,2811,2815,2821,2831,2854,2865,2875,2879,2883,2889,2901,2913,2925,2929,2933,2940,2954,2968,2972,2976,2983,2993,3007,3019,3057,3072,3076,3080,3087,3113,3123,3134,3150,3163,3175,3187,3191,3195,3203,3214,3218,3222,3229,3239,3252,3264],{"__ignoreMap":5},[378,2789,2790,2793],{"class":380,"line":381},[378,2791,2792],{"class":924},"*",[378,2794,1157],{"class":384},[378,2796,2797,2800,2802,2805],{"class":380,"line":388},[378,2798,2799],{"class":391},"  box-sizing",[378,2801,395],{"class":384},[378,2803,2804],{"class":391},"border-box",[378,2806,613],{"class":384},[378,2808,2809],{"class":380,"line":405},[378,2810,563],{"class":384},[378,2812,2813],{"class":380,"line":414},[378,2814,661],{"emptyLinePlaceholder":660},[378,2816,2817,2819],{"class":380,"line":427},[378,2818,2237],{"class":924},[378,2820,1157],{"class":384},[378,2822,2823,2825,2827,2829],{"class":380,"line":440},[378,2824,1268],{"class":391},[378,2826,395],{"class":384},[378,2828,1180],{"class":391},[378,2830,613],{"class":384},[378,2832,2833,2836,2838,2841,2844,2847,2849,2852],{"class":380,"line":451},[378,2834,2835],{"class":391},"  font-family",[378,2837,395],{"class":384},[378,2839,2840],{"class":391},"-apple-system",[378,2842,2843],{"class":384},", BlinkMacSystemFont, ",[378,2845,2846],{"class":398},"\"Segoe UI\"",[378,2848,795],{"class":384},[378,2850,2851],{"class":391},"sans-serif",[378,2853,613],{"class":384},[378,2855,2856,2858,2860,2863],{"class":380,"line":457},[378,2857,1162],{"class":391},[378,2859,395],{"class":384},[378,2861,2862],{"class":391},"#f5f5f5",[378,2864,613],{"class":384},[378,2866,2867,2869,2871,2873],{"class":380,"line":465},[378,2868,1368],{"class":391},[378,2870,395],{"class":384},[378,2872,1419],{"class":391},[378,2874,613],{"class":384},[378,2876,2877],{"class":380,"line":478},[378,2878,563],{"class":384},[378,2880,2881],{"class":380,"line":491},[378,2882,661],{"emptyLinePlaceholder":660},[378,2884,2885,2887],{"class":380,"line":504},[378,2886,1632],{"class":924},[378,2888,1157],{"class":384},[378,2890,2891,2893,2895,2897,2899],{"class":380,"line":517},[378,2892,1319],{"class":391},[378,2894,395],{"class":384},[378,2896,1324],{"class":391},[378,2898,1186],{"class":600},[378,2900,613],{"class":384},[378,2902,2903,2905,2907,2909,2911],{"class":380,"line":530},[378,2904,1268],{"class":391},[378,2906,395],{"class":384},[378,2908,1180],{"class":391},[378,2910,1340],{"class":391},[378,2912,613],{"class":384},[378,2914,2915,2917,2919,2921,2923],{"class":380,"line":543},[378,2916,1220],{"class":391},[378,2918,395],{"class":384},[378,2920,1309],{"class":391},[378,2922,1227],{"class":600},[378,2924,613],{"class":384},[378,2926,2927],{"class":380,"line":554},[378,2928,563],{"class":384},[378,2930,2931],{"class":380,"line":560},[378,2932,661],{"emptyLinePlaceholder":660},[378,2934,2935,2938],{"class":380,"line":842},[378,2936,2937],{"class":924},"h1",[378,2939,1157],{"class":384},[378,2941,2942,2945,2947,2950,2952],{"class":380,"line":868},[378,2943,2944],{"class":391},"  font-size",[378,2946,395],{"class":384},[378,2948,2949],{"class":391},"2.5",[378,2951,1227],{"class":600},[378,2953,613],{"class":384},[378,2955,2956,2959,2961,2964,2966],{"class":380,"line":892},[378,2957,2958],{"class":391},"  margin-bottom",[378,2960,395],{"class":384},[378,2962,2963],{"class":391},"0.5",[378,2965,1227],{"class":600},[378,2967,613],{"class":384},[378,2969,2970],{"class":380,"line":898},[378,2971,563],{"class":384},[378,2973,2974],{"class":380,"line":907},[378,2975,661],{"emptyLinePlaceholder":660},[378,2977,2978,2981],{"class":380,"line":1172},[378,2979,2980],{"class":672},".card",[378,2982,1157],{"class":384},[378,2984,2985,2987,2989,2991],{"class":380,"line":1217},[378,2986,1162],{"class":391},[378,2988,395],{"class":384},[378,2990,1167],{"class":391},[378,2992,613],{"class":384},[378,2994,2995,2998,3000,3003,3005],{"class":380,"line":1232},[378,2996,2997],{"class":391},"  border-radius",[378,2999,395],{"class":384},[378,3001,3002],{"class":391},"8",[378,3004,1186],{"class":600},[378,3006,613],{"class":384},[378,3008,3009,3011,3013,3015,3017],{"class":380,"line":1237},[378,3010,1220],{"class":391},[378,3012,395],{"class":384},[378,3014,1309],{"class":391},[378,3016,1227],{"class":600},[378,3018,613],{"class":384},[378,3020,3021,3023,3025,3027,3030,3032,3035,3037,3039,3041,3043,3045,3047,3049,3051,3053,3055],{"class":380,"line":1242},[378,3022,1175],{"class":391},[378,3024,395],{"class":384},[378,3026,1180],{"class":391},[378,3028,3029],{"class":391}," 2",[378,3031,1186],{"class":600},[378,3033,3034],{"class":391}," 4",[378,3036,1186],{"class":600},[378,3038,1194],{"class":391},[378,3040,700],{"class":384},[378,3042,1180],{"class":391},[378,3044,795],{"class":384},[378,3046,1180],{"class":391},[378,3048,795],{"class":384},[378,3050,1180],{"class":391},[378,3052,795],{"class":384},[378,3054,1211],{"class":391},[378,3056,1214],{"class":384},[378,3058,3059,3061,3063,3065,3067,3070],{"class":380,"line":1252},[378,3060,1268],{"class":391},[378,3062,395],{"class":384},[378,3064,1309],{"class":391},[378,3066,1227],{"class":600},[378,3068,3069],{"class":391}," 0",[378,3071,613],{"class":384},[378,3073,3074],{"class":380,"line":1265},[378,3075,563],{"class":384},[378,3077,3078],{"class":380,"line":1277},[378,3079,661],{"emptyLinePlaceholder":660},[378,3081,3082,3085],{"class":380,"line":1288},[378,3083,3084],{"class":924},"button",[378,3086,1157],{"class":384},[378,3088,3089,3091,3093,3096,3098,3101,3103,3106,3108,3111],{"class":380,"line":1301},[378,3090,1162],{"class":391},[378,3092,395],{"class":384},[378,3094,3095],{"class":391},"rgb",[378,3097,700],{"class":384},[378,3099,3100],{"class":391},"83",[378,3102,795],{"class":384},[378,3104,3105],{"class":391},"91",[378,3107,795],{"class":384},[378,3109,3110],{"class":391},"242",[378,3112,1214],{"class":384},[378,3114,3115,3117,3119,3121],{"class":380,"line":1316},[378,3116,1368],{"class":391},[378,3118,395],{"class":384},[378,3120,1167],{"class":391},[378,3122,613],{"class":384},[378,3124,3125,3128,3130,3132],{"class":380,"line":1331},[378,3126,3127],{"class":391},"  border",[378,3129,395],{"class":384},[378,3131,1260],{"class":391},[378,3133,613],{"class":384},[378,3135,3136,3138,3140,3142,3144,3146,3148],{"class":380,"line":1345},[378,3137,1220],{"class":391},[378,3139,395],{"class":384},[378,3141,2963],{"class":391},[378,3143,1227],{"class":600},[378,3145,1183],{"class":391},[378,3147,1227],{"class":600},[378,3149,613],{"class":384},[378,3151,3152,3154,3156,3159,3161],{"class":380,"line":1350},[378,3153,2997],{"class":391},[378,3155,395],{"class":384},[378,3157,3158],{"class":391},"4",[378,3160,1186],{"class":600},[378,3162,613],{"class":384},[378,3164,3165,3167,3169,3171,3173],{"class":380,"line":1355},[378,3166,2944],{"class":391},[378,3168,395],{"class":384},[378,3170,857],{"class":391},[378,3172,1227],{"class":600},[378,3174,613],{"class":384},[378,3176,3177,3180,3182,3185],{"class":380,"line":1365},[378,3178,3179],{"class":391},"  cursor",[378,3181,395],{"class":384},[378,3183,3184],{"class":391},"pointer",[378,3186,613],{"class":384},[378,3188,3189],{"class":380,"line":1378},[378,3190,563],{"class":384},[378,3192,3193],{"class":380,"line":1390},[378,3194,661],{"emptyLinePlaceholder":660},[378,3196,3197,3199,3201],{"class":380,"line":1395},[378,3198,3084],{"class":924},[378,3200,1407],{"class":672},[378,3202,1157],{"class":384},[378,3204,3205,3207,3209,3212],{"class":380,"line":1400},[378,3206,1162],{"class":391},[378,3208,395],{"class":384},[378,3210,3211],{"class":391},"#535bf2",[378,3213,613],{"class":384},[378,3215,3216],{"class":380,"line":1412},[378,3217,563],{"class":384},[378,3219,3220],{"class":380,"line":1424},[378,3221,661],{"emptyLinePlaceholder":660},[378,3223,3224,3227],{"class":380,"line":1429},[378,3225,3226],{"class":672},".subtitle",[378,3228,1157],{"class":384},[378,3230,3231,3233,3235,3237],{"class":380,"line":1434},[378,3232,1368],{"class":391},[378,3234,395],{"class":384},[378,3236,1373],{"class":391},[378,3238,613],{"class":384},[378,3240,3241,3243,3245,3248,3250],{"class":380,"line":1446},[378,3242,2944],{"class":391},[378,3244,395],{"class":384},[378,3246,3247],{"class":391},"1.1",[378,3249,1227],{"class":600},[378,3251,613],{"class":384},[378,3253,3254,3256,3258,3260,3262],{"class":380,"line":1458},[378,3255,2958],{"class":391},[378,3257,395],{"class":384},[378,3259,1309],{"class":391},[378,3261,1227],{"class":600},[378,3263,613],{"class":384},[378,3265,3266],{"class":380,"line":1463},[378,3267,563],{"class":384},[368,3269,3272],{"className":912,"code":3270,"filename":3271,"language":703,"meta":5,"style":5},"\u003Ctemplate>\n  \u003Cmain>\n    \u003Ch1>About\u003C/h1>\n    \u003Cdiv class=\"card\">\n      \u003Cp>This is a simple Vue Router demo app built with Vite Plugin Fullstack.\u003C/p>\n      \u003Cp>It demonstrates basic routing and server-side rendering.\u003C/p>\n    \u003C/div>\n  \u003C/main>\n\u003C/template>\n","app/pages/about.vue",[375,3273,3274,3282,3290,3302,3319,3333,3346,3354,3362],{"__ignoreMap":5},[378,3275,3276,3278,3280],{"class":380,"line":381},[378,3277,921],{"class":384},[378,3279,983],{"class":924},[378,3281,940],{"class":384},[378,3283,3284,3286,3288],{"class":380,"line":388},[378,3285,990],{"class":384},[378,3287,1632],{"class":924},[378,3289,940],{"class":384},[378,3291,3292,3294,3296,3298,3300],{"class":380,"line":405},[378,3293,1000],{"class":384},[378,3295,2937],{"class":924},[378,3297,1086],{"class":384},[378,3299,2937],{"class":924},[378,3301,940],{"class":384},[378,3303,3304,3306,3309,3312,3314,3317],{"class":380,"line":414},[378,3305,1000],{"class":384},[378,3307,3308],{"class":924},"div",[378,3310,3311],{"class":672}," class",[378,3313,934],{"class":384},[378,3315,3316],{"class":398},"\"card\"",[378,3318,940],{"class":384},[378,3320,3321,3323,3326,3329,3331],{"class":380,"line":427},[378,3322,1010],{"class":384},[378,3324,3325],{"class":924},"p",[378,3327,3328],{"class":384},">This is a simple Vue Router demo app built with Vite Plugin Fullstack.\u003C/",[378,3330,3325],{"class":924},[378,3332,940],{"class":384},[378,3334,3335,3337,3339,3342,3344],{"class":380,"line":440},[378,3336,1010],{"class":384},[378,3338,3325],{"class":924},[378,3340,3341],{"class":384},">It demonstrates basic routing and server-side rendering.\u003C/",[378,3343,3325],{"class":924},[378,3345,940],{"class":384},[378,3347,3348,3350,3352],{"class":380,"line":451},[378,3349,1103],{"class":384},[378,3351,3308],{"class":924},[378,3353,940],{"class":384},[378,3355,3356,3358,3360],{"class":380,"line":457},[378,3357,1112],{"class":384},[378,3359,1632],{"class":924},[378,3361,940],{"class":384},[378,3363,3364,3366,3368],{"class":380,"line":465},[378,3365,968],{"class":384},[378,3367,983],{"class":924},[378,3369,940],{"class":384},[368,3371,3374],{"className":912,"code":3372,"filename":3373,"language":703,"meta":5,"style":5},"\u003Cscript setup lang=\"ts\">\nimport { ref } from \"vue\";\n\nconst count = ref(0);\n\nfunction increment() {\n  count.value++;\n}\n\u003C/script>\n\n\u003Ctemplate>\n  \u003Cmain>\n    \u003Cdiv class=\"hero\">\n      \u003Ch1>Vue Router Custom Framework\u003C/h1>\n      \u003Cp class=\"subtitle\">A simple demo app with Vite\u003C/p>\n    \u003C/div>\n\n    \u003Cdiv class=\"card counter-card\">\n      \u003Cp>Count: {{ count }}\u003C/p>\n      \u003Cbutton @click=\"increment\">Increment\u003C/button>\n    \u003C/div>\n  \u003C/main>\n\u003C/template>\n\n\u003Cstyle scoped>\n.hero {\n  text-align: center;\n  margin-bottom: 2rem;\n}\n\n.hero h1 {\n  color: rgb(100, 108, 255);\n}\n\n.counter-card {\n  text-align: center;\n}\n\n.counter-card h2 {\n  color: #646cff;\n  margin-bottom: 1rem;\n}\n\n.counter-card p {\n  font-size: 1.5rem;\n  font-weight: bold;\n  margin: 1rem 0;\n}\n\u003C/style>\n","app/pages/index.vue",[375,3375,3376,3392,3405,3409,3428,3432,3441,3451,3455,3463,3467,3475,3483,3498,3511,3531,3539,3543,3558,3571,3592,3600,3608,3616,3620,3630,3637,3649,3661,3665,3669,3678,3703,3707,3711,3718,3728,3732,3736,3745,3755,3767,3771,3775,3784,3797,3809,3823,3827],{"__ignoreMap":5},[378,3377,3378,3380,3382,3384,3386,3388,3390],{"class":380,"line":381},[378,3379,921],{"class":384},[378,3381,925],{"class":924},[378,3383,928],{"class":672},[378,3385,931],{"class":672},[378,3387,934],{"class":384},[378,3389,937],{"class":398},[378,3391,940],{"class":384},[378,3393,3394,3396,3399,3401,3403],{"class":380,"line":388},[378,3395,601],{"class":600},[378,3397,3398],{"class":384}," { ref } ",[378,3400,607],{"class":600},[378,3402,1489],{"class":398},[378,3404,613],{"class":384},[378,3406,3407],{"class":380,"line":405},[378,3408,661],{"emptyLinePlaceholder":660},[378,3410,3411,3414,3417,3419,3422,3424,3426],{"class":380,"line":414},[378,3412,3413],{"class":600},"const",[378,3415,3416],{"class":391}," count",[378,3418,812],{"class":600},[378,3420,3421],{"class":672}," ref",[378,3423,700],{"class":384},[378,3425,1180],{"class":391},[378,3427,1214],{"class":384},[378,3429,3430],{"class":380,"line":427},[378,3431,661],{"emptyLinePlaceholder":660},[378,3433,3434,3436,3439],{"class":380,"line":440},[378,3435,784],{"class":600},[378,3437,3438],{"class":672}," increment",[378,3440,1535],{"class":384},[378,3442,3443,3446,3449],{"class":380,"line":451},[378,3444,3445],{"class":384},"  count.value",[378,3447,3448],{"class":600},"++",[378,3450,613],{"class":384},[378,3452,3453],{"class":380,"line":457},[378,3454,563],{"class":384},[378,3456,3457,3459,3461],{"class":380,"line":465},[378,3458,968],{"class":384},[378,3460,925],{"class":924},[378,3462,940],{"class":384},[378,3464,3465],{"class":380,"line":478},[378,3466,661],{"emptyLinePlaceholder":660},[378,3468,3469,3471,3473],{"class":380,"line":491},[378,3470,921],{"class":384},[378,3472,983],{"class":924},[378,3474,940],{"class":384},[378,3476,3477,3479,3481],{"class":380,"line":504},[378,3478,990],{"class":384},[378,3480,1632],{"class":924},[378,3482,940],{"class":384},[378,3484,3485,3487,3489,3491,3493,3496],{"class":380,"line":517},[378,3486,1000],{"class":384},[378,3488,3308],{"class":924},[378,3490,3311],{"class":672},[378,3492,934],{"class":384},[378,3494,3495],{"class":398},"\"hero\"",[378,3497,940],{"class":384},[378,3499,3500,3502,3504,3507,3509],{"class":380,"line":530},[378,3501,1010],{"class":384},[378,3503,2937],{"class":924},[378,3505,3506],{"class":384},">Vue Router Custom Framework\u003C/",[378,3508,2937],{"class":924},[378,3510,940],{"class":384},[378,3512,3513,3515,3517,3519,3521,3524,3527,3529],{"class":380,"line":543},[378,3514,1010],{"class":384},[378,3516,3325],{"class":924},[378,3518,3311],{"class":672},[378,3520,934],{"class":384},[378,3522,3523],{"class":398},"\"subtitle\"",[378,3525,3526],{"class":384},">A simple demo app with Vite\u003C/",[378,3528,3325],{"class":924},[378,3530,940],{"class":384},[378,3532,3533,3535,3537],{"class":380,"line":554},[378,3534,1103],{"class":384},[378,3536,3308],{"class":924},[378,3538,940],{"class":384},[378,3540,3541],{"class":380,"line":560},[378,3542,661],{"emptyLinePlaceholder":660},[378,3544,3545,3547,3549,3551,3553,3556],{"class":380,"line":842},[378,3546,1000],{"class":384},[378,3548,3308],{"class":924},[378,3550,3311],{"class":672},[378,3552,934],{"class":384},[378,3554,3555],{"class":398},"\"card counter-card\"",[378,3557,940],{"class":384},[378,3559,3560,3562,3564,3567,3569],{"class":380,"line":868},[378,3561,1010],{"class":384},[378,3563,3325],{"class":924},[378,3565,3566],{"class":384},">Count: {{ count }}\u003C/",[378,3568,3325],{"class":924},[378,3570,940],{"class":384},[378,3572,3573,3575,3577,3580,3582,3585,3588,3590],{"class":380,"line":892},[378,3574,1010],{"class":384},[378,3576,3084],{"class":924},[378,3578,3579],{"class":672}," @click",[378,3581,934],{"class":384},[378,3583,3584],{"class":398},"\"increment\"",[378,3586,3587],{"class":384},">Increment\u003C/",[378,3589,3084],{"class":924},[378,3591,940],{"class":384},[378,3593,3594,3596,3598],{"class":380,"line":898},[378,3595,1103],{"class":384},[378,3597,3308],{"class":924},[378,3599,940],{"class":384},[378,3601,3602,3604,3606],{"class":380,"line":907},[378,3603,1112],{"class":384},[378,3605,1632],{"class":924},[378,3607,940],{"class":384},[378,3609,3610,3612,3614],{"class":380,"line":1172},[378,3611,968],{"class":384},[378,3613,983],{"class":924},[378,3615,940],{"class":384},[378,3617,3618],{"class":380,"line":1217},[378,3619,661],{"emptyLinePlaceholder":660},[378,3621,3622,3624,3626,3628],{"class":380,"line":1232},[378,3623,921],{"class":384},[378,3625,1145],{"class":924},[378,3627,1148],{"class":672},[378,3629,940],{"class":384},[378,3631,3632,3635],{"class":380,"line":1237},[378,3633,3634],{"class":672},".hero",[378,3636,1157],{"class":384},[378,3638,3639,3642,3644,3647],{"class":380,"line":1242},[378,3640,3641],{"class":391},"  text-align",[378,3643,395],{"class":384},[378,3645,3646],{"class":391},"center",[378,3648,613],{"class":384},[378,3650,3651,3653,3655,3657,3659],{"class":380,"line":1252},[378,3652,2958],{"class":391},[378,3654,395],{"class":384},[378,3656,1309],{"class":391},[378,3658,1227],{"class":600},[378,3660,613],{"class":384},[378,3662,3663],{"class":380,"line":1265},[378,3664,563],{"class":384},[378,3666,3667],{"class":380,"line":1277},[378,3668,661],{"emptyLinePlaceholder":660},[378,3670,3671,3673,3676],{"class":380,"line":1288},[378,3672,3634],{"class":672},[378,3674,3675],{"class":924}," h1",[378,3677,1157],{"class":384},[378,3679,3680,3682,3684,3686,3688,3691,3693,3696,3698,3701],{"class":380,"line":1301},[378,3681,1368],{"class":391},[378,3683,395],{"class":384},[378,3685,3095],{"class":391},[378,3687,700],{"class":384},[378,3689,3690],{"class":391},"100",[378,3692,795],{"class":384},[378,3694,3695],{"class":391},"108",[378,3697,795],{"class":384},[378,3699,3700],{"class":391},"255",[378,3702,1214],{"class":384},[378,3704,3705],{"class":380,"line":1316},[378,3706,563],{"class":384},[378,3708,3709],{"class":380,"line":1331},[378,3710,661],{"emptyLinePlaceholder":660},[378,3712,3713,3716],{"class":380,"line":1345},[378,3714,3715],{"class":672},".counter-card",[378,3717,1157],{"class":384},[378,3719,3720,3722,3724,3726],{"class":380,"line":1350},[378,3721,3641],{"class":391},[378,3723,395],{"class":384},[378,3725,3646],{"class":391},[378,3727,613],{"class":384},[378,3729,3730],{"class":380,"line":1355},[378,3731,563],{"class":384},[378,3733,3734],{"class":380,"line":1365},[378,3735,661],{"emptyLinePlaceholder":660},[378,3737,3738,3740,3743],{"class":380,"line":1378},[378,3739,3715],{"class":672},[378,3741,3742],{"class":924}," h2",[378,3744,1157],{"class":384},[378,3746,3747,3749,3751,3753],{"class":380,"line":1390},[378,3748,1368],{"class":391},[378,3750,395],{"class":384},[378,3752,1453],{"class":391},[378,3754,613],{"class":384},[378,3756,3757,3759,3761,3763,3765],{"class":380,"line":1395},[378,3758,2958],{"class":391},[378,3760,395],{"class":384},[378,3762,857],{"class":391},[378,3764,1227],{"class":600},[378,3766,613],{"class":384},[378,3768,3769],{"class":380,"line":1400},[378,3770,563],{"class":384},[378,3772,3773],{"class":380,"line":1412},[378,3774,661],{"emptyLinePlaceholder":660},[378,3776,3777,3779,3782],{"class":380,"line":1424},[378,3778,3715],{"class":672},[378,3780,3781],{"class":924}," p",[378,3783,1157],{"class":384},[378,3785,3786,3788,3790,3793,3795],{"class":380,"line":1429},[378,3787,2944],{"class":391},[378,3789,395],{"class":384},[378,3791,3792],{"class":391},"1.5",[378,3794,1227],{"class":600},[378,3796,613],{"class":384},[378,3798,3799,3802,3804,3807],{"class":380,"line":1434},[378,3800,3801],{"class":391},"  font-weight",[378,3803,395],{"class":384},[378,3805,3806],{"class":391},"bold",[378,3808,613],{"class":384},[378,3810,3811,3813,3815,3817,3819,3821],{"class":380,"line":1446},[378,3812,1268],{"class":391},[378,3814,395],{"class":384},[378,3816,857],{"class":391},[378,3818,1227],{"class":600},[378,3820,3069],{"class":391},[378,3822,613],{"class":384},[378,3824,3825],{"class":380,"line":1458},[378,3826,563],{"class":384},[378,3828,3829,3831,3833],{"class":380,"line":1463},[378,3830,968],{"class":384},[378,3832,1145],{"class":924},[378,3834,940],{"class":384},[368,3836,3839],{"className":912,"code":3837,"filename":3838,"language":703,"meta":5,"style":5},"\u003Ctemplate>\n  \u003Cmain>\n    \u003Ch1>Not Found 404\u003C/h1>\n  \u003C/main>\n\u003C/template>\n","app/pages/not-found.vue",[375,3840,3841,3849,3857,3870,3878],{"__ignoreMap":5},[378,3842,3843,3845,3847],{"class":380,"line":381},[378,3844,921],{"class":384},[378,3846,983],{"class":924},[378,3848,940],{"class":384},[378,3850,3851,3853,3855],{"class":380,"line":388},[378,3852,990],{"class":384},[378,3854,1632],{"class":924},[378,3856,940],{"class":384},[378,3858,3859,3861,3863,3866,3868],{"class":380,"line":405},[378,3860,1000],{"class":384},[378,3862,2937],{"class":924},[378,3864,3865],{"class":384},">Not Found 404\u003C/",[378,3867,2937],{"class":924},[378,3869,940],{"class":384},[378,3871,3872,3874,3876],{"class":380,"line":414},[378,3873,1112],{"class":384},[378,3875,1632],{"class":924},[378,3877,940],{"class":384},[378,3879,3880,3882,3884],{"class":380,"line":427},[378,3881,968],{"class":384},[378,3883,983],{"class":924},[378,3885,940],{"class":384},[3325,3887,3888],{},"Set up server-side rendering (SSR) with Vue, Vue Router, Vite, and Nitro. This setup enables per-route code splitting, head management with unhead, and client hydration.",[3890,3891,3893],"h2",{"id":3892},"overview","Overview",[3895,3896,3897,3901,3904,3907,3910],"steps",{"level":3158},[3898,3899,3900],"h4",{},"Add the Nitro Vite plugin to your Vite config",[3898,3902,3903],{},"Define routes with lazy-loaded components",[3898,3905,3906],{},"Create a server entry that renders your app with router support",[3898,3908,3909],{},"Create a client entry that hydrates and takes over routing",[3898,3911,3912],{},"Create page components",[3890,3914,3916],{"id":3915},"_1-configure-vite","1. Configure Vite",[3325,3918,3919,3920,3923,3924,3927],{},"Add the Nitro and Vue plugins to your Vite config. Define both ",[375,3921,3922],{},"client"," and ",[375,3925,3926],{},"ssr"," environments:",[368,3929,3930],{"className":590,"code":591,"filename":592,"language":593,"meta":5,"style":5},[375,3931,3932,3944,3956,3968,3980,3984,4002,4032,4036,4044,4052,4056,4060,4064,4068,4084,4094,4112,4130,4148,4152,4158],{"__ignoreMap":5},[378,3933,3934,3936,3938,3940,3942],{"class":380,"line":381},[378,3935,601],{"class":600},[378,3937,604],{"class":384},[378,3939,607],{"class":600},[378,3941,610],{"class":398},[378,3943,613],{"class":384},[378,3945,3946,3948,3950,3952,3954],{"class":380,"line":388},[378,3947,601],{"class":600},[378,3949,620],{"class":384},[378,3951,607],{"class":600},[378,3953,625],{"class":398},[378,3955,613],{"class":384},[378,3957,3958,3960,3962,3964,3966],{"class":380,"line":405},[378,3959,601],{"class":600},[378,3961,634],{"class":384},[378,3963,607],{"class":600},[378,3965,639],{"class":398},[378,3967,613],{"class":384},[378,3969,3970,3972,3974,3976,3978],{"class":380,"line":414},[378,3971,601],{"class":600},[378,3973,648],{"class":384},[378,3975,607],{"class":600},[378,3977,653],{"class":398},[378,3979,613],{"class":384},[378,3981,3982],{"class":380,"line":427},[378,3983,661],{"emptyLinePlaceholder":660},[378,3985,3986,3988,3990,3992,3994,3996,3998,4000],{"class":380,"line":440},[378,3987,666],{"class":600},[378,3989,669],{"class":600},[378,3991,673],{"class":672},[378,3993,676],{"class":384},[378,3995,680],{"class":679},[378,3997,683],{"class":384},[378,3999,686],{"class":600},[378,4001,689],{"class":384},[378,4003,4004,4006,4008,4010,4012,4014,4016,4018,4020,4022,4024,4026,4028,4030],{"class":380,"line":451},[378,4005,694],{"class":384},[378,4007,697],{"class":672},[378,4009,700],{"class":384},[378,4011,703],{"class":672},[378,4013,706],{"class":384},[378,4015,709],{"class":398},[378,4017,713],{"class":712},[378,4019,717],{"class":716},[378,4021,226],{"class":398},[378,4023,722],{"class":384},[378,4025,725],{"class":672},[378,4027,728],{"class":384},[378,4029,731],{"class":672},[378,4031,734],{"class":384},[378,4033,4034],{"class":380,"line":457},[378,4035,739],{"class":384},[378,4037,4038,4040,4042],{"class":380,"line":465},[378,4039,744],{"class":384},[378,4041,747],{"class":398},[378,4043,750],{"class":384},[378,4045,4046,4048,4050],{"class":380,"line":478},[378,4047,755],{"class":384},[378,4049,758],{"class":398},[378,4051,750],{"class":384},[378,4053,4054],{"class":380,"line":491},[378,4055,454],{"class":384},[378,4057,4058],{"class":380,"line":504},[378,4059,769],{"class":384},[378,4061,4062],{"class":380,"line":517},[378,4063,661],{"emptyLinePlaceholder":660},[378,4065,4066],{"class":380,"line":530},[378,4067,779],{"class":778},[378,4069,4070,4072,4074,4076,4078,4080,4082],{"class":380,"line":543},[378,4071,784],{"class":600},[378,4073,787],{"class":672},[378,4075,700],{"class":384},[378,4077,792],{"class":679},[378,4079,795],{"class":384},[378,4081,798],{"class":679},[378,4083,801],{"class":384},[378,4085,4086,4088,4090,4092],{"class":380,"line":554},[378,4087,806],{"class":600},[378,4089,809],{"class":391},[378,4091,812],{"class":600},[378,4093,815],{"class":384},[378,4095,4096,4098,4100,4102,4104,4106,4108,4110],{"class":380,"line":560},[378,4097,820],{"class":384},[378,4099,823],{"class":672},[378,4101,812],{"class":600},[378,4103,828],{"class":600},[378,4105,831],{"class":384},[378,4107,834],{"class":600},[378,4109,837],{"class":679},[378,4111,801],{"class":384},[378,4113,4114,4116,4118,4120,4122,4124,4126,4128],{"class":380,"line":842},[378,4115,845],{"class":600},[378,4117,848],{"class":384},[378,4119,851],{"class":672},[378,4121,854],{"class":384},[378,4123,857],{"class":391},[378,4125,860],{"class":384},[378,4127,863],{"class":600},[378,4129,613],{"class":384},[378,4131,4132,4134,4136,4138,4140,4142,4144,4146],{"class":380,"line":868},[378,4133,871],{"class":600},[378,4135,874],{"class":384},[378,4137,877],{"class":672},[378,4139,700],{"class":384},[378,4141,882],{"class":391},[378,4143,795],{"class":384},[378,4145,834],{"class":600},[378,4147,889],{"class":384},[378,4149,4150],{"class":380,"line":892},[378,4151,895],{"class":384},[378,4153,4154,4156],{"class":380,"line":898},[378,4155,901],{"class":600},[378,4157,904],{"class":384},[378,4159,4160],{"class":380,"line":907},[378,4161,563],{"class":384},[3325,4163,4164,4165,4167,4168,4171],{},"The ",[375,4166,697],{}," helper prevents the Vue plugin from processing asset imports (files with ",[375,4169,4170],{},"?assets"," query parameter).",[3890,4173,4175],{"id":4174},"_2-define-routes","2. Define Routes",[3325,4177,4178],{},"Create route definitions with lazy-loaded components and asset metadata:",[368,4180,4181],{"className":1472,"code":2362,"filename":2363,"language":1475,"meta":5,"style":5},[375,4182,4183,4197,4201,4219,4223,4231,4239,4255,4259,4275,4279,4283,4287,4295,4303,4319,4323,4339,4343,4347,4351,4359,4367,4383,4387,4403,4407,4411,4415,4423,4431,4447,4451,4467,4471,4475,4479,4483],{"__ignoreMap":5},[378,4184,4185,4187,4189,4191,4193,4195],{"class":380,"line":381},[378,4186,601],{"class":600},[378,4188,2372],{"class":600},[378,4190,2375],{"class":384},[378,4192,607],{"class":600},[378,4194,952],{"class":398},[378,4196,613],{"class":384},[378,4198,4199],{"class":380,"line":388},[378,4200,661],{"emptyLinePlaceholder":660},[378,4202,4203,4205,4207,4209,4211,4213,4215,4217],{"class":380,"line":405},[378,4204,666],{"class":600},[378,4206,2392],{"class":600},[378,4208,2395],{"class":391},[378,4210,1747],{"class":600},[378,4212,2400],{"class":672},[378,4214,2403],{"class":384},[378,4216,934],{"class":600},[378,4218,2408],{"class":384},[378,4220,4221],{"class":380,"line":414},[378,4222,2413],{"class":384},[378,4224,4225,4227,4229],{"class":380,"line":427},[378,4226,2418],{"class":384},[378,4228,1031],{"class":398},[378,4230,402],{"class":384},[378,4232,4233,4235,4237],{"class":380,"line":440},[378,4234,2427],{"class":384},[378,4236,2430],{"class":398},[378,4238,402],{"class":384},[378,4240,4241,4243,4245,4247,4249,4251,4253],{"class":380,"line":451},[378,4242,2437],{"class":672},[378,4244,2440],{"class":384},[378,4246,686],{"class":600},[378,4248,2445],{"class":600},[378,4250,700],{"class":384},[378,4252,2450],{"class":398},[378,4254,2453],{"class":384},[378,4256,4257],{"class":380,"line":457},[378,4258,2458],{"class":384},[378,4260,4261,4263,4265,4267,4269,4271,4273],{"class":380,"line":465},[378,4262,2463],{"class":672},[378,4264,2440],{"class":384},[378,4266,686],{"class":600},[378,4268,2445],{"class":600},[378,4270,700],{"class":384},[378,4272,2474],{"class":398},[378,4274,2453],{"class":384},[378,4276,4277],{"class":380,"line":478},[378,4278,2481],{"class":384},[378,4280,4281],{"class":380,"line":491},[378,4282,2486],{"class":384},[378,4284,4285],{"class":380,"line":504},[378,4286,2491],{"class":384},[378,4288,4289,4291,4293],{"class":380,"line":517},[378,4290,2496],{"class":384},[378,4292,1031],{"class":398},[378,4294,402],{"class":384},[378,4296,4297,4299,4301],{"class":380,"line":530},[378,4298,2505],{"class":384},[378,4300,2508],{"class":398},[378,4302,402],{"class":384},[378,4304,4305,4307,4309,4311,4313,4315,4317],{"class":380,"line":543},[378,4306,2515],{"class":672},[378,4308,2440],{"class":384},[378,4310,686],{"class":600},[378,4312,2445],{"class":600},[378,4314,700],{"class":384},[378,4316,2526],{"class":398},[378,4318,2453],{"class":384},[378,4320,4321],{"class":380,"line":554},[378,4322,2533],{"class":384},[378,4324,4325,4327,4329,4331,4333,4335,4337],{"class":380,"line":560},[378,4326,2538],{"class":672},[378,4328,2440],{"class":384},[378,4330,686],{"class":600},[378,4332,2445],{"class":600},[378,4334,700],{"class":384},[378,4336,2549],{"class":398},[378,4338,2453],{"class":384},[378,4340,4341],{"class":380,"line":842},[378,4342,2556],{"class":384},[378,4344,4345],{"class":380,"line":868},[378,4346,2561],{"class":384},[378,4348,4349],{"class":380,"line":892},[378,4350,2491],{"class":384},[378,4352,4353,4355,4357],{"class":380,"line":898},[378,4354,2496],{"class":384},[378,4356,1076],{"class":398},[378,4358,402],{"class":384},[378,4360,4361,4363,4365],{"class":380,"line":907},[378,4362,2505],{"class":384},[378,4364,2580],{"class":398},[378,4366,402],{"class":384},[378,4368,4369,4371,4373,4375,4377,4379,4381],{"class":380,"line":1172},[378,4370,2515],{"class":672},[378,4372,2440],{"class":384},[378,4374,686],{"class":600},[378,4376,2445],{"class":600},[378,4378,700],{"class":384},[378,4380,2597],{"class":398},[378,4382,2453],{"class":384},[378,4384,4385],{"class":380,"line":1217},[378,4386,2533],{"class":384},[378,4388,4389,4391,4393,4395,4397,4399,4401],{"class":380,"line":1232},[378,4390,2538],{"class":672},[378,4392,2440],{"class":384},[378,4394,686],{"class":600},[378,4396,2445],{"class":600},[378,4398,700],{"class":384},[378,4400,2618],{"class":398},[378,4402,2453],{"class":384},[378,4404,4405],{"class":380,"line":1237},[378,4406,2556],{"class":384},[378,4408,4409],{"class":380,"line":1242},[378,4410,2561],{"class":384},[378,4412,4413],{"class":380,"line":1252},[378,4414,2491],{"class":384},[378,4416,4417,4419,4421],{"class":380,"line":1265},[378,4418,2496],{"class":384},[378,4420,2639],{"class":398},[378,4422,402],{"class":384},[378,4424,4425,4427,4429],{"class":380,"line":1277},[378,4426,2505],{"class":384},[378,4428,2648],{"class":398},[378,4430,402],{"class":384},[378,4432,4433,4435,4437,4439,4441,4443,4445],{"class":380,"line":1288},[378,4434,2515],{"class":672},[378,4436,2440],{"class":384},[378,4438,686],{"class":600},[378,4440,2445],{"class":600},[378,4442,700],{"class":384},[378,4444,2665],{"class":398},[378,4446,2453],{"class":384},[378,4448,4449],{"class":380,"line":1301},[378,4450,2533],{"class":384},[378,4452,4453,4455,4457,4459,4461,4463,4465],{"class":380,"line":1316},[378,4454,2538],{"class":672},[378,4456,2440],{"class":384},[378,4458,686],{"class":600},[378,4460,2445],{"class":600},[378,4462,700],{"class":384},[378,4464,2686],{"class":398},[378,4466,2453],{"class":384},[378,4468,4469],{"class":380,"line":1331},[378,4470,2556],{"class":384},[378,4472,4473],{"class":380,"line":1345},[378,4474,2561],{"class":384},[378,4476,4477],{"class":380,"line":1350},[378,4478,2117],{"class":384},[378,4480,4481],{"class":380,"line":1355},[378,4482,454],{"class":384},[378,4484,4485],{"class":380,"line":1365},[378,4486,2709],{"class":384},[3325,4488,4489,4490,4493],{},"Use dynamic imports for lazy-loaded components to enable code splitting. The ",[375,4491,4492],{},"meta.assets"," function loads route-specific CSS and JS chunks. Define child routes under a root layout component for nested routing.",[3890,4495,4497],{"id":4496},"_3-create-the-server-entry","3. Create the Server Entry",[3325,4499,4500],{},"The server entry renders your Vue app with router support and head management:",[368,4502,4503],{"className":1472,"code":1637,"filename":366,"language":1475,"meta":5,"style":5},[375,4504,4505,4517,4529,4541,4553,4557,4569,4573,4585,4589,4617,4629,4645,4653,4657,4671,4689,4693,4703,4713,4717,4731,4747,4751,4767,4775,4813,4817,4821,4825,4837,4841,4849,4853,4883,4913,4917,4925,4929,4933,4947,4951,4969,4973,4983,4995,4999,5003,5007,5029,5037,5041,5045,5049,5053,5057,5061,5065,5073,5077,5083,5087,5091,5099,5103],{"__ignoreMap":5},[378,4506,4507,4509,4511,4513,4515],{"class":380,"line":381},[378,4508,601],{"class":600},[378,4510,1484],{"class":384},[378,4512,607],{"class":600},[378,4514,1489],{"class":398},[378,4516,613],{"class":384},[378,4518,4519,4521,4523,4525,4527],{"class":380,"line":388},[378,4520,601],{"class":600},[378,4522,1658],{"class":384},[378,4524,607],{"class":600},[378,4526,1663],{"class":398},[378,4528,613],{"class":384},[378,4530,4531,4533,4535,4537,4539],{"class":380,"line":405},[378,4532,601],{"class":600},[378,4534,1672],{"class":384},[378,4536,607],{"class":600},[378,4538,952],{"class":398},[378,4540,613],{"class":384},[378,4542,4543,4545,4547,4549,4551],{"class":380,"line":414},[378,4544,601],{"class":600},[378,4546,1685],{"class":384},[378,4548,607],{"class":600},[378,4550,1690],{"class":398},[378,4552,613],{"class":384},[378,4554,4555],{"class":380,"line":427},[378,4556,661],{"emptyLinePlaceholder":660},[378,4558,4559,4561,4563,4565,4567],{"class":380,"line":440},[378,4560,601],{"class":600},[378,4562,1511],{"class":384},[378,4564,607],{"class":600},[378,4566,1516],{"class":398},[378,4568,613],{"class":384},[378,4570,4571],{"class":380,"line":451},[378,4572,661],{"emptyLinePlaceholder":660},[378,4574,4575,4577,4579,4581,4583],{"class":380,"line":457},[378,4576,601],{"class":600},[378,4578,1719],{"class":384},[378,4580,607],{"class":600},[378,4582,1724],{"class":398},[378,4584,613],{"class":384},[378,4586,4587],{"class":380,"line":465},[378,4588,661],{"emptyLinePlaceholder":660},[378,4590,4591,4593,4595,4597,4599,4601,4603,4605,4607,4609,4611,4613,4615],{"class":380,"line":478},[378,4592,1527],{"class":600},[378,4594,828],{"class":600},[378,4596,1739],{"class":672},[378,4598,700],{"class":384},[378,4600,1744],{"class":679},[378,4602,1747],{"class":600},[378,4604,1750],{"class":672},[378,4606,1753],{"class":384},[378,4608,1747],{"class":600},[378,4610,1758],{"class":672},[378,4612,921],{"class":384},[378,4614,1763],{"class":672},[378,4616,1766],{"class":384},[378,4618,4619,4621,4623,4625,4627],{"class":380,"line":491},[378,4620,806],{"class":600},[378,4622,1542],{"class":391},[378,4624,812],{"class":600},[378,4626,1547],{"class":672},[378,4628,1550],{"class":384},[378,4630,4631,4633,4635,4637,4639,4641,4643],{"class":380,"line":504},[378,4632,806],{"class":600},[378,4634,1557],{"class":391},[378,4636,812],{"class":600},[378,4638,1562],{"class":672},[378,4640,1565],{"class":384},[378,4642,1793],{"class":672},[378,4644,1571],{"class":384},[378,4646,4647,4649,4651],{"class":380,"line":517},[378,4648,1576],{"class":384},[378,4650,1579],{"class":672},[378,4652,1582],{"class":384},[378,4654,4655],{"class":380,"line":530},[378,4656,661],{"emptyLinePlaceholder":660},[378,4658,4659,4661,4663,4665,4667,4669],{"class":380,"line":543},[378,4660,806],{"class":600},[378,4662,1814],{"class":391},[378,4664,812],{"class":600},[378,4666,1819],{"class":600},[378,4668,1822],{"class":672},[378,4670,1825],{"class":384},[378,4672,4673,4675,4677,4679,4681,4683,4685,4687],{"class":380,"line":554},[378,4674,806],{"class":600},[378,4676,1832],{"class":391},[378,4678,812],{"class":600},[378,4680,1837],{"class":384},[378,4682,1840],{"class":672},[378,4684,1843],{"class":384},[378,4686,1846],{"class":391},[378,4688,1214],{"class":384},[378,4690,4691],{"class":380,"line":560},[378,4692,661],{"emptyLinePlaceholder":660},[378,4694,4695,4697,4699,4701],{"class":380,"line":842},[378,4696,1591],{"class":600},[378,4698,1594],{"class":384},[378,4700,1861],{"class":672},[378,4702,1864],{"class":384},[378,4704,4705,4707,4709,4711],{"class":380,"line":868},[378,4706,1591],{"class":600},[378,4708,1594],{"class":384},[378,4710,1597],{"class":672},[378,4712,1600],{"class":384},[378,4714,4715],{"class":380,"line":892},[378,4716,661],{"emptyLinePlaceholder":660},[378,4718,4719,4721,4723,4725,4727,4729],{"class":380,"line":898},[378,4720,806],{"class":600},[378,4722,1885],{"class":391},[378,4724,812],{"class":600},[378,4726,1890],{"class":384},[378,4728,1893],{"class":672},[378,4730,1896],{"class":384},[378,4732,4733,4735,4737,4739,4741,4743,4745],{"class":380,"line":907},[378,4734,1901],{"class":600},[378,4736,700],{"class":384},[378,4738,1906],{"class":600},[378,4740,1758],{"class":391},[378,4742,1911],{"class":384},[378,4744,1914],{"class":672},[378,4746,1896],{"class":384},[378,4748,4749],{"class":380,"line":1172},[378,4750,1921],{"class":384},[378,4752,4753,4755,4757,4759,4761,4763,4765],{"class":380,"line":1217},[378,4754,1926],{"class":384},[378,4756,1929],{"class":672},[378,4758,676],{"class":384},[378,4760,1934],{"class":679},[378,4762,683],{"class":384},[378,4764,686],{"class":600},[378,4766,1941],{"class":384},[378,4768,4769,4771,4773],{"class":380,"line":1232},[378,4770,1926],{"class":384},[378,4772,1948],{"class":672},[378,4774,1951],{"class":384},[378,4776,4777,4779,4781,4783,4785,4787,4789,4791,4793,4795,4797,4799,4801,4803,4805,4807,4809,4811],{"class":380,"line":1237},[378,4778,1926],{"class":384},[378,4780,1929],{"class":672},[378,4782,676],{"class":384},[378,4784,1962],{"class":679},[378,4786,683],{"class":384},[378,4788,686],{"class":600},[378,4790,1969],{"class":384},[378,4792,1972],{"class":600},[378,4794,1975],{"class":391},[378,4796,1978],{"class":384},[378,4798,1981],{"class":672},[378,4800,676],{"class":384},[378,4802,1986],{"class":679},[378,4804,1747],{"class":600},[378,4806,1975],{"class":391},[378,4808,683],{"class":384},[378,4810,686],{"class":600},[378,4812,1997],{"class":384},[378,4814,4815],{"class":380,"line":1242},[378,4816,2002],{"class":384},[378,4818,4819],{"class":380,"line":1252},[378,4820,2007],{"class":384},[378,4822,4823],{"class":380,"line":1265},[378,4824,661],{"emptyLinePlaceholder":660},[378,4826,4827,4829,4831,4833,4835],{"class":380,"line":1277},[378,4828,806],{"class":600},[378,4830,2018],{"class":391},[378,4832,812],{"class":600},[378,4834,2023],{"class":672},[378,4836,1600],{"class":384},[378,4838,4839],{"class":380,"line":1288},[378,4840,661],{"emptyLinePlaceholder":660},[378,4842,4843,4845,4847],{"class":380,"line":1301},[378,4844,2034],{"class":384},[378,4846,1861],{"class":672},[378,4848,2039],{"class":384},[378,4850,4851],{"class":380,"line":1316},[378,4852,2044],{"class":384},[378,4854,4855,4857,4859,4861,4863,4865,4867,4869,4871,4873,4875,4877,4879,4881],{"class":380,"line":1331},[378,4856,2049],{"class":600},[378,4858,2052],{"class":384},[378,4860,1929],{"class":672},[378,4862,676],{"class":384},[378,4864,2059],{"class":679},[378,4866,1747],{"class":600},[378,4868,1975],{"class":391},[378,4870,683],{"class":384},[378,4872,686],{"class":600},[378,4874,2070],{"class":384},[378,4876,2073],{"class":398},[378,4878,795],{"class":384},[378,4880,834],{"class":600},[378,4882,2080],{"class":384},[378,4884,4885,4887,4889,4891,4893,4895,4897,4899,4901,4903,4905,4907,4909,4911],{"class":380,"line":1345},[378,4886,2049],{"class":600},[378,4888,2087],{"class":384},[378,4890,1929],{"class":672},[378,4892,676],{"class":384},[378,4894,2059],{"class":679},[378,4896,1747],{"class":600},[378,4898,1975],{"class":391},[378,4900,683],{"class":384},[378,4902,686],{"class":600},[378,4904,2070],{"class":384},[378,4906,2106],{"class":398},[378,4908,795],{"class":384},[378,4910,834],{"class":600},[378,4912,2080],{"class":384},[378,4914,4915],{"class":380,"line":1350},[378,4916,2117],{"class":384},[378,4918,4919,4921,4923],{"class":380,"line":1355},[378,4920,2122],{"class":384},[378,4922,399],{"class":398},[378,4924,2127],{"class":384},[378,4926,4927],{"class":380,"line":1365},[378,4928,2132],{"class":384},[378,4930,4931],{"class":380,"line":1378},[378,4932,661],{"emptyLinePlaceholder":660},[378,4934,4935,4937,4939,4941,4943,4945],{"class":380,"line":1390},[378,4936,806],{"class":600},[378,4938,2143],{"class":391},[378,4940,812],{"class":600},[378,4942,2148],{"class":600},[378,4944,2151],{"class":672},[378,4946,2154],{"class":384},[378,4948,4949],{"class":380,"line":1395},[378,4950,661],{"emptyLinePlaceholder":660},[378,4952,4953,4955,4957,4959,4961,4963,4965,4967],{"class":380,"line":1400},[378,4954,806],{"class":600},[378,4956,2165],{"class":391},[378,4958,812],{"class":600},[378,4960,2148],{"class":600},[378,4962,2172],{"class":672},[378,4964,2175],{"class":384},[378,4966,2178],{"class":672},[378,4968,2181],{"class":384},[378,4970,4971],{"class":380,"line":1412},[378,4972,661],{"emptyLinePlaceholder":660},[378,4974,4975,4977,4979,4981],{"class":380,"line":1424},[378,4976,901],{"class":600},[378,4978,1819],{"class":600},[378,4980,2194],{"class":672},[378,4982,2197],{"class":384},[378,4984,4985,4987,4989,4991,4993],{"class":380,"line":1429},[378,4986,2202],{"class":384},[378,4988,2205],{"class":398},[378,4990,395],{"class":384},[378,4992,2210],{"class":398},[378,4994,2213],{"class":384},[378,4996,4997],{"class":380,"line":1434},[378,4998,2132],{"class":384},[378,5000,5001],{"class":380,"line":1446},[378,5002,563],{"class":384},[378,5004,5005],{"class":380,"line":1458},[378,5006,661],{"emptyLinePlaceholder":660},[378,5008,5009,5011,5013,5015,5017,5019,5021,5023,5025,5027],{"class":380,"line":1463},[378,5010,784],{"class":600},[378,5012,2232],{"class":672},[378,5014,700],{"class":384},[378,5016,2237],{"class":679},[378,5018,1747],{"class":600},[378,5020,2242],{"class":391},[378,5022,1753],{"class":384},[378,5024,1747],{"class":600},[378,5026,2242],{"class":391},[378,5028,1157],{"class":384},[378,5030,5031,5033,5035],{"class":380,"line":2253},[378,5032,901],{"class":600},[378,5034,2258],{"class":778},[378,5036,2261],{"class":398},[378,5038,5039],{"class":380,"line":2264},[378,5040,2267],{"class":398},[378,5042,5043],{"class":380,"line":2270},[378,5044,2273],{"class":398},[378,5046,5047],{"class":380,"line":2276},[378,5048,2279],{"class":398},[378,5050,5051],{"class":380,"line":2282},[378,5052,2285],{"class":398},[378,5054,5055],{"class":380,"line":2288},[378,5056,2291],{"class":398},[378,5058,5059],{"class":380,"line":2294},[378,5060,2297],{"class":398},[378,5062,5063],{"class":380,"line":2300},[378,5064,2303],{"class":398},[378,5066,5067,5069,5071],{"class":380,"line":2306},[378,5068,2309],{"class":398},[378,5070,2237],{"class":384},[378,5072,2314],{"class":398},[378,5074,5075],{"class":380,"line":2317},[378,5076,2320],{"class":398},[378,5078,5079,5081],{"class":380,"line":2323},[378,5080,2326],{"class":398},[378,5082,613],{"class":384},[378,5084,5085],{"class":380,"line":2331},[378,5086,563],{"class":384},[378,5088,5089],{"class":380,"line":2336},[378,5090,661],{"emptyLinePlaceholder":660},[378,5092,5093,5095,5097],{"class":380,"line":2341},[378,5094,666],{"class":600},[378,5096,669],{"class":600},[378,5098,1157],{"class":384},[378,5100,5101],{"class":380,"line":2350},[378,5102,2353],{"class":384},[378,5104,5105],{"class":380,"line":2356},[378,5106,2359],{"class":384},[3325,5108,5109,5110,5113,5114,5117,5118,5121,5122,1911],{},"The server uses ",[375,5111,5112],{},"createMemoryHistory()"," since there's no browser URL bar—the router navigates to the requested URL before rendering. Assets are loaded dynamically based on matched routes, ensuring only the CSS and JS needed for the current page are included. The ",[375,5115,5116],{},"unhead"," library manages ",[375,5119,5120],{},"\u003Chead>"," elements, injecting stylesheets and scripts via ",[375,5123,5124],{},"transformHtmlTemplate",[3890,5126,5128],{"id":5127},"_4-create-the-client-entry","4. Create the Client Entry",[3325,5130,5131],{},"The client entry hydrates the server-rendered HTML and takes over routing:",[368,5133,5134],{"className":1472,"code":1473,"filename":1474,"language":1475,"meta":5,"style":5},[375,5135,5136,5148,5160,5172,5176,5186,5198,5214,5222,5226,5236,5248,5252,5256,5260],{"__ignoreMap":5},[378,5137,5138,5140,5142,5144,5146],{"class":380,"line":381},[378,5139,601],{"class":600},[378,5141,1484],{"class":384},[378,5143,607],{"class":600},[378,5145,1489],{"class":398},[378,5147,613],{"class":384},[378,5149,5150,5152,5154,5156,5158],{"class":380,"line":388},[378,5151,601],{"class":600},[378,5153,1498],{"class":384},[378,5155,607],{"class":600},[378,5157,952],{"class":398},[378,5159,613],{"class":384},[378,5161,5162,5164,5166,5168,5170],{"class":380,"line":405},[378,5163,601],{"class":600},[378,5165,1511],{"class":384},[378,5167,607],{"class":600},[378,5169,1516],{"class":398},[378,5171,613],{"class":384},[378,5173,5174],{"class":380,"line":414},[378,5175,661],{"emptyLinePlaceholder":660},[378,5177,5178,5180,5182,5184],{"class":380,"line":427},[378,5179,1527],{"class":600},[378,5181,828],{"class":600},[378,5183,1532],{"class":672},[378,5185,1535],{"class":384},[378,5187,5188,5190,5192,5194,5196],{"class":380,"line":440},[378,5189,806],{"class":600},[378,5191,1542],{"class":391},[378,5193,812],{"class":600},[378,5195,1547],{"class":672},[378,5197,1550],{"class":384},[378,5199,5200,5202,5204,5206,5208,5210,5212],{"class":380,"line":451},[378,5201,806],{"class":600},[378,5203,1557],{"class":391},[378,5205,812],{"class":600},[378,5207,1562],{"class":672},[378,5209,1565],{"class":384},[378,5211,1568],{"class":672},[378,5213,1571],{"class":384},[378,5215,5216,5218,5220],{"class":380,"line":457},[378,5217,1576],{"class":384},[378,5219,1579],{"class":672},[378,5221,1582],{"class":384},[378,5223,5224],{"class":380,"line":465},[378,5225,661],{"emptyLinePlaceholder":660},[378,5227,5228,5230,5232,5234],{"class":380,"line":478},[378,5229,1591],{"class":600},[378,5231,1594],{"class":384},[378,5233,1597],{"class":672},[378,5235,1600],{"class":384},[378,5237,5238,5240,5242,5244,5246],{"class":380,"line":491},[378,5239,1576],{"class":384},[378,5241,1607],{"class":672},[378,5243,700],{"class":384},[378,5245,1612],{"class":398},[378,5247,1214],{"class":384},[378,5249,5250],{"class":380,"line":504},[378,5251,563],{"class":384},[378,5253,5254],{"class":380,"line":517},[378,5255,661],{"emptyLinePlaceholder":660},[378,5257,5258],{"class":380,"line":530},[378,5259,1627],{"class":778},[378,5261,5262,5264],{"class":380,"line":543},[378,5263,1632],{"class":672},[378,5265,1600],{"class":384},[3325,5267,5268,5269,5272,5273,5276],{},"The client entry creates a Vue app with ",[375,5270,5271],{},"createWebHistory()"," for browser-based routing. After the router is ready, it mounts to the ",[375,5274,5275],{},"#root"," element and hydrates the server-rendered HTML.",[3890,5278,5280],{"id":5279},"_5-create-the-root-component","5. Create the Root Component",[3325,5282,5283],{},"The root component provides navigation and renders child routes:",[368,5285,5286],{"className":912,"code":913,"filename":914,"language":703,"meta":5,"style":5},[375,5287,5288,5304,5316,5324,5332,5336,5344,5352,5360,5368,5392,5400,5408,5432,5440,5448,5456,5464,5472,5476,5486,5492,5502,5538,5550,5554,5558,5566,5576,5586,5596,5606,5618,5630,5642,5646,5650,5658,5668,5678,5682,5686,5696,5706,5710,5714,5724,5734,5738],{"__ignoreMap":5},[378,5289,5290,5292,5294,5296,5298,5300,5302],{"class":380,"line":381},[378,5291,921],{"class":384},[378,5293,925],{"class":924},[378,5295,928],{"class":672},[378,5297,931],{"class":672},[378,5299,934],{"class":384},[378,5301,937],{"class":398},[378,5303,940],{"class":384},[378,5305,5306,5308,5310,5312,5314],{"class":380,"line":388},[378,5307,601],{"class":600},[378,5309,947],{"class":384},[378,5311,607],{"class":600},[378,5313,952],{"class":398},[378,5315,613],{"class":384},[378,5317,5318,5320,5322],{"class":380,"line":405},[378,5319,601],{"class":600},[378,5321,961],{"class":398},[378,5323,613],{"class":384},[378,5325,5326,5328,5330],{"class":380,"line":414},[378,5327,968],{"class":384},[378,5329,925],{"class":924},[378,5331,940],{"class":384},[378,5333,5334],{"class":380,"line":427},[378,5335,661],{"emptyLinePlaceholder":660},[378,5337,5338,5340,5342],{"class":380,"line":440},[378,5339,921],{"class":384},[378,5341,983],{"class":924},[378,5343,940],{"class":384},[378,5345,5346,5348,5350],{"class":380,"line":451},[378,5347,990],{"class":384},[378,5349,993],{"class":924},[378,5351,940],{"class":384},[378,5353,5354,5356,5358],{"class":380,"line":457},[378,5355,1000],{"class":384},[378,5357,1003],{"class":924},[378,5359,940],{"class":384},[378,5361,5362,5364,5366],{"class":380,"line":465},[378,5363,1010],{"class":384},[378,5365,1013],{"class":924},[378,5367,940],{"class":384},[378,5369,5370,5372,5374,5376,5378,5380,5382,5384,5386,5388,5390],{"class":380,"line":478},[378,5371,1020],{"class":384},[378,5373,1023],{"class":924},[378,5375,1026],{"class":672},[378,5377,934],{"class":384},[378,5379,1031],{"class":398},[378,5381,1034],{"class":672},[378,5383,934],{"class":384},[378,5385,1039],{"class":398},[378,5387,1042],{"class":384},[378,5389,1023],{"class":924},[378,5391,940],{"class":384},[378,5393,5394,5396,5398],{"class":380,"line":491},[378,5395,1051],{"class":384},[378,5397,1013],{"class":924},[378,5399,940],{"class":384},[378,5401,5402,5404,5406],{"class":380,"line":504},[378,5403,1010],{"class":384},[378,5405,1013],{"class":924},[378,5407,940],{"class":384},[378,5409,5410,5412,5414,5416,5418,5420,5422,5424,5426,5428,5430],{"class":380,"line":517},[378,5411,1020],{"class":384},[378,5413,1023],{"class":924},[378,5415,1026],{"class":672},[378,5417,934],{"class":384},[378,5419,1076],{"class":398},[378,5421,1079],{"class":672},[378,5423,934],{"class":384},[378,5425,1039],{"class":398},[378,5427,1086],{"class":384},[378,5429,1023],{"class":924},[378,5431,940],{"class":384},[378,5433,5434,5436,5438],{"class":380,"line":530},[378,5435,1051],{"class":384},[378,5437,1013],{"class":924},[378,5439,940],{"class":384},[378,5441,5442,5444,5446],{"class":380,"line":543},[378,5443,1103],{"class":384},[378,5445,1003],{"class":924},[378,5447,940],{"class":384},[378,5449,5450,5452,5454],{"class":380,"line":554},[378,5451,1112],{"class":384},[378,5453,993],{"class":924},[378,5455,940],{"class":384},[378,5457,5458,5460,5462],{"class":380,"line":560},[378,5459,990],{"class":384},[378,5461,1123],{"class":924},[378,5463,1126],{"class":384},[378,5465,5466,5468,5470],{"class":380,"line":842},[378,5467,968],{"class":384},[378,5469,983],{"class":924},[378,5471,940],{"class":384},[378,5473,5474],{"class":380,"line":868},[378,5475,661],{"emptyLinePlaceholder":660},[378,5477,5478,5480,5482,5484],{"class":380,"line":892},[378,5479,921],{"class":384},[378,5481,1145],{"class":924},[378,5483,1148],{"class":672},[378,5485,940],{"class":384},[378,5487,5488,5490],{"class":380,"line":898},[378,5489,993],{"class":924},[378,5491,1157],{"class":384},[378,5493,5494,5496,5498,5500],{"class":380,"line":907},[378,5495,1162],{"class":391},[378,5497,395],{"class":384},[378,5499,1167],{"class":391},[378,5501,613],{"class":384},[378,5503,5504,5506,5508,5510,5512,5514,5516,5518,5520,5522,5524,5526,5528,5530,5532,5534,5536],{"class":380,"line":1172},[378,5505,1175],{"class":391},[378,5507,395],{"class":384},[378,5509,1180],{"class":391},[378,5511,1183],{"class":391},[378,5513,1186],{"class":600},[378,5515,1189],{"class":391},[378,5517,1186],{"class":600},[378,5519,1194],{"class":391},[378,5521,700],{"class":384},[378,5523,1180],{"class":391},[378,5525,795],{"class":384},[378,5527,1180],{"class":391},[378,5529,795],{"class":384},[378,5531,1180],{"class":391},[378,5533,795],{"class":384},[378,5535,1211],{"class":391},[378,5537,1214],{"class":384},[378,5539,5540,5542,5544,5546,5548],{"class":380,"line":1217},[378,5541,1220],{"class":391},[378,5543,395],{"class":384},[378,5545,857],{"class":391},[378,5547,1227],{"class":600},[378,5549,613],{"class":384},[378,5551,5552],{"class":380,"line":1232},[378,5553,563],{"class":384},[378,5555,5556],{"class":380,"line":1237},[378,5557,661],{"emptyLinePlaceholder":660},[378,5559,5560,5562,5564],{"class":380,"line":1242},[378,5561,993],{"class":924},[378,5563,1247],{"class":924},[378,5565,1157],{"class":384},[378,5567,5568,5570,5572,5574],{"class":380,"line":1252},[378,5569,1255],{"class":391},[378,5571,395],{"class":384},[378,5573,1260],{"class":391},[378,5575,613],{"class":384},[378,5577,5578,5580,5582,5584],{"class":380,"line":1265},[378,5579,1268],{"class":391},[378,5581,395],{"class":384},[378,5583,1180],{"class":391},[378,5585,613],{"class":384},[378,5587,5588,5590,5592,5594],{"class":380,"line":1277},[378,5589,1220],{"class":391},[378,5591,395],{"class":384},[378,5593,1180],{"class":391},[378,5595,613],{"class":384},[378,5597,5598,5600,5602,5604],{"class":380,"line":1288},[378,5599,1291],{"class":391},[378,5601,395],{"class":384},[378,5603,1296],{"class":391},[378,5605,613],{"class":384},[378,5607,5608,5610,5612,5614,5616],{"class":380,"line":1301},[378,5609,1304],{"class":391},[378,5611,395],{"class":384},[378,5613,1309],{"class":391},[378,5615,1227],{"class":600},[378,5617,613],{"class":384},[378,5619,5620,5622,5624,5626,5628],{"class":380,"line":1316},[378,5621,1319],{"class":391},[378,5623,395],{"class":384},[378,5625,1324],{"class":391},[378,5627,1186],{"class":600},[378,5629,613],{"class":384},[378,5631,5632,5634,5636,5638,5640],{"class":380,"line":1331},[378,5633,1268],{"class":391},[378,5635,395],{"class":384},[378,5637,1180],{"class":391},[378,5639,1340],{"class":391},[378,5641,613],{"class":384},[378,5643,5644],{"class":380,"line":1345},[378,5645,563],{"class":384},[378,5647,5648],{"class":380,"line":1350},[378,5649,661],{"emptyLinePlaceholder":660},[378,5651,5652,5654,5656],{"class":380,"line":1355},[378,5653,993],{"class":924},[378,5655,1360],{"class":924},[378,5657,1157],{"class":384},[378,5659,5660,5662,5664,5666],{"class":380,"line":1365},[378,5661,1368],{"class":391},[378,5663,395],{"class":384},[378,5665,1373],{"class":391},[378,5667,613],{"class":384},[378,5669,5670,5672,5674,5676],{"class":380,"line":1378},[378,5671,1381],{"class":391},[378,5673,395],{"class":384},[378,5675,1260],{"class":391},[378,5677,613],{"class":384},[378,5679,5680],{"class":380,"line":1390},[378,5681,563],{"class":384},[378,5683,5684],{"class":380,"line":1395},[378,5685,661],{"emptyLinePlaceholder":660},[378,5687,5688,5690,5692,5694],{"class":380,"line":1400},[378,5689,993],{"class":924},[378,5691,1360],{"class":924},[378,5693,1407],{"class":672},[378,5695,1157],{"class":384},[378,5697,5698,5700,5702,5704],{"class":380,"line":1412},[378,5699,1368],{"class":391},[378,5701,395],{"class":384},[378,5703,1419],{"class":391},[378,5705,613],{"class":384},[378,5707,5708],{"class":380,"line":1424},[378,5709,563],{"class":384},[378,5711,5712],{"class":380,"line":1429},[378,5713,661],{"emptyLinePlaceholder":660},[378,5715,5716,5718,5720,5722],{"class":380,"line":1434},[378,5717,993],{"class":924},[378,5719,1360],{"class":924},[378,5721,1441],{"class":672},[378,5723,1157],{"class":384},[378,5725,5726,5728,5730,5732],{"class":380,"line":1446},[378,5727,1368],{"class":391},[378,5729,395],{"class":384},[378,5731,1453],{"class":391},[378,5733,613],{"class":384},[378,5735,5736],{"class":380,"line":1458},[378,5737,563],{"class":384},[378,5739,5740,5742,5744],{"class":380,"line":1463},[378,5741,968],{"class":384},[378,5743,1145],{"class":924},[378,5745,940],{"class":384},[3890,5747,5749],{"id":5748},"learn-more","Learn More",[1003,5751,5752,5761,5768,5772],{},[1013,5753,5754],{},[5755,5756,5760],"a",{"href":5757,"rel":5758},"https://router.vuejs.org/",[5759],"nofollow","Vue Router Documentation",[1013,5762,5763],{},[5755,5764,5767],{"href":5765,"rel":5766},"https://unhead.unjs.io/",[5759],"Unhead Documentation",[1013,5769,5770],{},[5755,5771,18],{"href":19},[1013,5773,5774],{},[5755,5775,58],{"href":59},[1145,5777,5778],{},"html pre.shiki code .slsVL, html code.shiki .slsVL{--shiki-light:#24292E;--shiki-default:#E1E4E8;--shiki-dark:#E1E4E8}html pre.shiki code .suiK_, html code.shiki .suiK_{--shiki-light:#005CC5;--shiki-default:#79B8FF;--shiki-dark:#79B8FF}html pre.shiki code .sfrk1, html code.shiki .sfrk1{--shiki-light:#032F62;--shiki-default:#9ECBFF;--shiki-dark:#9ECBFF}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);}html pre.shiki code .so5gQ, html code.shiki .so5gQ{--shiki-light:#D73A49;--shiki-default:#F97583;--shiki-dark:#F97583}html pre.shiki code .shcOC, html code.shiki .shcOC{--shiki-light:#6F42C1;--shiki-default:#B392F0;--shiki-dark:#B392F0}html pre.shiki code .sQHwn, html code.shiki .sQHwn{--shiki-light:#E36209;--shiki-default:#FFAB70;--shiki-dark:#FFAB70}html pre.shiki code .sAxt1, html code.shiki .sAxt1{--shiki-light:#22863A;--shiki-light-font-weight:bold;--shiki-default:#85E89D;--shiki-default-font-weight:bold;--shiki-dark:#85E89D;--shiki-dark-font-weight:bold}html pre.shiki code .sQeJH, html code.shiki .sQeJH{--shiki-light:#032F62;--shiki-default:#DBEDFF;--shiki-dark:#DBEDFF}html pre.shiki code .sCsY4, html code.shiki .sCsY4{--shiki-light:#6A737D;--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sByVh, html code.shiki .sByVh{--shiki-light:#22863A;--shiki-default:#85E89D;--shiki-dark:#85E89D}",{"title":5,"searchDepth":388,"depth":388,"links":5780},[5781,5782,5783,5784,5785,5786,5787],{"id":3892,"depth":388,"text":3893},{"id":3915,"depth":388,"text":3916},{"id":4174,"depth":388,"text":4175},{"id":4496,"depth":388,"text":4497},{"id":5127,"depth":388,"text":5128},{"id":5279,"depth":388,"text":5280},{"id":5748,"depth":388,"text":5749},"md","i-logos-vue",{"automd":660},{},{"title":346,"description":347},"examples/vite-ssr-vue-router/README","eIaB7Ftu9sDe_IQRaJxSqDsVtg-BBCNZNNgdiFMiomQ",[5796,5799],{"title":342,"path":5797,"stem":5798,"description":343,"children":-1},"/examples/vite-ssr-tss-react","examples/vite-ssr-tss-react/README",null,1773176190725]