[{"data":1,"prerenderedAt":6586},["ShallowReactive",2],{"$fGCo9l1hMtNdUiA6QzdUX5X3kLqaWcC5t2kdz4LrvCvc":3,"versions":2028,"-docs-3-x-guide-going-further-experimental-features":2032,"-docs-3-x-guide-going-further-experimental-features-surround":6581},[4,1120,1939],{"title":5,"titleTemplate":6,"icon":7,"path":8,"stem":9,"children":10,"page":108},"Docs",null,"i-lucide-book-marked","/docs/3.x","docs/3.x",[11,109,246,426,907,999,1036,1078],{"title":12,"titleTemplate":13,"icon":14,"path":15,"stem":16,"children":17,"page":108},"Get Started","%s · Get Started with Nuxt","i-lucide-rocket","/docs/3.x/getting-started","docs/3.x/1.getting-started",[18,23,28,33,38,43,48,53,58,63,68,73,78,83,88,93,98,103],{"title":19,"path":20,"stem":21,"titleTemplate":6,"icon":22},"Introduction","/docs/3.x/getting-started/introduction","docs/3.x/1.getting-started/01.introduction","i-lucide-info",{"title":24,"path":25,"stem":26,"titleTemplate":6,"icon":27},"Installation","/docs/3.x/getting-started/installation","docs/3.x/1.getting-started/02.installation","i-lucide-play",{"title":29,"path":30,"stem":31,"titleTemplate":6,"icon":32},"Configuration","/docs/3.x/getting-started/configuration","docs/3.x/1.getting-started/03.configuration","i-lucide-cog",{"title":34,"path":35,"stem":36,"titleTemplate":6,"icon":37},"Views","/docs/3.x/getting-started/views","docs/3.x/1.getting-started/04.views","i-lucide-panels-top-left",{"title":39,"path":40,"stem":41,"titleTemplate":6,"icon":42},"Assets","/docs/3.x/getting-started/assets","docs/3.x/1.getting-started/05.assets","i-lucide-image",{"title":44,"path":45,"stem":46,"titleTemplate":6,"icon":47},"Styling","/docs/3.x/getting-started/styling","docs/3.x/1.getting-started/06.styling","i-lucide-palette",{"title":49,"path":50,"stem":51,"titleTemplate":6,"icon":52},"Routing","/docs/3.x/getting-started/routing","docs/3.x/1.getting-started/07.routing","i-lucide-milestone",{"title":54,"path":55,"stem":56,"titleTemplate":6,"icon":57},"SEO and Meta","/docs/3.x/getting-started/seo-meta","docs/3.x/1.getting-started/08.seo-meta","i-lucide-file-search",{"title":59,"path":60,"stem":61,"titleTemplate":6,"icon":62},"Transitions","/docs/3.x/getting-started/transitions","docs/3.x/1.getting-started/09.transitions","i-lucide-toggle-right",{"title":64,"path":65,"stem":66,"titleTemplate":6,"icon":67},"Data Fetching","/docs/3.x/getting-started/data-fetching","docs/3.x/1.getting-started/10.data-fetching","i-lucide-cable",{"title":69,"path":70,"stem":71,"titleTemplate":6,"icon":72},"State Management","/docs/3.x/getting-started/state-management","docs/3.x/1.getting-started/11.state-management","i-lucide-database",{"title":74,"path":75,"stem":76,"titleTemplate":6,"icon":77},"Error Handling","/docs/3.x/getting-started/error-handling","docs/3.x/1.getting-started/12.error-handling","i-lucide-bug-off",{"title":79,"path":80,"stem":81,"titleTemplate":6,"icon":82},"Server","/docs/3.x/getting-started/server","docs/3.x/1.getting-started/13.server","i-lucide-pc-case",{"title":84,"path":85,"stem":86,"titleTemplate":6,"icon":87},"Layers","/docs/3.x/getting-started/layers","docs/3.x/1.getting-started/14.layers","i-lucide-layers",{"title":89,"path":90,"stem":91,"titleTemplate":6,"icon":92},"Prerendering","/docs/3.x/getting-started/prerendering","docs/3.x/1.getting-started/15.prerendering","i-lucide-file-code-2",{"title":94,"path":95,"stem":96,"titleTemplate":6,"icon":97},"Deployment","/docs/3.x/getting-started/deployment","docs/3.x/1.getting-started/16.deployment","i-lucide-cloud",{"title":99,"path":100,"stem":101,"titleTemplate":6,"icon":102},"Testing","/docs/3.x/getting-started/testing","docs/3.x/1.getting-started/17.testing","i-lucide-circle-check",{"title":104,"path":105,"stem":106,"titleTemplate":6,"icon":107},"Upgrade Guide","/docs/3.x/getting-started/upgrade","docs/3.x/1.getting-started/18.upgrade","i-lucide-circle-arrow-up",false,{"title":110,"titleTemplate":111,"icon":112,"path":113,"stem":114,"children":115,"page":108},"Directory Structure","%s · Nuxt Directory Structure","i-vscode-icons-default-folder","/docs/3.x/directory-structure","docs/3.x/2.directory-structure",[116,121,126,131,136,141,146,151,156,161,165,170,174,179,184,189,194,199,204,209,214,218,223,228,232,236,241],{"title":117,"path":118,"stem":119,"titleTemplate":6,"icon":120},".nuxt","/docs/3.x/directory-structure/nuxt","docs/3.x/2.directory-structure/0.nuxt","i-vscode-icons-folder-type-temp",{"title":122,"path":123,"stem":124,"titleTemplate":6,"icon":125},".output","/docs/3.x/directory-structure/output","docs/3.x/2.directory-structure/0.output","i-vscode-icons-folder-type-package",{"title":127,"path":128,"stem":129,"titleTemplate":6,"icon":130},"assets","/docs/3.x/directory-structure/assets","docs/3.x/2.directory-structure/1.assets","i-vscode-icons-folder-type-asset",{"title":132,"path":133,"stem":134,"titleTemplate":6,"icon":135},"components","/docs/3.x/directory-structure/components","docs/3.x/2.directory-structure/1.components","i-vscode-icons-folder-type-component",{"title":137,"path":138,"stem":139,"titleTemplate":6,"icon":140},"composables","/docs/3.x/directory-structure/composables","docs/3.x/2.directory-structure/1.composables","i-vscode-icons-folder-type-src",{"title":142,"path":143,"stem":144,"titleTemplate":6,"icon":145},"content","/docs/3.x/directory-structure/content","docs/3.x/2.directory-structure/1.content","i-vscode-icons-folder-type-log",{"title":147,"path":148,"stem":149,"titleTemplate":6,"icon":150},"layers","/docs/3.x/directory-structure/layers","docs/3.x/2.directory-structure/1.layers","i-vscode-icons-folder-type-nuxt",{"title":152,"path":153,"stem":154,"titleTemplate":6,"icon":155},"layouts","/docs/3.x/directory-structure/layouts","docs/3.x/2.directory-structure/1.layouts","i-vscode-icons-folder-type-view",{"title":157,"path":158,"stem":159,"titleTemplate":6,"icon":160},"middleware","/docs/3.x/directory-structure/middleware","docs/3.x/2.directory-structure/1.middleware","i-vscode-icons-folder-type-middleware",{"title":162,"path":163,"stem":164,"titleTemplate":6,"icon":150},"modules","/docs/3.x/directory-structure/modules","docs/3.x/2.directory-structure/1.modules",{"title":166,"path":167,"stem":168,"titleTemplate":6,"icon":169},"node_modules","/docs/3.x/directory-structure/node_modules","docs/3.x/2.directory-structure/1.node_modules","i-vscode-icons-folder-type-node",{"title":171,"path":172,"stem":173,"titleTemplate":6,"icon":155},"pages","/docs/3.x/directory-structure/pages","docs/3.x/2.directory-structure/1.pages",{"title":175,"path":176,"stem":177,"titleTemplate":6,"icon":178},"plugins","/docs/3.x/directory-structure/plugins","docs/3.x/2.directory-structure/1.plugins","i-vscode-icons-folder-type-plugin",{"title":180,"path":181,"stem":182,"titleTemplate":6,"icon":183},"public","/docs/3.x/directory-structure/public","docs/3.x/2.directory-structure/1.public","i-vscode-icons-folder-type-public",{"title":185,"path":186,"stem":187,"titleTemplate":6,"icon":188},"server","/docs/3.x/directory-structure/server","docs/3.x/2.directory-structure/1.server","i-vscode-icons-folder-type-server",{"title":190,"path":191,"stem":192,"titleTemplate":6,"icon":193},"shared","/docs/3.x/directory-structure/shared","docs/3.x/2.directory-structure/1.shared","i-vscode-icons-folder-type-shared",{"title":195,"path":196,"stem":197,"titleTemplate":6,"icon":198},"utils","/docs/3.x/directory-structure/utils","docs/3.x/2.directory-structure/1.utils","i-vscode-icons-folder-type-tools",{"title":200,"path":201,"stem":202,"titleTemplate":6,"icon":203},".env","/docs/3.x/directory-structure/env","docs/3.x/2.directory-structure/2.env","i-vscode-icons-file-type-dotenv",{"title":205,"path":206,"stem":207,"titleTemplate":6,"icon":208},".gitignore","/docs/3.x/directory-structure/gitignore","docs/3.x/2.directory-structure/2.gitignore","i-vscode-icons-file-type-git",{"title":210,"path":211,"stem":212,"titleTemplate":6,"icon":213},".nuxtignore","/docs/3.x/directory-structure/nuxtignore","docs/3.x/2.directory-structure/2.nuxtignore","i-vscode-icons-file-type-nuxt",{"title":215,"path":216,"stem":217,"titleTemplate":6,"icon":213},".nuxtrc","/docs/3.x/directory-structure/nuxtrc","docs/3.x/2.directory-structure/2.nuxtrc",{"title":219,"path":220,"stem":221,"titleTemplate":6,"icon":222},"app.vue","/docs/3.x/directory-structure/app","docs/3.x/2.directory-structure/3.app","i-vscode-icons-file-type-vue",{"title":224,"path":225,"stem":226,"titleTemplate":6,"icon":227},"app.config.ts","/docs/3.x/directory-structure/app-config","docs/3.x/2.directory-structure/3.app-config","i-vscode-icons-file-type-light-config",{"title":229,"path":230,"stem":231,"titleTemplate":6,"icon":222},"error.vue","/docs/3.x/directory-structure/error","docs/3.x/2.directory-structure/3.error",{"title":233,"path":234,"stem":235,"titleTemplate":6,"icon":213},"nuxt.config.ts","/docs/3.x/directory-structure/nuxt-config","docs/3.x/2.directory-structure/3.nuxt-config",{"title":237,"path":238,"stem":239,"titleTemplate":6,"icon":240},"package.json","/docs/3.x/directory-structure/package","docs/3.x/2.directory-structure/3.package","i-vscode-icons-file-type-npm",{"title":242,"path":243,"stem":244,"titleTemplate":6,"icon":245},"tsconfig.json","/docs/3.x/directory-structure/tsconfig","docs/3.x/2.directory-structure/3.tsconfig","i-vscode-icons-file-type-tsconfig",{"title":247,"titleTemplate":6,"icon":248,"path":249,"stem":250,"children":251,"page":108},"Guide","i-lucide-book-open","/docs/3.x/guide","docs/3.x/3.guide",[252,287,306,321,356,379],{"title":253,"titleTemplate":254,"icon":255,"path":256,"stem":257,"children":258,"page":108},"Key Concepts","%s · Nuxt Concepts","i-lucide-medal","/docs/3.x/guide/concepts","docs/3.x/3.guide/1.concepts",[259,263,267,271,275,279,283],{"title":260,"path":261,"stem":262,"titleTemplate":6},"Rendering Modes","/docs/3.x/guide/concepts/rendering","docs/3.x/3.guide/1.concepts/1.rendering",{"title":264,"path":265,"stem":266,"titleTemplate":6},"Nuxt Lifecycle","/docs/3.x/guide/concepts/nuxt-lifecycle","docs/3.x/3.guide/1.concepts/2.nuxt-lifecycle",{"title":268,"path":269,"stem":270,"titleTemplate":6},"Auto-imports","/docs/3.x/guide/concepts/auto-imports","docs/3.x/3.guide/1.concepts/3.auto-imports",{"title":272,"path":273,"stem":274,"titleTemplate":6},"Server Engine","/docs/3.x/guide/concepts/server-engine","docs/3.x/3.guide/1.concepts/4.server-engine",{"title":276,"path":277,"stem":278,"titleTemplate":6},"Modules","/docs/3.x/guide/concepts/modules","docs/3.x/3.guide/1.concepts/5.modules",{"title":280,"path":281,"stem":282,"titleTemplate":6},"TypeScript","/docs/3.x/guide/concepts/typescript","docs/3.x/3.guide/1.concepts/8.typescript",{"title":284,"path":285,"stem":286,"titleTemplate":6},"Code Style","/docs/3.x/guide/concepts/code-style","docs/3.x/3.guide/1.concepts/9.code-style",{"title":288,"titleTemplate":289,"icon":290,"path":291,"stem":292,"children":293,"page":108},"Best Practices","%s · Best Practices","i-lucide-square-check","/docs/3.x/guide/best-practices","docs/3.x/3.guide/2.best-practices",[294,298,302],{"title":295,"path":296,"stem":297,"titleTemplate":6},"Nuxt and hydration","/docs/3.x/guide/best-practices/hydration","docs/3.x/3.guide/2.best-practices/hydration",{"title":299,"path":300,"stem":301,"titleTemplate":6},"Nuxt Performance","/docs/3.x/guide/best-practices/performance","docs/3.x/3.guide/2.best-practices/performance",{"title":303,"path":304,"stem":305,"titleTemplate":6},"Nuxt Plugins","/docs/3.x/guide/best-practices/plugins","docs/3.x/3.guide/2.best-practices/plugins",{"title":307,"titleTemplate":308,"icon":309,"path":310,"stem":311,"children":312,"page":108},"Working with AI","Working with AI: %s","i-lucide-bot","/docs/3.x/guide/ai","docs/3.x/3.guide/3.ai",[313,317],{"title":314,"path":315,"stem":316,"titleTemplate":6},"MCP Server","/docs/3.x/guide/ai/mcp","docs/3.x/3.guide/3.ai/1.mcp",{"title":318,"path":319,"stem":320,"titleTemplate":6},"LLMs.txt","/docs/3.x/guide/ai/llms-txt","docs/3.x/3.guide/3.ai/2.llms-txt",{"title":322,"titleTemplate":323,"icon":324,"path":325,"stem":326,"children":327,"page":108},"Module Author Guide","%s · Nuxt Modules Author Guide","i-lucide-box","/docs/3.x/guide/modules","docs/3.x/3.guide/4.modules",[328,332,336,340,344,348,352],{"title":329,"path":330,"stem":331,"titleTemplate":6},"Create Your First Module","/docs/3.x/guide/modules/getting-started","docs/3.x/3.guide/4.modules/1.getting-started",{"title":333,"path":334,"stem":335,"titleTemplate":6},"Understand Module Structure","/docs/3.x/guide/modules/module-anatomy","docs/3.x/3.guide/4.modules/2.module-anatomy",{"title":337,"path":338,"stem":339,"titleTemplate":6},"Add Plugins, Components & More","/docs/3.x/guide/modules/recipes-basics","docs/3.x/3.guide/4.modules/3.recipes-basics",{"title":341,"path":342,"stem":343,"titleTemplate":6},"Use Hooks & Extend Types","/docs/3.x/guide/modules/recipes-advanced","docs/3.x/3.guide/4.modules/4.recipes-advanced",{"title":345,"path":346,"stem":347,"titleTemplate":6},"Test Your Module","/docs/3.x/guide/modules/testing","docs/3.x/3.guide/4.modules/5.testing",{"title":349,"path":350,"stem":351,"titleTemplate":6},"Follow Best Practices","/docs/3.x/guide/modules/best-practices","docs/3.x/3.guide/4.modules/6.best-practices",{"title":353,"path":354,"stem":355,"titleTemplate":6},"Publish & Share Your Module","/docs/3.x/guide/modules/ecosystem","docs/3.x/3.guide/4.modules/7.ecosystem",{"title":357,"titleTemplate":358,"icon":359,"path":360,"stem":361,"children":362,"page":108},"Recipes","%s · Recipes","i-lucide-cooking-pot","/docs/3.x/guide/recipes","docs/3.x/3.guide/5.recipes",[363,367,371,375],{"title":364,"path":365,"stem":366,"titleTemplate":6},"Custom Routing","/docs/3.x/guide/recipes/custom-routing","docs/3.x/3.guide/5.recipes/1.custom-routing",{"title":368,"path":369,"stem":370,"titleTemplate":6},"Vite Plugins","/docs/3.x/guide/recipes/vite-plugin","docs/3.x/3.guide/5.recipes/2.vite-plugin",{"title":372,"path":373,"stem":374,"titleTemplate":6},"Custom useFetch","/docs/3.x/guide/recipes/custom-usefetch","docs/3.x/3.guide/5.recipes/3.custom-usefetch",{"title":376,"path":377,"stem":378,"titleTemplate":6},"Sessions and Authentication","/docs/3.x/guide/recipes/sessions-and-authentication","docs/3.x/3.guide/5.recipes/4.sessions-and-authentication",{"title":380,"titleTemplate":381,"icon":382,"path":383,"stem":384,"children":385,"page":108},"Going Further","%s · Nuxt Advanced","i-lucide-star","/docs/3.x/guide/going-further","docs/3.x/3.guide/6.going-further",[386,390,394,398,402,406,410,414,418,422],{"title":387,"path":388,"stem":389,"titleTemplate":6},"Custom Events","/docs/3.x/guide/going-further/events","docs/3.x/3.guide/6.going-further/1.events",{"title":391,"path":392,"stem":393,"titleTemplate":6},"Experimental Features","/docs/3.x/guide/going-further/experimental-features","docs/3.x/3.guide/6.going-further/1.experimental-features",{"title":395,"path":396,"stem":397,"titleTemplate":6},"Features","/docs/3.x/guide/going-further/features","docs/3.x/3.guide/6.going-further/1.features",{"title":399,"path":400,"stem":401,"titleTemplate":6},"Runtime Config","/docs/3.x/guide/going-further/runtime-config","docs/3.x/3.guide/6.going-further/10.runtime-config",{"title":403,"path":404,"stem":405,"titleTemplate":6},"Nightly Release Channel","/docs/3.x/guide/going-further/nightly-release-channel","docs/3.x/3.guide/6.going-further/11.nightly-release-channel",{"title":407,"path":408,"stem":409,"titleTemplate":6},"Lifecycle Hooks","/docs/3.x/guide/going-further/hooks","docs/3.x/3.guide/6.going-further/2.hooks",{"title":411,"path":412,"stem":413,"titleTemplate":6},"Nuxt Kit","/docs/3.x/guide/going-further/kit","docs/3.x/3.guide/6.going-further/4.kit",{"title":415,"path":416,"stem":417,"titleTemplate":6},"NuxtApp","/docs/3.x/guide/going-further/nuxt-app","docs/3.x/3.guide/6.going-further/6.nuxt-app",{"title":419,"path":420,"stem":421,"titleTemplate":6},"Authoring Nuxt Layers","/docs/3.x/guide/going-further/layers","docs/3.x/3.guide/6.going-further/7.layers",{"title":423,"path":424,"stem":425,"titleTemplate":6},"Debugging","/docs/3.x/guide/going-further/debugging","docs/3.x/3.guide/6.going-further/9.debugging",{"title":427,"titleTemplate":428,"icon":429,"path":430,"stem":431,"children":432,"page":108},"API","%s · Nuxt API","i-lucide-code-xml","/docs/3.x/api","docs/3.x/4.api",[433,499,622,745,816,889,902],{"title":434,"titleTemplate":435,"icon":324,"path":436,"stem":437,"children":438,"page":108},"Components","%s · Nuxt Components","/docs/3.x/api/components","docs/3.x/4.api/1.components",[439,443,447,451,455,459,463,467,471,475,479,483,487,491,495],{"title":440,"path":441,"stem":442,"titleTemplate":6},"\u003CClientOnly>","/docs/3.x/api/components/client-only","docs/3.x/4.api/1.components/1.client-only",{"title":444,"path":445,"stem":446,"titleTemplate":6},"\u003CDevOnly>","/docs/3.x/api/components/dev-only","docs/3.x/4.api/1.components/1.dev-only",{"title":448,"path":449,"stem":450,"titleTemplate":6},"\u003CNuxtClientFallback>","/docs/3.x/api/components/nuxt-client-fallback","docs/3.x/4.api/1.components/1.nuxt-client-fallback",{"title":452,"path":453,"stem":454,"titleTemplate":6},"\u003CNuxtPicture>","/docs/3.x/api/components/nuxt-picture","docs/3.x/4.api/1.components/10.nuxt-picture",{"title":456,"path":457,"stem":458,"titleTemplate":6},"\u003CTeleport>","/docs/3.x/api/components/teleports","docs/3.x/4.api/1.components/11.teleports",{"title":460,"path":461,"stem":462,"titleTemplate":6},"\u003CNuxtRouteAnnouncer>","/docs/3.x/api/components/nuxt-route-announcer","docs/3.x/4.api/1.components/12.nuxt-route-announcer",{"title":464,"path":465,"stem":466,"titleTemplate":6},"\u003CNuxtTime>","/docs/3.x/api/components/nuxt-time","docs/3.x/4.api/1.components/13.nuxt-time",{"title":468,"path":469,"stem":470,"titleTemplate":6},"\u003CNuxtPage>","/docs/3.x/api/components/nuxt-page","docs/3.x/4.api/1.components/2.nuxt-page",{"title":472,"path":473,"stem":474,"titleTemplate":6},"\u003CNuxtLayout>","/docs/3.x/api/components/nuxt-layout","docs/3.x/4.api/1.components/3.nuxt-layout",{"title":476,"path":477,"stem":478,"titleTemplate":6},"\u003CNuxtLink>","/docs/3.x/api/components/nuxt-link","docs/3.x/4.api/1.components/4.nuxt-link",{"title":480,"path":481,"stem":482,"titleTemplate":6},"\u003CNuxtLoadingIndicator>","/docs/3.x/api/components/nuxt-loading-indicator","docs/3.x/4.api/1.components/5.nuxt-loading-indicator",{"title":484,"path":485,"stem":486,"titleTemplate":6},"\u003CNuxtErrorBoundary>","/docs/3.x/api/components/nuxt-error-boundary","docs/3.x/4.api/1.components/6.nuxt-error-boundary",{"title":488,"path":489,"stem":490,"titleTemplate":6},"\u003CNuxtWelcome>","/docs/3.x/api/components/nuxt-welcome","docs/3.x/4.api/1.components/7.nuxt-welcome",{"title":492,"path":493,"stem":494,"titleTemplate":6},"\u003CNuxtIsland>","/docs/3.x/api/components/nuxt-island","docs/3.x/4.api/1.components/8.nuxt-island",{"title":496,"path":497,"stem":498,"titleTemplate":6},"\u003CNuxtImg>","/docs/3.x/api/components/nuxt-img","docs/3.x/4.api/1.components/9.nuxt-img",{"title":500,"titleTemplate":501,"icon":502,"path":503,"stem":504,"children":505,"page":108},"Composables","%s · Nuxt Composables","i-lucide-arrow-left-right","/docs/3.x/api/composables","docs/3.x/4.api/2.composables",[506,510,514,518,522,526,530,534,538,542,546,550,554,558,562,566,570,574,578,582,586,590,594,598,602,606,610,614,618],{"title":507,"path":508,"stem":509,"titleTemplate":6},"onPrehydrate","/docs/3.x/api/composables/on-prehydrate","docs/3.x/4.api/2.composables/on-prehydrate",{"title":511,"path":512,"stem":513,"titleTemplate":6},"useAppConfig","/docs/3.x/api/composables/use-app-config","docs/3.x/4.api/2.composables/use-app-config",{"title":515,"path":516,"stem":517,"titleTemplate":6},"useAsyncData","/docs/3.x/api/composables/use-async-data","docs/3.x/4.api/2.composables/use-async-data",{"title":519,"path":520,"stem":521,"titleTemplate":6},"useCookie","/docs/3.x/api/composables/use-cookie","docs/3.x/4.api/2.composables/use-cookie",{"title":523,"path":524,"stem":525,"titleTemplate":6},"useError","/docs/3.x/api/composables/use-error","docs/3.x/4.api/2.composables/use-error",{"title":527,"path":528,"stem":529,"titleTemplate":6},"useFetch","/docs/3.x/api/composables/use-fetch","docs/3.x/4.api/2.composables/use-fetch",{"title":531,"path":532,"stem":533,"titleTemplate":6},"useHead","/docs/3.x/api/composables/use-head","docs/3.x/4.api/2.composables/use-head",{"title":535,"path":536,"stem":537,"titleTemplate":6},"useHeadSafe","/docs/3.x/api/composables/use-head-safe","docs/3.x/4.api/2.composables/use-head-safe",{"title":539,"path":540,"stem":541,"titleTemplate":6},"useHydration","/docs/3.x/api/composables/use-hydration","docs/3.x/4.api/2.composables/use-hydration",{"title":543,"path":544,"stem":545,"titleTemplate":6},"useLazyAsyncData","/docs/3.x/api/composables/use-lazy-async-data","docs/3.x/4.api/2.composables/use-lazy-async-data",{"title":547,"path":548,"stem":549,"titleTemplate":6},"useLazyFetch","/docs/3.x/api/composables/use-lazy-fetch","docs/3.x/4.api/2.composables/use-lazy-fetch",{"title":551,"path":552,"stem":553,"titleTemplate":6},"useLoadingIndicator","/docs/3.x/api/composables/use-loading-indicator","docs/3.x/4.api/2.composables/use-loading-indicator",{"title":555,"path":556,"stem":557,"titleTemplate":6},"useNuxtApp","/docs/3.x/api/composables/use-nuxt-app","docs/3.x/4.api/2.composables/use-nuxt-app",{"title":559,"path":560,"stem":561,"titleTemplate":6},"useNuxtData","/docs/3.x/api/composables/use-nuxt-data","docs/3.x/4.api/2.composables/use-nuxt-data",{"title":563,"path":564,"stem":565,"titleTemplate":6},"usePreviewMode","/docs/3.x/api/composables/use-preview-mode","docs/3.x/4.api/2.composables/use-preview-mode",{"title":567,"path":568,"stem":569,"titleTemplate":6},"useRequestEvent","/docs/3.x/api/composables/use-request-event","docs/3.x/4.api/2.composables/use-request-event",{"title":571,"path":572,"stem":573,"titleTemplate":6},"useRequestFetch","/docs/3.x/api/composables/use-request-fetch","docs/3.x/4.api/2.composables/use-request-fetch",{"title":575,"path":576,"stem":577,"titleTemplate":6},"useRequestHeader","/docs/3.x/api/composables/use-request-header","docs/3.x/4.api/2.composables/use-request-header",{"title":579,"path":580,"stem":581,"titleTemplate":6},"useRequestHeaders","/docs/3.x/api/composables/use-request-headers","docs/3.x/4.api/2.composables/use-request-headers",{"title":583,"path":584,"stem":585,"titleTemplate":6},"useRequestURL","/docs/3.x/api/composables/use-request-url","docs/3.x/4.api/2.composables/use-request-url",{"title":587,"path":588,"stem":589,"titleTemplate":6},"useResponseHeader","/docs/3.x/api/composables/use-response-header","docs/3.x/4.api/2.composables/use-response-header",{"title":591,"path":592,"stem":593,"titleTemplate":6},"useRoute","/docs/3.x/api/composables/use-route","docs/3.x/4.api/2.composables/use-route",{"title":595,"path":596,"stem":597,"titleTemplate":6},"useRouteAnnouncer","/docs/3.x/api/composables/use-route-announcer","docs/3.x/4.api/2.composables/use-route-announcer",{"title":599,"path":600,"stem":601,"titleTemplate":6},"useRouter","/docs/3.x/api/composables/use-router","docs/3.x/4.api/2.composables/use-router",{"title":603,"path":604,"stem":605,"titleTemplate":6},"useRuntimeConfig","/docs/3.x/api/composables/use-runtime-config","docs/3.x/4.api/2.composables/use-runtime-config",{"title":607,"path":608,"stem":609,"titleTemplate":6},"useRuntimeHook","/docs/3.x/api/composables/use-runtime-hook","docs/3.x/4.api/2.composables/use-runtime-hook",{"title":611,"path":612,"stem":613,"titleTemplate":6},"useSeoMeta","/docs/3.x/api/composables/use-seo-meta","docs/3.x/4.api/2.composables/use-seo-meta",{"title":615,"path":616,"stem":617,"titleTemplate":6},"useServerSeoMeta","/docs/3.x/api/composables/use-server-seo-meta","docs/3.x/4.api/2.composables/use-server-seo-meta",{"title":619,"path":620,"stem":621,"titleTemplate":6},"useState","/docs/3.x/api/composables/use-state","docs/3.x/4.api/2.composables/use-state",{"title":623,"titleTemplate":624,"icon":625,"path":626,"stem":627,"children":628,"page":108},"Utils","%s · Nuxt Utils","i-lucide-square-function","/docs/3.x/api/utils","docs/3.x/4.api/3.utils",[629,633,637,641,645,649,653,657,661,665,669,673,677,681,685,689,693,697,701,705,709,713,717,721,725,729,733,737,741],{"title":630,"path":631,"stem":632,"titleTemplate":6},"$fetch","/docs/3.x/api/utils/dollarfetch","docs/3.x/4.api/3.utils/$fetch",{"title":634,"path":635,"stem":636,"titleTemplate":6},"abortNavigation","/docs/3.x/api/utils/abort-navigation","docs/3.x/4.api/3.utils/abort-navigation",{"title":638,"path":639,"stem":640,"titleTemplate":6},"addRouteMiddleware","/docs/3.x/api/utils/add-route-middleware","docs/3.x/4.api/3.utils/add-route-middleware",{"title":642,"path":643,"stem":644,"titleTemplate":6},"callOnce","/docs/3.x/api/utils/call-once","docs/3.x/4.api/3.utils/call-once",{"title":646,"path":647,"stem":648,"titleTemplate":6},"clearError","/docs/3.x/api/utils/clear-error","docs/3.x/4.api/3.utils/clear-error",{"title":650,"path":651,"stem":652,"titleTemplate":6},"clearNuxtData","/docs/3.x/api/utils/clear-nuxt-data","docs/3.x/4.api/3.utils/clear-nuxt-data",{"title":654,"path":655,"stem":656,"titleTemplate":6},"clearNuxtState","/docs/3.x/api/utils/clear-nuxt-state","docs/3.x/4.api/3.utils/clear-nuxt-state",{"title":658,"path":659,"stem":660,"titleTemplate":6},"createError","/docs/3.x/api/utils/create-error","docs/3.x/4.api/3.utils/create-error",{"title":662,"path":663,"stem":664,"titleTemplate":6},"defineLazyHydrationComponent","/docs/3.x/api/utils/define-lazy-hydration-component","docs/3.x/4.api/3.utils/define-lazy-hydration-component",{"title":666,"path":667,"stem":668,"titleTemplate":6},"defineNuxtComponent","/docs/3.x/api/utils/define-nuxt-component","docs/3.x/4.api/3.utils/define-nuxt-component",{"title":670,"path":671,"stem":672,"titleTemplate":6},"defineNuxtPlugin","/docs/3.x/api/utils/define-nuxt-plugin","docs/3.x/4.api/3.utils/define-nuxt-plugin",{"title":674,"path":675,"stem":676,"titleTemplate":6},"defineNuxtRouteMiddleware","/docs/3.x/api/utils/define-nuxt-route-middleware","docs/3.x/4.api/3.utils/define-nuxt-route-middleware",{"title":678,"path":679,"stem":680,"titleTemplate":6},"definePageMeta","/docs/3.x/api/utils/define-page-meta","docs/3.x/4.api/3.utils/define-page-meta",{"title":682,"path":683,"stem":684,"titleTemplate":6},"defineRouteRules","/docs/3.x/api/utils/define-route-rules","docs/3.x/4.api/3.utils/define-route-rules",{"title":686,"path":687,"stem":688,"titleTemplate":6},"navigateTo","/docs/3.x/api/utils/navigate-to","docs/3.x/4.api/3.utils/navigate-to",{"title":690,"path":691,"stem":692,"titleTemplate":6},"onBeforeRouteLeave","/docs/3.x/api/utils/on-before-route-leave","docs/3.x/4.api/3.utils/on-before-route-leave",{"title":694,"path":695,"stem":696,"titleTemplate":6},"onBeforeRouteUpdate","/docs/3.x/api/utils/on-before-route-update","docs/3.x/4.api/3.utils/on-before-route-update",{"title":698,"path":699,"stem":700,"titleTemplate":6},"onNuxtReady","/docs/3.x/api/utils/on-nuxt-ready","docs/3.x/4.api/3.utils/on-nuxt-ready",{"title":702,"path":703,"stem":704,"titleTemplate":6},"prefetchComponents","/docs/3.x/api/utils/prefetch-components","docs/3.x/4.api/3.utils/prefetch-components",{"title":706,"path":707,"stem":708,"titleTemplate":6},"preloadComponents","/docs/3.x/api/utils/preload-components","docs/3.x/4.api/3.utils/preload-components",{"title":710,"path":711,"stem":712,"titleTemplate":6},"preloadRouteComponents","/docs/3.x/api/utils/preload-route-components","docs/3.x/4.api/3.utils/preload-route-components",{"title":714,"path":715,"stem":716,"titleTemplate":6},"prerenderRoutes","/docs/3.x/api/utils/prerender-routes","docs/3.x/4.api/3.utils/prerender-routes",{"title":718,"path":719,"stem":720,"titleTemplate":6},"refreshCookie","/docs/3.x/api/utils/refresh-cookie","docs/3.x/4.api/3.utils/refresh-cookie",{"title":722,"path":723,"stem":724,"titleTemplate":6},"refreshNuxtData","/docs/3.x/api/utils/refresh-nuxt-data","docs/3.x/4.api/3.utils/refresh-nuxt-data",{"title":726,"path":727,"stem":728,"titleTemplate":6},"reloadNuxtApp","/docs/3.x/api/utils/reload-nuxt-app","docs/3.x/4.api/3.utils/reload-nuxt-app",{"title":730,"path":731,"stem":732,"titleTemplate":6},"setPageLayout","/docs/3.x/api/utils/set-page-layout","docs/3.x/4.api/3.utils/set-page-layout",{"title":734,"path":735,"stem":736,"titleTemplate":6},"setResponseStatus","/docs/3.x/api/utils/set-response-status","docs/3.x/4.api/3.utils/set-response-status",{"title":738,"path":739,"stem":740,"titleTemplate":6},"showError","/docs/3.x/api/utils/show-error","docs/3.x/4.api/3.utils/show-error",{"title":742,"path":743,"stem":744,"titleTemplate":6},"updateAppConfig","/docs/3.x/api/utils/update-app-config","docs/3.x/4.api/3.utils/update-app-config",{"title":746,"titleTemplate":747,"icon":748,"path":749,"stem":750,"children":751,"page":108},"Commands","%s · Nuxt Commands","i-lucide-square-terminal","/docs/3.x/api/commands","docs/3.x/4.api/4.commands",[752,756,760,764,768,772,776,780,784,788,792,796,800,804,808,812],{"title":753,"path":754,"stem":755,"titleTemplate":6},"nuxt add","/docs/3.x/api/commands/add","docs/3.x/4.api/4.commands/add",{"title":757,"path":758,"stem":759,"titleTemplate":6},"nuxt analyze","/docs/3.x/api/commands/analyze","docs/3.x/4.api/4.commands/analyze",{"title":761,"path":762,"stem":763,"titleTemplate":6},"nuxt build","/docs/3.x/api/commands/build","docs/3.x/4.api/4.commands/build",{"title":765,"path":766,"stem":767,"titleTemplate":6},"nuxt build-module","/docs/3.x/api/commands/build-module","docs/3.x/4.api/4.commands/build-module",{"title":769,"path":770,"stem":771,"titleTemplate":6},"nuxt cleanup","/docs/3.x/api/commands/cleanup","docs/3.x/4.api/4.commands/cleanup",{"title":773,"path":774,"stem":775,"titleTemplate":6},"nuxt dev","/docs/3.x/api/commands/dev","docs/3.x/4.api/4.commands/dev",{"title":777,"path":778,"stem":779,"titleTemplate":6},"nuxt devtools","/docs/3.x/api/commands/devtools","docs/3.x/4.api/4.commands/devtools",{"title":781,"path":782,"stem":783,"titleTemplate":6},"nuxt generate","/docs/3.x/api/commands/generate","docs/3.x/4.api/4.commands/generate",{"title":785,"path":786,"stem":787,"titleTemplate":6},"nuxt info","/docs/3.x/api/commands/info","docs/3.x/4.api/4.commands/info",{"title":789,"path":790,"stem":791,"titleTemplate":6},"create nuxt","/docs/3.x/api/commands/init","docs/3.x/4.api/4.commands/init",{"title":793,"path":794,"stem":795,"titleTemplate":6},"nuxt module","/docs/3.x/api/commands/module","docs/3.x/4.api/4.commands/module",{"title":797,"path":798,"stem":799,"titleTemplate":6},"nuxt prepare","/docs/3.x/api/commands/prepare","docs/3.x/4.api/4.commands/prepare",{"title":801,"path":802,"stem":803,"titleTemplate":6},"nuxt preview","/docs/3.x/api/commands/preview","docs/3.x/4.api/4.commands/preview",{"title":805,"path":806,"stem":807,"titleTemplate":6},"nuxt test","/docs/3.x/api/commands/test","docs/3.x/4.api/4.commands/test",{"title":809,"path":810,"stem":811,"titleTemplate":6},"nuxt typecheck","/docs/3.x/api/commands/typecheck","docs/3.x/4.api/4.commands/typecheck",{"title":813,"path":814,"stem":815,"titleTemplate":6},"nuxt upgrade","/docs/3.x/api/commands/upgrade","docs/3.x/4.api/4.commands/upgrade",{"title":411,"titleTemplate":817,"icon":818,"path":819,"stem":820,"children":821,"page":108},"%s · Nuxt Kit","i-lucide-package","/docs/3.x/api/kit","docs/3.x/4.api/5.kit",[822,825,828,832,836,840,844,848,852,855,859,863,866,869,873,877,881,885],{"title":276,"path":823,"stem":824,"titleTemplate":6},"/docs/3.x/api/kit/modules","docs/3.x/4.api/5.kit/1.modules",{"title":399,"path":826,"stem":827,"titleTemplate":6},"/docs/3.x/api/kit/runtime-config","docs/3.x/4.api/5.kit/10.runtime-config",{"title":829,"path":830,"stem":831,"titleTemplate":6},"Templates","/docs/3.x/api/kit/templates","docs/3.x/4.api/5.kit/10.templates",{"title":833,"path":834,"stem":835,"titleTemplate":6},"Nitro","/docs/3.x/api/kit/nitro","docs/3.x/4.api/5.kit/11.nitro",{"title":837,"path":838,"stem":839,"titleTemplate":6},"Resolving","/docs/3.x/api/kit/resolving","docs/3.x/4.api/5.kit/12.resolving",{"title":841,"path":842,"stem":843,"titleTemplate":6},"Logging","/docs/3.x/api/kit/logging","docs/3.x/4.api/5.kit/13.logging",{"title":845,"path":846,"stem":847,"titleTemplate":6},"Builder","/docs/3.x/api/kit/builder","docs/3.x/4.api/5.kit/14.builder",{"title":849,"path":850,"stem":851,"titleTemplate":6},"Examples","/docs/3.x/api/kit/examples","docs/3.x/4.api/5.kit/15.examples",{"title":84,"path":853,"stem":854,"titleTemplate":6},"/docs/3.x/api/kit/layers","docs/3.x/4.api/5.kit/16.layers",{"title":856,"path":857,"stem":858,"titleTemplate":6},"Programmatic Usage","/docs/3.x/api/kit/programmatic","docs/3.x/4.api/5.kit/2.programmatic",{"title":860,"path":861,"stem":862,"titleTemplate":6},"Compatibility","/docs/3.x/api/kit/compatibility","docs/3.x/4.api/5.kit/3.compatibility",{"title":268,"path":864,"stem":865,"titleTemplate":6},"/docs/3.x/api/kit/autoimports","docs/3.x/4.api/5.kit/4.autoimports",{"title":434,"path":867,"stem":868,"titleTemplate":6},"/docs/3.x/api/kit/components","docs/3.x/4.api/5.kit/5.components",{"title":870,"path":871,"stem":872,"titleTemplate":6},"Context","/docs/3.x/api/kit/context","docs/3.x/4.api/5.kit/6.context",{"title":874,"path":875,"stem":876,"titleTemplate":6},"Pages","/docs/3.x/api/kit/pages","docs/3.x/4.api/5.kit/7.pages",{"title":878,"path":879,"stem":880,"titleTemplate":6},"Layout","/docs/3.x/api/kit/layout","docs/3.x/4.api/5.kit/8.layout",{"title":882,"path":883,"stem":884,"titleTemplate":6},"Head","/docs/3.x/api/kit/head","docs/3.x/4.api/5.kit/9.head",{"title":886,"path":887,"stem":888,"titleTemplate":6},"Plugins","/docs/3.x/api/kit/plugins","docs/3.x/4.api/5.kit/9.plugins",{"title":890,"titleTemplate":6,"icon":891,"path":892,"stem":893,"children":894,"page":108},"Advanced","i-lucide-brain","/docs/3.x/api/advanced","docs/3.x/4.api/6.advanced",[895,898],{"title":407,"path":896,"stem":897,"titleTemplate":6},"/docs/3.x/api/advanced/hooks","docs/3.x/4.api/6.advanced/1.hooks",{"title":899,"path":900,"stem":901,"titleTemplate":6},"Import meta","/docs/3.x/api/advanced/import-meta","docs/3.x/4.api/6.advanced/2.import-meta",{"title":903,"path":904,"stem":905,"titleTemplate":906,"icon":32},"Nuxt Configuration","/docs/3.x/api/nuxt-config","docs/3.x/4.api/6.nuxt-config","%s",{"title":849,"titleTemplate":908,"icon":909,"path":910,"stem":911,"children":912,"page":108},"%s · Nuxt Examples","i-lucide-app-window-mac","/docs/3.x/examples","docs/3.x/4.examples",[913,917,939,954,990],{"title":914,"path":915,"stem":916,"titleTemplate":6},"Hello World","/docs/3.x/examples/hello-world","docs/3.x/4.examples/0.hello-world",{"title":395,"path":918,"stem":919,"children":920,"page":108},"/docs/3.x/examples/features","docs/3.x/4.examples/1.features",[921,925,928,931,935],{"title":922,"path":923,"stem":924,"titleTemplate":6},"Auto Imports","/docs/3.x/examples/features/auto-imports","docs/3.x/4.examples/1.features/1.auto-imports",{"title":64,"path":926,"stem":927,"titleTemplate":6},"/docs/3.x/examples/features/data-fetching","docs/3.x/4.examples/1.features/2.data-fetching",{"title":69,"path":929,"stem":930,"titleTemplate":6},"/docs/3.x/examples/features/state-management","docs/3.x/4.examples/1.features/3.state-management",{"title":932,"path":933,"stem":934,"titleTemplate":6},"Meta Tags","/docs/3.x/examples/features/meta-tags","docs/3.x/4.examples/1.features/4.meta-tags",{"title":936,"path":937,"stem":938,"titleTemplate":6},"Layouts","/docs/3.x/examples/features/layouts","docs/3.x/4.examples/1.features/5.layouts",{"title":49,"path":940,"stem":941,"children":942,"page":108},"/docs/3.x/examples/routing","docs/3.x/4.examples/2.routing",[943,947,950],{"title":944,"path":945,"stem":946,"titleTemplate":6},"Middleware","/docs/3.x/examples/routing/middleware","docs/3.x/4.examples/2.routing/middleware",{"title":874,"path":948,"stem":949,"titleTemplate":6},"/docs/3.x/examples/routing/pages","docs/3.x/4.examples/2.routing/pages",{"title":951,"path":952,"stem":953,"titleTemplate":6},"Universal Router","/docs/3.x/examples/routing/universal-router","docs/3.x/4.examples/2.routing/universal-router",{"title":890,"path":955,"stem":956,"children":957,"page":108},"/docs/3.x/examples/advanced","docs/3.x/4.examples/4.advanced",[958,961,964,968,972,976,980,983,986],{"title":84,"path":959,"stem":960,"titleTemplate":6},"/docs/3.x/examples/advanced/config-extends","docs/3.x/4.examples/4.advanced/config-extends",{"title":74,"path":962,"stem":963,"titleTemplate":6},"/docs/3.x/examples/advanced/error-handling","docs/3.x/4.examples/4.advanced/error-handling",{"title":965,"path":966,"stem":967,"titleTemplate":6},"JSX / TSX","/docs/3.x/examples/advanced/jsx","docs/3.x/4.examples/4.advanced/jsx",{"title":969,"path":970,"stem":971,"titleTemplate":6},"Locale","/docs/3.x/examples/advanced/locale","docs/3.x/4.examples/4.advanced/locale",{"title":973,"path":974,"stem":975,"titleTemplate":6},"Module Extend Pages","/docs/3.x/examples/advanced/module-extend-pages","docs/3.x/4.examples/4.advanced/module-extend-pages",{"title":977,"path":978,"stem":979,"titleTemplate":6},"Teleport","/docs/3.x/examples/advanced/teleport","docs/3.x/4.examples/4.advanced/teleport",{"title":99,"path":981,"stem":982,"titleTemplate":6},"/docs/3.x/examples/advanced/testing","docs/3.x/4.examples/4.advanced/testing",{"title":519,"path":984,"stem":985,"titleTemplate":6},"/docs/3.x/examples/advanced/use-cookie","docs/3.x/4.examples/4.advanced/use-cookie",{"title":987,"path":988,"stem":989,"titleTemplate":6},"Use Custom Fetch Composable","/docs/3.x/examples/advanced/use-custom-fetch-composable","docs/3.x/4.examples/4.advanced/use-custom-fetch-composable",{"title":991,"path":992,"stem":993,"children":994,"page":108},"Experimental","/docs/3.x/examples/experimental","docs/3.x/4.examples/7.experimental",[995],{"title":996,"path":997,"stem":998,"titleTemplate":6},"WASM","/docs/3.x/examples/experimental/wasm","docs/3.x/4.examples/7.experimental/wasm",{"title":1000,"titleTemplate":1001,"icon":1002,"path":1003,"stem":1004,"children":1005,"page":108},"Community","%s · Nuxt Community","i-lucide-messages-square","/docs/3.x/community","docs/3.x/5.community",[1006,1011,1016,1021,1026,1031],{"title":1007,"path":1008,"stem":1009,"titleTemplate":6,"icon":1010},"Getting Help","/docs/3.x/community/getting-help","docs/3.x/5.community/2.getting-help","i-lucide-life-buoy",{"title":1012,"path":1013,"stem":1014,"titleTemplate":6,"icon":1015},"Reporting Bugs","/docs/3.x/community/reporting-bugs","docs/3.x/5.community/3.reporting-bugs","i-lucide-bug",{"title":1017,"path":1018,"stem":1019,"titleTemplate":6,"icon":1020},"Contribution","/docs/3.x/community/contribution","docs/3.x/5.community/4.contribution","i-lucide-git-pull-request",{"title":1022,"path":1023,"stem":1024,"titleTemplate":6,"icon":1025},"Framework","/docs/3.x/community/framework-contribution","docs/3.x/5.community/5.framework-contribution","i-lucide-github",{"title":1027,"path":1028,"stem":1029,"titleTemplate":6,"icon":1030},"Roadmap","/docs/3.x/community/roadmap","docs/3.x/5.community/6.roadmap","i-lucide-map",{"title":1032,"path":1033,"stem":1034,"titleTemplate":6,"icon":1035},"Releases","/docs/3.x/community/changelog","docs/3.x/5.community/7.changelog","i-lucide-bell-dot",{"title":1037,"titleTemplate":1038,"icon":1039,"path":1040,"stem":1041,"children":1042,"page":108},"Migrate to Nuxt Bridge","Migrate to Nuxt Bridge: %s","i-lucide-ship","/docs/3.x/bridge","docs/3.x/6.bridge",[1043,1047,1050,1053,1057,1061,1065,1068,1071,1074],{"title":1044,"path":1045,"stem":1046,"titleTemplate":6},"Overview","/docs/3.x/bridge/overview","docs/3.x/6.bridge/1.overview",{"title":29,"path":1048,"stem":1049,"titleTemplate":6},"/docs/3.x/bridge/configuration","docs/3.x/6.bridge/10.configuration",{"title":280,"path":1051,"stem":1052,"titleTemplate":6},"/docs/3.x/bridge/typescript","docs/3.x/6.bridge/2.typescript",{"title":1054,"path":1055,"stem":1056,"titleTemplate":6},"Legacy Composition API","/docs/3.x/bridge/bridge-composition-api","docs/3.x/6.bridge/3.bridge-composition-api",{"title":1058,"path":1059,"stem":1060,"titleTemplate":6},"Plugins and Middleware","/docs/3.x/bridge/plugins-and-middleware","docs/3.x/6.bridge/4.plugins-and-middleware",{"title":1062,"path":1063,"stem":1064,"titleTemplate":6},"New Composition API","/docs/3.x/bridge/nuxt3-compatible-api","docs/3.x/6.bridge/5.nuxt3-compatible-api",{"title":932,"path":1066,"stem":1067,"titleTemplate":6},"/docs/3.x/bridge/meta","docs/3.x/6.bridge/6.meta",{"title":399,"path":1069,"stem":1070,"titleTemplate":6},"/docs/3.x/bridge/runtime-config","docs/3.x/6.bridge/7.runtime-config",{"title":833,"path":1072,"stem":1073,"titleTemplate":6},"/docs/3.x/bridge/nitro","docs/3.x/6.bridge/8.nitro",{"title":1075,"path":1076,"stem":1077,"titleTemplate":6},"Vite","/docs/3.x/bridge/vite","docs/3.x/6.bridge/9.vite",{"title":1079,"titleTemplate":1080,"icon":107,"path":1081,"stem":1082,"children":1083,"page":108},"Migrate to Nuxt 3","Migrate to Nuxt 3: %s","/docs/3.x/migration","docs/3.x/7.migration",[1084,1087,1091,1094,1097,1100,1103,1106,1109,1113,1117],{"title":1044,"path":1085,"stem":1086,"titleTemplate":6},"/docs/3.x/migration/overview","docs/3.x/7.migration/1.overview",{"title":1088,"path":1089,"stem":1090,"titleTemplate":6},"Build Tooling","/docs/3.x/migration/bundling","docs/3.x/7.migration/10.bundling",{"title":79,"path":1092,"stem":1093,"titleTemplate":6},"/docs/3.x/migration/server","docs/3.x/7.migration/11.server",{"title":29,"path":1095,"stem":1096,"titleTemplate":6},"/docs/3.x/migration/configuration","docs/3.x/7.migration/2.configuration",{"title":276,"path":1098,"stem":1099,"titleTemplate":6},"/docs/3.x/migration/module-authors","docs/3.x/7.migration/20.module-authors",{"title":922,"path":1101,"stem":1102,"titleTemplate":6},"/docs/3.x/migration/auto-imports","docs/3.x/7.migration/3.auto-imports",{"title":932,"path":1104,"stem":1105,"titleTemplate":6},"/docs/3.x/migration/meta","docs/3.x/7.migration/4.meta",{"title":1058,"path":1107,"stem":1108,"titleTemplate":6},"/docs/3.x/migration/plugins-and-middleware","docs/3.x/7.migration/5.plugins-and-middleware",{"title":1110,"path":1111,"stem":1112,"titleTemplate":6},"Pages and Layouts","/docs/3.x/migration/pages-and-layouts","docs/3.x/7.migration/6.pages-and-layouts",{"title":1114,"path":1115,"stem":1116,"titleTemplate":6},"Component Options","/docs/3.x/migration/component-options","docs/3.x/7.migration/7.component-options",{"title":399,"path":1118,"stem":1119,"titleTemplate":6},"/docs/3.x/migration/runtime-config","docs/3.x/7.migration/8.runtime-config",{"title":5,"titleTemplate":6,"icon":7,"path":1121,"stem":1122,"children":1123,"page":108},"/docs/4.x","docs/4.x",[1124,1182,1276,1403,1769,1846,1868,1902],{"title":12,"titleTemplate":13,"icon":14,"path":1125,"stem":1126,"children":1127,"page":108},"/docs/4.x/getting-started","docs/4.x/1.getting-started",[1128,1131,1134,1137,1140,1143,1146,1149,1152,1155,1158,1161,1164,1167,1170,1173,1176,1179],{"title":19,"path":1129,"stem":1130,"titleTemplate":6,"icon":22},"/docs/4.x/getting-started/introduction","docs/4.x/1.getting-started/01.introduction",{"title":24,"path":1132,"stem":1133,"titleTemplate":6,"icon":27},"/docs/4.x/getting-started/installation","docs/4.x/1.getting-started/02.installation",{"title":29,"path":1135,"stem":1136,"titleTemplate":6,"icon":32},"/docs/4.x/getting-started/configuration","docs/4.x/1.getting-started/03.configuration",{"title":34,"path":1138,"stem":1139,"titleTemplate":6,"icon":37},"/docs/4.x/getting-started/views","docs/4.x/1.getting-started/04.views",{"title":39,"path":1141,"stem":1142,"titleTemplate":6,"icon":42},"/docs/4.x/getting-started/assets","docs/4.x/1.getting-started/05.assets",{"title":44,"path":1144,"stem":1145,"titleTemplate":6,"icon":47},"/docs/4.x/getting-started/styling","docs/4.x/1.getting-started/06.styling",{"title":49,"path":1147,"stem":1148,"titleTemplate":6,"icon":52},"/docs/4.x/getting-started/routing","docs/4.x/1.getting-started/07.routing",{"title":54,"path":1150,"stem":1151,"titleTemplate":6,"icon":57},"/docs/4.x/getting-started/seo-meta","docs/4.x/1.getting-started/08.seo-meta",{"title":59,"path":1153,"stem":1154,"titleTemplate":6,"icon":62},"/docs/4.x/getting-started/transitions","docs/4.x/1.getting-started/09.transitions",{"title":64,"path":1156,"stem":1157,"titleTemplate":6,"icon":67},"/docs/4.x/getting-started/data-fetching","docs/4.x/1.getting-started/10.data-fetching",{"title":69,"path":1159,"stem":1160,"titleTemplate":6,"icon":72},"/docs/4.x/getting-started/state-management","docs/4.x/1.getting-started/11.state-management",{"title":74,"path":1162,"stem":1163,"titleTemplate":6,"icon":77},"/docs/4.x/getting-started/error-handling","docs/4.x/1.getting-started/12.error-handling",{"title":79,"path":1165,"stem":1166,"titleTemplate":6,"icon":82},"/docs/4.x/getting-started/server","docs/4.x/1.getting-started/13.server",{"title":84,"path":1168,"stem":1169,"titleTemplate":6,"icon":87},"/docs/4.x/getting-started/layers","docs/4.x/1.getting-started/14.layers",{"title":89,"path":1171,"stem":1172,"titleTemplate":6,"icon":92},"/docs/4.x/getting-started/prerendering","docs/4.x/1.getting-started/15.prerendering",{"title":94,"path":1174,"stem":1175,"titleTemplate":6,"icon":97},"/docs/4.x/getting-started/deployment","docs/4.x/1.getting-started/16.deployment",{"title":99,"path":1177,"stem":1178,"titleTemplate":6,"icon":102},"/docs/4.x/getting-started/testing","docs/4.x/1.getting-started/17.testing",{"title":104,"path":1180,"stem":1181,"titleTemplate":6,"icon":107},"/docs/4.x/getting-started/upgrade","docs/4.x/1.getting-started/18.upgrade",{"title":110,"titleTemplate":111,"icon":112,"path":1183,"stem":1184,"children":1185,"page":108},"/docs/4.x/directory-structure","docs/4.x/2.directory-structure",[1186,1189,1192,1234,1237,1240,1243,1246,1249,1252,1255,1258,1261,1264,1267,1270,1273],{"title":117,"path":1187,"stem":1188,"titleTemplate":6,"icon":120},"/docs/4.x/directory-structure/nuxt","docs/4.x/2.directory-structure/0.nuxt",{"title":122,"path":1190,"stem":1191,"titleTemplate":6,"icon":125},"/docs/4.x/directory-structure/output","docs/4.x/2.directory-structure/0.output",{"title":1193,"titleTemplate":111,"head":1194,"defaultOpen":1196,"icon":1197,"path":1198,"stem":1199,"children":1200,"page":108},"app",{"title":1195},"app/",true,"i-vscode-icons-folder-type-app","/docs/4.x/directory-structure/app","docs/4.x/2.directory-structure/1.app",[1201,1204,1207,1210,1213,1216,1219,1222,1225,1228,1231],{"title":127,"path":1202,"stem":1203,"titleTemplate":6,"icon":130},"/docs/4.x/directory-structure/app/assets","docs/4.x/2.directory-structure/1.app/1.assets",{"title":132,"path":1205,"stem":1206,"titleTemplate":6,"icon":135},"/docs/4.x/directory-structure/app/components","docs/4.x/2.directory-structure/1.app/1.components",{"title":137,"path":1208,"stem":1209,"titleTemplate":6,"icon":140},"/docs/4.x/directory-structure/app/composables","docs/4.x/2.directory-structure/1.app/1.composables",{"title":152,"path":1211,"stem":1212,"titleTemplate":6,"icon":155},"/docs/4.x/directory-structure/app/layouts","docs/4.x/2.directory-structure/1.app/1.layouts",{"title":157,"path":1214,"stem":1215,"titleTemplate":6,"icon":160},"/docs/4.x/directory-structure/app/middleware","docs/4.x/2.directory-structure/1.app/1.middleware",{"title":171,"path":1217,"stem":1218,"titleTemplate":6,"icon":155},"/docs/4.x/directory-structure/app/pages","docs/4.x/2.directory-structure/1.app/1.pages",{"title":175,"path":1220,"stem":1221,"titleTemplate":6,"icon":178},"/docs/4.x/directory-structure/app/plugins","docs/4.x/2.directory-structure/1.app/1.plugins",{"title":195,"path":1223,"stem":1224,"titleTemplate":6,"icon":198},"/docs/4.x/directory-structure/app/utils","docs/4.x/2.directory-structure/1.app/1.utils",{"title":219,"path":1226,"stem":1227,"titleTemplate":6,"icon":222},"/docs/4.x/directory-structure/app/app","docs/4.x/2.directory-structure/1.app/3.app",{"title":224,"path":1229,"stem":1230,"titleTemplate":6,"icon":227},"/docs/4.x/directory-structure/app/app-config","docs/4.x/2.directory-structure/1.app/3.app-config",{"title":229,"path":1232,"stem":1233,"titleTemplate":6,"icon":222},"/docs/4.x/directory-structure/app/error","docs/4.x/2.directory-structure/1.app/3.error",{"title":142,"path":1235,"stem":1236,"titleTemplate":6,"icon":145},"/docs/4.x/directory-structure/content","docs/4.x/2.directory-structure/1.content",{"title":147,"path":1238,"stem":1239,"titleTemplate":6,"icon":150},"/docs/4.x/directory-structure/layers","docs/4.x/2.directory-structure/1.layers",{"title":162,"path":1241,"stem":1242,"titleTemplate":6,"icon":150},"/docs/4.x/directory-structure/modules","docs/4.x/2.directory-structure/1.modules",{"title":166,"path":1244,"stem":1245,"titleTemplate":6,"icon":169},"/docs/4.x/directory-structure/node_modules","docs/4.x/2.directory-structure/1.node_modules",{"title":180,"path":1247,"stem":1248,"titleTemplate":6,"icon":183},"/docs/4.x/directory-structure/public","docs/4.x/2.directory-structure/1.public",{"title":185,"path":1250,"stem":1251,"titleTemplate":6,"icon":188},"/docs/4.x/directory-structure/server","docs/4.x/2.directory-structure/1.server",{"title":190,"path":1253,"stem":1254,"titleTemplate":6,"icon":193},"/docs/4.x/directory-structure/shared","docs/4.x/2.directory-structure/1.shared",{"title":200,"path":1256,"stem":1257,"titleTemplate":6,"icon":203},"/docs/4.x/directory-structure/env","docs/4.x/2.directory-structure/2.env",{"title":205,"path":1259,"stem":1260,"titleTemplate":6,"icon":208},"/docs/4.x/directory-structure/gitignore","docs/4.x/2.directory-structure/2.gitignore",{"title":210,"path":1262,"stem":1263,"titleTemplate":6,"icon":213},"/docs/4.x/directory-structure/nuxtignore","docs/4.x/2.directory-structure/2.nuxtignore",{"title":215,"path":1265,"stem":1266,"titleTemplate":6,"icon":213},"/docs/4.x/directory-structure/nuxtrc","docs/4.x/2.directory-structure/2.nuxtrc",{"title":233,"path":1268,"stem":1269,"titleTemplate":6,"icon":213},"/docs/4.x/directory-structure/nuxt-config","docs/4.x/2.directory-structure/3.nuxt-config",{"title":237,"path":1271,"stem":1272,"titleTemplate":6,"icon":240},"/docs/4.x/directory-structure/package","docs/4.x/2.directory-structure/3.package",{"title":242,"path":1274,"stem":1275,"titleTemplate":6,"icon":245},"/docs/4.x/directory-structure/tsconfig","docs/4.x/2.directory-structure/3.tsconfig",{"title":247,"titleTemplate":6,"icon":248,"path":1277,"stem":1278,"children":1279,"page":108},"/docs/4.x/guide","docs/4.x/3.guide",[1280,1305,1318,1328,1353,1369],{"title":253,"titleTemplate":254,"icon":255,"path":1281,"stem":1282,"children":1283,"page":108},"/docs/4.x/guide/concepts","docs/4.x/3.guide/1.concepts",[1284,1287,1290,1293,1296,1299,1302],{"title":260,"path":1285,"stem":1286,"titleTemplate":6},"/docs/4.x/guide/concepts/rendering","docs/4.x/3.guide/1.concepts/1.rendering",{"title":264,"path":1288,"stem":1289,"titleTemplate":6},"/docs/4.x/guide/concepts/nuxt-lifecycle","docs/4.x/3.guide/1.concepts/2.nuxt-lifecycle",{"title":268,"path":1291,"stem":1292,"titleTemplate":6},"/docs/4.x/guide/concepts/auto-imports","docs/4.x/3.guide/1.concepts/3.auto-imports",{"title":272,"path":1294,"stem":1295,"titleTemplate":6},"/docs/4.x/guide/concepts/server-engine","docs/4.x/3.guide/1.concepts/4.server-engine",{"title":276,"path":1297,"stem":1298,"titleTemplate":6},"/docs/4.x/guide/concepts/modules","docs/4.x/3.guide/1.concepts/5.modules",{"title":280,"path":1300,"stem":1301,"titleTemplate":6},"/docs/4.x/guide/concepts/typescript","docs/4.x/3.guide/1.concepts/8.typescript",{"title":284,"path":1303,"stem":1304,"titleTemplate":6},"/docs/4.x/guide/concepts/code-style","docs/4.x/3.guide/1.concepts/9.code-style",{"title":288,"titleTemplate":289,"icon":290,"path":1306,"stem":1307,"children":1308,"page":108},"/docs/4.x/guide/best-practices","docs/4.x/3.guide/2.best-practices",[1309,1312,1315],{"title":295,"path":1310,"stem":1311,"titleTemplate":6},"/docs/4.x/guide/best-practices/hydration","docs/4.x/3.guide/2.best-practices/hydration",{"title":299,"path":1313,"stem":1314,"titleTemplate":6},"/docs/4.x/guide/best-practices/performance","docs/4.x/3.guide/2.best-practices/performance",{"title":303,"path":1316,"stem":1317,"titleTemplate":6},"/docs/4.x/guide/best-practices/plugins","docs/4.x/3.guide/2.best-practices/plugins",{"title":307,"titleTemplate":308,"icon":309,"path":1319,"stem":1320,"children":1321,"page":108},"/docs/4.x/guide/ai","docs/4.x/3.guide/3.ai",[1322,1325],{"title":314,"path":1323,"stem":1324,"titleTemplate":6},"/docs/4.x/guide/ai/mcp","docs/4.x/3.guide/3.ai/1.mcp",{"title":318,"path":1326,"stem":1327,"titleTemplate":6},"/docs/4.x/guide/ai/llms-txt","docs/4.x/3.guide/3.ai/2.llms-txt",{"title":322,"titleTemplate":323,"icon":324,"path":1329,"stem":1330,"children":1331,"page":108},"/docs/4.x/guide/modules","docs/4.x/3.guide/4.modules",[1332,1335,1338,1341,1344,1347,1350],{"title":329,"path":1333,"stem":1334,"titleTemplate":6},"/docs/4.x/guide/modules/getting-started","docs/4.x/3.guide/4.modules/1.getting-started",{"title":333,"path":1336,"stem":1337,"titleTemplate":6},"/docs/4.x/guide/modules/module-anatomy","docs/4.x/3.guide/4.modules/2.module-anatomy",{"title":337,"path":1339,"stem":1340,"titleTemplate":6},"/docs/4.x/guide/modules/recipes-basics","docs/4.x/3.guide/4.modules/3.recipes-basics",{"title":341,"path":1342,"stem":1343,"titleTemplate":6},"/docs/4.x/guide/modules/recipes-advanced","docs/4.x/3.guide/4.modules/4.recipes-advanced",{"title":345,"path":1345,"stem":1346,"titleTemplate":6},"/docs/4.x/guide/modules/testing","docs/4.x/3.guide/4.modules/5.testing",{"title":349,"path":1348,"stem":1349,"titleTemplate":6},"/docs/4.x/guide/modules/best-practices","docs/4.x/3.guide/4.modules/6.best-practices",{"title":353,"path":1351,"stem":1352,"titleTemplate":6},"/docs/4.x/guide/modules/ecosystem","docs/4.x/3.guide/4.modules/7.ecosystem",{"title":357,"titleTemplate":358,"icon":359,"path":1354,"stem":1355,"children":1356,"page":108},"/docs/4.x/guide/recipes","docs/4.x/3.guide/5.recipes",[1357,1360,1363,1366],{"title":364,"path":1358,"stem":1359,"titleTemplate":6},"/docs/4.x/guide/recipes/custom-routing","docs/4.x/3.guide/5.recipes/1.custom-routing",{"title":368,"path":1361,"stem":1362,"titleTemplate":6},"/docs/4.x/guide/recipes/vite-plugin","docs/4.x/3.guide/5.recipes/2.vite-plugin",{"title":372,"path":1364,"stem":1365,"titleTemplate":6},"/docs/4.x/guide/recipes/custom-usefetch","docs/4.x/3.guide/5.recipes/3.custom-usefetch",{"title":376,"path":1367,"stem":1368,"titleTemplate":6},"/docs/4.x/guide/recipes/sessions-and-authentication","docs/4.x/3.guide/5.recipes/4.sessions-and-authentication",{"title":380,"titleTemplate":381,"icon":382,"path":1370,"stem":1371,"children":1372,"page":108},"/docs/4.x/guide/going-further","docs/4.x/3.guide/6.going-further",[1373,1376,1379,1382,1385,1388,1391,1394,1397,1400],{"title":387,"path":1374,"stem":1375,"titleTemplate":6},"/docs/4.x/guide/going-further/events","docs/4.x/3.guide/6.going-further/1.events",{"title":391,"path":1377,"stem":1378,"titleTemplate":6},"/docs/4.x/guide/going-further/experimental-features","docs/4.x/3.guide/6.going-further/1.experimental-features",{"title":395,"path":1380,"stem":1381,"titleTemplate":6},"/docs/4.x/guide/going-further/features","docs/4.x/3.guide/6.going-further/1.features",{"title":399,"path":1383,"stem":1384,"titleTemplate":6},"/docs/4.x/guide/going-further/runtime-config","docs/4.x/3.guide/6.going-further/10.runtime-config",{"title":403,"path":1386,"stem":1387,"titleTemplate":6},"/docs/4.x/guide/going-further/nightly-release-channel","docs/4.x/3.guide/6.going-further/11.nightly-release-channel",{"title":407,"path":1389,"stem":1390,"titleTemplate":6},"/docs/4.x/guide/going-further/hooks","docs/4.x/3.guide/6.going-further/2.hooks",{"title":411,"path":1392,"stem":1393,"titleTemplate":6},"/docs/4.x/guide/going-further/kit","docs/4.x/3.guide/6.going-further/4.kit",{"title":415,"path":1395,"stem":1396,"titleTemplate":6},"/docs/4.x/guide/going-further/nuxt-app","docs/4.x/3.guide/6.going-further/6.nuxt-app",{"title":419,"path":1398,"stem":1399,"titleTemplate":6},"/docs/4.x/guide/going-further/layers","docs/4.x/3.guide/6.going-further/7.layers",{"title":423,"path":1401,"stem":1402,"titleTemplate":6},"/docs/4.x/guide/going-further/debugging","docs/4.x/3.guide/6.going-further/9.debugging",{"title":427,"titleTemplate":428,"icon":429,"path":1404,"stem":1405,"children":1406,"page":108},"/docs/4.x/api","docs/4.x/4.api",[1407,1460,1555,1646,1698,1756,1766],{"title":434,"titleTemplate":435,"icon":324,"path":1408,"stem":1409,"children":1410,"page":108},"/docs/4.x/api/components","docs/4.x/4.api/1.components",[1411,1414,1417,1420,1423,1426,1429,1432,1436,1439,1442,1445,1448,1451,1454,1457],{"title":440,"path":1412,"stem":1413,"titleTemplate":6},"/docs/4.x/api/components/client-only","docs/4.x/4.api/1.components/1.client-only",{"title":444,"path":1415,"stem":1416,"titleTemplate":6},"/docs/4.x/api/components/dev-only","docs/4.x/4.api/1.components/1.dev-only",{"title":448,"path":1418,"stem":1419,"titleTemplate":6},"/docs/4.x/api/components/nuxt-client-fallback","docs/4.x/4.api/1.components/1.nuxt-client-fallback",{"title":452,"path":1421,"stem":1422,"titleTemplate":6},"/docs/4.x/api/components/nuxt-picture","docs/4.x/4.api/1.components/10.nuxt-picture",{"title":456,"path":1424,"stem":1425,"titleTemplate":6},"/docs/4.x/api/components/teleports","docs/4.x/4.api/1.components/11.teleports",{"title":460,"path":1427,"stem":1428,"titleTemplate":6},"/docs/4.x/api/components/nuxt-route-announcer","docs/4.x/4.api/1.components/12.nuxt-route-announcer",{"title":464,"path":1430,"stem":1431,"titleTemplate":6},"/docs/4.x/api/components/nuxt-time","docs/4.x/4.api/1.components/13.nuxt-time",{"title":1433,"path":1434,"stem":1435,"titleTemplate":6},"\u003CNuxtAnnouncer>","/docs/4.x/api/components/nuxt-announcer","docs/4.x/4.api/1.components/14.nuxt-announcer",{"title":468,"path":1437,"stem":1438,"titleTemplate":6},"/docs/4.x/api/components/nuxt-page","docs/4.x/4.api/1.components/2.nuxt-page",{"title":472,"path":1440,"stem":1441,"titleTemplate":6},"/docs/4.x/api/components/nuxt-layout","docs/4.x/4.api/1.components/3.nuxt-layout",{"title":476,"path":1443,"stem":1444,"titleTemplate":6},"/docs/4.x/api/components/nuxt-link","docs/4.x/4.api/1.components/4.nuxt-link",{"title":480,"path":1446,"stem":1447,"titleTemplate":6},"/docs/4.x/api/components/nuxt-loading-indicator","docs/4.x/4.api/1.components/5.nuxt-loading-indicator",{"title":484,"path":1449,"stem":1450,"titleTemplate":6},"/docs/4.x/api/components/nuxt-error-boundary","docs/4.x/4.api/1.components/6.nuxt-error-boundary",{"title":488,"path":1452,"stem":1453,"titleTemplate":6},"/docs/4.x/api/components/nuxt-welcome","docs/4.x/4.api/1.components/7.nuxt-welcome",{"title":492,"path":1455,"stem":1456,"titleTemplate":6},"/docs/4.x/api/components/nuxt-island","docs/4.x/4.api/1.components/8.nuxt-island",{"title":496,"path":1458,"stem":1459,"titleTemplate":6},"/docs/4.x/api/components/nuxt-img","docs/4.x/4.api/1.components/9.nuxt-img",{"title":500,"titleTemplate":501,"icon":502,"path":1461,"stem":1462,"children":1463,"page":108},"/docs/4.x/api/composables","docs/4.x/4.api/2.composables",[1464,1467,1471,1474,1477,1480,1483,1486,1489,1492,1495,1498,1501,1504,1507,1510,1513,1516,1519,1522,1525,1528,1531,1534,1537,1540,1543,1546,1549,1552],{"title":507,"path":1465,"stem":1466,"titleTemplate":6},"/docs/4.x/api/composables/on-prehydrate","docs/4.x/4.api/2.composables/on-prehydrate",{"title":1468,"path":1469,"stem":1470,"titleTemplate":6},"useAnnouncer","/docs/4.x/api/composables/use-announcer","docs/4.x/4.api/2.composables/use-announcer",{"title":511,"path":1472,"stem":1473,"titleTemplate":6},"/docs/4.x/api/composables/use-app-config","docs/4.x/4.api/2.composables/use-app-config",{"title":515,"path":1475,"stem":1476,"titleTemplate":6},"/docs/4.x/api/composables/use-async-data","docs/4.x/4.api/2.composables/use-async-data",{"title":519,"path":1478,"stem":1479,"titleTemplate":6},"/docs/4.x/api/composables/use-cookie","docs/4.x/4.api/2.composables/use-cookie",{"title":523,"path":1481,"stem":1482,"titleTemplate":6},"/docs/4.x/api/composables/use-error","docs/4.x/4.api/2.composables/use-error",{"title":527,"path":1484,"stem":1485,"titleTemplate":6},"/docs/4.x/api/composables/use-fetch","docs/4.x/4.api/2.composables/use-fetch",{"title":531,"path":1487,"stem":1488,"titleTemplate":6},"/docs/4.x/api/composables/use-head","docs/4.x/4.api/2.composables/use-head",{"title":535,"path":1490,"stem":1491,"titleTemplate":6},"/docs/4.x/api/composables/use-head-safe","docs/4.x/4.api/2.composables/use-head-safe",{"title":539,"path":1493,"stem":1494,"titleTemplate":6},"/docs/4.x/api/composables/use-hydration","docs/4.x/4.api/2.composables/use-hydration",{"title":543,"path":1496,"stem":1497,"titleTemplate":6},"/docs/4.x/api/composables/use-lazy-async-data","docs/4.x/4.api/2.composables/use-lazy-async-data",{"title":547,"path":1499,"stem":1500,"titleTemplate":6},"/docs/4.x/api/composables/use-lazy-fetch","docs/4.x/4.api/2.composables/use-lazy-fetch",{"title":551,"path":1502,"stem":1503,"titleTemplate":6},"/docs/4.x/api/composables/use-loading-indicator","docs/4.x/4.api/2.composables/use-loading-indicator",{"title":555,"path":1505,"stem":1506,"titleTemplate":6},"/docs/4.x/api/composables/use-nuxt-app","docs/4.x/4.api/2.composables/use-nuxt-app",{"title":559,"path":1508,"stem":1509,"titleTemplate":6},"/docs/4.x/api/composables/use-nuxt-data","docs/4.x/4.api/2.composables/use-nuxt-data",{"title":563,"path":1511,"stem":1512,"titleTemplate":6},"/docs/4.x/api/composables/use-preview-mode","docs/4.x/4.api/2.composables/use-preview-mode",{"title":567,"path":1514,"stem":1515,"titleTemplate":6},"/docs/4.x/api/composables/use-request-event","docs/4.x/4.api/2.composables/use-request-event",{"title":571,"path":1517,"stem":1518,"titleTemplate":6},"/docs/4.x/api/composables/use-request-fetch","docs/4.x/4.api/2.composables/use-request-fetch",{"title":575,"path":1520,"stem":1521,"titleTemplate":6},"/docs/4.x/api/composables/use-request-header","docs/4.x/4.api/2.composables/use-request-header",{"title":579,"path":1523,"stem":1524,"titleTemplate":6},"/docs/4.x/api/composables/use-request-headers","docs/4.x/4.api/2.composables/use-request-headers",{"title":583,"path":1526,"stem":1527,"titleTemplate":6},"/docs/4.x/api/composables/use-request-url","docs/4.x/4.api/2.composables/use-request-url",{"title":587,"path":1529,"stem":1530,"titleTemplate":6},"/docs/4.x/api/composables/use-response-header","docs/4.x/4.api/2.composables/use-response-header",{"title":591,"path":1532,"stem":1533,"titleTemplate":6},"/docs/4.x/api/composables/use-route","docs/4.x/4.api/2.composables/use-route",{"title":595,"path":1535,"stem":1536,"titleTemplate":6},"/docs/4.x/api/composables/use-route-announcer","docs/4.x/4.api/2.composables/use-route-announcer",{"title":599,"path":1538,"stem":1539,"titleTemplate":6},"/docs/4.x/api/composables/use-router","docs/4.x/4.api/2.composables/use-router",{"title":603,"path":1541,"stem":1542,"titleTemplate":6},"/docs/4.x/api/composables/use-runtime-config","docs/4.x/4.api/2.composables/use-runtime-config",{"title":607,"path":1544,"stem":1545,"titleTemplate":6},"/docs/4.x/api/composables/use-runtime-hook","docs/4.x/4.api/2.composables/use-runtime-hook",{"title":611,"path":1547,"stem":1548,"titleTemplate":6},"/docs/4.x/api/composables/use-seo-meta","docs/4.x/4.api/2.composables/use-seo-meta",{"title":615,"path":1550,"stem":1551,"titleTemplate":6},"/docs/4.x/api/composables/use-server-seo-meta","docs/4.x/4.api/2.composables/use-server-seo-meta",{"title":619,"path":1553,"stem":1554,"titleTemplate":6},"/docs/4.x/api/composables/use-state","docs/4.x/4.api/2.composables/use-state",{"title":623,"titleTemplate":624,"icon":625,"path":1556,"stem":1557,"children":1558,"page":108},"/docs/4.x/api/utils","docs/4.x/4.api/3.utils",[1559,1562,1565,1568,1571,1574,1577,1580,1583,1586,1589,1592,1595,1598,1601,1604,1607,1610,1613,1616,1619,1622,1625,1628,1631,1634,1637,1640,1643],{"title":630,"path":1560,"stem":1561,"titleTemplate":6},"/docs/4.x/api/utils/dollarfetch","docs/4.x/4.api/3.utils/$fetch",{"title":634,"path":1563,"stem":1564,"titleTemplate":6},"/docs/4.x/api/utils/abort-navigation","docs/4.x/4.api/3.utils/abort-navigation",{"title":638,"path":1566,"stem":1567,"titleTemplate":6},"/docs/4.x/api/utils/add-route-middleware","docs/4.x/4.api/3.utils/add-route-middleware",{"title":642,"path":1569,"stem":1570,"titleTemplate":6},"/docs/4.x/api/utils/call-once","docs/4.x/4.api/3.utils/call-once",{"title":646,"path":1572,"stem":1573,"titleTemplate":6},"/docs/4.x/api/utils/clear-error","docs/4.x/4.api/3.utils/clear-error",{"title":650,"path":1575,"stem":1576,"titleTemplate":6},"/docs/4.x/api/utils/clear-nuxt-data","docs/4.x/4.api/3.utils/clear-nuxt-data",{"title":654,"path":1578,"stem":1579,"titleTemplate":6},"/docs/4.x/api/utils/clear-nuxt-state","docs/4.x/4.api/3.utils/clear-nuxt-state",{"title":658,"path":1581,"stem":1582,"titleTemplate":6},"/docs/4.x/api/utils/create-error","docs/4.x/4.api/3.utils/create-error",{"title":662,"path":1584,"stem":1585,"titleTemplate":6},"/docs/4.x/api/utils/define-lazy-hydration-component","docs/4.x/4.api/3.utils/define-lazy-hydration-component",{"title":666,"path":1587,"stem":1588,"titleTemplate":6},"/docs/4.x/api/utils/define-nuxt-component","docs/4.x/4.api/3.utils/define-nuxt-component",{"title":670,"path":1590,"stem":1591,"titleTemplate":6},"/docs/4.x/api/utils/define-nuxt-plugin","docs/4.x/4.api/3.utils/define-nuxt-plugin",{"title":674,"path":1593,"stem":1594,"titleTemplate":6},"/docs/4.x/api/utils/define-nuxt-route-middleware","docs/4.x/4.api/3.utils/define-nuxt-route-middleware",{"title":678,"path":1596,"stem":1597,"titleTemplate":6},"/docs/4.x/api/utils/define-page-meta","docs/4.x/4.api/3.utils/define-page-meta",{"title":682,"path":1599,"stem":1600,"titleTemplate":6},"/docs/4.x/api/utils/define-route-rules","docs/4.x/4.api/3.utils/define-route-rules",{"title":686,"path":1602,"stem":1603,"titleTemplate":6},"/docs/4.x/api/utils/navigate-to","docs/4.x/4.api/3.utils/navigate-to",{"title":690,"path":1605,"stem":1606,"titleTemplate":6},"/docs/4.x/api/utils/on-before-route-leave","docs/4.x/4.api/3.utils/on-before-route-leave",{"title":694,"path":1608,"stem":1609,"titleTemplate":6},"/docs/4.x/api/utils/on-before-route-update","docs/4.x/4.api/3.utils/on-before-route-update",{"title":698,"path":1611,"stem":1612,"titleTemplate":6},"/docs/4.x/api/utils/on-nuxt-ready","docs/4.x/4.api/3.utils/on-nuxt-ready",{"title":702,"path":1614,"stem":1615,"titleTemplate":6},"/docs/4.x/api/utils/prefetch-components","docs/4.x/4.api/3.utils/prefetch-components",{"title":706,"path":1617,"stem":1618,"titleTemplate":6},"/docs/4.x/api/utils/preload-components","docs/4.x/4.api/3.utils/preload-components",{"title":710,"path":1620,"stem":1621,"titleTemplate":6},"/docs/4.x/api/utils/preload-route-components","docs/4.x/4.api/3.utils/preload-route-components",{"title":714,"path":1623,"stem":1624,"titleTemplate":6},"/docs/4.x/api/utils/prerender-routes","docs/4.x/4.api/3.utils/prerender-routes",{"title":718,"path":1626,"stem":1627,"titleTemplate":6},"/docs/4.x/api/utils/refresh-cookie","docs/4.x/4.api/3.utils/refresh-cookie",{"title":722,"path":1629,"stem":1630,"titleTemplate":6},"/docs/4.x/api/utils/refresh-nuxt-data","docs/4.x/4.api/3.utils/refresh-nuxt-data",{"title":726,"path":1632,"stem":1633,"titleTemplate":6},"/docs/4.x/api/utils/reload-nuxt-app","docs/4.x/4.api/3.utils/reload-nuxt-app",{"title":730,"path":1635,"stem":1636,"titleTemplate":6},"/docs/4.x/api/utils/set-page-layout","docs/4.x/4.api/3.utils/set-page-layout",{"title":734,"path":1638,"stem":1639,"titleTemplate":6},"/docs/4.x/api/utils/set-response-status","docs/4.x/4.api/3.utils/set-response-status",{"title":738,"path":1641,"stem":1642,"titleTemplate":6},"/docs/4.x/api/utils/show-error","docs/4.x/4.api/3.utils/show-error",{"title":742,"path":1644,"stem":1645,"titleTemplate":6},"/docs/4.x/api/utils/update-app-config","docs/4.x/4.api/3.utils/update-app-config",{"title":746,"titleTemplate":747,"icon":748,"path":1647,"stem":1648,"children":1649,"page":108},"/docs/4.x/api/commands","docs/4.x/4.api/4.commands",[1650,1653,1656,1659,1662,1665,1668,1671,1674,1677,1680,1683,1686,1689,1692,1695],{"title":753,"path":1651,"stem":1652,"titleTemplate":6},"/docs/4.x/api/commands/add","docs/4.x/4.api/4.commands/add",{"title":757,"path":1654,"stem":1655,"titleTemplate":6},"/docs/4.x/api/commands/analyze","docs/4.x/4.api/4.commands/analyze",{"title":761,"path":1657,"stem":1658,"titleTemplate":6},"/docs/4.x/api/commands/build","docs/4.x/4.api/4.commands/build",{"title":765,"path":1660,"stem":1661,"titleTemplate":6},"/docs/4.x/api/commands/build-module","docs/4.x/4.api/4.commands/build-module",{"title":769,"path":1663,"stem":1664,"titleTemplate":6},"/docs/4.x/api/commands/cleanup","docs/4.x/4.api/4.commands/cleanup",{"title":773,"path":1666,"stem":1667,"titleTemplate":6},"/docs/4.x/api/commands/dev","docs/4.x/4.api/4.commands/dev",{"title":777,"path":1669,"stem":1670,"titleTemplate":6},"/docs/4.x/api/commands/devtools","docs/4.x/4.api/4.commands/devtools",{"title":781,"path":1672,"stem":1673,"titleTemplate":6},"/docs/4.x/api/commands/generate","docs/4.x/4.api/4.commands/generate",{"title":785,"path":1675,"stem":1676,"titleTemplate":6},"/docs/4.x/api/commands/info","docs/4.x/4.api/4.commands/info",{"title":789,"path":1678,"stem":1679,"titleTemplate":6},"/docs/4.x/api/commands/init","docs/4.x/4.api/4.commands/init",{"title":793,"path":1681,"stem":1682,"titleTemplate":6},"/docs/4.x/api/commands/module","docs/4.x/4.api/4.commands/module",{"title":797,"path":1684,"stem":1685,"titleTemplate":6},"/docs/4.x/api/commands/prepare","docs/4.x/4.api/4.commands/prepare",{"title":801,"path":1687,"stem":1688,"titleTemplate":6},"/docs/4.x/api/commands/preview","docs/4.x/4.api/4.commands/preview",{"title":805,"path":1690,"stem":1691,"titleTemplate":6},"/docs/4.x/api/commands/test","docs/4.x/4.api/4.commands/test",{"title":809,"path":1693,"stem":1694,"titleTemplate":6},"/docs/4.x/api/commands/typecheck","docs/4.x/4.api/4.commands/typecheck",{"title":813,"path":1696,"stem":1697,"titleTemplate":6},"/docs/4.x/api/commands/upgrade","docs/4.x/4.api/4.commands/upgrade",{"title":411,"titleTemplate":817,"icon":818,"path":1699,"stem":1700,"children":1701,"page":108},"/docs/4.x/api/kit","docs/4.x/4.api/5.kit",[1702,1705,1708,1711,1714,1717,1720,1723,1726,1729,1732,1735,1738,1741,1744,1747,1750,1753],{"title":276,"path":1703,"stem":1704,"titleTemplate":6},"/docs/4.x/api/kit/modules","docs/4.x/4.api/5.kit/1.modules",{"title":399,"path":1706,"stem":1707,"titleTemplate":6},"/docs/4.x/api/kit/runtime-config","docs/4.x/4.api/5.kit/10.runtime-config",{"title":829,"path":1709,"stem":1710,"titleTemplate":6},"/docs/4.x/api/kit/templates","docs/4.x/4.api/5.kit/10.templates",{"title":833,"path":1712,"stem":1713,"titleTemplate":6},"/docs/4.x/api/kit/nitro","docs/4.x/4.api/5.kit/11.nitro",{"title":837,"path":1715,"stem":1716,"titleTemplate":6},"/docs/4.x/api/kit/resolving","docs/4.x/4.api/5.kit/12.resolving",{"title":841,"path":1718,"stem":1719,"titleTemplate":6},"/docs/4.x/api/kit/logging","docs/4.x/4.api/5.kit/13.logging",{"title":845,"path":1721,"stem":1722,"titleTemplate":6},"/docs/4.x/api/kit/builder","docs/4.x/4.api/5.kit/14.builder",{"title":849,"path":1724,"stem":1725,"titleTemplate":6},"/docs/4.x/api/kit/examples","docs/4.x/4.api/5.kit/15.examples",{"title":84,"path":1727,"stem":1728,"titleTemplate":6},"/docs/4.x/api/kit/layers","docs/4.x/4.api/5.kit/16.layers",{"title":856,"path":1730,"stem":1731,"titleTemplate":6},"/docs/4.x/api/kit/programmatic","docs/4.x/4.api/5.kit/2.programmatic",{"title":860,"path":1733,"stem":1734,"titleTemplate":6},"/docs/4.x/api/kit/compatibility","docs/4.x/4.api/5.kit/3.compatibility",{"title":268,"path":1736,"stem":1737,"titleTemplate":6},"/docs/4.x/api/kit/autoimports","docs/4.x/4.api/5.kit/4.autoimports",{"title":434,"path":1739,"stem":1740,"titleTemplate":6},"/docs/4.x/api/kit/components","docs/4.x/4.api/5.kit/5.components",{"title":870,"path":1742,"stem":1743,"titleTemplate":6},"/docs/4.x/api/kit/context","docs/4.x/4.api/5.kit/6.context",{"title":874,"path":1745,"stem":1746,"titleTemplate":6},"/docs/4.x/api/kit/pages","docs/4.x/4.api/5.kit/7.pages",{"title":878,"path":1748,"stem":1749,"titleTemplate":6},"/docs/4.x/api/kit/layout","docs/4.x/4.api/5.kit/8.layout",{"title":882,"path":1751,"stem":1752,"titleTemplate":6},"/docs/4.x/api/kit/head","docs/4.x/4.api/5.kit/9.head",{"title":886,"path":1754,"stem":1755,"titleTemplate":6},"/docs/4.x/api/kit/plugins","docs/4.x/4.api/5.kit/9.plugins",{"title":890,"titleTemplate":6,"icon":891,"path":1757,"stem":1758,"children":1759,"page":108},"/docs/4.x/api/advanced","docs/4.x/4.api/6.advanced",[1760,1763],{"title":407,"path":1761,"stem":1762,"titleTemplate":6},"/docs/4.x/api/advanced/hooks","docs/4.x/4.api/6.advanced/1.hooks",{"title":899,"path":1764,"stem":1765,"titleTemplate":6},"/docs/4.x/api/advanced/import-meta","docs/4.x/4.api/6.advanced/2.import-meta",{"title":903,"path":1767,"stem":1768,"titleTemplate":906,"icon":32},"/docs/4.x/api/nuxt-config","docs/4.x/4.api/6.nuxt-config",{"title":849,"titleTemplate":908,"icon":909,"path":1770,"stem":1771,"children":1772,"page":108},"/docs/4.x/examples","docs/4.x/4.examples",[1773,1776,1795,1808,1839],{"title":914,"path":1774,"stem":1775,"titleTemplate":6},"/docs/4.x/examples/hello-world","docs/4.x/4.examples/0.hello-world",{"title":395,"path":1777,"stem":1778,"children":1779,"page":108},"/docs/4.x/examples/features","docs/4.x/4.examples/1.features",[1780,1783,1786,1789,1792],{"title":922,"path":1781,"stem":1782,"titleTemplate":6},"/docs/4.x/examples/features/auto-imports","docs/4.x/4.examples/1.features/1.auto-imports",{"title":64,"path":1784,"stem":1785,"titleTemplate":6},"/docs/4.x/examples/features/data-fetching","docs/4.x/4.examples/1.features/2.data-fetching",{"title":69,"path":1787,"stem":1788,"titleTemplate":6},"/docs/4.x/examples/features/state-management","docs/4.x/4.examples/1.features/3.state-management",{"title":932,"path":1790,"stem":1791,"titleTemplate":6},"/docs/4.x/examples/features/meta-tags","docs/4.x/4.examples/1.features/4.meta-tags",{"title":936,"path":1793,"stem":1794,"titleTemplate":6},"/docs/4.x/examples/features/layouts","docs/4.x/4.examples/1.features/5.layouts",{"title":49,"path":1796,"stem":1797,"children":1798,"page":108},"/docs/4.x/examples/routing","docs/4.x/4.examples/2.routing",[1799,1802,1805],{"title":944,"path":1800,"stem":1801,"titleTemplate":6},"/docs/4.x/examples/routing/middleware","docs/4.x/4.examples/2.routing/middleware",{"title":874,"path":1803,"stem":1804,"titleTemplate":6},"/docs/4.x/examples/routing/pages","docs/4.x/4.examples/2.routing/pages",{"title":951,"path":1806,"stem":1807,"titleTemplate":6},"/docs/4.x/examples/routing/universal-router","docs/4.x/4.examples/2.routing/universal-router",{"title":890,"path":1809,"stem":1810,"children":1811,"page":108},"/docs/4.x/examples/advanced","docs/4.x/4.examples/4.advanced",[1812,1815,1818,1821,1824,1827,1830,1833,1836],{"title":84,"path":1813,"stem":1814,"titleTemplate":6},"/docs/4.x/examples/advanced/config-extends","docs/4.x/4.examples/4.advanced/config-extends",{"title":74,"path":1816,"stem":1817,"titleTemplate":6},"/docs/4.x/examples/advanced/error-handling","docs/4.x/4.examples/4.advanced/error-handling",{"title":965,"path":1819,"stem":1820,"titleTemplate":6},"/docs/4.x/examples/advanced/jsx","docs/4.x/4.examples/4.advanced/jsx",{"title":969,"path":1822,"stem":1823,"titleTemplate":6},"/docs/4.x/examples/advanced/locale","docs/4.x/4.examples/4.advanced/locale",{"title":973,"path":1825,"stem":1826,"titleTemplate":6},"/docs/4.x/examples/advanced/module-extend-pages","docs/4.x/4.examples/4.advanced/module-extend-pages",{"title":977,"path":1828,"stem":1829,"titleTemplate":6},"/docs/4.x/examples/advanced/teleport","docs/4.x/4.examples/4.advanced/teleport",{"title":99,"path":1831,"stem":1832,"titleTemplate":6},"/docs/4.x/examples/advanced/testing","docs/4.x/4.examples/4.advanced/testing",{"title":519,"path":1834,"stem":1835,"titleTemplate":6},"/docs/4.x/examples/advanced/use-cookie","docs/4.x/4.examples/4.advanced/use-cookie",{"title":987,"path":1837,"stem":1838,"titleTemplate":6},"/docs/4.x/examples/advanced/use-custom-fetch-composable","docs/4.x/4.examples/4.advanced/use-custom-fetch-composable",{"title":991,"path":1840,"stem":1841,"children":1842,"page":108},"/docs/4.x/examples/experimental","docs/4.x/4.examples/7.experimental",[1843],{"title":996,"path":1844,"stem":1845,"titleTemplate":6},"/docs/4.x/examples/experimental/wasm","docs/4.x/4.examples/7.experimental/wasm",{"title":1000,"titleTemplate":1001,"icon":1002,"path":1847,"stem":1848,"children":1849,"page":108},"/docs/4.x/community","docs/4.x/5.community",[1850,1853,1856,1859,1862,1865],{"title":1007,"path":1851,"stem":1852,"titleTemplate":6,"icon":1010},"/docs/4.x/community/getting-help","docs/4.x/5.community/2.getting-help",{"title":1012,"path":1854,"stem":1855,"titleTemplate":6,"icon":1015},"/docs/4.x/community/reporting-bugs","docs/4.x/5.community/3.reporting-bugs",{"title":1017,"path":1857,"stem":1858,"titleTemplate":6,"icon":1020},"/docs/4.x/community/contribution","docs/4.x/5.community/4.contribution",{"title":1022,"path":1860,"stem":1861,"titleTemplate":6,"icon":1025},"/docs/4.x/community/framework-contribution","docs/4.x/5.community/5.framework-contribution",{"title":1027,"path":1863,"stem":1864,"titleTemplate":6,"icon":1030},"/docs/4.x/community/roadmap","docs/4.x/5.community/6.roadmap",{"title":1032,"path":1866,"stem":1867,"titleTemplate":6,"icon":1035},"/docs/4.x/community/changelog","docs/4.x/5.community/7.changelog",{"title":1037,"titleTemplate":1038,"icon":1039,"path":1869,"stem":1870,"children":1871,"page":108},"/docs/4.x/bridge","docs/4.x/6.bridge",[1872,1875,1878,1881,1884,1887,1890,1893,1896,1899],{"title":1044,"path":1873,"stem":1874,"titleTemplate":6},"/docs/4.x/bridge/overview","docs/4.x/6.bridge/1.overview",{"title":29,"path":1876,"stem":1877,"titleTemplate":6},"/docs/4.x/bridge/configuration","docs/4.x/6.bridge/10.configuration",{"title":280,"path":1879,"stem":1880,"titleTemplate":6},"/docs/4.x/bridge/typescript","docs/4.x/6.bridge/2.typescript",{"title":1054,"path":1882,"stem":1883,"titleTemplate":6},"/docs/4.x/bridge/bridge-composition-api","docs/4.x/6.bridge/3.bridge-composition-api",{"title":1058,"path":1885,"stem":1886,"titleTemplate":6},"/docs/4.x/bridge/plugins-and-middleware","docs/4.x/6.bridge/4.plugins-and-middleware",{"title":1062,"path":1888,"stem":1889,"titleTemplate":6},"/docs/4.x/bridge/nuxt3-compatible-api","docs/4.x/6.bridge/5.nuxt3-compatible-api",{"title":932,"path":1891,"stem":1892,"titleTemplate":6},"/docs/4.x/bridge/meta","docs/4.x/6.bridge/6.meta",{"title":399,"path":1894,"stem":1895,"titleTemplate":6},"/docs/4.x/bridge/runtime-config","docs/4.x/6.bridge/7.runtime-config",{"title":833,"path":1897,"stem":1898,"titleTemplate":6},"/docs/4.x/bridge/nitro","docs/4.x/6.bridge/8.nitro",{"title":1075,"path":1900,"stem":1901,"titleTemplate":6},"/docs/4.x/bridge/vite","docs/4.x/6.bridge/9.vite",{"title":1079,"titleTemplate":1080,"icon":107,"path":1903,"stem":1904,"children":1905,"page":108},"/docs/4.x/migration","docs/4.x/7.migration",[1906,1909,1912,1915,1918,1921,1924,1927,1930,1933,1936],{"title":1044,"path":1907,"stem":1908,"titleTemplate":6},"/docs/4.x/migration/overview","docs/4.x/7.migration/1.overview",{"title":1088,"path":1910,"stem":1911,"titleTemplate":6},"/docs/4.x/migration/bundling","docs/4.x/7.migration/10.bundling",{"title":79,"path":1913,"stem":1914,"titleTemplate":6},"/docs/4.x/migration/server","docs/4.x/7.migration/11.server",{"title":29,"path":1916,"stem":1917,"titleTemplate":6},"/docs/4.x/migration/configuration","docs/4.x/7.migration/2.configuration",{"title":276,"path":1919,"stem":1920,"titleTemplate":6},"/docs/4.x/migration/module-authors","docs/4.x/7.migration/20.module-authors",{"title":922,"path":1922,"stem":1923,"titleTemplate":6},"/docs/4.x/migration/auto-imports","docs/4.x/7.migration/3.auto-imports",{"title":932,"path":1925,"stem":1926,"titleTemplate":6},"/docs/4.x/migration/meta","docs/4.x/7.migration/4.meta",{"title":1058,"path":1928,"stem":1929,"titleTemplate":6},"/docs/4.x/migration/plugins-and-middleware","docs/4.x/7.migration/5.plugins-and-middleware",{"title":1110,"path":1931,"stem":1932,"titleTemplate":6},"/docs/4.x/migration/pages-and-layouts","docs/4.x/7.migration/6.pages-and-layouts",{"title":1114,"path":1934,"stem":1935,"titleTemplate":6},"/docs/4.x/migration/component-options","docs/4.x/7.migration/7.component-options",{"title":399,"path":1937,"stem":1938,"titleTemplate":6},"/docs/4.x/migration/runtime-config","docs/4.x/7.migration/8.runtime-config",{"title":1940,"path":1941,"stem":1942,"children":1943,"page":108},"Blog","/blog","blog",[1944,1948,1952,1956,1960,1964,1968,1972,1976,1980,1984,1988,1992,1996,2000,2004,2008,2012,2016,2020,2024],{"title":1945,"path":1946,"stem":1947},"Announcing 3.0","/blog/v3","blog/1.v3",{"title":1949,"path":1950,"stem":1951},"Nuxt 3.3","/blog/v3-3","blog/10.v3-3",{"title":1953,"path":1954,"stem":1955},"Nuxt 3.4","/blog/v3-4","blog/11.v3-4",{"title":1957,"path":1958,"stem":1959},"Nuxt 3.5","/blog/v3-5","blog/12.v3-5",{"title":1961,"path":1962,"stem":1963},"Nuxt 3.6","/blog/v3-6","blog/13.v3-6",{"title":1965,"path":1966,"stem":1967},"Nuxt on the Edge","/blog/nuxt-on-the-edge","blog/14.nuxt-on-the-edge",{"title":1969,"path":1970,"stem":1971},"Nuxt DevTools v1.0","/blog/nuxt-devtools-v1-0","blog/18.nuxt-devtools-v1-0",{"title":1973,"path":1974,"stem":1975},"Nuxt: A vision for 2023","/blog/vision-2023","blog/2.vision-2023",{"title":1977,"path":1978,"stem":1979},"The Evolution of Shiki v1.0","/blog/shiki-v1","blog/21.shiki-v1",{"title":1981,"path":1982,"stem":1983},"Refreshed Nuxt ESLint Integrations","/blog/eslint-module","blog/24.eslint-module",{"title":1985,"path":1986,"stem":1987},"Introducing Nuxt Scripts","/blog/nuxt-scripts","blog/26.nuxt-scripts",{"title":1989,"path":1990,"stem":1991},"Introducing Nuxt Icon v1","/blog/nuxt-icon-v1-0","blog/29.nuxt-icon-v1-0",{"title":1993,"path":1994,"stem":1995},"Introducing Nuxt DevTools","/blog/introducing-nuxt-devtools","blog/3.introducing-nuxt-devtools",{"title":1997,"path":1998,"stem":1999},"Announcing Nuxt 3 Release Candidate","/blog/nuxt3-rc","blog/3.nuxt3-rc",{"title":2001,"path":2002,"stem":2003},"Nuxt 2 End-of-Life (EOL)","/blog/nuxt2-eol","blog/4.nuxt2-eol",{"title":2005,"path":2006,"stem":2007},"Introducing Nuxt 3 Beta","/blog/nuxt3-beta","blog/4.nuxt3-beta",{"title":2009,"path":2010,"stem":2011},"Going Full Static","/blog/going-full-static","blog/5.going-full-static",{"title":2013,"path":2014,"stem":2015},"Introducing Smart Prefetching","/blog/introducing-smart-prefetching","blog/6.introducing-smart-prefetching",{"title":2017,"path":2018,"stem":2019},"Understanding how fetch works in Nuxt 2.12","/blog/understanding-how-fetch-works-in-nuxt-2-12","blog/7.understanding-how-fetch-works-in-nuxt-2-12",{"title":2021,"path":2022,"stem":2023},"Nuxt 2 Static Improvements","/blog/nuxt-static-improvements","blog/8.nuxt-static-improvements",{"title":2025,"path":2026,"stem":2027},"Nuxt 2: From Terminal to Browser","/blog/nuxtjs-from-terminal-to-browser","blog/9.nuxtjs-from-terminal-to-browser",{"v3":2029,"v4":2030,"v2":2031},"3.21.1","4.3.1","2.18.1",{"id":2033,"title":391,"body":2034,"description":6576,"extension":6577,"links":6,"meta":6578,"navigation":1196,"path":392,"seo":6579,"stem":393,"titleTemplate":6,"__hash__":6580},"docsv3/docs/3.x/3.guide/6.going-further/1.experimental-features.md",{"type":2035,"value":2036,"toc":6526},"minimark",[2037,2041,2061,2067,2072,2082,2094,2097,2174,2178,2181,2184,2231,2235,2242,2288,2297,2301,2304,2350,2354,2368,2370,2416,2422,2426,2434,2480,2483,2594,2701,2704,2715,2719,2726,2733,2745,2755,2809,2813,2816,2819,2865,2869,2882,2885,2895,2941,2945,2952,2998,3004,3012,3015,3019,3022,3024,3070,3074,3077,3123,3127,3134,3136,3182,3186,3191,3237,3240,3355,3359,3367,3413,3417,3420,3466,3476,3480,3483,3529,3533,3542,3546,3549,3595,3599,3610,3659,3662,3668,3672,3688,3690,3736,3740,3750,3796,3813,3819,3835,3840,3843,3846,3859,3870,3877,3930,3934,3948,3951,3997,4001,4010,4230,4234,4244,4302,4306,4328,4337,4348,4351,4397,4401,4407,4409,4455,4463,4467,4470,4480,4483,4529,4532,4586,4592,4597,4601,4610,4616,4666,4670,4677,4682,4747,4844,4855,4859,4862,4865,4867,4913,4917,4920,4923,4969,4972,5001,5012,5018,5025,5029,5039,5046,5087,5093,5126,5129,5133,5136,5139,5185,5192,5199,5203,5210,5217,5220,5266,5272,5276,5283,5286,5332,5338,5342,5345,5351,5353,5399,5405,5409,5429,5437,5439,5485,5488,5496,5517,5531,5536,5541,5587,5729,5732,5735,5745,5886,5890,5893,5902,5904,5950,5956,5960,5982,5984,6030,6036,6040,6043,6053,6055,6101,6105,6121,6123,6169,6173,6176,6183,6218,6225,6241,6244,6342,6346,6353,6356,6358,6404,6426,6434,6438,6447,6458,6504,6507,6517,6522],[2038,2039,2040],"p",{},"Nuxt includes experimental features that you can enable in your configuration file.",[2038,2042,2043,2044,2048,2049,2053,2054,2060],{},"Internally, Nuxt uses ",[2045,2046,2047],"code",{},"@nuxt/schema"," to define these experimental features. You can refer to the ",[2050,2051,2052],"a",{"href":392},"API documentation"," or the ",[2050,2055,2059],{"href":2056,"rel":2057},"https://github.com/nuxt/nuxt/blob/main/packages/schema/src/config/experimental.ts",[2058],"nofollow","source code"," for more information.",[2062,2063,2064],"note",{},[2038,2065,2066],{},"Note that these features are experimental and could be removed or modified in the future.",[2068,2069,2071],"h2",{"id":2070},"alwaysrunfetchonkeychange","alwaysRunFetchOnKeyChange",[2038,2073,2074,2075,2077,2078,2081],{},"Whether to run ",[2045,2076,527],{}," when the key changes, even if it is set to ",[2045,2079,2080],{},"immediate: false"," and it has not been triggered yet.",[2038,2083,2084,2086,2087,2089,2090,2093],{},[2045,2085,527],{}," and ",[2045,2088,515],{}," will always run when the key changes if ",[2045,2091,2092],{},"immediate: true"," or if it has been already triggered.",[2038,2095,2096],{},"This flag is disabled by default, but you can enable this feature:",[2098,2099,2105],"pre",{"className":2100,"code":2101,"filename":233,"language":2102,"meta":2103,"style":2104},"language-ts shiki shiki-themes material-theme-lighter material-theme-lighter material-theme-palenight","export default defineNuxtConfig({\n  experimental: {\n    alwaysRunFetchOnKeyChange: true,\n  },\n})\n","ts","twoslash","",[2045,2106,2107,2131,2144,2159,2165],{"__ignoreMap":2104},[2108,2109,2112,2116,2119,2123,2127],"span",{"class":2110,"line":2111},"line",1,[2108,2113,2115],{"class":2114},"s8R28","export",[2108,2117,2118],{"class":2114}," default",[2108,2120,2122],{"class":2121},"s3cPz"," defineNuxtConfig",[2108,2124,2126],{"class":2125},"sZSNi","(",[2108,2128,2130],{"class":2129},"sDfIl","{\n",[2108,2132,2134,2138,2141],{"class":2110,"line":2133},2,[2108,2135,2137],{"class":2136},"sRlkE","  experimental",[2108,2139,2140],{"class":2129},":",[2108,2142,2143],{"class":2129}," {\n",[2108,2145,2147,2150,2152,2156],{"class":2110,"line":2146},3,[2108,2148,2149],{"class":2136},"    alwaysRunFetchOnKeyChange",[2108,2151,2140],{"class":2129},[2108,2153,2155],{"class":2154},"sbKd-"," true",[2108,2157,2158],{"class":2129},",\n",[2108,2160,2162],{"class":2110,"line":2161},4,[2108,2163,2164],{"class":2129},"  },\n",[2108,2166,2168,2171],{"class":2110,"line":2167},5,[2108,2169,2170],{"class":2129},"}",[2108,2172,2173],{"class":2125},")\n",[2068,2175,2177],{"id":2176},"appmanifest","appManifest",[2038,2179,2180],{},"Use app manifests to respect route rules on client-side.",[2038,2182,2183],{},"This flag is enabled by default, but you can disable this feature:",[2098,2185,2187],{"className":2100,"code":2186,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    appManifest: false,\n  },\n})\n",[2045,2188,2189,2201,2209,2221,2225],{"__ignoreMap":2104},[2108,2190,2191,2193,2195,2197,2199],{"class":2110,"line":2111},[2108,2192,2115],{"class":2114},[2108,2194,2118],{"class":2114},[2108,2196,2122],{"class":2121},[2108,2198,2126],{"class":2125},[2108,2200,2130],{"class":2129},[2108,2202,2203,2205,2207],{"class":2110,"line":2133},[2108,2204,2137],{"class":2136},[2108,2206,2140],{"class":2129},[2108,2208,2143],{"class":2129},[2108,2210,2211,2214,2216,2219],{"class":2110,"line":2146},[2108,2212,2213],{"class":2136},"    appManifest",[2108,2215,2140],{"class":2129},[2108,2217,2218],{"class":2154}," false",[2108,2220,2158],{"class":2129},[2108,2222,2223],{"class":2110,"line":2161},[2108,2224,2164],{"class":2129},[2108,2226,2227,2229],{"class":2110,"line":2167},[2108,2228,2170],{"class":2129},[2108,2230,2173],{"class":2125},[2068,2232,2234],{"id":2233},"asynccontext","asyncContext",[2038,2236,2237,2238,2241],{},"Enable native async context to be accessible for nested composables in Nuxt and in Nitro. This opens the possibility to use composables inside async composables and reduce the chance to get the ",[2045,2239,2240],{},"Nuxt instance is unavailable"," error.",[2098,2243,2245],{"className":2100,"code":2244,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    asyncContext: true,\n  },\n})\n",[2045,2246,2247,2259,2267,2278,2282],{"__ignoreMap":2104},[2108,2248,2249,2251,2253,2255,2257],{"class":2110,"line":2111},[2108,2250,2115],{"class":2114},[2108,2252,2118],{"class":2114},[2108,2254,2122],{"class":2121},[2108,2256,2126],{"class":2125},[2108,2258,2130],{"class":2129},[2108,2260,2261,2263,2265],{"class":2110,"line":2133},[2108,2262,2137],{"class":2136},[2108,2264,2140],{"class":2129},[2108,2266,2143],{"class":2129},[2108,2268,2269,2272,2274,2276],{"class":2110,"line":2146},[2108,2270,2271],{"class":2136},"    asyncContext",[2108,2273,2140],{"class":2129},[2108,2275,2155],{"class":2154},[2108,2277,2158],{"class":2129},[2108,2279,2280],{"class":2110,"line":2161},[2108,2281,2164],{"class":2129},[2108,2283,2284,2286],{"class":2110,"line":2167},[2108,2285,2170],{"class":2129},[2108,2287,2173],{"class":2125},[2289,2290,2294],"read-more",{"to":2291,"icon":2292,"target":2293},"https://github.com/nuxt/nuxt/pull/20918","i-simple-icons-github","_blank",[2038,2295,2296],{},"See full explanation on the GitHub pull-request.",[2068,2298,2300],{"id":2299},"asyncentry","asyncEntry",[2038,2302,2303],{},"Enables generation of an async entry point for the Vue bundle, aiding module federation support.",[2098,2305,2307],{"className":2100,"code":2306,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    asyncEntry: true,\n  },\n})\n",[2045,2308,2309,2321,2329,2340,2344],{"__ignoreMap":2104},[2108,2310,2311,2313,2315,2317,2319],{"class":2110,"line":2111},[2108,2312,2115],{"class":2114},[2108,2314,2118],{"class":2114},[2108,2316,2122],{"class":2121},[2108,2318,2126],{"class":2125},[2108,2320,2130],{"class":2129},[2108,2322,2323,2325,2327],{"class":2110,"line":2133},[2108,2324,2137],{"class":2136},[2108,2326,2140],{"class":2129},[2108,2328,2143],{"class":2129},[2108,2330,2331,2334,2336,2338],{"class":2110,"line":2146},[2108,2332,2333],{"class":2136},"    asyncEntry",[2108,2335,2140],{"class":2129},[2108,2337,2155],{"class":2154},[2108,2339,2158],{"class":2129},[2108,2341,2342],{"class":2110,"line":2161},[2108,2343,2164],{"class":2129},[2108,2345,2346,2348],{"class":2110,"line":2167},[2108,2347,2170],{"class":2129},[2108,2349,2173],{"class":2125},[2068,2351,2353],{"id":2352},"externalvue","externalVue",[2038,2355,2356,2357,2360,2361,2086,2364,2367],{},"Externalizes ",[2045,2358,2359],{},"vue",", ",[2045,2362,2363],{},"@vue/*",[2045,2365,2366],{},"vue-router"," when building.",[2038,2369,2183],{},[2098,2371,2373],{"className":2100,"code":2372,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    externalVue: false,\n  },\n})\n",[2045,2374,2375,2387,2395,2406,2410],{"__ignoreMap":2104},[2108,2376,2377,2379,2381,2383,2385],{"class":2110,"line":2111},[2108,2378,2115],{"class":2114},[2108,2380,2118],{"class":2114},[2108,2382,2122],{"class":2121},[2108,2384,2126],{"class":2125},[2108,2386,2130],{"class":2129},[2108,2388,2389,2391,2393],{"class":2110,"line":2133},[2108,2390,2137],{"class":2136},[2108,2392,2140],{"class":2129},[2108,2394,2143],{"class":2129},[2108,2396,2397,2400,2402,2404],{"class":2110,"line":2146},[2108,2398,2399],{"class":2136},"    externalVue",[2108,2401,2140],{"class":2129},[2108,2403,2218],{"class":2154},[2108,2405,2158],{"class":2129},[2108,2407,2408],{"class":2110,"line":2161},[2108,2409,2164],{"class":2129},[2108,2411,2412,2414],{"class":2110,"line":2167},[2108,2413,2170],{"class":2129},[2108,2415,2173],{"class":2125},[2417,2418,2419],"warning",{},[2038,2420,2421],{},"This feature will likely be removed in a near future.",[2068,2423,2425],{"id":2424},"extractasyncdatahandlers","extractAsyncDataHandlers",[2038,2427,2428,2429,2086,2431,2433],{},"Extracts handler functions from ",[2045,2430,515],{},[2045,2432,543],{}," calls into separate chunks for improved code splitting and caching efficiency.",[2098,2435,2437],{"className":2100,"code":2436,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    extractAsyncDataHandlers: true,\n  },\n})\n",[2045,2438,2439,2451,2459,2470,2474],{"__ignoreMap":2104},[2108,2440,2441,2443,2445,2447,2449],{"class":2110,"line":2111},[2108,2442,2115],{"class":2114},[2108,2444,2118],{"class":2114},[2108,2446,2122],{"class":2121},[2108,2448,2126],{"class":2125},[2108,2450,2130],{"class":2129},[2108,2452,2453,2455,2457],{"class":2110,"line":2133},[2108,2454,2137],{"class":2136},[2108,2456,2140],{"class":2129},[2108,2458,2143],{"class":2129},[2108,2460,2461,2464,2466,2468],{"class":2110,"line":2146},[2108,2462,2463],{"class":2136},"    extractAsyncDataHandlers",[2108,2465,2140],{"class":2129},[2108,2467,2155],{"class":2154},[2108,2469,2158],{"class":2129},[2108,2471,2472],{"class":2110,"line":2161},[2108,2473,2164],{"class":2129},[2108,2475,2476,2478],{"class":2110,"line":2167},[2108,2477,2170],{"class":2129},[2108,2479,2173],{"class":2125},[2038,2481,2482],{},"This feature transforms inline handler functions into dynamically imported chunks:",[2098,2484,2487],{"className":2485,"code":2486,"language":2359,"meta":2104,"style":2104},"language-vue shiki shiki-themes material-theme-lighter material-theme-lighter material-theme-palenight","\u003C!-- Before -->\n\u003Cscript setup>\nconst { data } = await useAsyncData('user', async () => {\n  return await $fetch('/api/user')\n})\n\u003C/script>\n",[2045,2488,2489,2495,2510,2557,2578,2584],{"__ignoreMap":2104},[2108,2490,2491],{"class":2110,"line":2111},[2108,2492,2494],{"class":2493},"sWuyu","\u003C!-- Before -->\n",[2108,2496,2497,2500,2503,2507],{"class":2110,"line":2133},[2108,2498,2499],{"class":2129},"\u003C",[2108,2501,2502],{"class":2136},"script",[2108,2504,2506],{"class":2505},"smZ93"," setup",[2108,2508,2509],{"class":2129},">\n",[2108,2511,2512,2515,2518,2521,2523,2526,2529,2532,2534,2537,2541,2543,2546,2549,2552,2555],{"class":2110,"line":2146},[2108,2513,2514],{"class":2505},"const",[2108,2516,2517],{"class":2129}," {",[2108,2519,2520],{"class":2125}," data ",[2108,2522,2170],{"class":2129},[2108,2524,2525],{"class":2129}," =",[2108,2527,2528],{"class":2114}," await",[2108,2530,2531],{"class":2121}," useAsyncData",[2108,2533,2126],{"class":2125},[2108,2535,2536],{"class":2129},"'",[2108,2538,2540],{"class":2539},"sGFVr","user",[2108,2542,2536],{"class":2129},[2108,2544,2545],{"class":2129},",",[2108,2547,2548],{"class":2505}," async",[2108,2550,2551],{"class":2129}," ()",[2108,2553,2554],{"class":2505}," =>",[2108,2556,2143],{"class":2129},[2108,2558,2559,2562,2564,2567,2569,2571,2574,2576],{"class":2110,"line":2161},[2108,2560,2561],{"class":2114},"  return",[2108,2563,2528],{"class":2114},[2108,2565,2566],{"class":2121}," $fetch",[2108,2568,2126],{"class":2136},[2108,2570,2536],{"class":2129},[2108,2572,2573],{"class":2539},"/api/user",[2108,2575,2536],{"class":2129},[2108,2577,2173],{"class":2136},[2108,2579,2580,2582],{"class":2110,"line":2167},[2108,2581,2170],{"class":2129},[2108,2583,2173],{"class":2125},[2108,2585,2587,2590,2592],{"class":2110,"line":2586},6,[2108,2588,2589],{"class":2129},"\u003C/",[2108,2591,2502],{"class":2136},[2108,2593,2509],{"class":2129},[2098,2595,2597],{"className":2485,"code":2596,"language":2359,"meta":2104,"style":2104},"\u003C!-- After transformation -->\n\u003Cscript setup>\nconst { data } = await useAsyncData('user', () =>\n  import('/generated-chunk.js').then(r => r.default()),\n)\n\u003C/script>\n",[2045,2598,2599,2604,2614,2645,2689,2693],{"__ignoreMap":2104},[2108,2600,2601],{"class":2110,"line":2111},[2108,2602,2603],{"class":2493},"\u003C!-- After transformation -->\n",[2108,2605,2606,2608,2610,2612],{"class":2110,"line":2133},[2108,2607,2499],{"class":2129},[2108,2609,2502],{"class":2136},[2108,2611,2506],{"class":2505},[2108,2613,2509],{"class":2129},[2108,2615,2616,2618,2620,2622,2624,2626,2628,2630,2632,2634,2636,2638,2640,2642],{"class":2110,"line":2146},[2108,2617,2514],{"class":2505},[2108,2619,2517],{"class":2129},[2108,2621,2520],{"class":2125},[2108,2623,2170],{"class":2129},[2108,2625,2525],{"class":2129},[2108,2627,2528],{"class":2114},[2108,2629,2531],{"class":2121},[2108,2631,2126],{"class":2125},[2108,2633,2536],{"class":2129},[2108,2635,2540],{"class":2539},[2108,2637,2536],{"class":2129},[2108,2639,2545],{"class":2129},[2108,2641,2551],{"class":2129},[2108,2643,2644],{"class":2505}," =>\n",[2108,2646,2647,2650,2652,2654,2657,2659,2662,2665,2668,2670,2674,2676,2679,2681,2684,2687],{"class":2110,"line":2161},[2108,2648,2649],{"class":2129},"  import",[2108,2651,2126],{"class":2125},[2108,2653,2536],{"class":2129},[2108,2655,2656],{"class":2539},"/generated-chunk.js",[2108,2658,2536],{"class":2129},[2108,2660,2661],{"class":2125},")",[2108,2663,2664],{"class":2129},".",[2108,2666,2667],{"class":2121},"then",[2108,2669,2126],{"class":2125},[2108,2671,2673],{"class":2672},"s1nJG","r",[2108,2675,2554],{"class":2505},[2108,2677,2678],{"class":2125}," r",[2108,2680,2664],{"class":2129},[2108,2682,2683],{"class":2121},"default",[2108,2685,2686],{"class":2125},"())",[2108,2688,2158],{"class":2129},[2108,2690,2691],{"class":2110,"line":2167},[2108,2692,2173],{"class":2125},[2108,2694,2695,2697,2699],{"class":2110,"line":2586},[2108,2696,2589],{"class":2129},[2108,2698,2502],{"class":2136},[2108,2700,2509],{"class":2129},[2038,2702,2703],{},"The benefit of this transformation is that we can split out data fetching logic — while still allowing the code to be loaded if required.",[2705,2706,2707],"important",{},[2038,2708,2709,2710,2714],{},"This feature is only recommended for ",[2711,2712,2713],"strong",{},"static builds"," with payload extraction, and where data does not need to be re-fetched at runtime.",[2068,2716,2718],{"id":2717},"emitroutechunkerror","emitRouteChunkError",[2038,2720,2721,2722,2725],{},"Emits ",[2045,2723,2724],{},"app:chunkError"," hook when there is an error loading vite/webpack chunks. Default behavior is to perform a reload of the new route on navigation to a new route when a chunk fails to load.",[2038,2727,2728,2729,2732],{},"By default, Nuxt will also perform a reload of the new route when a chunk fails to load when navigating to a new route (",[2045,2730,2731],{},"automatic",").",[2038,2734,2735,2736,2739,2740,2744],{},"Setting ",[2045,2737,2738],{},"automatic-immediate"," will lead Nuxt to perform a reload of the current route right when a chunk fails to load (instead of waiting for navigation). This is useful for chunk errors that are not triggered by navigation, e.g., when your Nuxt app fails to load a ",[2050,2741,2743],{"href":2742},"/docs/3.x/directory-structure/components#dynamic-imports","lazy component",". A potential downside of this behavior is undesired reloads, e.g., when your app does not need the chunk that caused the error.",[2038,2746,2747,2748,2751,2752,2664],{},"You can disable automatic handling by setting this to ",[2045,2749,2750],{},"false",", or handle chunk errors manually by setting it to ",[2045,2753,2754],{},"manual",[2098,2756,2758],{"className":2100,"code":2757,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    emitRouteChunkError: 'automatic', // or 'automatic-immediate', 'manual' or false\n  },\n})\n",[2045,2759,2760,2772,2780,2799,2803],{"__ignoreMap":2104},[2108,2761,2762,2764,2766,2768,2770],{"class":2110,"line":2111},[2108,2763,2115],{"class":2114},[2108,2765,2118],{"class":2114},[2108,2767,2122],{"class":2121},[2108,2769,2126],{"class":2125},[2108,2771,2130],{"class":2129},[2108,2773,2774,2776,2778],{"class":2110,"line":2133},[2108,2775,2137],{"class":2136},[2108,2777,2140],{"class":2129},[2108,2779,2143],{"class":2129},[2108,2781,2782,2785,2787,2790,2792,2794,2796],{"class":2110,"line":2146},[2108,2783,2784],{"class":2136},"    emitRouteChunkError",[2108,2786,2140],{"class":2129},[2108,2788,2789],{"class":2129}," '",[2108,2791,2731],{"class":2539},[2108,2793,2536],{"class":2129},[2108,2795,2545],{"class":2129},[2108,2797,2798],{"class":2493}," // or 'automatic-immediate', 'manual' or false\n",[2108,2800,2801],{"class":2110,"line":2161},[2108,2802,2164],{"class":2129},[2108,2804,2805,2807],{"class":2110,"line":2167},[2108,2806,2170],{"class":2129},[2108,2808,2173],{"class":2125},[2068,2810,2812],{"id":2811},"enforcemodulecompatibility","enforceModuleCompatibility",[2038,2814,2815],{},"Whether Nuxt should throw an error (and fail to load) if a Nuxt module is incompatible.",[2038,2817,2818],{},"This feature is disabled by default.",[2098,2820,2822],{"className":2100,"code":2821,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    enforceModuleCompatibility: true,\n  },\n})\n",[2045,2823,2824,2836,2844,2855,2859],{"__ignoreMap":2104},[2108,2825,2826,2828,2830,2832,2834],{"class":2110,"line":2111},[2108,2827,2115],{"class":2114},[2108,2829,2118],{"class":2114},[2108,2831,2122],{"class":2121},[2108,2833,2126],{"class":2125},[2108,2835,2130],{"class":2129},[2108,2837,2838,2840,2842],{"class":2110,"line":2133},[2108,2839,2137],{"class":2136},[2108,2841,2140],{"class":2129},[2108,2843,2143],{"class":2129},[2108,2845,2846,2849,2851,2853],{"class":2110,"line":2146},[2108,2847,2848],{"class":2136},"    enforceModuleCompatibility",[2108,2850,2140],{"class":2129},[2108,2852,2155],{"class":2154},[2108,2854,2158],{"class":2129},[2108,2856,2857],{"class":2110,"line":2161},[2108,2858,2164],{"class":2129},[2108,2860,2861,2863],{"class":2110,"line":2167},[2108,2862,2170],{"class":2129},[2108,2864,2173],{"class":2125},[2068,2866,2868],{"id":2867},"restorestate","restoreState",[2038,2870,2871,2872,2875,2876,2881],{},"Allows Nuxt app state to be restored from ",[2045,2873,2874],{},"sessionStorage"," when reloading the page after a chunk error or manual ",[2050,2877,2878],{"href":727},[2045,2879,2880],{},"reloadNuxtApp()"," call.",[2038,2883,2884],{},"To avoid hydration errors, it will be applied only after the Vue app has been mounted, meaning there may be a flicker on initial load.",[2705,2886,2887],{},[2038,2888,2889,2890,2894],{},"Consider carefully before enabling this as it can cause unexpected behavior,\nand consider providing explicit keys to ",[2050,2891,2892],{"href":620},[2045,2893,619],{}," as auto-generated keys may not match across builds.",[2098,2896,2898],{"className":2100,"code":2897,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    restoreState: true,\n  },\n})\n",[2045,2899,2900,2912,2920,2931,2935],{"__ignoreMap":2104},[2108,2901,2902,2904,2906,2908,2910],{"class":2110,"line":2111},[2108,2903,2115],{"class":2114},[2108,2905,2118],{"class":2114},[2108,2907,2122],{"class":2121},[2108,2909,2126],{"class":2125},[2108,2911,2130],{"class":2129},[2108,2913,2914,2916,2918],{"class":2110,"line":2133},[2108,2915,2137],{"class":2136},[2108,2917,2140],{"class":2129},[2108,2919,2143],{"class":2129},[2108,2921,2922,2925,2927,2929],{"class":2110,"line":2146},[2108,2923,2924],{"class":2136},"    restoreState",[2108,2926,2140],{"class":2129},[2108,2928,2155],{"class":2154},[2108,2930,2158],{"class":2129},[2108,2932,2933],{"class":2110,"line":2161},[2108,2934,2164],{"class":2129},[2108,2936,2937,2939],{"class":2110,"line":2167},[2108,2938,2170],{"class":2129},[2108,2940,2173],{"class":2125},[2068,2942,2944],{"id":2943},"inlinerouterules","inlineRouteRules",[2038,2946,2947,2948,2664],{},"Define route rules at the page level using ",[2050,2949,2950],{"href":683},[2045,2951,682],{},[2098,2953,2955],{"className":2100,"code":2954,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    inlineRouteRules: true,\n  },\n})\n",[2045,2956,2957,2969,2977,2988,2992],{"__ignoreMap":2104},[2108,2958,2959,2961,2963,2965,2967],{"class":2110,"line":2111},[2108,2960,2115],{"class":2114},[2108,2962,2118],{"class":2114},[2108,2964,2122],{"class":2121},[2108,2966,2126],{"class":2125},[2108,2968,2130],{"class":2129},[2108,2970,2971,2973,2975],{"class":2110,"line":2133},[2108,2972,2137],{"class":2136},[2108,2974,2140],{"class":2129},[2108,2976,2143],{"class":2129},[2108,2978,2979,2982,2984,2986],{"class":2110,"line":2146},[2108,2980,2981],{"class":2136},"    inlineRouteRules",[2108,2983,2140],{"class":2129},[2108,2985,2155],{"class":2154},[2108,2987,2158],{"class":2129},[2108,2989,2990],{"class":2110,"line":2161},[2108,2991,2164],{"class":2129},[2108,2993,2994,2996],{"class":2110,"line":2167},[2108,2995,2170],{"class":2129},[2108,2997,2173],{"class":2125},[2038,2999,3000,3001,2664],{},"Matching route rules will be created, based on the page's ",[2045,3002,3003],{},"path",[2289,3005,3006],{"to":683,"icon":625},[2038,3007,3008,3009,3011],{},"Read more in ",[2045,3010,682],{}," utility.",[2289,3013],{"to":3014,"icon":255},"/docs/3.x/guide/concepts/rendering#hybrid-rendering",[2068,3016,3018],{"id":3017},"renderjsonpayloads","renderJsonPayloads",[2038,3020,3021],{},"Allows rendering of JSON payloads with support for revivifying complex types.",[2038,3023,2183],{},[2098,3025,3027],{"className":2100,"code":3026,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    renderJsonPayloads: false,\n  },\n})\n",[2045,3028,3029,3041,3049,3060,3064],{"__ignoreMap":2104},[2108,3030,3031,3033,3035,3037,3039],{"class":2110,"line":2111},[2108,3032,2115],{"class":2114},[2108,3034,2118],{"class":2114},[2108,3036,2122],{"class":2121},[2108,3038,2126],{"class":2125},[2108,3040,2130],{"class":2129},[2108,3042,3043,3045,3047],{"class":2110,"line":2133},[2108,3044,2137],{"class":2136},[2108,3046,2140],{"class":2129},[2108,3048,2143],{"class":2129},[2108,3050,3051,3054,3056,3058],{"class":2110,"line":2146},[2108,3052,3053],{"class":2136},"    renderJsonPayloads",[2108,3055,2140],{"class":2129},[2108,3057,2218],{"class":2154},[2108,3059,2158],{"class":2129},[2108,3061,3062],{"class":2110,"line":2161},[2108,3063,2164],{"class":2129},[2108,3065,3066,3068],{"class":2110,"line":2167},[2108,3067,2170],{"class":2129},[2108,3069,2173],{"class":2125},[2068,3071,3073],{"id":3072},"novueserver","noVueServer",[2038,3075,3076],{},"Disables Vue server renderer endpoint within Nitro.",[2098,3078,3080],{"className":2100,"code":3079,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    noVueServer: true,\n  },\n})\n",[2045,3081,3082,3094,3102,3113,3117],{"__ignoreMap":2104},[2108,3083,3084,3086,3088,3090,3092],{"class":2110,"line":2111},[2108,3085,2115],{"class":2114},[2108,3087,2118],{"class":2114},[2108,3089,2122],{"class":2121},[2108,3091,2126],{"class":2125},[2108,3093,2130],{"class":2129},[2108,3095,3096,3098,3100],{"class":2110,"line":2133},[2108,3097,2137],{"class":2136},[2108,3099,2140],{"class":2129},[2108,3101,2143],{"class":2129},[2108,3103,3104,3107,3109,3111],{"class":2110,"line":2146},[2108,3105,3106],{"class":2136},"    noVueServer",[2108,3108,2140],{"class":2129},[2108,3110,2155],{"class":2154},[2108,3112,2158],{"class":2129},[2108,3114,3115],{"class":2110,"line":2161},[2108,3116,2164],{"class":2129},[2108,3118,3119,3121],{"class":2110,"line":2167},[2108,3120,2170],{"class":2129},[2108,3122,2173],{"class":2125},[2068,3124,3126],{"id":3125},"parseerrordata","parseErrorData",[2038,3128,3129,3130,3133],{},"Whether to parse ",[2045,3131,3132],{},"error.data"," when rendering a server error page.",[2038,3135,2183],{},[2098,3137,3139],{"className":2100,"code":3138,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    parseErrorData: false,\n  },\n})\n",[2045,3140,3141,3153,3161,3172,3176],{"__ignoreMap":2104},[2108,3142,3143,3145,3147,3149,3151],{"class":2110,"line":2111},[2108,3144,2115],{"class":2114},[2108,3146,2118],{"class":2114},[2108,3148,2122],{"class":2121},[2108,3150,2126],{"class":2125},[2108,3152,2130],{"class":2129},[2108,3154,3155,3157,3159],{"class":2110,"line":2133},[2108,3156,2137],{"class":2136},[2108,3158,2140],{"class":2129},[2108,3160,2143],{"class":2129},[2108,3162,3163,3166,3168,3170],{"class":2110,"line":2146},[2108,3164,3165],{"class":2136},"    parseErrorData",[2108,3167,2140],{"class":2129},[2108,3169,2218],{"class":2154},[2108,3171,2158],{"class":2129},[2108,3173,3174],{"class":2110,"line":2161},[2108,3175,2164],{"class":2129},[2108,3177,3178,3180],{"class":2110,"line":2167},[2108,3179,2170],{"class":2129},[2108,3181,2173],{"class":2125},[2068,3183,3185],{"id":3184},"payloadextraction","payloadExtraction",[2038,3187,3188,3189,2664],{},"Enables extraction of payloads of pages generated with ",[2045,3190,781],{},[2098,3192,3194],{"className":2100,"code":3193,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    payloadExtraction: true,\n  },\n})\n",[2045,3195,3196,3208,3216,3227,3231],{"__ignoreMap":2104},[2108,3197,3198,3200,3202,3204,3206],{"class":2110,"line":2111},[2108,3199,2115],{"class":2114},[2108,3201,2118],{"class":2114},[2108,3203,2122],{"class":2121},[2108,3205,2126],{"class":2125},[2108,3207,2130],{"class":2129},[2108,3209,3210,3212,3214],{"class":2110,"line":2133},[2108,3211,2137],{"class":2136},[2108,3213,2140],{"class":2129},[2108,3215,2143],{"class":2129},[2108,3217,3218,3221,3223,3225],{"class":2110,"line":2146},[2108,3219,3220],{"class":2136},"    payloadExtraction",[2108,3222,2140],{"class":2129},[2108,3224,2155],{"class":2154},[2108,3226,2158],{"class":2129},[2108,3228,3229],{"class":2110,"line":2161},[2108,3230,2164],{"class":2129},[2108,3232,3233,3235],{"class":2110,"line":2167},[2108,3234,2170],{"class":2129},[2108,3236,2173],{"class":2125},[2038,3238,3239],{},"Payload extraction also works for routes using ISR (Incremental Static Regeneration) or SWR (Stale-While-Revalidate) caching strategies. This allows CDNs to cache payload files alongside HTML, improving client-side navigation performance for cached routes.",[2098,3241,3243],{"className":2100,"code":3242,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    payloadExtraction: true,\n  },\n  routeRules: {\n    // Payload files will be generated for these cached routes\n    '/products/**': { isr: 3600 },\n    '/blog/**': { swr: true },\n  },\n})\n",[2045,3244,3245,3257,3265,3275,3279,3288,3293,3320,3343,3348],{"__ignoreMap":2104},[2108,3246,3247,3249,3251,3253,3255],{"class":2110,"line":2111},[2108,3248,2115],{"class":2114},[2108,3250,2118],{"class":2114},[2108,3252,2122],{"class":2121},[2108,3254,2126],{"class":2125},[2108,3256,2130],{"class":2129},[2108,3258,3259,3261,3263],{"class":2110,"line":2133},[2108,3260,2137],{"class":2136},[2108,3262,2140],{"class":2129},[2108,3264,2143],{"class":2129},[2108,3266,3267,3269,3271,3273],{"class":2110,"line":2146},[2108,3268,3220],{"class":2136},[2108,3270,2140],{"class":2129},[2108,3272,2155],{"class":2154},[2108,3274,2158],{"class":2129},[2108,3276,3277],{"class":2110,"line":2161},[2108,3278,2164],{"class":2129},[2108,3280,3281,3284,3286],{"class":2110,"line":2167},[2108,3282,3283],{"class":2136},"  routeRules",[2108,3285,2140],{"class":2129},[2108,3287,2143],{"class":2129},[2108,3289,3290],{"class":2110,"line":2586},[2108,3291,3292],{"class":2493},"    // Payload files will be generated for these cached routes\n",[2108,3294,3296,3299,3302,3304,3306,3308,3311,3313,3317],{"class":2110,"line":3295},7,[2108,3297,3298],{"class":2129},"    '",[2108,3300,3301],{"class":2136},"/products/**",[2108,3303,2536],{"class":2129},[2108,3305,2140],{"class":2129},[2108,3307,2517],{"class":2129},[2108,3309,3310],{"class":2136}," isr",[2108,3312,2140],{"class":2129},[2108,3314,3316],{"class":3315},"sYRBq"," 3600",[2108,3318,3319],{"class":2129}," },\n",[2108,3321,3323,3325,3328,3330,3332,3334,3337,3339,3341],{"class":2110,"line":3322},8,[2108,3324,3298],{"class":2129},[2108,3326,3327],{"class":2136},"/blog/**",[2108,3329,2536],{"class":2129},[2108,3331,2140],{"class":2129},[2108,3333,2517],{"class":2129},[2108,3335,3336],{"class":2136}," swr",[2108,3338,2140],{"class":2129},[2108,3340,2155],{"class":2154},[2108,3342,3319],{"class":2129},[2108,3344,3346],{"class":2110,"line":3345},9,[2108,3347,2164],{"class":2129},[2108,3349,3351,3353],{"class":2110,"line":3350},10,[2108,3352,2170],{"class":2129},[2108,3354,2173],{"class":2125},[2068,3356,3358],{"id":3357},"clientfallback","clientFallback",[2038,3360,3361,3362,3366],{},"Enables the experimental ",[2050,3363,3364],{"href":449},[2045,3365,448],{}," component for rendering content on the client if there's an error in SSR.",[2098,3368,3370],{"className":2100,"code":3369,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    clientFallback: true,\n  },\n})\n",[2045,3371,3372,3384,3392,3403,3407],{"__ignoreMap":2104},[2108,3373,3374,3376,3378,3380,3382],{"class":2110,"line":2111},[2108,3375,2115],{"class":2114},[2108,3377,2118],{"class":2114},[2108,3379,2122],{"class":2121},[2108,3381,2126],{"class":2125},[2108,3383,2130],{"class":2129},[2108,3385,3386,3388,3390],{"class":2110,"line":2133},[2108,3387,2137],{"class":2136},[2108,3389,2140],{"class":2129},[2108,3391,2143],{"class":2129},[2108,3393,3394,3397,3399,3401],{"class":2110,"line":2146},[2108,3395,3396],{"class":2136},"    clientFallback",[2108,3398,2140],{"class":2129},[2108,3400,2155],{"class":2154},[2108,3402,2158],{"class":2129},[2108,3404,3405],{"class":2110,"line":2161},[2108,3406,2164],{"class":2129},[2108,3408,3409,3411],{"class":2110,"line":2167},[2108,3410,2170],{"class":2129},[2108,3412,2173],{"class":2125},[2068,3414,3416],{"id":3415},"crossoriginprefetch","crossOriginPrefetch",[2038,3418,3419],{},"Enables cross-origin prefetch using the Speculation Rules API.",[2098,3421,3423],{"className":2100,"code":3422,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    crossOriginPrefetch: true,\n  },\n})\n",[2045,3424,3425,3437,3445,3456,3460],{"__ignoreMap":2104},[2108,3426,3427,3429,3431,3433,3435],{"class":2110,"line":2111},[2108,3428,2115],{"class":2114},[2108,3430,2118],{"class":2114},[2108,3432,2122],{"class":2121},[2108,3434,2126],{"class":2125},[2108,3436,2130],{"class":2129},[2108,3438,3439,3441,3443],{"class":2110,"line":2133},[2108,3440,2137],{"class":2136},[2108,3442,2140],{"class":2129},[2108,3444,2143],{"class":2129},[2108,3446,3447,3450,3452,3454],{"class":2110,"line":2146},[2108,3448,3449],{"class":2136},"    crossOriginPrefetch",[2108,3451,2140],{"class":2129},[2108,3453,2155],{"class":2154},[2108,3455,2158],{"class":2129},[2108,3457,3458],{"class":2110,"line":2161},[2108,3459,2164],{"class":2129},[2108,3461,3462,3464],{"class":2110,"line":2167},[2108,3463,2170],{"class":2129},[2108,3465,2173],{"class":2125},[2289,3467,3470],{"to":3468,"icon":3469,"target":2293},"https://wicg.github.io/nav-speculation/prefetch.html","i-simple-icons-w3c",[2038,3471,3472,3473,2664],{},"Read more about the ",[2711,3474,3475],{},"Speculation Rules API",[2068,3477,3479],{"id":3478},"viewtransition","viewTransition",[2038,3481,3482],{},"Enables View Transition API integration with client-side router.",[2098,3484,3486],{"className":2100,"code":3485,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    viewTransition: true,\n  },\n})\n",[2045,3487,3488,3500,3508,3519,3523],{"__ignoreMap":2104},[2108,3489,3490,3492,3494,3496,3498],{"class":2110,"line":2111},[2108,3491,2115],{"class":2114},[2108,3493,2118],{"class":2114},[2108,3495,2122],{"class":2121},[2108,3497,2126],{"class":2125},[2108,3499,2130],{"class":2129},[2108,3501,3502,3504,3506],{"class":2110,"line":2133},[2108,3503,2137],{"class":2136},[2108,3505,2140],{"class":2129},[2108,3507,2143],{"class":2129},[2108,3509,3510,3513,3515,3517],{"class":2110,"line":2146},[2108,3511,3512],{"class":2136},"    viewTransition",[2108,3514,2140],{"class":2129},[2108,3516,2155],{"class":2154},[2108,3518,2158],{"class":2129},[2108,3520,3521],{"class":2110,"line":2161},[2108,3522,2164],{"class":2129},[2108,3524,3525,3527],{"class":2110,"line":2167},[2108,3526,2170],{"class":2129},[2108,3528,2173],{"class":2125},[3530,3531],"link-example",{"target":2293,"to":3532},"https://stackblitz.com/edit/nuxt-view-transitions?file=app.vue",[2289,3534,3537],{"to":3535,"icon":3536,"target":2293},"https://developer.mozilla.org/en-US/docs/Web/API/View_Transition_API","i-simple-icons-mdnwebdocs",[2038,3538,3472,3539,2664],{},[2711,3540,3541],{},"View Transition API",[2068,3543,3545],{"id":3544},"writeearlyhints","writeEarlyHints",[2038,3547,3548],{},"Enables writing of early hints when using node server.",[2098,3550,3552],{"className":2100,"code":3551,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    writeEarlyHints: true,\n  },\n})\n",[2045,3553,3554,3566,3574,3585,3589],{"__ignoreMap":2104},[2108,3555,3556,3558,3560,3562,3564],{"class":2110,"line":2111},[2108,3557,2115],{"class":2114},[2108,3559,2118],{"class":2114},[2108,3561,2122],{"class":2121},[2108,3563,2126],{"class":2125},[2108,3565,2130],{"class":2129},[2108,3567,3568,3570,3572],{"class":2110,"line":2133},[2108,3569,2137],{"class":2136},[2108,3571,2140],{"class":2129},[2108,3573,2143],{"class":2129},[2108,3575,3576,3579,3581,3583],{"class":2110,"line":2146},[2108,3577,3578],{"class":2136},"    writeEarlyHints",[2108,3580,2140],{"class":2129},[2108,3582,2155],{"class":2154},[2108,3584,2158],{"class":2129},[2108,3586,3587],{"class":2110,"line":2161},[2108,3588,2164],{"class":2129},[2108,3590,3591,3593],{"class":2110,"line":2167},[2108,3592,2170],{"class":2129},[2108,3594,2173],{"class":2125},[2068,3596,3598],{"id":3597},"componentislands","componentIslands",[2038,3600,3601,3602,2086,3606,3609],{},"Enables experimental component islands support with ",[2050,3603,3604],{"href":493},[2045,3605,492],{},[2045,3607,3608],{},".island.vue"," files.",[2098,3611,3613],{"className":2100,"code":3612,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    componentIslands: true, // false or 'local+remote'\n  },\n})\n",[2045,3614,3615,3627,3635,3649,3653],{"__ignoreMap":2104},[2108,3616,3617,3619,3621,3623,3625],{"class":2110,"line":2111},[2108,3618,2115],{"class":2114},[2108,3620,2118],{"class":2114},[2108,3622,2122],{"class":2121},[2108,3624,2126],{"class":2125},[2108,3626,2130],{"class":2129},[2108,3628,3629,3631,3633],{"class":2110,"line":2133},[2108,3630,2137],{"class":2136},[2108,3632,2140],{"class":2129},[2108,3634,2143],{"class":2129},[2108,3636,3637,3640,3642,3644,3646],{"class":2110,"line":2146},[2108,3638,3639],{"class":2136},"    componentIslands",[2108,3641,2140],{"class":2129},[2108,3643,2155],{"class":2154},[2108,3645,2545],{"class":2129},[2108,3647,3648],{"class":2493}," // false or 'local+remote'\n",[2108,3650,3651],{"class":2110,"line":2161},[2108,3652,2164],{"class":2129},[2108,3654,3655,3657],{"class":2110,"line":2167},[2108,3656,2170],{"class":2129},[2108,3658,2173],{"class":2125},[2289,3660],{"to":3661},"/docs/3.x/directory-structure/components#server-components",[2289,3663,3665],{"to":3664,"icon":2292,"target":2293},"https://github.com/nuxt/nuxt/issues/19772",[2038,3666,3667],{},"You can follow the server components roadmap on GitHub.",[2068,3669,3671],{"id":3670},"locallayeraliases","localLayerAliases",[2038,3673,3674,3675,2360,3678,2360,3681,2086,3684,3687],{},"Resolve ",[2045,3676,3677],{},"~",[2045,3679,3680],{},"~~",[2045,3682,3683],{},"@",[2045,3685,3686],{},"@@"," aliases located within layers with respect to their layer source and root directories.",[2038,3689,2183],{},[2098,3691,3693],{"className":2100,"code":3692,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    localLayerAliases: false,\n  },\n})\n",[2045,3694,3695,3707,3715,3726,3730],{"__ignoreMap":2104},[2108,3696,3697,3699,3701,3703,3705],{"class":2110,"line":2111},[2108,3698,2115],{"class":2114},[2108,3700,2118],{"class":2114},[2108,3702,2122],{"class":2121},[2108,3704,2126],{"class":2125},[2108,3706,2130],{"class":2129},[2108,3708,3709,3711,3713],{"class":2110,"line":2133},[2108,3710,2137],{"class":2136},[2108,3712,2140],{"class":2129},[2108,3714,2143],{"class":2129},[2108,3716,3717,3720,3722,3724],{"class":2110,"line":2146},[2108,3718,3719],{"class":2136},"    localLayerAliases",[2108,3721,2140],{"class":2129},[2108,3723,2218],{"class":2154},[2108,3725,2158],{"class":2129},[2108,3727,3728],{"class":2110,"line":2161},[2108,3729,2164],{"class":2129},[2108,3731,3732,3734],{"class":2110,"line":2167},[2108,3733,2170],{"class":2129},[2108,3735,2173],{"class":2125},[2068,3737,3739],{"id":3738},"typedpages","typedPages",[2038,3741,3742,3743,2664],{},"Enable the new experimental typed router using ",[2050,3744,3747],{"href":3745,"rel":3746},"https://github.com/posva/unplugin-vue-router",[2058],[2045,3748,3749],{},"unplugin-vue-router",[2098,3751,3753],{"className":2100,"code":3752,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    typedPages: true,\n  },\n})\n",[2045,3754,3755,3767,3775,3786,3790],{"__ignoreMap":2104},[2108,3756,3757,3759,3761,3763,3765],{"class":2110,"line":2111},[2108,3758,2115],{"class":2114},[2108,3760,2118],{"class":2114},[2108,3762,2122],{"class":2121},[2108,3764,2126],{"class":2125},[2108,3766,2130],{"class":2129},[2108,3768,3769,3771,3773],{"class":2110,"line":2133},[2108,3770,2137],{"class":2136},[2108,3772,2140],{"class":2129},[2108,3774,2143],{"class":2129},[2108,3776,3777,3780,3782,3784],{"class":2110,"line":2146},[2108,3778,3779],{"class":2136},"    typedPages",[2108,3781,2140],{"class":2129},[2108,3783,2155],{"class":2154},[2108,3785,2158],{"class":2129},[2108,3787,3788],{"class":2110,"line":2161},[2108,3789,2164],{"class":2129},[2108,3791,3792,3794],{"class":2110,"line":2167},[2108,3793,2170],{"class":2129},[2108,3795,2173],{"class":2125},[2038,3797,3798,3799,2360,3803,2360,3807,3812],{},"Out of the box, this will enable typed usage of ",[2050,3800,3801],{"href":687},[2045,3802,686],{},[2050,3804,3805],{"href":477},[2045,3806,476],{},[2050,3808,3809],{"href":600},[2045,3810,3811],{},"router.push()"," and more.",[2038,3814,3815,3816,2664],{},"You can even get typed params within a page by using ",[2045,3817,3818],{},"const route = useRoute('route-name')",[2705,3820,3821],{},[2038,3822,3823,3824,3827,3828,3831,3832,3834],{},"If you use ",[2045,3825,3826],{},"pnpm"," without ",[2045,3829,3830],{},"shamefully-hoist=true",", you will need to have ",[2045,3833,3749],{}," installed as a devDependency in order for this feature to work.",[3836,3837],"video-accordion",{"title":3838,"video-id":3839},"Watch a video from Daniel Roe explaining type-safe routing in Nuxt","SXk-L19gTZk",[2068,3841,3842],{"id":3842},"watcher",[2038,3844,3845],{},"Set an alternative watcher that will be used as the watching service for Nuxt.",[2038,3847,3848,3849,3852,3853,2086,3855,3858],{},"Nuxt uses ",[2045,3850,3851],{},"chokidar-granular"," by default, which will ignore top-level directories\n(like ",[2045,3854,166],{},[2045,3856,3857],{},".git",") that are excluded from watching.",[2038,3860,3861,3862,3865,3866,3869],{},"You can set this instead to ",[2045,3863,3864],{},"parcel"," to use ",[2045,3867,3868],{},"@parcel/watcher",", which may improve\nperformance in large projects or on Windows platforms.",[2038,3871,3872,3873,3876],{},"You can also set this to ",[2045,3874,3875],{},"chokidar"," to watch all files in your source directory.",[2098,3878,3880],{"className":2100,"code":3879,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    watcher: 'chokidar-granular', // 'chokidar' or 'parcel' are also options\n  },\n})\n",[2045,3881,3882,3894,3902,3920,3924],{"__ignoreMap":2104},[2108,3883,3884,3886,3888,3890,3892],{"class":2110,"line":2111},[2108,3885,2115],{"class":2114},[2108,3887,2118],{"class":2114},[2108,3889,2122],{"class":2121},[2108,3891,2126],{"class":2125},[2108,3893,2130],{"class":2129},[2108,3895,3896,3898,3900],{"class":2110,"line":2133},[2108,3897,2137],{"class":2136},[2108,3899,2140],{"class":2129},[2108,3901,2143],{"class":2129},[2108,3903,3904,3907,3909,3911,3913,3915,3917],{"class":2110,"line":2146},[2108,3905,3906],{"class":2136},"    watcher",[2108,3908,2140],{"class":2129},[2108,3910,2789],{"class":2129},[2108,3912,3851],{"class":2539},[2108,3914,2536],{"class":2129},[2108,3916,2545],{"class":2129},[2108,3918,3919],{"class":2493}," // 'chokidar' or 'parcel' are also options\n",[2108,3921,3922],{"class":2110,"line":2161},[2108,3923,2164],{"class":2129},[2108,3925,3926,3928],{"class":2110,"line":2167},[2108,3927,2170],{"class":2129},[2108,3929,2173],{"class":2125},[2068,3931,3933],{"id":3932},"sharedprerenderdata","sharedPrerenderData",[2038,3935,3936,3937,3941,3942,3944,3945,3947],{},"Nuxt automatically shares payload ",[3938,3939,3940],"em",{},"data"," between pages that are prerendered. This can result in a significant performance improvement when prerendering sites that use ",[2045,3943,515],{}," or ",[2045,3946,527],{}," and fetch the same data in different pages.",[2038,3949,3950],{},"You can disable this feature if needed.",[2098,3952,3954],{"className":2100,"code":3953,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    sharedPrerenderData: false,\n  },\n})\n",[2045,3955,3956,3968,3976,3987,3991],{"__ignoreMap":2104},[2108,3957,3958,3960,3962,3964,3966],{"class":2110,"line":2111},[2108,3959,2115],{"class":2114},[2108,3961,2118],{"class":2114},[2108,3963,2122],{"class":2121},[2108,3965,2126],{"class":2125},[2108,3967,2130],{"class":2129},[2108,3969,3970,3972,3974],{"class":2110,"line":2133},[2108,3971,2137],{"class":2136},[2108,3973,2140],{"class":2129},[2108,3975,2143],{"class":2129},[2108,3977,3978,3981,3983,3985],{"class":2110,"line":2146},[2108,3979,3980],{"class":2136},"    sharedPrerenderData",[2108,3982,2140],{"class":2129},[2108,3984,2218],{"class":2154},[2108,3986,2158],{"class":2129},[2108,3988,3989],{"class":2110,"line":2161},[2108,3990,2164],{"class":2129},[2108,3992,3993,3995],{"class":2110,"line":2167},[2108,3994,2170],{"class":2129},[2108,3996,2173],{"class":2125},[3836,3998],{"title":3999,"video-id":4000},"Watch a video from Alexander Lichter about the experimental sharedPrerenderData","1jUupYHVvrU",[2038,4002,4003,4004,4006,4007,4009],{},"It is particularly important when enabling this feature to make sure that any unique key of your data\nis always resolvable to the same data. For example, if you are using ",[2045,4005,515],{}," to fetch\ndata related to a particular page, you should provide a key that uniquely matches that data. (",[2045,4008,527],{},"\nshould do this automatically for you.)",[2098,4011,4013],{"className":2100,"code":4012,"language":2102,"meta":2104,"style":2104},"// This would be unsafe in a dynamic page (e.g. `[slug].vue`) because the route slug makes a difference\n// to the data fetched, but Nuxt can't know that because it's not reflected in the key.\nconst route = useRoute()\nconst { data } = await useAsyncData(async (_nuxtApp, { signal }) => {\n  return await $fetch(`/api/my-page/${route.params.slug}`, { signal })\n})\n// Instead, you should use a key that uniquely identifies the data fetched.\nconst { data } = await useAsyncData(route.params.slug, async (_nuxtApp, { signal }) => {\n  return await $fetch(`/api/my-page/${route.params.slug}`, { signal })\n})\n",[2045,4014,4015,4020,4025,4041,4082,4128,4134,4139,4186,4224],{"__ignoreMap":2104},[2108,4016,4017],{"class":2110,"line":2111},[2108,4018,4019],{"class":2493},"// This would be unsafe in a dynamic page (e.g. `[slug].vue`) because the route slug makes a difference\n",[2108,4021,4022],{"class":2110,"line":2133},[2108,4023,4024],{"class":2493},"// to the data fetched, but Nuxt can't know that because it's not reflected in the key.\n",[2108,4026,4027,4029,4032,4035,4038],{"class":2110,"line":2146},[2108,4028,2514],{"class":2505},[2108,4030,4031],{"class":2125}," route ",[2108,4033,4034],{"class":2129},"=",[2108,4036,4037],{"class":2121}," useRoute",[2108,4039,4040],{"class":2125},"()\n",[2108,4042,4043,4045,4047,4049,4051,4053,4055,4057,4059,4062,4065,4068,4070,4072,4075,4078,4080],{"class":2110,"line":2161},[2108,4044,2514],{"class":2505},[2108,4046,2517],{"class":2129},[2108,4048,2520],{"class":2125},[2108,4050,2170],{"class":2129},[2108,4052,2525],{"class":2129},[2108,4054,2528],{"class":2114},[2108,4056,2531],{"class":2121},[2108,4058,2126],{"class":2125},[2108,4060,4061],{"class":2505},"async",[2108,4063,4064],{"class":2129}," (",[2108,4066,4067],{"class":2672},"_nuxtApp",[2108,4069,2545],{"class":2129},[2108,4071,2517],{"class":2129},[2108,4073,4074],{"class":2672}," signal",[2108,4076,4077],{"class":2129}," })",[2108,4079,2554],{"class":2505},[2108,4081,2143],{"class":2129},[2108,4083,4084,4086,4088,4090,4092,4095,4098,4101,4104,4106,4109,4111,4114,4117,4119,4121,4123,4126],{"class":2110,"line":2167},[2108,4085,2561],{"class":2114},[2108,4087,2528],{"class":2114},[2108,4089,2566],{"class":2121},[2108,4091,2126],{"class":2136},[2108,4093,4094],{"class":2129},"`",[2108,4096,4097],{"class":2539},"/api/my-page/",[2108,4099,4100],{"class":2129},"${",[2108,4102,4103],{"class":2125},"route",[2108,4105,2664],{"class":2129},[2108,4107,4108],{"class":2125},"params",[2108,4110,2664],{"class":2129},[2108,4112,4113],{"class":2125},"slug",[2108,4115,4116],{"class":2129},"}`",[2108,4118,2545],{"class":2129},[2108,4120,2517],{"class":2129},[2108,4122,4074],{"class":2125},[2108,4124,4125],{"class":2129}," }",[2108,4127,2173],{"class":2136},[2108,4129,4130,4132],{"class":2110,"line":2586},[2108,4131,2170],{"class":2129},[2108,4133,2173],{"class":2125},[2108,4135,4136],{"class":2110,"line":3295},[2108,4137,4138],{"class":2493},"// Instead, you should use a key that uniquely identifies the data fetched.\n",[2108,4140,4141,4143,4145,4147,4149,4151,4153,4155,4158,4160,4162,4164,4166,4168,4170,4172,4174,4176,4178,4180,4182,4184],{"class":2110,"line":3322},[2108,4142,2514],{"class":2505},[2108,4144,2517],{"class":2129},[2108,4146,2520],{"class":2125},[2108,4148,2170],{"class":2129},[2108,4150,2525],{"class":2129},[2108,4152,2528],{"class":2114},[2108,4154,2531],{"class":2121},[2108,4156,4157],{"class":2125},"(route",[2108,4159,2664],{"class":2129},[2108,4161,4108],{"class":2125},[2108,4163,2664],{"class":2129},[2108,4165,4113],{"class":2125},[2108,4167,2545],{"class":2129},[2108,4169,2548],{"class":2505},[2108,4171,4064],{"class":2129},[2108,4173,4067],{"class":2672},[2108,4175,2545],{"class":2129},[2108,4177,2517],{"class":2129},[2108,4179,4074],{"class":2672},[2108,4181,4077],{"class":2129},[2108,4183,2554],{"class":2505},[2108,4185,2143],{"class":2129},[2108,4187,4188,4190,4192,4194,4196,4198,4200,4202,4204,4206,4208,4210,4212,4214,4216,4218,4220,4222],{"class":2110,"line":3345},[2108,4189,2561],{"class":2114},[2108,4191,2528],{"class":2114},[2108,4193,2566],{"class":2121},[2108,4195,2126],{"class":2136},[2108,4197,4094],{"class":2129},[2108,4199,4097],{"class":2539},[2108,4201,4100],{"class":2129},[2108,4203,4103],{"class":2125},[2108,4205,2664],{"class":2129},[2108,4207,4108],{"class":2125},[2108,4209,2664],{"class":2129},[2108,4211,4113],{"class":2125},[2108,4213,4116],{"class":2129},[2108,4215,2545],{"class":2129},[2108,4217,2517],{"class":2129},[2108,4219,4074],{"class":2125},[2108,4221,4125],{"class":2129},[2108,4223,2173],{"class":2136},[2108,4225,4226,4228],{"class":2110,"line":3350},[2108,4227,2170],{"class":2129},[2108,4229,2173],{"class":2125},[2068,4231,4233],{"id":4232},"clientnodecompat","clientNodeCompat",[2038,4235,4236,4237,2664],{},"With this feature, Nuxt will automatically polyfill Node.js imports in the client build using ",[2050,4238,4241],{"href":4239,"rel":4240},"https://github.com/unjs/unenv",[2058],[2045,4242,4243],{},"unenv",[2062,4245,4246,4253],{},[2038,4247,4248,4249,4252],{},"To make globals like ",[2045,4250,4251],{},"Buffer"," work in the browser, you need to manually inject them.",[2098,4254,4256],{"className":2100,"code":4255,"language":2102,"meta":2104,"style":2104},"import { Buffer } from 'node:buffer'\n\nglobalThis.Buffer ||= Buffer\n",[2045,4257,4258,4281,4286],{"__ignoreMap":2104},[2108,4259,4260,4263,4265,4268,4270,4273,4275,4278],{"class":2110,"line":2111},[2108,4261,4262],{"class":2114},"import",[2108,4264,2517],{"class":2129},[2108,4266,4267],{"class":2125}," Buffer",[2108,4269,4125],{"class":2129},[2108,4271,4272],{"class":2114}," from",[2108,4274,2789],{"class":2129},[2108,4276,4277],{"class":2539},"node:buffer",[2108,4279,4280],{"class":2129},"'\n",[2108,4282,4283],{"class":2110,"line":2133},[2108,4284,4285],{"emptyLinePlaceholder":1196},"\n",[2108,4287,4288,4291,4293,4296,4299],{"class":2110,"line":2146},[2108,4289,4290],{"class":2125},"globalThis",[2108,4292,2664],{"class":2129},[2108,4294,4295],{"class":2125},"Buffer ",[2108,4297,4298],{"class":2129},"||=",[2108,4300,4301],{"class":2125}," Buffer\n",[2068,4303,4305],{"id":4304},"scanpagemeta","scanPageMeta",[2038,4307,4308,4309,4311,4312,2360,4315,2360,4318,2360,4320,2360,4323,2086,4326,2732],{},"Nuxt exposing some route metadata defined in ",[2045,4310,678],{}," at build-time to modules (specifically ",[2045,4313,4314],{},"alias",[2045,4316,4317],{},"name",[2045,4319,3003],{},[2045,4321,4322],{},"redirect",[2045,4324,4325],{},"props",[2045,4327,157],{},[2038,4329,4330,4331,4336],{},"This only works with static or strings/arrays rather than variables or conditional assignment. See ",[2050,4332,4335],{"href":4333,"rel":4334},"https://github.com/nuxt/nuxt/issues/24770",[2058],"original issue"," for more information and context.",[2038,4338,4339,4340,4343,4344,4347],{},"By default page metadata is only scanned after all routes have been registered in ",[2045,4341,4342],{},"pages:extend",". Then another hook, ",[2045,4345,4346],{},"pages:resolved"," will be called.",[2038,4349,4350],{},"You can disable this feature if it causes issues in your project.",[2098,4352,4354],{"className":2100,"code":4353,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    scanPageMeta: false,\n  },\n})\n",[2045,4355,4356,4368,4376,4387,4391],{"__ignoreMap":2104},[2108,4357,4358,4360,4362,4364,4366],{"class":2110,"line":2111},[2108,4359,2115],{"class":2114},[2108,4361,2118],{"class":2114},[2108,4363,2122],{"class":2121},[2108,4365,2126],{"class":2125},[2108,4367,2130],{"class":2129},[2108,4369,4370,4372,4374],{"class":2110,"line":2133},[2108,4371,2137],{"class":2136},[2108,4373,2140],{"class":2129},[2108,4375,2143],{"class":2129},[2108,4377,4378,4381,4383,4385],{"class":2110,"line":2146},[2108,4379,4380],{"class":2136},"    scanPageMeta",[2108,4382,2140],{"class":2129},[2108,4384,2218],{"class":2154},[2108,4386,2158],{"class":2129},[2108,4388,4389],{"class":2110,"line":2161},[2108,4390,2164],{"class":2129},[2108,4392,4393,4395],{"class":2110,"line":2167},[2108,4394,2170],{"class":2129},[2108,4396,2173],{"class":2125},[2068,4398,4400],{"id":4399},"cookiestore","cookieStore",[2038,4402,4403,4404,4406],{},"Enables CookieStore support to listen for cookie updates (if supported by the browser) and refresh ",[2045,4405,519],{}," ref values.",[2038,4408,2183],{},[2098,4410,4412],{"className":2100,"code":4411,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    cookieStore: false,\n  },\n})\n",[2045,4413,4414,4426,4434,4445,4449],{"__ignoreMap":2104},[2108,4415,4416,4418,4420,4422,4424],{"class":2110,"line":2111},[2108,4417,2115],{"class":2114},[2108,4419,2118],{"class":2114},[2108,4421,2122],{"class":2121},[2108,4423,2126],{"class":2125},[2108,4425,2130],{"class":2129},[2108,4427,4428,4430,4432],{"class":2110,"line":2133},[2108,4429,2137],{"class":2136},[2108,4431,2140],{"class":2129},[2108,4433,2143],{"class":2129},[2108,4435,4436,4439,4441,4443],{"class":2110,"line":2146},[2108,4437,4438],{"class":2136},"    cookieStore",[2108,4440,2140],{"class":2129},[2108,4442,2218],{"class":2154},[2108,4444,2158],{"class":2129},[2108,4446,4447],{"class":2110,"line":2161},[2108,4448,2164],{"class":2129},[2108,4450,4451,4453],{"class":2110,"line":2167},[2108,4452,2170],{"class":2129},[2108,4454,2173],{"class":2125},[2289,4456,4458],{"to":4457,"icon":3536,"target":2293},"https://developer.mozilla.org/en-US/docs/Web/API/CookieStore",[2038,4459,3472,4460,2664],{},[2711,4461,4462],{},"CookieStore",[2068,4464,4466],{"id":4465},"buildcache","buildCache",[2038,4468,4469],{},"Caches Nuxt build artifacts based on a hash of the configuration and source files.",[2038,4471,4472,4473,2086,4476,4479],{},"This only works for source files within ",[2045,4474,4475],{},"srcDir",[2045,4477,4478],{},"serverDir"," for the Vue/Nitro parts of your app.",[2038,4481,4482],{},"This flag is disabled by default, but you can enable it:",[2098,4484,4486],{"className":2100,"code":4485,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    buildCache: true,\n  },\n})\n",[2045,4487,4488,4500,4508,4519,4523],{"__ignoreMap":2104},[2108,4489,4490,4492,4494,4496,4498],{"class":2110,"line":2111},[2108,4491,2115],{"class":2114},[2108,4493,2118],{"class":2114},[2108,4495,2122],{"class":2121},[2108,4497,2126],{"class":2125},[2108,4499,2130],{"class":2129},[2108,4501,4502,4504,4506],{"class":2110,"line":2133},[2108,4503,2137],{"class":2136},[2108,4505,2140],{"class":2129},[2108,4507,2143],{"class":2129},[2108,4509,4510,4513,4515,4517],{"class":2110,"line":2146},[2108,4511,4512],{"class":2136},"    buildCache",[2108,4514,2140],{"class":2129},[2108,4516,2155],{"class":2154},[2108,4518,2158],{"class":2129},[2108,4520,4521],{"class":2110,"line":2161},[2108,4522,2164],{"class":2129},[2108,4524,4525,4527],{"class":2110,"line":2167},[2108,4526,2170],{"class":2129},[2108,4528,2173],{"class":2125},[2038,4530,4531],{},"When enabled, changes to the following files will trigger a full rebuild:",[2098,4533,4538],{"className":4534,"code":4535,"filename":4536,"language":4537,"meta":2104,"style":2104},"language-bash shiki shiki-themes material-theme-lighter material-theme-lighter material-theme-palenight",".nuxtrc\n.npmrc\npackage.json\npackage-lock.json\nyarn.lock\npnpm-lock.yaml\ntsconfig.json\nbun.lock\nbun.lockb\n","Directory structure","bash",[2045,4539,4540,4546,4551,4556,4561,4566,4571,4576,4581],{"__ignoreMap":2104},[2108,4541,4542],{"class":2110,"line":2111},[2108,4543,4545],{"class":4544},"s52Pk",".nuxtrc\n",[2108,4547,4548],{"class":2110,"line":2133},[2108,4549,4550],{"class":4544},".npmrc\n",[2108,4552,4553],{"class":2110,"line":2146},[2108,4554,4555],{"class":4544},"package.json\n",[2108,4557,4558],{"class":2110,"line":2161},[2108,4559,4560],{"class":4544},"package-lock.json\n",[2108,4562,4563],{"class":2110,"line":2167},[2108,4564,4565],{"class":4544},"yarn.lock\n",[2108,4567,4568],{"class":2110,"line":2586},[2108,4569,4570],{"class":4544},"pnpm-lock.yaml\n",[2108,4572,4573],{"class":2110,"line":3295},[2108,4574,4575],{"class":4544},"tsconfig.json\n",[2108,4577,4578],{"class":2110,"line":3322},[2108,4579,4580],{"class":4544},"bun.lock\n",[2108,4582,4583],{"class":2110,"line":3345},[2108,4584,4585],{"class":4544},"bun.lockb\n",[2038,4587,4588,4589,4591],{},"In addition, any changes to files within ",[2045,4590,4475],{}," will trigger a rebuild of the Vue client/server bundle. Nitro will always be rebuilt (though work is in progress to allow Nitro to announce its cacheable artifacts and their hashes).",[2062,4593,4594],{},[2038,4595,4596],{},"A maximum of 10 cache tarballs are kept.",[2068,4598,4600],{"id":4599},"checkoutdatedbuildinterval","checkOutdatedBuildInterval",[2038,4602,4603,4604,4607,4608,2664],{},"Set the time interval (in ms) to check for new builds. Disabled when ",[2045,4605,4606],{},"experimental.appManifest"," is ",[2045,4609,2750],{},[2038,4611,4612,4613,4615],{},"Set to ",[2045,4614,2750],{}," to disable.",[2098,4617,4619],{"className":2100,"code":4618,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    checkOutdatedBuildInterval: 3600000, // 1 hour, or false to disable\n  },\n})\n",[2045,4620,4621,4633,4641,4656,4660],{"__ignoreMap":2104},[2108,4622,4623,4625,4627,4629,4631],{"class":2110,"line":2111},[2108,4624,2115],{"class":2114},[2108,4626,2118],{"class":2114},[2108,4628,2122],{"class":2121},[2108,4630,2126],{"class":2125},[2108,4632,2130],{"class":2129},[2108,4634,4635,4637,4639],{"class":2110,"line":2133},[2108,4636,2137],{"class":2136},[2108,4638,2140],{"class":2129},[2108,4640,2143],{"class":2129},[2108,4642,4643,4646,4648,4651,4653],{"class":2110,"line":2146},[2108,4644,4645],{"class":2136},"    checkOutdatedBuildInterval",[2108,4647,2140],{"class":2129},[2108,4649,4650],{"class":3315}," 3600000",[2108,4652,2545],{"class":2129},[2108,4654,4655],{"class":2493}," // 1 hour, or false to disable\n",[2108,4657,4658],{"class":2110,"line":2161},[2108,4659,2164],{"class":2129},[2108,4661,4662,4664],{"class":2110,"line":2167},[2108,4663,2170],{"class":2129},[2108,4665,2173],{"class":2125},[2068,4667,4669],{"id":4668},"extrapagemetaextractionkeys","extraPageMetaExtractionKeys",[2038,4671,4672,4673,4676],{},"The ",[2045,4674,4675],{},"definePageMeta()"," macro is a useful way to collect build-time meta about pages. Nuxt itself provides a set list of supported keys which is used to power some of the internal features such as redirects, page aliases and custom paths.",[2038,4678,4679,4680,2664],{},"This option allows passing additional keys to extract from the page metadata when using ",[2045,4681,4305],{},[2098,4683,4685],{"className":2485,"code":4684,"language":2359,"meta":2104,"style":2104},"\u003Cscript lang=\"ts\" setup>\ndefinePageMeta({\n  foo: 'bar',\n})\n\u003C/script>\n",[2045,4686,4687,4709,4717,4733,4739],{"__ignoreMap":2104},[2108,4688,4689,4691,4693,4696,4698,4701,4703,4705,4707],{"class":2110,"line":2111},[2108,4690,2499],{"class":2129},[2108,4692,2502],{"class":2136},[2108,4694,4695],{"class":2505}," lang",[2108,4697,4034],{"class":2129},[2108,4699,4700],{"class":2129},"\"",[2108,4702,2102],{"class":2539},[2108,4704,4700],{"class":2129},[2108,4706,2506],{"class":2505},[2108,4708,2509],{"class":2129},[2108,4710,4711,4713,4715],{"class":2110,"line":2133},[2108,4712,678],{"class":2121},[2108,4714,2126],{"class":2125},[2108,4716,2130],{"class":2129},[2108,4718,4719,4722,4724,4726,4729,4731],{"class":2110,"line":2146},[2108,4720,4721],{"class":2136},"  foo",[2108,4723,2140],{"class":2129},[2108,4725,2789],{"class":2129},[2108,4727,4728],{"class":2539},"bar",[2108,4730,2536],{"class":2129},[2108,4732,2158],{"class":2129},[2108,4734,4735,4737],{"class":2110,"line":2161},[2108,4736,2170],{"class":2129},[2108,4738,2173],{"class":2125},[2108,4740,4741,4743,4745],{"class":2110,"line":2167},[2108,4742,2589],{"class":2129},[2108,4744,2502],{"class":2136},[2108,4746,2509],{"class":2129},[2098,4748,4750],{"className":2100,"code":4749,"language":2102,"meta":2104,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    extraPageMetaExtractionKeys: ['foo'],\n  },\n  hooks: {\n    'pages:resolved' (ctx) {\n      // ✅ foo is available\n    },\n  },\n})\n",[2045,4751,4752,4764,4772,4794,4798,4807,4824,4829,4834,4838],{"__ignoreMap":2104},[2108,4753,4754,4756,4758,4760,4762],{"class":2110,"line":2111},[2108,4755,2115],{"class":2114},[2108,4757,2118],{"class":2114},[2108,4759,2122],{"class":2121},[2108,4761,2126],{"class":2125},[2108,4763,2130],{"class":2129},[2108,4765,4766,4768,4770],{"class":2110,"line":2133},[2108,4767,2137],{"class":2136},[2108,4769,2140],{"class":2129},[2108,4771,2143],{"class":2129},[2108,4773,4774,4777,4779,4782,4784,4787,4789,4792],{"class":2110,"line":2146},[2108,4775,4776],{"class":2136},"    extraPageMetaExtractionKeys",[2108,4778,2140],{"class":2129},[2108,4780,4781],{"class":2125}," [",[2108,4783,2536],{"class":2129},[2108,4785,4786],{"class":2539},"foo",[2108,4788,2536],{"class":2129},[2108,4790,4791],{"class":2125},"]",[2108,4793,2158],{"class":2129},[2108,4795,4796],{"class":2110,"line":2161},[2108,4797,2164],{"class":2129},[2108,4799,4800,4803,4805],{"class":2110,"line":2167},[2108,4801,4802],{"class":2136},"  hooks",[2108,4804,2140],{"class":2129},[2108,4806,2143],{"class":2129},[2108,4808,4809,4811,4813,4815,4817,4820,4822],{"class":2110,"line":2586},[2108,4810,3298],{"class":2129},[2108,4812,4346],{"class":2539},[2108,4814,2536],{"class":2129},[2108,4816,4064],{"class":2129},[2108,4818,4819],{"class":2672},"ctx",[2108,4821,2661],{"class":2129},[2108,4823,2143],{"class":2129},[2108,4825,4826],{"class":2110,"line":3295},[2108,4827,4828],{"class":2493},"      // ✅ foo is available\n",[2108,4830,4831],{"class":2110,"line":3322},[2108,4832,4833],{"class":2129},"    },\n",[2108,4835,4836],{"class":2110,"line":3345},[2108,4837,2164],{"class":2129},[2108,4839,4840,4842],{"class":2110,"line":3350},[2108,4841,2170],{"class":2129},[2108,4843,2173],{"class":2125},[2038,4845,4846,4847,2664],{},"This allows modules to access additional metadata from the page metadata in the build context. If you are using this within a module, it's recommended also to ",[2050,4848,4850,4851,4854],{"href":4849},"/docs/3.x/directory-structure/pages#typing-custom-metadata","augment the ",[2045,4852,4853],{},"NuxtPage"," types with your keys",[2068,4856,4858],{"id":4857},"navigationrepaint","navigationRepaint",[2038,4860,4861],{},"Wait for a single animation frame before navigation, which gives an opportunity for the browser to repaint, acknowledging user interaction.",[2038,4863,4864],{},"It can reduce INP when navigating on prerendered routes.",[2038,4866,2183],{},[2098,4868,4870],{"className":2100,"code":4869,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    navigationRepaint: false,\n  },\n})\n",[2045,4871,4872,4884,4892,4903,4907],{"__ignoreMap":2104},[2108,4873,4874,4876,4878,4880,4882],{"class":2110,"line":2111},[2108,4875,2115],{"class":2114},[2108,4877,2118],{"class":2114},[2108,4879,2122],{"class":2121},[2108,4881,2126],{"class":2125},[2108,4883,2130],{"class":2129},[2108,4885,4886,4888,4890],{"class":2110,"line":2133},[2108,4887,2137],{"class":2136},[2108,4889,2140],{"class":2129},[2108,4891,2143],{"class":2129},[2108,4893,4894,4897,4899,4901],{"class":2110,"line":2146},[2108,4895,4896],{"class":2136},"    navigationRepaint",[2108,4898,2140],{"class":2129},[2108,4900,2218],{"class":2154},[2108,4902,2158],{"class":2129},[2108,4904,4905],{"class":2110,"line":2161},[2108,4906,2164],{"class":2129},[2108,4908,4909,4911],{"class":2110,"line":2167},[2108,4910,2170],{"class":2129},[2108,4912,2173],{"class":2125},[2068,4914,4916],{"id":4915},"normalizecomponentnames","normalizeComponentNames",[2038,4918,4919],{},"Nuxt updates auto-generated Vue component names to match the full component name you would use to auto-import the component.",[2038,4921,4922],{},"If you encounter issues, you can disable this feature.",[2098,4924,4926],{"className":2100,"code":4925,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    normalizeComponentNames: false,\n  },\n})\n",[2045,4927,4928,4940,4948,4959,4963],{"__ignoreMap":2104},[2108,4929,4930,4932,4934,4936,4938],{"class":2110,"line":2111},[2108,4931,2115],{"class":2114},[2108,4933,2118],{"class":2114},[2108,4935,2122],{"class":2121},[2108,4937,2126],{"class":2125},[2108,4939,2130],{"class":2129},[2108,4941,4942,4944,4946],{"class":2110,"line":2133},[2108,4943,2137],{"class":2136},[2108,4945,2140],{"class":2129},[2108,4947,2143],{"class":2129},[2108,4949,4950,4953,4955,4957],{"class":2110,"line":2146},[2108,4951,4952],{"class":2136},"    normalizeComponentNames",[2108,4954,2140],{"class":2129},[2108,4956,2218],{"class":2154},[2108,4958,2158],{"class":2129},[2108,4960,4961],{"class":2110,"line":2161},[2108,4962,2164],{"class":2129},[2108,4964,4965,4967],{"class":2110,"line":2167},[2108,4966,2170],{"class":2129},[2108,4968,2173],{"class":2125},[2038,4970,4971],{},"By default, if you haven't set it manually, Vue will assign a component name that matches\nthe filename of the component.",[2098,4973,4975],{"className":4534,"code":4974,"filename":4536,"language":4537,"meta":2104,"style":2104},"├─ components/\n├─── SomeFolder/\n├───── MyComponent.vue\n",[2045,4976,4977,4985,4993],{"__ignoreMap":2104},[2108,4978,4979,4982],{"class":2110,"line":2111},[2108,4980,4981],{"class":4544},"├─",[2108,4983,4984],{"class":2539}," components/\n",[2108,4986,4987,4990],{"class":2110,"line":2133},[2108,4988,4989],{"class":4544},"├───",[2108,4991,4992],{"class":2539}," SomeFolder/\n",[2108,4994,4995,4998],{"class":2110,"line":2146},[2108,4996,4997],{"class":4544},"├─────",[2108,4999,5000],{"class":2539}," MyComponent.vue\n",[2038,5002,5003,5004,5007,5008,5011],{},"In this case, the component name would be ",[2045,5005,5006],{},"MyComponent",", as far as Vue is concerned. If you wanted to use ",[2045,5009,5010],{},"\u003CKeepAlive>"," with it, or identify it in the Vue DevTools, you would need to use this component.",[2038,5013,5014,5015,2664],{},"But in order to auto-import it, you would need to use ",[2045,5016,5017],{},"SomeFolderMyComponent",[2038,5019,5020,5021,5024],{},"By setting ",[2045,5022,5023],{},"experimental.normalizeComponentNames",", these two values match, and Vue will generate a component name that matches the Nuxt pattern for component naming.",[2068,5026,5028],{"id":5027},"spaloadingtemplatelocation","spaLoadingTemplateLocation",[2038,5030,5031,5032,5035,5036,2732],{},"When rendering a client-only page (with ",[2045,5033,5034],{},"ssr: false","), we optionally render a loading screen (from ",[2045,5037,5038],{},"~/spa-loading-template.html",[2038,5040,5041,5042,5045],{},"It can be set to ",[2045,5043,5044],{},"within",", which will render it like this:",[2098,5047,5051],{"className":5048,"code":5049,"language":5050,"meta":2104,"style":2104},"language-html shiki shiki-themes material-theme-lighter material-theme-lighter material-theme-palenight","\u003Cdiv id=\"__nuxt\">\n  \u003C!-- spa loading template -->\n\u003C/div>\n","html",[2045,5052,5053,5074,5079],{"__ignoreMap":2104},[2108,5054,5055,5057,5060,5063,5065,5067,5070,5072],{"class":2110,"line":2111},[2108,5056,2499],{"class":2129},[2108,5058,5059],{"class":2136},"div",[2108,5061,5062],{"class":2505}," id",[2108,5064,4034],{"class":2129},[2108,5066,4700],{"class":2129},[2108,5068,5069],{"class":2539},"__nuxt",[2108,5071,4700],{"class":2129},[2108,5073,2509],{"class":2129},[2108,5075,5076],{"class":2110,"line":2133},[2108,5077,5078],{"class":2493},"  \u003C!-- spa loading template -->\n",[2108,5080,5081,5083,5085],{"class":2110,"line":2146},[2108,5082,2589],{"class":2129},[2108,5084,5059],{"class":2136},[2108,5086,2509],{"class":2129},[2038,5088,5089,5090,2140],{},"Alternatively, you can render the template alongside the Nuxt app root by setting it to ",[2045,5091,5092],{},"body",[2098,5094,5096],{"className":5048,"code":5095,"language":5050,"meta":2104,"style":2104},"\u003Cdiv id=\"__nuxt\">\u003C/div>\n\u003C!-- spa loading template -->\n",[2045,5097,5098,5121],{"__ignoreMap":2104},[2108,5099,5100,5102,5104,5106,5108,5110,5112,5114,5117,5119],{"class":2110,"line":2111},[2108,5101,2499],{"class":2129},[2108,5103,5059],{"class":2136},[2108,5105,5062],{"class":2505},[2108,5107,4034],{"class":2129},[2108,5109,4700],{"class":2129},[2108,5111,5069],{"class":2539},[2108,5113,4700],{"class":2129},[2108,5115,5116],{"class":2129},">\u003C/",[2108,5118,5059],{"class":2136},[2108,5120,2509],{"class":2129},[2108,5122,5123],{"class":2110,"line":2133},[2108,5124,5125],{"class":2493},"\u003C!-- spa loading template -->\n",[2038,5127,5128],{},"This avoids a white flash when hydrating a client-only page.",[2068,5130,5132],{"id":5131},"browserdevtoolstiming","browserDevtoolsTiming",[2038,5134,5135],{},"Enables performance markers for Nuxt hooks in browser devtools. This adds performance markers that you can track in the Performance tab of Chromium-based browsers, which is useful for debugging and optimizing performance.",[2038,5137,5138],{},"This is enabled by default in development mode. If you need to disable this feature, it is possible to do so:",[2098,5140,5142],{"className":2100,"code":5141,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    browserDevtoolsTiming: false,\n  },\n})\n",[2045,5143,5144,5156,5164,5175,5179],{"__ignoreMap":2104},[2108,5145,5146,5148,5150,5152,5154],{"class":2110,"line":2111},[2108,5147,2115],{"class":2114},[2108,5149,2118],{"class":2114},[2108,5151,2122],{"class":2121},[2108,5153,2126],{"class":2125},[2108,5155,2130],{"class":2129},[2108,5157,5158,5160,5162],{"class":2110,"line":2133},[2108,5159,2137],{"class":2136},[2108,5161,2140],{"class":2129},[2108,5163,2143],{"class":2129},[2108,5165,5166,5169,5171,5173],{"class":2110,"line":2146},[2108,5167,5168],{"class":2136},"    browserDevtoolsTiming",[2108,5170,2140],{"class":2129},[2108,5172,2218],{"class":2154},[2108,5174,2158],{"class":2129},[2108,5176,5177],{"class":2110,"line":2161},[2108,5178,2164],{"class":2129},[2108,5180,5181,5183],{"class":2110,"line":2167},[2108,5182,2170],{"class":2129},[2108,5184,2173],{"class":2125},[2289,5186,5189],{"to":5187,"icon":2292,"target":2293,"color":5188},"https://github.com/nuxt/nuxt/pull/29922","gray",[2038,5190,5191],{},"See PR #29922 for implementation details.",[2289,5193,5196],{"to":5194,"icon":5195,"target":2293,"color":5188},"https://developer.chrome.com/docs/devtools/performance/extension#tracks","i-simple-icons-googlechrome",[2038,5197,5198],{},"Learn more about Chrome DevTools Performance API.",[2068,5200,5202],{"id":5201},"debugmodulemutation","debugModuleMutation",[2038,5204,5205,5206,5209],{},"Records mutations to ",[2045,5207,5208],{},"nuxt.options"," in module context, helping to debug configuration changes made by modules during the Nuxt initialization phase.",[2038,5211,5212,5213,5216],{},"This is enabled by default when ",[2045,5214,5215],{},"debug"," mode is enabled. If you need to disable this feature, it is possible to do so:",[2038,5218,5219],{},"To enable it explicitly:",[2098,5221,5223],{"className":2100,"code":5222,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    debugModuleMutation: true,\n  },\n})\n",[2045,5224,5225,5237,5245,5256,5260],{"__ignoreMap":2104},[2108,5226,5227,5229,5231,5233,5235],{"class":2110,"line":2111},[2108,5228,2115],{"class":2114},[2108,5230,2118],{"class":2114},[2108,5232,2122],{"class":2121},[2108,5234,2126],{"class":2125},[2108,5236,2130],{"class":2129},[2108,5238,5239,5241,5243],{"class":2110,"line":2133},[2108,5240,2137],{"class":2136},[2108,5242,2140],{"class":2129},[2108,5244,2143],{"class":2129},[2108,5246,5247,5250,5252,5254],{"class":2110,"line":2146},[2108,5248,5249],{"class":2136},"    debugModuleMutation",[2108,5251,2140],{"class":2129},[2108,5253,2155],{"class":2154},[2108,5255,2158],{"class":2129},[2108,5257,5258],{"class":2110,"line":2161},[2108,5259,2164],{"class":2129},[2108,5261,5262,5264],{"class":2110,"line":2167},[2108,5263,2170],{"class":2129},[2108,5265,2173],{"class":2125},[2289,5267,5269],{"to":5268,"icon":2292,"target":2293,"color":5188},"https://github.com/nuxt/nuxt/pull/30555",[2038,5270,5271],{},"See PR #30555 for implementation details.",[2068,5273,5275],{"id":5274},"lazyhydration","lazyHydration",[2038,5277,5278,5279,5282],{},"This enables hydration strategies for ",[2045,5280,5281],{},"\u003CLazy>"," components, which improves performance by deferring hydration of components until they're needed.",[2038,5284,5285],{},"Lazy hydration is enabled by default, but you can disable this feature:",[2098,5287,5289],{"className":2100,"code":5288,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    lazyHydration: false,\n  },\n})\n",[2045,5290,5291,5303,5311,5322,5326],{"__ignoreMap":2104},[2108,5292,5293,5295,5297,5299,5301],{"class":2110,"line":2111},[2108,5294,2115],{"class":2114},[2108,5296,2118],{"class":2114},[2108,5298,2122],{"class":2121},[2108,5300,2126],{"class":2125},[2108,5302,2130],{"class":2129},[2108,5304,5305,5307,5309],{"class":2110,"line":2133},[2108,5306,2137],{"class":2136},[2108,5308,2140],{"class":2129},[2108,5310,2143],{"class":2129},[2108,5312,5313,5316,5318,5320],{"class":2110,"line":2146},[2108,5314,5315],{"class":2136},"    lazyHydration",[2108,5317,2140],{"class":2129},[2108,5319,2218],{"class":2154},[2108,5321,2158],{"class":2129},[2108,5323,5324],{"class":2110,"line":2161},[2108,5325,2164],{"class":2129},[2108,5327,5328,5330],{"class":2110,"line":2167},[2108,5329,2170],{"class":2129},[2108,5331,2173],{"class":2125},[2289,5333,5335],{"to":5334,"icon":2292,"color":5188},"/docs/3.x/directory-structure/components#delayed-or-lazy-hydration",[2038,5336,5337],{},"Read more about lazy hydration.",[2068,5339,5341],{"id":5340},"templateimportresolution","templateImportResolution",[2038,5343,5344],{},"Disable resolving imports into Nuxt templates from the path of the module that added the template.",[2038,5346,5347,5348,5350],{},"By default, Nuxt attempts to resolve imports in templates relative to the module that added them. Setting this to ",[2045,5349,2750],{}," disables this behavior, which may be useful if you're experiencing resolution conflicts in certain environments.",[2038,5352,2183],{},[2098,5354,5356],{"className":2100,"code":5355,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    templateImportResolution: false,\n  },\n})\n",[2045,5357,5358,5370,5378,5389,5393],{"__ignoreMap":2104},[2108,5359,5360,5362,5364,5366,5368],{"class":2110,"line":2111},[2108,5361,2115],{"class":2114},[2108,5363,2118],{"class":2114},[2108,5365,2122],{"class":2121},[2108,5367,2126],{"class":2125},[2108,5369,2130],{"class":2129},[2108,5371,5372,5374,5376],{"class":2110,"line":2133},[2108,5373,2137],{"class":2136},[2108,5375,2140],{"class":2129},[2108,5377,2143],{"class":2129},[2108,5379,5380,5383,5385,5387],{"class":2110,"line":2146},[2108,5381,5382],{"class":2136},"    templateImportResolution",[2108,5384,2140],{"class":2129},[2108,5386,2218],{"class":2154},[2108,5388,2158],{"class":2129},[2108,5390,5391],{"class":2110,"line":2161},[2108,5392,2164],{"class":2129},[2108,5394,5395,5397],{"class":2110,"line":2167},[2108,5396,2170],{"class":2129},[2108,5398,2173],{"class":2125},[2289,5400,5402],{"to":5401,"icon":2292,"target":2293,"color":5188},"https://github.com/nuxt/nuxt/pull/31175",[2038,5403,5404],{},"See PR #31175 for implementation details.",[2068,5406,5408],{"id":5407},"templaterouteinjection","templateRouteInjection",[2038,5410,5411,5412,5415,5416,5418,5419,5421,5422,5424,5425,5428],{},"By default the route object returned by the auto-imported ",[2045,5413,5414],{},"useRoute()"," composable is kept in sync with the current page in view in ",[2045,5417,468],{},". This is not true for ",[2045,5420,2366],{},"'s exported ",[2045,5423,591],{}," or for the default ",[2045,5426,5427],{},"$route"," object available in your Vue templates.",[2038,5430,5431,5432,5434,5435,2664],{},"By enabling this option a mixin will be injected to keep the ",[2045,5433,5427],{}," template object in sync with Nuxt's managed ",[2045,5436,5414],{},[2038,5438,2183],{},[2098,5440,5442],{"className":2100,"code":5441,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    templateRouteInjection: false,\n  },\n})\n",[2045,5443,5444,5456,5464,5475,5479],{"__ignoreMap":2104},[2108,5445,5446,5448,5450,5452,5454],{"class":2110,"line":2111},[2108,5447,2115],{"class":2114},[2108,5449,2118],{"class":2114},[2108,5451,2122],{"class":2121},[2108,5453,2126],{"class":2125},[2108,5455,2130],{"class":2129},[2108,5457,5458,5460,5462],{"class":2110,"line":2133},[2108,5459,2137],{"class":2136},[2108,5461,2140],{"class":2129},[2108,5463,2143],{"class":2129},[2108,5465,5466,5469,5471,5473],{"class":2110,"line":2146},[2108,5467,5468],{"class":2136},"    templateRouteInjection",[2108,5470,2140],{"class":2129},[2108,5472,2218],{"class":2154},[2108,5474,2158],{"class":2129},[2108,5476,5477],{"class":2110,"line":2161},[2108,5478,2164],{"class":2129},[2108,5480,5481,5483],{"class":2110,"line":2167},[2108,5482,2170],{"class":2129},[2108,5484,2173],{"class":2125},[2068,5486,5487],{"id":5487},"decorators",[2038,5489,5490,5491,2664],{},"This option enables enabling decorator syntax across your entire Nuxt/Nitro app, powered by ",[2050,5492,5495],{"href":5493,"rel":5494},"https://github.com/evanw/esbuild/releases/tag/v0.21.3",[2058],"esbuild",[2038,5497,5498,5499,5502,5503,5508,5509,2086,5513,2732],{},"For a long time, TypeScript has had support for decorators via ",[2045,5500,5501],{},"compilerOptions.experimentalDecorators",". This implementation predated the TC39 standardization process. Now, decorators are a ",[2050,5504,5507],{"href":5505,"rel":5506},"https://github.com/tc39/proposal-decorators",[2058],"Stage 3 Proposal",", and supported without special configuration in TS 5.0+ (see ",[2050,5510,5511],{"href":5511,"rel":5512},"https://github.com/microsoft/TypeScript/pull/52582",[2058],[2050,5514,5515],{"href":5515,"rel":5516},"https://devblogs.microsoft.com/typescript/announcing-typescript-5-0-beta/#decorators",[2058],[2038,5518,5519,5520,5523,5524,5527,5528,5530],{},"Enabling ",[2045,5521,5522],{},"experimental.decorators"," enables support for the TC39 proposal, ",[2711,5525,5526],{},"NOT"," for TypeScript's previous ",[2045,5529,5501],{}," implementation.",[2417,5532,5533],{},[2038,5534,5535],{},"Note that there may be changes before this finally lands in the JS standard.",[5537,5538,5540],"h3",{"id":5539},"usage","Usage",[2098,5542,5544],{"className":2100,"code":5543,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    decorators: true,\n  },\n})\n",[2045,5545,5546,5558,5566,5577,5581],{"__ignoreMap":2104},[2108,5547,5548,5550,5552,5554,5556],{"class":2110,"line":2111},[2108,5549,2115],{"class":2114},[2108,5551,2118],{"class":2114},[2108,5553,2122],{"class":2121},[2108,5555,2126],{"class":2125},[2108,5557,2130],{"class":2129},[2108,5559,5560,5562,5564],{"class":2110,"line":2133},[2108,5561,2137],{"class":2136},[2108,5563,2140],{"class":2129},[2108,5565,2143],{"class":2129},[2108,5567,5568,5571,5573,5575],{"class":2110,"line":2146},[2108,5569,5570],{"class":2136},"    decorators",[2108,5572,2140],{"class":2129},[2108,5574,2155],{"class":2154},[2108,5576,2158],{"class":2129},[2108,5578,5579],{"class":2110,"line":2161},[2108,5580,2164],{"class":2129},[2108,5582,5583,5585],{"class":2110,"line":2167},[2108,5584,2170],{"class":2129},[2108,5586,2173],{"class":2125},[2098,5588,5590],{"className":2100,"code":5589,"filename":219,"language":2102,"meta":2104,"style":2104},"function something (_method: () => unknown) {\n  return () => 'decorated'\n}\n\nclass SomeClass {\n  @something\n  public someMethod () {\n    return 'initial'\n  }\n}\n\nconst value = new SomeClass().someMethod()\n// this will return 'decorated'\n",[2045,5591,5592,5618,5633,5638,5642,5652,5660,5672,5684,5689,5693,5698,5723],{"__ignoreMap":2104},[2108,5593,5594,5597,5600,5602,5605,5607,5609,5611,5614,5616],{"class":2110,"line":2111},[2108,5595,5596],{"class":2505},"function",[2108,5598,5599],{"class":2121}," something",[2108,5601,4064],{"class":2129},[2108,5603,5604],{"class":2121},"_method",[2108,5606,2140],{"class":2129},[2108,5608,2551],{"class":2129},[2108,5610,2554],{"class":2505},[2108,5612,5613],{"class":4544}," unknown",[2108,5615,2661],{"class":2129},[2108,5617,2143],{"class":2129},[2108,5619,5620,5622,5624,5626,5628,5631],{"class":2110,"line":2133},[2108,5621,2561],{"class":2114},[2108,5623,2551],{"class":2129},[2108,5625,2554],{"class":2505},[2108,5627,2789],{"class":2129},[2108,5629,5630],{"class":2539},"decorated",[2108,5632,4280],{"class":2129},[2108,5634,5635],{"class":2110,"line":2146},[2108,5636,5637],{"class":2129},"}\n",[2108,5639,5640],{"class":2110,"line":2161},[2108,5641,4285],{"emptyLinePlaceholder":1196},[2108,5643,5644,5647,5650],{"class":2110,"line":2167},[2108,5645,5646],{"class":2505},"class",[2108,5648,5649],{"class":4544}," SomeClass",[2108,5651,2143],{"class":2129},[2108,5653,5654,5657],{"class":2110,"line":2586},[2108,5655,5656],{"class":2129},"  @",[2108,5658,5659],{"class":2125},"something\n",[2108,5661,5662,5665,5668,5670],{"class":2110,"line":3295},[2108,5663,5664],{"class":2505},"  public",[2108,5666,5667],{"class":2136}," someMethod",[2108,5669,2551],{"class":2129},[2108,5671,2143],{"class":2129},[2108,5673,5674,5677,5679,5682],{"class":2110,"line":3322},[2108,5675,5676],{"class":2114},"    return",[2108,5678,2789],{"class":2129},[2108,5680,5681],{"class":2539},"initial",[2108,5683,4280],{"class":2129},[2108,5685,5686],{"class":2110,"line":3345},[2108,5687,5688],{"class":2129},"  }\n",[2108,5690,5691],{"class":2110,"line":3350},[2108,5692,5637],{"class":2129},[2108,5694,5696],{"class":2110,"line":5695},11,[2108,5697,4285],{"emptyLinePlaceholder":1196},[2108,5699,5701,5703,5706,5708,5711,5713,5716,5718,5721],{"class":2110,"line":5700},12,[2108,5702,2514],{"class":2505},[2108,5704,5705],{"class":2125}," value ",[2108,5707,4034],{"class":2129},[2108,5709,5710],{"class":2129}," new",[2108,5712,5649],{"class":2121},[2108,5714,5715],{"class":2125},"()",[2108,5717,2664],{"class":2129},[2108,5719,5720],{"class":2121},"someMethod",[2108,5722,4040],{"class":2125},[2108,5724,5726],{"class":2110,"line":5725},13,[2108,5727,5728],{"class":2493},"// this will return 'decorated'\n",[2068,5730,5731],{"id":5731},"defaults",[2038,5733,5734],{},"This allows specifying the default options for core Nuxt components and composables.",[2038,5736,5737,5738,5741,5742,5744],{},"These options will likely be moved elsewhere in the future, such as into ",[2045,5739,5740],{},"app.config"," or into the ",[2045,5743,1195],{}," directory.",[2098,5746,5748],{"className":2100,"code":5747,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    defaults: {\n      nuxtLink: {\n        componentName: 'NuxtLink',\n        prefetch: true,\n        prefetchOn: {\n          visibility: true,\n        },\n      },\n      useAsyncData: {\n        deep: true,\n      },\n    },\n  },\n})\n",[2045,5749,5750,5762,5770,5779,5788,5804,5815,5824,5835,5840,5845,5854,5865,5869,5874,5879],{"__ignoreMap":2104},[2108,5751,5752,5754,5756,5758,5760],{"class":2110,"line":2111},[2108,5753,2115],{"class":2114},[2108,5755,2118],{"class":2114},[2108,5757,2122],{"class":2121},[2108,5759,2126],{"class":2125},[2108,5761,2130],{"class":2129},[2108,5763,5764,5766,5768],{"class":2110,"line":2133},[2108,5765,2137],{"class":2136},[2108,5767,2140],{"class":2129},[2108,5769,2143],{"class":2129},[2108,5771,5772,5775,5777],{"class":2110,"line":2146},[2108,5773,5774],{"class":2136},"    defaults",[2108,5776,2140],{"class":2129},[2108,5778,2143],{"class":2129},[2108,5780,5781,5784,5786],{"class":2110,"line":2161},[2108,5782,5783],{"class":2136},"      nuxtLink",[2108,5785,2140],{"class":2129},[2108,5787,2143],{"class":2129},[2108,5789,5790,5793,5795,5797,5800,5802],{"class":2110,"line":2167},[2108,5791,5792],{"class":2136},"        componentName",[2108,5794,2140],{"class":2129},[2108,5796,2789],{"class":2129},[2108,5798,5799],{"class":2539},"NuxtLink",[2108,5801,2536],{"class":2129},[2108,5803,2158],{"class":2129},[2108,5805,5806,5809,5811,5813],{"class":2110,"line":2586},[2108,5807,5808],{"class":2136},"        prefetch",[2108,5810,2140],{"class":2129},[2108,5812,2155],{"class":2154},[2108,5814,2158],{"class":2129},[2108,5816,5817,5820,5822],{"class":2110,"line":3295},[2108,5818,5819],{"class":2136},"        prefetchOn",[2108,5821,2140],{"class":2129},[2108,5823,2143],{"class":2129},[2108,5825,5826,5829,5831,5833],{"class":2110,"line":3322},[2108,5827,5828],{"class":2136},"          visibility",[2108,5830,2140],{"class":2129},[2108,5832,2155],{"class":2154},[2108,5834,2158],{"class":2129},[2108,5836,5837],{"class":2110,"line":3345},[2108,5838,5839],{"class":2129},"        },\n",[2108,5841,5842],{"class":2110,"line":3350},[2108,5843,5844],{"class":2129},"      },\n",[2108,5846,5847,5850,5852],{"class":2110,"line":5695},[2108,5848,5849],{"class":2136},"      useAsyncData",[2108,5851,2140],{"class":2129},[2108,5853,2143],{"class":2129},[2108,5855,5856,5859,5861,5863],{"class":2110,"line":5700},[2108,5857,5858],{"class":2136},"        deep",[2108,5860,2140],{"class":2129},[2108,5862,2155],{"class":2154},[2108,5864,2158],{"class":2129},[2108,5866,5867],{"class":2110,"line":5725},[2108,5868,5844],{"class":2129},[2108,5870,5872],{"class":2110,"line":5871},14,[2108,5873,4833],{"class":2129},[2108,5875,5877],{"class":2110,"line":5876},15,[2108,5878,2164],{"class":2129},[2108,5880,5882,5884],{"class":2110,"line":5881},16,[2108,5883,2170],{"class":2129},[2108,5885,2173],{"class":2125},[2068,5887,5889],{"id":5888},"purgecacheddata","purgeCachedData",[2038,5891,5892],{},"Whether to clean up Nuxt static and asyncData caches on route navigation.",[2038,5894,5895,5896,2086,5898,5901],{},"Nuxt will automatically purge cached data from ",[2045,5897,515],{},[2045,5899,5900],{},"nuxtApp.static.data",". This helps prevent memory leaks and ensures fresh data is loaded when needed, but it is possible to disable it.",[2038,5903,2183],{},[2098,5905,5907],{"className":2100,"code":5906,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    purgeCachedData: false,\n  },\n})\n",[2045,5908,5909,5921,5929,5940,5944],{"__ignoreMap":2104},[2108,5910,5911,5913,5915,5917,5919],{"class":2110,"line":2111},[2108,5912,2115],{"class":2114},[2108,5914,2118],{"class":2114},[2108,5916,2122],{"class":2121},[2108,5918,2126],{"class":2125},[2108,5920,2130],{"class":2129},[2108,5922,5923,5925,5927],{"class":2110,"line":2133},[2108,5924,2137],{"class":2136},[2108,5926,2140],{"class":2129},[2108,5928,2143],{"class":2129},[2108,5930,5931,5934,5936,5938],{"class":2110,"line":2146},[2108,5932,5933],{"class":2136},"    purgeCachedData",[2108,5935,2140],{"class":2129},[2108,5937,2218],{"class":2154},[2108,5939,2158],{"class":2129},[2108,5941,5942],{"class":2110,"line":2161},[2108,5943,2164],{"class":2129},[2108,5945,5946,5948],{"class":2110,"line":2167},[2108,5947,2170],{"class":2129},[2108,5949,2173],{"class":2125},[2289,5951,5953],{"to":5952,"icon":2292,"target":2293,"color":5188},"https://github.com/nuxt/nuxt/pull/31379",[2038,5954,5955],{},"See PR #31379 for implementation details.",[2068,5957,5959],{"id":5958},"granularcacheddata","granularCachedData",[2038,5961,5962,5963,5966,5967,2086,5969,5971,5972,2360,5975,5978,5979,2881],{},"Whether to call and use the result from ",[2045,5964,5965],{},"getCachedData"," when refreshing data for ",[2045,5968,515],{},[2045,5970,527],{}," (whether by ",[2045,5973,5974],{},"watch",[2045,5976,5977],{},"refreshNuxtData()",", or a manual ",[2045,5980,5981],{},"refresh()",[2038,5983,2183],{},[2098,5985,5987],{"className":2100,"code":5986,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    granularCachedData: false,\n  },\n})\n",[2045,5988,5989,6001,6009,6020,6024],{"__ignoreMap":2104},[2108,5990,5991,5993,5995,5997,5999],{"class":2110,"line":2111},[2108,5992,2115],{"class":2114},[2108,5994,2118],{"class":2114},[2108,5996,2122],{"class":2121},[2108,5998,2126],{"class":2125},[2108,6000,2130],{"class":2129},[2108,6002,6003,6005,6007],{"class":2110,"line":2133},[2108,6004,2137],{"class":2136},[2108,6006,2140],{"class":2129},[2108,6008,2143],{"class":2129},[2108,6010,6011,6014,6016,6018],{"class":2110,"line":2146},[2108,6012,6013],{"class":2136},"    granularCachedData",[2108,6015,2140],{"class":2129},[2108,6017,2218],{"class":2154},[2108,6019,2158],{"class":2129},[2108,6021,6022],{"class":2110,"line":2161},[2108,6023,2164],{"class":2129},[2108,6025,6026,6028],{"class":2110,"line":2167},[2108,6027,2170],{"class":2129},[2108,6029,2173],{"class":2125},[2289,6031,6033],{"to":6032,"icon":2292,"target":2293,"color":5188},"https://github.com/nuxt/nuxt/pull/31373",[2038,6034,6035],{},"See PR #31373 for implementation details.",[2068,6037,6039],{"id":6038},"headnext","headNext",[2038,6041,6042],{},"Use head optimisations:",[6044,6045,6046,6050],"ul",{},[6047,6048,6049],"li",{},"Add the capo.js head plugin in order to render tags in of the head in a more performant way.",[6047,6051,6052],{},"Uses the hash hydration plugin to reduce initial hydration",[2038,6054,2183],{},[2098,6056,6058],{"className":2100,"code":6057,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    headNext: false,\n  },\n})\n",[2045,6059,6060,6072,6080,6091,6095],{"__ignoreMap":2104},[2108,6061,6062,6064,6066,6068,6070],{"class":2110,"line":2111},[2108,6063,2115],{"class":2114},[2108,6065,2118],{"class":2114},[2108,6067,2122],{"class":2121},[2108,6069,2126],{"class":2125},[2108,6071,2130],{"class":2129},[2108,6073,6074,6076,6078],{"class":2110,"line":2133},[2108,6075,2137],{"class":2136},[2108,6077,2140],{"class":2129},[2108,6079,2143],{"class":2129},[2108,6081,6082,6085,6087,6089],{"class":2110,"line":2146},[2108,6083,6084],{"class":2136},"    headNext",[2108,6086,2140],{"class":2129},[2108,6088,2218],{"class":2154},[2108,6090,2158],{"class":2129},[2108,6092,6093],{"class":2110,"line":2161},[2108,6094,2164],{"class":2129},[2108,6096,6097,6099],{"class":2110,"line":2167},[2108,6098,2170],{"class":2129},[2108,6100,2173],{"class":2125},[2068,6102,6104],{"id":6103},"pendingwhenidle","pendingWhenIdle",[2038,6106,6107,6108,2086,6110,6112,6113,6116,6117,6120],{},"For ",[2045,6109,515],{},[2045,6111,527],{},", whether ",[2045,6114,6115],{},"pending"," should be ",[2045,6118,6119],{},"true"," when data has not yet started to be fetched.",[2038,6122,2096],{},[2098,6124,6126],{"className":2100,"code":6125,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    pendingWhenIdle: true,\n  },\n})\n",[2045,6127,6128,6140,6148,6159,6163],{"__ignoreMap":2104},[2108,6129,6130,6132,6134,6136,6138],{"class":2110,"line":2111},[2108,6131,2115],{"class":2114},[2108,6133,2118],{"class":2114},[2108,6135,2122],{"class":2121},[2108,6137,2126],{"class":2125},[2108,6139,2130],{"class":2129},[2108,6141,6142,6144,6146],{"class":2110,"line":2133},[2108,6143,2137],{"class":2136},[2108,6145,2140],{"class":2129},[2108,6147,2143],{"class":2129},[2108,6149,6150,6153,6155,6157],{"class":2110,"line":2146},[2108,6151,6152],{"class":2136},"    pendingWhenIdle",[2108,6154,2140],{"class":2129},[2108,6156,2155],{"class":2154},[2108,6158,2158],{"class":2129},[2108,6160,6161],{"class":2110,"line":2161},[2108,6162,2164],{"class":2129},[2108,6164,6165,6167],{"class":2110,"line":2167},[2108,6166,2170],{"class":2129},[2108,6168,2173],{"class":2125},[2068,6170,6172],{"id":6171},"entryimportmap","entryImportMap",[2038,6174,6175],{},"By default, Nuxt improves chunk stability by using an import map to resolve the entry chunk of the bundle.",[2038,6177,6178,6179,6182],{},"This injects an import map at the top of your ",[2045,6180,6181],{},"\u003Chead>"," tag:",[2098,6184,6186],{"className":5048,"code":6185,"language":5050,"meta":2104,"style":2104},"\u003Cscript type=\"importmap\">{\"imports\":{\"#entry\":\"/_nuxt/DC5HVSK5.js\"}}\u003C/script>\n",[2045,6187,6188],{"__ignoreMap":2104},[2108,6189,6190,6192,6194,6197,6199,6201,6204,6206,6209,6212,6214,6216],{"class":2110,"line":2111},[2108,6191,2499],{"class":2129},[2108,6193,2502],{"class":2136},[2108,6195,6196],{"class":2505}," type",[2108,6198,4034],{"class":2129},[2108,6200,4700],{"class":2129},[2108,6202,6203],{"class":2539},"importmap",[2108,6205,4700],{"class":2129},[2108,6207,6208],{"class":2129},">",[2108,6210,6211],{"class":2125},"{\"imports\":{\"#entry\":\"/_nuxt/DC5HVSK5.js\"}}",[2108,6213,2589],{"class":2129},[2108,6215,2502],{"class":2136},[2108,6217,2509],{"class":2129},[2038,6219,6220,6221,6224],{},"Within the script chunks emitted by Vite, imports will be from ",[2045,6222,6223],{},"#entry",". This means that changes to the entry will not invalidate chunks which are otherwise unchanged.",[2062,6226,6227],{},[2038,6228,6229,6230,6233,6234,6237,6238,2664],{},"Nuxt smartly disables this feature if you have configured ",[2045,6231,6232],{},"vite.build.target"," to include a browser that doesn't support import maps, or if you have configured ",[2045,6235,6236],{},"vite.build.rollupOptions.output.entryFileNames"," to a value that does not include ",[2045,6239,6240],{},"[hash]",[2038,6242,6243],{},"If you need to disable this feature you can do so:",[2098,6245,6247],{"className":2100,"code":6246,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    entryImportMap: false,\n  },\n  // or, better, simply tell vite your desired target\n  // which nuxt will respect\n  vite: {\n    build: {\n      target: 'safari13',\n    },\n  },\n})\n",[2045,6248,6249,6261,6269,6280,6284,6289,6294,6303,6312,6328,6332,6336],{"__ignoreMap":2104},[2108,6250,6251,6253,6255,6257,6259],{"class":2110,"line":2111},[2108,6252,2115],{"class":2114},[2108,6254,2118],{"class":2114},[2108,6256,2122],{"class":2121},[2108,6258,2126],{"class":2125},[2108,6260,2130],{"class":2129},[2108,6262,6263,6265,6267],{"class":2110,"line":2133},[2108,6264,2137],{"class":2136},[2108,6266,2140],{"class":2129},[2108,6268,2143],{"class":2129},[2108,6270,6271,6274,6276,6278],{"class":2110,"line":2146},[2108,6272,6273],{"class":2136},"    entryImportMap",[2108,6275,2140],{"class":2129},[2108,6277,2218],{"class":2154},[2108,6279,2158],{"class":2129},[2108,6281,6282],{"class":2110,"line":2161},[2108,6283,2164],{"class":2129},[2108,6285,6286],{"class":2110,"line":2167},[2108,6287,6288],{"class":2493},"  // or, better, simply tell vite your desired target\n",[2108,6290,6291],{"class":2110,"line":2586},[2108,6292,6293],{"class":2493},"  // which nuxt will respect\n",[2108,6295,6296,6299,6301],{"class":2110,"line":3295},[2108,6297,6298],{"class":2136},"  vite",[2108,6300,2140],{"class":2129},[2108,6302,2143],{"class":2129},[2108,6304,6305,6308,6310],{"class":2110,"line":3322},[2108,6306,6307],{"class":2136},"    build",[2108,6309,2140],{"class":2129},[2108,6311,2143],{"class":2129},[2108,6313,6314,6317,6319,6321,6324,6326],{"class":2110,"line":3345},[2108,6315,6316],{"class":2136},"      target",[2108,6318,2140],{"class":2129},[2108,6320,2789],{"class":2129},[2108,6322,6323],{"class":2539},"safari13",[2108,6325,2536],{"class":2129},[2108,6327,2158],{"class":2129},[2108,6329,6330],{"class":2110,"line":3350},[2108,6331,4833],{"class":2129},[2108,6333,6334],{"class":2110,"line":5695},[2108,6335,2164],{"class":2129},[2108,6337,6338,6340],{"class":2110,"line":5700},[2108,6339,2170],{"class":2129},[2108,6341,2173],{"class":2125},[2068,6343,6345],{"id":6344},"typescriptplugin","typescriptPlugin",[2038,6347,6348,6349,6352],{},"Enable enhanced TypeScript developer experience with the ",[2045,6350,6351],{},"@dxup/nuxt"," module.",[2038,6354,6355],{},"This experimental plugin provides improved TypeScript integration and development tooling for better DX when working with TypeScript in Nuxt applications.",[2038,6357,2096],{},[2098,6359,6361],{"className":2100,"code":6360,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    typescriptPlugin: true,\n  },\n})\n",[2045,6362,6363,6375,6383,6394,6398],{"__ignoreMap":2104},[2108,6364,6365,6367,6369,6371,6373],{"class":2110,"line":2111},[2108,6366,2115],{"class":2114},[2108,6368,2118],{"class":2114},[2108,6370,2122],{"class":2121},[2108,6372,2126],{"class":2125},[2108,6374,2130],{"class":2129},[2108,6376,6377,6379,6381],{"class":2110,"line":2133},[2108,6378,2137],{"class":2136},[2108,6380,2140],{"class":2129},[2108,6382,2143],{"class":2129},[2108,6384,6385,6388,6390,6392],{"class":2110,"line":2146},[2108,6386,6387],{"class":2136},"    typescriptPlugin",[2108,6389,2140],{"class":2129},[2108,6391,2155],{"class":2154},[2108,6393,2158],{"class":2129},[2108,6395,6396],{"class":2110,"line":2161},[2108,6397,2164],{"class":2129},[2108,6399,6400,6402],{"class":2110,"line":2167},[2108,6401,2170],{"class":2129},[2108,6403,2173],{"class":2125},[2705,6405,6406,6409],{},[2038,6407,6408],{},"To use this feature, you need to:",[6044,6410,6411,6418],{},[6047,6412,6413,6414,6417],{},"Have ",[2045,6415,6416],{},"typescript"," installed as a dependency",[6047,6419,6420,6421,2661],{},"Configure VS Code to use your workspace TypeScript version (see ",[2050,6422,6425],{"href":6423,"rel":6424},"https://code.visualstudio.com/docs/typescript/typescript-compiling#_using-the-workspace-version-of-typescript",[2058],"VS Code documentation",[2289,6427,6429],{"to":6428,"icon":2292,"target":2293},"https://github.com/KazariEX/dxup",[2038,6430,6431,6432,2664],{},"Learn more about ",[2711,6433,6351],{},[2068,6435,6437],{"id":6436},"viteenvironmentapi","viteEnvironmentApi",[2038,6439,6440,6441,6446],{},"Enable Vite 6's new ",[2050,6442,6445],{"href":6443,"rel":6444},"https://vite.dev/guide/api-environment",[2058],"Environment API"," for improved build configuration and plugin architecture.",[2038,6448,6449,6450,6453,6454,6457],{},"When you set ",[2045,6451,6452],{},"future.compatibilityVersion"," to ",[2045,6455,6456],{},"5",", this feature is enabled by default. You can also enable it explicitly for testing:",[2098,6459,6461],{"className":2100,"code":6460,"filename":233,"language":2102,"meta":2103,"style":2104},"export default defineNuxtConfig({\n  experimental: {\n    viteEnvironmentApi: true,\n  },\n})\n",[2045,6462,6463,6475,6483,6494,6498],{"__ignoreMap":2104},[2108,6464,6465,6467,6469,6471,6473],{"class":2110,"line":2111},[2108,6466,2115],{"class":2114},[2108,6468,2118],{"class":2114},[2108,6470,2122],{"class":2121},[2108,6472,2126],{"class":2125},[2108,6474,2130],{"class":2129},[2108,6476,6477,6479,6481],{"class":2110,"line":2133},[2108,6478,2137],{"class":2136},[2108,6480,2140],{"class":2129},[2108,6482,2143],{"class":2129},[2108,6484,6485,6488,6490,6492],{"class":2110,"line":2146},[2108,6486,6487],{"class":2136},"    viteEnvironmentApi",[2108,6489,2140],{"class":2129},[2108,6491,2155],{"class":2154},[2108,6493,2158],{"class":2129},[2108,6495,6496],{"class":2110,"line":2161},[2108,6497,2164],{"class":2129},[2108,6499,6500,6502],{"class":2110,"line":2167},[2108,6501,2170],{"class":2129},[2108,6503,2173],{"class":2125},[2038,6505,6506],{},"The Vite Environment API provides better consistency between development and production builds, more granular control over environment-specific configuration, and improved performance.",[2705,6508,6509],{},[2038,6510,6511,6512,6516],{},"Enabling this feature changes how Vite plugins are registered and configured. See the ",[2050,6513,6515],{"href":6514},"/docs/3.x/getting-started/upgrade#migration-to-vite-environment-api","Vite Environment API migration guide"," for details on updating your plugins.",[2289,6518,6519],{"to":6443,"target":2293},[2038,6520,6521],{},"Learn more about Vite's Environment API.",[6523,6524,6525],"style",{},"html pre.shiki code .s8R28, html code.shiki .s8R28{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#39ADB5;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .s3cPz, html code.shiki .s3cPz{--shiki-light:#6182B8;--shiki-default:#6182B8;--shiki-dark:#82AAFF}html pre.shiki code .sZSNi, html code.shiki .sZSNi{--shiki-light:#90A4AE;--shiki-default:#90A4AE;--shiki-dark:#BABED8}html pre.shiki code .sDfIl, html code.shiki .sDfIl{--shiki-light:#39ADB5;--shiki-default:#39ADB5;--shiki-dark:#89DDFF}html pre.shiki code .sRlkE, html code.shiki .sRlkE{--shiki-light:#E53935;--shiki-default:#E53935;--shiki-dark:#F07178}html pre.shiki code .sbKd-, html code.shiki .sbKd-{--shiki-light:#FF5370;--shiki-default:#FF5370;--shiki-dark:#FF9CAC}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 .sWuyu, html code.shiki .sWuyu{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#90A4AE;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .smZ93, html code.shiki .smZ93{--shiki-light:#9C3EDA;--shiki-default:#9C3EDA;--shiki-dark:#C792EA}html pre.shiki code .sGFVr, html code.shiki .sGFVr{--shiki-light:#91B859;--shiki-default:#91B859;--shiki-dark:#C3E88D}html pre.shiki code .s1nJG, html code.shiki .s1nJG{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#90A4AE;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .sYRBq, html code.shiki .sYRBq{--shiki-light:#F76D47;--shiki-default:#F76D47;--shiki-dark:#F78C6C}html pre.shiki code .s52Pk, html code.shiki .s52Pk{--shiki-light:#E2931D;--shiki-default:#E2931D;--shiki-dark:#FFCB6B}",{"title":2104,"searchDepth":2133,"depth":2133,"links":6527},[6528,6529,6530,6531,6532,6533,6534,6535,6536,6537,6538,6539,6540,6541,6542,6543,6544,6545,6546,6547,6548,6549,6550,6551,6552,6553,6554,6555,6556,6557,6558,6559,6560,6561,6562,6563,6564,6565,6568,6569,6570,6571,6572,6573,6574,6575],{"id":2070,"depth":2133,"text":2071},{"id":2176,"depth":2133,"text":2177},{"id":2233,"depth":2133,"text":2234},{"id":2299,"depth":2133,"text":2300},{"id":2352,"depth":2133,"text":2353},{"id":2424,"depth":2133,"text":2425},{"id":2717,"depth":2133,"text":2718},{"id":2811,"depth":2133,"text":2812},{"id":2867,"depth":2133,"text":2868},{"id":2943,"depth":2133,"text":2944},{"id":3017,"depth":2133,"text":3018},{"id":3072,"depth":2133,"text":3073},{"id":3125,"depth":2133,"text":3126},{"id":3184,"depth":2133,"text":3185},{"id":3357,"depth":2133,"text":3358},{"id":3415,"depth":2133,"text":3416},{"id":3478,"depth":2133,"text":3479},{"id":3544,"depth":2133,"text":3545},{"id":3597,"depth":2133,"text":3598},{"id":3670,"depth":2133,"text":3671},{"id":3738,"depth":2133,"text":3739},{"id":3842,"depth":2133,"text":3842},{"id":3932,"depth":2133,"text":3933},{"id":4232,"depth":2133,"text":4233},{"id":4304,"depth":2133,"text":4305},{"id":4399,"depth":2133,"text":4400},{"id":4465,"depth":2133,"text":4466},{"id":4599,"depth":2133,"text":4600},{"id":4668,"depth":2133,"text":4669},{"id":4857,"depth":2133,"text":4858},{"id":4915,"depth":2133,"text":4916},{"id":5027,"depth":2133,"text":5028},{"id":5131,"depth":2133,"text":5132},{"id":5201,"depth":2133,"text":5202},{"id":5274,"depth":2133,"text":5275},{"id":5340,"depth":2133,"text":5341},{"id":5407,"depth":2133,"text":5408},{"id":5487,"depth":2133,"text":5487,"children":6566},[6567],{"id":5539,"depth":2146,"text":5540},{"id":5731,"depth":2133,"text":5731},{"id":5888,"depth":2133,"text":5889},{"id":5958,"depth":2133,"text":5959},{"id":6038,"depth":2133,"text":6039},{"id":6103,"depth":2133,"text":6104},{"id":6171,"depth":2133,"text":6172},{"id":6344,"depth":2133,"text":6345},{"id":6436,"depth":2133,"text":6437},"Enable Nuxt experimental features to unlock new possibilities.","md",{},{"title":391,"description":6576},"rtkdo8RWIlCbqym2YVcD_fS2flSgzuVyA74XDk4vaIo",[6582,6584],{"title":387,"path":388,"stem":389,"description":6583,"children":-1},"Nuxt provides a powerful event system powered by hookable.",{"title":395,"path":396,"stem":397,"description":6585,"children":-1},"Enable or disable optional Nuxt features to unlock new possibilities.",1772101767777]