[{"data":1,"prerenderedAt":6397},["ShallowReactive",2],{"navigation":3,"-config":394,"-config-surround":6392},[4,88,217,223,379,391],{"title":5,"path":6,"stem":7,"children":8,"icon":87},"","/docs","1.docs/1.index",[9,12,17,22,27,32,37,42,47,52,57,62,67,72,77,82],{"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},"OpenAPI","/docs/openapi","1.docs/50.openapi","ri:contract-line",{"title":53,"path":54,"stem":55,"icon":56},"Plugins","/docs/plugins","1.docs/50.plugins","ri:plug-line",{"title":58,"path":59,"stem":60,"icon":61},"Tasks","/docs/tasks","1.docs/50.tasks","codicon:run-all",{"title":63,"path":64,"stem":65,"icon":66},"Server Entry","/docs/server-entry","1.docs/6.server-entry","ri:server-line",{"title":68,"path":69,"stem":70,"icon":71},"Cache","/docs/cache","1.docs/7.cache","ri:speed-line",{"title":73,"path":74,"stem":75,"icon":76},"KV Storage","/docs/storage","1.docs/8.storage","carbon:datastore",{"title":78,"path":79,"stem":80,"icon":81},"Migration Guide","/docs/migration","1.docs/99.migration","ri:arrow-right-up-line",{"title":83,"path":84,"stem":85,"icon":86},"Nightly Channel","/docs/nightly","1.docs/99.nightly","ri:moon-fill","i-lucide-book-open",{"title":89,"path":90,"stem":91,"children":92,"icon":94},"Deploy","/deploy","2.deploy/0.index",[93,95,116],{"title":89,"path":90,"stem":91,"icon":94},"ri:upload-cloud-2-line",{"title":96,"path":97,"stem":98,"children":99,"page":115},"Runtimes","/deploy/runtimes","2.deploy/10.runtimes",[100,105,110],{"title":101,"path":102,"stem":103,"icon":104},"Node.js","/deploy/runtimes/node","2.deploy/10.runtimes/1.node","akar-icons:node-fill",{"title":106,"path":107,"stem":108,"icon":109},"Bun","/deploy/runtimes/bun","2.deploy/10.runtimes/bun","simple-icons:bun",{"title":111,"path":112,"stem":113,"icon":114},"Deno","/deploy/runtimes/deno","2.deploy/10.runtimes/deno","simple-icons:deno",false,{"title":117,"path":118,"stem":119,"children":120,"page":115},"Providers","/deploy/providers","2.deploy/20.providers",[121,125,129,133,137,141,145,149,153,157,161,165,169,173,177,181,185,189,193,197,201,205,209,213],{"title":122,"path":123,"stem":124},"Alwaysdata","/deploy/providers/alwaysdata","2.deploy/20.providers/alwaysdata",{"title":126,"path":127,"stem":128},"AWS Lambda","/deploy/providers/aws","2.deploy/20.providers/aws",{"title":130,"path":131,"stem":132},"AWS Amplify","/deploy/providers/aws-amplify","2.deploy/20.providers/aws-amplify",{"title":134,"path":135,"stem":136},"Azure","/deploy/providers/azure","2.deploy/20.providers/azure",{"title":138,"path":139,"stem":140},"Cleavr","/deploy/providers/cleavr","2.deploy/20.providers/cleavr",{"title":142,"path":143,"stem":144},"Cloudflare","/deploy/providers/cloudflare","2.deploy/20.providers/cloudflare",{"title":146,"path":147,"stem":148},"Deno Deploy","/deploy/providers/deno-deploy","2.deploy/20.providers/deno-deploy",{"title":150,"path":151,"stem":152},"DigitalOcean","/deploy/providers/digitalocean","2.deploy/20.providers/digitalocean",{"title":154,"path":155,"stem":156},"Firebase","/deploy/providers/firebase","2.deploy/20.providers/firebase",{"title":158,"path":159,"stem":160},"Flightcontrol","/deploy/providers/flightcontrol","2.deploy/20.providers/flightcontrol",{"title":162,"path":163,"stem":164},"Genezio","/deploy/providers/genezio","2.deploy/20.providers/genezio",{"title":166,"path":167,"stem":168},"GitHub Pages","/deploy/providers/github-pages","2.deploy/20.providers/github-pages",{"title":170,"path":171,"stem":172},"GitLab Pages","/deploy/providers/gitlab-pages","2.deploy/20.providers/gitlab-pages",{"title":174,"path":175,"stem":176},"Heroku","/deploy/providers/heroku","2.deploy/20.providers/heroku",{"title":178,"path":179,"stem":180},"IIS","/deploy/providers/iis","2.deploy/20.providers/iis",{"title":182,"path":183,"stem":184},"Koyeb","/deploy/providers/koyeb","2.deploy/20.providers/koyeb",{"title":186,"path":187,"stem":188},"Netlify","/deploy/providers/netlify","2.deploy/20.providers/netlify",{"title":190,"path":191,"stem":192},"Platform.sh","/deploy/providers/platform-sh","2.deploy/20.providers/platform-sh",{"title":194,"path":195,"stem":196},"Render.com","/deploy/providers/render","2.deploy/20.providers/render",{"title":198,"path":199,"stem":200},"StormKit","/deploy/providers/stormkit","2.deploy/20.providers/stormkit",{"title":202,"path":203,"stem":204},"Vercel","/deploy/providers/vercel","2.deploy/20.providers/vercel",{"title":206,"path":207,"stem":208},"Zeabur","/deploy/providers/zeabur","2.deploy/20.providers/zeabur",{"title":210,"path":211,"stem":212},"Zephyr Cloud","/deploy/providers/zephyr","2.deploy/20.providers/zephyr",{"title":214,"path":215,"stem":216},"Zerops","/deploy/providers/zerops","2.deploy/20.providers/zerops",{"title":218,"path":219,"stem":220,"children":221,"icon":36},"Config","/config","3.config/0.index",[222],{"title":218,"path":219,"stem":220,"icon":36},{"title":224,"path":225,"stem":226,"children":227,"icon":229},"Examples","/examples","4.examples/0.index",[228,230,235,240,245,250,254,259,264,269,274,279,284,288,293,297,301,306,311,316,321,326,331,336,341,346,350,355,360,364,369,374],{"title":224,"path":225,"stem":226,"icon":229},"i-lucide-folder-code",{"title":231,"path":232,"stem":233,"icon":234},"API Routes","/examples/api-routes","4.examples/api-routes","i-lucide-route",{"title":236,"path":237,"stem":238,"icon":239},"Auto Imports","/examples/auto-imports","4.examples/auto-imports","i-lucide-import",{"title":241,"path":242,"stem":243,"icon":244},"Cached Handler","/examples/cached-handler","4.examples/cached-handler","i-lucide-clock",{"title":246,"path":247,"stem":248,"icon":249},"Custom Error Handler","/examples/custom-error-handler","4.examples/custom-error-handler","i-lucide-alert-circle",{"title":38,"path":251,"stem":252,"icon":253},"/examples/database","4.examples/database","i-lucide-database",{"title":255,"path":256,"stem":257,"icon":258},"Elysia","/examples/elysia","4.examples/elysia","i-skill-icons-elysia-dark",{"title":260,"path":261,"stem":262,"icon":263},"Express","/examples/express","4.examples/express","i-simple-icons-express",{"title":265,"path":266,"stem":267,"icon":268},"Fastify","/examples/fastify","4.examples/fastify","i-simple-icons-fastify",{"title":270,"path":271,"stem":272,"icon":273},"Hello World","/examples/hello-world","4.examples/hello-world","i-lucide-sparkles",{"title":275,"path":276,"stem":277,"icon":278},"Hono","/examples/hono","4.examples/hono","i-logos-hono",{"title":280,"path":281,"stem":282,"icon":283},"Import Alias","/examples/import-alias","4.examples/import-alias","i-lucide-at-sign",{"title":285,"path":286,"stem":287,"icon":46},"Middleware","/examples/middleware","4.examples/middleware",{"title":289,"path":290,"stem":291,"icon":292},"Mono JSX","/examples/mono-jsx","4.examples/mono-jsx","i-lucide-brackets",{"title":294,"path":295,"stem":296,"icon":292},"Nano JSX","/examples/nano-jsx","4.examples/nano-jsx",{"title":53,"path":298,"stem":299,"icon":300},"/examples/plugins","4.examples/plugins","i-lucide-plug",{"title":302,"path":303,"stem":304,"icon":305},"Custom Renderer","/examples/renderer","4.examples/renderer","i-lucide-code",{"title":307,"path":308,"stem":309,"icon":310},"Runtime Config","/examples/runtime-config","4.examples/runtime-config","i-lucide-settings",{"title":312,"path":313,"stem":314,"icon":315},"Server Fetch","/examples/server-fetch","4.examples/server-fetch","i-lucide-arrow-right-left",{"title":317,"path":318,"stem":319,"icon":320},"Shiki","/examples/shiki","4.examples/shiki","i-lucide-highlighter",{"title":322,"path":323,"stem":324,"icon":325},"Virtual Routes","/examples/virtual-routes","4.examples/virtual-routes","i-lucide-box",{"title":327,"path":328,"stem":329,"icon":330},"Vite Nitro Plugin","/examples/vite-nitro-plugin","4.examples/vite-nitro-plugin","i-logos-vitejs",{"title":332,"path":333,"stem":334,"icon":335},"Vite RSC","/examples/vite-rsc","4.examples/vite-rsc","i-logos-react",{"title":337,"path":338,"stem":339,"icon":340},"Vite SSR HTML","/examples/vite-ssr-html","4.examples/vite-ssr-html","i-logos-html-5",{"title":342,"path":343,"stem":344,"icon":345},"SSR with Preact","/examples/vite-ssr-preact","4.examples/vite-ssr-preact","i-logos-preact",{"title":347,"path":348,"stem":349,"icon":335},"SSR with React","/examples/vite-ssr-react","4.examples/vite-ssr-react",{"title":351,"path":352,"stem":353,"icon":354},"SSR with SolidJS","/examples/vite-ssr-solid","4.examples/vite-ssr-solid","i-logos-solidjs-icon",{"title":356,"path":357,"stem":358,"icon":359},"SSR with TanStack Router","/examples/vite-ssr-tsr-react","4.examples/vite-ssr-tsr-react","i-simple-icons-tanstack",{"title":361,"path":362,"stem":363,"icon":359},"SSR with TanStack Start","/examples/vite-ssr-tss-react","4.examples/vite-ssr-tss-react",{"title":365,"path":366,"stem":367,"icon":368},"SSR with Vue Router","/examples/vite-ssr-vue-router","4.examples/vite-ssr-vue-router","i-logos-vue",{"title":370,"path":371,"stem":372,"icon":373},"Vite + tRPC","/examples/vite-trpc","4.examples/vite-trpc","i-simple-icons-trpc",{"title":375,"path":376,"stem":377,"icon":378},"WebSocket","/examples/websocket","4.examples/websocket","i-lucide-radio",{"title":380,"path":381,"stem":382,"children":383},"Blog","/blog","9.blog",[384,387],{"title":380,"path":381,"stem":385,"icon":386},"9.blog/index","i-lucide-file-text",{"title":388,"path":389,"stem":390,"icon":386},"Nitro v3 Beta is here!","/blog/v3-beta","9.blog/1.v3-beta",{"title":5,"path":392,"stem":393},"/","index",{"id":395,"title":218,"body":396,"description":5,"extension":6387,"meta":6388,"navigation":6389,"path":219,"seo":6390,"stem":220,"__hash__":6391},"content/3.config/0.index.md",{"type":397,"value":398,"toc":6292,"icon":36},"minimark",[399,402,407,414,430,441,447,498,503,527,530,559,565,580,591,623,629,655,658,667,711,717,720,727,734,763,768,776,779,810,814,819,828,831,838,843,846,851,859,862,912,917,923,926,932,940,954,966,972,981,987,993,999,1005,1011,1019,1024,1029,1034,1039,1115,1120,1123,1126,1192,1206,1240,1249,1297,1306,1388,1391,1469,1474,1480,1483,1489,1492,1529,1534,1540,1543,1600,1602,1608,1614,1617,1675,1680,1686,1733,1735,1741,1744,1803,1808,1839,1842,1883,1885,1891,1918,1925,1934,1966,1972,1980,1990,2021,2027,2030,2036,2043,2119,2126,2131,2142,2144,2150,2186,2189,2238,2244,2247,2305,2308,2313,2322,2329,2413,2418,2424,2427,2434,2469,2471,2476,2482,2492,2535,2537,2543,2549,2552,2598,2600,2605,2613,2621,2663,2668,2674,2677,2717,2722,2728,2731,2769,2774,2793,2802,2829,2833,2839,2853,2859,2875,2924,2930,2938,2981,2987,2990,2993,3048,3057,3061,3066,3092,3106,3155,3158,3163,3174,3177,3209,3215,3222,3225,3257,3262,3265,3279,3344,3346,3352,3355,3358,3370,3421,3426,3434,3437,3495,3501,3515,3518,3523,3657,3663,3668,3677,3687,3694,3705,3709,3905,3908,3913,3916,4021,4027,4033,4052,4062,4071,4081,4123,4126,4136,4140,4146,4149,4155,4187,4193,4196,4225,4231,4255,4276,4292,4323,4329,4334,4337,4371,4377,4384,4387,4419,4425,4431,4434,4466,4472,4479,4482,4514,4519,4526,4529,4587,4591,4596,4623,4626,4654,4660,4663,4702,4708,4711,4749,4754,4757,4789,4794,4801,4844,4849,4852,4904,4909,4915,4918,4949,4955,4961,4964,4972,5003,5008,5016,5024,5055,5060,5068,5079,5110,5115,5118,5169,5175,5178,5216,5222,5225,5259,5265,5273,5279,5310,5316,5324,5327,5330,5344,5406,5412,5421,5617,5622,5631,5673,5677,5682,5692,5697,5728,5733,5766,5784,5830,5835,5839,5847,5905,5907,5912,5916,5919,5957,5963,5967,5970,6044,6049,6077,6080,6115,6119,6124,6131,6182,6187,6192,6230,6235,6240,6277,6282,6288],[400,401],"read-more",{"to":34},[403,404,406],"h2",{"id":405},"general","General",[408,409,411],"h3",{"id":410},"preset",[412,413,410],"code",{},[415,416,417,418,420,421,424,425,429],"p",{},"Use ",[412,419,410],{}," option or ",[412,422,423],{},"NITRO_PRESET"," environment variable for custom ",[426,427,428],"strong",{},"production"," preset.",[415,431,432,433,436,437,440],{},"Preset for development mode is always ",[412,434,435],{},"nitro_dev"," and default ",[412,438,439],{},"node_server"," for production building a standalone Node.js server.",[415,442,443,444,446],{},"The preset will automatically be detected when the ",[412,445,410],{}," option is not set and running in known environments.",[448,449,453],"pre",{"className":450,"code":451,"language":452,"meta":5,"style":5},"language-ts shiki shiki-themes github-light github-dark github-dark","export default defineConfig({\n  preset: \"cloudflare_pages\", // deploy to Cloudflare Pages\n});\n","ts",[412,454,455,475,492],{"__ignoreMap":5},[456,457,460,464,467,471],"span",{"class":458,"line":459},"line",1,[456,461,463],{"class":462},"so5gQ","export",[456,465,466],{"class":462}," default",[456,468,470],{"class":469},"shcOC"," defineConfig",[456,472,474],{"class":473},"slsVL","({\n",[456,476,478,481,485,488],{"class":458,"line":477},2,[456,479,480],{"class":473},"  preset: ",[456,482,484],{"class":483},"sfrk1","\"cloudflare_pages\"",[456,486,487],{"class":473},", ",[456,489,491],{"class":490},"sCsY4","// deploy to Cloudflare Pages\n",[456,493,495],{"class":458,"line":494},3,[456,496,497],{"class":473},"});\n",[408,499,501],{"id":500},"debug",[412,502,500],{},[504,505,506],"ul",{},[507,508,509,510,516,517,522,523,526],"li",{},"Default: ",[412,511,512],{"className":450,"language":452,"style":5},[456,513,515],{"class":514},"suiK_","false"," (",[412,518,519],{"className":450,"language":452,"style":5},[456,520,521],{"class":514},"true"," when ",[412,524,525],{},"DEBUG"," environment variable is set)",[415,528,529],{},"Enable debug mode for verbose logging and additional development information.",[448,531,533],{"className":450,"code":532,"language":452,"meta":5,"style":5},"export default defineConfig({\n  debug: true,\n});\n",[412,534,535,545,555],{"__ignoreMap":5},[456,536,537,539,541,543],{"class":458,"line":459},[456,538,463],{"class":462},[456,540,466],{"class":462},[456,542,470],{"class":469},[456,544,474],{"class":473},[456,546,547,550,552],{"class":458,"line":477},[456,548,549],{"class":473},"  debug: ",[456,551,521],{"class":514},[456,553,554],{"class":473},",\n",[456,556,557],{"class":458,"line":494},[456,558,497],{"class":473},[408,560,562],{"id":561},"loglevel",[412,563,564],{},"logLevel",[504,566,567],{},[507,568,509,569,516,574,579],{},[412,570,571],{"className":450,"language":452,"style":5},[456,572,573],{"class":514},"3",[412,575,576],{"className":450,"language":452,"style":5},[456,577,578],{"class":514},"1"," when the testing environment is detected)",[415,581,582,583,590],{},"Log verbosity level. See ",[584,585,589],"a",{"href":586,"rel":587},"https://github.com/unjs/consola?tab=readme-ov-file#log-level",[588],"nofollow","consola"," for more information.",[448,592,594],{"className":450,"code":593,"language":452,"meta":5,"style":5},"export default defineConfig({\n  logLevel: 4, // verbose logging\n});\n",[412,595,596,606,619],{"__ignoreMap":5},[456,597,598,600,602,604],{"class":458,"line":459},[456,599,463],{"class":462},[456,601,466],{"class":462},[456,603,470],{"class":469},[456,605,474],{"class":473},[456,607,608,611,614,616],{"class":458,"line":477},[456,609,610],{"class":473},"  logLevel: ",[456,612,613],{"class":514},"4",[456,615,487],{"class":473},[456,617,618],{"class":490},"// verbose logging\n",[456,620,621],{"class":458,"line":494},[456,622,497],{"class":473},[408,624,626],{"id":625},"runtimeconfig",[412,627,628],{},"runtimeConfig",[504,630,631],{},[507,632,509,633],{},[412,634,635,638,641,644,647,650,652],{"className":450,"language":452,"style":5},[456,636,637],{"class":473},"{ ",[456,639,640],{"class":469},"nitro",[456,642,643],{"class":473},": { ",[456,645,646],{"class":462},"...",[456,648,649],{"class":473}," }, ",[456,651,646],{"class":462},[456,653,654],{"class":473},"yourOptions }",[415,656,657],{},"Server runtime configuration.",[415,659,660,663,664,666],{},[426,661,662],{},"Note:"," ",[412,665,640],{}," namespace is reserved.",[448,668,670],{"className":450,"code":669,"language":452,"meta":5,"style":5},"export default defineConfig({\n  runtimeConfig: {\n    apiSecret: \"default-secret\", // override with NITRO_API_SECRET\n  },\n});\n",[412,671,672,682,687,700,706],{"__ignoreMap":5},[456,673,674,676,678,680],{"class":458,"line":459},[456,675,463],{"class":462},[456,677,466],{"class":462},[456,679,470],{"class":469},[456,681,474],{"class":473},[456,683,684],{"class":458,"line":477},[456,685,686],{"class":473},"  runtimeConfig: {\n",[456,688,689,692,695,697],{"class":458,"line":494},[456,690,691],{"class":473},"    apiSecret: ",[456,693,694],{"class":483},"\"default-secret\"",[456,696,487],{"class":473},[456,698,699],{"class":490},"// override with NITRO_API_SECRET\n",[456,701,703],{"class":458,"line":702},4,[456,704,705],{"class":473},"  },\n",[456,707,709],{"class":458,"line":708},5,[456,710,497],{"class":473},[408,712,714],{"id":713},"compatibilitydate",[412,715,716],{},"compatibilityDate",[415,718,719],{},"Deployment providers introduce new features that Nitro presets can leverage, but some of them need to be explicitly opted into.",[415,721,722,723,726],{},"Set it to latest tested date in ",[412,724,725],{},"YYYY-MM-DD"," format to leverage latest preset features.",[415,728,729,730,733],{},"If this configuration is not provided, Nitro will use ",[412,731,732],{},"\"latest\""," behavior by default.",[448,735,737],{"className":450,"code":736,"language":452,"meta":5,"style":5},"export default defineConfig({\n  compatibilityDate: \"2025-01-01\",\n});\n",[412,738,739,749,759],{"__ignoreMap":5},[456,740,741,743,745,747],{"class":458,"line":459},[456,742,463],{"class":462},[456,744,466],{"class":462},[456,746,470],{"class":469},[456,748,474],{"class":473},[456,750,751,754,757],{"class":458,"line":477},[456,752,753],{"class":473},"  compatibilityDate: ",[456,755,756],{"class":483},"\"2025-01-01\"",[456,758,554],{"class":473},[456,760,761],{"class":458,"line":494},[456,762,497],{"class":473},[408,764,766],{"id":765},"static",[412,767,765],{},[504,769,770],{},[507,771,509,772],{},[412,773,774],{"className":450,"language":452,"style":5},[456,775,515],{"class":514},[415,777,778],{},"Enable static site generation mode.",[448,780,782],{"className":450,"code":781,"language":452,"meta":5,"style":5},"export default defineConfig({\n  static: true, // prerender all routes\n});\n",[412,783,784,794,806],{"__ignoreMap":5},[456,785,786,788,790,792],{"class":458,"line":459},[456,787,463],{"class":462},[456,789,466],{"class":462},[456,791,470],{"class":469},[456,793,474],{"class":473},[456,795,796,799,801,803],{"class":458,"line":477},[456,797,798],{"class":473},"  static: ",[456,800,521],{"class":514},[456,802,487],{"class":473},[456,804,805],{"class":490},"// prerender all routes\n",[456,807,808],{"class":458,"line":494},[456,809,497],{"class":473},[403,811,813],{"id":812},"features","Features",[408,815,817],{"id":816},"features-1",[412,818,812],{},[504,820,821],{},[507,822,509,823],{},[412,824,825],{"className":450,"language":452,"style":5},[456,826,827],{"class":473},"{}",[415,829,830],{},"Enable built-in features.",[832,833,835],"h4",{"id":834},"runtimehooks",[412,836,837],{},"runtimeHooks",[504,839,840],{},[507,841,842],{},"Default: auto-detected (enabled if there is at least one nitro plugin)",[415,844,845],{},"Enable runtime hooks for request and response.",[832,847,849],{"id":848},"websocket",[412,850,848],{},[504,852,853],{},[507,854,509,855],{},[412,856,857],{"className":450,"language":452,"style":5},[456,858,515],{"class":514},[415,860,861],{},"Enable WebSocket support.",[448,863,865],{"className":450,"code":864,"language":452,"meta":5,"style":5},"export default defineConfig({\n  features: {\n    runtimeHooks: true,\n    websocket: true, // enable WebSocket support\n  },\n});\n",[412,866,867,877,882,891,903,907],{"__ignoreMap":5},[456,868,869,871,873,875],{"class":458,"line":459},[456,870,463],{"class":462},[456,872,466],{"class":462},[456,874,470],{"class":469},[456,876,474],{"class":473},[456,878,879],{"class":458,"line":477},[456,880,881],{"class":473},"  features: {\n",[456,883,884,887,889],{"class":458,"line":494},[456,885,886],{"class":473},"    runtimeHooks: ",[456,888,521],{"class":514},[456,890,554],{"class":473},[456,892,893,896,898,900],{"class":458,"line":702},[456,894,895],{"class":473},"    websocket: ",[456,897,521],{"class":514},[456,899,487],{"class":473},[456,901,902],{"class":490},"// enable WebSocket support\n",[456,904,905],{"class":458,"line":708},[456,906,705],{"class":473},[456,908,910],{"class":458,"line":909},6,[456,911,497],{"class":473},[408,913,915],{"id":914},"experimental",[412,916,914],{},[504,918,919],{},[507,920,509,921],{},[412,922,827],{},[415,924,925],{},"Enable experimental features.",[832,927,929],{"id":928},"openapi",[412,930,931],{},"openAPI",[504,933,934],{},[507,935,509,936],{},[412,937,938],{"className":450,"language":452,"style":5},[456,939,515],{"class":514},[415,941,942,943,487,946,949,950,953],{},"Enable ",[412,944,945],{},"/_scalar",[412,947,948],{},"/_swagger"," and ",[412,951,952],{},"/_openapi.json"," endpoints.",[955,956,957],"note",{},[415,958,959,960,965],{},"Prefer using the top-level ",[584,961,963],{"href":962},"#openapi",[412,964,931],{}," option for configuration.",[832,967,969],{"id":968},"typescriptbundlerresolution",[412,970,971],{},"typescriptBundlerResolution",[415,973,974,975,980],{},"Enable TypeScript bundler module resolution. See ",[584,976,979],{"href":977,"rel":978},"https://github.com/microsoft/TypeScript/pull/51669",[588],"TypeScript#51669",".",[832,982,984],{"id":983},"asynccontext",[412,985,986],{},"asyncContext",[415,988,989,990,980],{},"Enable native async context support for ",[412,991,992],{},"useRequest()",[832,994,996],{"id":995},"sourcemapminify",[412,997,998],{},"sourcemapMinify",[415,1000,1001,1002,1004],{},"Set to ",[412,1003,515],{}," to disable experimental sourcemap minification.",[832,1006,1008],{"id":1007},"envexpansion",[412,1009,1010],{},"envExpansion",[415,1012,1013,1014,980],{},"Allow env expansion in runtime config. See ",[584,1015,1018],{"href":1016,"rel":1017},"https://github.com/nitrojs/nitro/pull/2043",[588],"#2043",[832,1020,1022],{"id":1021},"database",[412,1023,1021],{},[415,1025,1026,1027,980],{},"Enable experimental database support. See ",[584,1028,38],{"href":39},[832,1030,1032],{"id":1031},"tasks",[412,1033,1031],{},[415,1035,1036,1037,980],{},"Enable experimental tasks support. See ",[584,1038,58],{"href":59},[448,1040,1042],{"className":450,"code":1041,"language":452,"meta":5,"style":5},"export default defineConfig({\n  experimental: {\n    typescriptBundlerResolution: true,\n    asyncContext: true,\n    envExpansion: true,\n    database: true,\n    tasks: true,\n  },\n});\n",[412,1043,1044,1054,1059,1068,1077,1086,1095,1105,1110],{"__ignoreMap":5},[456,1045,1046,1048,1050,1052],{"class":458,"line":459},[456,1047,463],{"class":462},[456,1049,466],{"class":462},[456,1051,470],{"class":469},[456,1053,474],{"class":473},[456,1055,1056],{"class":458,"line":477},[456,1057,1058],{"class":473},"  experimental: {\n",[456,1060,1061,1064,1066],{"class":458,"line":494},[456,1062,1063],{"class":473},"    typescriptBundlerResolution: ",[456,1065,521],{"class":514},[456,1067,554],{"class":473},[456,1069,1070,1073,1075],{"class":458,"line":702},[456,1071,1072],{"class":473},"    asyncContext: ",[456,1074,521],{"class":514},[456,1076,554],{"class":473},[456,1078,1079,1082,1084],{"class":458,"line":708},[456,1080,1081],{"class":473},"    envExpansion: ",[456,1083,521],{"class":514},[456,1085,554],{"class":473},[456,1087,1088,1091,1093],{"class":458,"line":909},[456,1089,1090],{"class":473},"    database: ",[456,1092,521],{"class":514},[456,1094,554],{"class":473},[456,1096,1098,1101,1103],{"class":458,"line":1097},7,[456,1099,1100],{"class":473},"    tasks: ",[456,1102,521],{"class":514},[456,1104,554],{"class":473},[456,1106,1108],{"class":458,"line":1107},8,[456,1109,705],{"class":473},[456,1111,1113],{"class":458,"line":1112},9,[456,1114,497],{"class":473},[408,1116,1118],{"id":1117},"openapi-1",[412,1119,931],{},[415,1121,1122],{},"Top-level OpenAPI configuration.",[415,1124,1125],{},"You can pass an object to modify your OpenAPI specification:",[448,1127,1131],{"className":1128,"code":1129,"language":1130,"meta":5,"style":5},"language-js shiki shiki-themes github-light github-dark github-dark","openAPI: {\n  meta: {\n    title: 'My Awesome Project',\n    description: 'This might become the next big thing.',\n    version: '1.0'\n  }\n}\n","js",[412,1132,1133,1140,1147,1160,1172,1182,1187],{"__ignoreMap":5},[456,1134,1135,1137],{"class":458,"line":459},[456,1136,931],{"class":469},[456,1138,1139],{"class":473},": {\n",[456,1141,1142,1145],{"class":458,"line":477},[456,1143,1144],{"class":469},"  meta",[456,1146,1139],{"class":473},[456,1148,1149,1152,1155,1158],{"class":458,"line":494},[456,1150,1151],{"class":469},"    title",[456,1153,1154],{"class":473},": ",[456,1156,1157],{"class":483},"'My Awesome Project'",[456,1159,554],{"class":473},[456,1161,1162,1165,1167,1170],{"class":458,"line":702},[456,1163,1164],{"class":469},"    description",[456,1166,1154],{"class":473},[456,1168,1169],{"class":483},"'This might become the next big thing.'",[456,1171,554],{"class":473},[456,1173,1174,1177,1179],{"class":458,"line":708},[456,1175,1176],{"class":469},"    version",[456,1178,1154],{"class":473},[456,1180,1181],{"class":483},"'1.0'\n",[456,1183,1184],{"class":458,"line":909},[456,1185,1186],{"class":473},"  }\n",[456,1188,1189],{"class":458,"line":1097},[456,1190,1191],{"class":473},"}\n",[415,1193,1194,1195,1197,1198,1201,1202,1205],{},"These routes are disabled by default in production. To enable them, use the ",[412,1196,428],{}," key.\n",[412,1199,1200],{},"\"runtime\""," allows middleware usage, and ",[412,1203,1204],{},"\"prerender\""," is the most efficient because the JSON response is constant.",[448,1207,1209],{"className":1128,"code":1208,"language":1130,"meta":5,"style":5},"openAPI: {\n    // IMPORTANT: make sure to protect OpenAPI routes if necessary!\n    production: \"runtime\", // or \"prerender\"\n}\n",[412,1210,1211,1217,1222,1236],{"__ignoreMap":5},[456,1212,1213,1215],{"class":458,"line":459},[456,1214,931],{"class":469},[456,1216,1139],{"class":473},[456,1218,1219],{"class":458,"line":477},[456,1220,1221],{"class":490},"    // IMPORTANT: make sure to protect OpenAPI routes if necessary!\n",[456,1223,1224,1227,1229,1231,1233],{"class":458,"line":494},[456,1225,1226],{"class":469},"    production",[456,1228,1154],{"class":473},[456,1230,1200],{"class":483},[456,1232,487],{"class":473},[456,1234,1235],{"class":490},"// or \"prerender\"\n",[456,1237,1238],{"class":458,"line":702},[456,1239,1191],{"class":473},[415,1241,1242,1243,1248],{},"If you like to customize the Scalar integration, you can ",[584,1244,1247],{"href":1245,"rel":1246},"https://github.com/scalar/scalar",[588],"pass a configuration object"," like this:",[448,1250,1252],{"className":1128,"code":1251,"language":1130,"meta":5,"style":5},"openAPI: {\n  ui: {\n    scalar: {\n      theme: 'purple'\n    }\n  }\n}\n",[412,1253,1254,1260,1267,1274,1284,1289,1293],{"__ignoreMap":5},[456,1255,1256,1258],{"class":458,"line":459},[456,1257,931],{"class":469},[456,1259,1139],{"class":473},[456,1261,1262,1265],{"class":458,"line":477},[456,1263,1264],{"class":469},"  ui",[456,1266,1139],{"class":473},[456,1268,1269,1272],{"class":458,"line":494},[456,1270,1271],{"class":469},"    scalar",[456,1273,1139],{"class":473},[456,1275,1276,1279,1281],{"class":458,"line":702},[456,1277,1278],{"class":469},"      theme",[456,1280,1154],{"class":473},[456,1282,1283],{"class":483},"'purple'\n",[456,1285,1286],{"class":458,"line":708},[456,1287,1288],{"class":473},"    }\n",[456,1290,1291],{"class":458,"line":909},[456,1292,1186],{"class":473},[456,1294,1295],{"class":458,"line":1097},[456,1296,1191],{"class":473},[415,1298,1299,1300,1305],{},"If you like to customize the Swagger UI, you can pass any ",[584,1301,1304],{"href":1302,"rel":1303},"https://swagger.io/docs/open-source-tools/swagger-ui/usage/configuration/",[588],"Swagger UI configuration option",":",[448,1307,1309],{"className":1128,"code":1308,"language":1130,"meta":5,"style":5},"openAPI: {\n  ui: {\n    swagger: {\n      persistAuthorization: true,\n      deepLinking: true,\n      docExpansion: 'none',\n      filter: true,\n    }\n  }\n}\n",[412,1310,1311,1317,1323,1330,1341,1352,1364,1375,1379,1383],{"__ignoreMap":5},[456,1312,1313,1315],{"class":458,"line":459},[456,1314,931],{"class":469},[456,1316,1139],{"class":473},[456,1318,1319,1321],{"class":458,"line":477},[456,1320,1264],{"class":469},[456,1322,1139],{"class":473},[456,1324,1325,1328],{"class":458,"line":494},[456,1326,1327],{"class":469},"    swagger",[456,1329,1139],{"class":473},[456,1331,1332,1335,1337,1339],{"class":458,"line":702},[456,1333,1334],{"class":469},"      persistAuthorization",[456,1336,1154],{"class":473},[456,1338,521],{"class":514},[456,1340,554],{"class":473},[456,1342,1343,1346,1348,1350],{"class":458,"line":708},[456,1344,1345],{"class":469},"      deepLinking",[456,1347,1154],{"class":473},[456,1349,521],{"class":514},[456,1351,554],{"class":473},[456,1353,1354,1357,1359,1362],{"class":458,"line":909},[456,1355,1356],{"class":469},"      docExpansion",[456,1358,1154],{"class":473},[456,1360,1361],{"class":483},"'none'",[456,1363,554],{"class":473},[456,1365,1366,1369,1371,1373],{"class":458,"line":1097},[456,1367,1368],{"class":469},"      filter",[456,1370,1154],{"class":473},[456,1372,521],{"class":514},[456,1374,554],{"class":473},[456,1376,1377],{"class":458,"line":1107},[456,1378,1288],{"class":473},[456,1380,1381],{"class":458,"line":1112},[456,1382,1186],{"class":473},[456,1384,1386],{"class":458,"line":1385},10,[456,1387,1191],{"class":473},[415,1389,1390],{},"Or if you want to customize the endpoints:",[448,1392,1394],{"className":1128,"code":1393,"language":1130,"meta":5,"style":5},"openAPI: {\n  route: \"/_docs/openapi.json\",\n  ui: {\n    scalar: {\n      route: \"/_docs/scalar\"\n    },\n    swagger: {\n      route: \"/_docs/swagger\"\n    }\n  }\n}\n",[412,1395,1396,1402,1414,1420,1426,1436,1441,1447,1456,1460,1464],{"__ignoreMap":5},[456,1397,1398,1400],{"class":458,"line":459},[456,1399,931],{"class":469},[456,1401,1139],{"class":473},[456,1403,1404,1407,1409,1412],{"class":458,"line":477},[456,1405,1406],{"class":469},"  route",[456,1408,1154],{"class":473},[456,1410,1411],{"class":483},"\"/_docs/openapi.json\"",[456,1413,554],{"class":473},[456,1415,1416,1418],{"class":458,"line":494},[456,1417,1264],{"class":469},[456,1419,1139],{"class":473},[456,1421,1422,1424],{"class":458,"line":702},[456,1423,1271],{"class":469},[456,1425,1139],{"class":473},[456,1427,1428,1431,1433],{"class":458,"line":708},[456,1429,1430],{"class":469},"      route",[456,1432,1154],{"class":473},[456,1434,1435],{"class":483},"\"/_docs/scalar\"\n",[456,1437,1438],{"class":458,"line":909},[456,1439,1440],{"class":473},"    },\n",[456,1442,1443,1445],{"class":458,"line":1097},[456,1444,1327],{"class":469},[456,1446,1139],{"class":473},[456,1448,1449,1451,1453],{"class":458,"line":1107},[456,1450,1430],{"class":469},[456,1452,1154],{"class":473},[456,1454,1455],{"class":483},"\"/_docs/swagger\"\n",[456,1457,1458],{"class":458,"line":1112},[456,1459,1288],{"class":473},[456,1461,1462],{"class":458,"line":1385},[456,1463,1186],{"class":473},[456,1465,1467],{"class":458,"line":1466},11,[456,1468,1191],{"class":473},[408,1470,1472],{"id":1471},"future",[412,1473,1471],{},[504,1475,1476],{},[507,1477,509,1478],{},[412,1479,827],{},[415,1481,1482],{},"New features pending for a major version to avoid breaking changes.",[832,1484,1486],{"id":1485},"nativeswr",[412,1487,1488],{},"nativeSWR",[415,1490,1491],{},"Uses built-in SWR functionality (using caching layer and storage) for Netlify and Vercel presets instead of falling back to ISR behavior.",[448,1493,1495],{"className":450,"code":1494,"language":452,"meta":5,"style":5},"export default defineConfig({\n  future: {\n    nativeSWR: true,\n  },\n});\n",[412,1496,1497,1507,1512,1521,1525],{"__ignoreMap":5},[456,1498,1499,1501,1503,1505],{"class":458,"line":459},[456,1500,463],{"class":462},[456,1502,466],{"class":462},[456,1504,470],{"class":469},[456,1506,474],{"class":473},[456,1508,1509],{"class":458,"line":477},[456,1510,1511],{"class":473},"  future: {\n",[456,1513,1514,1517,1519],{"class":458,"line":494},[456,1515,1516],{"class":473},"    nativeSWR: ",[456,1518,521],{"class":514},[456,1520,554],{"class":473},[456,1522,1523],{"class":458,"line":702},[456,1524,705],{"class":473},[456,1526,1527],{"class":458,"line":708},[456,1528,497],{"class":473},[408,1530,1532],{"id":1531},"storage",[412,1533,1531],{},[504,1535,1536],{},[507,1537,509,1538],{},[412,1539,827],{},[415,1541,1542],{},"Storage configuration.",[448,1544,1546],{"className":450,"code":1545,"language":452,"meta":5,"style":5},"export default defineConfig({\n  storage: {\n    redis: {\n      driver: \"redis\",\n      url: \"redis://localhost:6379\",\n    },\n  },\n});\n",[412,1547,1548,1558,1563,1568,1578,1588,1592,1596],{"__ignoreMap":5},[456,1549,1550,1552,1554,1556],{"class":458,"line":459},[456,1551,463],{"class":462},[456,1553,466],{"class":462},[456,1555,470],{"class":469},[456,1557,474],{"class":473},[456,1559,1560],{"class":458,"line":477},[456,1561,1562],{"class":473},"  storage: {\n",[456,1564,1565],{"class":458,"line":494},[456,1566,1567],{"class":473},"    redis: {\n",[456,1569,1570,1573,1576],{"class":458,"line":702},[456,1571,1572],{"class":473},"      driver: ",[456,1574,1575],{"class":483},"\"redis\"",[456,1577,554],{"class":473},[456,1579,1580,1583,1586],{"class":458,"line":708},[456,1581,1582],{"class":473},"      url: ",[456,1584,1585],{"class":483},"\"redis://localhost:6379\"",[456,1587,554],{"class":473},[456,1589,1590],{"class":458,"line":909},[456,1591,1440],{"class":473},[456,1593,1594],{"class":458,"line":1097},[456,1595,705],{"class":473},[456,1597,1598],{"class":458,"line":1107},[456,1599,497],{"class":473},[400,1601],{"to":74},[408,1603,1605],{"id":1604},"devstorage",[412,1606,1607],{},"devStorage",[504,1609,1610],{},[507,1611,509,1612],{},[412,1613,827],{},[415,1615,1616],{},"Storage configuration overrides for development mode.",[448,1618,1620],{"className":450,"code":1619,"language":452,"meta":5,"style":5},"export default defineConfig({\n  devStorage: {\n    redis: {\n      driver: \"fs\",\n      base: \"./data/redis\", // use filesystem in development\n    },\n  },\n});\n",[412,1621,1622,1632,1637,1641,1650,1663,1667,1671],{"__ignoreMap":5},[456,1623,1624,1626,1628,1630],{"class":458,"line":459},[456,1625,463],{"class":462},[456,1627,466],{"class":462},[456,1629,470],{"class":469},[456,1631,474],{"class":473},[456,1633,1634],{"class":458,"line":477},[456,1635,1636],{"class":473},"  devStorage: {\n",[456,1638,1639],{"class":458,"line":494},[456,1640,1567],{"class":473},[456,1642,1643,1645,1648],{"class":458,"line":702},[456,1644,1572],{"class":473},[456,1646,1647],{"class":483},"\"fs\"",[456,1649,554],{"class":473},[456,1651,1652,1655,1658,1660],{"class":458,"line":708},[456,1653,1654],{"class":473},"      base: ",[456,1656,1657],{"class":483},"\"./data/redis\"",[456,1659,487],{"class":473},[456,1661,1662],{"class":490},"// use filesystem in development\n",[456,1664,1665],{"class":458,"line":909},[456,1666,1440],{"class":473},[456,1668,1669],{"class":458,"line":1097},[456,1670,705],{"class":473},[456,1672,1673],{"class":458,"line":1107},[456,1674,497],{"class":473},[408,1676,1678],{"id":1677},"database-1",[412,1679,1021],{},[415,1681,1682,1683,980],{},"Database connection configurations. Requires ",[412,1684,1685],{},"experimental.database: true",[448,1687,1689],{"className":450,"code":1688,"language":452,"meta":5,"style":5},"database: {\n  default: {\n    connector: \"sqlite\",\n    options: { name: \"db\" }\n  }\n}\n",[412,1690,1691,1697,1704,1714,1725,1729],{"__ignoreMap":5},[456,1692,1693,1695],{"class":458,"line":459},[456,1694,1021],{"class":469},[456,1696,1139],{"class":473},[456,1698,1699,1702],{"class":458,"line":477},[456,1700,1701],{"class":462},"  default",[456,1703,1139],{"class":473},[456,1705,1706,1709,1712],{"class":458,"line":494},[456,1707,1708],{"class":473},"    connector: ",[456,1710,1711],{"class":483},"\"sqlite\"",[456,1713,554],{"class":473},[456,1715,1716,1719,1722],{"class":458,"line":702},[456,1717,1718],{"class":473},"    options: { name: ",[456,1720,1721],{"class":483},"\"db\"",[456,1723,1724],{"class":473}," }\n",[456,1726,1727],{"class":458,"line":708},[456,1728,1186],{"class":473},[456,1730,1731],{"class":458,"line":909},[456,1732,1191],{"class":473},[400,1734],{"to":39},[408,1736,1738],{"id":1737},"devdatabase",[412,1739,1740],{},"devDatabase",[415,1742,1743],{},"Database connection configuration overrides for development mode.",[448,1745,1747],{"className":450,"code":1746,"language":452,"meta":5,"style":5},"export default defineConfig({\n  devDatabase: {\n    default: {\n      connector: \"sqlite\",\n      options: { name: \"db-dev\" }, // separate dev database\n    },\n  },\n});\n",[412,1748,1749,1759,1764,1769,1778,1791,1795,1799],{"__ignoreMap":5},[456,1750,1751,1753,1755,1757],{"class":458,"line":459},[456,1752,463],{"class":462},[456,1754,466],{"class":462},[456,1756,470],{"class":469},[456,1758,474],{"class":473},[456,1760,1761],{"class":458,"line":477},[456,1762,1763],{"class":473},"  devDatabase: {\n",[456,1765,1766],{"class":458,"line":494},[456,1767,1768],{"class":473},"    default: {\n",[456,1770,1771,1774,1776],{"class":458,"line":702},[456,1772,1773],{"class":473},"      connector: ",[456,1775,1711],{"class":483},[456,1777,554],{"class":473},[456,1779,1780,1783,1786,1788],{"class":458,"line":708},[456,1781,1782],{"class":473},"      options: { name: ",[456,1784,1785],{"class":483},"\"db-dev\"",[456,1787,649],{"class":473},[456,1789,1790],{"class":490},"// separate dev database\n",[456,1792,1793],{"class":458,"line":909},[456,1794,1440],{"class":473},[456,1796,1797],{"class":458,"line":1097},[456,1798,705],{"class":473},[456,1800,1801],{"class":458,"line":1107},[456,1802,497],{"class":473},[408,1804,1806],{"id":1805},"renderer",[412,1807,1805],{},[504,1809,1810],{},[507,1811,1812,1813,1817,1818],{},"Type: ",[412,1814,1815],{"className":450,"language":452,"style":5},[456,1816,515],{"class":514}," | ",[412,1819,1820,1823,1826,1829,1831,1834,1836],{"className":450,"language":452,"style":5},[456,1821,1822],{"class":473},"{ handler",[456,1824,1825],{"class":462},"?:",[456,1827,1828],{"class":473}," string, static",[456,1830,1825],{"class":462},[456,1832,1833],{"class":473}," boolean, template",[456,1835,1825],{"class":462},[456,1837,1838],{"class":473}," string }",[415,1840,1841],{},"Points to main render entry (file should export an event handler as default).",[448,1843,1845],{"className":450,"code":1844,"language":452,"meta":5,"style":5},"export default defineConfig({\n  renderer: {\n    handler: \"~/renderer\", // path to the render handler\n  },\n});\n",[412,1846,1847,1857,1862,1875,1879],{"__ignoreMap":5},[456,1848,1849,1851,1853,1855],{"class":458,"line":459},[456,1850,463],{"class":462},[456,1852,466],{"class":462},[456,1854,470],{"class":469},[456,1856,474],{"class":473},[456,1858,1859],{"class":458,"line":477},[456,1860,1861],{"class":473},"  renderer: {\n",[456,1863,1864,1867,1870,1872],{"class":458,"line":494},[456,1865,1866],{"class":473},"    handler: ",[456,1868,1869],{"class":483},"\"~/renderer\"",[456,1871,487],{"class":473},[456,1873,1874],{"class":490},"// path to the render handler\n",[456,1876,1877],{"class":458,"line":702},[456,1878,705],{"class":473},[456,1880,1881],{"class":458,"line":708},[456,1882,497],{"class":473},[400,1884],{"to":19},[408,1886,1888],{"id":1887},"servestatic",[412,1889,1890],{},"serveStatic",[504,1892,1893,1915],{},[507,1894,1812,1895,1817,1900,1817,1905,1817,1910],{},[412,1896,1897],{"className":450,"language":452,"style":5},[456,1898,1899],{"class":473},"boolean",[412,1901,1902],{"className":450,"language":452,"style":5},[456,1903,1904],{"class":483},"'node'",[412,1906,1907],{"className":450,"language":452,"style":5},[456,1908,1909],{"class":483},"'deno'",[412,1911,1912],{"className":450,"language":452,"style":5},[456,1913,1914],{"class":483},"'inline'",[507,1916,1917],{},"Default: depends on the deployment preset used.",[415,1919,1920,1921,1924],{},"Serve ",[412,1922,1923],{},"public/"," assets in production.",[415,1926,1927,1929,1930,1933],{},[426,1928,662],{}," It is highly recommended that your edge CDN (Nginx, Apache, Cloud) serves the ",[412,1931,1932],{},".output/public/"," directory instead to enable compression and higher level caching.",[448,1935,1937],{"className":450,"code":1936,"language":452,"meta":5,"style":5},"export default defineConfig({\n  serveStatic: \"node\", // serve static assets using Node.js\n});\n",[412,1938,1939,1949,1962],{"__ignoreMap":5},[456,1940,1941,1943,1945,1947],{"class":458,"line":459},[456,1942,463],{"class":462},[456,1944,466],{"class":462},[456,1946,470],{"class":469},[456,1948,474],{"class":473},[456,1950,1951,1954,1957,1959],{"class":458,"line":477},[456,1952,1953],{"class":473},"  serveStatic: ",[456,1955,1956],{"class":483},"\"node\"",[456,1958,487],{"class":473},[456,1960,1961],{"class":490},"// serve static assets using Node.js\n",[456,1963,1964],{"class":458,"line":494},[456,1965,497],{"class":473},[408,1967,1969],{"id":1968},"nopublicdir",[412,1970,1971],{},"noPublicDir",[504,1973,1974],{},[507,1975,509,1976],{},[412,1977,1978],{"className":450,"language":452,"style":5},[456,1979,515],{"class":514},[415,1981,1982,1983,1986,1987,1989],{},"If enabled, disables ",[412,1984,1985],{},".output/public"," directory creation. Skips copying ",[412,1988,1923],{}," dir and also disables pre-rendering.",[448,1991,1993],{"className":450,"code":1992,"language":452,"meta":5,"style":5},"export default defineConfig({\n  noPublicDir: true, // skip public directory output\n});\n",[412,1994,1995,2005,2017],{"__ignoreMap":5},[456,1996,1997,1999,2001,2003],{"class":458,"line":459},[456,1998,463],{"class":462},[456,2000,466],{"class":462},[456,2002,470],{"class":469},[456,2004,474],{"class":473},[456,2006,2007,2010,2012,2014],{"class":458,"line":477},[456,2008,2009],{"class":473},"  noPublicDir: ",[456,2011,521],{"class":514},[456,2013,487],{"class":473},[456,2015,2016],{"class":490},"// skip public directory output\n",[456,2018,2019],{"class":458,"line":494},[456,2020,497],{"class":473},[408,2022,2024],{"id":2023},"publicassets",[412,2025,2026],{},"publicAssets",[415,2028,2029],{},"Public asset directories to serve in development and bundle in production.",[415,2031,2032,2033,2035],{},"If a ",[412,2034,1923],{}," directory is detected, it will be added by default, but you can add more by yourself too!",[415,2037,2038,2039,2042],{},"It's possible to set Cache-Control headers for assets using the ",[412,2040,2041],{},"maxAge"," option:",[448,2044,2046],{"className":450,"code":2045,"language":452,"meta":5,"style":5},"  publicAssets: [\n    {\n      baseURL: \"images\",\n      dir: \"public/images\",\n      maxAge: 60 * 60 * 24 * 7, // 7 days\n    },\n  ],\n",[412,2047,2048,2056,2061,2071,2081,2110,2114],{"__ignoreMap":5},[456,2049,2050,2053],{"class":458,"line":459},[456,2051,2052],{"class":469},"  publicAssets",[456,2054,2055],{"class":473},": [\n",[456,2057,2058],{"class":458,"line":477},[456,2059,2060],{"class":473},"    {\n",[456,2062,2063,2066,2069],{"class":458,"line":494},[456,2064,2065],{"class":473},"      baseURL: ",[456,2067,2068],{"class":483},"\"images\"",[456,2070,554],{"class":473},[456,2072,2073,2076,2079],{"class":458,"line":702},[456,2074,2075],{"class":473},"      dir: ",[456,2077,2078],{"class":483},"\"public/images\"",[456,2080,554],{"class":473},[456,2082,2083,2086,2089,2092,2095,2097,2100,2102,2105,2107],{"class":458,"line":708},[456,2084,2085],{"class":473},"      maxAge: ",[456,2087,2088],{"class":514},"60",[456,2090,2091],{"class":462}," *",[456,2093,2094],{"class":514}," 60",[456,2096,2091],{"class":462},[456,2098,2099],{"class":514}," 24",[456,2101,2091],{"class":462},[456,2103,2104],{"class":514}," 7",[456,2106,487],{"class":473},[456,2108,2109],{"class":490},"// 7 days\n",[456,2111,2112],{"class":458,"line":909},[456,2113,1440],{"class":473},[456,2115,2116],{"class":458,"line":1097},[456,2117,2118],{"class":473},"  ],\n",[415,2120,2121,2122,2125],{},"The config above generates the following header in the assets under ",[412,2123,2124],{},"public/images/"," folder:",[415,2127,2128],{},[412,2129,2130],{},"cache-control: public, max-age=604800, immutable",[415,2132,2133,2134,2137,2138,2141],{},"The ",[412,2135,2136],{},"dir"," option is where your files live on your file system; the ",[412,2139,2140],{},"baseURL"," option is the folder they will be accessible from when served/bundled.",[400,2143],{"to":29},[408,2145,2147],{"id":2146},"compresspublicassets",[412,2148,2149],{},"compressPublicAssets",[504,2151,2152],{},[507,2153,509,2154],{},[412,2155,2156,2158,2161,2163,2165,2167,2170,2172,2174,2176,2179,2181,2183],{"className":450,"language":452,"style":5},[456,2157,637],{"class":473},[456,2159,2160],{"class":469},"gzip",[456,2162,1154],{"class":473},[456,2164,515],{"class":514},[456,2166,487],{"class":473},[456,2168,2169],{"class":469},"brotli",[456,2171,1154],{"class":473},[456,2173,515],{"class":514},[456,2175,487],{"class":473},[456,2177,2178],{"class":469},"zstd",[456,2180,1154],{"class":473},[456,2182,515],{"class":514},[456,2184,2185],{"class":473}," }",[415,2187,2188],{},"If enabled, Nitro will generate a pre-compressed (gzip, brotli, and/or zstd) version of supported types of public assets and prerendered routes\nlarger than 1024 bytes into the public directory. Default compression levels are used. Using this option you can support zero overhead asset compression without using a CDN.",[448,2190,2192],{"className":450,"code":2191,"language":452,"meta":5,"style":5},"export default defineConfig({\n  compressPublicAssets: {\n    gzip: true,\n    brotli: true, // enable gzip and brotli pre-compression\n  },\n});\n",[412,2193,2194,2204,2209,2218,2230,2234],{"__ignoreMap":5},[456,2195,2196,2198,2200,2202],{"class":458,"line":459},[456,2197,463],{"class":462},[456,2199,466],{"class":462},[456,2201,470],{"class":469},[456,2203,474],{"class":473},[456,2205,2206],{"class":458,"line":477},[456,2207,2208],{"class":473},"  compressPublicAssets: {\n",[456,2210,2211,2214,2216],{"class":458,"line":494},[456,2212,2213],{"class":473},"    gzip: ",[456,2215,521],{"class":514},[456,2217,554],{"class":473},[456,2219,2220,2223,2225,2227],{"class":458,"line":702},[456,2221,2222],{"class":473},"    brotli: ",[456,2224,521],{"class":514},[456,2226,487],{"class":473},[456,2228,2229],{"class":490},"// enable gzip and brotli pre-compression\n",[456,2231,2232],{"class":458,"line":708},[456,2233,705],{"class":473},[456,2235,2236],{"class":458,"line":909},[456,2237,497],{"class":473},[408,2239,2241],{"id":2240},"serverassets",[412,2242,2243],{},"serverAssets",[415,2245,2246],{},"Assets can be accessed in server logic and bundled in production.",[448,2248,2250],{"className":450,"code":2249,"language":452,"meta":5,"style":5},"export default defineConfig({\n  serverAssets: [\n    {\n      baseName: \"templates\",\n      dir: \"./templates\", // bundle templates/ as server assets\n    },\n  ],\n});\n",[412,2251,2252,2262,2267,2271,2281,2293,2297,2301],{"__ignoreMap":5},[456,2253,2254,2256,2258,2260],{"class":458,"line":459},[456,2255,463],{"class":462},[456,2257,466],{"class":462},[456,2259,470],{"class":469},[456,2261,474],{"class":473},[456,2263,2264],{"class":458,"line":477},[456,2265,2266],{"class":473},"  serverAssets: [\n",[456,2268,2269],{"class":458,"line":494},[456,2270,2060],{"class":473},[456,2272,2273,2276,2279],{"class":458,"line":702},[456,2274,2275],{"class":473},"      baseName: ",[456,2277,2278],{"class":483},"\"templates\"",[456,2280,554],{"class":473},[456,2282,2283,2285,2288,2290],{"class":458,"line":708},[456,2284,2075],{"class":473},[456,2286,2287],{"class":483},"\"./templates\"",[456,2289,487],{"class":473},[456,2291,2292],{"class":490},"// bundle templates/ as server assets\n",[456,2294,2295],{"class":458,"line":909},[456,2296,1440],{"class":473},[456,2298,2299],{"class":458,"line":1097},[456,2300,2118],{"class":473},[456,2302,2303],{"class":458,"line":1107},[456,2304,497],{"class":473},[400,2306],{"to":2307},"/docs/assets#server-assets",[408,2309,2311],{"id":2310},"modules",[412,2312,2310],{},[504,2314,2315],{},[507,2316,509,2317],{},[412,2318,2319],{"className":450,"language":452,"style":5},[456,2320,2321],{"class":473},"[]",[415,2323,2324,2325,2328],{},"An array of Nitro modules. Modules can be a string (path), a module object with a ",[412,2326,2327],{},"setup"," function, or a function.",[448,2330,2332],{"className":450,"code":2331,"language":452,"meta":5,"style":5},"export default defineConfig({\n  modules: [\n    \"./modules/my-module.ts\",\n    (nitro) => {\n      nitro.hooks.hook(\"compiled\", () => { /* ... */ });\n    },\n  ],\n});\n",[412,2333,2334,2344,2349,2356,2373,2401,2405,2409],{"__ignoreMap":5},[456,2335,2336,2338,2340,2342],{"class":458,"line":459},[456,2337,463],{"class":462},[456,2339,466],{"class":462},[456,2341,470],{"class":469},[456,2343,474],{"class":473},[456,2345,2346],{"class":458,"line":477},[456,2347,2348],{"class":473},"  modules: [\n",[456,2350,2351,2354],{"class":458,"line":494},[456,2352,2353],{"class":483},"    \"./modules/my-module.ts\"",[456,2355,554],{"class":473},[456,2357,2358,2361,2364,2367,2370],{"class":458,"line":702},[456,2359,2360],{"class":473},"    (",[456,2362,640],{"class":2363},"sQHwn",[456,2365,2366],{"class":473},") ",[456,2368,2369],{"class":462},"=>",[456,2371,2372],{"class":473}," {\n",[456,2374,2375,2378,2381,2384,2387,2390,2392,2395,2398],{"class":458,"line":708},[456,2376,2377],{"class":473},"      nitro.hooks.",[456,2379,2380],{"class":469},"hook",[456,2382,2383],{"class":473},"(",[456,2385,2386],{"class":483},"\"compiled\"",[456,2388,2389],{"class":473},", () ",[456,2391,2369],{"class":462},[456,2393,2394],{"class":473}," { ",[456,2396,2397],{"class":490},"/* ... */",[456,2399,2400],{"class":473}," });\n",[456,2402,2403],{"class":458,"line":909},[456,2404,1440],{"class":473},[456,2406,2407],{"class":458,"line":1097},[456,2408,2118],{"class":473},[456,2410,2411],{"class":458,"line":1107},[456,2412,497],{"class":473},[408,2414,2416],{"id":2415},"plugins",[412,2417,2415],{},[504,2419,2420],{},[507,2421,509,2422],{},[412,2423,2321],{},[415,2425,2426],{},"An array of paths to nitro plugins. They will be executed by order on the first initialization.",[415,2428,2429,2430,2433],{},"Note that Nitro auto-registers the plugins in the ",[412,2431,2432],{},"plugins/"," directory.",[448,2435,2437],{"className":450,"code":2436,"language":452,"meta":5,"style":5},"export default defineConfig({\n  plugins: [\n    \"~/plugins/my-plugin.ts\",\n  ],\n});\n",[412,2438,2439,2449,2454,2461,2465],{"__ignoreMap":5},[456,2440,2441,2443,2445,2447],{"class":458,"line":459},[456,2442,463],{"class":462},[456,2444,466],{"class":462},[456,2446,470],{"class":469},[456,2448,474],{"class":473},[456,2450,2451],{"class":458,"line":477},[456,2452,2453],{"class":473},"  plugins: [\n",[456,2455,2456,2459],{"class":458,"line":494},[456,2457,2458],{"class":483},"    \"~/plugins/my-plugin.ts\"",[456,2460,554],{"class":473},[456,2462,2463],{"class":458,"line":702},[456,2464,2118],{"class":473},[456,2466,2467],{"class":458,"line":708},[456,2468,497],{"class":473},[400,2470],{"to":54},[408,2472,2474],{"id":2473},"tasks-1",[412,2475,1031],{},[504,2477,2478],{},[507,2479,509,2480],{},[412,2481,827],{},[415,2483,2484,2485,2488,2489,980],{},"Task definitions. Each key is a task name with a ",[412,2486,2487],{},"handler"," path and optional ",[412,2490,2491],{},"description",[448,2493,2495],{"className":450,"code":2494,"language":452,"meta":5,"style":5},"tasks: {\n  'db:migrate': {\n    handler: './tasks/db-migrate',\n    description: 'Run database migrations'\n  }\n}\n",[412,2496,2497,2503,2510,2519,2527,2531],{"__ignoreMap":5},[456,2498,2499,2501],{"class":458,"line":459},[456,2500,1031],{"class":469},[456,2502,1139],{"class":473},[456,2504,2505,2508],{"class":458,"line":477},[456,2506,2507],{"class":483},"  'db:migrate'",[456,2509,1139],{"class":473},[456,2511,2512,2514,2517],{"class":458,"line":494},[456,2513,1866],{"class":473},[456,2515,2516],{"class":483},"'./tasks/db-migrate'",[456,2518,554],{"class":473},[456,2520,2521,2524],{"class":458,"line":702},[456,2522,2523],{"class":473},"    description: ",[456,2525,2526],{"class":483},"'Run database migrations'\n",[456,2528,2529],{"class":458,"line":708},[456,2530,1186],{"class":473},[456,2532,2533],{"class":458,"line":909},[456,2534,1191],{"class":473},[400,2536],{"to":59},[408,2538,2540],{"id":2539},"scheduledtasks",[412,2541,2542],{},"scheduledTasks",[504,2544,2545],{},[507,2546,509,2547],{},[412,2548,827],{},[415,2550,2551],{},"Map of cron expressions to task name(s).",[448,2553,2555],{"className":450,"code":2554,"language":452,"meta":5,"style":5},"scheduledTasks: {\n  '0 * * * *': 'cleanup:temp',\n  '*/5 * * * *': ['health:check', 'metrics:collect']\n}\n",[412,2556,2557,2563,2575,2594],{"__ignoreMap":5},[456,2558,2559,2561],{"class":458,"line":459},[456,2560,2542],{"class":469},[456,2562,1139],{"class":473},[456,2564,2565,2568,2570,2573],{"class":458,"line":477},[456,2566,2567],{"class":483},"  '0 * * * *'",[456,2569,1154],{"class":473},[456,2571,2572],{"class":483},"'cleanup:temp'",[456,2574,554],{"class":473},[456,2576,2577,2580,2583,2586,2588,2591],{"class":458,"line":494},[456,2578,2579],{"class":483},"  '*/5 * * * *'",[456,2581,2582],{"class":473},": [",[456,2584,2585],{"class":483},"'health:check'",[456,2587,487],{"class":473},[456,2589,2590],{"class":483},"'metrics:collect'",[456,2592,2593],{"class":473},"]\n",[456,2595,2596],{"class":458,"line":702},[456,2597,1191],{"class":473},[400,2599],{"to":59},[408,2601,2603],{"id":2602},"imports",[412,2604,2602],{},[504,2606,2607],{},[507,2608,509,2609],{},[412,2610,2611],{"className":450,"language":452,"style":5},[456,2612,515],{"class":514},[415,2614,2615,2616,590],{},"Auto import options. Set to an object to enable. See ",[584,2617,2620],{"href":2618,"rel":2619},"https://github.com/unjs/unimport",[588],"unimport",[448,2622,2624],{"className":450,"code":2623,"language":452,"meta":5,"style":5},"export default defineConfig({\n  imports: {\n    dirs: [\"./utils\"], // auto-import from utils/ directory\n  },\n});\n",[412,2625,2626,2636,2641,2655,2659],{"__ignoreMap":5},[456,2627,2628,2630,2632,2634],{"class":458,"line":459},[456,2629,463],{"class":462},[456,2631,466],{"class":462},[456,2633,470],{"class":469},[456,2635,474],{"class":473},[456,2637,2638],{"class":458,"line":477},[456,2639,2640],{"class":473},"  imports: {\n",[456,2642,2643,2646,2649,2652],{"class":458,"line":494},[456,2644,2645],{"class":473},"    dirs: [",[456,2647,2648],{"class":483},"\"./utils\"",[456,2650,2651],{"class":473},"], ",[456,2653,2654],{"class":490},"// auto-import from utils/ directory\n",[456,2656,2657],{"class":458,"line":702},[456,2658,705],{"class":473},[456,2660,2661],{"class":458,"line":708},[456,2662,497],{"class":473},[408,2664,2666],{"id":2665},"virtual",[412,2667,2665],{},[504,2669,2670],{},[507,2671,509,2672],{},[412,2673,827],{},[415,2675,2676],{},"A map from dynamic virtual import names to their contents or an (async) function that returns it.",[448,2678,2680],{"className":450,"code":2679,"language":452,"meta":5,"style":5},"export default defineConfig({\n  virtual: {\n    \"#config\": `export default { version: \"1.0.0\" }`,\n  },\n});\n",[412,2681,2682,2692,2697,2709,2713],{"__ignoreMap":5},[456,2683,2684,2686,2688,2690],{"class":458,"line":459},[456,2685,463],{"class":462},[456,2687,466],{"class":462},[456,2689,470],{"class":469},[456,2691,474],{"class":473},[456,2693,2694],{"class":458,"line":477},[456,2695,2696],{"class":473},"  virtual: {\n",[456,2698,2699,2702,2704,2707],{"class":458,"line":494},[456,2700,2701],{"class":483},"    \"#config\"",[456,2703,1154],{"class":473},[456,2705,2706],{"class":483},"`export default { version: \"1.0.0\" }`",[456,2708,554],{"class":473},[456,2710,2711],{"class":458,"line":702},[456,2712,705],{"class":473},[456,2714,2715],{"class":458,"line":708},[456,2716,497],{"class":473},[408,2718,2720],{"id":2719},"ignore",[412,2721,2719],{},[504,2723,2724],{},[507,2725,509,2726],{},[412,2727,2321],{},[415,2729,2730],{},"Array of glob patterns to ignore when scanning directories.",[448,2732,2734],{"className":450,"code":2733,"language":452,"meta":5,"style":5},"export default defineConfig({\n  ignore: [\n    \"routes/_legacy/**\", // skip legacy route handlers\n  ],\n});\n",[412,2735,2736,2746,2751,2761,2765],{"__ignoreMap":5},[456,2737,2738,2740,2742,2744],{"class":458,"line":459},[456,2739,463],{"class":462},[456,2741,466],{"class":462},[456,2743,470],{"class":469},[456,2745,474],{"class":473},[456,2747,2748],{"class":458,"line":477},[456,2749,2750],{"class":473},"  ignore: [\n",[456,2752,2753,2756,2758],{"class":458,"line":494},[456,2754,2755],{"class":483},"    \"routes/_legacy/**\"",[456,2757,487],{"class":473},[456,2759,2760],{"class":490},"// skip legacy route handlers\n",[456,2762,2763],{"class":458,"line":702},[456,2764,2118],{"class":473},[456,2766,2767],{"class":458,"line":708},[456,2768,497],{"class":473},[408,2770,2772],{"id":2771},"wasm",[412,2773,2771],{},[504,2775,2776,2782],{},[507,2777,509,2778],{},[412,2779,2780],{"className":450,"language":452,"style":5},[456,2781,827],{"class":473},[507,2783,1812,2784,1817,2788],{},[412,2785,2786],{"className":450,"language":452,"style":5},[456,2787,515],{"class":514},[412,2789,2790],{"className":450,"language":452,"style":5},[456,2791,2792],{"class":473},"UnwasmPluginOptions",[415,2794,2795,2796,2801],{},"WASM support configuration. See ",[584,2797,2800],{"href":2798,"rel":2799},"https://github.com/unjs/unwasm",[588],"unwasm"," for options.",[448,2803,2805],{"className":450,"code":2804,"language":452,"meta":5,"style":5},"export default defineConfig({\n  wasm: {}, // enable WASM import support\n});\n",[412,2806,2807,2817,2825],{"__ignoreMap":5},[456,2808,2809,2811,2813,2815],{"class":458,"line":459},[456,2810,463],{"class":462},[456,2812,466],{"class":462},[456,2814,470],{"class":469},[456,2816,474],{"class":473},[456,2818,2819,2822],{"class":458,"line":477},[456,2820,2821],{"class":473},"  wasm: {}, ",[456,2823,2824],{"class":490},"// enable WASM import support\n",[456,2826,2827],{"class":458,"line":494},[456,2828,497],{"class":473},[403,2830,2832],{"id":2831},"dev","Dev",[408,2834,2836],{"id":2835},"devserver",[412,2837,2838],{},"devServer",[504,2840,2841],{},[507,2842,509,2843],{},[412,2844,2845,2847,2850],{"className":450,"language":452,"style":5},[456,2846,637],{"class":473},[456,2848,2849],{"class":469},"watch",[456,2851,2852],{"class":473},": [] }",[415,2854,2855,2856,2858],{},"Dev server options. You can use ",[412,2857,2849],{}," to make the dev server reload if any file changes in specified paths.",[415,2860,2861,2862,487,2865,487,2868,2870,2871,2874],{},"Supports ",[412,2863,2864],{},"port",[412,2866,2867],{},"hostname",[412,2869,2849],{},", and ",[412,2872,2873],{},"runner"," options.",[448,2876,2878],{"className":450,"code":2877,"language":452,"meta":5,"style":5},"export default defineConfig({\n  devServer: {\n    port: 3001,\n    watch: [\"./server/plugins\"],\n  },\n});\n",[412,2879,2880,2890,2895,2905,2916,2920],{"__ignoreMap":5},[456,2881,2882,2884,2886,2888],{"class":458,"line":459},[456,2883,463],{"class":462},[456,2885,466],{"class":462},[456,2887,470],{"class":469},[456,2889,474],{"class":473},[456,2891,2892],{"class":458,"line":477},[456,2893,2894],{"class":473},"  devServer: {\n",[456,2896,2897,2900,2903],{"class":458,"line":494},[456,2898,2899],{"class":473},"    port: ",[456,2901,2902],{"class":514},"3001",[456,2904,554],{"class":473},[456,2906,2907,2910,2913],{"class":458,"line":702},[456,2908,2909],{"class":473},"    watch: [",[456,2911,2912],{"class":483},"\"./server/plugins\"",[456,2914,2915],{"class":473},"],\n",[456,2917,2918],{"class":458,"line":708},[456,2919,705],{"class":473},[456,2921,2922],{"class":458,"line":909},[456,2923,497],{"class":473},[408,2925,2927],{"id":2926},"watchoptions",[412,2928,2929],{},"watchOptions",[415,2931,2932,2933,590],{},"Watch options for development mode. See ",[584,2934,2937],{"href":2935,"rel":2936},"https://github.com/paulmillr/chokidar",[588],"chokidar",[448,2939,2941],{"className":450,"code":2940,"language":452,"meta":5,"style":5},"export default defineConfig({\n  watchOptions: {\n    ignored: [\"**/node_modules/**\", \"**/dist/**\"],\n  },\n});\n",[412,2942,2943,2953,2958,2973,2977],{"__ignoreMap":5},[456,2944,2945,2947,2949,2951],{"class":458,"line":459},[456,2946,463],{"class":462},[456,2948,466],{"class":462},[456,2950,470],{"class":469},[456,2952,474],{"class":473},[456,2954,2955],{"class":458,"line":477},[456,2956,2957],{"class":473},"  watchOptions: {\n",[456,2959,2960,2963,2966,2968,2971],{"class":458,"line":494},[456,2961,2962],{"class":473},"    ignored: [",[456,2964,2965],{"class":483},"\"**/node_modules/**\"",[456,2967,487],{"class":473},[456,2969,2970],{"class":483},"\"**/dist/**\"",[456,2972,2915],{"class":473},[456,2974,2975],{"class":458,"line":702},[456,2976,705],{"class":473},[456,2978,2979],{"class":458,"line":708},[456,2980,497],{"class":473},[408,2982,2984],{"id":2983},"devproxy",[412,2985,2986],{},"devProxy",[415,2988,2989],{},"Proxy configuration for development server.",[415,2991,2992],{},"You can use this option to override development server routes and proxy-pass requests.",[448,2994,2996],{"className":1128,"code":2995,"language":1130,"meta":5,"style":5},"{\n  devProxy: {\n    '/proxy/test': 'http://localhost:3001',\n    '/proxy/example': { target: 'https://example.com', changeOrigin: true }\n  }\n}\n",[412,2997,2998,3003,3010,3022,3040,3044],{"__ignoreMap":5},[456,2999,3000],{"class":458,"line":459},[456,3001,3002],{"class":473},"{\n",[456,3004,3005,3008],{"class":458,"line":477},[456,3006,3007],{"class":469},"  devProxy",[456,3009,1139],{"class":473},[456,3011,3012,3015,3017,3020],{"class":458,"line":494},[456,3013,3014],{"class":483},"    '/proxy/test'",[456,3016,1154],{"class":473},[456,3018,3019],{"class":483},"'http://localhost:3001'",[456,3021,554],{"class":473},[456,3023,3024,3027,3030,3033,3036,3038],{"class":458,"line":702},[456,3025,3026],{"class":483},"    '/proxy/example'",[456,3028,3029],{"class":473},": { target: ",[456,3031,3032],{"class":483},"'https://example.com'",[456,3034,3035],{"class":473},", changeOrigin: ",[456,3037,521],{"class":514},[456,3039,1724],{"class":473},[456,3041,3042],{"class":458,"line":708},[456,3043,1186],{"class":473},[456,3045,3046],{"class":458,"line":909},[456,3047,1191],{"class":473},[415,3049,3050,3051,3056],{},"See ",[584,3052,3055],{"href":3053,"rel":3054},"https://github.com/unjs/httpxy",[588],"httpxy"," for all available target options.",[403,3058,3060],{"id":3059},"logging","Logging",[408,3062,3064],{"id":3063},"logging-1",[412,3065,3059],{},[504,3067,3068],{},[507,3069,509,3070],{},[412,3071,3072,3074,3077,3079,3081,3083,3086,3088,3090],{"className":450,"language":452,"style":5},[456,3073,637],{"class":473},[456,3075,3076],{"class":469},"compressedSizes",[456,3078,1154],{"class":473},[456,3080,521],{"class":514},[456,3082,487],{"class":473},[456,3084,3085],{"class":469},"buildSuccess",[456,3087,1154],{"class":473},[456,3089,521],{"class":514},[456,3091,2185],{"class":473},[415,3093,3094,3095,3097,3098,3100,3101,3097,3103,3105],{},"Control build logging behavior. Set ",[412,3096,3076],{}," to ",[412,3099,515],{}," to skip reporting compressed bundle sizes. Set ",[412,3102,3085],{},[412,3104,515],{}," to suppress the build success message.",[448,3107,3109],{"className":450,"code":3108,"language":452,"meta":5,"style":5},"export default defineConfig({\n  logging: {\n    compressedSizes: false, // skip compressed size reporting\n    buildSuccess: false,\n  },\n});\n",[412,3110,3111,3121,3126,3138,3147,3151],{"__ignoreMap":5},[456,3112,3113,3115,3117,3119],{"class":458,"line":459},[456,3114,463],{"class":462},[456,3116,466],{"class":462},[456,3118,470],{"class":469},[456,3120,474],{"class":473},[456,3122,3123],{"class":458,"line":477},[456,3124,3125],{"class":473},"  logging: {\n",[456,3127,3128,3131,3133,3135],{"class":458,"line":494},[456,3129,3130],{"class":473},"    compressedSizes: ",[456,3132,515],{"class":514},[456,3134,487],{"class":473},[456,3136,3137],{"class":490},"// skip compressed size reporting\n",[456,3139,3140,3143,3145],{"class":458,"line":702},[456,3141,3142],{"class":473},"    buildSuccess: ",[456,3144,515],{"class":514},[456,3146,554],{"class":473},[456,3148,3149],{"class":458,"line":708},[456,3150,705],{"class":473},[456,3152,3153],{"class":458,"line":909},[456,3154,497],{"class":473},[403,3156,23],{"id":3157},"routing",[408,3159,3161],{"id":3160},"baseurl",[412,3162,2140],{},[415,3164,509,3165,3169,3170,3173],{},[412,3166,3167],{"className":450,"language":452,"style":5},[456,3168,392],{"class":462}," (or ",[412,3171,3172],{},"NITRO_APP_BASE_URL"," environment variable if provided)",[415,3175,3176],{},"Server's main base URL.",[448,3178,3180],{"className":450,"code":3179,"language":452,"meta":5,"style":5},"export default defineConfig({\n  baseURL: \"/app/\", // serve app under /app/ prefix\n});\n",[412,3181,3182,3192,3205],{"__ignoreMap":5},[456,3183,3184,3186,3188,3190],{"class":458,"line":459},[456,3185,463],{"class":462},[456,3187,466],{"class":462},[456,3189,470],{"class":469},[456,3191,474],{"class":473},[456,3193,3194,3197,3200,3202],{"class":458,"line":477},[456,3195,3196],{"class":473},"  baseURL: ",[456,3198,3199],{"class":483},"\"/app/\"",[456,3201,487],{"class":473},[456,3203,3204],{"class":490},"// serve app under /app/ prefix\n",[456,3206,3207],{"class":458,"line":494},[456,3208,497],{"class":473},[408,3210,3212],{"id":3211},"apibaseurl",[412,3213,3214],{},"apiBaseURL",[504,3216,3217],{},[507,3218,509,3219],{},[412,3220,3221],{},"/api",[415,3223,3224],{},"Changes the default API base URL prefix.",[448,3226,3228],{"className":450,"code":3227,"language":452,"meta":5,"style":5},"export default defineConfig({\n  apiBaseURL: \"/server/api\", // api routes under /server/api/\n});\n",[412,3229,3230,3240,3253],{"__ignoreMap":5},[456,3231,3232,3234,3236,3238],{"class":458,"line":459},[456,3233,463],{"class":462},[456,3235,466],{"class":462},[456,3237,470],{"class":469},[456,3239,474],{"class":473},[456,3241,3242,3245,3248,3250],{"class":458,"line":477},[456,3243,3244],{"class":473},"  apiBaseURL: ",[456,3246,3247],{"class":483},"\"/server/api\"",[456,3249,487],{"class":473},[456,3251,3252],{"class":490},"// api routes under /server/api/\n",[456,3254,3255],{"class":458,"line":494},[456,3256,497],{"class":473},[408,3258,3260],{"id":3259},"handlers",[412,3261,3259],{},[415,3263,3264],{},"Server handlers and routes.",[415,3266,3267,3268,487,3271,3274,3275,3278],{},"If ",[412,3269,3270],{},"routes/",[412,3272,3273],{},"api/"," or ",[412,3276,3277],{},"middleware/"," directories exist inside the server directory, they will be automatically added to the handlers array.",[448,3280,3282],{"className":450,"code":3281,"language":452,"meta":5,"style":5},"export default defineConfig({\n  handlers: [\n    { route: \"/health\", handler: \"./handlers/health.ts\" },\n    { route: \"/admin/**\", handler: \"./handlers/admin.ts\", method: \"get\" },\n  ],\n});\n",[412,3283,3284,3294,3299,3316,3336,3340],{"__ignoreMap":5},[456,3285,3286,3288,3290,3292],{"class":458,"line":459},[456,3287,463],{"class":462},[456,3289,466],{"class":462},[456,3291,470],{"class":469},[456,3293,474],{"class":473},[456,3295,3296],{"class":458,"line":477},[456,3297,3298],{"class":473},"  handlers: [\n",[456,3300,3301,3304,3307,3310,3313],{"class":458,"line":494},[456,3302,3303],{"class":473},"    { route: ",[456,3305,3306],{"class":483},"\"/health\"",[456,3308,3309],{"class":473},", handler: ",[456,3311,3312],{"class":483},"\"./handlers/health.ts\"",[456,3314,3315],{"class":473}," },\n",[456,3317,3318,3320,3323,3325,3328,3331,3334],{"class":458,"line":702},[456,3319,3303],{"class":473},[456,3321,3322],{"class":483},"\"/admin/**\"",[456,3324,3309],{"class":473},[456,3326,3327],{"class":483},"\"./handlers/admin.ts\"",[456,3329,3330],{"class":473},", method: ",[456,3332,3333],{"class":483},"\"get\"",[456,3335,3315],{"class":473},[456,3337,3338],{"class":458,"line":708},[456,3339,2118],{"class":473},[456,3341,3342],{"class":458,"line":909},[456,3343,497],{"class":473},[400,3345],{"to":24},[408,3347,3349],{"id":3348},"devhandlers",[412,3350,3351],{},"devHandlers",[415,3353,3354],{},"Regular handlers refer to the path of handlers to be imported and transformed by the bundler.",[415,3356,3357],{},"There are situations in that we directly want to provide a handler instance with programmatic usage.",[415,3359,3360,3361,3363,3364,949,3367,980],{},"We can use ",[412,3362,3351],{}," but note that they are ",[426,3365,3366],{},"only available in development mode",[426,3368,3369],{},"not in production build",[448,3371,3373],{"className":450,"code":3372,"language":452,"meta":5,"style":5},"export default defineConfig({\n  devHandlers: [\n    { route: \"/__dev\", handler: defineHandler(() => \"dev-only route\") },\n  ],\n});\n",[412,3374,3375,3385,3390,3413,3417],{"__ignoreMap":5},[456,3376,3377,3379,3381,3383],{"class":458,"line":459},[456,3378,463],{"class":462},[456,3380,466],{"class":462},[456,3382,470],{"class":469},[456,3384,474],{"class":473},[456,3386,3387],{"class":458,"line":477},[456,3388,3389],{"class":473},"  devHandlers: [\n",[456,3391,3392,3394,3397,3399,3402,3405,3407,3410],{"class":458,"line":494},[456,3393,3303],{"class":473},[456,3395,3396],{"class":483},"\"/__dev\"",[456,3398,3309],{"class":473},[456,3400,3401],{"class":469},"defineHandler",[456,3403,3404],{"class":473},"(() ",[456,3406,2369],{"class":462},[456,3408,3409],{"class":483}," \"dev-only route\"",[456,3411,3412],{"class":473},") },\n",[456,3414,3415],{"class":458,"line":702},[456,3416,2118],{"class":473},[456,3418,3419],{"class":458,"line":708},[456,3420,497],{"class":473},[408,3422,3424],{"id":3423},"routes",[412,3425,3423],{},[504,3427,3428],{},[507,3429,509,3430],{},[412,3431,3432],{"className":450,"language":452,"style":5},[456,3433,827],{"class":473},[415,3435,3436],{},"Inline route definitions. A map from route pattern to handler path or handler options.",[448,3438,3440],{"className":450,"code":3439,"language":452,"meta":5,"style":5},"export default defineConfig({\n  routes: {\n    \"/hello\": \"./routes/hello.ts\",\n    \"/greet\": { handler: \"./routes/greet.ts\", method: \"post\" },\n  },\n});\n",[412,3441,3442,3452,3457,3469,3487,3491],{"__ignoreMap":5},[456,3443,3444,3446,3448,3450],{"class":458,"line":459},[456,3445,463],{"class":462},[456,3447,466],{"class":462},[456,3449,470],{"class":469},[456,3451,474],{"class":473},[456,3453,3454],{"class":458,"line":477},[456,3455,3456],{"class":473},"  routes: {\n",[456,3458,3459,3462,3464,3467],{"class":458,"line":494},[456,3460,3461],{"class":483},"    \"/hello\"",[456,3463,1154],{"class":473},[456,3465,3466],{"class":483},"\"./routes/hello.ts\"",[456,3468,554],{"class":473},[456,3470,3471,3474,3477,3480,3482,3485],{"class":458,"line":702},[456,3472,3473],{"class":483},"    \"/greet\"",[456,3475,3476],{"class":473},": { handler: ",[456,3478,3479],{"class":483},"\"./routes/greet.ts\"",[456,3481,3330],{"class":473},[456,3483,3484],{"class":483},"\"post\"",[456,3486,3315],{"class":473},[456,3488,3489],{"class":458,"line":708},[456,3490,705],{"class":473},[456,3492,3493],{"class":458,"line":909},[456,3494,497],{"class":473},[408,3496,3498],{"id":3497},"errorhandler",[412,3499,3500],{},"errorHandler",[504,3502,3503],{},[507,3504,1812,3505,1817,3510],{},[412,3506,3507],{"className":450,"language":452,"style":5},[456,3508,3509],{"class":473},"string",[412,3511,3512],{"className":450,"language":452,"style":5},[456,3513,3514],{"class":473},"string[]",[415,3516,3517],{},"Path(s) to custom runtime error handler(s). Replaces nitro's built-in error page.",[415,3519,3520],{},[426,3521,3522],{},"Example:",[3524,3525,3526,3579],"CodeGroup",{},[448,3527,3530],{"className":1128,"code":3528,"filename":3529,"language":1130,"meta":5,"style":5},"import { defineConfig } from \"nitro\";\n\nexport default defineConfig({\n  errorHandler: \"~/error\",\n});\n","nitro.config",[412,3531,3532,3549,3555,3565,3575],{"__ignoreMap":5},[456,3533,3534,3537,3540,3543,3546],{"class":458,"line":459},[456,3535,3536],{"class":462},"import",[456,3538,3539],{"class":473}," { defineConfig } ",[456,3541,3542],{"class":462},"from",[456,3544,3545],{"class":483}," \"nitro\"",[456,3547,3548],{"class":473},";\n",[456,3550,3551],{"class":458,"line":477},[456,3552,3554],{"emptyLinePlaceholder":3553},true,"\n",[456,3556,3557,3559,3561,3563],{"class":458,"line":494},[456,3558,463],{"class":462},[456,3560,466],{"class":462},[456,3562,470],{"class":469},[456,3564,474],{"class":473},[456,3566,3567,3570,3573],{"class":458,"line":702},[456,3568,3569],{"class":473},"  errorHandler: ",[456,3571,3572],{"class":483},"\"~/error\"",[456,3574,554],{"class":473},[456,3576,3577],{"class":458,"line":708},[456,3578,497],{"class":473},[448,3580,3583],{"className":1128,"code":3581,"filename":3582,"language":1130,"meta":5,"style":5},"export default defineErrorHandler((error, event) => {\n  return new Response('[custom error handler] ' + error.stack, {\n    headers: { 'Content-Type': 'text/plain' }\n  });\n});\n","error.ts",[412,3584,3585,3611,3633,3648,3653],{"__ignoreMap":5},[456,3586,3587,3589,3591,3594,3597,3600,3602,3605,3607,3609],{"class":458,"line":459},[456,3588,463],{"class":462},[456,3590,466],{"class":462},[456,3592,3593],{"class":469}," defineErrorHandler",[456,3595,3596],{"class":473},"((",[456,3598,3599],{"class":2363},"error",[456,3601,487],{"class":473},[456,3603,3604],{"class":2363},"event",[456,3606,2366],{"class":473},[456,3608,2369],{"class":462},[456,3610,2372],{"class":473},[456,3612,3613,3616,3619,3622,3624,3627,3630],{"class":458,"line":477},[456,3614,3615],{"class":462},"  return",[456,3617,3618],{"class":462}," new",[456,3620,3621],{"class":469}," Response",[456,3623,2383],{"class":473},[456,3625,3626],{"class":483},"'[custom error handler] '",[456,3628,3629],{"class":462}," +",[456,3631,3632],{"class":473}," error.stack, {\n",[456,3634,3635,3638,3641,3643,3646],{"class":458,"line":494},[456,3636,3637],{"class":473},"    headers: { ",[456,3639,3640],{"class":483},"'Content-Type'",[456,3642,1154],{"class":473},[456,3644,3645],{"class":483},"'text/plain'",[456,3647,1724],{"class":473},[456,3649,3650],{"class":458,"line":702},[456,3651,3652],{"class":473},"  });\n",[456,3654,3655],{"class":458,"line":708},[456,3656,497],{"class":473},[408,3658,3660],{"id":3659},"routerules",[412,3661,3662],{},"routeRules",[415,3664,3665],{},[426,3666,3667],{},"🧪 Experimental!",[415,3669,3670,3671,3676],{},"Route options. It is a map from route pattern (following ",[584,3672,3675],{"href":3673,"rel":3674},"https://github.com/h3js/rou3",[588],"rou3",") to route options.",[415,3678,3679,3680,3683,3684,980],{},"When ",[412,3681,3682],{},"cache"," option is set, handlers matching pattern will be automatically wrapped with ",[412,3685,3686],{},"defineCachedHandler",[415,3688,3689,3690,3693],{},"See the ",[584,3691,3692],{"href":69},"Cache API"," for all available cache options.",[955,3695,3696],{},[415,3697,3698,3701,3702],{},[412,3699,3700],{},"swr: true|number"," is shortcut for ",[412,3703,3704],{},"cache: { swr: true, maxAge: number }",[415,3706,3707],{},[426,3708,3522],{},[448,3710,3712],{"className":1128,"code":3711,"language":1130,"meta":5,"style":5},"routeRules: {\n  '/blog/**': { swr: true },\n  '/blog/**': { swr: 600 },\n  '/blog/**': { static: true },\n  '/blog/**': { cache: { /* cache options*/ } },\n  '/assets/**': { headers: { 'cache-control': 's-maxage=0' } },\n  '/api/v1/**': { cors: true, headers: { 'access-control-allow-methods': 'GET' } },\n  '/old-page': { redirect: '/new-page' }, // uses status code 307 (Temporary Redirect)\n  '/old-page2': { redirect: { to:'/new-page2', statusCode: 301 } },\n  '/old-page/**': { redirect: '/new-page/**' },\n  '/proxy/example': { proxy: 'https://example.com' },\n  '/proxy/**': { proxy: '/api/**' },\n  '/admin/**': { basicAuth: { username: 'admin', password: 'secret' } },\n}\n",[412,3713,3714,3720,3732,3743,3754,3767,3785,3808,3824,3843,3855,3867,3880,3900],{"__ignoreMap":5},[456,3715,3716,3718],{"class":458,"line":459},[456,3717,3662],{"class":469},[456,3719,1139],{"class":473},[456,3721,3722,3725,3728,3730],{"class":458,"line":477},[456,3723,3724],{"class":483},"  '/blog/**'",[456,3726,3727],{"class":473},": { swr: ",[456,3729,521],{"class":514},[456,3731,3315],{"class":473},[456,3733,3734,3736,3738,3741],{"class":458,"line":494},[456,3735,3724],{"class":483},[456,3737,3727],{"class":473},[456,3739,3740],{"class":514},"600",[456,3742,3315],{"class":473},[456,3744,3745,3747,3750,3752],{"class":458,"line":702},[456,3746,3724],{"class":483},[456,3748,3749],{"class":473},": { static: ",[456,3751,521],{"class":514},[456,3753,3315],{"class":473},[456,3755,3756,3758,3761,3764],{"class":458,"line":708},[456,3757,3724],{"class":483},[456,3759,3760],{"class":473},": { cache: { ",[456,3762,3763],{"class":490},"/* cache options*/",[456,3765,3766],{"class":473}," } },\n",[456,3768,3769,3772,3775,3778,3780,3783],{"class":458,"line":909},[456,3770,3771],{"class":483},"  '/assets/**'",[456,3773,3774],{"class":473},": { headers: { ",[456,3776,3777],{"class":483},"'cache-control'",[456,3779,1154],{"class":473},[456,3781,3782],{"class":483},"'s-maxage=0'",[456,3784,3766],{"class":473},[456,3786,3787,3790,3793,3795,3798,3801,3803,3806],{"class":458,"line":1097},[456,3788,3789],{"class":483},"  '/api/v1/**'",[456,3791,3792],{"class":473},": { cors: ",[456,3794,521],{"class":514},[456,3796,3797],{"class":473},", headers: { ",[456,3799,3800],{"class":483},"'access-control-allow-methods'",[456,3802,1154],{"class":473},[456,3804,3805],{"class":483},"'GET'",[456,3807,3766],{"class":473},[456,3809,3810,3813,3816,3819,3821],{"class":458,"line":1107},[456,3811,3812],{"class":483},"  '/old-page'",[456,3814,3815],{"class":473},": { redirect: ",[456,3817,3818],{"class":483},"'/new-page'",[456,3820,649],{"class":473},[456,3822,3823],{"class":490},"// uses status code 307 (Temporary Redirect)\n",[456,3825,3826,3829,3832,3835,3838,3841],{"class":458,"line":1112},[456,3827,3828],{"class":483},"  '/old-page2'",[456,3830,3831],{"class":473},": { redirect: { to:",[456,3833,3834],{"class":483},"'/new-page2'",[456,3836,3837],{"class":473},", statusCode: ",[456,3839,3840],{"class":514},"301",[456,3842,3766],{"class":473},[456,3844,3845,3848,3850,3853],{"class":458,"line":1385},[456,3846,3847],{"class":483},"  '/old-page/**'",[456,3849,3815],{"class":473},[456,3851,3852],{"class":483},"'/new-page/**'",[456,3854,3315],{"class":473},[456,3856,3857,3860,3863,3865],{"class":458,"line":1466},[456,3858,3859],{"class":483},"  '/proxy/example'",[456,3861,3862],{"class":473},": { proxy: ",[456,3864,3032],{"class":483},[456,3866,3315],{"class":473},[456,3868,3870,3873,3875,3878],{"class":458,"line":3869},12,[456,3871,3872],{"class":483},"  '/proxy/**'",[456,3874,3862],{"class":473},[456,3876,3877],{"class":483},"'/api/**'",[456,3879,3315],{"class":473},[456,3881,3883,3886,3889,3892,3895,3898],{"class":458,"line":3882},13,[456,3884,3885],{"class":483},"  '/admin/**'",[456,3887,3888],{"class":473},": { basicAuth: { username: ",[456,3890,3891],{"class":483},"'admin'",[456,3893,3894],{"class":473},", password: ",[456,3896,3897],{"class":483},"'secret'",[456,3899,3766],{"class":473},[456,3901,3903],{"class":458,"line":3902},14,[456,3904,1191],{"class":473},[400,3906],{"to":3907},"/docs/routing#route-rules",[408,3909,3911],{"id":3910},"prerender",[412,3912,3910],{},[415,3914,3915],{},"Default:",[448,3917,3919],{"className":450,"code":3918,"language":452,"meta":5,"style":5},"{\n  autoSubfolderIndex: true,\n  concurrency: 1,\n  interval: 0,\n  failOnError: false,\n  crawlLinks: false,\n  ignore: [],\n  routes: [],\n  retry: 3,\n  retryDelay: 500\n}\n",[412,3920,3921,3925,3936,3947,3959,3970,3981,3989,3996,4007,4017],{"__ignoreMap":5},[456,3922,3923],{"class":458,"line":459},[456,3924,3002],{"class":473},[456,3926,3927,3930,3932,3934],{"class":458,"line":477},[456,3928,3929],{"class":469},"  autoSubfolderIndex",[456,3931,1154],{"class":473},[456,3933,521],{"class":514},[456,3935,554],{"class":473},[456,3937,3938,3941,3943,3945],{"class":458,"line":494},[456,3939,3940],{"class":469},"  concurrency",[456,3942,1154],{"class":473},[456,3944,578],{"class":514},[456,3946,554],{"class":473},[456,3948,3949,3952,3954,3957],{"class":458,"line":702},[456,3950,3951],{"class":469},"  interval",[456,3953,1154],{"class":473},[456,3955,3956],{"class":514},"0",[456,3958,554],{"class":473},[456,3960,3961,3964,3966,3968],{"class":458,"line":708},[456,3962,3963],{"class":469},"  failOnError",[456,3965,1154],{"class":473},[456,3967,515],{"class":514},[456,3969,554],{"class":473},[456,3971,3972,3975,3977,3979],{"class":458,"line":909},[456,3973,3974],{"class":469},"  crawlLinks",[456,3976,1154],{"class":473},[456,3978,515],{"class":514},[456,3980,554],{"class":473},[456,3982,3983,3986],{"class":458,"line":1097},[456,3984,3985],{"class":469},"  ignore",[456,3987,3988],{"class":473},": [],\n",[456,3990,3991,3994],{"class":458,"line":1107},[456,3992,3993],{"class":469},"  routes",[456,3995,3988],{"class":473},[456,3997,3998,4001,4003,4005],{"class":458,"line":1112},[456,3999,4000],{"class":469},"  retry",[456,4002,1154],{"class":473},[456,4004,573],{"class":514},[456,4006,554],{"class":473},[456,4008,4009,4012,4014],{"class":458,"line":1385},[456,4010,4011],{"class":469},"  retryDelay",[456,4013,1154],{"class":473},[456,4015,4016],{"class":514},"500\n",[456,4018,4019],{"class":458,"line":1466},[456,4020,1191],{"class":473},[415,4022,4023,4024,4026],{},"Prerendered options. Any route specified will be fetched during the build and copied to the ",[412,4025,1985],{}," directory as a static asset.",[415,4028,4029,4030,4032],{},"Any route (string) that starts with a prefix listed in ",[412,4031,2719],{}," or matches a regular expression or function will be ignored.",[415,4034,3267,4035,4038,4039,4041,4042,4044,4045,4047,4048,4051],{},[412,4036,4037],{},"crawlLinks"," option is set to ",[412,4040,521],{},", nitro starts with ",[412,4043,392],{}," by default (or all routes in ",[412,4046,3423],{}," array) and for HTML pages extracts ",[412,4049,4050],{},"\u003Ca>"," tags and prerender them as well.",[415,4053,4054,4055,4058,4059,4061],{},"You can set ",[412,4056,4057],{},"failOnError"," option to ",[412,4060,521],{}," to stop the CI when Nitro could not prerender a route.",[415,4063,2133,4064,949,4067,4070],{},[412,4065,4066],{},"interval",[412,4068,4069],{},"concurrency"," options lets you control the speed of pre-rendering, can be useful to avoid hitting some rate-limit if you call external APIs.",[415,4072,4073,4074,4077,4078,4080],{},"Set ",[412,4075,4076],{},"autoSubfolderIndex"," lets you control how to generate the files in the ",[412,4079,1985],{}," directory:",[448,4082,4086],{"className":4083,"code":4084,"language":4085,"meta":5,"style":5},"language-bash shiki shiki-themes github-light github-dark github-dark","# autoSubfolderIndex: true (default)\n/about -> .output/public/about/index.html\n# autoSubfolderIndex: false\n/about -> .output/public/about.html\n","bash",[412,4087,4088,4093,4107,4112],{"__ignoreMap":5},[456,4089,4090],{"class":458,"line":459},[456,4091,4092],{"class":490},"# autoSubfolderIndex: true (default)\n",[456,4094,4095,4098,4101,4104],{"class":458,"line":477},[456,4096,4097],{"class":469},"/about",[456,4099,4100],{"class":473}," -",[456,4102,4103],{"class":462},">",[456,4105,4106],{"class":483}," .output/public/about/index.html\n",[456,4108,4109],{"class":458,"line":494},[456,4110,4111],{"class":490},"# autoSubfolderIndex: false\n",[456,4113,4114,4116,4118,4120],{"class":458,"line":702},[456,4115,4097],{"class":469},[456,4117,4100],{"class":473},[456,4119,4103],{"class":462},[456,4121,4122],{"class":483}," .output/public/about.html\n",[415,4124,4125],{},"This option is useful when your hosting provider does not give you an option regarding the trailing slash.",[415,4127,4128,4129,949,4132,4135],{},"The prerenderer will attempt to render pages 3 times with a delay of 500ms. Use ",[412,4130,4131],{},"retry",[412,4133,4134],{},"retryDelay"," to change this behavior.",[403,4137,4139],{"id":4138},"directories","Directories",[408,4141,4143],{"id":4142},"workspacedir",[412,4144,4145],{},"workspaceDir",[415,4147,4148],{},"Project workspace root directory.",[415,4150,4151,4152,4154],{},"The workspace (e.g. pnpm workspace)  directory is automatically detected when the ",[412,4153,4145],{}," option is not set.",[448,4156,4158],{"className":450,"code":4157,"language":452,"meta":5,"style":5},"export default defineConfig({\n  workspaceDir: \"../\", // monorepo root\n});\n",[412,4159,4160,4170,4183],{"__ignoreMap":5},[456,4161,4162,4164,4166,4168],{"class":458,"line":459},[456,4163,463],{"class":462},[456,4165,466],{"class":462},[456,4167,470],{"class":469},[456,4169,474],{"class":473},[456,4171,4172,4175,4178,4180],{"class":458,"line":477},[456,4173,4174],{"class":473},"  workspaceDir: ",[456,4176,4177],{"class":483},"\"../\"",[456,4179,487],{"class":473},[456,4181,4182],{"class":490},"// monorepo root\n",[456,4184,4185],{"class":458,"line":494},[456,4186,497],{"class":473},[408,4188,4190],{"id":4189},"rootdir",[412,4191,4192],{},"rootDir",[415,4194,4195],{},"Project main directory.",[448,4197,4199],{"className":450,"code":4198,"language":452,"meta":5,"style":5},"export default defineConfig({\n  rootDir: \"./src/server\",\n});\n",[412,4200,4201,4211,4221],{"__ignoreMap":5},[456,4202,4203,4205,4207,4209],{"class":458,"line":459},[456,4204,463],{"class":462},[456,4206,466],{"class":462},[456,4208,470],{"class":469},[456,4210,474],{"class":473},[456,4212,4213,4216,4219],{"class":458,"line":477},[456,4214,4215],{"class":473},"  rootDir: ",[456,4217,4218],{"class":483},"\"./src/server\"",[456,4220,554],{"class":473},[456,4222,4223],{"class":458,"line":494},[456,4224,497],{"class":473},[408,4226,4228],{"id":4227},"serverdir",[412,4229,4230],{},"serverDir",[504,4232,4233,4239],{},[507,4234,509,4235],{},[412,4236,4237],{"className":450,"language":452,"style":5},[456,4238,515],{"class":514},[507,4240,1812,4241,1817,4245,1817,4248,1817,4251],{},[412,4242,4243],{"className":450,"language":452,"style":5},[456,4244,1899],{"class":473},[412,4246,4247],{},"\"./\"",[412,4249,4250],{},"\"./server\"",[412,4252,4253],{"className":450,"language":452,"style":5},[456,4254,3509],{"class":473},[415,4256,4257,4258,487,4260,487,4262,487,4264,487,4267,487,4269,2870,4272,4275],{},"Server directory for scanning ",[412,4259,3273],{},[412,4261,3270],{},[412,4263,2432],{},[412,4265,4266],{},"utils/",[412,4268,3277],{},[412,4270,4271],{},"assets/",[412,4273,4274],{},"tasks/"," folders.",[415,4277,4278,4279,4281,4282,4284,4285,4287,4288,4291],{},"When set to ",[412,4280,515],{},", automatic directory scanning is disabled. Set to ",[412,4283,4247],{}," to use the root directory, or ",[412,4286,4250],{}," to use a ",[412,4289,4290],{},"server/"," subdirectory.",[448,4293,4295],{"className":450,"code":4294,"language":452,"meta":5,"style":5},"export default defineConfig({\n  serverDir: \"./server\", // scan server/ subdirectory\n});\n",[412,4296,4297,4307,4319],{"__ignoreMap":5},[456,4298,4299,4301,4303,4305],{"class":458,"line":459},[456,4300,463],{"class":462},[456,4302,466],{"class":462},[456,4304,470],{"class":469},[456,4306,474],{"class":473},[456,4308,4309,4312,4314,4316],{"class":458,"line":477},[456,4310,4311],{"class":473},"  serverDir: ",[456,4313,4250],{"class":483},[456,4315,487],{"class":473},[456,4317,4318],{"class":490},"// scan server/ subdirectory\n",[456,4320,4321],{"class":458,"line":494},[456,4322,497],{"class":473},[408,4324,4326],{"id":4325},"scandirs",[412,4327,4328],{},"scanDirs",[504,4330,4331],{},[507,4332,4333],{},"Default: (source directory when empty array)",[415,4335,4336],{},"List of directories to scan and auto-register files, such as API routes.",[448,4338,4340],{"className":450,"code":4339,"language":452,"meta":5,"style":5},"export default defineConfig({\n  scanDirs: [\"./modules/auth/api\", \"./modules/billing/api\"],\n});\n",[412,4341,4342,4352,4367],{"__ignoreMap":5},[456,4343,4344,4346,4348,4350],{"class":458,"line":459},[456,4345,463],{"class":462},[456,4347,466],{"class":462},[456,4349,470],{"class":469},[456,4351,474],{"class":473},[456,4353,4354,4357,4360,4362,4365],{"class":458,"line":477},[456,4355,4356],{"class":473},"  scanDirs: [",[456,4358,4359],{"class":483},"\"./modules/auth/api\"",[456,4361,487],{"class":473},[456,4363,4364],{"class":483},"\"./modules/billing/api\"",[456,4366,2915],{"class":473},[456,4368,4369],{"class":458,"line":494},[456,4370,497],{"class":473},[408,4372,4374],{"id":4373},"apidir",[412,4375,4376],{},"apiDir",[504,4378,4379],{},[507,4380,509,4381],{},[412,4382,4383],{},"api",[415,4385,4386],{},"Defines a different directory to scan for api route handlers.",[448,4388,4390],{"className":450,"code":4389,"language":452,"meta":5,"style":5},"export default defineConfig({\n  apiDir: \"endpoints\", // scan endpoints/ instead of api/\n});\n",[412,4391,4392,4402,4415],{"__ignoreMap":5},[456,4393,4394,4396,4398,4400],{"class":458,"line":459},[456,4395,463],{"class":462},[456,4397,466],{"class":462},[456,4399,470],{"class":469},[456,4401,474],{"class":473},[456,4403,4404,4407,4410,4412],{"class":458,"line":477},[456,4405,4406],{"class":473},"  apiDir: ",[456,4408,4409],{"class":483},"\"endpoints\"",[456,4411,487],{"class":473},[456,4413,4414],{"class":490},"// scan endpoints/ instead of api/\n",[456,4416,4417],{"class":458,"line":494},[456,4418,497],{"class":473},[408,4420,4422],{"id":4421},"routesdir",[412,4423,4424],{},"routesDir",[504,4426,4427],{},[507,4428,509,4429],{},[412,4430,3423],{},[415,4432,4433],{},"Defines a different directory to scan for route handlers.",[448,4435,4437],{"className":450,"code":4436,"language":452,"meta":5,"style":5},"export default defineConfig({\n  routesDir: \"pages\", // scan pages/ instead of routes/\n});\n",[412,4438,4439,4449,4462],{"__ignoreMap":5},[456,4440,4441,4443,4445,4447],{"class":458,"line":459},[456,4442,463],{"class":462},[456,4444,466],{"class":462},[456,4446,470],{"class":469},[456,4448,474],{"class":473},[456,4450,4451,4454,4457,4459],{"class":458,"line":477},[456,4452,4453],{"class":473},"  routesDir: ",[456,4455,4456],{"class":483},"\"pages\"",[456,4458,487],{"class":473},[456,4460,4461],{"class":490},"// scan pages/ instead of routes/\n",[456,4463,4464],{"class":458,"line":494},[456,4465,497],{"class":473},[408,4467,4469],{"id":4468},"builddir",[412,4470,4471],{},"buildDir",[504,4473,4474],{},[507,4475,509,4476],{},[412,4477,4478],{},"node_modules/.nitro",[415,4480,4481],{},"Nitro's temporary working directory for generating build-related files.",[448,4483,4485],{"className":450,"code":4484,"language":452,"meta":5,"style":5},"export default defineConfig({\n  buildDir: \".nitro\", // use .nitro/ in project root\n});\n",[412,4486,4487,4497,4510],{"__ignoreMap":5},[456,4488,4489,4491,4493,4495],{"class":458,"line":459},[456,4490,463],{"class":462},[456,4492,466],{"class":462},[456,4494,470],{"class":469},[456,4496,474],{"class":473},[456,4498,4499,4502,4505,4507],{"class":458,"line":477},[456,4500,4501],{"class":473},"  buildDir: ",[456,4503,4504],{"class":483},"\".nitro\"",[456,4506,487],{"class":473},[456,4508,4509],{"class":490},"// use .nitro/ in project root\n",[456,4511,4512],{"class":458,"line":494},[456,4513,497],{"class":473},[408,4515,4517],{"id":4516},"output",[412,4518,4516],{},[504,4520,4521],{},[507,4522,509,4523],{},[412,4524,4525],{},"{ dir: '.output', serverDir: '.output/server', publicDir: '.output/public' }",[415,4527,4528],{},"Output directories for production bundle.",[448,4530,4532],{"className":450,"code":4531,"language":452,"meta":5,"style":5},"export default defineConfig({\n  output: {\n    dir: \"dist\",\n    serverDir: \"dist/server\",\n    publicDir: \"dist/public\",\n  },\n});\n",[412,4533,4534,4544,4549,4559,4569,4579,4583],{"__ignoreMap":5},[456,4535,4536,4538,4540,4542],{"class":458,"line":459},[456,4537,463],{"class":462},[456,4539,466],{"class":462},[456,4541,470],{"class":469},[456,4543,474],{"class":473},[456,4545,4546],{"class":458,"line":477},[456,4547,4548],{"class":473},"  output: {\n",[456,4550,4551,4554,4557],{"class":458,"line":494},[456,4552,4553],{"class":473},"    dir: ",[456,4555,4556],{"class":483},"\"dist\"",[456,4558,554],{"class":473},[456,4560,4561,4564,4567],{"class":458,"line":702},[456,4562,4563],{"class":473},"    serverDir: ",[456,4565,4566],{"class":483},"\"dist/server\"",[456,4568,554],{"class":473},[456,4570,4571,4574,4577],{"class":458,"line":708},[456,4572,4573],{"class":473},"    publicDir: ",[456,4575,4576],{"class":483},"\"dist/public\"",[456,4578,554],{"class":473},[456,4580,4581],{"class":458,"line":909},[456,4582,705],{"class":473},[456,4584,4585],{"class":458,"line":1097},[456,4586,497],{"class":473},[403,4588,4590],{"id":4589},"build","Build",[408,4592,4594],{"id":4593},"builder",[412,4595,4593],{},[504,4597,4598,4615],{},[507,4599,1812,4600,1817,4605,1817,4610],{},[412,4601,4602],{"className":450,"language":452,"style":5},[456,4603,4604],{"class":483},"\"rollup\"",[412,4606,4607],{"className":450,"language":452,"style":5},[456,4608,4609],{"class":483},"\"rolldown\"",[412,4611,4612],{"className":450,"language":452,"style":5},[456,4613,4614],{"class":483},"\"vite\"",[507,4616,509,4617,4622],{},[412,4618,4619],{"className":450,"language":452,"style":5},[456,4620,4621],{"class":514},"undefined"," (auto-detected)",[415,4624,4625],{},"Specify the bundler to use for building.",[448,4627,4629],{"className":450,"code":4628,"language":452,"meta":5,"style":5},"export default defineConfig({\n  builder: \"vite\",\n});\n",[412,4630,4631,4641,4650],{"__ignoreMap":5},[456,4632,4633,4635,4637,4639],{"class":458,"line":459},[456,4634,463],{"class":462},[456,4636,466],{"class":462},[456,4638,470],{"class":469},[456,4640,474],{"class":473},[456,4642,4643,4646,4648],{"class":458,"line":477},[456,4644,4645],{"class":473},"  builder: ",[456,4647,4614],{"class":483},[456,4649,554],{"class":473},[456,4651,4652],{"class":458,"line":494},[456,4653,497],{"class":473},[408,4655,4657],{"id":4656},"rollupconfig",[412,4658,4659],{},"rollupConfig",[415,4661,4662],{},"Additional rollup configuration.",[448,4664,4666],{"className":450,"code":4665,"language":452,"meta":5,"style":5},"export default defineConfig({\n  rollupConfig: {\n    output: { manualChunks: { vendor: [\"lodash-es\"] } },\n  },\n});\n",[412,4667,4668,4678,4683,4694,4698],{"__ignoreMap":5},[456,4669,4670,4672,4674,4676],{"class":458,"line":459},[456,4671,463],{"class":462},[456,4673,466],{"class":462},[456,4675,470],{"class":469},[456,4677,474],{"class":473},[456,4679,4680],{"class":458,"line":477},[456,4681,4682],{"class":473},"  rollupConfig: {\n",[456,4684,4685,4688,4691],{"class":458,"line":494},[456,4686,4687],{"class":473},"    output: { manualChunks: { vendor: [",[456,4689,4690],{"class":483},"\"lodash-es\"",[456,4692,4693],{"class":473},"] } },\n",[456,4695,4696],{"class":458,"line":702},[456,4697,705],{"class":473},[456,4699,4700],{"class":458,"line":708},[456,4701,497],{"class":473},[408,4703,4705],{"id":4704},"rolldownconfig",[412,4706,4707],{},"rolldownConfig",[415,4709,4710],{},"Additional rolldown configuration.",[448,4712,4714],{"className":450,"code":4713,"language":452,"meta":5,"style":5},"export default defineConfig({\n  rolldownConfig: {\n    output: { banner: \"/* built with nitro */\" },\n  },\n});\n",[412,4715,4716,4726,4731,4741,4745],{"__ignoreMap":5},[456,4717,4718,4720,4722,4724],{"class":458,"line":459},[456,4719,463],{"class":462},[456,4721,466],{"class":462},[456,4723,470],{"class":469},[456,4725,474],{"class":473},[456,4727,4728],{"class":458,"line":477},[456,4729,4730],{"class":473},"  rolldownConfig: {\n",[456,4732,4733,4736,4739],{"class":458,"line":494},[456,4734,4735],{"class":473},"    output: { banner: ",[456,4737,4738],{"class":483},"\"/* built with nitro */\"",[456,4740,3315],{"class":473},[456,4742,4743],{"class":458,"line":702},[456,4744,705],{"class":473},[456,4746,4747],{"class":458,"line":708},[456,4748,497],{"class":473},[408,4750,4752],{"id":4751},"entry",[412,4753,4751],{},[415,4755,4756],{},"Bundler entry point.",[448,4758,4760],{"className":450,"code":4759,"language":452,"meta":5,"style":5},"export default defineConfig({\n  entry: \"./server/entry.ts\", // custom entry file\n});\n",[412,4761,4762,4772,4785],{"__ignoreMap":5},[456,4763,4764,4766,4768,4770],{"class":458,"line":459},[456,4765,463],{"class":462},[456,4767,466],{"class":462},[456,4769,470],{"class":469},[456,4771,474],{"class":473},[456,4773,4774,4777,4780,4782],{"class":458,"line":477},[456,4775,4776],{"class":473},"  entry: ",[456,4778,4779],{"class":483},"\"./server/entry.ts\"",[456,4781,487],{"class":473},[456,4783,4784],{"class":490},"// custom entry file\n",[456,4786,4787],{"class":458,"line":494},[456,4788,497],{"class":473},[408,4790,4792],{"id":4791},"unenv",[412,4793,4791],{},[415,4795,4796,4800],{},[584,4797,4791],{"href":4798,"rel":4799},"https://github.com/unjs/unenv/",[588]," preset(s) for environment compatibility.",[448,4802,4804],{"className":450,"code":4803,"language":452,"meta":5,"style":5},"export default defineConfig({\n  unenv: {\n    alias: { \"my-module\": \"my-module/web\" },\n  },\n});\n",[412,4805,4806,4816,4821,4836,4840],{"__ignoreMap":5},[456,4807,4808,4810,4812,4814],{"class":458,"line":459},[456,4809,463],{"class":462},[456,4811,466],{"class":462},[456,4813,470],{"class":469},[456,4815,474],{"class":473},[456,4817,4818],{"class":458,"line":477},[456,4819,4820],{"class":473},"  unenv: {\n",[456,4822,4823,4826,4829,4831,4834],{"class":458,"line":494},[456,4824,4825],{"class":473},"    alias: { ",[456,4827,4828],{"class":483},"\"my-module\"",[456,4830,1154],{"class":473},[456,4832,4833],{"class":483},"\"my-module/web\"",[456,4835,3315],{"class":473},[456,4837,4838],{"class":458,"line":702},[456,4839,705],{"class":473},[456,4841,4842],{"class":458,"line":708},[456,4843,497],{"class":473},[408,4845,4847],{"id":4846},"alias",[412,4848,4846],{},[415,4850,4851],{},"Path aliases for module resolution.",[448,4853,4855],{"className":450,"code":4854,"language":452,"meta":5,"style":5},"export default defineConfig({\n  alias: {\n    \"~utils\": \"./src/utils\",\n    \"#shared\": \"./shared\",\n  },\n});\n",[412,4856,4857,4867,4872,4884,4896,4900],{"__ignoreMap":5},[456,4858,4859,4861,4863,4865],{"class":458,"line":459},[456,4860,463],{"class":462},[456,4862,466],{"class":462},[456,4864,470],{"class":469},[456,4866,474],{"class":473},[456,4868,4869],{"class":458,"line":477},[456,4870,4871],{"class":473},"  alias: {\n",[456,4873,4874,4877,4879,4882],{"class":458,"line":494},[456,4875,4876],{"class":483},"    \"~utils\"",[456,4878,1154],{"class":473},[456,4880,4881],{"class":483},"\"./src/utils\"",[456,4883,554],{"class":473},[456,4885,4886,4889,4891,4894],{"class":458,"line":702},[456,4887,4888],{"class":483},"    \"#shared\"",[456,4890,1154],{"class":473},[456,4892,4893],{"class":483},"\"./shared\"",[456,4895,554],{"class":473},[456,4897,4898],{"class":458,"line":708},[456,4899,705],{"class":473},[456,4901,4902],{"class":458,"line":909},[456,4903,497],{"class":473},[408,4905,4907],{"id":4906},"minify",[412,4908,4906],{},[504,4910,4911],{},[507,4912,509,4913],{},[412,4914,515],{},[415,4916,4917],{},"Minify bundle.",[448,4919,4921],{"className":450,"code":4920,"language":452,"meta":5,"style":5},"export default defineConfig({\n  minify: true, // minify production bundle\n});\n",[412,4922,4923,4933,4945],{"__ignoreMap":5},[456,4924,4925,4927,4929,4931],{"class":458,"line":459},[456,4926,463],{"class":462},[456,4928,466],{"class":462},[456,4930,470],{"class":469},[456,4932,474],{"class":473},[456,4934,4935,4938,4940,4942],{"class":458,"line":477},[456,4936,4937],{"class":473},"  minify: ",[456,4939,521],{"class":514},[456,4941,487],{"class":473},[456,4943,4944],{"class":490},"// minify production bundle\n",[456,4946,4947],{"class":458,"line":494},[456,4948,497],{"class":473},[408,4950,4952],{"id":4951},"inlinedynamicimports",[412,4953,4954],{},"inlineDynamicImports",[504,4956,4957],{},[507,4958,509,4959],{},[412,4960,515],{},[415,4962,4963],{},"Bundle all code into a single file instead of creating separate chunks per route.",[415,4965,3679,4966,4968,4969,4971],{},[412,4967,515],{},", each route handler becomes a separate chunk loaded on-demand. When ",[412,4970,521],{},", everything is bundled together. Some presets enable this by default.",[448,4973,4975],{"className":450,"code":4974,"language":452,"meta":5,"style":5},"export default defineConfig({\n  inlineDynamicImports: true, // single output file\n});\n",[412,4976,4977,4987,4999],{"__ignoreMap":5},[456,4978,4979,4981,4983,4985],{"class":458,"line":459},[456,4980,463],{"class":462},[456,4982,466],{"class":462},[456,4984,470],{"class":469},[456,4986,474],{"class":473},[456,4988,4989,4992,4994,4996],{"class":458,"line":477},[456,4990,4991],{"class":473},"  inlineDynamicImports: ",[456,4993,521],{"class":514},[456,4995,487],{"class":473},[456,4997,4998],{"class":490},"// single output file\n",[456,5000,5001],{"class":458,"line":494},[456,5002,497],{"class":473},[408,5004,5006],{"id":5005},"sourcemap",[412,5007,5005],{},[504,5009,5010],{},[507,5011,509,5012],{},[412,5013,5014],{"className":450,"language":452,"style":5},[456,5015,515],{"class":514},[415,5017,5018,5019,980],{},"Enable source map generation. See ",[584,5020,5023],{"href":5021,"rel":5022},"https://rollupjs.org/configuration-options/#output-sourcemap",[588],"options",[448,5025,5027],{"className":450,"code":5026,"language":452,"meta":5,"style":5},"export default defineConfig({\n  sourcemap: true, // generate .map files\n});\n",[412,5028,5029,5039,5051],{"__ignoreMap":5},[456,5030,5031,5033,5035,5037],{"class":458,"line":459},[456,5032,463],{"class":462},[456,5034,466],{"class":462},[456,5036,470],{"class":469},[456,5038,474],{"class":473},[456,5040,5041,5044,5046,5048],{"class":458,"line":477},[456,5042,5043],{"class":473},"  sourcemap: ",[456,5045,521],{"class":514},[456,5047,487],{"class":473},[456,5049,5050],{"class":490},"// generate .map files\n",[456,5052,5053],{"class":458,"line":494},[456,5054,497],{"class":473},[408,5056,5058],{"id":5057},"node",[412,5059,5057],{},[504,5061,5062],{},[507,5063,509,5064],{},[412,5065,5066],{"className":450,"language":452,"style":5},[456,5067,521],{"class":514},[415,5069,5070,5071,5073,5074,5078],{},"Specify whether the build is used for Node.js or not. If set to ",[412,5072,515],{},", nitro tries to mock Node.js dependencies using ",[584,5075,4791],{"href":5076,"rel":5077},"https://github.com/unjs/unenv",[588]," and adjust its behavior.",[448,5080,5082],{"className":450,"code":5081,"language":452,"meta":5,"style":5},"export default defineConfig({\n  node: false, // target non-Node.js runtimes\n});\n",[412,5083,5084,5094,5106],{"__ignoreMap":5},[456,5085,5086,5088,5090,5092],{"class":458,"line":459},[456,5087,463],{"class":462},[456,5089,466],{"class":462},[456,5091,470],{"class":469},[456,5093,474],{"class":473},[456,5095,5096,5099,5101,5103],{"class":458,"line":477},[456,5097,5098],{"class":473},"  node: ",[456,5100,515],{"class":514},[456,5102,487],{"class":473},[456,5104,5105],{"class":490},"// target non-Node.js runtimes\n",[456,5107,5108],{"class":458,"line":494},[456,5109,497],{"class":473},[408,5111,5113],{"id":5112},"replace",[412,5114,5112],{},[415,5116,5117],{},"Build-time string replacements.",[448,5119,5121],{"className":450,"code":5120,"language":452,"meta":5,"style":5},"export default defineConfig({\n  replace: {\n    \"process.env.APP_VERSION\": JSON.stringify(\"1.0.0\"),\n  },\n});\n",[412,5122,5123,5133,5138,5161,5165],{"__ignoreMap":5},[456,5124,5125,5127,5129,5131],{"class":458,"line":459},[456,5126,463],{"class":462},[456,5128,466],{"class":462},[456,5130,470],{"class":469},[456,5132,474],{"class":473},[456,5134,5135],{"class":458,"line":477},[456,5136,5137],{"class":473},"  replace: {\n",[456,5139,5140,5143,5145,5148,5150,5153,5155,5158],{"class":458,"line":494},[456,5141,5142],{"class":483},"    \"process.env.APP_VERSION\"",[456,5144,1154],{"class":473},[456,5146,5147],{"class":514},"JSON",[456,5149,980],{"class":473},[456,5151,5152],{"class":469},"stringify",[456,5154,2383],{"class":473},[456,5156,5157],{"class":483},"\"1.0.0\"",[456,5159,5160],{"class":473},"),\n",[456,5162,5163],{"class":458,"line":702},[456,5164,705],{"class":473},[456,5166,5167],{"class":458,"line":708},[456,5168,497],{"class":473},[408,5170,5172],{"id":5171},"commonjs",[412,5173,5174],{},"commonJS",[415,5176,5177],{},"Specifies additional configuration for the rollup CommonJS plugin.",[448,5179,5181],{"className":450,"code":5180,"language":452,"meta":5,"style":5},"export default defineConfig({\n  commonJS: {\n    requireReturnsDefault: \"auto\",\n  },\n});\n",[412,5182,5183,5193,5198,5208,5212],{"__ignoreMap":5},[456,5184,5185,5187,5189,5191],{"class":458,"line":459},[456,5186,463],{"class":462},[456,5188,466],{"class":462},[456,5190,470],{"class":469},[456,5192,474],{"class":473},[456,5194,5195],{"class":458,"line":477},[456,5196,5197],{"class":473},"  commonJS: {\n",[456,5199,5200,5203,5206],{"class":458,"line":494},[456,5201,5202],{"class":473},"    requireReturnsDefault: ",[456,5204,5205],{"class":483},"\"auto\"",[456,5207,554],{"class":473},[456,5209,5210],{"class":458,"line":702},[456,5211,705],{"class":473},[456,5213,5214],{"class":458,"line":708},[456,5215,497],{"class":473},[408,5217,5219],{"id":5218},"exportconditions",[412,5220,5221],{},"exportConditions",[415,5223,5224],{},"Custom export conditions for module resolution.",[448,5226,5228],{"className":450,"code":5227,"language":452,"meta":5,"style":5},"export default defineConfig({\n  exportConditions: [\"worker\", \"production\"],\n});\n",[412,5229,5230,5240,5255],{"__ignoreMap":5},[456,5231,5232,5234,5236,5238],{"class":458,"line":459},[456,5233,463],{"class":462},[456,5235,466],{"class":462},[456,5237,470],{"class":469},[456,5239,474],{"class":473},[456,5241,5242,5245,5248,5250,5253],{"class":458,"line":477},[456,5243,5244],{"class":473},"  exportConditions: [",[456,5246,5247],{"class":483},"\"worker\"",[456,5249,487],{"class":473},[456,5251,5252],{"class":483},"\"production\"",[456,5254,2915],{"class":473},[456,5256,5257],{"class":458,"line":494},[456,5258,497],{"class":473},[408,5260,5262],{"id":5261},"noexternals",[412,5263,5264],{},"noExternals",[504,5266,5267],{},[507,5268,509,5269],{},[412,5270,5271],{"className":450,"language":452,"style":5},[456,5272,515],{"class":514},[415,5274,5275,5276,5278],{},"Prevent specific packages from being externalized. Set to ",[412,5277,521],{}," to bundle all dependencies, or pass an array of package names/patterns.",[448,5280,5282],{"className":450,"code":5281,"language":452,"meta":5,"style":5},"export default defineConfig({\n  noExternals: true, // bundle all dependencies\n});\n",[412,5283,5284,5294,5306],{"__ignoreMap":5},[456,5285,5286,5288,5290,5292],{"class":458,"line":459},[456,5287,463],{"class":462},[456,5289,466],{"class":462},[456,5291,470],{"class":469},[456,5293,474],{"class":473},[456,5295,5296,5299,5301,5303],{"class":458,"line":477},[456,5297,5298],{"class":473},"  noExternals: ",[456,5300,521],{"class":514},[456,5302,487],{"class":473},[456,5304,5305],{"class":490},"// bundle all dependencies\n",[456,5307,5308],{"class":458,"line":494},[456,5309,497],{"class":473},[408,5311,5313],{"id":5312},"tracedeps",[412,5314,5315],{},"traceDeps",[504,5317,5318],{},[507,5319,509,5320],{},[412,5321,5322],{"className":450,"language":452,"style":5},[456,5323,2321],{"class":473},[415,5325,5326],{},"Additional dependencies to trace and include in the build output.",[415,5328,5329],{},"Supports special prefixes:",[504,5331,5332,5338],{},[507,5333,5334,5337],{},[412,5335,5336],{},"!pkg"," — Exclude a built-in package from tracing.",[507,5339,5340,5343],{},[412,5341,5342],{},"pkg*"," — Full trace: copies all package files instead of only traced ones.",[448,5345,5347],{"className":450,"code":5346,"language":452,"meta":5,"style":5},"export default defineConfig({\n  traceDeps: [\n    \"sharp\",\n    \"better-sqlite3\",\n    \"my-pkg*\", // full trace (copy all package files)\n    \"!unwanted-pkg\", // exclude from tracing\n  ],\n});\n",[412,5348,5349,5359,5364,5371,5378,5388,5398,5402],{"__ignoreMap":5},[456,5350,5351,5353,5355,5357],{"class":458,"line":459},[456,5352,463],{"class":462},[456,5354,466],{"class":462},[456,5356,470],{"class":469},[456,5358,474],{"class":473},[456,5360,5361],{"class":458,"line":477},[456,5362,5363],{"class":473},"  traceDeps: [\n",[456,5365,5366,5369],{"class":458,"line":494},[456,5367,5368],{"class":483},"    \"sharp\"",[456,5370,554],{"class":473},[456,5372,5373,5376],{"class":458,"line":702},[456,5374,5375],{"class":483},"    \"better-sqlite3\"",[456,5377,554],{"class":473},[456,5379,5380,5383,5385],{"class":458,"line":708},[456,5381,5382],{"class":483},"    \"my-pkg*\"",[456,5384,487],{"class":473},[456,5386,5387],{"class":490},"// full trace (copy all package files)\n",[456,5389,5390,5393,5395],{"class":458,"line":909},[456,5391,5392],{"class":483},"    \"!unwanted-pkg\"",[456,5394,487],{"class":473},[456,5396,5397],{"class":490},"// exclude from tracing\n",[456,5399,5400],{"class":458,"line":1097},[456,5401,2118],{"class":473},[456,5403,5404],{"class":458,"line":1107},[456,5405,497],{"class":473},[408,5407,5409],{"id":5408},"traceopts",[412,5410,5411],{},"traceOpts",[415,5413,5414,5415,5420],{},"Advanced options passed to ",[584,5416,5419],{"href":5417,"rel":5418},"https://github.com/nicolo-ribaudo/nf3",[588],"nf3"," for dependency tracing.",[448,5422,5424],{"className":450,"code":5423,"language":452,"meta":5,"style":5},"export default defineConfig({\n  traceOpts: {\n    // Options passed to @vercel/nft for file tracing\n    nft: { /* ... */ },\n    // Alias for module paths when tracing\n    traceAlias: { \"old-pkg\": \"new-pkg\" },\n    // Preserve or set file permissions when copying (true or octal like 0o755)\n    chmod: true,\n    // Transform traced files before copying\n    transform: [\n      { filter: (id) => id.endsWith(\".js\"), handler: (code) => code },\n    ],\n    // Hook into tracing lifecycle\n    hooks: {\n      tracedPackages(pkgs) {\n        console.log(\"Traced packages:\", Object.keys(pkgs));\n      },\n    },\n  },\n});\n",[412,5425,5426,5436,5441,5446,5455,5460,5475,5480,5489,5494,5499,5544,5549,5554,5559,5573,5596,5602,5607,5612],{"__ignoreMap":5},[456,5427,5428,5430,5432,5434],{"class":458,"line":459},[456,5429,463],{"class":462},[456,5431,466],{"class":462},[456,5433,470],{"class":469},[456,5435,474],{"class":473},[456,5437,5438],{"class":458,"line":477},[456,5439,5440],{"class":473},"  traceOpts: {\n",[456,5442,5443],{"class":458,"line":494},[456,5444,5445],{"class":490},"    // Options passed to @vercel/nft for file tracing\n",[456,5447,5448,5451,5453],{"class":458,"line":702},[456,5449,5450],{"class":473},"    nft: { ",[456,5452,2397],{"class":490},[456,5454,3315],{"class":473},[456,5456,5457],{"class":458,"line":708},[456,5458,5459],{"class":490},"    // Alias for module paths when tracing\n",[456,5461,5462,5465,5468,5470,5473],{"class":458,"line":909},[456,5463,5464],{"class":473},"    traceAlias: { ",[456,5466,5467],{"class":483},"\"old-pkg\"",[456,5469,1154],{"class":473},[456,5471,5472],{"class":483},"\"new-pkg\"",[456,5474,3315],{"class":473},[456,5476,5477],{"class":458,"line":1097},[456,5478,5479],{"class":490},"    // Preserve or set file permissions when copying (true or octal like 0o755)\n",[456,5481,5482,5485,5487],{"class":458,"line":1107},[456,5483,5484],{"class":473},"    chmod: ",[456,5486,521],{"class":514},[456,5488,554],{"class":473},[456,5490,5491],{"class":458,"line":1112},[456,5492,5493],{"class":490},"    // Transform traced files before copying\n",[456,5495,5496],{"class":458,"line":1385},[456,5497,5498],{"class":473},"    transform: [\n",[456,5500,5501,5504,5507,5510,5513,5515,5517,5520,5523,5525,5528,5531,5533,5535,5537,5539,5541],{"class":458,"line":1466},[456,5502,5503],{"class":473},"      { ",[456,5505,5506],{"class":469},"filter",[456,5508,5509],{"class":473},": (",[456,5511,5512],{"class":2363},"id",[456,5514,2366],{"class":473},[456,5516,2369],{"class":462},[456,5518,5519],{"class":473}," id.",[456,5521,5522],{"class":469},"endsWith",[456,5524,2383],{"class":473},[456,5526,5527],{"class":483},"\".js\"",[456,5529,5530],{"class":473},"), ",[456,5532,2487],{"class":469},[456,5534,5509],{"class":473},[456,5536,412],{"class":2363},[456,5538,2366],{"class":473},[456,5540,2369],{"class":462},[456,5542,5543],{"class":473}," code },\n",[456,5545,5546],{"class":458,"line":3869},[456,5547,5548],{"class":473},"    ],\n",[456,5550,5551],{"class":458,"line":3882},[456,5552,5553],{"class":490},"    // Hook into tracing lifecycle\n",[456,5555,5556],{"class":458,"line":3902},[456,5557,5558],{"class":473},"    hooks: {\n",[456,5560,5562,5565,5567,5570],{"class":458,"line":5561},15,[456,5563,5564],{"class":469},"      tracedPackages",[456,5566,2383],{"class":473},[456,5568,5569],{"class":2363},"pkgs",[456,5571,5572],{"class":473},") {\n",[456,5574,5576,5579,5582,5584,5587,5590,5593],{"class":458,"line":5575},16,[456,5577,5578],{"class":473},"        console.",[456,5580,5581],{"class":469},"log",[456,5583,2383],{"class":473},[456,5585,5586],{"class":483},"\"Traced packages:\"",[456,5588,5589],{"class":473},", Object.",[456,5591,5592],{"class":469},"keys",[456,5594,5595],{"class":473},"(pkgs));\n",[456,5597,5599],{"class":458,"line":5598},17,[456,5600,5601],{"class":473},"      },\n",[456,5603,5605],{"class":458,"line":5604},18,[456,5606,1440],{"class":473},[456,5608,5610],{"class":458,"line":5609},19,[456,5611,705],{"class":473},[456,5613,5615],{"class":458,"line":5614},20,[456,5616,497],{"class":473},[408,5618,5620],{"id":5619},"oxc",[412,5621,5619],{},[415,5623,5624,5625,949,5627,5630],{},"OXC options for rolldown builds. Includes ",[412,5626,4906],{},[412,5628,5629],{},"transform"," sub-options.",[448,5632,5634],{"className":450,"code":5633,"language":452,"meta":5,"style":5},"export default defineConfig({\n  oxc: {\n    minify: { compress: true, mangle: true },\n  },\n});\n",[412,5635,5636,5646,5651,5665,5669],{"__ignoreMap":5},[456,5637,5638,5640,5642,5644],{"class":458,"line":459},[456,5639,463],{"class":462},[456,5641,466],{"class":462},[456,5643,470],{"class":469},[456,5645,474],{"class":473},[456,5647,5648],{"class":458,"line":477},[456,5649,5650],{"class":473},"  oxc: {\n",[456,5652,5653,5656,5658,5661,5663],{"class":458,"line":494},[456,5654,5655],{"class":473},"    minify: { compress: ",[456,5657,521],{"class":514},[456,5659,5660],{"class":473},", mangle: ",[456,5662,521],{"class":514},[456,5664,3315],{"class":473},[456,5666,5667],{"class":458,"line":702},[456,5668,705],{"class":473},[456,5670,5671],{"class":458,"line":708},[456,5672,497],{"class":473},[403,5674,5676],{"id":5675},"advanced","Advanced",[408,5678,5680],{"id":5679},"dev-1",[412,5681,2831],{},[504,5683,5684],{},[507,5685,509,5686,5688,5689,5691],{},[412,5687,521],{}," for development and ",[412,5690,515],{}," for production.",[415,5693,5694],{},[426,5695,5696],{},"⚠️ Caution! This is an advanced configuration. Things can go wrong if misconfigured.",[448,5698,5700],{"className":450,"code":5699,"language":452,"meta":5,"style":5},"export default defineConfig({\n  dev: true, // force development mode behavior\n});\n",[412,5701,5702,5712,5724],{"__ignoreMap":5},[456,5703,5704,5706,5708,5710],{"class":458,"line":459},[456,5705,463],{"class":462},[456,5707,466],{"class":462},[456,5709,470],{"class":469},[456,5711,474],{"class":473},[456,5713,5714,5717,5719,5721],{"class":458,"line":477},[456,5715,5716],{"class":473},"  dev: ",[456,5718,521],{"class":514},[456,5720,487],{"class":473},[456,5722,5723],{"class":490},"// force development mode behavior\n",[456,5725,5726],{"class":458,"line":494},[456,5727,497],{"class":473},[408,5729,5731],{"id":5730},"typescript",[412,5732,5730],{},[415,5734,509,5735],{},[412,5736,5737,5739,5742,5744,5746,5748,5751,5753,5755,5757,5760,5762,5764],{"className":450,"language":452,"style":5},[456,5738,637],{"class":473},[456,5740,5741],{"class":469},"strict",[456,5743,1154],{"class":473},[456,5745,521],{"class":514},[456,5747,487],{"class":473},[456,5749,5750],{"class":469},"generateRuntimeConfigTypes",[456,5752,1154],{"class":473},[456,5754,515],{"class":514},[456,5756,487],{"class":473},[456,5758,5759],{"class":469},"generateTsConfig",[456,5761,1154],{"class":473},[456,5763,515],{"class":514},[456,5765,2185],{"class":473},[415,5767,5768,5769,487,5771,487,5773,487,5775,487,5778,2870,5781,980],{},"TypeScript configuration options including ",[412,5770,5741],{},[412,5772,5750],{},[412,5774,5759],{},[412,5776,5777],{},"tsConfig",[412,5779,5780],{},"generatedTypesDir",[412,5782,5783],{},"tsconfigPath",[448,5785,5787],{"className":450,"code":5786,"language":452,"meta":5,"style":5},"export default defineConfig({\n  typescript: {\n    strict: true,\n    generateTsConfig: true,\n  },\n});\n",[412,5788,5789,5799,5804,5813,5822,5826],{"__ignoreMap":5},[456,5790,5791,5793,5795,5797],{"class":458,"line":459},[456,5792,463],{"class":462},[456,5794,466],{"class":462},[456,5796,470],{"class":469},[456,5798,474],{"class":473},[456,5800,5801],{"class":458,"line":477},[456,5802,5803],{"class":473},"  typescript: {\n",[456,5805,5806,5809,5811],{"class":458,"line":494},[456,5807,5808],{"class":473},"    strict: ",[456,5810,521],{"class":514},[456,5812,554],{"class":473},[456,5814,5815,5818,5820],{"class":458,"line":702},[456,5816,5817],{"class":473},"    generateTsConfig: ",[456,5819,521],{"class":514},[456,5821,554],{"class":473},[456,5823,5824],{"class":458,"line":708},[456,5825,705],{"class":473},[456,5827,5828],{"class":458,"line":909},[456,5829,497],{"class":473},[408,5831,5833],{"id":5832},"hooks",[412,5834,5832],{},[415,5836,5837],{},[426,5838,5696],{},[415,5840,5841,5842,590],{},"Nitro hooks. See ",[584,5843,5846],{"href":5844,"rel":5845},"https://github.com/unjs/hookable",[588],"hookable",[448,5848,5850],{"className":450,"code":5849,"language":452,"meta":5,"style":5},"export default defineConfig({\n  hooks: {\n    compiled(nitro) {\n      console.log(\"Build compiled successfully!\");\n    },\n  },\n});\n",[412,5851,5852,5862,5867,5878,5893,5897,5901],{"__ignoreMap":5},[456,5853,5854,5856,5858,5860],{"class":458,"line":459},[456,5855,463],{"class":462},[456,5857,466],{"class":462},[456,5859,470],{"class":469},[456,5861,474],{"class":473},[456,5863,5864],{"class":458,"line":477},[456,5865,5866],{"class":473},"  hooks: {\n",[456,5868,5869,5872,5874,5876],{"class":458,"line":494},[456,5870,5871],{"class":469},"    compiled",[456,5873,2383],{"class":473},[456,5875,640],{"class":2363},[456,5877,5572],{"class":473},[456,5879,5880,5883,5885,5887,5890],{"class":458,"line":702},[456,5881,5882],{"class":473},"      console.",[456,5884,5581],{"class":469},[456,5886,2383],{"class":473},[456,5888,5889],{"class":483},"\"Build compiled successfully!\"",[456,5891,5892],{"class":473},");\n",[456,5894,5895],{"class":458,"line":708},[456,5896,1440],{"class":473},[456,5898,5899],{"class":458,"line":909},[456,5900,705],{"class":473},[456,5902,5903],{"class":458,"line":1097},[456,5904,497],{"class":473},[400,5906],{"to":44},[408,5908,5910],{"id":5909},"commands",[412,5911,5909],{},[415,5913,5914],{},[426,5915,5696],{},[415,5917,5918],{},"Preview and deploy command hints are usually filled by deployment presets.",[448,5920,5922],{"className":450,"code":5921,"language":452,"meta":5,"style":5},"export default defineConfig({\n  commands: {\n    preview: \"node ./server/index.mjs\",\n  },\n});\n",[412,5923,5924,5934,5939,5949,5953],{"__ignoreMap":5},[456,5925,5926,5928,5930,5932],{"class":458,"line":459},[456,5927,463],{"class":462},[456,5929,466],{"class":462},[456,5931,470],{"class":469},[456,5933,474],{"class":473},[456,5935,5936],{"class":458,"line":477},[456,5937,5938],{"class":473},"  commands: {\n",[456,5940,5941,5944,5947],{"class":458,"line":494},[456,5942,5943],{"class":473},"    preview: ",[456,5945,5946],{"class":483},"\"node ./server/index.mjs\"",[456,5948,554],{"class":473},[456,5950,5951],{"class":458,"line":702},[456,5952,705],{"class":473},[456,5954,5955],{"class":458,"line":708},[456,5956,497],{"class":473},[408,5958,5960],{"id":5959},"deverrorhandler",[412,5961,5962],{},"devErrorHandler",[415,5964,5965],{},[426,5966,5696],{},[415,5968,5969],{},"A custom error handler function for development errors.",[448,5971,5973],{"className":450,"code":5972,"language":452,"meta":5,"style":5},"export default defineConfig({\n  devErrorHandler: (error, event) => {\n    return new Response(`Dev error: ${error.message}`, { status: 500 });\n  },\n});\n",[412,5974,5975,5985,6004,6036,6040],{"__ignoreMap":5},[456,5976,5977,5979,5981,5983],{"class":458,"line":459},[456,5978,463],{"class":462},[456,5980,466],{"class":462},[456,5982,470],{"class":469},[456,5984,474],{"class":473},[456,5986,5987,5990,5992,5994,5996,5998,6000,6002],{"class":458,"line":477},[456,5988,5989],{"class":469},"  devErrorHandler",[456,5991,5509],{"class":473},[456,5993,3599],{"class":2363},[456,5995,487],{"class":473},[456,5997,3604],{"class":2363},[456,5999,2366],{"class":473},[456,6001,2369],{"class":462},[456,6003,2372],{"class":473},[456,6005,6006,6009,6011,6013,6015,6018,6020,6022,6025,6028,6031,6034],{"class":458,"line":494},[456,6007,6008],{"class":462},"    return",[456,6010,3618],{"class":462},[456,6012,3621],{"class":469},[456,6014,2383],{"class":473},[456,6016,6017],{"class":483},"`Dev error: ${",[456,6019,3599],{"class":473},[456,6021,980],{"class":483},[456,6023,6024],{"class":473},"message",[456,6026,6027],{"class":483},"}`",[456,6029,6030],{"class":473},", { status: ",[456,6032,6033],{"class":514},"500",[456,6035,2400],{"class":473},[456,6037,6038],{"class":458,"line":702},[456,6039,705],{"class":473},[456,6041,6042],{"class":458,"line":708},[456,6043,497],{"class":473},[408,6045,6047],{"id":6046},"framework",[412,6048,6046],{},[504,6050,6051],{},[507,6052,509,6053],{},[412,6054,6055,6057,6060,6062,6065,6067,6070,6072,6075],{"className":450,"language":452,"style":5},[456,6056,637],{"class":473},[456,6058,6059],{"class":469},"name",[456,6061,1154],{"class":473},[456,6063,6064],{"class":483},"\"nitro\"",[456,6066,487],{"class":473},[456,6068,6069],{"class":469},"version",[456,6071,1154],{"class":473},[456,6073,6074],{"class":483},"\"\u003Ccurrent>\"",[456,6076,2185],{"class":473},[415,6078,6079],{},"Framework information. Used by presets and build info. Typically set by higher-level frameworks (e.g. Nuxt).",[448,6081,6083],{"className":450,"code":6082,"language":452,"meta":5,"style":5},"export default defineConfig({\n  framework: { name: \"my-framework\", version: \"2.0.0\" },\n});\n",[412,6084,6085,6095,6111],{"__ignoreMap":5},[456,6086,6087,6089,6091,6093],{"class":458,"line":459},[456,6088,463],{"class":462},[456,6090,466],{"class":462},[456,6092,470],{"class":469},[456,6094,474],{"class":473},[456,6096,6097,6100,6103,6106,6109],{"class":458,"line":477},[456,6098,6099],{"class":473},"  framework: { name: ",[456,6101,6102],{"class":483},"\"my-framework\"",[456,6104,6105],{"class":473},", version: ",[456,6107,6108],{"class":483},"\"2.0.0\"",[456,6110,3315],{"class":473},[456,6112,6113],{"class":458,"line":494},[456,6114,497],{"class":473},[403,6116,6118],{"id":6117},"preset-options","Preset options",[408,6120,6122],{"id":6121},"firebase",[412,6123,6121],{},[415,6125,6126,6127],{},"The options for the firebase functions preset. See ",[584,6128,6130],{"href":6129},"/deploy/providers/firebase#options","Preset Docs",[448,6132,6134],{"className":450,"code":6133,"language":452,"meta":5,"style":5},"export default defineConfig({\n  firebase: {\n    gen: 2, // use Cloud Functions 2nd gen\n    region: \"us-central1\",\n  },\n});\n",[412,6135,6136,6146,6151,6164,6174,6178],{"__ignoreMap":5},[456,6137,6138,6140,6142,6144],{"class":458,"line":459},[456,6139,463],{"class":462},[456,6141,466],{"class":462},[456,6143,470],{"class":469},[456,6145,474],{"class":473},[456,6147,6148],{"class":458,"line":477},[456,6149,6150],{"class":473},"  firebase: {\n",[456,6152,6153,6156,6159,6161],{"class":458,"line":494},[456,6154,6155],{"class":473},"    gen: ",[456,6157,6158],{"class":514},"2",[456,6160,487],{"class":473},[456,6162,6163],{"class":490},"// use Cloud Functions 2nd gen\n",[456,6165,6166,6169,6172],{"class":458,"line":702},[456,6167,6168],{"class":473},"    region: ",[456,6170,6171],{"class":483},"\"us-central1\"",[456,6173,554],{"class":473},[456,6175,6176],{"class":458,"line":708},[456,6177,705],{"class":473},[456,6179,6180],{"class":458,"line":909},[456,6181,497],{"class":473},[408,6183,6185],{"id":6184},"vercel",[412,6186,6184],{},[415,6188,6189,6190],{},"The options for the vercel preset. See ",[584,6191,6130],{"href":203},[448,6193,6195],{"className":450,"code":6194,"language":452,"meta":5,"style":5},"export default defineConfig({\n  vercel: {\n    config: { runtime: \"nodejs20.x\" },\n  },\n});\n",[412,6196,6197,6207,6212,6222,6226],{"__ignoreMap":5},[456,6198,6199,6201,6203,6205],{"class":458,"line":459},[456,6200,463],{"class":462},[456,6202,466],{"class":462},[456,6204,470],{"class":469},[456,6206,474],{"class":473},[456,6208,6209],{"class":458,"line":477},[456,6210,6211],{"class":473},"  vercel: {\n",[456,6213,6214,6217,6220],{"class":458,"line":494},[456,6215,6216],{"class":473},"    config: { runtime: ",[456,6218,6219],{"class":483},"\"nodejs20.x\"",[456,6221,3315],{"class":473},[456,6223,6224],{"class":458,"line":702},[456,6225,705],{"class":473},[456,6227,6228],{"class":458,"line":708},[456,6229,497],{"class":473},[408,6231,6233],{"id":6232},"cloudflare",[412,6234,6232],{},[415,6236,6237,6238],{},"The options for the cloudflare preset. See ",[584,6239,6130],{"href":143},[448,6241,6243],{"className":450,"code":6242,"language":452,"meta":5,"style":5},"export default defineConfig({\n  cloudflare: {\n    wrangler: { compatibility_date: \"2025-01-01\" },\n  },\n});\n",[412,6244,6245,6255,6260,6269,6273],{"__ignoreMap":5},[456,6246,6247,6249,6251,6253],{"class":458,"line":459},[456,6248,463],{"class":462},[456,6250,466],{"class":462},[456,6252,470],{"class":469},[456,6254,474],{"class":473},[456,6256,6257],{"class":458,"line":477},[456,6258,6259],{"class":473},"  cloudflare: {\n",[456,6261,6262,6265,6267],{"class":458,"line":494},[456,6263,6264],{"class":473},"    wrangler: { compatibility_date: ",[456,6266,756],{"class":483},[456,6268,3315],{"class":473},[456,6270,6271],{"class":458,"line":702},[456,6272,705],{"class":473},[456,6274,6275],{"class":458,"line":708},[456,6276,497],{"class":473},[408,6278,6280],{"id":6279},"zephyr",[412,6281,6279],{},[415,6283,6284,6285],{},"The options for the zephyr preset. See ",[584,6286,6130],{"href":6287},"/deploy/providers/zephyr#options",[6289,6290,6291],"style",{},"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 .slsVL, html code.shiki .slsVL{--shiki-light:#24292E;--shiki-default:#E1E4E8;--shiki-dark:#E1E4E8}html pre.shiki code .sfrk1, html code.shiki .sfrk1{--shiki-light:#032F62;--shiki-default:#9ECBFF;--shiki-dark:#9ECBFF}html pre.shiki code .sCsY4, html code.shiki .sCsY4{--shiki-light:#6A737D;--shiki-default:#6A737D;--shiki-dark:#6A737D}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 .suiK_, html code.shiki .suiK_{--shiki-light:#005CC5;--shiki-default:#79B8FF;--shiki-dark:#79B8FF}html pre.shiki code .sQHwn, html code.shiki .sQHwn{--shiki-light:#E36209;--shiki-default:#FFAB70;--shiki-dark:#FFAB70}",{"title":5,"searchDepth":477,"depth":477,"links":6293},[6294,6302,6326,6331,6334,6344,6354,6373,6381],{"id":405,"depth":477,"text":406,"children":6295},[6296,6297,6298,6299,6300,6301],{"id":410,"depth":494,"text":410},{"id":500,"depth":494,"text":500},{"id":561,"depth":494,"text":564},{"id":625,"depth":494,"text":628},{"id":713,"depth":494,"text":716},{"id":765,"depth":494,"text":765},{"id":812,"depth":477,"text":813,"children":6303},[6304,6305,6306,6307,6308,6309,6310,6311,6312,6313,6314,6315,6316,6317,6318,6319,6320,6321,6322,6323,6324,6325],{"id":816,"depth":494,"text":812},{"id":914,"depth":494,"text":914},{"id":1117,"depth":494,"text":931},{"id":1471,"depth":494,"text":1471},{"id":1531,"depth":494,"text":1531},{"id":1604,"depth":494,"text":1607},{"id":1677,"depth":494,"text":1021},{"id":1737,"depth":494,"text":1740},{"id":1805,"depth":494,"text":1805},{"id":1887,"depth":494,"text":1890},{"id":1968,"depth":494,"text":1971},{"id":2023,"depth":494,"text":2026},{"id":2146,"depth":494,"text":2149},{"id":2240,"depth":494,"text":2243},{"id":2310,"depth":494,"text":2310},{"id":2415,"depth":494,"text":2415},{"id":2473,"depth":494,"text":1031},{"id":2539,"depth":494,"text":2542},{"id":2602,"depth":494,"text":2602},{"id":2665,"depth":494,"text":2665},{"id":2719,"depth":494,"text":2719},{"id":2771,"depth":494,"text":2771},{"id":2831,"depth":477,"text":2832,"children":6327},[6328,6329,6330],{"id":2835,"depth":494,"text":2838},{"id":2926,"depth":494,"text":2929},{"id":2983,"depth":494,"text":2986},{"id":3059,"depth":477,"text":3060,"children":6332},[6333],{"id":3063,"depth":494,"text":3059},{"id":3157,"depth":477,"text":23,"children":6335},[6336,6337,6338,6339,6340,6341,6342,6343],{"id":3160,"depth":494,"text":2140},{"id":3211,"depth":494,"text":3214},{"id":3259,"depth":494,"text":3259},{"id":3348,"depth":494,"text":3351},{"id":3423,"depth":494,"text":3423},{"id":3497,"depth":494,"text":3500},{"id":3659,"depth":494,"text":3662},{"id":3910,"depth":494,"text":3910},{"id":4138,"depth":477,"text":4139,"children":6345},[6346,6347,6348,6349,6350,6351,6352,6353],{"id":4142,"depth":494,"text":4145},{"id":4189,"depth":494,"text":4192},{"id":4227,"depth":494,"text":4230},{"id":4325,"depth":494,"text":4328},{"id":4373,"depth":494,"text":4376},{"id":4421,"depth":494,"text":4424},{"id":4468,"depth":494,"text":4471},{"id":4516,"depth":494,"text":4516},{"id":4589,"depth":477,"text":4590,"children":6355},[6356,6357,6358,6359,6360,6361,6362,6363,6364,6365,6366,6367,6368,6369,6370,6371,6372],{"id":4593,"depth":494,"text":4593},{"id":4656,"depth":494,"text":4659},{"id":4704,"depth":494,"text":4707},{"id":4751,"depth":494,"text":4751},{"id":4791,"depth":494,"text":4791},{"id":4846,"depth":494,"text":4846},{"id":4906,"depth":494,"text":4906},{"id":4951,"depth":494,"text":4954},{"id":5005,"depth":494,"text":5005},{"id":5057,"depth":494,"text":5057},{"id":5112,"depth":494,"text":5112},{"id":5171,"depth":494,"text":5174},{"id":5218,"depth":494,"text":5221},{"id":5261,"depth":494,"text":5264},{"id":5312,"depth":494,"text":5315},{"id":5408,"depth":494,"text":5411},{"id":5619,"depth":494,"text":5619},{"id":5675,"depth":477,"text":5676,"children":6374},[6375,6376,6377,6378,6379,6380],{"id":5679,"depth":494,"text":2831},{"id":5730,"depth":494,"text":5730},{"id":5832,"depth":494,"text":5832},{"id":5909,"depth":494,"text":5909},{"id":5959,"depth":494,"text":5962},{"id":6046,"depth":494,"text":6046},{"id":6117,"depth":477,"text":6118,"children":6382},[6383,6384,6385,6386],{"id":6121,"depth":494,"text":6121},{"id":6184,"depth":494,"text":6184},{"id":6232,"depth":494,"text":6232},{"id":6279,"depth":494,"text":6279},"md",{"icon":36},{"icon":36},{"title":218,"description":5},"shycOLpfiSsa3nhSk82jYj-JnTqGUeWCyL61mWsOwV4",[6393,6395],{"title":214,"path":215,"stem":216,"description":6394,"children":-1},"Deploy Nitro apps to Zerops.",{"title":224,"path":225,"stem":226,"description":6396,"icon":229,"children":-1},"Explore Nitro examples to learn how to build full-stack applications",1776075610857]