[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f30r277ag21rfj":3,"module-authorization":3040,"versions":7178},[4,1124,1988,2834],{"title":5,"titleTemplate":6,"icon":7,"path":8,"stem":9,"children":10,"page":108},"Docs",null,"i-lucide-book-marked","\u002Fdocs\u002F3.x","docs\u002F3.x",[11,109,246,430,911,1003,1040,1082],{"title":12,"titleTemplate":13,"icon":14,"path":15,"stem":16,"children":17,"page":108},"Get Started","%s · Get Started with Nuxt","i-lucide-rocket","\u002Fdocs\u002F3.x\u002Fgetting-started","docs\u002F3.x\u002F1.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","\u002Fdocs\u002F3.x\u002Fgetting-started\u002Fintroduction","docs\u002F3.x\u002F1.getting-started\u002F01.introduction","i-lucide-info",{"title":24,"path":25,"stem":26,"titleTemplate":6,"icon":27},"Installation","\u002Fdocs\u002F3.x\u002Fgetting-started\u002Finstallation","docs\u002F3.x\u002F1.getting-started\u002F02.installation","i-lucide-play",{"title":29,"path":30,"stem":31,"titleTemplate":6,"icon":32},"Configuration","\u002Fdocs\u002F3.x\u002Fgetting-started\u002Fconfiguration","docs\u002F3.x\u002F1.getting-started\u002F03.configuration","i-lucide-cog",{"title":34,"path":35,"stem":36,"titleTemplate":6,"icon":37},"Views","\u002Fdocs\u002F3.x\u002Fgetting-started\u002Fviews","docs\u002F3.x\u002F1.getting-started\u002F04.views","i-lucide-panels-top-left",{"title":39,"path":40,"stem":41,"titleTemplate":6,"icon":42},"Assets","\u002Fdocs\u002F3.x\u002Fgetting-started\u002Fassets","docs\u002F3.x\u002F1.getting-started\u002F05.assets","i-lucide-image",{"title":44,"path":45,"stem":46,"titleTemplate":6,"icon":47},"Styling","\u002Fdocs\u002F3.x\u002Fgetting-started\u002Fstyling","docs\u002F3.x\u002F1.getting-started\u002F06.styling","i-lucide-palette",{"title":49,"path":50,"stem":51,"titleTemplate":6,"icon":52},"Routing","\u002Fdocs\u002F3.x\u002Fgetting-started\u002Frouting","docs\u002F3.x\u002F1.getting-started\u002F07.routing","i-lucide-milestone",{"title":54,"path":55,"stem":56,"titleTemplate":6,"icon":57},"SEO and Meta","\u002Fdocs\u002F3.x\u002Fgetting-started\u002Fseo-meta","docs\u002F3.x\u002F1.getting-started\u002F08.seo-meta","i-lucide-file-search",{"title":59,"path":60,"stem":61,"titleTemplate":6,"icon":62},"Transitions","\u002Fdocs\u002F3.x\u002Fgetting-started\u002Ftransitions","docs\u002F3.x\u002F1.getting-started\u002F09.transitions","i-lucide-toggle-right",{"title":64,"path":65,"stem":66,"titleTemplate":6,"icon":67},"Data Fetching","\u002Fdocs\u002F3.x\u002Fgetting-started\u002Fdata-fetching","docs\u002F3.x\u002F1.getting-started\u002F10.data-fetching","i-lucide-cable",{"title":69,"path":70,"stem":71,"titleTemplate":6,"icon":72},"State Management","\u002Fdocs\u002F3.x\u002Fgetting-started\u002Fstate-management","docs\u002F3.x\u002F1.getting-started\u002F11.state-management","i-lucide-database",{"title":74,"path":75,"stem":76,"titleTemplate":6,"icon":77},"Error Handling","\u002Fdocs\u002F3.x\u002Fgetting-started\u002Ferror-handling","docs\u002F3.x\u002F1.getting-started\u002F12.error-handling","i-lucide-bug-off",{"title":79,"path":80,"stem":81,"titleTemplate":6,"icon":82},"Server","\u002Fdocs\u002F3.x\u002Fgetting-started\u002Fserver","docs\u002F3.x\u002F1.getting-started\u002F13.server","i-lucide-pc-case",{"title":84,"path":85,"stem":86,"titleTemplate":6,"icon":87},"Layers","\u002Fdocs\u002F3.x\u002Fgetting-started\u002Flayers","docs\u002F3.x\u002F1.getting-started\u002F14.layers","i-lucide-layers",{"title":89,"path":90,"stem":91,"titleTemplate":6,"icon":92},"Prerendering","\u002Fdocs\u002F3.x\u002Fgetting-started\u002Fprerendering","docs\u002F3.x\u002F1.getting-started\u002F15.prerendering","i-lucide-file-code-2",{"title":94,"path":95,"stem":96,"titleTemplate":6,"icon":97},"Deployment","\u002Fdocs\u002F3.x\u002Fgetting-started\u002Fdeployment","docs\u002F3.x\u002F1.getting-started\u002F16.deployment","i-lucide-cloud",{"title":99,"path":100,"stem":101,"titleTemplate":6,"icon":102},"Testing","\u002Fdocs\u002F3.x\u002Fgetting-started\u002Ftesting","docs\u002F3.x\u002F1.getting-started\u002F17.testing","i-lucide-circle-check",{"title":104,"path":105,"stem":106,"titleTemplate":6,"icon":107},"Upgrade Guide","\u002Fdocs\u002F3.x\u002Fgetting-started\u002Fupgrade","docs\u002F3.x\u002F1.getting-started\u002F18.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","\u002Fdocs\u002F3.x\u002Fdirectory-structure","docs\u002F3.x\u002F2.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","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Fnuxt","docs\u002F3.x\u002F2.directory-structure\u002F0.nuxt","i-vscode-icons-folder-type-temp",{"title":122,"path":123,"stem":124,"titleTemplate":6,"icon":125},".output","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Foutput","docs\u002F3.x\u002F2.directory-structure\u002F0.output","i-vscode-icons-folder-type-package",{"title":127,"path":128,"stem":129,"titleTemplate":6,"icon":130},"assets","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Fassets","docs\u002F3.x\u002F2.directory-structure\u002F1.assets","i-vscode-icons-folder-type-asset",{"title":132,"path":133,"stem":134,"titleTemplate":6,"icon":135},"components","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Fcomponents","docs\u002F3.x\u002F2.directory-structure\u002F1.components","i-vscode-icons-folder-type-component",{"title":137,"path":138,"stem":139,"titleTemplate":6,"icon":140},"composables","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Fcomposables","docs\u002F3.x\u002F2.directory-structure\u002F1.composables","i-vscode-icons-folder-type-src",{"title":142,"path":143,"stem":144,"titleTemplate":6,"icon":145},"content","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Fcontent","docs\u002F3.x\u002F2.directory-structure\u002F1.content","i-vscode-icons-folder-type-log",{"title":147,"path":148,"stem":149,"titleTemplate":6,"icon":150},"layers","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Flayers","docs\u002F3.x\u002F2.directory-structure\u002F1.layers","i-vscode-icons-folder-type-nuxt",{"title":152,"path":153,"stem":154,"titleTemplate":6,"icon":155},"layouts","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Flayouts","docs\u002F3.x\u002F2.directory-structure\u002F1.layouts","i-vscode-icons-folder-type-view",{"title":157,"path":158,"stem":159,"titleTemplate":6,"icon":160},"middleware","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Fmiddleware","docs\u002F3.x\u002F2.directory-structure\u002F1.middleware","i-vscode-icons-folder-type-middleware",{"title":162,"path":163,"stem":164,"titleTemplate":6,"icon":150},"modules","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Fmodules","docs\u002F3.x\u002F2.directory-structure\u002F1.modules",{"title":166,"path":167,"stem":168,"titleTemplate":6,"icon":169},"node_modules","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Fnode_modules","docs\u002F3.x\u002F2.directory-structure\u002F1.node_modules","i-vscode-icons-folder-type-node",{"title":171,"path":172,"stem":173,"titleTemplate":6,"icon":155},"pages","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Fpages","docs\u002F3.x\u002F2.directory-structure\u002F1.pages",{"title":175,"path":176,"stem":177,"titleTemplate":6,"icon":178},"plugins","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Fplugins","docs\u002F3.x\u002F2.directory-structure\u002F1.plugins","i-vscode-icons-folder-type-plugin",{"title":180,"path":181,"stem":182,"titleTemplate":6,"icon":183},"public","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Fpublic","docs\u002F3.x\u002F2.directory-structure\u002F1.public","i-vscode-icons-folder-type-public",{"title":185,"path":186,"stem":187,"titleTemplate":6,"icon":188},"server","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Fserver","docs\u002F3.x\u002F2.directory-structure\u002F1.server","i-vscode-icons-folder-type-server",{"title":190,"path":191,"stem":192,"titleTemplate":6,"icon":193},"shared","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Fshared","docs\u002F3.x\u002F2.directory-structure\u002F1.shared","i-vscode-icons-folder-type-shared",{"title":195,"path":196,"stem":197,"titleTemplate":6,"icon":198},"utils","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Futils","docs\u002F3.x\u002F2.directory-structure\u002F1.utils","i-vscode-icons-folder-type-tools",{"title":200,"path":201,"stem":202,"titleTemplate":6,"icon":203},".env","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Fenv","docs\u002F3.x\u002F2.directory-structure\u002F2.env","i-vscode-icons-file-type-dotenv",{"title":205,"path":206,"stem":207,"titleTemplate":6,"icon":208},".gitignore","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Fgitignore","docs\u002F3.x\u002F2.directory-structure\u002F2.gitignore","i-vscode-icons-file-type-git",{"title":210,"path":211,"stem":212,"titleTemplate":6,"icon":213},".nuxtignore","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Fnuxtignore","docs\u002F3.x\u002F2.directory-structure\u002F2.nuxtignore","i-vscode-icons-file-type-nuxt",{"title":215,"path":216,"stem":217,"titleTemplate":6,"icon":213},".nuxtrc","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Fnuxtrc","docs\u002F3.x\u002F2.directory-structure\u002F2.nuxtrc",{"title":219,"path":220,"stem":221,"titleTemplate":6,"icon":222},"app.vue","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Fapp","docs\u002F3.x\u002F2.directory-structure\u002F3.app","i-vscode-icons-file-type-vue",{"title":224,"path":225,"stem":226,"titleTemplate":6,"icon":227},"app.config.ts","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Fapp-config","docs\u002F3.x\u002F2.directory-structure\u002F3.app-config","i-vscode-icons-file-type-light-config",{"title":229,"path":230,"stem":231,"titleTemplate":6,"icon":222},"error.vue","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Ferror","docs\u002F3.x\u002F2.directory-structure\u002F3.error",{"title":233,"path":234,"stem":235,"titleTemplate":6,"icon":213},"nuxt.config.ts","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Fnuxt-config","docs\u002F3.x\u002F2.directory-structure\u002F3.nuxt-config",{"title":237,"path":238,"stem":239,"titleTemplate":6,"icon":240},"package.json","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Fpackage","docs\u002F3.x\u002F2.directory-structure\u002F3.package","i-vscode-icons-file-type-npm",{"title":242,"path":243,"stem":244,"titleTemplate":6,"icon":245},"tsconfig.json","\u002Fdocs\u002F3.x\u002Fdirectory-structure\u002Ftsconfig","docs\u002F3.x\u002F2.directory-structure\u002F3.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","\u002Fdocs\u002F3.x\u002Fguide","docs\u002F3.x\u002F3.guide",[252,287,306,321,360,383],{"title":253,"titleTemplate":254,"icon":255,"path":256,"stem":257,"children":258,"page":108},"Key Concepts","%s · Nuxt Concepts","i-lucide-medal","\u002Fdocs\u002F3.x\u002Fguide\u002Fconcepts","docs\u002F3.x\u002F3.guide\u002F1.concepts",[259,263,267,271,275,279,283],{"title":260,"path":261,"stem":262,"titleTemplate":6},"Rendering Modes","\u002Fdocs\u002F3.x\u002Fguide\u002Fconcepts\u002Frendering","docs\u002F3.x\u002F3.guide\u002F1.concepts\u002F1.rendering",{"title":264,"path":265,"stem":266,"titleTemplate":6},"Nuxt Lifecycle","\u002Fdocs\u002F3.x\u002Fguide\u002Fconcepts\u002Fnuxt-lifecycle","docs\u002F3.x\u002F3.guide\u002F1.concepts\u002F2.nuxt-lifecycle",{"title":268,"path":269,"stem":270,"titleTemplate":6},"Auto-imports","\u002Fdocs\u002F3.x\u002Fguide\u002Fconcepts\u002Fauto-imports","docs\u002F3.x\u002F3.guide\u002F1.concepts\u002F3.auto-imports",{"title":272,"path":273,"stem":274,"titleTemplate":6},"Server Engine","\u002Fdocs\u002F3.x\u002Fguide\u002Fconcepts\u002Fserver-engine","docs\u002F3.x\u002F3.guide\u002F1.concepts\u002F4.server-engine",{"title":276,"path":277,"stem":278,"titleTemplate":6},"Modules","\u002Fdocs\u002F3.x\u002Fguide\u002Fconcepts\u002Fmodules","docs\u002F3.x\u002F3.guide\u002F1.concepts\u002F5.modules",{"title":280,"path":281,"stem":282,"titleTemplate":6},"TypeScript","\u002Fdocs\u002F3.x\u002Fguide\u002Fconcepts\u002Ftypescript","docs\u002F3.x\u002F3.guide\u002F1.concepts\u002F8.typescript",{"title":284,"path":285,"stem":286,"titleTemplate":6},"Code Style","\u002Fdocs\u002F3.x\u002Fguide\u002Fconcepts\u002Fcode-style","docs\u002F3.x\u002F3.guide\u002F1.concepts\u002F9.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","\u002Fdocs\u002F3.x\u002Fguide\u002Fbest-practices","docs\u002F3.x\u002F3.guide\u002F2.best-practices",[294,298,302],{"title":295,"path":296,"stem":297,"titleTemplate":6},"Nuxt and hydration","\u002Fdocs\u002F3.x\u002Fguide\u002Fbest-practices\u002Fhydration","docs\u002F3.x\u002F3.guide\u002F2.best-practices\u002Fhydration",{"title":299,"path":300,"stem":301,"titleTemplate":6},"Nuxt Performance","\u002Fdocs\u002F3.x\u002Fguide\u002Fbest-practices\u002Fperformance","docs\u002F3.x\u002F3.guide\u002F2.best-practices\u002Fperformance",{"title":303,"path":304,"stem":305,"titleTemplate":6},"Nuxt Plugins","\u002Fdocs\u002F3.x\u002Fguide\u002Fbest-practices\u002Fplugins","docs\u002F3.x\u002F3.guide\u002F2.best-practices\u002Fplugins",{"title":307,"titleTemplate":308,"icon":309,"path":310,"stem":311,"children":312,"page":108},"Working with AI","Working with AI: %s","i-lucide-bot","\u002Fdocs\u002F3.x\u002Fguide\u002Fai","docs\u002F3.x\u002F3.guide\u002F3.ai",[313,317],{"title":314,"path":315,"stem":316,"titleTemplate":6},"MCP Server","\u002Fdocs\u002F3.x\u002Fguide\u002Fai\u002Fmcp","docs\u002F3.x\u002F3.guide\u002F3.ai\u002F1.mcp",{"title":318,"path":319,"stem":320,"titleTemplate":6},"LLMs.txt","\u002Fdocs\u002F3.x\u002Fguide\u002Fai\u002Fllms-txt","docs\u002F3.x\u002F3.guide\u002F3.ai\u002F2.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","\u002Fdocs\u002F3.x\u002Fguide\u002Fmodules","docs\u002F3.x\u002F3.guide\u002F4.modules",[328,332,336,340,344,348,352,356],{"title":329,"path":330,"stem":331,"titleTemplate":6},"Create Your First Module","\u002Fdocs\u002F3.x\u002Fguide\u002Fmodules\u002Fgetting-started","docs\u002F3.x\u002F3.guide\u002F4.modules\u002F1.getting-started",{"title":333,"path":334,"stem":335,"titleTemplate":6},"Understand Module Structure","\u002Fdocs\u002F3.x\u002Fguide\u002Fmodules\u002Fmodule-anatomy","docs\u002F3.x\u002F3.guide\u002F4.modules\u002F2.module-anatomy",{"title":337,"path":338,"stem":339,"titleTemplate":6},"Add Plugins, Components & More","\u002Fdocs\u002F3.x\u002Fguide\u002Fmodules\u002Frecipes-basics","docs\u002F3.x\u002F3.guide\u002F4.modules\u002F3.recipes-basics",{"title":341,"path":342,"stem":343,"titleTemplate":6},"Module Dependencies","\u002Fdocs\u002F3.x\u002Fguide\u002Fmodules\u002Fmodule-dependencies","docs\u002F3.x\u002F3.guide\u002F4.modules\u002F4.module-dependencies",{"title":345,"path":346,"stem":347,"titleTemplate":6},"Use Hooks & Extend Types","\u002Fdocs\u002F3.x\u002Fguide\u002Fmodules\u002Frecipes-advanced","docs\u002F3.x\u002F3.guide\u002F4.modules\u002F5.recipes-advanced",{"title":349,"path":350,"stem":351,"titleTemplate":6},"Test Your Module","\u002Fdocs\u002F3.x\u002Fguide\u002Fmodules\u002Ftesting","docs\u002F3.x\u002F3.guide\u002F4.modules\u002F6.testing",{"title":353,"path":354,"stem":355,"titleTemplate":6},"Follow Best Practices","\u002Fdocs\u002F3.x\u002Fguide\u002Fmodules\u002Fbest-practices","docs\u002F3.x\u002F3.guide\u002F4.modules\u002F7.best-practices",{"title":357,"path":358,"stem":359,"titleTemplate":6},"Publish & Share Your Module","\u002Fdocs\u002F3.x\u002Fguide\u002Fmodules\u002Fecosystem","docs\u002F3.x\u002F3.guide\u002F4.modules\u002F8.ecosystem",{"title":361,"titleTemplate":362,"icon":363,"path":364,"stem":365,"children":366,"page":108},"Recipes","%s · Recipes","i-lucide-cooking-pot","\u002Fdocs\u002F3.x\u002Fguide\u002Frecipes","docs\u002F3.x\u002F3.guide\u002F5.recipes",[367,371,375,379],{"title":368,"path":369,"stem":370,"titleTemplate":6},"Custom Routing","\u002Fdocs\u002F3.x\u002Fguide\u002Frecipes\u002Fcustom-routing","docs\u002F3.x\u002F3.guide\u002F5.recipes\u002F1.custom-routing",{"title":372,"path":373,"stem":374,"titleTemplate":6},"Vite Plugins","\u002Fdocs\u002F3.x\u002Fguide\u002Frecipes\u002Fvite-plugin","docs\u002F3.x\u002F3.guide\u002F5.recipes\u002F2.vite-plugin",{"title":376,"path":377,"stem":378,"titleTemplate":6},"Custom useFetch","\u002Fdocs\u002F3.x\u002Fguide\u002Frecipes\u002Fcustom-usefetch","docs\u002F3.x\u002F3.guide\u002F5.recipes\u002F3.custom-usefetch",{"title":380,"path":381,"stem":382,"titleTemplate":6},"Sessions and Authentication","\u002Fdocs\u002F3.x\u002Fguide\u002Frecipes\u002Fsessions-and-authentication","docs\u002F3.x\u002F3.guide\u002F5.recipes\u002F4.sessions-and-authentication",{"title":384,"titleTemplate":385,"icon":386,"path":387,"stem":388,"children":389,"page":108},"Going Further","%s · Nuxt Advanced","i-lucide-star","\u002Fdocs\u002F3.x\u002Fguide\u002Fgoing-further","docs\u002F3.x\u002F3.guide\u002F6.going-further",[390,394,398,402,406,410,414,418,422,426],{"title":391,"path":392,"stem":393,"titleTemplate":6},"Custom Events","\u002Fdocs\u002F3.x\u002Fguide\u002Fgoing-further\u002Fevents","docs\u002F3.x\u002F3.guide\u002F6.going-further\u002F1.events",{"title":395,"path":396,"stem":397,"titleTemplate":6},"Experimental Features","\u002Fdocs\u002F3.x\u002Fguide\u002Fgoing-further\u002Fexperimental-features","docs\u002F3.x\u002F3.guide\u002F6.going-further\u002F1.experimental-features",{"title":399,"path":400,"stem":401,"titleTemplate":6},"Features","\u002Fdocs\u002F3.x\u002Fguide\u002Fgoing-further\u002Ffeatures","docs\u002F3.x\u002F3.guide\u002F6.going-further\u002F1.features",{"title":403,"path":404,"stem":405,"titleTemplate":6},"Runtime Config","\u002Fdocs\u002F3.x\u002Fguide\u002Fgoing-further\u002Fruntime-config","docs\u002F3.x\u002F3.guide\u002F6.going-further\u002F10.runtime-config",{"title":407,"path":408,"stem":409,"titleTemplate":6},"Nightly Release Channel","\u002Fdocs\u002F3.x\u002Fguide\u002Fgoing-further\u002Fnightly-release-channel","docs\u002F3.x\u002F3.guide\u002F6.going-further\u002F11.nightly-release-channel",{"title":411,"path":412,"stem":413,"titleTemplate":6},"Lifecycle Hooks","\u002Fdocs\u002F3.x\u002Fguide\u002Fgoing-further\u002Fhooks","docs\u002F3.x\u002F3.guide\u002F6.going-further\u002F2.hooks",{"title":415,"path":416,"stem":417,"titleTemplate":6},"Nuxt Kit","\u002Fdocs\u002F3.x\u002Fguide\u002Fgoing-further\u002Fkit","docs\u002F3.x\u002F3.guide\u002F6.going-further\u002F4.kit",{"title":419,"path":420,"stem":421,"titleTemplate":6},"NuxtApp","\u002Fdocs\u002F3.x\u002Fguide\u002Fgoing-further\u002Fnuxt-app","docs\u002F3.x\u002F3.guide\u002F6.going-further\u002F6.nuxt-app",{"title":423,"path":424,"stem":425,"titleTemplate":6},"Authoring Nuxt Layers","\u002Fdocs\u002F3.x\u002Fguide\u002Fgoing-further\u002Flayers","docs\u002F3.x\u002F3.guide\u002F6.going-further\u002F7.layers",{"title":427,"path":428,"stem":429,"titleTemplate":6},"Debugging","\u002Fdocs\u002F3.x\u002Fguide\u002Fgoing-further\u002Fdebugging","docs\u002F3.x\u002F3.guide\u002F6.going-further\u002F9.debugging",{"title":431,"titleTemplate":432,"icon":433,"path":434,"stem":435,"children":436,"page":108},"API","%s · Nuxt API","i-lucide-code-xml","\u002Fdocs\u002F3.x\u002Fapi","docs\u002F3.x\u002F4.api",[437,503,626,749,820,893,906],{"title":438,"titleTemplate":439,"icon":324,"path":440,"stem":441,"children":442,"page":108},"Components","%s · Nuxt Components","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomponents","docs\u002F3.x\u002F4.api\u002F1.components",[443,447,451,455,459,463,467,471,475,479,483,487,491,495,499],{"title":444,"path":445,"stem":446,"titleTemplate":6},"\u003CClientOnly>","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomponents\u002Fclient-only","docs\u002F3.x\u002F4.api\u002F1.components\u002F1.client-only",{"title":448,"path":449,"stem":450,"titleTemplate":6},"\u003CDevOnly>","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomponents\u002Fdev-only","docs\u002F3.x\u002F4.api\u002F1.components\u002F1.dev-only",{"title":452,"path":453,"stem":454,"titleTemplate":6},"\u003CNuxtClientFallback>","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomponents\u002Fnuxt-client-fallback","docs\u002F3.x\u002F4.api\u002F1.components\u002F1.nuxt-client-fallback",{"title":456,"path":457,"stem":458,"titleTemplate":6},"\u003CNuxtPicture>","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomponents\u002Fnuxt-picture","docs\u002F3.x\u002F4.api\u002F1.components\u002F10.nuxt-picture",{"title":460,"path":461,"stem":462,"titleTemplate":6},"\u003CTeleport>","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomponents\u002Fteleports","docs\u002F3.x\u002F4.api\u002F1.components\u002F11.teleports",{"title":464,"path":465,"stem":466,"titleTemplate":6},"\u003CNuxtRouteAnnouncer>","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomponents\u002Fnuxt-route-announcer","docs\u002F3.x\u002F4.api\u002F1.components\u002F12.nuxt-route-announcer",{"title":468,"path":469,"stem":470,"titleTemplate":6},"\u003CNuxtTime>","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomponents\u002Fnuxt-time","docs\u002F3.x\u002F4.api\u002F1.components\u002F13.nuxt-time",{"title":472,"path":473,"stem":474,"titleTemplate":6},"\u003CNuxtPage>","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomponents\u002Fnuxt-page","docs\u002F3.x\u002F4.api\u002F1.components\u002F2.nuxt-page",{"title":476,"path":477,"stem":478,"titleTemplate":6},"\u003CNuxtLayout>","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomponents\u002Fnuxt-layout","docs\u002F3.x\u002F4.api\u002F1.components\u002F3.nuxt-layout",{"title":480,"path":481,"stem":482,"titleTemplate":6},"\u003CNuxtLink>","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomponents\u002Fnuxt-link","docs\u002F3.x\u002F4.api\u002F1.components\u002F4.nuxt-link",{"title":484,"path":485,"stem":486,"titleTemplate":6},"\u003CNuxtLoadingIndicator>","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomponents\u002Fnuxt-loading-indicator","docs\u002F3.x\u002F4.api\u002F1.components\u002F5.nuxt-loading-indicator",{"title":488,"path":489,"stem":490,"titleTemplate":6},"\u003CNuxtErrorBoundary>","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomponents\u002Fnuxt-error-boundary","docs\u002F3.x\u002F4.api\u002F1.components\u002F6.nuxt-error-boundary",{"title":492,"path":493,"stem":494,"titleTemplate":6},"\u003CNuxtWelcome>","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomponents\u002Fnuxt-welcome","docs\u002F3.x\u002F4.api\u002F1.components\u002F7.nuxt-welcome",{"title":496,"path":497,"stem":498,"titleTemplate":6},"\u003CNuxtIsland>","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomponents\u002Fnuxt-island","docs\u002F3.x\u002F4.api\u002F1.components\u002F8.nuxt-island",{"title":500,"path":501,"stem":502,"titleTemplate":6},"\u003CNuxtImg>","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomponents\u002Fnuxt-img","docs\u002F3.x\u002F4.api\u002F1.components\u002F9.nuxt-img",{"title":504,"titleTemplate":505,"icon":506,"path":507,"stem":508,"children":509,"page":108},"Composables","%s · Nuxt Composables","i-lucide-arrow-left-right","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables","docs\u002F3.x\u002F4.api\u002F2.composables",[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,622],{"title":511,"path":512,"stem":513,"titleTemplate":6},"onPrehydrate","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fon-prehydrate","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fon-prehydrate",{"title":515,"path":516,"stem":517,"titleTemplate":6},"useAppConfig","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-app-config","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-app-config",{"title":519,"path":520,"stem":521,"titleTemplate":6},"useAsyncData","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-async-data","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-async-data",{"title":523,"path":524,"stem":525,"titleTemplate":6},"useCookie","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-cookie","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-cookie",{"title":527,"path":528,"stem":529,"titleTemplate":6},"useError","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-error","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-error",{"title":531,"path":532,"stem":533,"titleTemplate":6},"useFetch","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-fetch","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-fetch",{"title":535,"path":536,"stem":537,"titleTemplate":6},"useHead","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-head","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-head",{"title":539,"path":540,"stem":541,"titleTemplate":6},"useHeadSafe","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-head-safe","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-head-safe",{"title":543,"path":544,"stem":545,"titleTemplate":6},"useHydration","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-hydration","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-hydration",{"title":547,"path":548,"stem":549,"titleTemplate":6},"useLazyAsyncData","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-lazy-async-data","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-lazy-async-data",{"title":551,"path":552,"stem":553,"titleTemplate":6},"useLazyFetch","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-lazy-fetch","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-lazy-fetch",{"title":555,"path":556,"stem":557,"titleTemplate":6},"useLoadingIndicator","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-loading-indicator","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-loading-indicator",{"title":559,"path":560,"stem":561,"titleTemplate":6},"useNuxtApp","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-nuxt-app","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-nuxt-app",{"title":563,"path":564,"stem":565,"titleTemplate":6},"useNuxtData","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-nuxt-data","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-nuxt-data",{"title":567,"path":568,"stem":569,"titleTemplate":6},"usePreviewMode","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-preview-mode","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-preview-mode",{"title":571,"path":572,"stem":573,"titleTemplate":6},"useRequestEvent","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-request-event","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-request-event",{"title":575,"path":576,"stem":577,"titleTemplate":6},"useRequestFetch","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-request-fetch","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-request-fetch",{"title":579,"path":580,"stem":581,"titleTemplate":6},"useRequestHeader","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-request-header","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-request-header",{"title":583,"path":584,"stem":585,"titleTemplate":6},"useRequestHeaders","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-request-headers","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-request-headers",{"title":587,"path":588,"stem":589,"titleTemplate":6},"useRequestURL","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-request-url","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-request-url",{"title":591,"path":592,"stem":593,"titleTemplate":6},"useResponseHeader","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-response-header","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-response-header",{"title":595,"path":596,"stem":597,"titleTemplate":6},"useRoute","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-route","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-route",{"title":599,"path":600,"stem":601,"titleTemplate":6},"useRouteAnnouncer","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-route-announcer","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-route-announcer",{"title":603,"path":604,"stem":605,"titleTemplate":6},"useRouter","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-router","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-router",{"title":607,"path":608,"stem":609,"titleTemplate":6},"useRuntimeConfig","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-runtime-config","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-runtime-config",{"title":611,"path":612,"stem":613,"titleTemplate":6},"useRuntimeHook","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-runtime-hook","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-runtime-hook",{"title":615,"path":616,"stem":617,"titleTemplate":6},"useSeoMeta","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-seo-meta","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-seo-meta",{"title":619,"path":620,"stem":621,"titleTemplate":6},"useServerSeoMeta","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-server-seo-meta","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-server-seo-meta",{"title":623,"path":624,"stem":625,"titleTemplate":6},"useState","\u002Fdocs\u002F3.x\u002Fapi\u002Fcomposables\u002Fuse-state","docs\u002F3.x\u002F4.api\u002F2.composables\u002Fuse-state",{"title":627,"titleTemplate":628,"icon":629,"path":630,"stem":631,"children":632,"page":108},"Utils","%s · Nuxt Utils","i-lucide-square-function","\u002Fdocs\u002F3.x\u002Fapi\u002Futils","docs\u002F3.x\u002F4.api\u002F3.utils",[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,745],{"title":634,"path":635,"stem":636,"titleTemplate":6},"$fetch","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fdollarfetch","docs\u002F3.x\u002F4.api\u002F3.utils\u002F$fetch",{"title":638,"path":639,"stem":640,"titleTemplate":6},"abortNavigation","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fabort-navigation","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fabort-navigation",{"title":642,"path":643,"stem":644,"titleTemplate":6},"addRouteMiddleware","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fadd-route-middleware","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fadd-route-middleware",{"title":646,"path":647,"stem":648,"titleTemplate":6},"callOnce","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fcall-once","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fcall-once",{"title":650,"path":651,"stem":652,"titleTemplate":6},"clearError","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fclear-error","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fclear-error",{"title":654,"path":655,"stem":656,"titleTemplate":6},"clearNuxtData","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fclear-nuxt-data","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fclear-nuxt-data",{"title":658,"path":659,"stem":660,"titleTemplate":6},"clearNuxtState","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fclear-nuxt-state","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fclear-nuxt-state",{"title":662,"path":663,"stem":664,"titleTemplate":6},"createError","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fcreate-error","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fcreate-error",{"title":666,"path":667,"stem":668,"titleTemplate":6},"defineLazyHydrationComponent","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fdefine-lazy-hydration-component","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fdefine-lazy-hydration-component",{"title":670,"path":671,"stem":672,"titleTemplate":6},"defineNuxtComponent","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fdefine-nuxt-component","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fdefine-nuxt-component",{"title":674,"path":675,"stem":676,"titleTemplate":6},"defineNuxtPlugin","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fdefine-nuxt-plugin","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fdefine-nuxt-plugin",{"title":678,"path":679,"stem":680,"titleTemplate":6},"defineNuxtRouteMiddleware","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fdefine-nuxt-route-middleware","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fdefine-nuxt-route-middleware",{"title":682,"path":683,"stem":684,"titleTemplate":6},"definePageMeta","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fdefine-page-meta","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fdefine-page-meta",{"title":686,"path":687,"stem":688,"titleTemplate":6},"defineRouteRules","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fdefine-route-rules","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fdefine-route-rules",{"title":690,"path":691,"stem":692,"titleTemplate":6},"navigateTo","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fnavigate-to","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fnavigate-to",{"title":694,"path":695,"stem":696,"titleTemplate":6},"onBeforeRouteLeave","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fon-before-route-leave","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fon-before-route-leave",{"title":698,"path":699,"stem":700,"titleTemplate":6},"onBeforeRouteUpdate","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fon-before-route-update","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fon-before-route-update",{"title":702,"path":703,"stem":704,"titleTemplate":6},"onNuxtReady","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fon-nuxt-ready","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fon-nuxt-ready",{"title":706,"path":707,"stem":708,"titleTemplate":6},"prefetchComponents","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fprefetch-components","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fprefetch-components",{"title":710,"path":711,"stem":712,"titleTemplate":6},"preloadComponents","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fpreload-components","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fpreload-components",{"title":714,"path":715,"stem":716,"titleTemplate":6},"preloadRouteComponents","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fpreload-route-components","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fpreload-route-components",{"title":718,"path":719,"stem":720,"titleTemplate":6},"prerenderRoutes","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fprerender-routes","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fprerender-routes",{"title":722,"path":723,"stem":724,"titleTemplate":6},"refreshCookie","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Frefresh-cookie","docs\u002F3.x\u002F4.api\u002F3.utils\u002Frefresh-cookie",{"title":726,"path":727,"stem":728,"titleTemplate":6},"refreshNuxtData","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Frefresh-nuxt-data","docs\u002F3.x\u002F4.api\u002F3.utils\u002Frefresh-nuxt-data",{"title":730,"path":731,"stem":732,"titleTemplate":6},"reloadNuxtApp","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Freload-nuxt-app","docs\u002F3.x\u002F4.api\u002F3.utils\u002Freload-nuxt-app",{"title":734,"path":735,"stem":736,"titleTemplate":6},"setPageLayout","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fset-page-layout","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fset-page-layout",{"title":738,"path":739,"stem":740,"titleTemplate":6},"setResponseStatus","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fset-response-status","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fset-response-status",{"title":742,"path":743,"stem":744,"titleTemplate":6},"showError","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fshow-error","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fshow-error",{"title":746,"path":747,"stem":748,"titleTemplate":6},"updateAppConfig","\u002Fdocs\u002F3.x\u002Fapi\u002Futils\u002Fupdate-app-config","docs\u002F3.x\u002F4.api\u002F3.utils\u002Fupdate-app-config",{"title":750,"titleTemplate":751,"icon":752,"path":753,"stem":754,"children":755,"page":108},"Commands","%s · Nuxt Commands","i-lucide-square-terminal","\u002Fdocs\u002F3.x\u002Fapi\u002Fcommands","docs\u002F3.x\u002F4.api\u002F4.commands",[756,760,764,768,772,776,780,784,788,792,796,800,804,808,812,816],{"title":757,"path":758,"stem":759,"titleTemplate":6},"nuxt add","\u002Fdocs\u002F3.x\u002Fapi\u002Fcommands\u002Fadd","docs\u002F3.x\u002F4.api\u002F4.commands\u002Fadd",{"title":761,"path":762,"stem":763,"titleTemplate":6},"nuxt analyze","\u002Fdocs\u002F3.x\u002Fapi\u002Fcommands\u002Fanalyze","docs\u002F3.x\u002F4.api\u002F4.commands\u002Fanalyze",{"title":765,"path":766,"stem":767,"titleTemplate":6},"nuxt build","\u002Fdocs\u002F3.x\u002Fapi\u002Fcommands\u002Fbuild","docs\u002F3.x\u002F4.api\u002F4.commands\u002Fbuild",{"title":769,"path":770,"stem":771,"titleTemplate":6},"nuxt build-module","\u002Fdocs\u002F3.x\u002Fapi\u002Fcommands\u002Fbuild-module","docs\u002F3.x\u002F4.api\u002F4.commands\u002Fbuild-module",{"title":773,"path":774,"stem":775,"titleTemplate":6},"nuxt cleanup","\u002Fdocs\u002F3.x\u002Fapi\u002Fcommands\u002Fcleanup","docs\u002F3.x\u002F4.api\u002F4.commands\u002Fcleanup",{"title":777,"path":778,"stem":779,"titleTemplate":6},"nuxt dev","\u002Fdocs\u002F3.x\u002Fapi\u002Fcommands\u002Fdev","docs\u002F3.x\u002F4.api\u002F4.commands\u002Fdev",{"title":781,"path":782,"stem":783,"titleTemplate":6},"nuxt devtools","\u002Fdocs\u002F3.x\u002Fapi\u002Fcommands\u002Fdevtools","docs\u002F3.x\u002F4.api\u002F4.commands\u002Fdevtools",{"title":785,"path":786,"stem":787,"titleTemplate":6},"nuxt generate","\u002Fdocs\u002F3.x\u002Fapi\u002Fcommands\u002Fgenerate","docs\u002F3.x\u002F4.api\u002F4.commands\u002Fgenerate",{"title":789,"path":790,"stem":791,"titleTemplate":6},"nuxt info","\u002Fdocs\u002F3.x\u002Fapi\u002Fcommands\u002Finfo","docs\u002F3.x\u002F4.api\u002F4.commands\u002Finfo",{"title":793,"path":794,"stem":795,"titleTemplate":6},"create nuxt","\u002Fdocs\u002F3.x\u002Fapi\u002Fcommands\u002Finit","docs\u002F3.x\u002F4.api\u002F4.commands\u002Finit",{"title":797,"path":798,"stem":799,"titleTemplate":6},"nuxt module","\u002Fdocs\u002F3.x\u002Fapi\u002Fcommands\u002Fmodule","docs\u002F3.x\u002F4.api\u002F4.commands\u002Fmodule",{"title":801,"path":802,"stem":803,"titleTemplate":6},"nuxt prepare","\u002Fdocs\u002F3.x\u002Fapi\u002Fcommands\u002Fprepare","docs\u002F3.x\u002F4.api\u002F4.commands\u002Fprepare",{"title":805,"path":806,"stem":807,"titleTemplate":6},"nuxt preview","\u002Fdocs\u002F3.x\u002Fapi\u002Fcommands\u002Fpreview","docs\u002F3.x\u002F4.api\u002F4.commands\u002Fpreview",{"title":809,"path":810,"stem":811,"titleTemplate":6},"nuxt test","\u002Fdocs\u002F3.x\u002Fapi\u002Fcommands\u002Ftest","docs\u002F3.x\u002F4.api\u002F4.commands\u002Ftest",{"title":813,"path":814,"stem":815,"titleTemplate":6},"nuxt typecheck","\u002Fdocs\u002F3.x\u002Fapi\u002Fcommands\u002Ftypecheck","docs\u002F3.x\u002F4.api\u002F4.commands\u002Ftypecheck",{"title":817,"path":818,"stem":819,"titleTemplate":6},"nuxt upgrade","\u002Fdocs\u002F3.x\u002Fapi\u002Fcommands\u002Fupgrade","docs\u002F3.x\u002F4.api\u002F4.commands\u002Fupgrade",{"title":415,"titleTemplate":821,"icon":822,"path":823,"stem":824,"children":825,"page":108},"%s · Nuxt Kit","i-lucide-package","\u002Fdocs\u002F3.x\u002Fapi\u002Fkit","docs\u002F3.x\u002F4.api\u002F5.kit",[826,829,832,836,840,844,848,852,856,859,863,867,870,873,877,881,885,889],{"title":276,"path":827,"stem":828,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fapi\u002Fkit\u002Fmodules","docs\u002F3.x\u002F4.api\u002F5.kit\u002F1.modules",{"title":403,"path":830,"stem":831,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fapi\u002Fkit\u002Fruntime-config","docs\u002F3.x\u002F4.api\u002F5.kit\u002F10.runtime-config",{"title":833,"path":834,"stem":835,"titleTemplate":6},"Templates","\u002Fdocs\u002F3.x\u002Fapi\u002Fkit\u002Ftemplates","docs\u002F3.x\u002F4.api\u002F5.kit\u002F10.templates",{"title":837,"path":838,"stem":839,"titleTemplate":6},"Nitro","\u002Fdocs\u002F3.x\u002Fapi\u002Fkit\u002Fnitro","docs\u002F3.x\u002F4.api\u002F5.kit\u002F11.nitro",{"title":841,"path":842,"stem":843,"titleTemplate":6},"Resolving","\u002Fdocs\u002F3.x\u002Fapi\u002Fkit\u002Fresolving","docs\u002F3.x\u002F4.api\u002F5.kit\u002F12.resolving",{"title":845,"path":846,"stem":847,"titleTemplate":6},"Logging","\u002Fdocs\u002F3.x\u002Fapi\u002Fkit\u002Flogging","docs\u002F3.x\u002F4.api\u002F5.kit\u002F13.logging",{"title":849,"path":850,"stem":851,"titleTemplate":6},"Builder","\u002Fdocs\u002F3.x\u002Fapi\u002Fkit\u002Fbuilder","docs\u002F3.x\u002F4.api\u002F5.kit\u002F14.builder",{"title":853,"path":854,"stem":855,"titleTemplate":6},"Examples","\u002Fdocs\u002F3.x\u002Fapi\u002Fkit\u002Fexamples","docs\u002F3.x\u002F4.api\u002F5.kit\u002F15.examples",{"title":84,"path":857,"stem":858,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fapi\u002Fkit\u002Flayers","docs\u002F3.x\u002F4.api\u002F5.kit\u002F16.layers",{"title":860,"path":861,"stem":862,"titleTemplate":6},"Programmatic Usage","\u002Fdocs\u002F3.x\u002Fapi\u002Fkit\u002Fprogrammatic","docs\u002F3.x\u002F4.api\u002F5.kit\u002F2.programmatic",{"title":864,"path":865,"stem":866,"titleTemplate":6},"Compatibility","\u002Fdocs\u002F3.x\u002Fapi\u002Fkit\u002Fcompatibility","docs\u002F3.x\u002F4.api\u002F5.kit\u002F3.compatibility",{"title":268,"path":868,"stem":869,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fapi\u002Fkit\u002Fautoimports","docs\u002F3.x\u002F4.api\u002F5.kit\u002F4.autoimports",{"title":438,"path":871,"stem":872,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fapi\u002Fkit\u002Fcomponents","docs\u002F3.x\u002F4.api\u002F5.kit\u002F5.components",{"title":874,"path":875,"stem":876,"titleTemplate":6},"Context","\u002Fdocs\u002F3.x\u002Fapi\u002Fkit\u002Fcontext","docs\u002F3.x\u002F4.api\u002F5.kit\u002F6.context",{"title":878,"path":879,"stem":880,"titleTemplate":6},"Pages","\u002Fdocs\u002F3.x\u002Fapi\u002Fkit\u002Fpages","docs\u002F3.x\u002F4.api\u002F5.kit\u002F7.pages",{"title":882,"path":883,"stem":884,"titleTemplate":6},"Layout","\u002Fdocs\u002F3.x\u002Fapi\u002Fkit\u002Flayout","docs\u002F3.x\u002F4.api\u002F5.kit\u002F8.layout",{"title":886,"path":887,"stem":888,"titleTemplate":6},"Head","\u002Fdocs\u002F3.x\u002Fapi\u002Fkit\u002Fhead","docs\u002F3.x\u002F4.api\u002F5.kit\u002F9.head",{"title":890,"path":891,"stem":892,"titleTemplate":6},"Plugins","\u002Fdocs\u002F3.x\u002Fapi\u002Fkit\u002Fplugins","docs\u002F3.x\u002F4.api\u002F5.kit\u002F9.plugins",{"title":894,"titleTemplate":6,"icon":895,"path":896,"stem":897,"children":898,"page":108},"Advanced","i-lucide-brain","\u002Fdocs\u002F3.x\u002Fapi\u002Fadvanced","docs\u002F3.x\u002F4.api\u002F6.advanced",[899,902],{"title":411,"path":900,"stem":901,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fapi\u002Fadvanced\u002Fhooks","docs\u002F3.x\u002F4.api\u002F6.advanced\u002F1.hooks",{"title":903,"path":904,"stem":905,"titleTemplate":6},"Import meta","\u002Fdocs\u002F3.x\u002Fapi\u002Fadvanced\u002Fimport-meta","docs\u002F3.x\u002F4.api\u002F6.advanced\u002F2.import-meta",{"title":907,"path":908,"stem":909,"titleTemplate":910,"icon":32},"Nuxt Configuration","\u002Fdocs\u002F3.x\u002Fapi\u002Fnuxt-config","docs\u002F3.x\u002F4.api\u002F6.nuxt-config","%s",{"title":853,"titleTemplate":912,"icon":913,"path":914,"stem":915,"children":916,"page":108},"%s · Nuxt Examples","i-lucide-app-window-mac","\u002Fdocs\u002F3.x\u002Fexamples","docs\u002F3.x\u002F4.examples",[917,921,943,958,994],{"title":918,"path":919,"stem":920,"titleTemplate":6},"Hello World","\u002Fdocs\u002F3.x\u002Fexamples\u002Fhello-world","docs\u002F3.x\u002F4.examples\u002F0.hello-world",{"title":399,"path":922,"stem":923,"children":924,"page":108},"\u002Fdocs\u002F3.x\u002Fexamples\u002Ffeatures","docs\u002F3.x\u002F4.examples\u002F1.features",[925,929,932,935,939],{"title":926,"path":927,"stem":928,"titleTemplate":6},"Auto Imports","\u002Fdocs\u002F3.x\u002Fexamples\u002Ffeatures\u002Fauto-imports","docs\u002F3.x\u002F4.examples\u002F1.features\u002F1.auto-imports",{"title":64,"path":930,"stem":931,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fexamples\u002Ffeatures\u002Fdata-fetching","docs\u002F3.x\u002F4.examples\u002F1.features\u002F2.data-fetching",{"title":69,"path":933,"stem":934,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fexamples\u002Ffeatures\u002Fstate-management","docs\u002F3.x\u002F4.examples\u002F1.features\u002F3.state-management",{"title":936,"path":937,"stem":938,"titleTemplate":6},"Meta Tags","\u002Fdocs\u002F3.x\u002Fexamples\u002Ffeatures\u002Fmeta-tags","docs\u002F3.x\u002F4.examples\u002F1.features\u002F4.meta-tags",{"title":940,"path":941,"stem":942,"titleTemplate":6},"Layouts","\u002Fdocs\u002F3.x\u002Fexamples\u002Ffeatures\u002Flayouts","docs\u002F3.x\u002F4.examples\u002F1.features\u002F5.layouts",{"title":49,"path":944,"stem":945,"children":946,"page":108},"\u002Fdocs\u002F3.x\u002Fexamples\u002Frouting","docs\u002F3.x\u002F4.examples\u002F2.routing",[947,951,954],{"title":948,"path":949,"stem":950,"titleTemplate":6},"Middleware","\u002Fdocs\u002F3.x\u002Fexamples\u002Frouting\u002Fmiddleware","docs\u002F3.x\u002F4.examples\u002F2.routing\u002Fmiddleware",{"title":878,"path":952,"stem":953,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fexamples\u002Frouting\u002Fpages","docs\u002F3.x\u002F4.examples\u002F2.routing\u002Fpages",{"title":955,"path":956,"stem":957,"titleTemplate":6},"Universal Router","\u002Fdocs\u002F3.x\u002Fexamples\u002Frouting\u002Funiversal-router","docs\u002F3.x\u002F4.examples\u002F2.routing\u002Funiversal-router",{"title":894,"path":959,"stem":960,"children":961,"page":108},"\u002Fdocs\u002F3.x\u002Fexamples\u002Fadvanced","docs\u002F3.x\u002F4.examples\u002F4.advanced",[962,965,968,972,976,980,984,987,990],{"title":84,"path":963,"stem":964,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fexamples\u002Fadvanced\u002Fconfig-extends","docs\u002F3.x\u002F4.examples\u002F4.advanced\u002Fconfig-extends",{"title":74,"path":966,"stem":967,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fexamples\u002Fadvanced\u002Ferror-handling","docs\u002F3.x\u002F4.examples\u002F4.advanced\u002Ferror-handling",{"title":969,"path":970,"stem":971,"titleTemplate":6},"JSX \u002F TSX","\u002Fdocs\u002F3.x\u002Fexamples\u002Fadvanced\u002Fjsx","docs\u002F3.x\u002F4.examples\u002F4.advanced\u002Fjsx",{"title":973,"path":974,"stem":975,"titleTemplate":6},"Locale","\u002Fdocs\u002F3.x\u002Fexamples\u002Fadvanced\u002Flocale","docs\u002F3.x\u002F4.examples\u002F4.advanced\u002Flocale",{"title":977,"path":978,"stem":979,"titleTemplate":6},"Module Extend Pages","\u002Fdocs\u002F3.x\u002Fexamples\u002Fadvanced\u002Fmodule-extend-pages","docs\u002F3.x\u002F4.examples\u002F4.advanced\u002Fmodule-extend-pages",{"title":981,"path":982,"stem":983,"titleTemplate":6},"Teleport","\u002Fdocs\u002F3.x\u002Fexamples\u002Fadvanced\u002Fteleport","docs\u002F3.x\u002F4.examples\u002F4.advanced\u002Fteleport",{"title":99,"path":985,"stem":986,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fexamples\u002Fadvanced\u002Ftesting","docs\u002F3.x\u002F4.examples\u002F4.advanced\u002Ftesting",{"title":523,"path":988,"stem":989,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fexamples\u002Fadvanced\u002Fuse-cookie","docs\u002F3.x\u002F4.examples\u002F4.advanced\u002Fuse-cookie",{"title":991,"path":992,"stem":993,"titleTemplate":6},"Use Custom Fetch Composable","\u002Fdocs\u002F3.x\u002Fexamples\u002Fadvanced\u002Fuse-custom-fetch-composable","docs\u002F3.x\u002F4.examples\u002F4.advanced\u002Fuse-custom-fetch-composable",{"title":995,"path":996,"stem":997,"children":998,"page":108},"Experimental","\u002Fdocs\u002F3.x\u002Fexamples\u002Fexperimental","docs\u002F3.x\u002F4.examples\u002F7.experimental",[999],{"title":1000,"path":1001,"stem":1002,"titleTemplate":6},"WASM","\u002Fdocs\u002F3.x\u002Fexamples\u002Fexperimental\u002Fwasm","docs\u002F3.x\u002F4.examples\u002F7.experimental\u002Fwasm",{"title":1004,"titleTemplate":1005,"icon":1006,"path":1007,"stem":1008,"children":1009,"page":108},"Community","%s · Nuxt Community","i-lucide-messages-square","\u002Fdocs\u002F3.x\u002Fcommunity","docs\u002F3.x\u002F5.community",[1010,1015,1020,1025,1030,1035],{"title":1011,"path":1012,"stem":1013,"titleTemplate":6,"icon":1014},"Getting Help","\u002Fdocs\u002F3.x\u002Fcommunity\u002Fgetting-help","docs\u002F3.x\u002F5.community\u002F2.getting-help","i-lucide-life-buoy",{"title":1016,"path":1017,"stem":1018,"titleTemplate":6,"icon":1019},"Reporting Bugs","\u002Fdocs\u002F3.x\u002Fcommunity\u002Freporting-bugs","docs\u002F3.x\u002F5.community\u002F3.reporting-bugs","i-lucide-bug",{"title":1021,"path":1022,"stem":1023,"titleTemplate":6,"icon":1024},"Contribution","\u002Fdocs\u002F3.x\u002Fcommunity\u002Fcontribution","docs\u002F3.x\u002F5.community\u002F4.contribution","i-lucide-git-pull-request",{"title":1026,"path":1027,"stem":1028,"titleTemplate":6,"icon":1029},"Framework","\u002Fdocs\u002F3.x\u002Fcommunity\u002Fframework-contribution","docs\u002F3.x\u002F5.community\u002F5.framework-contribution","i-lucide-github",{"title":1031,"path":1032,"stem":1033,"titleTemplate":6,"icon":1034},"Roadmap","\u002Fdocs\u002F3.x\u002Fcommunity\u002Froadmap","docs\u002F3.x\u002F5.community\u002F6.roadmap","i-lucide-map",{"title":1036,"path":1037,"stem":1038,"titleTemplate":6,"icon":1039},"Releases","\u002Fdocs\u002F3.x\u002Fcommunity\u002Fchangelog","docs\u002F3.x\u002F5.community\u002F7.changelog","i-lucide-bell-dot",{"title":1041,"titleTemplate":1042,"icon":1043,"path":1044,"stem":1045,"children":1046,"page":108},"Migrate to Nuxt Bridge","Migrate to Nuxt Bridge: %s","i-lucide-ship","\u002Fdocs\u002F3.x\u002Fbridge","docs\u002F3.x\u002F6.bridge",[1047,1051,1054,1057,1061,1065,1069,1072,1075,1078],{"title":1048,"path":1049,"stem":1050,"titleTemplate":6},"Overview","\u002Fdocs\u002F3.x\u002Fbridge\u002Foverview","docs\u002F3.x\u002F6.bridge\u002F1.overview",{"title":29,"path":1052,"stem":1053,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fbridge\u002Fconfiguration","docs\u002F3.x\u002F6.bridge\u002F10.configuration",{"title":280,"path":1055,"stem":1056,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fbridge\u002Ftypescript","docs\u002F3.x\u002F6.bridge\u002F2.typescript",{"title":1058,"path":1059,"stem":1060,"titleTemplate":6},"Legacy Composition API","\u002Fdocs\u002F3.x\u002Fbridge\u002Fbridge-composition-api","docs\u002F3.x\u002F6.bridge\u002F3.bridge-composition-api",{"title":1062,"path":1063,"stem":1064,"titleTemplate":6},"Plugins and Middleware","\u002Fdocs\u002F3.x\u002Fbridge\u002Fplugins-and-middleware","docs\u002F3.x\u002F6.bridge\u002F4.plugins-and-middleware",{"title":1066,"path":1067,"stem":1068,"titleTemplate":6},"New Composition API","\u002Fdocs\u002F3.x\u002Fbridge\u002Fnuxt3-compatible-api","docs\u002F3.x\u002F6.bridge\u002F5.nuxt3-compatible-api",{"title":936,"path":1070,"stem":1071,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fbridge\u002Fmeta","docs\u002F3.x\u002F6.bridge\u002F6.meta",{"title":403,"path":1073,"stem":1074,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fbridge\u002Fruntime-config","docs\u002F3.x\u002F6.bridge\u002F7.runtime-config",{"title":837,"path":1076,"stem":1077,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fbridge\u002Fnitro","docs\u002F3.x\u002F6.bridge\u002F8.nitro",{"title":1079,"path":1080,"stem":1081,"titleTemplate":6},"Vite","\u002Fdocs\u002F3.x\u002Fbridge\u002Fvite","docs\u002F3.x\u002F6.bridge\u002F9.vite",{"title":1083,"titleTemplate":1084,"icon":107,"path":1085,"stem":1086,"children":1087,"page":108},"Migrate to Nuxt 3","Migrate to Nuxt 3: %s","\u002Fdocs\u002F3.x\u002Fmigration","docs\u002F3.x\u002F7.migration",[1088,1091,1095,1098,1101,1104,1107,1110,1113,1117,1121],{"title":1048,"path":1089,"stem":1090,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fmigration\u002Foverview","docs\u002F3.x\u002F7.migration\u002F1.overview",{"title":1092,"path":1093,"stem":1094,"titleTemplate":6},"Build Tooling","\u002Fdocs\u002F3.x\u002Fmigration\u002Fbundling","docs\u002F3.x\u002F7.migration\u002F10.bundling",{"title":79,"path":1096,"stem":1097,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fmigration\u002Fserver","docs\u002F3.x\u002F7.migration\u002F11.server",{"title":29,"path":1099,"stem":1100,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fmigration\u002Fconfiguration","docs\u002F3.x\u002F7.migration\u002F2.configuration",{"title":276,"path":1102,"stem":1103,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fmigration\u002Fmodule-authors","docs\u002F3.x\u002F7.migration\u002F20.module-authors",{"title":926,"path":1105,"stem":1106,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fmigration\u002Fauto-imports","docs\u002F3.x\u002F7.migration\u002F3.auto-imports",{"title":936,"path":1108,"stem":1109,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fmigration\u002Fmeta","docs\u002F3.x\u002F7.migration\u002F4.meta",{"title":1062,"path":1111,"stem":1112,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fmigration\u002Fplugins-and-middleware","docs\u002F3.x\u002F7.migration\u002F5.plugins-and-middleware",{"title":1114,"path":1115,"stem":1116,"titleTemplate":6},"Pages and Layouts","\u002Fdocs\u002F3.x\u002Fmigration\u002Fpages-and-layouts","docs\u002F3.x\u002F7.migration\u002F6.pages-and-layouts",{"title":1118,"path":1119,"stem":1120,"titleTemplate":6},"Component Options","\u002Fdocs\u002F3.x\u002Fmigration\u002Fcomponent-options","docs\u002F3.x\u002F7.migration\u002F7.component-options",{"title":403,"path":1122,"stem":1123,"titleTemplate":6},"\u002Fdocs\u002F3.x\u002Fmigration\u002Fruntime-config","docs\u002F3.x\u002F7.migration\u002F8.runtime-config",{"title":5,"titleTemplate":6,"icon":7,"path":1125,"stem":1126,"children":1127,"page":108},"\u002Fdocs\u002F4.x","docs\u002F4.x",[1128,1186,1285,1436,1818,1895,1917,1951],{"title":12,"titleTemplate":13,"icon":14,"path":1129,"stem":1130,"children":1131,"page":108},"\u002Fdocs\u002F4.x\u002Fgetting-started","docs\u002F4.x\u002F1.getting-started",[1132,1135,1138,1141,1144,1147,1150,1153,1156,1159,1162,1165,1168,1171,1174,1177,1180,1183],{"title":19,"path":1133,"stem":1134,"titleTemplate":6,"icon":22},"\u002Fdocs\u002F4.x\u002Fgetting-started\u002Fintroduction","docs\u002F4.x\u002F1.getting-started\u002F01.introduction",{"title":24,"path":1136,"stem":1137,"titleTemplate":6,"icon":27},"\u002Fdocs\u002F4.x\u002Fgetting-started\u002Finstallation","docs\u002F4.x\u002F1.getting-started\u002F02.installation",{"title":29,"path":1139,"stem":1140,"titleTemplate":6,"icon":32},"\u002Fdocs\u002F4.x\u002Fgetting-started\u002Fconfiguration","docs\u002F4.x\u002F1.getting-started\u002F03.configuration",{"title":34,"path":1142,"stem":1143,"titleTemplate":6,"icon":37},"\u002Fdocs\u002F4.x\u002Fgetting-started\u002Fviews","docs\u002F4.x\u002F1.getting-started\u002F04.views",{"title":39,"path":1145,"stem":1146,"titleTemplate":6,"icon":42},"\u002Fdocs\u002F4.x\u002Fgetting-started\u002Fassets","docs\u002F4.x\u002F1.getting-started\u002F05.assets",{"title":44,"path":1148,"stem":1149,"titleTemplate":6,"icon":47},"\u002Fdocs\u002F4.x\u002Fgetting-started\u002Fstyling","docs\u002F4.x\u002F1.getting-started\u002F06.styling",{"title":49,"path":1151,"stem":1152,"titleTemplate":6,"icon":52},"\u002Fdocs\u002F4.x\u002Fgetting-started\u002Frouting","docs\u002F4.x\u002F1.getting-started\u002F07.routing",{"title":54,"path":1154,"stem":1155,"titleTemplate":6,"icon":57},"\u002Fdocs\u002F4.x\u002Fgetting-started\u002Fseo-meta","docs\u002F4.x\u002F1.getting-started\u002F08.seo-meta",{"title":59,"path":1157,"stem":1158,"titleTemplate":6,"icon":62},"\u002Fdocs\u002F4.x\u002Fgetting-started\u002Ftransitions","docs\u002F4.x\u002F1.getting-started\u002F09.transitions",{"title":64,"path":1160,"stem":1161,"titleTemplate":6,"icon":67},"\u002Fdocs\u002F4.x\u002Fgetting-started\u002Fdata-fetching","docs\u002F4.x\u002F1.getting-started\u002F10.data-fetching",{"title":69,"path":1163,"stem":1164,"titleTemplate":6,"icon":72},"\u002Fdocs\u002F4.x\u002Fgetting-started\u002Fstate-management","docs\u002F4.x\u002F1.getting-started\u002F11.state-management",{"title":74,"path":1166,"stem":1167,"titleTemplate":6,"icon":77},"\u002Fdocs\u002F4.x\u002Fgetting-started\u002Ferror-handling","docs\u002F4.x\u002F1.getting-started\u002F12.error-handling",{"title":79,"path":1169,"stem":1170,"titleTemplate":6,"icon":82},"\u002Fdocs\u002F4.x\u002Fgetting-started\u002Fserver","docs\u002F4.x\u002F1.getting-started\u002F13.server",{"title":84,"path":1172,"stem":1173,"titleTemplate":6,"icon":87},"\u002Fdocs\u002F4.x\u002Fgetting-started\u002Flayers","docs\u002F4.x\u002F1.getting-started\u002F14.layers",{"title":89,"path":1175,"stem":1176,"titleTemplate":6,"icon":92},"\u002Fdocs\u002F4.x\u002Fgetting-started\u002Fprerendering","docs\u002F4.x\u002F1.getting-started\u002F15.prerendering",{"title":94,"path":1178,"stem":1179,"titleTemplate":6,"icon":97},"\u002Fdocs\u002F4.x\u002Fgetting-started\u002Fdeployment","docs\u002F4.x\u002F1.getting-started\u002F16.deployment",{"title":99,"path":1181,"stem":1182,"titleTemplate":6,"icon":102},"\u002Fdocs\u002F4.x\u002Fgetting-started\u002Ftesting","docs\u002F4.x\u002F1.getting-started\u002F17.testing",{"title":104,"path":1184,"stem":1185,"titleTemplate":6,"icon":107},"\u002Fdocs\u002F4.x\u002Fgetting-started\u002Fupgrade","docs\u002F4.x\u002F1.getting-started\u002F18.upgrade",{"title":110,"titleTemplate":111,"icon":112,"path":1187,"stem":1188,"children":1189,"page":108},"\u002Fdocs\u002F4.x\u002Fdirectory-structure","docs\u002F4.x\u002F2.directory-structure",[1190,1193,1196,1238,1241,1244,1247,1250,1253,1256,1259,1264,1267,1270,1273,1276,1279,1282],{"title":117,"path":1191,"stem":1192,"titleTemplate":6,"icon":120},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fnuxt","docs\u002F4.x\u002F2.directory-structure\u002F0.nuxt",{"title":122,"path":1194,"stem":1195,"titleTemplate":6,"icon":125},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Foutput","docs\u002F4.x\u002F2.directory-structure\u002F0.output",{"title":1197,"titleTemplate":111,"head":1198,"defaultOpen":1200,"icon":1201,"path":1202,"stem":1203,"children":1204,"page":108},"app",{"title":1199},"app\u002F",true,"i-vscode-icons-folder-type-app","\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fapp","docs\u002F4.x\u002F2.directory-structure\u002F1.app",[1205,1208,1211,1214,1217,1220,1223,1226,1229,1232,1235],{"title":127,"path":1206,"stem":1207,"titleTemplate":6,"icon":130},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fapp\u002Fassets","docs\u002F4.x\u002F2.directory-structure\u002F1.app\u002F1.assets",{"title":132,"path":1209,"stem":1210,"titleTemplate":6,"icon":135},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fapp\u002Fcomponents","docs\u002F4.x\u002F2.directory-structure\u002F1.app\u002F1.components",{"title":137,"path":1212,"stem":1213,"titleTemplate":6,"icon":140},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fapp\u002Fcomposables","docs\u002F4.x\u002F2.directory-structure\u002F1.app\u002F1.composables",{"title":152,"path":1215,"stem":1216,"titleTemplate":6,"icon":155},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fapp\u002Flayouts","docs\u002F4.x\u002F2.directory-structure\u002F1.app\u002F1.layouts",{"title":157,"path":1218,"stem":1219,"titleTemplate":6,"icon":160},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fapp\u002Fmiddleware","docs\u002F4.x\u002F2.directory-structure\u002F1.app\u002F1.middleware",{"title":171,"path":1221,"stem":1222,"titleTemplate":6,"icon":155},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fapp\u002Fpages","docs\u002F4.x\u002F2.directory-structure\u002F1.app\u002F1.pages",{"title":175,"path":1224,"stem":1225,"titleTemplate":6,"icon":178},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fapp\u002Fplugins","docs\u002F4.x\u002F2.directory-structure\u002F1.app\u002F1.plugins",{"title":195,"path":1227,"stem":1228,"titleTemplate":6,"icon":198},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fapp\u002Futils","docs\u002F4.x\u002F2.directory-structure\u002F1.app\u002F1.utils",{"title":219,"path":1230,"stem":1231,"titleTemplate":6,"icon":222},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fapp\u002Fapp","docs\u002F4.x\u002F2.directory-structure\u002F1.app\u002F3.app",{"title":224,"path":1233,"stem":1234,"titleTemplate":6,"icon":227},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fapp\u002Fapp-config","docs\u002F4.x\u002F2.directory-structure\u002F1.app\u002F3.app-config",{"title":229,"path":1236,"stem":1237,"titleTemplate":6,"icon":222},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fapp\u002Ferror","docs\u002F4.x\u002F2.directory-structure\u002F1.app\u002F3.error",{"title":142,"path":1239,"stem":1240,"titleTemplate":6,"icon":145},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fcontent","docs\u002F4.x\u002F2.directory-structure\u002F1.content",{"title":147,"path":1242,"stem":1243,"titleTemplate":6,"icon":150},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Flayers","docs\u002F4.x\u002F2.directory-structure\u002F1.layers",{"title":162,"path":1245,"stem":1246,"titleTemplate":6,"icon":150},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fmodules","docs\u002F4.x\u002F2.directory-structure\u002F1.modules",{"title":166,"path":1248,"stem":1249,"titleTemplate":6,"icon":169},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fnode_modules","docs\u002F4.x\u002F2.directory-structure\u002F1.node_modules",{"title":180,"path":1251,"stem":1252,"titleTemplate":6,"icon":183},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fpublic","docs\u002F4.x\u002F2.directory-structure\u002F1.public",{"title":185,"path":1254,"stem":1255,"titleTemplate":6,"icon":188},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fserver","docs\u002F4.x\u002F2.directory-structure\u002F1.server",{"title":190,"path":1257,"stem":1258,"titleTemplate":6,"icon":193},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fshared","docs\u002F4.x\u002F2.directory-structure\u002F1.shared",{"title":1260,"path":1261,"stem":1262,"titleTemplate":6,"icon":1263},"test","\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Ftest","docs\u002F4.x\u002F2.directory-structure\u002F1.test","i-vscode-icons-folder-type-test",{"title":200,"path":1265,"stem":1266,"titleTemplate":6,"icon":203},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fenv","docs\u002F4.x\u002F2.directory-structure\u002F2.env",{"title":205,"path":1268,"stem":1269,"titleTemplate":6,"icon":208},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fgitignore","docs\u002F4.x\u002F2.directory-structure\u002F2.gitignore",{"title":210,"path":1271,"stem":1272,"titleTemplate":6,"icon":213},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fnuxtignore","docs\u002F4.x\u002F2.directory-structure\u002F2.nuxtignore",{"title":215,"path":1274,"stem":1275,"titleTemplate":6,"icon":213},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fnuxtrc","docs\u002F4.x\u002F2.directory-structure\u002F2.nuxtrc",{"title":233,"path":1277,"stem":1278,"titleTemplate":6,"icon":213},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fnuxt-config","docs\u002F4.x\u002F2.directory-structure\u002F3.nuxt-config",{"title":237,"path":1280,"stem":1281,"titleTemplate":6,"icon":240},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fpackage","docs\u002F4.x\u002F2.directory-structure\u002F3.package",{"title":242,"path":1283,"stem":1284,"titleTemplate":6,"icon":245},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Ftsconfig","docs\u002F4.x\u002F2.directory-structure\u002F3.tsconfig",{"title":247,"titleTemplate":6,"icon":248,"path":1286,"stem":1287,"children":1288,"page":108},"\u002Fdocs\u002F4.x\u002Fguide","docs\u002F4.x\u002F3.guide",[1289,1318,1340,1350,1378,1398],{"title":253,"titleTemplate":254,"icon":255,"path":1290,"stem":1291,"children":1292,"page":108},"\u002Fdocs\u002F4.x\u002Fguide\u002Fconcepts","docs\u002F4.x\u002F3.guide\u002F1.concepts",[1293,1296,1299,1302,1305,1308,1312,1315],{"title":260,"path":1294,"stem":1295,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fconcepts\u002Frendering","docs\u002F4.x\u002F3.guide\u002F1.concepts\u002F1.rendering",{"title":264,"path":1297,"stem":1298,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fconcepts\u002Fnuxt-lifecycle","docs\u002F4.x\u002F3.guide\u002F1.concepts\u002F2.nuxt-lifecycle",{"title":268,"path":1300,"stem":1301,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fconcepts\u002Fauto-imports","docs\u002F4.x\u002F3.guide\u002F1.concepts\u002F3.auto-imports",{"title":272,"path":1303,"stem":1304,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fconcepts\u002Fserver-engine","docs\u002F4.x\u002F3.guide\u002F1.concepts\u002F4.server-engine",{"title":276,"path":1306,"stem":1307,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fconcepts\u002Fmodules","docs\u002F4.x\u002F3.guide\u002F1.concepts\u002F5.modules",{"title":1309,"path":1310,"stem":1311,"titleTemplate":6},"Server Components","\u002Fdocs\u002F4.x\u002Fguide\u002Fconcepts\u002Fserver-components","docs\u002F4.x\u002F3.guide\u002F1.concepts\u002F6.server-components",{"title":280,"path":1313,"stem":1314,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fconcepts\u002Ftypescript","docs\u002F4.x\u002F3.guide\u002F1.concepts\u002F8.typescript",{"title":284,"path":1316,"stem":1317,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fconcepts\u002Fcode-style","docs\u002F4.x\u002F3.guide\u002F1.concepts\u002F9.code-style",{"title":288,"titleTemplate":289,"icon":290,"path":1319,"stem":1320,"children":1321,"page":108},"\u002Fdocs\u002F4.x\u002Fguide\u002Fbest-practices","docs\u002F4.x\u002F3.guide\u002F2.best-practices",[1322,1326,1330,1334,1337],{"title":1323,"path":1324,"stem":1325,"titleTemplate":6},"Accessibility","\u002Fdocs\u002F4.x\u002Fguide\u002Fbest-practices\u002Faccessibility","docs\u002F4.x\u002F3.guide\u002F2.best-practices\u002Faccessibility",{"title":1327,"path":1328,"stem":1329,"titleTemplate":6},"Dev Containers","\u002Fdocs\u002F4.x\u002Fguide\u002Fbest-practices\u002Fdevcontainers","docs\u002F4.x\u002F3.guide\u002F2.best-practices\u002Fdevcontainers",{"title":1331,"path":1332,"stem":1333,"titleTemplate":6},"Nuxt and Hydration","\u002Fdocs\u002F4.x\u002Fguide\u002Fbest-practices\u002Fhydration","docs\u002F4.x\u002F3.guide\u002F2.best-practices\u002Fhydration",{"title":299,"path":1335,"stem":1336,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fbest-practices\u002Fperformance","docs\u002F4.x\u002F3.guide\u002F2.best-practices\u002Fperformance",{"title":303,"path":1338,"stem":1339,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fbest-practices\u002Fplugins","docs\u002F4.x\u002F3.guide\u002F2.best-practices\u002Fplugins",{"title":307,"titleTemplate":308,"icon":309,"path":1341,"stem":1342,"children":1343,"page":108},"\u002Fdocs\u002F4.x\u002Fguide\u002Fai","docs\u002F4.x\u002F3.guide\u002F3.ai",[1344,1347],{"title":314,"path":1345,"stem":1346,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fai\u002Fmcp","docs\u002F4.x\u002F3.guide\u002F3.ai\u002F1.mcp",{"title":318,"path":1348,"stem":1349,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fai\u002Fllms-txt","docs\u002F4.x\u002F3.guide\u002F3.ai\u002F2.llms-txt",{"title":322,"titleTemplate":323,"icon":324,"path":1351,"stem":1352,"children":1353,"page":108},"\u002Fdocs\u002F4.x\u002Fguide\u002Fmodules","docs\u002F4.x\u002F3.guide\u002F4.modules",[1354,1357,1360,1363,1366,1369,1372,1375],{"title":329,"path":1355,"stem":1356,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fmodules\u002Fgetting-started","docs\u002F4.x\u002F3.guide\u002F4.modules\u002F1.getting-started",{"title":333,"path":1358,"stem":1359,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fmodules\u002Fmodule-anatomy","docs\u002F4.x\u002F3.guide\u002F4.modules\u002F2.module-anatomy",{"title":337,"path":1361,"stem":1362,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fmodules\u002Frecipes-basics","docs\u002F4.x\u002F3.guide\u002F4.modules\u002F3.recipes-basics",{"title":341,"path":1364,"stem":1365,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fmodules\u002Fmodule-dependencies","docs\u002F4.x\u002F3.guide\u002F4.modules\u002F4.module-dependencies",{"title":345,"path":1367,"stem":1368,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fmodules\u002Frecipes-advanced","docs\u002F4.x\u002F3.guide\u002F4.modules\u002F5.recipes-advanced",{"title":349,"path":1370,"stem":1371,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fmodules\u002Ftesting","docs\u002F4.x\u002F3.guide\u002F4.modules\u002F6.testing",{"title":353,"path":1373,"stem":1374,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fmodules\u002Fbest-practices","docs\u002F4.x\u002F3.guide\u002F4.modules\u002F7.best-practices",{"title":357,"path":1376,"stem":1377,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fmodules\u002Fecosystem","docs\u002F4.x\u002F3.guide\u002F4.modules\u002F8.ecosystem",{"title":361,"titleTemplate":362,"icon":363,"path":1379,"stem":1380,"children":1381,"page":108},"\u002Fdocs\u002F4.x\u002Fguide\u002Frecipes","docs\u002F4.x\u002F3.guide\u002F5.recipes",[1382,1385,1388,1391,1394],{"title":368,"path":1383,"stem":1384,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Frecipes\u002Fcustom-routing","docs\u002F4.x\u002F3.guide\u002F5.recipes\u002F1.custom-routing",{"title":372,"path":1386,"stem":1387,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Frecipes\u002Fvite-plugin","docs\u002F4.x\u002F3.guide\u002F5.recipes\u002F2.vite-plugin",{"title":376,"path":1389,"stem":1390,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Frecipes\u002Fcustom-usefetch","docs\u002F4.x\u002F3.guide\u002F5.recipes\u002F3.custom-usefetch",{"title":380,"path":1392,"stem":1393,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Frecipes\u002Fsessions-and-authentication","docs\u002F4.x\u002F3.guide\u002F5.recipes\u002F4.sessions-and-authentication",{"title":1395,"path":1396,"stem":1397,"titleTemplate":6},"Mostly-Static Sites","\u002Fdocs\u002F4.x\u002Fguide\u002Frecipes\u002Fmostly-static-sites","docs\u002F4.x\u002F3.guide\u002F5.recipes\u002F5.mostly-static-sites",{"title":384,"titleTemplate":385,"icon":386,"path":1399,"stem":1400,"children":1401,"page":108},"\u002Fdocs\u002F4.x\u002Fguide\u002Fgoing-further","docs\u002F4.x\u002F3.guide\u002F6.going-further",[1402,1405,1408,1411,1414,1417,1420,1423,1426,1429,1433],{"title":391,"path":1403,"stem":1404,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fgoing-further\u002Fevents","docs\u002F4.x\u002F3.guide\u002F6.going-further\u002F1.events",{"title":395,"path":1406,"stem":1407,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fgoing-further\u002Fexperimental-features","docs\u002F4.x\u002F3.guide\u002F6.going-further\u002F1.experimental-features",{"title":399,"path":1409,"stem":1410,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fgoing-further\u002Ffeatures","docs\u002F4.x\u002F3.guide\u002F6.going-further\u002F1.features",{"title":403,"path":1412,"stem":1413,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fgoing-further\u002Fruntime-config","docs\u002F4.x\u002F3.guide\u002F6.going-further\u002F10.runtime-config",{"title":407,"path":1415,"stem":1416,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fgoing-further\u002Fnightly-release-channel","docs\u002F4.x\u002F3.guide\u002F6.going-further\u002F11.nightly-release-channel",{"title":411,"path":1418,"stem":1419,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fgoing-further\u002Fhooks","docs\u002F4.x\u002F3.guide\u002F6.going-further\u002F2.hooks",{"title":415,"path":1421,"stem":1422,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fgoing-further\u002Fkit","docs\u002F4.x\u002F3.guide\u002F6.going-further\u002F4.kit",{"title":419,"path":1424,"stem":1425,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fgoing-further\u002Fnuxt-app","docs\u002F4.x\u002F3.guide\u002F6.going-further\u002F6.nuxt-app",{"title":423,"path":1427,"stem":1428,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fgoing-further\u002Flayers","docs\u002F4.x\u002F3.guide\u002F6.going-further\u002F7.layers",{"title":1430,"path":1431,"stem":1432,"titleTemplate":6},"Creating a Builder","\u002Fdocs\u002F4.x\u002Fguide\u002Fgoing-further\u002Fbuilders","docs\u002F4.x\u002F3.guide\u002F6.going-further\u002F8.builders",{"title":427,"path":1434,"stem":1435,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fgoing-further\u002Fdebugging","docs\u002F4.x\u002F3.guide\u002F6.going-further\u002F9.debugging",{"title":431,"titleTemplate":432,"icon":433,"path":1437,"stem":1438,"children":1439,"page":108},"\u002Fdocs\u002F4.x\u002Fapi","docs\u002F4.x\u002F4.api",[1440,1493,1600,1691,1743,1805,1815],{"title":438,"titleTemplate":439,"icon":324,"path":1441,"stem":1442,"children":1443,"page":108},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents","docs\u002F4.x\u002F4.api\u002F1.components",[1444,1447,1450,1453,1456,1459,1462,1465,1469,1472,1475,1478,1481,1484,1487,1490],{"title":444,"path":1445,"stem":1446,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fclient-only","docs\u002F4.x\u002F4.api\u002F1.components\u002F1.client-only",{"title":448,"path":1448,"stem":1449,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fdev-only","docs\u002F4.x\u002F4.api\u002F1.components\u002F1.dev-only",{"title":452,"path":1451,"stem":1452,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-client-fallback","docs\u002F4.x\u002F4.api\u002F1.components\u002F1.nuxt-client-fallback",{"title":456,"path":1454,"stem":1455,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-picture","docs\u002F4.x\u002F4.api\u002F1.components\u002F10.nuxt-picture",{"title":460,"path":1457,"stem":1458,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fteleports","docs\u002F4.x\u002F4.api\u002F1.components\u002F11.teleports",{"title":464,"path":1460,"stem":1461,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-route-announcer","docs\u002F4.x\u002F4.api\u002F1.components\u002F12.nuxt-route-announcer",{"title":468,"path":1463,"stem":1464,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-time","docs\u002F4.x\u002F4.api\u002F1.components\u002F13.nuxt-time",{"title":1466,"path":1467,"stem":1468,"titleTemplate":6},"\u003CNuxtAnnouncer>","\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-announcer","docs\u002F4.x\u002F4.api\u002F1.components\u002F14.nuxt-announcer",{"title":472,"path":1470,"stem":1471,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-page","docs\u002F4.x\u002F4.api\u002F1.components\u002F2.nuxt-page",{"title":476,"path":1473,"stem":1474,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-layout","docs\u002F4.x\u002F4.api\u002F1.components\u002F3.nuxt-layout",{"title":480,"path":1476,"stem":1477,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-link","docs\u002F4.x\u002F4.api\u002F1.components\u002F4.nuxt-link",{"title":484,"path":1479,"stem":1480,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-loading-indicator","docs\u002F4.x\u002F4.api\u002F1.components\u002F5.nuxt-loading-indicator",{"title":488,"path":1482,"stem":1483,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-error-boundary","docs\u002F4.x\u002F4.api\u002F1.components\u002F6.nuxt-error-boundary",{"title":492,"path":1485,"stem":1486,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-welcome","docs\u002F4.x\u002F4.api\u002F1.components\u002F7.nuxt-welcome",{"title":496,"path":1488,"stem":1489,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-island","docs\u002F4.x\u002F4.api\u002F1.components\u002F8.nuxt-island",{"title":500,"path":1491,"stem":1492,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-img","docs\u002F4.x\u002F4.api\u002F1.components\u002F9.nuxt-img",{"title":504,"titleTemplate":505,"icon":506,"path":1494,"stem":1495,"children":1496,"page":108},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables","docs\u002F4.x\u002F4.api\u002F2.composables",[1497,1501,1505,1508,1512,1515,1518,1521,1524,1527,1530,1533,1536,1540,1543,1546,1549,1552,1555,1558,1561,1564,1567,1570,1573,1576,1579,1582,1585,1588,1591,1594,1597],{"title":1498,"path":1499,"stem":1500,"titleTemplate":6},"createUseAsyncData","\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fcreate-use-async-data","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fcreate-use-async-data",{"title":1502,"path":1503,"stem":1504,"titleTemplate":6},"createUseFetch","\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fcreate-use-fetch","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fcreate-use-fetch",{"title":511,"path":1506,"stem":1507,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fon-prehydrate","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fon-prehydrate",{"title":1509,"path":1510,"stem":1511,"titleTemplate":6},"useAnnouncer","\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-announcer","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-announcer",{"title":515,"path":1513,"stem":1514,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-app-config","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-app-config",{"title":519,"path":1516,"stem":1517,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-async-data","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-async-data",{"title":523,"path":1519,"stem":1520,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-cookie","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-cookie",{"title":527,"path":1522,"stem":1523,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-error","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-error",{"title":531,"path":1525,"stem":1526,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-fetch","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-fetch",{"title":535,"path":1528,"stem":1529,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-head","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-head",{"title":539,"path":1531,"stem":1532,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-head-safe","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-head-safe",{"title":543,"path":1534,"stem":1535,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-hydration","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-hydration",{"title":1537,"path":1538,"stem":1539,"titleTemplate":6},"useLayout","\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-layout","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-layout",{"title":547,"path":1541,"stem":1542,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-lazy-async-data","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-lazy-async-data",{"title":551,"path":1544,"stem":1545,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-lazy-fetch","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-lazy-fetch",{"title":555,"path":1547,"stem":1548,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-loading-indicator","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-loading-indicator",{"title":559,"path":1550,"stem":1551,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-nuxt-app","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-nuxt-app",{"title":563,"path":1553,"stem":1554,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-nuxt-data","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-nuxt-data",{"title":567,"path":1556,"stem":1557,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-preview-mode","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-preview-mode",{"title":571,"path":1559,"stem":1560,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-request-event","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-request-event",{"title":575,"path":1562,"stem":1563,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-request-fetch","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-request-fetch",{"title":579,"path":1565,"stem":1566,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-request-header","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-request-header",{"title":583,"path":1568,"stem":1569,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-request-headers","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-request-headers",{"title":587,"path":1571,"stem":1572,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-request-url","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-request-url",{"title":591,"path":1574,"stem":1575,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-response-header","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-response-header",{"title":595,"path":1577,"stem":1578,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-route","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-route",{"title":599,"path":1580,"stem":1581,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-route-announcer","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-route-announcer",{"title":603,"path":1583,"stem":1584,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-router","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-router",{"title":607,"path":1586,"stem":1587,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-runtime-config","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-runtime-config",{"title":611,"path":1589,"stem":1590,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-runtime-hook","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-runtime-hook",{"title":615,"path":1592,"stem":1593,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-seo-meta","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-seo-meta",{"title":619,"path":1595,"stem":1596,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-server-seo-meta","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-server-seo-meta",{"title":623,"path":1598,"stem":1599,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-state","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-state",{"title":627,"titleTemplate":628,"icon":629,"path":1601,"stem":1602,"children":1603,"page":108},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils","docs\u002F4.x\u002F4.api\u002F3.utils",[1604,1607,1610,1613,1616,1619,1622,1625,1628,1631,1634,1637,1640,1643,1646,1649,1652,1655,1658,1661,1664,1667,1670,1673,1676,1679,1682,1685,1688],{"title":634,"path":1605,"stem":1606,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fdollarfetch","docs\u002F4.x\u002F4.api\u002F3.utils\u002F$fetch",{"title":638,"path":1608,"stem":1609,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fabort-navigation","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fabort-navigation",{"title":642,"path":1611,"stem":1612,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fadd-route-middleware","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fadd-route-middleware",{"title":646,"path":1614,"stem":1615,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fcall-once","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fcall-once",{"title":650,"path":1617,"stem":1618,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fclear-error","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fclear-error",{"title":654,"path":1620,"stem":1621,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fclear-nuxt-data","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fclear-nuxt-data",{"title":658,"path":1623,"stem":1624,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fclear-nuxt-state","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fclear-nuxt-state",{"title":662,"path":1626,"stem":1627,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fcreate-error","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fcreate-error",{"title":666,"path":1629,"stem":1630,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fdefine-lazy-hydration-component","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fdefine-lazy-hydration-component",{"title":670,"path":1632,"stem":1633,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fdefine-nuxt-component","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fdefine-nuxt-component",{"title":674,"path":1635,"stem":1636,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fdefine-nuxt-plugin","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fdefine-nuxt-plugin",{"title":678,"path":1638,"stem":1639,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fdefine-nuxt-route-middleware","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fdefine-nuxt-route-middleware",{"title":682,"path":1641,"stem":1642,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fdefine-page-meta","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fdefine-page-meta",{"title":686,"path":1644,"stem":1645,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fdefine-route-rules","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fdefine-route-rules",{"title":690,"path":1647,"stem":1648,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fnavigate-to","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fnavigate-to",{"title":694,"path":1650,"stem":1651,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fon-before-route-leave","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fon-before-route-leave",{"title":698,"path":1653,"stem":1654,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fon-before-route-update","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fon-before-route-update",{"title":702,"path":1656,"stem":1657,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fon-nuxt-ready","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fon-nuxt-ready",{"title":706,"path":1659,"stem":1660,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fprefetch-components","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fprefetch-components",{"title":710,"path":1662,"stem":1663,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fpreload-components","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fpreload-components",{"title":714,"path":1665,"stem":1666,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fpreload-route-components","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fpreload-route-components",{"title":718,"path":1668,"stem":1669,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fprerender-routes","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fprerender-routes",{"title":722,"path":1671,"stem":1672,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Frefresh-cookie","docs\u002F4.x\u002F4.api\u002F3.utils\u002Frefresh-cookie",{"title":726,"path":1674,"stem":1675,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Frefresh-nuxt-data","docs\u002F4.x\u002F4.api\u002F3.utils\u002Frefresh-nuxt-data",{"title":730,"path":1677,"stem":1678,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Freload-nuxt-app","docs\u002F4.x\u002F4.api\u002F3.utils\u002Freload-nuxt-app",{"title":734,"path":1680,"stem":1681,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fset-page-layout","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fset-page-layout",{"title":738,"path":1683,"stem":1684,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fset-response-status","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fset-response-status",{"title":742,"path":1686,"stem":1687,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fshow-error","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fshow-error",{"title":746,"path":1689,"stem":1690,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fupdate-app-config","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fupdate-app-config",{"title":750,"titleTemplate":751,"icon":752,"path":1692,"stem":1693,"children":1694,"page":108},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands","docs\u002F4.x\u002F4.api\u002F4.commands",[1695,1698,1701,1704,1707,1710,1713,1716,1719,1722,1725,1728,1731,1734,1737,1740],{"title":757,"path":1696,"stem":1697,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fadd","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fadd",{"title":761,"path":1699,"stem":1700,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fanalyze","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fanalyze",{"title":765,"path":1702,"stem":1703,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fbuild","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fbuild",{"title":769,"path":1705,"stem":1706,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fbuild-module","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fbuild-module",{"title":773,"path":1708,"stem":1709,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fcleanup","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fcleanup",{"title":777,"path":1711,"stem":1712,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fdev","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fdev",{"title":781,"path":1714,"stem":1715,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fdevtools","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fdevtools",{"title":785,"path":1717,"stem":1718,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fgenerate","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fgenerate",{"title":789,"path":1720,"stem":1721,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Finfo","docs\u002F4.x\u002F4.api\u002F4.commands\u002Finfo",{"title":793,"path":1723,"stem":1724,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Finit","docs\u002F4.x\u002F4.api\u002F4.commands\u002Finit",{"title":797,"path":1726,"stem":1727,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fmodule","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fmodule",{"title":801,"path":1729,"stem":1730,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fprepare","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fprepare",{"title":805,"path":1732,"stem":1733,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fpreview","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fpreview",{"title":809,"path":1735,"stem":1736,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Ftest","docs\u002F4.x\u002F4.api\u002F4.commands\u002Ftest",{"title":813,"path":1738,"stem":1739,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Ftypecheck","docs\u002F4.x\u002F4.api\u002F4.commands\u002Ftypecheck",{"title":817,"path":1741,"stem":1742,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fupgrade","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fupgrade",{"title":415,"titleTemplate":821,"icon":822,"path":1744,"stem":1745,"children":1746,"page":108},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit","docs\u002F4.x\u002F4.api\u002F5.kit",[1747,1750,1753,1756,1760,1763,1766,1769,1772,1775,1778,1781,1784,1787,1790,1793,1796,1799,1802],{"title":276,"path":1748,"stem":1749,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fmodules","docs\u002F4.x\u002F4.api\u002F5.kit\u002F1.modules",{"title":403,"path":1751,"stem":1752,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fruntime-config","docs\u002F4.x\u002F4.api\u002F5.kit\u002F10.runtime-config",{"title":833,"path":1754,"stem":1755,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Ftemplates","docs\u002F4.x\u002F4.api\u002F5.kit\u002F10.templates",{"title":1757,"path":1758,"stem":1759,"titleTemplate":6},"App Config","\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fapp-config","docs\u002F4.x\u002F4.api\u002F5.kit\u002F11.app-config",{"title":837,"path":1761,"stem":1762,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fnitro","docs\u002F4.x\u002F4.api\u002F5.kit\u002F12.nitro",{"title":841,"path":1764,"stem":1765,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fresolving","docs\u002F4.x\u002F4.api\u002F5.kit\u002F13.resolving",{"title":845,"path":1767,"stem":1768,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Flogging","docs\u002F4.x\u002F4.api\u002F5.kit\u002F14.logging",{"title":849,"path":1770,"stem":1771,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fbuilder","docs\u002F4.x\u002F4.api\u002F5.kit\u002F15.builder",{"title":853,"path":1773,"stem":1774,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fexamples","docs\u002F4.x\u002F4.api\u002F5.kit\u002F16.examples",{"title":84,"path":1776,"stem":1777,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Flayers","docs\u002F4.x\u002F4.api\u002F5.kit\u002F17.layers",{"title":860,"path":1779,"stem":1780,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fprogrammatic","docs\u002F4.x\u002F4.api\u002F5.kit\u002F2.programmatic",{"title":864,"path":1782,"stem":1783,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fcompatibility","docs\u002F4.x\u002F4.api\u002F5.kit\u002F3.compatibility",{"title":268,"path":1785,"stem":1786,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fautoimports","docs\u002F4.x\u002F4.api\u002F5.kit\u002F4.autoimports",{"title":438,"path":1788,"stem":1789,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fcomponents","docs\u002F4.x\u002F4.api\u002F5.kit\u002F5.components",{"title":874,"path":1791,"stem":1792,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fcontext","docs\u002F4.x\u002F4.api\u002F5.kit\u002F6.context",{"title":878,"path":1794,"stem":1795,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fpages","docs\u002F4.x\u002F4.api\u002F5.kit\u002F7.pages",{"title":882,"path":1797,"stem":1798,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Flayout","docs\u002F4.x\u002F4.api\u002F5.kit\u002F8.layout",{"title":886,"path":1800,"stem":1801,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fhead","docs\u002F4.x\u002F4.api\u002F5.kit\u002F9.head",{"title":890,"path":1803,"stem":1804,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fplugins","docs\u002F4.x\u002F4.api\u002F5.kit\u002F9.plugins",{"title":894,"titleTemplate":6,"icon":895,"path":1806,"stem":1807,"children":1808,"page":108},"\u002Fdocs\u002F4.x\u002Fapi\u002Fadvanced","docs\u002F4.x\u002F4.api\u002F6.advanced",[1809,1812],{"title":411,"path":1810,"stem":1811,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fadvanced\u002Fhooks","docs\u002F4.x\u002F4.api\u002F6.advanced\u002F1.hooks",{"title":903,"path":1813,"stem":1814,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fadvanced\u002Fimport-meta","docs\u002F4.x\u002F4.api\u002F6.advanced\u002F2.import-meta",{"title":907,"path":1816,"stem":1817,"titleTemplate":910,"icon":32},"\u002Fdocs\u002F4.x\u002Fapi\u002Fnuxt-config","docs\u002F4.x\u002F4.api\u002F6.nuxt-config",{"title":853,"titleTemplate":912,"icon":913,"path":1819,"stem":1820,"children":1821,"page":108},"\u002Fdocs\u002F4.x\u002Fexamples","docs\u002F4.x\u002F4.examples",[1822,1825,1844,1857,1888],{"title":918,"path":1823,"stem":1824,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fhello-world","docs\u002F4.x\u002F4.examples\u002F0.hello-world",{"title":399,"path":1826,"stem":1827,"children":1828,"page":108},"\u002Fdocs\u002F4.x\u002Fexamples\u002Ffeatures","docs\u002F4.x\u002F4.examples\u002F1.features",[1829,1832,1835,1838,1841],{"title":926,"path":1830,"stem":1831,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Ffeatures\u002Fauto-imports","docs\u002F4.x\u002F4.examples\u002F1.features\u002F1.auto-imports",{"title":64,"path":1833,"stem":1834,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Ffeatures\u002Fdata-fetching","docs\u002F4.x\u002F4.examples\u002F1.features\u002F2.data-fetching",{"title":69,"path":1836,"stem":1837,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Ffeatures\u002Fstate-management","docs\u002F4.x\u002F4.examples\u002F1.features\u002F3.state-management",{"title":936,"path":1839,"stem":1840,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Ffeatures\u002Fmeta-tags","docs\u002F4.x\u002F4.examples\u002F1.features\u002F4.meta-tags",{"title":940,"path":1842,"stem":1843,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Ffeatures\u002Flayouts","docs\u002F4.x\u002F4.examples\u002F1.features\u002F5.layouts",{"title":49,"path":1845,"stem":1846,"children":1847,"page":108},"\u002Fdocs\u002F4.x\u002Fexamples\u002Frouting","docs\u002F4.x\u002F4.examples\u002F2.routing",[1848,1851,1854],{"title":948,"path":1849,"stem":1850,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Frouting\u002Fmiddleware","docs\u002F4.x\u002F4.examples\u002F2.routing\u002Fmiddleware",{"title":878,"path":1852,"stem":1853,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Frouting\u002Fpages","docs\u002F4.x\u002F4.examples\u002F2.routing\u002Fpages",{"title":955,"path":1855,"stem":1856,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Frouting\u002Funiversal-router","docs\u002F4.x\u002F4.examples\u002F2.routing\u002Funiversal-router",{"title":894,"path":1858,"stem":1859,"children":1860,"page":108},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fadvanced","docs\u002F4.x\u002F4.examples\u002F4.advanced",[1861,1864,1867,1870,1873,1876,1879,1882,1885],{"title":84,"path":1862,"stem":1863,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fadvanced\u002Fconfig-extends","docs\u002F4.x\u002F4.examples\u002F4.advanced\u002Fconfig-extends",{"title":74,"path":1865,"stem":1866,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fadvanced\u002Ferror-handling","docs\u002F4.x\u002F4.examples\u002F4.advanced\u002Ferror-handling",{"title":969,"path":1868,"stem":1869,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fadvanced\u002Fjsx","docs\u002F4.x\u002F4.examples\u002F4.advanced\u002Fjsx",{"title":973,"path":1871,"stem":1872,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fadvanced\u002Flocale","docs\u002F4.x\u002F4.examples\u002F4.advanced\u002Flocale",{"title":977,"path":1874,"stem":1875,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fadvanced\u002Fmodule-extend-pages","docs\u002F4.x\u002F4.examples\u002F4.advanced\u002Fmodule-extend-pages",{"title":981,"path":1877,"stem":1878,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fadvanced\u002Fteleport","docs\u002F4.x\u002F4.examples\u002F4.advanced\u002Fteleport",{"title":99,"path":1880,"stem":1881,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fadvanced\u002Ftesting","docs\u002F4.x\u002F4.examples\u002F4.advanced\u002Ftesting",{"title":523,"path":1883,"stem":1884,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fadvanced\u002Fuse-cookie","docs\u002F4.x\u002F4.examples\u002F4.advanced\u002Fuse-cookie",{"title":991,"path":1886,"stem":1887,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fadvanced\u002Fuse-custom-fetch-composable","docs\u002F4.x\u002F4.examples\u002F4.advanced\u002Fuse-custom-fetch-composable",{"title":995,"path":1889,"stem":1890,"children":1891,"page":108},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fexperimental","docs\u002F4.x\u002F4.examples\u002F7.experimental",[1892],{"title":1000,"path":1893,"stem":1894,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fexperimental\u002Fwasm","docs\u002F4.x\u002F4.examples\u002F7.experimental\u002Fwasm",{"title":1004,"titleTemplate":1005,"icon":1006,"path":1896,"stem":1897,"children":1898,"page":108},"\u002Fdocs\u002F4.x\u002Fcommunity","docs\u002F4.x\u002F5.community",[1899,1902,1905,1908,1911,1914],{"title":1011,"path":1900,"stem":1901,"titleTemplate":6,"icon":1014},"\u002Fdocs\u002F4.x\u002Fcommunity\u002Fgetting-help","docs\u002F4.x\u002F5.community\u002F2.getting-help",{"title":1016,"path":1903,"stem":1904,"titleTemplate":6,"icon":1019},"\u002Fdocs\u002F4.x\u002Fcommunity\u002Freporting-bugs","docs\u002F4.x\u002F5.community\u002F3.reporting-bugs",{"title":1021,"path":1906,"stem":1907,"titleTemplate":6,"icon":1024},"\u002Fdocs\u002F4.x\u002Fcommunity\u002Fcontribution","docs\u002F4.x\u002F5.community\u002F4.contribution",{"title":1026,"path":1909,"stem":1910,"titleTemplate":6,"icon":1029},"\u002Fdocs\u002F4.x\u002Fcommunity\u002Fframework-contribution","docs\u002F4.x\u002F5.community\u002F5.framework-contribution",{"title":1031,"path":1912,"stem":1913,"titleTemplate":6,"icon":1034},"\u002Fdocs\u002F4.x\u002Fcommunity\u002Froadmap","docs\u002F4.x\u002F5.community\u002F6.roadmap",{"title":1036,"path":1915,"stem":1916,"titleTemplate":6,"icon":1039},"\u002Fdocs\u002F4.x\u002Fcommunity\u002Fchangelog","docs\u002F4.x\u002F5.community\u002F7.changelog",{"title":1041,"titleTemplate":1042,"icon":1043,"path":1918,"stem":1919,"children":1920,"page":108},"\u002Fdocs\u002F4.x\u002Fbridge","docs\u002F4.x\u002F6.bridge",[1921,1924,1927,1930,1933,1936,1939,1942,1945,1948],{"title":1048,"path":1922,"stem":1923,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fbridge\u002Foverview","docs\u002F4.x\u002F6.bridge\u002F1.overview",{"title":29,"path":1925,"stem":1926,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fbridge\u002Fconfiguration","docs\u002F4.x\u002F6.bridge\u002F10.configuration",{"title":280,"path":1928,"stem":1929,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fbridge\u002Ftypescript","docs\u002F4.x\u002F6.bridge\u002F2.typescript",{"title":1058,"path":1931,"stem":1932,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fbridge\u002Fbridge-composition-api","docs\u002F4.x\u002F6.bridge\u002F3.bridge-composition-api",{"title":1062,"path":1934,"stem":1935,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fbridge\u002Fplugins-and-middleware","docs\u002F4.x\u002F6.bridge\u002F4.plugins-and-middleware",{"title":1066,"path":1937,"stem":1938,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fbridge\u002Fnuxt3-compatible-api","docs\u002F4.x\u002F6.bridge\u002F5.nuxt3-compatible-api",{"title":936,"path":1940,"stem":1941,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fbridge\u002Fmeta","docs\u002F4.x\u002F6.bridge\u002F6.meta",{"title":403,"path":1943,"stem":1944,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fbridge\u002Fruntime-config","docs\u002F4.x\u002F6.bridge\u002F7.runtime-config",{"title":837,"path":1946,"stem":1947,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fbridge\u002Fnitro","docs\u002F4.x\u002F6.bridge\u002F8.nitro",{"title":1079,"path":1949,"stem":1950,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fbridge\u002Fvite","docs\u002F4.x\u002F6.bridge\u002F9.vite",{"title":1083,"titleTemplate":1084,"icon":107,"path":1952,"stem":1953,"children":1954,"page":108},"\u002Fdocs\u002F4.x\u002Fmigration","docs\u002F4.x\u002F7.migration",[1955,1958,1961,1964,1967,1970,1973,1976,1979,1982,1985],{"title":1048,"path":1956,"stem":1957,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fmigration\u002Foverview","docs\u002F4.x\u002F7.migration\u002F1.overview",{"title":1092,"path":1959,"stem":1960,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fmigration\u002Fbundling","docs\u002F4.x\u002F7.migration\u002F10.bundling",{"title":79,"path":1962,"stem":1963,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fmigration\u002Fserver","docs\u002F4.x\u002F7.migration\u002F11.server",{"title":29,"path":1965,"stem":1966,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fmigration\u002Fconfiguration","docs\u002F4.x\u002F7.migration\u002F2.configuration",{"title":276,"path":1968,"stem":1969,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fmigration\u002Fmodule-authors","docs\u002F4.x\u002F7.migration\u002F20.module-authors",{"title":926,"path":1971,"stem":1972,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fmigration\u002Fauto-imports","docs\u002F4.x\u002F7.migration\u002F3.auto-imports",{"title":936,"path":1974,"stem":1975,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fmigration\u002Fmeta","docs\u002F4.x\u002F7.migration\u002F4.meta",{"title":1062,"path":1977,"stem":1978,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fmigration\u002Fplugins-and-middleware","docs\u002F4.x\u002F7.migration\u002F5.plugins-and-middleware",{"title":1114,"path":1980,"stem":1981,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fmigration\u002Fpages-and-layouts","docs\u002F4.x\u002F7.migration\u002F6.pages-and-layouts",{"title":1118,"path":1983,"stem":1984,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fmigration\u002Fcomponent-options","docs\u002F4.x\u002F7.migration\u002F7.component-options",{"title":403,"path":1986,"stem":1987,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fmigration\u002Fruntime-config","docs\u002F4.x\u002F7.migration\u002F8.runtime-config",{"title":5,"titleTemplate":6,"icon":7,"path":1989,"stem":1990,"children":1991,"page":108},"\u002Fdocs\u002F5.x","docs\u002F5.x",[1992,2050,2143,2288,2664,2741,2763,2797],{"title":12,"titleTemplate":13,"icon":14,"path":1993,"stem":1994,"children":1995,"page":108},"\u002Fdocs\u002F5.x\u002Fgetting-started","docs\u002F5.x\u002F1.getting-started",[1996,1999,2002,2005,2008,2011,2014,2017,2020,2023,2026,2029,2032,2035,2038,2041,2044,2047],{"title":19,"path":1997,"stem":1998,"titleTemplate":6,"icon":22},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Fintroduction","docs\u002F5.x\u002F1.getting-started\u002F01.introduction",{"title":24,"path":2000,"stem":2001,"titleTemplate":6,"icon":27},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Finstallation","docs\u002F5.x\u002F1.getting-started\u002F02.installation",{"title":29,"path":2003,"stem":2004,"titleTemplate":6,"icon":32},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Fconfiguration","docs\u002F5.x\u002F1.getting-started\u002F03.configuration",{"title":34,"path":2006,"stem":2007,"titleTemplate":6,"icon":37},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Fviews","docs\u002F5.x\u002F1.getting-started\u002F04.views",{"title":39,"path":2009,"stem":2010,"titleTemplate":6,"icon":42},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Fassets","docs\u002F5.x\u002F1.getting-started\u002F05.assets",{"title":44,"path":2012,"stem":2013,"titleTemplate":6,"icon":47},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Fstyling","docs\u002F5.x\u002F1.getting-started\u002F06.styling",{"title":49,"path":2015,"stem":2016,"titleTemplate":6,"icon":52},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Frouting","docs\u002F5.x\u002F1.getting-started\u002F07.routing",{"title":54,"path":2018,"stem":2019,"titleTemplate":6,"icon":57},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Fseo-meta","docs\u002F5.x\u002F1.getting-started\u002F08.seo-meta",{"title":59,"path":2021,"stem":2022,"titleTemplate":6,"icon":62},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Ftransitions","docs\u002F5.x\u002F1.getting-started\u002F09.transitions",{"title":64,"path":2024,"stem":2025,"titleTemplate":6,"icon":67},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Fdata-fetching","docs\u002F5.x\u002F1.getting-started\u002F10.data-fetching",{"title":69,"path":2027,"stem":2028,"titleTemplate":6,"icon":72},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Fstate-management","docs\u002F5.x\u002F1.getting-started\u002F11.state-management",{"title":74,"path":2030,"stem":2031,"titleTemplate":6,"icon":77},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Ferror-handling","docs\u002F5.x\u002F1.getting-started\u002F12.error-handling",{"title":79,"path":2033,"stem":2034,"titleTemplate":6,"icon":82},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Fserver","docs\u002F5.x\u002F1.getting-started\u002F13.server",{"title":84,"path":2036,"stem":2037,"titleTemplate":6,"icon":87},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Flayers","docs\u002F5.x\u002F1.getting-started\u002F14.layers",{"title":89,"path":2039,"stem":2040,"titleTemplate":6,"icon":92},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Fprerendering","docs\u002F5.x\u002F1.getting-started\u002F15.prerendering",{"title":94,"path":2042,"stem":2043,"titleTemplate":6,"icon":97},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Fdeployment","docs\u002F5.x\u002F1.getting-started\u002F16.deployment",{"title":99,"path":2045,"stem":2046,"titleTemplate":6,"icon":102},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Ftesting","docs\u002F5.x\u002F1.getting-started\u002F17.testing",{"title":104,"path":2048,"stem":2049,"titleTemplate":6,"icon":107},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Fupgrade","docs\u002F5.x\u002F1.getting-started\u002F18.upgrade",{"title":110,"titleTemplate":111,"icon":112,"path":2051,"stem":2052,"children":2053,"page":108},"\u002Fdocs\u002F5.x\u002Fdirectory-structure","docs\u002F5.x\u002F2.directory-structure",[2054,2057,2060,2098,2101,2104,2107,2110,2113,2116,2119,2122,2125,2128,2131,2134,2137,2140],{"title":117,"path":2055,"stem":2056,"titleTemplate":6,"icon":120},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fnuxt","docs\u002F5.x\u002F2.directory-structure\u002F0.nuxt",{"title":122,"path":2058,"stem":2059,"titleTemplate":6,"icon":125},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Foutput","docs\u002F5.x\u002F2.directory-structure\u002F0.output",{"title":1197,"titleTemplate":111,"head":2061,"defaultOpen":1200,"icon":1201,"path":2062,"stem":2063,"children":2064,"page":108},{"title":1199},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fapp","docs\u002F5.x\u002F2.directory-structure\u002F1.app",[2065,2068,2071,2074,2077,2080,2083,2086,2089,2092,2095],{"title":127,"path":2066,"stem":2067,"titleTemplate":6,"icon":130},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fapp\u002Fassets","docs\u002F5.x\u002F2.directory-structure\u002F1.app\u002F1.assets",{"title":132,"path":2069,"stem":2070,"titleTemplate":6,"icon":135},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fapp\u002Fcomponents","docs\u002F5.x\u002F2.directory-structure\u002F1.app\u002F1.components",{"title":137,"path":2072,"stem":2073,"titleTemplate":6,"icon":140},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fapp\u002Fcomposables","docs\u002F5.x\u002F2.directory-structure\u002F1.app\u002F1.composables",{"title":152,"path":2075,"stem":2076,"titleTemplate":6,"icon":155},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fapp\u002Flayouts","docs\u002F5.x\u002F2.directory-structure\u002F1.app\u002F1.layouts",{"title":157,"path":2078,"stem":2079,"titleTemplate":6,"icon":160},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fapp\u002Fmiddleware","docs\u002F5.x\u002F2.directory-structure\u002F1.app\u002F1.middleware",{"title":171,"path":2081,"stem":2082,"titleTemplate":6,"icon":155},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fapp\u002Fpages","docs\u002F5.x\u002F2.directory-structure\u002F1.app\u002F1.pages",{"title":175,"path":2084,"stem":2085,"titleTemplate":6,"icon":178},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fapp\u002Fplugins","docs\u002F5.x\u002F2.directory-structure\u002F1.app\u002F1.plugins",{"title":195,"path":2087,"stem":2088,"titleTemplate":6,"icon":198},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fapp\u002Futils","docs\u002F5.x\u002F2.directory-structure\u002F1.app\u002F1.utils",{"title":219,"path":2090,"stem":2091,"titleTemplate":6,"icon":222},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fapp\u002Fapp","docs\u002F5.x\u002F2.directory-structure\u002F1.app\u002F3.app",{"title":224,"path":2093,"stem":2094,"titleTemplate":6,"icon":227},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fapp\u002Fapp-config","docs\u002F5.x\u002F2.directory-structure\u002F1.app\u002F3.app-config",{"title":229,"path":2096,"stem":2097,"titleTemplate":6,"icon":222},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fapp\u002Ferror","docs\u002F5.x\u002F2.directory-structure\u002F1.app\u002F3.error",{"title":142,"path":2099,"stem":2100,"titleTemplate":6,"icon":145},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fcontent","docs\u002F5.x\u002F2.directory-structure\u002F1.content",{"title":147,"path":2102,"stem":2103,"titleTemplate":6,"icon":150},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Flayers","docs\u002F5.x\u002F2.directory-structure\u002F1.layers",{"title":162,"path":2105,"stem":2106,"titleTemplate":6,"icon":150},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fmodules","docs\u002F5.x\u002F2.directory-structure\u002F1.modules",{"title":166,"path":2108,"stem":2109,"titleTemplate":6,"icon":169},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fnode_modules","docs\u002F5.x\u002F2.directory-structure\u002F1.node_modules",{"title":180,"path":2111,"stem":2112,"titleTemplate":6,"icon":183},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fpublic","docs\u002F5.x\u002F2.directory-structure\u002F1.public",{"title":185,"path":2114,"stem":2115,"titleTemplate":6,"icon":188},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fserver","docs\u002F5.x\u002F2.directory-structure\u002F1.server",{"title":190,"path":2117,"stem":2118,"titleTemplate":6,"icon":193},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fshared","docs\u002F5.x\u002F2.directory-structure\u002F1.shared",{"title":1260,"path":2120,"stem":2121,"titleTemplate":6,"icon":1263},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Ftest","docs\u002F5.x\u002F2.directory-structure\u002F1.test",{"title":200,"path":2123,"stem":2124,"titleTemplate":6,"icon":203},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fenv","docs\u002F5.x\u002F2.directory-structure\u002F2.env",{"title":205,"path":2126,"stem":2127,"titleTemplate":6,"icon":208},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fgitignore","docs\u002F5.x\u002F2.directory-structure\u002F2.gitignore",{"title":210,"path":2129,"stem":2130,"titleTemplate":6,"icon":213},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fnuxtignore","docs\u002F5.x\u002F2.directory-structure\u002F2.nuxtignore",{"title":215,"path":2132,"stem":2133,"titleTemplate":6,"icon":213},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fnuxtrc","docs\u002F5.x\u002F2.directory-structure\u002F2.nuxtrc",{"title":233,"path":2135,"stem":2136,"titleTemplate":6,"icon":213},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fnuxt-config","docs\u002F5.x\u002F2.directory-structure\u002F3.nuxt-config",{"title":237,"path":2138,"stem":2139,"titleTemplate":6,"icon":240},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fpackage","docs\u002F5.x\u002F2.directory-structure\u002F3.package",{"title":242,"path":2141,"stem":2142,"titleTemplate":6,"icon":245},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Ftsconfig","docs\u002F5.x\u002F2.directory-structure\u002F3.tsconfig",{"title":247,"titleTemplate":6,"icon":248,"path":2144,"stem":2145,"children":2146,"page":108},"\u002Fdocs\u002F5.x\u002Fguide","docs\u002F5.x\u002F3.guide",[2147,2175,2194,2204,2232,2251],{"title":253,"titleTemplate":254,"icon":255,"path":2148,"stem":2149,"children":2150,"page":108},"\u002Fdocs\u002F5.x\u002Fguide\u002Fconcepts","docs\u002F5.x\u002F3.guide\u002F1.concepts",[2151,2154,2157,2160,2163,2166,2169,2172],{"title":260,"path":2152,"stem":2153,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fconcepts\u002Frendering","docs\u002F5.x\u002F3.guide\u002F1.concepts\u002F1.rendering",{"title":264,"path":2155,"stem":2156,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fconcepts\u002Fnuxt-lifecycle","docs\u002F5.x\u002F3.guide\u002F1.concepts\u002F2.nuxt-lifecycle",{"title":268,"path":2158,"stem":2159,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fconcepts\u002Fauto-imports","docs\u002F5.x\u002F3.guide\u002F1.concepts\u002F3.auto-imports",{"title":272,"path":2161,"stem":2162,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fconcepts\u002Fserver-engine","docs\u002F5.x\u002F3.guide\u002F1.concepts\u002F4.server-engine",{"title":276,"path":2164,"stem":2165,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fconcepts\u002Fmodules","docs\u002F5.x\u002F3.guide\u002F1.concepts\u002F5.modules",{"title":1309,"path":2167,"stem":2168,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fconcepts\u002Fserver-components","docs\u002F5.x\u002F3.guide\u002F1.concepts\u002F6.server-components",{"title":280,"path":2170,"stem":2171,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fconcepts\u002Ftypescript","docs\u002F5.x\u002F3.guide\u002F1.concepts\u002F8.typescript",{"title":284,"path":2173,"stem":2174,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fconcepts\u002Fcode-style","docs\u002F5.x\u002F3.guide\u002F1.concepts\u002F9.code-style",{"title":288,"titleTemplate":289,"icon":290,"path":2176,"stem":2177,"children":2178,"page":108},"\u002Fdocs\u002F5.x\u002Fguide\u002Fbest-practices","docs\u002F5.x\u002F3.guide\u002F2.best-practices",[2179,2182,2185,2188,2191],{"title":1323,"path":2180,"stem":2181,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fbest-practices\u002Faccessibility","docs\u002F5.x\u002F3.guide\u002F2.best-practices\u002Faccessibility",{"title":1327,"path":2183,"stem":2184,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fbest-practices\u002Fdevcontainers","docs\u002F5.x\u002F3.guide\u002F2.best-practices\u002Fdevcontainers",{"title":1331,"path":2186,"stem":2187,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fbest-practices\u002Fhydration","docs\u002F5.x\u002F3.guide\u002F2.best-practices\u002Fhydration",{"title":299,"path":2189,"stem":2190,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fbest-practices\u002Fperformance","docs\u002F5.x\u002F3.guide\u002F2.best-practices\u002Fperformance",{"title":303,"path":2192,"stem":2193,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fbest-practices\u002Fplugins","docs\u002F5.x\u002F3.guide\u002F2.best-practices\u002Fplugins",{"title":307,"titleTemplate":308,"icon":309,"path":2195,"stem":2196,"children":2197,"page":108},"\u002Fdocs\u002F5.x\u002Fguide\u002Fai","docs\u002F5.x\u002F3.guide\u002F3.ai",[2198,2201],{"title":314,"path":2199,"stem":2200,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fai\u002Fmcp","docs\u002F5.x\u002F3.guide\u002F3.ai\u002F1.mcp",{"title":318,"path":2202,"stem":2203,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fai\u002Fllms-txt","docs\u002F5.x\u002F3.guide\u002F3.ai\u002F2.llms-txt",{"title":322,"titleTemplate":323,"icon":324,"path":2205,"stem":2206,"children":2207,"page":108},"\u002Fdocs\u002F5.x\u002Fguide\u002Fmodules","docs\u002F5.x\u002F3.guide\u002F4.modules",[2208,2211,2214,2217,2220,2223,2226,2229],{"title":329,"path":2209,"stem":2210,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fmodules\u002Fgetting-started","docs\u002F5.x\u002F3.guide\u002F4.modules\u002F1.getting-started",{"title":333,"path":2212,"stem":2213,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fmodules\u002Fmodule-anatomy","docs\u002F5.x\u002F3.guide\u002F4.modules\u002F2.module-anatomy",{"title":337,"path":2215,"stem":2216,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fmodules\u002Frecipes-basics","docs\u002F5.x\u002F3.guide\u002F4.modules\u002F3.recipes-basics",{"title":341,"path":2218,"stem":2219,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fmodules\u002Fmodule-dependencies","docs\u002F5.x\u002F3.guide\u002F4.modules\u002F4.module-dependencies",{"title":345,"path":2221,"stem":2222,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fmodules\u002Frecipes-advanced","docs\u002F5.x\u002F3.guide\u002F4.modules\u002F5.recipes-advanced",{"title":349,"path":2224,"stem":2225,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fmodules\u002Ftesting","docs\u002F5.x\u002F3.guide\u002F4.modules\u002F6.testing",{"title":353,"path":2227,"stem":2228,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fmodules\u002Fbest-practices","docs\u002F5.x\u002F3.guide\u002F4.modules\u002F7.best-practices",{"title":357,"path":2230,"stem":2231,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fmodules\u002Fecosystem","docs\u002F5.x\u002F3.guide\u002F4.modules\u002F8.ecosystem",{"title":361,"titleTemplate":362,"icon":363,"path":2233,"stem":2234,"children":2235,"page":108},"\u002Fdocs\u002F5.x\u002Fguide\u002Frecipes","docs\u002F5.x\u002F3.guide\u002F5.recipes",[2236,2239,2242,2245,2248],{"title":368,"path":2237,"stem":2238,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Frecipes\u002Fcustom-routing","docs\u002F5.x\u002F3.guide\u002F5.recipes\u002F1.custom-routing",{"title":372,"path":2240,"stem":2241,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Frecipes\u002Fvite-plugin","docs\u002F5.x\u002F3.guide\u002F5.recipes\u002F2.vite-plugin",{"title":376,"path":2243,"stem":2244,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Frecipes\u002Fcustom-usefetch","docs\u002F5.x\u002F3.guide\u002F5.recipes\u002F3.custom-usefetch",{"title":380,"path":2246,"stem":2247,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Frecipes\u002Fsessions-and-authentication","docs\u002F5.x\u002F3.guide\u002F5.recipes\u002F4.sessions-and-authentication",{"title":1395,"path":2249,"stem":2250,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Frecipes\u002Fmostly-static-sites","docs\u002F5.x\u002F3.guide\u002F5.recipes\u002F5.mostly-static-sites",{"title":384,"titleTemplate":385,"icon":386,"path":2252,"stem":2253,"children":2254,"page":108},"\u002Fdocs\u002F5.x\u002Fguide\u002Fgoing-further","docs\u002F5.x\u002F3.guide\u002F6.going-further",[2255,2258,2261,2264,2267,2270,2273,2276,2279,2282,2285],{"title":391,"path":2256,"stem":2257,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fgoing-further\u002Fevents","docs\u002F5.x\u002F3.guide\u002F6.going-further\u002F1.events",{"title":395,"path":2259,"stem":2260,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fgoing-further\u002Fexperimental-features","docs\u002F5.x\u002F3.guide\u002F6.going-further\u002F1.experimental-features",{"title":399,"path":2262,"stem":2263,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fgoing-further\u002Ffeatures","docs\u002F5.x\u002F3.guide\u002F6.going-further\u002F1.features",{"title":403,"path":2265,"stem":2266,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fgoing-further\u002Fruntime-config","docs\u002F5.x\u002F3.guide\u002F6.going-further\u002F10.runtime-config",{"title":407,"path":2268,"stem":2269,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fgoing-further\u002Fnightly-release-channel","docs\u002F5.x\u002F3.guide\u002F6.going-further\u002F11.nightly-release-channel",{"title":411,"path":2271,"stem":2272,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fgoing-further\u002Fhooks","docs\u002F5.x\u002F3.guide\u002F6.going-further\u002F2.hooks",{"title":415,"path":2274,"stem":2275,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fgoing-further\u002Fkit","docs\u002F5.x\u002F3.guide\u002F6.going-further\u002F4.kit",{"title":419,"path":2277,"stem":2278,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fgoing-further\u002Fnuxt-app","docs\u002F5.x\u002F3.guide\u002F6.going-further\u002F6.nuxt-app",{"title":423,"path":2280,"stem":2281,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fgoing-further\u002Flayers","docs\u002F5.x\u002F3.guide\u002F6.going-further\u002F7.layers",{"title":1430,"path":2283,"stem":2284,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fgoing-further\u002Fbuilders","docs\u002F5.x\u002F3.guide\u002F6.going-further\u002F8.builders",{"title":427,"path":2286,"stem":2287,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fgoing-further\u002Fdebugging","docs\u002F5.x\u002F3.guide\u002F6.going-further\u002F9.debugging",{"title":431,"titleTemplate":432,"icon":433,"path":2289,"stem":2290,"children":2291,"page":108},"\u002Fdocs\u002F5.x\u002Fapi","docs\u002F5.x\u002F4.api",[2292,2344,2447,2538,2590,2651,2661],{"title":438,"titleTemplate":439,"icon":324,"path":2293,"stem":2294,"children":2295,"page":108},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents","docs\u002F5.x\u002F4.api\u002F1.components",[2296,2299,2302,2305,2308,2311,2314,2317,2320,2323,2326,2329,2332,2335,2338,2341],{"title":444,"path":2297,"stem":2298,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fclient-only","docs\u002F5.x\u002F4.api\u002F1.components\u002F1.client-only",{"title":448,"path":2300,"stem":2301,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fdev-only","docs\u002F5.x\u002F4.api\u002F1.components\u002F1.dev-only",{"title":452,"path":2303,"stem":2304,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-client-fallback","docs\u002F5.x\u002F4.api\u002F1.components\u002F1.nuxt-client-fallback",{"title":456,"path":2306,"stem":2307,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-picture","docs\u002F5.x\u002F4.api\u002F1.components\u002F10.nuxt-picture",{"title":460,"path":2309,"stem":2310,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fteleports","docs\u002F5.x\u002F4.api\u002F1.components\u002F11.teleports",{"title":464,"path":2312,"stem":2313,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-route-announcer","docs\u002F5.x\u002F4.api\u002F1.components\u002F12.nuxt-route-announcer",{"title":468,"path":2315,"stem":2316,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-time","docs\u002F5.x\u002F4.api\u002F1.components\u002F13.nuxt-time",{"title":1466,"path":2318,"stem":2319,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-announcer","docs\u002F5.x\u002F4.api\u002F1.components\u002F14.nuxt-announcer",{"title":472,"path":2321,"stem":2322,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-page","docs\u002F5.x\u002F4.api\u002F1.components\u002F2.nuxt-page",{"title":476,"path":2324,"stem":2325,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-layout","docs\u002F5.x\u002F4.api\u002F1.components\u002F3.nuxt-layout",{"title":480,"path":2327,"stem":2328,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-link","docs\u002F5.x\u002F4.api\u002F1.components\u002F4.nuxt-link",{"title":484,"path":2330,"stem":2331,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-loading-indicator","docs\u002F5.x\u002F4.api\u002F1.components\u002F5.nuxt-loading-indicator",{"title":488,"path":2333,"stem":2334,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-error-boundary","docs\u002F5.x\u002F4.api\u002F1.components\u002F6.nuxt-error-boundary",{"title":492,"path":2336,"stem":2337,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-welcome","docs\u002F5.x\u002F4.api\u002F1.components\u002F7.nuxt-welcome",{"title":496,"path":2339,"stem":2340,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-island","docs\u002F5.x\u002F4.api\u002F1.components\u002F8.nuxt-island",{"title":500,"path":2342,"stem":2343,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-img","docs\u002F5.x\u002F4.api\u002F1.components\u002F9.nuxt-img",{"title":504,"titleTemplate":505,"icon":506,"path":2345,"stem":2346,"children":2347,"page":108},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables","docs\u002F5.x\u002F4.api\u002F2.composables",[2348,2351,2354,2357,2360,2363,2366,2369,2372,2375,2378,2381,2384,2387,2390,2393,2396,2399,2402,2405,2408,2411,2414,2417,2420,2423,2426,2429,2432,2435,2438,2441,2444],{"title":1498,"path":2349,"stem":2350,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fcreate-use-async-data","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fcreate-use-async-data",{"title":1502,"path":2352,"stem":2353,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fcreate-use-fetch","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fcreate-use-fetch",{"title":511,"path":2355,"stem":2356,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fon-prehydrate","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fon-prehydrate",{"title":1509,"path":2358,"stem":2359,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-announcer","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-announcer",{"title":515,"path":2361,"stem":2362,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-app-config","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-app-config",{"title":519,"path":2364,"stem":2365,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-async-data","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-async-data",{"title":523,"path":2367,"stem":2368,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-cookie","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-cookie",{"title":527,"path":2370,"stem":2371,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-error","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-error",{"title":531,"path":2373,"stem":2374,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-fetch","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-fetch",{"title":535,"path":2376,"stem":2377,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-head","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-head",{"title":539,"path":2379,"stem":2380,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-head-safe","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-head-safe",{"title":543,"path":2382,"stem":2383,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-hydration","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-hydration",{"title":1537,"path":2385,"stem":2386,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-layout","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-layout",{"title":547,"path":2388,"stem":2389,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-lazy-async-data","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-lazy-async-data",{"title":551,"path":2391,"stem":2392,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-lazy-fetch","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-lazy-fetch",{"title":555,"path":2394,"stem":2395,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-loading-indicator","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-loading-indicator",{"title":559,"path":2397,"stem":2398,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-nuxt-app","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-nuxt-app",{"title":563,"path":2400,"stem":2401,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-nuxt-data","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-nuxt-data",{"title":567,"path":2403,"stem":2404,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-preview-mode","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-preview-mode",{"title":571,"path":2406,"stem":2407,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-request-event","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-request-event",{"title":575,"path":2409,"stem":2410,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-request-fetch","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-request-fetch",{"title":579,"path":2412,"stem":2413,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-request-header","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-request-header",{"title":583,"path":2415,"stem":2416,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-request-headers","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-request-headers",{"title":587,"path":2418,"stem":2419,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-request-url","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-request-url",{"title":591,"path":2421,"stem":2422,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-response-header","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-response-header",{"title":595,"path":2424,"stem":2425,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-route","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-route",{"title":599,"path":2427,"stem":2428,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-route-announcer","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-route-announcer",{"title":603,"path":2430,"stem":2431,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-router","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-router",{"title":607,"path":2433,"stem":2434,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-runtime-config","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-runtime-config",{"title":611,"path":2436,"stem":2437,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-runtime-hook","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-runtime-hook",{"title":615,"path":2439,"stem":2440,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-seo-meta","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-seo-meta",{"title":619,"path":2442,"stem":2443,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-server-seo-meta","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-server-seo-meta",{"title":623,"path":2445,"stem":2446,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-state","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-state",{"title":627,"titleTemplate":628,"icon":629,"path":2448,"stem":2449,"children":2450,"page":108},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils","docs\u002F5.x\u002F4.api\u002F3.utils",[2451,2454,2457,2460,2463,2466,2469,2472,2475,2478,2481,2484,2487,2490,2493,2496,2499,2502,2505,2508,2511,2514,2517,2520,2523,2526,2529,2532,2535],{"title":634,"path":2452,"stem":2453,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fdollarfetch","docs\u002F5.x\u002F4.api\u002F3.utils\u002F$fetch",{"title":638,"path":2455,"stem":2456,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fabort-navigation","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fabort-navigation",{"title":642,"path":2458,"stem":2459,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fadd-route-middleware","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fadd-route-middleware",{"title":646,"path":2461,"stem":2462,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fcall-once","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fcall-once",{"title":650,"path":2464,"stem":2465,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fclear-error","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fclear-error",{"title":654,"path":2467,"stem":2468,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fclear-nuxt-data","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fclear-nuxt-data",{"title":658,"path":2470,"stem":2471,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fclear-nuxt-state","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fclear-nuxt-state",{"title":662,"path":2473,"stem":2474,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fcreate-error","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fcreate-error",{"title":666,"path":2476,"stem":2477,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fdefine-lazy-hydration-component","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fdefine-lazy-hydration-component",{"title":670,"path":2479,"stem":2480,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fdefine-nuxt-component","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fdefine-nuxt-component",{"title":674,"path":2482,"stem":2483,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fdefine-nuxt-plugin","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fdefine-nuxt-plugin",{"title":678,"path":2485,"stem":2486,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fdefine-nuxt-route-middleware","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fdefine-nuxt-route-middleware",{"title":682,"path":2488,"stem":2489,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fdefine-page-meta","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fdefine-page-meta",{"title":686,"path":2491,"stem":2492,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fdefine-route-rules","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fdefine-route-rules",{"title":690,"path":2494,"stem":2495,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fnavigate-to","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fnavigate-to",{"title":694,"path":2497,"stem":2498,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fon-before-route-leave","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fon-before-route-leave",{"title":698,"path":2500,"stem":2501,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fon-before-route-update","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fon-before-route-update",{"title":702,"path":2503,"stem":2504,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fon-nuxt-ready","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fon-nuxt-ready",{"title":706,"path":2506,"stem":2507,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fprefetch-components","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fprefetch-components",{"title":710,"path":2509,"stem":2510,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fpreload-components","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fpreload-components",{"title":714,"path":2512,"stem":2513,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fpreload-route-components","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fpreload-route-components",{"title":718,"path":2515,"stem":2516,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fprerender-routes","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fprerender-routes",{"title":722,"path":2518,"stem":2519,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Frefresh-cookie","docs\u002F5.x\u002F4.api\u002F3.utils\u002Frefresh-cookie",{"title":726,"path":2521,"stem":2522,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Frefresh-nuxt-data","docs\u002F5.x\u002F4.api\u002F3.utils\u002Frefresh-nuxt-data",{"title":730,"path":2524,"stem":2525,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Freload-nuxt-app","docs\u002F5.x\u002F4.api\u002F3.utils\u002Freload-nuxt-app",{"title":734,"path":2527,"stem":2528,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fset-page-layout","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fset-page-layout",{"title":738,"path":2530,"stem":2531,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fset-response-status","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fset-response-status",{"title":742,"path":2533,"stem":2534,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fshow-error","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fshow-error",{"title":746,"path":2536,"stem":2537,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fupdate-app-config","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fupdate-app-config",{"title":750,"titleTemplate":751,"icon":752,"path":2539,"stem":2540,"children":2541,"page":108},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands","docs\u002F5.x\u002F4.api\u002F4.commands",[2542,2545,2548,2551,2554,2557,2560,2563,2566,2569,2572,2575,2578,2581,2584,2587],{"title":757,"path":2543,"stem":2544,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fadd","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fadd",{"title":761,"path":2546,"stem":2547,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fanalyze","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fanalyze",{"title":765,"path":2549,"stem":2550,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fbuild","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fbuild",{"title":769,"path":2552,"stem":2553,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fbuild-module","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fbuild-module",{"title":773,"path":2555,"stem":2556,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fcleanup","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fcleanup",{"title":777,"path":2558,"stem":2559,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fdev","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fdev",{"title":781,"path":2561,"stem":2562,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fdevtools","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fdevtools",{"title":785,"path":2564,"stem":2565,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fgenerate","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fgenerate",{"title":789,"path":2567,"stem":2568,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Finfo","docs\u002F5.x\u002F4.api\u002F4.commands\u002Finfo",{"title":793,"path":2570,"stem":2571,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Finit","docs\u002F5.x\u002F4.api\u002F4.commands\u002Finit",{"title":797,"path":2573,"stem":2574,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fmodule","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fmodule",{"title":801,"path":2576,"stem":2577,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fprepare","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fprepare",{"title":805,"path":2579,"stem":2580,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fpreview","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fpreview",{"title":809,"path":2582,"stem":2583,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Ftest","docs\u002F5.x\u002F4.api\u002F4.commands\u002Ftest",{"title":813,"path":2585,"stem":2586,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Ftypecheck","docs\u002F5.x\u002F4.api\u002F4.commands\u002Ftypecheck",{"title":817,"path":2588,"stem":2589,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fupgrade","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fupgrade",{"title":415,"titleTemplate":821,"icon":822,"path":2591,"stem":2592,"children":2593,"page":108},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit","docs\u002F5.x\u002F4.api\u002F5.kit",[2594,2597,2600,2603,2606,2609,2612,2615,2618,2621,2624,2627,2630,2633,2636,2639,2642,2645,2648],{"title":276,"path":2595,"stem":2596,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fmodules","docs\u002F5.x\u002F4.api\u002F5.kit\u002F1.modules",{"title":403,"path":2598,"stem":2599,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fruntime-config","docs\u002F5.x\u002F4.api\u002F5.kit\u002F10.runtime-config",{"title":833,"path":2601,"stem":2602,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Ftemplates","docs\u002F5.x\u002F4.api\u002F5.kit\u002F10.templates",{"title":1757,"path":2604,"stem":2605,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fapp-config","docs\u002F5.x\u002F4.api\u002F5.kit\u002F11.app-config",{"title":837,"path":2607,"stem":2608,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fnitro","docs\u002F5.x\u002F4.api\u002F5.kit\u002F12.nitro",{"title":841,"path":2610,"stem":2611,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fresolving","docs\u002F5.x\u002F4.api\u002F5.kit\u002F13.resolving",{"title":845,"path":2613,"stem":2614,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Flogging","docs\u002F5.x\u002F4.api\u002F5.kit\u002F14.logging",{"title":849,"path":2616,"stem":2617,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fbuilder","docs\u002F5.x\u002F4.api\u002F5.kit\u002F15.builder",{"title":853,"path":2619,"stem":2620,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fexamples","docs\u002F5.x\u002F4.api\u002F5.kit\u002F16.examples",{"title":84,"path":2622,"stem":2623,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Flayers","docs\u002F5.x\u002F4.api\u002F5.kit\u002F17.layers",{"title":860,"path":2625,"stem":2626,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fprogrammatic","docs\u002F5.x\u002F4.api\u002F5.kit\u002F2.programmatic",{"title":864,"path":2628,"stem":2629,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fcompatibility","docs\u002F5.x\u002F4.api\u002F5.kit\u002F3.compatibility",{"title":268,"path":2631,"stem":2632,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fautoimports","docs\u002F5.x\u002F4.api\u002F5.kit\u002F4.autoimports",{"title":438,"path":2634,"stem":2635,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fcomponents","docs\u002F5.x\u002F4.api\u002F5.kit\u002F5.components",{"title":874,"path":2637,"stem":2638,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fcontext","docs\u002F5.x\u002F4.api\u002F5.kit\u002F6.context",{"title":878,"path":2640,"stem":2641,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fpages","docs\u002F5.x\u002F4.api\u002F5.kit\u002F7.pages",{"title":882,"path":2643,"stem":2644,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Flayout","docs\u002F5.x\u002F4.api\u002F5.kit\u002F8.layout",{"title":886,"path":2646,"stem":2647,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fhead","docs\u002F5.x\u002F4.api\u002F5.kit\u002F9.head",{"title":890,"path":2649,"stem":2650,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fplugins","docs\u002F5.x\u002F4.api\u002F5.kit\u002F9.plugins",{"title":894,"titleTemplate":6,"icon":895,"path":2652,"stem":2653,"children":2654,"page":108},"\u002Fdocs\u002F5.x\u002Fapi\u002Fadvanced","docs\u002F5.x\u002F4.api\u002F6.advanced",[2655,2658],{"title":411,"path":2656,"stem":2657,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fadvanced\u002Fhooks","docs\u002F5.x\u002F4.api\u002F6.advanced\u002F1.hooks",{"title":903,"path":2659,"stem":2660,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fadvanced\u002Fimport-meta","docs\u002F5.x\u002F4.api\u002F6.advanced\u002F2.import-meta",{"title":907,"path":2662,"stem":2663,"titleTemplate":910,"icon":32},"\u002Fdocs\u002F5.x\u002Fapi\u002Fnuxt-config","docs\u002F5.x\u002F4.api\u002F6.nuxt-config",{"title":853,"titleTemplate":912,"icon":913,"path":2665,"stem":2666,"children":2667,"page":108},"\u002Fdocs\u002F5.x\u002Fexamples","docs\u002F5.x\u002F4.examples",[2668,2671,2690,2703,2734],{"title":918,"path":2669,"stem":2670,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fhello-world","docs\u002F5.x\u002F4.examples\u002F0.hello-world",{"title":399,"path":2672,"stem":2673,"children":2674,"page":108},"\u002Fdocs\u002F5.x\u002Fexamples\u002Ffeatures","docs\u002F5.x\u002F4.examples\u002F1.features",[2675,2678,2681,2684,2687],{"title":926,"path":2676,"stem":2677,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Ffeatures\u002Fauto-imports","docs\u002F5.x\u002F4.examples\u002F1.features\u002F1.auto-imports",{"title":64,"path":2679,"stem":2680,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Ffeatures\u002Fdata-fetching","docs\u002F5.x\u002F4.examples\u002F1.features\u002F2.data-fetching",{"title":69,"path":2682,"stem":2683,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Ffeatures\u002Fstate-management","docs\u002F5.x\u002F4.examples\u002F1.features\u002F3.state-management",{"title":936,"path":2685,"stem":2686,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Ffeatures\u002Fmeta-tags","docs\u002F5.x\u002F4.examples\u002F1.features\u002F4.meta-tags",{"title":940,"path":2688,"stem":2689,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Ffeatures\u002Flayouts","docs\u002F5.x\u002F4.examples\u002F1.features\u002F5.layouts",{"title":49,"path":2691,"stem":2692,"children":2693,"page":108},"\u002Fdocs\u002F5.x\u002Fexamples\u002Frouting","docs\u002F5.x\u002F4.examples\u002F2.routing",[2694,2697,2700],{"title":948,"path":2695,"stem":2696,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Frouting\u002Fmiddleware","docs\u002F5.x\u002F4.examples\u002F2.routing\u002Fmiddleware",{"title":878,"path":2698,"stem":2699,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Frouting\u002Fpages","docs\u002F5.x\u002F4.examples\u002F2.routing\u002Fpages",{"title":955,"path":2701,"stem":2702,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Frouting\u002Funiversal-router","docs\u002F5.x\u002F4.examples\u002F2.routing\u002Funiversal-router",{"title":894,"path":2704,"stem":2705,"children":2706,"page":108},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fadvanced","docs\u002F5.x\u002F4.examples\u002F4.advanced",[2707,2710,2713,2716,2719,2722,2725,2728,2731],{"title":84,"path":2708,"stem":2709,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fadvanced\u002Fconfig-extends","docs\u002F5.x\u002F4.examples\u002F4.advanced\u002Fconfig-extends",{"title":74,"path":2711,"stem":2712,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fadvanced\u002Ferror-handling","docs\u002F5.x\u002F4.examples\u002F4.advanced\u002Ferror-handling",{"title":969,"path":2714,"stem":2715,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fadvanced\u002Fjsx","docs\u002F5.x\u002F4.examples\u002F4.advanced\u002Fjsx",{"title":973,"path":2717,"stem":2718,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fadvanced\u002Flocale","docs\u002F5.x\u002F4.examples\u002F4.advanced\u002Flocale",{"title":977,"path":2720,"stem":2721,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fadvanced\u002Fmodule-extend-pages","docs\u002F5.x\u002F4.examples\u002F4.advanced\u002Fmodule-extend-pages",{"title":981,"path":2723,"stem":2724,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fadvanced\u002Fteleport","docs\u002F5.x\u002F4.examples\u002F4.advanced\u002Fteleport",{"title":99,"path":2726,"stem":2727,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fadvanced\u002Ftesting","docs\u002F5.x\u002F4.examples\u002F4.advanced\u002Ftesting",{"title":523,"path":2729,"stem":2730,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fadvanced\u002Fuse-cookie","docs\u002F5.x\u002F4.examples\u002F4.advanced\u002Fuse-cookie",{"title":991,"path":2732,"stem":2733,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fadvanced\u002Fuse-custom-fetch-composable","docs\u002F5.x\u002F4.examples\u002F4.advanced\u002Fuse-custom-fetch-composable",{"title":995,"path":2735,"stem":2736,"children":2737,"page":108},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fexperimental","docs\u002F5.x\u002F4.examples\u002F7.experimental",[2738],{"title":1000,"path":2739,"stem":2740,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fexperimental\u002Fwasm","docs\u002F5.x\u002F4.examples\u002F7.experimental\u002Fwasm",{"title":1004,"titleTemplate":1005,"icon":1006,"path":2742,"stem":2743,"children":2744,"page":108},"\u002Fdocs\u002F5.x\u002Fcommunity","docs\u002F5.x\u002F5.community",[2745,2748,2751,2754,2757,2760],{"title":1011,"path":2746,"stem":2747,"titleTemplate":6,"icon":1014},"\u002Fdocs\u002F5.x\u002Fcommunity\u002Fgetting-help","docs\u002F5.x\u002F5.community\u002F2.getting-help",{"title":1016,"path":2749,"stem":2750,"titleTemplate":6,"icon":1019},"\u002Fdocs\u002F5.x\u002Fcommunity\u002Freporting-bugs","docs\u002F5.x\u002F5.community\u002F3.reporting-bugs",{"title":1021,"path":2752,"stem":2753,"titleTemplate":6,"icon":1024},"\u002Fdocs\u002F5.x\u002Fcommunity\u002Fcontribution","docs\u002F5.x\u002F5.community\u002F4.contribution",{"title":1026,"path":2755,"stem":2756,"titleTemplate":6,"icon":1029},"\u002Fdocs\u002F5.x\u002Fcommunity\u002Fframework-contribution","docs\u002F5.x\u002F5.community\u002F5.framework-contribution",{"title":1031,"path":2758,"stem":2759,"titleTemplate":6,"icon":1034},"\u002Fdocs\u002F5.x\u002Fcommunity\u002Froadmap","docs\u002F5.x\u002F5.community\u002F6.roadmap",{"title":1036,"path":2761,"stem":2762,"titleTemplate":6,"icon":1039},"\u002Fdocs\u002F5.x\u002Fcommunity\u002Fchangelog","docs\u002F5.x\u002F5.community\u002F7.changelog",{"title":1041,"titleTemplate":1042,"icon":1043,"path":2764,"stem":2765,"children":2766,"page":108},"\u002Fdocs\u002F5.x\u002Fbridge","docs\u002F5.x\u002F6.bridge",[2767,2770,2773,2776,2779,2782,2785,2788,2791,2794],{"title":1048,"path":2768,"stem":2769,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fbridge\u002Foverview","docs\u002F5.x\u002F6.bridge\u002F1.overview",{"title":29,"path":2771,"stem":2772,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fbridge\u002Fconfiguration","docs\u002F5.x\u002F6.bridge\u002F10.configuration",{"title":280,"path":2774,"stem":2775,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fbridge\u002Ftypescript","docs\u002F5.x\u002F6.bridge\u002F2.typescript",{"title":1058,"path":2777,"stem":2778,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fbridge\u002Fbridge-composition-api","docs\u002F5.x\u002F6.bridge\u002F3.bridge-composition-api",{"title":1062,"path":2780,"stem":2781,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fbridge\u002Fplugins-and-middleware","docs\u002F5.x\u002F6.bridge\u002F4.plugins-and-middleware",{"title":1066,"path":2783,"stem":2784,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fbridge\u002Fnuxt3-compatible-api","docs\u002F5.x\u002F6.bridge\u002F5.nuxt3-compatible-api",{"title":936,"path":2786,"stem":2787,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fbridge\u002Fmeta","docs\u002F5.x\u002F6.bridge\u002F6.meta",{"title":403,"path":2789,"stem":2790,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fbridge\u002Fruntime-config","docs\u002F5.x\u002F6.bridge\u002F7.runtime-config",{"title":837,"path":2792,"stem":2793,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fbridge\u002Fnitro","docs\u002F5.x\u002F6.bridge\u002F8.nitro",{"title":1079,"path":2795,"stem":2796,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fbridge\u002Fvite","docs\u002F5.x\u002F6.bridge\u002F9.vite",{"title":1083,"titleTemplate":1084,"icon":107,"path":2798,"stem":2799,"children":2800,"page":108},"\u002Fdocs\u002F5.x\u002Fmigration","docs\u002F5.x\u002F7.migration",[2801,2804,2807,2810,2813,2816,2819,2822,2825,2828,2831],{"title":1048,"path":2802,"stem":2803,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fmigration\u002Foverview","docs\u002F5.x\u002F7.migration\u002F1.overview",{"title":1092,"path":2805,"stem":2806,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fmigration\u002Fbundling","docs\u002F5.x\u002F7.migration\u002F10.bundling",{"title":79,"path":2808,"stem":2809,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fmigration\u002Fserver","docs\u002F5.x\u002F7.migration\u002F11.server",{"title":29,"path":2811,"stem":2812,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fmigration\u002Fconfiguration","docs\u002F5.x\u002F7.migration\u002F2.configuration",{"title":276,"path":2814,"stem":2815,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fmigration\u002Fmodule-authors","docs\u002F5.x\u002F7.migration\u002F20.module-authors",{"title":926,"path":2817,"stem":2818,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fmigration\u002Fauto-imports","docs\u002F5.x\u002F7.migration\u002F3.auto-imports",{"title":936,"path":2820,"stem":2821,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fmigration\u002Fmeta","docs\u002F5.x\u002F7.migration\u002F4.meta",{"title":1062,"path":2823,"stem":2824,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fmigration\u002Fplugins-and-middleware","docs\u002F5.x\u002F7.migration\u002F5.plugins-and-middleware",{"title":1114,"path":2826,"stem":2827,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fmigration\u002Fpages-and-layouts","docs\u002F5.x\u002F7.migration\u002F6.pages-and-layouts",{"title":1118,"path":2829,"stem":2830,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fmigration\u002Fcomponent-options","docs\u002F5.x\u002F7.migration\u002F7.component-options",{"title":403,"path":2832,"stem":2833,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fmigration\u002Fruntime-config","docs\u002F5.x\u002F7.migration\u002F8.runtime-config",{"title":2835,"icon":2836,"path":2837,"stem":2838,"children":2839,"page":108},"Blog","i-lucide-newspaper","\u002Fblog","blog",[2840,2844,2848,2852,2856,2860,2864,2868,2872,2876,2880,2884,2888,2892,2896,2900,2904,2908,2912,2916,2920,2924,2928,2932,2936,2940,2944,2948,2952,2956,2960,2964,2968,2972,2976,2980,2984,2988,2992,2996,3000,3004,3008,3012,3016,3020,3024,3028,3032,3036],{"title":2841,"path":2842,"stem":2843},"Announcing 3.0","\u002Fblog\u002Fv3","blog\u002F1.v3",{"title":2845,"path":2846,"stem":2847},"Nuxt 3.3","\u002Fblog\u002Fv3-3","blog\u002F10.v3-3",{"title":2849,"path":2850,"stem":2851},"Nuxt 3.4","\u002Fblog\u002Fv3-4","blog\u002F11.v3-4",{"title":2853,"path":2854,"stem":2855},"Nuxt 3.5","\u002Fblog\u002Fv3-5","blog\u002F12.v3-5",{"title":2857,"path":2858,"stem":2859},"Nuxt 3.6","\u002Fblog\u002Fv3-6","blog\u002F13.v3-6",{"title":2861,"path":2862,"stem":2863},"Nuxt on the Edge","\u002Fblog\u002Fnuxt-on-the-edge","blog\u002F14.nuxt-on-the-edge",{"title":2865,"path":2866,"stem":2867},"Nuxt 3.7","\u002Fblog\u002Fv3-7","blog\u002F15.v3-7",{"title":2869,"path":2870,"stem":2871},"A New Website","\u002Fblog\u002Fnew-website","blog\u002F16.new-website",{"title":2873,"path":2874,"stem":2875},"Nuxt 3.8","\u002Fblog\u002Fv3-8","blog\u002F17.v3-8",{"title":2877,"path":2878,"stem":2879},"Nuxt DevTools v1.0","\u002Fblog\u002Fnuxt-devtools-v1-0","blog\u002F18.nuxt-devtools-v1-0",{"title":2881,"path":2882,"stem":2883},"Nuxt 3.9","\u002Fblog\u002Fv3-9","blog\u002F19.v3-9",{"title":2885,"path":2886,"stem":2887},"Nuxt: A vision for 2023","\u002Fblog\u002Fvision-2023","blog\u002F2.vision-2023",{"title":2889,"path":2890,"stem":2891},"Nuxt 3.10","\u002Fblog\u002Fv3-10","blog\u002F20.v3-10",{"title":2893,"path":2894,"stem":2895},"The Evolution of Shiki v1.0","\u002Fblog\u002Fshiki-v1","blog\u002F21.shiki-v1",{"title":2897,"path":2898,"stem":2899},"Nuxt 3.11","\u002Fblog\u002Fv3-11","blog\u002F22.v3-11",{"title":2901,"path":2902,"stem":2903},"Nuxt: Looking forward","\u002Fblog\u002Flooking-forward-2024","blog\u002F23.looking-forward-2024",{"title":2905,"path":2906,"stem":2907},"Refreshed Nuxt ESLint Integrations","\u002Fblog\u002Feslint-module","blog\u002F24.eslint-module",{"title":2909,"path":2910,"stem":2911},"Nuxt 3.12","\u002Fblog\u002Fv3-12","blog\u002F25.v3-12",{"title":2913,"path":2914,"stem":2915},"Introducing Nuxt Scripts","\u002Fblog\u002Fnuxt-scripts","blog\u002F26.nuxt-scripts",{"title":2917,"path":2918,"stem":2919},"Nuxt 3.13","\u002Fblog\u002Fv3-13","blog\u002F27.v3-13",{"title":2921,"path":2922,"stem":2923},"Nuxt 3.14","\u002Fblog\u002Fv3-14","blog\u002F27.v3-14",{"title":2925,"path":2926,"stem":2927},"Introducing Nuxt Icon v1","\u002Fblog\u002Fnuxt-icon-v1-0","blog\u002F29.nuxt-icon-v1-0",{"title":2929,"path":2930,"stem":2931},"Introducing Nuxt DevTools","\u002Fblog\u002Fintroducing-nuxt-devtools","blog\u002F3.introducing-nuxt-devtools",{"title":2933,"path":2934,"stem":2935},"Announcing Nuxt 3 Release Candidate","\u002Fblog\u002Fnuxt3-rc","blog\u002F3.nuxt3-rc",{"title":2937,"path":2938,"stem":2939},"Nuxt 3.15","\u002Fblog\u002Fv3-15","blog\u002F30.v3-15",{"title":2941,"path":2942,"stem":2943},"Nuxt 3.16","\u002Fblog\u002Fv3-16","blog\u002F31.v3-16",{"title":2945,"path":2946,"stem":2947},"Nuxt UI v3","\u002Fblog\u002Fnuxt-ui-v3","blog\u002F32.nuxt-ui-v3",{"title":2949,"path":2950,"stem":2951},"Nuxt 3.17","\u002Fblog\u002Fv3-17","blog\u002F33.v3-17",{"title":2953,"path":2954,"stem":2955},"Roadmap to v4","\u002Fblog\u002Froadmap-v4","blog\u002F34.roadmap-v4",{"title":2957,"path":2958,"stem":2959},"Building a Privacy-First Feedback Widget","\u002Fblog\u002Fbuilding-a-feedback-widget","blog\u002F35.building-a-feedback-widget",{"title":2961,"path":2962,"stem":2963},"Announcing Nuxt 4.0","\u002Fblog\u002Fv4","blog\u002F36.v4",{"title":2965,"path":2966,"stem":2967},"Nuxt 3.18","\u002Fblog\u002Fv3-18","blog\u002F37.v3-18",{"title":2969,"path":2970,"stem":2971},"Nuxt 4.1","\u002Fblog\u002Fv4-1","blog\u002F38.v4-1",{"title":2973,"path":2974,"stem":2975},"Nuxt UI v4","\u002Fblog\u002Fnuxt-ui-v4","blog\u002F39.nuxt-ui-v4",{"title":2977,"path":2978,"stem":2979},"Nuxt 2 End-of-Life (EOL)","\u002Fblog\u002Fnuxt2-eol","blog\u002F4.nuxt2-eol",{"title":2981,"path":2982,"stem":2983},"Introducing Nuxt 3 Beta","\u002Fblog\u002Fnuxt3-beta","blog\u002F4.nuxt3-beta",{"title":2985,"path":2986,"stem":2987},"Building an MCP Server for Nuxt","\u002Fblog\u002Fbuilding-nuxt-mcp","blog\u002F40.building-nuxt-mcp",{"title":2989,"path":2990,"stem":2991},"Nuxt 4.2","\u002Fblog\u002Fv4-2","blog\u002F40.v4-2",{"title":2993,"path":2994,"stem":2995},"Nuxt Image v2","\u002Fblog\u002Fnuxt-image-v2","blog\u002F41.nuxt-image-v2",{"title":2997,"path":2998,"stem":2999},"Nuxt 4.3","\u002Fblog\u002Fv4-3","blog\u002F42.v4-3",{"title":3001,"path":3002,"stem":3003},"Nuxt 4.4","\u002Fblog\u002Fv4-4","blog\u002F43.v4-4",{"title":3005,"path":3006,"stem":3007},"Introducing the Nuxt Agent","\u002Fblog\u002Fintroducing-nuxt-agent","blog\u002F44.introducing-nuxt-agent",{"title":3009,"path":3010,"stem":3011},"Meet Nuxi","\u002Fblog\u002Fmeet-nuxi","blog\u002F45.meet-nuxi",{"title":3013,"path":3014,"stem":3015},"Nuxt 4.5","\u002Fblog\u002Fv4-5","blog\u002F46.v4-5",{"title":3017,"path":3018,"stem":3019},"Nuxt Security Patch Releases","\u002Fblog\u002Fv4-5-security","blog\u002F47.v4-5-security",{"title":3021,"path":3022,"stem":3023},"Going Full Static","\u002Fblog\u002Fgoing-full-static","blog\u002F5.going-full-static",{"title":3025,"path":3026,"stem":3027},"Introducing Smart Prefetching","\u002Fblog\u002Fintroducing-smart-prefetching","blog\u002F6.introducing-smart-prefetching",{"title":3029,"path":3030,"stem":3031},"Understanding how fetch works in Nuxt 2.12","\u002Fblog\u002Funderstanding-how-fetch-works-in-nuxt-2-12","blog\u002F7.understanding-how-fetch-works-in-nuxt-2-12",{"title":3033,"path":3034,"stem":3035},"Nuxt 2 Static Improvements","\u002Fblog\u002Fnuxt-static-improvements","blog\u002F8.nuxt-static-improvements",{"title":3037,"path":3038,"stem":3039},"Nuxt 2: From Terminal to Browser","\u002Fblog\u002Fnuxtjs-from-terminal-to-browser","blog\u002F9.nuxtjs-from-terminal-to-browser",{"name":3041,"description":3042,"repo":3043,"npm":3044,"icon":3045,"github":3046,"website":3046,"learn_more":3047,"category":3048,"type":3049,"maintainers":3050,"compatibility":3056,"generatedAt":3059,"contributors":3060,"stats":3080,"readme":3088},"authorization","Manage permissions inside the app and the server.","barbapapazes\u002Fnuxt-authorization","nuxt-authorization","","https:\u002F\u002Fgithub.com\u002Fbarbapapazes\u002Fnuxt-authorization","https:\u002F\u002Fsoubiran.dev\u002Fposts\u002Fnuxt-going-full-stack-how-to-handle-authorization","Security","3rd-party",[3051],{"name":3052,"github":3053,"twitter":3054,"bluesky":3055},"Estéban","barbapapazes","soubiran_","soubiran.dev",{"nuxt":3057,"requires":3058},">=3.0.0",{},"2026-08-08T09:34:04.595Z",[3061,3065,3069,3073,3076],{"id":3062,"username":3063,"contributions":3064},45267552,"Barbapapazes",60,{"id":3066,"username":3067,"contributions":3068},41266342,"zAlweNy26",3,{"id":3070,"username":3071,"contributions":3072},7252657,"maartenvanhunsel",2,{"id":3074,"username":3075,"contributions":3072},343392,"madc",{"id":3077,"username":3078,"contributions":3079},5769861,"stanislav-janu",1,{"version":3081,"downloads":3082,"stars":3083,"watchers":3083,"forks":3084,"defaultBranch":3085,"publishedAt":3086,"createdAt":3087},"0.3.5",17543,359,13,"main",1752673833614,1718198976583,{"data":3089,"body":3091,"toc":7165},{"title":3090,"description":3045},"Nuxt Authorization",{"type":3092,"children":3093},"root",[3094,3101,3156,3161,3170,3185,3198,3204,3234,3240,3245,3287,3292,3298,3310,3317,3322,3335,3593,3606,3618,3847,3870,3888,3893,3906,3918,3923,4144,4149,4425,4430,4436,4463,4468,4481,4675,4720,4725,4824,4829,4835,4876,4888,4942,4950,5008,5019,5079,5086,5151,5162,5209,5216,5254,5259,5471,5512,5532,5549,5555,5560,5797,5808,5821,6026,6060,6251,6264,6391,6396,6466,6471,6509,6515,6534,6871,6876,7125,7131,7145,7150,7159],{"type":3095,"tag":3096,"props":3097,"children":3098},"element","h1",{"id":3044},[3099],{"type":3100,"value":3090},"text",{"type":3095,"tag":3102,"props":3103,"children":3104},"p",{},[3105,3118,3127,3136,3146],{"type":3095,"tag":3106,"props":3107,"children":3111},"a",{"href":3108,"rel":3109},"https:\u002F\u002Fnpmjs.com\u002Fpackage\u002Fnuxt-authorization",[3110],"nofollow",[3112],{"type":3095,"tag":3113,"props":3114,"children":3117},"img",{"alt":3115,"src":3116},"npm version","https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fv\u002Fnuxt-authorization\u002Flatest.svg?style=flat&colorA=020420&colorB=00DC82",[],{"type":3095,"tag":3106,"props":3119,"children":3121},{"href":3108,"rel":3120},[3110],[3122],{"type":3095,"tag":3113,"props":3123,"children":3126},{"alt":3124,"src":3125},"npm downloads","https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fdm\u002Fnuxt-authorization.svg?style=flat&colorA=020420&colorB=00DC82",[],{"type":3095,"tag":3106,"props":3128,"children":3130},{"href":3108,"rel":3129},[3110],[3131],{"type":3095,"tag":3113,"props":3132,"children":3135},{"alt":3133,"src":3134},"License","https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fl\u002Fnuxt-authorization.svg?style=flat&colorA=020420&colorB=00DC82",[],{"type":3095,"tag":3106,"props":3137,"children":3140},{"href":3138,"rel":3139},"https:\u002F\u002Fnuxt.com",[3110],[3141],{"type":3095,"tag":3113,"props":3142,"children":3145},{"alt":3143,"src":3144},"Nuxt","https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FNuxt-020420?logo=nuxt.js",[],{"type":3095,"tag":3106,"props":3147,"children":3150},{"href":3148,"rel":3149},"https:\u002F\u002Fpkg.pr.new\u002F~\u002FBarbapapazes\u002Fnuxt-authorization",[3110],[3151],{"type":3095,"tag":3113,"props":3152,"children":3155},{"alt":3153,"src":3154},"pkg.pr.new","https:\u002F\u002Fpkg.pr.new\u002Fbadge\u002FBarbapapazes\u002Fnuxt-authorization",[],{"type":3095,"tag":3102,"props":3157,"children":3158},{},[3159],{"type":3100,"value":3160},"Handle authorization with ease in both Nuxt and Nitro.",{"type":3095,"tag":3102,"props":3162,"children":3163},{},[3164],{"type":3095,"tag":3165,"props":3166,"children":3167},"em",{},[3168],{"type":3100,"value":3169},"This module does not implement ACL or RBAC. It provides low-level primitives that you can use to implement your own authorization logic.",{"type":3095,"tag":3171,"props":3172,"children":3173},"blockquote",{},[3174],{"type":3095,"tag":3102,"props":3175,"children":3176},{},[3177,3183],{"type":3095,"tag":3178,"props":3179,"children":3180},"span",{},[3181],{"type":3100,"value":3182},"!NOTE",{"type":3100,"value":3184},"\nIn the future, this module could be available as a Nitro module and a Nuxt module, but Nitro module are not yet ready.",{"type":3095,"tag":3102,"props":3186,"children":3187},{},[3188,3190,3196],{"type":3100,"value":3189},"To learn more about this module and which problem it solves, checkout my blog post about ",{"type":3095,"tag":3106,"props":3191,"children":3193},{"href":3047,"rel":3192},[3110],[3194],{"type":3100,"value":3195},"Authorization in Nuxt",{"type":3100,"value":3197},".",{"type":3095,"tag":3199,"props":3200,"children":3202},"h2",{"id":3201},"features",[3203],{"type":3100,"value":399},{"type":3095,"tag":3205,"props":3206,"children":3207},"ul",{},[3208,3214,3219,3224,3229],{"type":3095,"tag":3209,"props":3210,"children":3211},"li",{},[3212],{"type":3100,"value":3213},"⛰  Works on both the client (Nuxt) and the server (Nitro)",{"type":3095,"tag":3209,"props":3215,"children":3216},{},[3217],{"type":3100,"value":3218},"🌟  Write abilities once and use them everywhere",{"type":3095,"tag":3209,"props":3220,"children":3221},{},[3222],{"type":3100,"value":3223},"👨‍👩‍👧‍👦  Agnostic of the authentication layer",{"type":3095,"tag":3209,"props":3225,"children":3226},{},[3227],{"type":3100,"value":3228},"🫸  Use components to conditionally show part of the UI",{"type":3095,"tag":3209,"props":3230,"children":3231},{},[3232],{"type":3100,"value":3233},"💧  Primitives are can be accessed for a full customization",{"type":3095,"tag":3199,"props":3235,"children":3237},{"id":3236},"quick-setup",[3238],{"type":3100,"value":3239},"Quick Setup",{"type":3095,"tag":3102,"props":3241,"children":3242},{},[3243],{"type":3100,"value":3244},"Install the module to your Nuxt application with one command:",{"type":3095,"tag":3246,"props":3247,"children":3251},"pre",{"className":3248,"code":3249,"language":3250,"meta":3045,"style":3045},"language-bash shiki shiki-themes material-theme-lighter material-theme-lighter material-theme-palenight","npx nuxi module add nuxt-authorization\n","bash",[3252],{"type":3095,"tag":3253,"props":3254,"children":3255},"code",{"__ignoreMap":3045},[3256],{"type":3095,"tag":3178,"props":3257,"children":3259},{"class":3258,"line":3079},"line",[3260,3266,3272,3277,3282],{"type":3095,"tag":3178,"props":3261,"children":3263},{"style":3262},"--shiki-light:#E2931D;--shiki-default:#E2931D;--shiki-dark:#FFCB6B",[3264],{"type":3100,"value":3265},"npx",{"type":3095,"tag":3178,"props":3267,"children":3269},{"style":3268},"--shiki-light:#91B859;--shiki-default:#91B859;--shiki-dark:#C3E88D",[3270],{"type":3100,"value":3271}," nuxi",{"type":3095,"tag":3178,"props":3273,"children":3274},{"style":3268},[3275],{"type":3100,"value":3276}," module",{"type":3095,"tag":3178,"props":3278,"children":3279},{"style":3268},[3280],{"type":3100,"value":3281}," add",{"type":3095,"tag":3178,"props":3283,"children":3284},{"style":3268},[3285],{"type":3100,"value":3286}," nuxt-authorization\n",{"type":3095,"tag":3102,"props":3288,"children":3289},{},[3290],{"type":3100,"value":3291},"That's it! You can now use the module in your Nuxt app ✨",{"type":3095,"tag":3199,"props":3293,"children":3295},{"id":3294},"documentation",[3296],{"type":3100,"value":3297},"Documentation",{"type":3095,"tag":3171,"props":3299,"children":3300},{},[3301],{"type":3095,"tag":3102,"props":3302,"children":3303},{},[3304,3308],{"type":3095,"tag":3178,"props":3305,"children":3306},{},[3307],{"type":3100,"value":3182},{"type":3100,"value":3309},"\nYou can take a look at the playground to see the module in action.",{"type":3095,"tag":3311,"props":3312,"children":3314},"h3",{"id":3313},"setup",[3315],{"type":3100,"value":3316},"Setup",{"type":3095,"tag":3102,"props":3318,"children":3319},{},[3320],{"type":3100,"value":3321},"Before using the module and defining your first ability, you need to provide 2 resolvers. These functions are used internally to retrieve the user but you must implement them. This allows the module to be agnostic of the authentication layer.",{"type":3095,"tag":3102,"props":3323,"children":3324},{},[3325,3327,3333],{"type":3100,"value":3326},"For the Nuxt app, create a new plugin in ",{"type":3095,"tag":3253,"props":3328,"children":3330},{"className":3329},[],[3331],{"type":3100,"value":3332},"plugins\u002Fauthorization-resolver.ts",{"type":3100,"value":3334},":",{"type":3095,"tag":3246,"props":3336,"children":3340},{"className":3337,"code":3338,"language":3339,"meta":3045,"style":3045},"language-ts shiki shiki-themes material-theme-lighter material-theme-lighter material-theme-palenight","export default defineNuxtPlugin({\n  name: 'authorization-resolver',\n  parallel: true,\n  setup() {\n    return {\n      provide: {\n        authorization: {\n          resolveClientUser: () => {\n            \u002F\u002F Your logic to retrieve the user from the client\n          },\n        },\n      },\n    }\n  },\n})\n","ts",[3341],{"type":3095,"tag":3253,"props":3342,"children":3343},{"__ignoreMap":3045},[3344,3376,3409,3431,3450,3463,3480,3497,3525,3535,3544,3553,3562,3570,3579],{"type":3095,"tag":3178,"props":3345,"children":3346},{"class":3258,"line":3079},[3347,3353,3358,3364,3370],{"type":3095,"tag":3178,"props":3348,"children":3350},{"style":3349},"--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#39ADB5;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic",[3351],{"type":3100,"value":3352},"export",{"type":3095,"tag":3178,"props":3354,"children":3355},{"style":3349},[3356],{"type":3100,"value":3357}," default",{"type":3095,"tag":3178,"props":3359,"children":3361},{"style":3360},"--shiki-light:#6182B8;--shiki-default:#6182B8;--shiki-dark:#82AAFF",[3362],{"type":3100,"value":3363}," defineNuxtPlugin",{"type":3095,"tag":3178,"props":3365,"children":3367},{"style":3366},"--shiki-light:#90A4AE;--shiki-default:#90A4AE;--shiki-dark:#BABED8",[3368],{"type":3100,"value":3369},"(",{"type":3095,"tag":3178,"props":3371,"children":3373},{"style":3372},"--shiki-light:#39ADB5;--shiki-default:#39ADB5;--shiki-dark:#89DDFF",[3374],{"type":3100,"value":3375},"{\n",{"type":3095,"tag":3178,"props":3377,"children":3378},{"class":3258,"line":3072},[3379,3385,3389,3394,3399,3404],{"type":3095,"tag":3178,"props":3380,"children":3382},{"style":3381},"--shiki-light:#E53935;--shiki-default:#E53935;--shiki-dark:#F07178",[3383],{"type":3100,"value":3384},"  name",{"type":3095,"tag":3178,"props":3386,"children":3387},{"style":3372},[3388],{"type":3100,"value":3334},{"type":3095,"tag":3178,"props":3390,"children":3391},{"style":3372},[3392],{"type":3100,"value":3393}," '",{"type":3095,"tag":3178,"props":3395,"children":3396},{"style":3268},[3397],{"type":3100,"value":3398},"authorization-resolver",{"type":3095,"tag":3178,"props":3400,"children":3401},{"style":3372},[3402],{"type":3100,"value":3403},"'",{"type":3095,"tag":3178,"props":3405,"children":3406},{"style":3372},[3407],{"type":3100,"value":3408},",\n",{"type":3095,"tag":3178,"props":3410,"children":3411},{"class":3258,"line":3068},[3412,3417,3421,3427],{"type":3095,"tag":3178,"props":3413,"children":3414},{"style":3381},[3415],{"type":3100,"value":3416},"  parallel",{"type":3095,"tag":3178,"props":3418,"children":3419},{"style":3372},[3420],{"type":3100,"value":3334},{"type":3095,"tag":3178,"props":3422,"children":3424},{"style":3423},"--shiki-light:#FF5370;--shiki-default:#FF5370;--shiki-dark:#FF9CAC",[3425],{"type":3100,"value":3426}," true",{"type":3095,"tag":3178,"props":3428,"children":3429},{"style":3372},[3430],{"type":3100,"value":3408},{"type":3095,"tag":3178,"props":3432,"children":3434},{"class":3258,"line":3433},4,[3435,3440,3445],{"type":3095,"tag":3178,"props":3436,"children":3437},{"style":3381},[3438],{"type":3100,"value":3439},"  setup",{"type":3095,"tag":3178,"props":3441,"children":3442},{"style":3372},[3443],{"type":3100,"value":3444},"()",{"type":3095,"tag":3178,"props":3446,"children":3447},{"style":3372},[3448],{"type":3100,"value":3449}," {\n",{"type":3095,"tag":3178,"props":3451,"children":3453},{"class":3258,"line":3452},5,[3454,3459],{"type":3095,"tag":3178,"props":3455,"children":3456},{"style":3349},[3457],{"type":3100,"value":3458},"    return",{"type":3095,"tag":3178,"props":3460,"children":3461},{"style":3372},[3462],{"type":3100,"value":3449},{"type":3095,"tag":3178,"props":3464,"children":3466},{"class":3258,"line":3465},6,[3467,3472,3476],{"type":3095,"tag":3178,"props":3468,"children":3469},{"style":3381},[3470],{"type":3100,"value":3471},"      provide",{"type":3095,"tag":3178,"props":3473,"children":3474},{"style":3372},[3475],{"type":3100,"value":3334},{"type":3095,"tag":3178,"props":3477,"children":3478},{"style":3372},[3479],{"type":3100,"value":3449},{"type":3095,"tag":3178,"props":3481,"children":3483},{"class":3258,"line":3482},7,[3484,3489,3493],{"type":3095,"tag":3178,"props":3485,"children":3486},{"style":3381},[3487],{"type":3100,"value":3488},"        authorization",{"type":3095,"tag":3178,"props":3490,"children":3491},{"style":3372},[3492],{"type":3100,"value":3334},{"type":3095,"tag":3178,"props":3494,"children":3495},{"style":3372},[3496],{"type":3100,"value":3449},{"type":3095,"tag":3178,"props":3498,"children":3500},{"class":3258,"line":3499},8,[3501,3506,3510,3515,3521],{"type":3095,"tag":3178,"props":3502,"children":3503},{"style":3360},[3504],{"type":3100,"value":3505},"          resolveClientUser",{"type":3095,"tag":3178,"props":3507,"children":3508},{"style":3372},[3509],{"type":3100,"value":3334},{"type":3095,"tag":3178,"props":3511,"children":3512},{"style":3372},[3513],{"type":3100,"value":3514}," ()",{"type":3095,"tag":3178,"props":3516,"children":3518},{"style":3517},"--shiki-light:#9C3EDA;--shiki-default:#9C3EDA;--shiki-dark:#C792EA",[3519],{"type":3100,"value":3520}," =>",{"type":3095,"tag":3178,"props":3522,"children":3523},{"style":3372},[3524],{"type":3100,"value":3449},{"type":3095,"tag":3178,"props":3526,"children":3528},{"class":3258,"line":3527},9,[3529],{"type":3095,"tag":3178,"props":3530,"children":3532},{"style":3531},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#90A4AE;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic",[3533],{"type":3100,"value":3534},"            \u002F\u002F Your logic to retrieve the user from the client\n",{"type":3095,"tag":3178,"props":3536,"children":3538},{"class":3258,"line":3537},10,[3539],{"type":3095,"tag":3178,"props":3540,"children":3541},{"style":3372},[3542],{"type":3100,"value":3543},"          },\n",{"type":3095,"tag":3178,"props":3545,"children":3547},{"class":3258,"line":3546},11,[3548],{"type":3095,"tag":3178,"props":3549,"children":3550},{"style":3372},[3551],{"type":3100,"value":3552},"        },\n",{"type":3095,"tag":3178,"props":3554,"children":3556},{"class":3258,"line":3555},12,[3557],{"type":3095,"tag":3178,"props":3558,"children":3559},{"style":3372},[3560],{"type":3100,"value":3561},"      },\n",{"type":3095,"tag":3178,"props":3563,"children":3564},{"class":3258,"line":3084},[3565],{"type":3095,"tag":3178,"props":3566,"children":3567},{"style":3372},[3568],{"type":3100,"value":3569},"    }\n",{"type":3095,"tag":3178,"props":3571,"children":3573},{"class":3258,"line":3572},14,[3574],{"type":3095,"tag":3178,"props":3575,"children":3576},{"style":3372},[3577],{"type":3100,"value":3578},"  },\n",{"type":3095,"tag":3178,"props":3580,"children":3582},{"class":3258,"line":3581},15,[3583,3588],{"type":3095,"tag":3178,"props":3584,"children":3585},{"style":3372},[3586],{"type":3100,"value":3587},"}",{"type":3095,"tag":3178,"props":3589,"children":3590},{"style":3366},[3591],{"type":3100,"value":3592},")\n",{"type":3095,"tag":3102,"props":3594,"children":3595},{},[3596,3598,3604],{"type":3100,"value":3597},"This function is called every time you check for authorization on the client. It should return the user object or ",{"type":3095,"tag":3253,"props":3599,"children":3601},{"className":3600},[],[3602],{"type":3100,"value":3603},"null",{"type":3100,"value":3605}," if the user is not authenticated. It can by async.",{"type":3095,"tag":3102,"props":3607,"children":3608},{},[3609,3611,3617],{"type":3100,"value":3610},"For the Nitro server, create a new plugin in ",{"type":3095,"tag":3253,"props":3612,"children":3614},{"className":3613},[],[3615],{"type":3100,"value":3616},"server\u002Fplugins\u002Fauthorization-resolver.ts",{"type":3100,"value":3334},{"type":3095,"tag":3246,"props":3619,"children":3621},{"className":3337,"code":3620,"language":3339,"meta":3045,"style":3045},"export default defineNitroPlugin((nitroApp) => {\n  nitroApp.hooks.hook('request', async (event) => {\n    event.context.$authorization = {\n      resolveServerUser: () => {\n        \u002F\u002F Your logic to retrieve the user from the server\n      },\n    }\n  })\n})\n",[3622],{"type":3095,"tag":3253,"props":3623,"children":3624},{"__ignoreMap":3045},[3625,3668,3743,3778,3802,3810,3817,3824,3836],{"type":3095,"tag":3178,"props":3626,"children":3627},{"class":3258,"line":3079},[3628,3632,3636,3641,3645,3649,3655,3660,3664],{"type":3095,"tag":3178,"props":3629,"children":3630},{"style":3349},[3631],{"type":3100,"value":3352},{"type":3095,"tag":3178,"props":3633,"children":3634},{"style":3349},[3635],{"type":3100,"value":3357},{"type":3095,"tag":3178,"props":3637,"children":3638},{"style":3360},[3639],{"type":3100,"value":3640}," defineNitroPlugin",{"type":3095,"tag":3178,"props":3642,"children":3643},{"style":3366},[3644],{"type":3100,"value":3369},{"type":3095,"tag":3178,"props":3646,"children":3647},{"style":3372},[3648],{"type":3100,"value":3369},{"type":3095,"tag":3178,"props":3650,"children":3652},{"style":3651},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#90A4AE;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic",[3653],{"type":3100,"value":3654},"nitroApp",{"type":3095,"tag":3178,"props":3656,"children":3657},{"style":3372},[3658],{"type":3100,"value":3659},")",{"type":3095,"tag":3178,"props":3661,"children":3662},{"style":3517},[3663],{"type":3100,"value":3520},{"type":3095,"tag":3178,"props":3665,"children":3666},{"style":3372},[3667],{"type":3100,"value":3449},{"type":3095,"tag":3178,"props":3669,"children":3670},{"class":3258,"line":3072},[3671,3676,3680,3685,3689,3694,3698,3702,3707,3711,3716,3721,3726,3731,3735,3739],{"type":3095,"tag":3178,"props":3672,"children":3673},{"style":3366},[3674],{"type":3100,"value":3675},"  nitroApp",{"type":3095,"tag":3178,"props":3677,"children":3678},{"style":3372},[3679],{"type":3100,"value":3197},{"type":3095,"tag":3178,"props":3681,"children":3682},{"style":3366},[3683],{"type":3100,"value":3684},"hooks",{"type":3095,"tag":3178,"props":3686,"children":3687},{"style":3372},[3688],{"type":3100,"value":3197},{"type":3095,"tag":3178,"props":3690,"children":3691},{"style":3360},[3692],{"type":3100,"value":3693},"hook",{"type":3095,"tag":3178,"props":3695,"children":3696},{"style":3381},[3697],{"type":3100,"value":3369},{"type":3095,"tag":3178,"props":3699,"children":3700},{"style":3372},[3701],{"type":3100,"value":3403},{"type":3095,"tag":3178,"props":3703,"children":3704},{"style":3268},[3705],{"type":3100,"value":3706},"request",{"type":3095,"tag":3178,"props":3708,"children":3709},{"style":3372},[3710],{"type":3100,"value":3403},{"type":3095,"tag":3178,"props":3712,"children":3713},{"style":3372},[3714],{"type":3100,"value":3715},",",{"type":3095,"tag":3178,"props":3717,"children":3718},{"style":3517},[3719],{"type":3100,"value":3720}," async",{"type":3095,"tag":3178,"props":3722,"children":3723},{"style":3372},[3724],{"type":3100,"value":3725}," (",{"type":3095,"tag":3178,"props":3727,"children":3728},{"style":3651},[3729],{"type":3100,"value":3730},"event",{"type":3095,"tag":3178,"props":3732,"children":3733},{"style":3372},[3734],{"type":3100,"value":3659},{"type":3095,"tag":3178,"props":3736,"children":3737},{"style":3517},[3738],{"type":3100,"value":3520},{"type":3095,"tag":3178,"props":3740,"children":3741},{"style":3372},[3742],{"type":3100,"value":3449},{"type":3095,"tag":3178,"props":3744,"children":3745},{"class":3258,"line":3068},[3746,3751,3755,3760,3764,3769,3774],{"type":3095,"tag":3178,"props":3747,"children":3748},{"style":3366},[3749],{"type":3100,"value":3750},"    event",{"type":3095,"tag":3178,"props":3752,"children":3753},{"style":3372},[3754],{"type":3100,"value":3197},{"type":3095,"tag":3178,"props":3756,"children":3757},{"style":3366},[3758],{"type":3100,"value":3759},"context",{"type":3095,"tag":3178,"props":3761,"children":3762},{"style":3372},[3763],{"type":3100,"value":3197},{"type":3095,"tag":3178,"props":3765,"children":3766},{"style":3366},[3767],{"type":3100,"value":3768},"$authorization",{"type":3095,"tag":3178,"props":3770,"children":3771},{"style":3372},[3772],{"type":3100,"value":3773}," =",{"type":3095,"tag":3178,"props":3775,"children":3776},{"style":3372},[3777],{"type":3100,"value":3449},{"type":3095,"tag":3178,"props":3779,"children":3780},{"class":3258,"line":3433},[3781,3786,3790,3794,3798],{"type":3095,"tag":3178,"props":3782,"children":3783},{"style":3360},[3784],{"type":3100,"value":3785},"      resolveServerUser",{"type":3095,"tag":3178,"props":3787,"children":3788},{"style":3372},[3789],{"type":3100,"value":3334},{"type":3095,"tag":3178,"props":3791,"children":3792},{"style":3372},[3793],{"type":3100,"value":3514},{"type":3095,"tag":3178,"props":3795,"children":3796},{"style":3517},[3797],{"type":3100,"value":3520},{"type":3095,"tag":3178,"props":3799,"children":3800},{"style":3372},[3801],{"type":3100,"value":3449},{"type":3095,"tag":3178,"props":3803,"children":3804},{"class":3258,"line":3452},[3805],{"type":3095,"tag":3178,"props":3806,"children":3807},{"style":3531},[3808],{"type":3100,"value":3809},"        \u002F\u002F Your logic to retrieve the user from the server\n",{"type":3095,"tag":3178,"props":3811,"children":3812},{"class":3258,"line":3465},[3813],{"type":3095,"tag":3178,"props":3814,"children":3815},{"style":3372},[3816],{"type":3100,"value":3561},{"type":3095,"tag":3178,"props":3818,"children":3819},{"class":3258,"line":3482},[3820],{"type":3095,"tag":3178,"props":3821,"children":3822},{"style":3372},[3823],{"type":3100,"value":3569},{"type":3095,"tag":3178,"props":3825,"children":3826},{"class":3258,"line":3499},[3827,3832],{"type":3095,"tag":3178,"props":3828,"children":3829},{"style":3372},[3830],{"type":3100,"value":3831},"  }",{"type":3095,"tag":3178,"props":3833,"children":3834},{"style":3381},[3835],{"type":3100,"value":3592},{"type":3095,"tag":3178,"props":3837,"children":3838},{"class":3258,"line":3527},[3839,3843],{"type":3095,"tag":3178,"props":3840,"children":3841},{"style":3372},[3842],{"type":3100,"value":3587},{"type":3095,"tag":3178,"props":3844,"children":3845},{"style":3366},[3846],{"type":3100,"value":3592},{"type":3095,"tag":3171,"props":3848,"children":3849},{},[3850],{"type":3095,"tag":3102,"props":3851,"children":3852},{},[3853,3857,3859],{"type":3095,"tag":3178,"props":3854,"children":3855},{},[3856],{"type":3100,"value":3182},{"type":3100,"value":3858},"\nRead more about the ",{"type":3095,"tag":3106,"props":3860,"children":3863},{"href":3861,"rel":3862},"https:\u002F\u002Fh3.unjs.io\u002Fguide\u002Fevent#eventcontext",[3110],[3864],{"type":3095,"tag":3253,"props":3865,"children":3867},{"className":3866},[],[3868],{"type":3100,"value":3869},"event.context",{"type":3095,"tag":3102,"props":3871,"children":3872},{},[3873,3875,3880,3882,3887],{"type":3100,"value":3874},"This resolver is setup within the hook ",{"type":3095,"tag":3253,"props":3876,"children":3878},{"className":3877},[],[3879],{"type":3100,"value":3706},{"type":3100,"value":3881}," and receive the event. You can use it to retrieve the user from the session or the request. It should return the user object or ",{"type":3095,"tag":3253,"props":3883,"children":3885},{"className":3884},[],[3886],{"type":3100,"value":3603},{"type":3100,"value":3605},{"type":3095,"tag":3102,"props":3889,"children":3890},{},[3891],{"type":3100,"value":3892},"Generally, you use a plugin to fetch the user when the app starts and then store it. Resolver functions should only return the stored user and not fetch it again (otherwise, you could have severe performance issues).",{"type":3095,"tag":3894,"props":3895,"children":3897},"h4",{"id":3896},"example-with-nuxt-auth-utils",[3898,3900],{"type":3100,"value":3899},"Example with ",{"type":3095,"tag":3253,"props":3901,"children":3903},{"className":3902},[],[3904],{"type":3100,"value":3905},"nuxt-auth-utils",{"type":3095,"tag":3102,"props":3907,"children":3908},{},[3909,3911,3916],{"type":3100,"value":3910},"The module ",{"type":3095,"tag":3253,"props":3912,"children":3914},{"className":3913},[],[3915],{"type":3100,"value":3905},{"type":3100,"value":3917}," provides an authentication layer for Nuxt. If you use this module, you can use the following resolvers:",{"type":3095,"tag":3102,"props":3919,"children":3920},{},[3921],{"type":3100,"value":3922},"Nuxt plugin:",{"type":3095,"tag":3246,"props":3924,"children":3926},{"className":3337,"code":3925,"language":3339,"meta":3045,"style":3045},"export default defineNuxtPlugin({\n  name: 'authorization-resolver',\n  parallel: true,\n  setup() {\n    return {\n      provide: {\n        authorization: {\n          resolveClientUser: () => useUserSession().user.value,\n        },\n      },\n    }\n  },\n})\n",[3927],{"type":3095,"tag":3253,"props":3928,"children":3929},{"__ignoreMap":3045},[3930,3953,3980,3999,4014,4025,4040,4055,4105,4112,4119,4126,4133],{"type":3095,"tag":3178,"props":3931,"children":3932},{"class":3258,"line":3079},[3933,3937,3941,3945,3949],{"type":3095,"tag":3178,"props":3934,"children":3935},{"style":3349},[3936],{"type":3100,"value":3352},{"type":3095,"tag":3178,"props":3938,"children":3939},{"style":3349},[3940],{"type":3100,"value":3357},{"type":3095,"tag":3178,"props":3942,"children":3943},{"style":3360},[3944],{"type":3100,"value":3363},{"type":3095,"tag":3178,"props":3946,"children":3947},{"style":3366},[3948],{"type":3100,"value":3369},{"type":3095,"tag":3178,"props":3950,"children":3951},{"style":3372},[3952],{"type":3100,"value":3375},{"type":3095,"tag":3178,"props":3954,"children":3955},{"class":3258,"line":3072},[3956,3960,3964,3968,3972,3976],{"type":3095,"tag":3178,"props":3957,"children":3958},{"style":3381},[3959],{"type":3100,"value":3384},{"type":3095,"tag":3178,"props":3961,"children":3962},{"style":3372},[3963],{"type":3100,"value":3334},{"type":3095,"tag":3178,"props":3965,"children":3966},{"style":3372},[3967],{"type":3100,"value":3393},{"type":3095,"tag":3178,"props":3969,"children":3970},{"style":3268},[3971],{"type":3100,"value":3398},{"type":3095,"tag":3178,"props":3973,"children":3974},{"style":3372},[3975],{"type":3100,"value":3403},{"type":3095,"tag":3178,"props":3977,"children":3978},{"style":3372},[3979],{"type":3100,"value":3408},{"type":3095,"tag":3178,"props":3981,"children":3982},{"class":3258,"line":3068},[3983,3987,3991,3995],{"type":3095,"tag":3178,"props":3984,"children":3985},{"style":3381},[3986],{"type":3100,"value":3416},{"type":3095,"tag":3178,"props":3988,"children":3989},{"style":3372},[3990],{"type":3100,"value":3334},{"type":3095,"tag":3178,"props":3992,"children":3993},{"style":3423},[3994],{"type":3100,"value":3426},{"type":3095,"tag":3178,"props":3996,"children":3997},{"style":3372},[3998],{"type":3100,"value":3408},{"type":3095,"tag":3178,"props":4000,"children":4001},{"class":3258,"line":3433},[4002,4006,4010],{"type":3095,"tag":3178,"props":4003,"children":4004},{"style":3381},[4005],{"type":3100,"value":3439},{"type":3095,"tag":3178,"props":4007,"children":4008},{"style":3372},[4009],{"type":3100,"value":3444},{"type":3095,"tag":3178,"props":4011,"children":4012},{"style":3372},[4013],{"type":3100,"value":3449},{"type":3095,"tag":3178,"props":4015,"children":4016},{"class":3258,"line":3452},[4017,4021],{"type":3095,"tag":3178,"props":4018,"children":4019},{"style":3349},[4020],{"type":3100,"value":3458},{"type":3095,"tag":3178,"props":4022,"children":4023},{"style":3372},[4024],{"type":3100,"value":3449},{"type":3095,"tag":3178,"props":4026,"children":4027},{"class":3258,"line":3465},[4028,4032,4036],{"type":3095,"tag":3178,"props":4029,"children":4030},{"style":3381},[4031],{"type":3100,"value":3471},{"type":3095,"tag":3178,"props":4033,"children":4034},{"style":3372},[4035],{"type":3100,"value":3334},{"type":3095,"tag":3178,"props":4037,"children":4038},{"style":3372},[4039],{"type":3100,"value":3449},{"type":3095,"tag":3178,"props":4041,"children":4042},{"class":3258,"line":3482},[4043,4047,4051],{"type":3095,"tag":3178,"props":4044,"children":4045},{"style":3381},[4046],{"type":3100,"value":3488},{"type":3095,"tag":3178,"props":4048,"children":4049},{"style":3372},[4050],{"type":3100,"value":3334},{"type":3095,"tag":3178,"props":4052,"children":4053},{"style":3372},[4054],{"type":3100,"value":3449},{"type":3095,"tag":3178,"props":4056,"children":4057},{"class":3258,"line":3499},[4058,4062,4066,4070,4074,4079,4083,4087,4092,4096,4101],{"type":3095,"tag":3178,"props":4059,"children":4060},{"style":3360},[4061],{"type":3100,"value":3505},{"type":3095,"tag":3178,"props":4063,"children":4064},{"style":3372},[4065],{"type":3100,"value":3334},{"type":3095,"tag":3178,"props":4067,"children":4068},{"style":3372},[4069],{"type":3100,"value":3514},{"type":3095,"tag":3178,"props":4071,"children":4072},{"style":3517},[4073],{"type":3100,"value":3520},{"type":3095,"tag":3178,"props":4075,"children":4076},{"style":3360},[4077],{"type":3100,"value":4078}," useUserSession",{"type":3095,"tag":3178,"props":4080,"children":4081},{"style":3381},[4082],{"type":3100,"value":3444},{"type":3095,"tag":3178,"props":4084,"children":4085},{"style":3372},[4086],{"type":3100,"value":3197},{"type":3095,"tag":3178,"props":4088,"children":4089},{"style":3366},[4090],{"type":3100,"value":4091},"user",{"type":3095,"tag":3178,"props":4093,"children":4094},{"style":3372},[4095],{"type":3100,"value":3197},{"type":3095,"tag":3178,"props":4097,"children":4098},{"style":3366},[4099],{"type":3100,"value":4100},"value",{"type":3095,"tag":3178,"props":4102,"children":4103},{"style":3372},[4104],{"type":3100,"value":3408},{"type":3095,"tag":3178,"props":4106,"children":4107},{"class":3258,"line":3527},[4108],{"type":3095,"tag":3178,"props":4109,"children":4110},{"style":3372},[4111],{"type":3100,"value":3552},{"type":3095,"tag":3178,"props":4113,"children":4114},{"class":3258,"line":3537},[4115],{"type":3095,"tag":3178,"props":4116,"children":4117},{"style":3372},[4118],{"type":3100,"value":3561},{"type":3095,"tag":3178,"props":4120,"children":4121},{"class":3258,"line":3546},[4122],{"type":3095,"tag":3178,"props":4123,"children":4124},{"style":3372},[4125],{"type":3100,"value":3569},{"type":3095,"tag":3178,"props":4127,"children":4128},{"class":3258,"line":3555},[4129],{"type":3095,"tag":3178,"props":4130,"children":4131},{"style":3372},[4132],{"type":3100,"value":3578},{"type":3095,"tag":3178,"props":4134,"children":4135},{"class":3258,"line":3084},[4136,4140],{"type":3095,"tag":3178,"props":4137,"children":4138},{"style":3372},[4139],{"type":3100,"value":3587},{"type":3095,"tag":3178,"props":4141,"children":4142},{"style":3366},[4143],{"type":3100,"value":3592},{"type":3095,"tag":3102,"props":4145,"children":4146},{},[4147],{"type":3100,"value":4148},"Nitro plugin:",{"type":3095,"tag":3246,"props":4150,"children":4152},{"className":3337,"code":4151,"language":3339,"meta":3045,"style":3045},"export default defineNitroPlugin((nitroApp) => {\n  nitroApp.hooks.hook('request', async (event) => {\n    event.context.$authorization = {\n      resolveServerUser: async () => {\n        const session = await getUserSession(event)\n        return session.user ?? null\n      },\n    }\n  })\n})\n",[4153],{"type":3095,"tag":3253,"props":4154,"children":4155},{"__ignoreMap":3045},[4156,4195,4262,4293,4320,4359,4389,4396,4403,4414],{"type":3095,"tag":3178,"props":4157,"children":4158},{"class":3258,"line":3079},[4159,4163,4167,4171,4175,4179,4183,4187,4191],{"type":3095,"tag":3178,"props":4160,"children":4161},{"style":3349},[4162],{"type":3100,"value":3352},{"type":3095,"tag":3178,"props":4164,"children":4165},{"style":3349},[4166],{"type":3100,"value":3357},{"type":3095,"tag":3178,"props":4168,"children":4169},{"style":3360},[4170],{"type":3100,"value":3640},{"type":3095,"tag":3178,"props":4172,"children":4173},{"style":3366},[4174],{"type":3100,"value":3369},{"type":3095,"tag":3178,"props":4176,"children":4177},{"style":3372},[4178],{"type":3100,"value":3369},{"type":3095,"tag":3178,"props":4180,"children":4181},{"style":3651},[4182],{"type":3100,"value":3654},{"type":3095,"tag":3178,"props":4184,"children":4185},{"style":3372},[4186],{"type":3100,"value":3659},{"type":3095,"tag":3178,"props":4188,"children":4189},{"style":3517},[4190],{"type":3100,"value":3520},{"type":3095,"tag":3178,"props":4192,"children":4193},{"style":3372},[4194],{"type":3100,"value":3449},{"type":3095,"tag":3178,"props":4196,"children":4197},{"class":3258,"line":3072},[4198,4202,4206,4210,4214,4218,4222,4226,4230,4234,4238,4242,4246,4250,4254,4258],{"type":3095,"tag":3178,"props":4199,"children":4200},{"style":3366},[4201],{"type":3100,"value":3675},{"type":3095,"tag":3178,"props":4203,"children":4204},{"style":3372},[4205],{"type":3100,"value":3197},{"type":3095,"tag":3178,"props":4207,"children":4208},{"style":3366},[4209],{"type":3100,"value":3684},{"type":3095,"tag":3178,"props":4211,"children":4212},{"style":3372},[4213],{"type":3100,"value":3197},{"type":3095,"tag":3178,"props":4215,"children":4216},{"style":3360},[4217],{"type":3100,"value":3693},{"type":3095,"tag":3178,"props":4219,"children":4220},{"style":3381},[4221],{"type":3100,"value":3369},{"type":3095,"tag":3178,"props":4223,"children":4224},{"style":3372},[4225],{"type":3100,"value":3403},{"type":3095,"tag":3178,"props":4227,"children":4228},{"style":3268},[4229],{"type":3100,"value":3706},{"type":3095,"tag":3178,"props":4231,"children":4232},{"style":3372},[4233],{"type":3100,"value":3403},{"type":3095,"tag":3178,"props":4235,"children":4236},{"style":3372},[4237],{"type":3100,"value":3715},{"type":3095,"tag":3178,"props":4239,"children":4240},{"style":3517},[4241],{"type":3100,"value":3720},{"type":3095,"tag":3178,"props":4243,"children":4244},{"style":3372},[4245],{"type":3100,"value":3725},{"type":3095,"tag":3178,"props":4247,"children":4248},{"style":3651},[4249],{"type":3100,"value":3730},{"type":3095,"tag":3178,"props":4251,"children":4252},{"style":3372},[4253],{"type":3100,"value":3659},{"type":3095,"tag":3178,"props":4255,"children":4256},{"style":3517},[4257],{"type":3100,"value":3520},{"type":3095,"tag":3178,"props":4259,"children":4260},{"style":3372},[4261],{"type":3100,"value":3449},{"type":3095,"tag":3178,"props":4263,"children":4264},{"class":3258,"line":3068},[4265,4269,4273,4277,4281,4285,4289],{"type":3095,"tag":3178,"props":4266,"children":4267},{"style":3366},[4268],{"type":3100,"value":3750},{"type":3095,"tag":3178,"props":4270,"children":4271},{"style":3372},[4272],{"type":3100,"value":3197},{"type":3095,"tag":3178,"props":4274,"children":4275},{"style":3366},[4276],{"type":3100,"value":3759},{"type":3095,"tag":3178,"props":4278,"children":4279},{"style":3372},[4280],{"type":3100,"value":3197},{"type":3095,"tag":3178,"props":4282,"children":4283},{"style":3366},[4284],{"type":3100,"value":3768},{"type":3095,"tag":3178,"props":4286,"children":4287},{"style":3372},[4288],{"type":3100,"value":3773},{"type":3095,"tag":3178,"props":4290,"children":4291},{"style":3372},[4292],{"type":3100,"value":3449},{"type":3095,"tag":3178,"props":4294,"children":4295},{"class":3258,"line":3433},[4296,4300,4304,4308,4312,4316],{"type":3095,"tag":3178,"props":4297,"children":4298},{"style":3360},[4299],{"type":3100,"value":3785},{"type":3095,"tag":3178,"props":4301,"children":4302},{"style":3372},[4303],{"type":3100,"value":3334},{"type":3095,"tag":3178,"props":4305,"children":4306},{"style":3517},[4307],{"type":3100,"value":3720},{"type":3095,"tag":3178,"props":4309,"children":4310},{"style":3372},[4311],{"type":3100,"value":3514},{"type":3095,"tag":3178,"props":4313,"children":4314},{"style":3517},[4315],{"type":3100,"value":3520},{"type":3095,"tag":3178,"props":4317,"children":4318},{"style":3372},[4319],{"type":3100,"value":3449},{"type":3095,"tag":3178,"props":4321,"children":4322},{"class":3258,"line":3452},[4323,4328,4333,4337,4342,4347,4351,4355],{"type":3095,"tag":3178,"props":4324,"children":4325},{"style":3517},[4326],{"type":3100,"value":4327},"        const",{"type":3095,"tag":3178,"props":4329,"children":4330},{"style":3366},[4331],{"type":3100,"value":4332}," session",{"type":3095,"tag":3178,"props":4334,"children":4335},{"style":3372},[4336],{"type":3100,"value":3773},{"type":3095,"tag":3178,"props":4338,"children":4339},{"style":3349},[4340],{"type":3100,"value":4341}," await",{"type":3095,"tag":3178,"props":4343,"children":4344},{"style":3360},[4345],{"type":3100,"value":4346}," getUserSession",{"type":3095,"tag":3178,"props":4348,"children":4349},{"style":3381},[4350],{"type":3100,"value":3369},{"type":3095,"tag":3178,"props":4352,"children":4353},{"style":3366},[4354],{"type":3100,"value":3730},{"type":3095,"tag":3178,"props":4356,"children":4357},{"style":3381},[4358],{"type":3100,"value":3592},{"type":3095,"tag":3178,"props":4360,"children":4361},{"class":3258,"line":3465},[4362,4367,4371,4375,4379,4384],{"type":3095,"tag":3178,"props":4363,"children":4364},{"style":3349},[4365],{"type":3100,"value":4366},"        return",{"type":3095,"tag":3178,"props":4368,"children":4369},{"style":3366},[4370],{"type":3100,"value":4332},{"type":3095,"tag":3178,"props":4372,"children":4373},{"style":3372},[4374],{"type":3100,"value":3197},{"type":3095,"tag":3178,"props":4376,"children":4377},{"style":3366},[4378],{"type":3100,"value":4091},{"type":3095,"tag":3178,"props":4380,"children":4381},{"style":3372},[4382],{"type":3100,"value":4383}," ??",{"type":3095,"tag":3178,"props":4385,"children":4386},{"style":3372},[4387],{"type":3100,"value":4388}," null\n",{"type":3095,"tag":3178,"props":4390,"children":4391},{"class":3258,"line":3482},[4392],{"type":3095,"tag":3178,"props":4393,"children":4394},{"style":3372},[4395],{"type":3100,"value":3561},{"type":3095,"tag":3178,"props":4397,"children":4398},{"class":3258,"line":3499},[4399],{"type":3095,"tag":3178,"props":4400,"children":4401},{"style":3372},[4402],{"type":3100,"value":3569},{"type":3095,"tag":3178,"props":4404,"children":4405},{"class":3258,"line":3527},[4406,4410],{"type":3095,"tag":3178,"props":4407,"children":4408},{"style":3372},[4409],{"type":3100,"value":3831},{"type":3095,"tag":3178,"props":4411,"children":4412},{"style":3381},[4413],{"type":3100,"value":3592},{"type":3095,"tag":3178,"props":4415,"children":4416},{"class":3258,"line":3537},[4417,4421],{"type":3095,"tag":3178,"props":4418,"children":4419},{"style":3372},[4420],{"type":3100,"value":3587},{"type":3095,"tag":3178,"props":4422,"children":4423},{"style":3366},[4424],{"type":3100,"value":3592},{"type":3095,"tag":3102,"props":4426,"children":4427},{},[4428],{"type":3100,"value":4429},"Easy!",{"type":3095,"tag":3311,"props":4431,"children":4433},{"id":4432},"define-abilities",[4434],{"type":3100,"value":4435},"Define Abilities",{"type":3095,"tag":3171,"props":4437,"children":4438},{},[4439],{"type":3095,"tag":3102,"props":4440,"children":4441},{},[4442,4446,4448,4453,4455,4462],{"type":3095,"tag":3178,"props":4443,"children":4444},{},[4445],{"type":3100,"value":3182},{"type":3100,"value":4447},"\nWith Nuxt 4, a new ",{"type":3095,"tag":3253,"props":4449,"children":4451},{"className":4450},[],[4452],{"type":3100,"value":190},{"type":3100,"value":4454}," directory will be introduced to easily share code between the client and the server.\nSee ",{"type":3095,"tag":3106,"props":4456,"children":4459},{"href":4457,"rel":4458},"https:\u002F\u002Fyoutu.be\u002F_m5ct5e8nVo?si=2iNcPVMttlIq5fLR",[3110],[4460],{"type":3100,"value":4461},"the video from Alexander Lichter",{"type":3100,"value":3197},{"type":3095,"tag":3102,"props":4464,"children":4465},{},[4466],{"type":3100,"value":4467},"Now the resolvers are set up, you can define your first ability. An ability is a function that takes at least the user, and returns a boolean to indicate if the user can perform the action. It can also take additional arguments.",{"type":3095,"tag":3102,"props":4469,"children":4470},{},[4471,4473,4479],{"type":3100,"value":4472},"I recommend to create a new file ",{"type":3095,"tag":3253,"props":4474,"children":4476},{"className":4475},[],[4477],{"type":3100,"value":4478},"shared\u002Futils\u002Fabilities.ts",{"type":3100,"value":4480}," to create your abilities:",{"type":3095,"tag":3246,"props":4482,"children":4484},{"className":3337,"code":4483,"language":3339,"meta":3045,"style":3045},"export const listPosts = defineAbility(() => true) \u002F\u002F Only authenticated users can list posts\n\nexport const editPost = defineAbility((user: User, post: Post) => {\n  return user.id === post.authorId\n})\n",[4485],{"type":3095,"tag":3253,"props":4486,"children":4487},{"__ignoreMap":3045},[4488,4541,4549,4624,4664],{"type":3095,"tag":3178,"props":4489,"children":4490},{"class":3258,"line":3079},[4491,4495,4500,4505,4510,4515,4519,4523,4527,4531,4536],{"type":3095,"tag":3178,"props":4492,"children":4493},{"style":3349},[4494],{"type":3100,"value":3352},{"type":3095,"tag":3178,"props":4496,"children":4497},{"style":3517},[4498],{"type":3100,"value":4499}," const",{"type":3095,"tag":3178,"props":4501,"children":4502},{"style":3366},[4503],{"type":3100,"value":4504}," listPosts ",{"type":3095,"tag":3178,"props":4506,"children":4507},{"style":3372},[4508],{"type":3100,"value":4509},"=",{"type":3095,"tag":3178,"props":4511,"children":4512},{"style":3360},[4513],{"type":3100,"value":4514}," defineAbility",{"type":3095,"tag":3178,"props":4516,"children":4517},{"style":3366},[4518],{"type":3100,"value":3369},{"type":3095,"tag":3178,"props":4520,"children":4521},{"style":3372},[4522],{"type":3100,"value":3444},{"type":3095,"tag":3178,"props":4524,"children":4525},{"style":3517},[4526],{"type":3100,"value":3520},{"type":3095,"tag":3178,"props":4528,"children":4529},{"style":3423},[4530],{"type":3100,"value":3426},{"type":3095,"tag":3178,"props":4532,"children":4533},{"style":3366},[4534],{"type":3100,"value":4535},") ",{"type":3095,"tag":3178,"props":4537,"children":4538},{"style":3531},[4539],{"type":3100,"value":4540},"\u002F\u002F Only authenticated users can list posts\n",{"type":3095,"tag":3178,"props":4542,"children":4543},{"class":3258,"line":3072},[4544],{"type":3095,"tag":3178,"props":4545,"children":4546},{"emptyLinePlaceholder":1200},[4547],{"type":3100,"value":4548},"\n",{"type":3095,"tag":3178,"props":4550,"children":4551},{"class":3258,"line":3068},[4552,4556,4560,4565,4569,4573,4577,4581,4585,4589,4594,4598,4603,4607,4612,4616,4620],{"type":3095,"tag":3178,"props":4553,"children":4554},{"style":3349},[4555],{"type":3100,"value":3352},{"type":3095,"tag":3178,"props":4557,"children":4558},{"style":3517},[4559],{"type":3100,"value":4499},{"type":3095,"tag":3178,"props":4561,"children":4562},{"style":3366},[4563],{"type":3100,"value":4564}," editPost ",{"type":3095,"tag":3178,"props":4566,"children":4567},{"style":3372},[4568],{"type":3100,"value":4509},{"type":3095,"tag":3178,"props":4570,"children":4571},{"style":3360},[4572],{"type":3100,"value":4514},{"type":3095,"tag":3178,"props":4574,"children":4575},{"style":3366},[4576],{"type":3100,"value":3369},{"type":3095,"tag":3178,"props":4578,"children":4579},{"style":3372},[4580],{"type":3100,"value":3369},{"type":3095,"tag":3178,"props":4582,"children":4583},{"style":3651},[4584],{"type":3100,"value":4091},{"type":3095,"tag":3178,"props":4586,"children":4587},{"style":3372},[4588],{"type":3100,"value":3334},{"type":3095,"tag":3178,"props":4590,"children":4591},{"style":3262},[4592],{"type":3100,"value":4593}," User",{"type":3095,"tag":3178,"props":4595,"children":4596},{"style":3372},[4597],{"type":3100,"value":3715},{"type":3095,"tag":3178,"props":4599,"children":4600},{"style":3651},[4601],{"type":3100,"value":4602}," post",{"type":3095,"tag":3178,"props":4604,"children":4605},{"style":3372},[4606],{"type":3100,"value":3334},{"type":3095,"tag":3178,"props":4608,"children":4609},{"style":3262},[4610],{"type":3100,"value":4611}," Post",{"type":3095,"tag":3178,"props":4613,"children":4614},{"style":3372},[4615],{"type":3100,"value":3659},{"type":3095,"tag":3178,"props":4617,"children":4618},{"style":3517},[4619],{"type":3100,"value":3520},{"type":3095,"tag":3178,"props":4621,"children":4622},{"style":3372},[4623],{"type":3100,"value":3449},{"type":3095,"tag":3178,"props":4625,"children":4626},{"class":3258,"line":3433},[4627,4632,4637,4641,4646,4651,4655,4659],{"type":3095,"tag":3178,"props":4628,"children":4629},{"style":3349},[4630],{"type":3100,"value":4631},"  return",{"type":3095,"tag":3178,"props":4633,"children":4634},{"style":3366},[4635],{"type":3100,"value":4636}," user",{"type":3095,"tag":3178,"props":4638,"children":4639},{"style":3372},[4640],{"type":3100,"value":3197},{"type":3095,"tag":3178,"props":4642,"children":4643},{"style":3366},[4644],{"type":3100,"value":4645},"id",{"type":3095,"tag":3178,"props":4647,"children":4648},{"style":3372},[4649],{"type":3100,"value":4650}," ===",{"type":3095,"tag":3178,"props":4652,"children":4653},{"style":3366},[4654],{"type":3100,"value":4602},{"type":3095,"tag":3178,"props":4656,"children":4657},{"style":3372},[4658],{"type":3100,"value":3197},{"type":3095,"tag":3178,"props":4660,"children":4661},{"style":3366},[4662],{"type":3100,"value":4663},"authorId\n",{"type":3095,"tag":3178,"props":4665,"children":4666},{"class":3258,"line":3452},[4667,4671],{"type":3095,"tag":3178,"props":4668,"children":4669},{"style":3372},[4670],{"type":3100,"value":3587},{"type":3095,"tag":3178,"props":4672,"children":4673},{"style":3366},[4674],{"type":3100,"value":3592},{"type":3095,"tag":3102,"props":4676,"children":4677},{},[4678,4680,4686,4688,4694,4696,4702,4704,4710,4712,4718],{"type":3100,"value":4679},"If you have many abilities, you could prefer to create a directory ",{"type":3095,"tag":3253,"props":4681,"children":4683},{"className":4682},[],[4684],{"type":3100,"value":4685},"shared\u002Futils\u002Fabilities\u002F",{"type":3100,"value":4687}," and create a file for each ability. Having the abilities in the ",{"type":3095,"tag":3253,"props":4689,"children":4691},{"className":4690},[],[4692],{"type":3100,"value":4693},"shared\u002Futils",{"type":3100,"value":4695}," directory allows auto-import to work in the client while having a simple import in the server ",{"type":3095,"tag":3253,"props":4697,"children":4699},{"className":4698},[],[4700],{"type":3100,"value":4701},"~~\u002Fshared\u002Futils\u002Fabilities",{"type":3100,"value":4703},". ",{"type":3095,"tag":4705,"props":4706,"children":4707},"strong",{},[4708],{"type":3100,"value":4709},"Remember that the shared folder only exports the first level of the directory.",{"type":3100,"value":4711}," So you have to export the abilities in the ",{"type":3095,"tag":3253,"props":4713,"children":4715},{"className":4714},[],[4716],{"type":3100,"value":4717},"shared\u002Futils\u002Fabilities\u002Findex.ts",{"type":3100,"value":4719}," file.",{"type":3095,"tag":3102,"props":4721,"children":4722},{},[4723],{"type":3100,"value":4724},"By default, guests are not allowed to perform any action and the ability is not called. This behavior can be changed per ability:",{"type":3095,"tag":3246,"props":4726,"children":4728},{"className":3337,"code":4727,"language":3339,"meta":3045,"style":3045},"export const listPosts = defineAbility({ allowGuest: true }, (user: User | null) => true)\n",[4729],{"type":3095,"tag":3253,"props":4730,"children":4731},{"__ignoreMap":3045},[4732],{"type":3095,"tag":3178,"props":4733,"children":4734},{"class":3258,"line":3079},[4735,4739,4743,4747,4751,4755,4759,4764,4769,4773,4777,4782,4786,4790,4794,4798,4803,4808,4812,4816,4820],{"type":3095,"tag":3178,"props":4736,"children":4737},{"style":3349},[4738],{"type":3100,"value":3352},{"type":3095,"tag":3178,"props":4740,"children":4741},{"style":3517},[4742],{"type":3100,"value":4499},{"type":3095,"tag":3178,"props":4744,"children":4745},{"style":3366},[4746],{"type":3100,"value":4504},{"type":3095,"tag":3178,"props":4748,"children":4749},{"style":3372},[4750],{"type":3100,"value":4509},{"type":3095,"tag":3178,"props":4752,"children":4753},{"style":3360},[4754],{"type":3100,"value":4514},{"type":3095,"tag":3178,"props":4756,"children":4757},{"style":3366},[4758],{"type":3100,"value":3369},{"type":3095,"tag":3178,"props":4760,"children":4761},{"style":3372},[4762],{"type":3100,"value":4763},"{",{"type":3095,"tag":3178,"props":4765,"children":4766},{"style":3381},[4767],{"type":3100,"value":4768}," allowGuest",{"type":3095,"tag":3178,"props":4770,"children":4771},{"style":3372},[4772],{"type":3100,"value":3334},{"type":3095,"tag":3178,"props":4774,"children":4775},{"style":3423},[4776],{"type":3100,"value":3426},{"type":3095,"tag":3178,"props":4778,"children":4779},{"style":3372},[4780],{"type":3100,"value":4781}," },",{"type":3095,"tag":3178,"props":4783,"children":4784},{"style":3372},[4785],{"type":3100,"value":3725},{"type":3095,"tag":3178,"props":4787,"children":4788},{"style":3651},[4789],{"type":3100,"value":4091},{"type":3095,"tag":3178,"props":4791,"children":4792},{"style":3372},[4793],{"type":3100,"value":3334},{"type":3095,"tag":3178,"props":4795,"children":4796},{"style":3262},[4797],{"type":3100,"value":4593},{"type":3095,"tag":3178,"props":4799,"children":4800},{"style":3372},[4801],{"type":3100,"value":4802}," |",{"type":3095,"tag":3178,"props":4804,"children":4805},{"style":3262},[4806],{"type":3100,"value":4807}," null",{"type":3095,"tag":3178,"props":4809,"children":4810},{"style":3372},[4811],{"type":3100,"value":3659},{"type":3095,"tag":3178,"props":4813,"children":4814},{"style":3517},[4815],{"type":3100,"value":3520},{"type":3095,"tag":3178,"props":4817,"children":4818},{"style":3423},[4819],{"type":3100,"value":3426},{"type":3095,"tag":3178,"props":4821,"children":4822},{"style":3366},[4823],{"type":3100,"value":3592},{"type":3095,"tag":3102,"props":4825,"children":4826},{},[4827],{"type":3100,"value":4828},"Now, unauthenticated users can list posts.",{"type":3095,"tag":3311,"props":4830,"children":4832},{"id":4831},"use-abilities",[4833],{"type":3100,"value":4834},"Use Abilities",{"type":3095,"tag":3102,"props":4836,"children":4837},{},[4838,4840,4846,4848,4854,4856,4862,4864],{"type":3100,"value":4839},"To use ability, you have access to 3 bouncer functions: ",{"type":3095,"tag":3253,"props":4841,"children":4843},{"className":4842},[],[4844],{"type":3100,"value":4845},"allows",{"type":3100,"value":4847},", ",{"type":3095,"tag":3253,"props":4849,"children":4851},{"className":4850},[],[4852],{"type":3100,"value":4853},"denies",{"type":3100,"value":4855},", and ",{"type":3095,"tag":3253,"props":4857,"children":4859},{"className":4858},[],[4860],{"type":3100,"value":4861},"authorize",{"type":3100,"value":4863},". Both of them are available in the client and the server. ",{"type":3095,"tag":3165,"props":4865,"children":4866},{},[4867,4869,4874],{"type":3100,"value":4868},"The implementation is different but the API is (nearly) the same and it's entirely transparent the developer. On the server, the first parameter is the ",{"type":3095,"tag":3253,"props":4870,"children":4872},{"className":4871},[],[4873],{"type":3100,"value":3730},{"type":3100,"value":4875}," from the handler.",{"type":3095,"tag":3102,"props":4877,"children":4878},{},[4879,4881,4886],{"type":3100,"value":4880},"The ",{"type":3095,"tag":3253,"props":4882,"children":4884},{"className":4883},[],[4885],{"type":3100,"value":4845},{"type":3100,"value":4887}," function returns a boolean if the user can perform the action:",{"type":3095,"tag":3246,"props":4889,"children":4891},{"className":3337,"code":4890,"language":3339,"meta":3045,"style":3045},"if (await allows(listPosts)) {\n  \u002F\u002F User can list posts\n}\n",[4892],{"type":3095,"tag":3253,"props":4893,"children":4894},{"__ignoreMap":3045},[4895,4926,4934],{"type":3095,"tag":3178,"props":4896,"children":4897},{"class":3258,"line":3079},[4898,4903,4907,4912,4917,4922],{"type":3095,"tag":3178,"props":4899,"children":4900},{"style":3349},[4901],{"type":3100,"value":4902},"if",{"type":3095,"tag":3178,"props":4904,"children":4905},{"style":3366},[4906],{"type":3100,"value":3725},{"type":3095,"tag":3178,"props":4908,"children":4909},{"style":3349},[4910],{"type":3100,"value":4911},"await",{"type":3095,"tag":3178,"props":4913,"children":4914},{"style":3360},[4915],{"type":3100,"value":4916}," allows",{"type":3095,"tag":3178,"props":4918,"children":4919},{"style":3366},[4920],{"type":3100,"value":4921},"(listPosts)) ",{"type":3095,"tag":3178,"props":4923,"children":4924},{"style":3372},[4925],{"type":3100,"value":3375},{"type":3095,"tag":3178,"props":4927,"children":4928},{"class":3258,"line":3072},[4929],{"type":3095,"tag":3178,"props":4930,"children":4931},{"style":3531},[4932],{"type":3100,"value":4933},"  \u002F\u002F User can list posts\n",{"type":3095,"tag":3178,"props":4935,"children":4936},{"class":3258,"line":3068},[4937],{"type":3095,"tag":3178,"props":4938,"children":4939},{"style":3372},[4940],{"type":3100,"value":4941},"}\n",{"type":3095,"tag":3102,"props":4943,"children":4944},{},[4945],{"type":3095,"tag":3165,"props":4946,"children":4947},{},[4948],{"type":3100,"value":4949},"For the server:",{"type":3095,"tag":3246,"props":4951,"children":4953},{"className":3337,"code":4952,"language":3339,"meta":3045,"style":3045},"if (await allows(event, listPosts)) {\n  \u002F\u002F User can list posts\n}\n",[4954],{"type":3095,"tag":3253,"props":4955,"children":4956},{"__ignoreMap":3045},[4957,4994,5001],{"type":3095,"tag":3178,"props":4958,"children":4959},{"class":3258,"line":3079},[4960,4964,4968,4972,4976,4981,4985,4990],{"type":3095,"tag":3178,"props":4961,"children":4962},{"style":3349},[4963],{"type":3100,"value":4902},{"type":3095,"tag":3178,"props":4965,"children":4966},{"style":3366},[4967],{"type":3100,"value":3725},{"type":3095,"tag":3178,"props":4969,"children":4970},{"style":3349},[4971],{"type":3100,"value":4911},{"type":3095,"tag":3178,"props":4973,"children":4974},{"style":3360},[4975],{"type":3100,"value":4916},{"type":3095,"tag":3178,"props":4977,"children":4978},{"style":3366},[4979],{"type":3100,"value":4980},"(event",{"type":3095,"tag":3178,"props":4982,"children":4983},{"style":3372},[4984],{"type":3100,"value":3715},{"type":3095,"tag":3178,"props":4986,"children":4987},{"style":3366},[4988],{"type":3100,"value":4989}," listPosts)) ",{"type":3095,"tag":3178,"props":4991,"children":4992},{"style":3372},[4993],{"type":3100,"value":3375},{"type":3095,"tag":3178,"props":4995,"children":4996},{"class":3258,"line":3072},[4997],{"type":3095,"tag":3178,"props":4998,"children":4999},{"style":3531},[5000],{"type":3100,"value":4933},{"type":3095,"tag":3178,"props":5002,"children":5003},{"class":3258,"line":3068},[5004],{"type":3095,"tag":3178,"props":5005,"children":5006},{"style":3372},[5007],{"type":3100,"value":4941},{"type":3095,"tag":3102,"props":5009,"children":5010},{},[5011,5012,5017],{"type":3100,"value":4880},{"type":3095,"tag":3253,"props":5013,"children":5015},{"className":5014},[],[5016],{"type":3100,"value":4853},{"type":3100,"value":5018}," function returns a boolean if the user cannot perform the action:",{"type":3095,"tag":3246,"props":5020,"children":5022},{"className":3337,"code":5021,"language":3339,"meta":3045,"style":3045},"if (await denies(editPost, post)) {\n  \u002F\u002F User cannot edit the post\n}\n",[5023],{"type":3095,"tag":3253,"props":5024,"children":5025},{"__ignoreMap":3045},[5026,5064,5072],{"type":3095,"tag":3178,"props":5027,"children":5028},{"class":3258,"line":3079},[5029,5033,5037,5041,5046,5051,5055,5060],{"type":3095,"tag":3178,"props":5030,"children":5031},{"style":3349},[5032],{"type":3100,"value":4902},{"type":3095,"tag":3178,"props":5034,"children":5035},{"style":3366},[5036],{"type":3100,"value":3725},{"type":3095,"tag":3178,"props":5038,"children":5039},{"style":3349},[5040],{"type":3100,"value":4911},{"type":3095,"tag":3178,"props":5042,"children":5043},{"style":3360},[5044],{"type":3100,"value":5045}," denies",{"type":3095,"tag":3178,"props":5047,"children":5048},{"style":3366},[5049],{"type":3100,"value":5050},"(editPost",{"type":3095,"tag":3178,"props":5052,"children":5053},{"style":3372},[5054],{"type":3100,"value":3715},{"type":3095,"tag":3178,"props":5056,"children":5057},{"style":3366},[5058],{"type":3100,"value":5059}," post)) ",{"type":3095,"tag":3178,"props":5061,"children":5062},{"style":3372},[5063],{"type":3100,"value":3375},{"type":3095,"tag":3178,"props":5065,"children":5066},{"class":3258,"line":3072},[5067],{"type":3095,"tag":3178,"props":5068,"children":5069},{"style":3531},[5070],{"type":3100,"value":5071},"  \u002F\u002F User cannot edit the post\n",{"type":3095,"tag":3178,"props":5073,"children":5074},{"class":3258,"line":3068},[5075],{"type":3095,"tag":3178,"props":5076,"children":5077},{"style":3372},[5078],{"type":3100,"value":4941},{"type":3095,"tag":3102,"props":5080,"children":5081},{},[5082],{"type":3095,"tag":3165,"props":5083,"children":5084},{},[5085],{"type":3100,"value":4949},{"type":3095,"tag":3246,"props":5087,"children":5089},{"className":3337,"code":5088,"language":3339,"meta":3045,"style":3045},"if (await denies(event, editPost, post)) {\n  \u002F\u002F User cannot edit the post\n}\n",[5090],{"type":3095,"tag":3253,"props":5091,"children":5092},{"__ignoreMap":3045},[5093,5137,5144],{"type":3095,"tag":3178,"props":5094,"children":5095},{"class":3258,"line":3079},[5096,5100,5104,5108,5112,5116,5120,5125,5129,5133],{"type":3095,"tag":3178,"props":5097,"children":5098},{"style":3349},[5099],{"type":3100,"value":4902},{"type":3095,"tag":3178,"props":5101,"children":5102},{"style":3366},[5103],{"type":3100,"value":3725},{"type":3095,"tag":3178,"props":5105,"children":5106},{"style":3349},[5107],{"type":3100,"value":4911},{"type":3095,"tag":3178,"props":5109,"children":5110},{"style":3360},[5111],{"type":3100,"value":5045},{"type":3095,"tag":3178,"props":5113,"children":5114},{"style":3366},[5115],{"type":3100,"value":4980},{"type":3095,"tag":3178,"props":5117,"children":5118},{"style":3372},[5119],{"type":3100,"value":3715},{"type":3095,"tag":3178,"props":5121,"children":5122},{"style":3366},[5123],{"type":3100,"value":5124}," editPost",{"type":3095,"tag":3178,"props":5126,"children":5127},{"style":3372},[5128],{"type":3100,"value":3715},{"type":3095,"tag":3178,"props":5130,"children":5131},{"style":3366},[5132],{"type":3100,"value":5059},{"type":3095,"tag":3178,"props":5134,"children":5135},{"style":3372},[5136],{"type":3100,"value":3375},{"type":3095,"tag":3178,"props":5138,"children":5139},{"class":3258,"line":3072},[5140],{"type":3095,"tag":3178,"props":5141,"children":5142},{"style":3531},[5143],{"type":3100,"value":5071},{"type":3095,"tag":3178,"props":5145,"children":5146},{"class":3258,"line":3068},[5147],{"type":3095,"tag":3178,"props":5148,"children":5149},{"style":3372},[5150],{"type":3100,"value":4941},{"type":3095,"tag":3102,"props":5152,"children":5153},{},[5154,5155,5160],{"type":3100,"value":4880},{"type":3095,"tag":3253,"props":5156,"children":5158},{"className":5157},[],[5159],{"type":3100,"value":4861},{"type":3100,"value":5161}," function throws an error if the user cannot perform the action:",{"type":3095,"tag":3246,"props":5163,"children":5165},{"className":3337,"code":5164,"language":3339,"meta":3045,"style":3045},"await authorize(editPost, post)\n\n\u002F\u002F User can edit the post\n",[5166],{"type":3095,"tag":3253,"props":5167,"children":5168},{"__ignoreMap":3045},[5169,5194,5201],{"type":3095,"tag":3178,"props":5170,"children":5171},{"class":3258,"line":3079},[5172,5176,5181,5185,5189],{"type":3095,"tag":3178,"props":5173,"children":5174},{"style":3349},[5175],{"type":3100,"value":4911},{"type":3095,"tag":3178,"props":5177,"children":5178},{"style":3360},[5179],{"type":3100,"value":5180}," authorize",{"type":3095,"tag":3178,"props":5182,"children":5183},{"style":3366},[5184],{"type":3100,"value":5050},{"type":3095,"tag":3178,"props":5186,"children":5187},{"style":3372},[5188],{"type":3100,"value":3715},{"type":3095,"tag":3178,"props":5190,"children":5191},{"style":3366},[5192],{"type":3100,"value":5193}," post)\n",{"type":3095,"tag":3178,"props":5195,"children":5196},{"class":3258,"line":3072},[5197],{"type":3095,"tag":3178,"props":5198,"children":5199},{"emptyLinePlaceholder":1200},[5200],{"type":3100,"value":4548},{"type":3095,"tag":3178,"props":5202,"children":5203},{"class":3258,"line":3068},[5204],{"type":3095,"tag":3178,"props":5205,"children":5206},{"style":3531},[5207],{"type":3100,"value":5208},"\u002F\u002F User can edit the post\n",{"type":3095,"tag":3102,"props":5210,"children":5211},{},[5212],{"type":3095,"tag":3165,"props":5213,"children":5214},{},[5215],{"type":3100,"value":4949},{"type":3095,"tag":3246,"props":5217,"children":5219},{"className":3337,"code":5218,"language":3339,"meta":3045,"style":3045},"await authorize(event, editPost, post)\n",[5220],{"type":3095,"tag":3253,"props":5221,"children":5222},{"__ignoreMap":3045},[5223],{"type":3095,"tag":3178,"props":5224,"children":5225},{"class":3258,"line":3079},[5226,5230,5234,5238,5242,5246,5250],{"type":3095,"tag":3178,"props":5227,"children":5228},{"style":3349},[5229],{"type":3100,"value":4911},{"type":3095,"tag":3178,"props":5231,"children":5232},{"style":3360},[5233],{"type":3100,"value":5180},{"type":3095,"tag":3178,"props":5235,"children":5236},{"style":3366},[5237],{"type":3100,"value":4980},{"type":3095,"tag":3178,"props":5239,"children":5240},{"style":3372},[5241],{"type":3100,"value":3715},{"type":3095,"tag":3178,"props":5243,"children":5244},{"style":3366},[5245],{"type":3100,"value":5124},{"type":3095,"tag":3178,"props":5247,"children":5248},{"style":3372},[5249],{"type":3100,"value":3715},{"type":3095,"tag":3178,"props":5251,"children":5252},{"style":3366},[5253],{"type":3100,"value":5193},{"type":3095,"tag":3102,"props":5255,"children":5256},{},[5257],{"type":3100,"value":5258},"You can customize the error message and the status code per return value of the ability. This can be useful to return a 404 instead of a 403 to keep the user unaware of the existence of the resource.",{"type":3095,"tag":3246,"props":5260,"children":5262},{"className":3337,"code":5261,"language":3339,"meta":3045,"style":3045},"export const editPost = defineAbility((user: User, post: Post) => {\n  if(user.id === post.authorId) {\n    return true \u002F\u002F or allow()\n  }\n\n  return deny('This post does not exist', 404)\n})\n",[5263],{"type":3095,"tag":3253,"props":5264,"children":5265},{"__ignoreMap":3045},[5266,5337,5386,5402,5410,5417,5460],{"type":3095,"tag":3178,"props":5267,"children":5268},{"class":3258,"line":3079},[5269,5273,5277,5281,5285,5289,5293,5297,5301,5305,5309,5313,5317,5321,5325,5329,5333],{"type":3095,"tag":3178,"props":5270,"children":5271},{"style":3349},[5272],{"type":3100,"value":3352},{"type":3095,"tag":3178,"props":5274,"children":5275},{"style":3517},[5276],{"type":3100,"value":4499},{"type":3095,"tag":3178,"props":5278,"children":5279},{"style":3366},[5280],{"type":3100,"value":4564},{"type":3095,"tag":3178,"props":5282,"children":5283},{"style":3372},[5284],{"type":3100,"value":4509},{"type":3095,"tag":3178,"props":5286,"children":5287},{"style":3360},[5288],{"type":3100,"value":4514},{"type":3095,"tag":3178,"props":5290,"children":5291},{"style":3366},[5292],{"type":3100,"value":3369},{"type":3095,"tag":3178,"props":5294,"children":5295},{"style":3372},[5296],{"type":3100,"value":3369},{"type":3095,"tag":3178,"props":5298,"children":5299},{"style":3651},[5300],{"type":3100,"value":4091},{"type":3095,"tag":3178,"props":5302,"children":5303},{"style":3372},[5304],{"type":3100,"value":3334},{"type":3095,"tag":3178,"props":5306,"children":5307},{"style":3262},[5308],{"type":3100,"value":4593},{"type":3095,"tag":3178,"props":5310,"children":5311},{"style":3372},[5312],{"type":3100,"value":3715},{"type":3095,"tag":3178,"props":5314,"children":5315},{"style":3651},[5316],{"type":3100,"value":4602},{"type":3095,"tag":3178,"props":5318,"children":5319},{"style":3372},[5320],{"type":3100,"value":3334},{"type":3095,"tag":3178,"props":5322,"children":5323},{"style":3262},[5324],{"type":3100,"value":4611},{"type":3095,"tag":3178,"props":5326,"children":5327},{"style":3372},[5328],{"type":3100,"value":3659},{"type":3095,"tag":3178,"props":5330,"children":5331},{"style":3517},[5332],{"type":3100,"value":3520},{"type":3095,"tag":3178,"props":5334,"children":5335},{"style":3372},[5336],{"type":3100,"value":3449},{"type":3095,"tag":3178,"props":5338,"children":5339},{"class":3258,"line":3072},[5340,5345,5349,5353,5357,5361,5365,5369,5373,5378,5382],{"type":3095,"tag":3178,"props":5341,"children":5342},{"style":3349},[5343],{"type":3100,"value":5344},"  if",{"type":3095,"tag":3178,"props":5346,"children":5347},{"style":3381},[5348],{"type":3100,"value":3369},{"type":3095,"tag":3178,"props":5350,"children":5351},{"style":3366},[5352],{"type":3100,"value":4091},{"type":3095,"tag":3178,"props":5354,"children":5355},{"style":3372},[5356],{"type":3100,"value":3197},{"type":3095,"tag":3178,"props":5358,"children":5359},{"style":3366},[5360],{"type":3100,"value":4645},{"type":3095,"tag":3178,"props":5362,"children":5363},{"style":3372},[5364],{"type":3100,"value":4650},{"type":3095,"tag":3178,"props":5366,"children":5367},{"style":3366},[5368],{"type":3100,"value":4602},{"type":3095,"tag":3178,"props":5370,"children":5371},{"style":3372},[5372],{"type":3100,"value":3197},{"type":3095,"tag":3178,"props":5374,"children":5375},{"style":3366},[5376],{"type":3100,"value":5377},"authorId",{"type":3095,"tag":3178,"props":5379,"children":5380},{"style":3381},[5381],{"type":3100,"value":4535},{"type":3095,"tag":3178,"props":5383,"children":5384},{"style":3372},[5385],{"type":3100,"value":3375},{"type":3095,"tag":3178,"props":5387,"children":5388},{"class":3258,"line":3068},[5389,5393,5397],{"type":3095,"tag":3178,"props":5390,"children":5391},{"style":3349},[5392],{"type":3100,"value":3458},{"type":3095,"tag":3178,"props":5394,"children":5395},{"style":3423},[5396],{"type":3100,"value":3426},{"type":3095,"tag":3178,"props":5398,"children":5399},{"style":3531},[5400],{"type":3100,"value":5401}," \u002F\u002F or allow()\n",{"type":3095,"tag":3178,"props":5403,"children":5404},{"class":3258,"line":3433},[5405],{"type":3095,"tag":3178,"props":5406,"children":5407},{"style":3372},[5408],{"type":3100,"value":5409},"  }\n",{"type":3095,"tag":3178,"props":5411,"children":5412},{"class":3258,"line":3452},[5413],{"type":3095,"tag":3178,"props":5414,"children":5415},{"emptyLinePlaceholder":1200},[5416],{"type":3100,"value":4548},{"type":3095,"tag":3178,"props":5418,"children":5419},{"class":3258,"line":3465},[5420,5424,5429,5433,5437,5442,5446,5450,5456],{"type":3095,"tag":3178,"props":5421,"children":5422},{"style":3349},[5423],{"type":3100,"value":4631},{"type":3095,"tag":3178,"props":5425,"children":5426},{"style":3360},[5427],{"type":3100,"value":5428}," deny",{"type":3095,"tag":3178,"props":5430,"children":5431},{"style":3381},[5432],{"type":3100,"value":3369},{"type":3095,"tag":3178,"props":5434,"children":5435},{"style":3372},[5436],{"type":3100,"value":3403},{"type":3095,"tag":3178,"props":5438,"children":5439},{"style":3268},[5440],{"type":3100,"value":5441},"This post does not exist",{"type":3095,"tag":3178,"props":5443,"children":5444},{"style":3372},[5445],{"type":3100,"value":3403},{"type":3095,"tag":3178,"props":5447,"children":5448},{"style":3372},[5449],{"type":3100,"value":3715},{"type":3095,"tag":3178,"props":5451,"children":5453},{"style":5452},"--shiki-light:#F76D47;--shiki-default:#F76D47;--shiki-dark:#F78C6C",[5454],{"type":3100,"value":5455}," 404",{"type":3095,"tag":3178,"props":5457,"children":5458},{"style":3381},[5459],{"type":3100,"value":3592},{"type":3095,"tag":3178,"props":5461,"children":5462},{"class":3258,"line":3482},[5463,5467],{"type":3095,"tag":3178,"props":5464,"children":5465},{"style":3372},[5466],{"type":3100,"value":3587},{"type":3095,"tag":3178,"props":5468,"children":5469},{"style":3366},[5470],{"type":3100,"value":3592},{"type":3095,"tag":3102,"props":5472,"children":5473},{},[5474,5480,5482,5488,5490,5496,5497,5503,5505,5510],{"type":3095,"tag":3253,"props":5475,"children":5477},{"className":5476},[],[5478],{"type":3100,"value":5479},"allow",{"type":3100,"value":5481}," and ",{"type":3095,"tag":3253,"props":5483,"children":5485},{"className":5484},[],[5486],{"type":3100,"value":5487},"deny",{"type":3100,"value":5489}," are similar to returning ",{"type":3095,"tag":3253,"props":5491,"children":5493},{"className":5492},[],[5494],{"type":3100,"value":5495},"true",{"type":3100,"value":5481},{"type":3095,"tag":3253,"props":5498,"children":5500},{"className":5499},[],[5501],{"type":3100,"value":5502},"false",{"type":3100,"value":5504}," but ",{"type":3095,"tag":3253,"props":5506,"children":5508},{"className":5507},[],[5509],{"type":3100,"value":5487},{"type":3100,"value":5511}," allows to return a custom message and status code for the error.",{"type":3095,"tag":3102,"props":5513,"children":5514},{},[5515,5517,5522,5524,5530],{"type":3100,"value":5516},"Most of the times, you API endpoints will use the ",{"type":3095,"tag":3253,"props":5518,"children":5520},{"className":5519},[],[5521],{"type":3100,"value":4861},{"type":3100,"value":5523},". This can be the first line of the endpoint if no parameters are needed or after a database query to check if the user can access the resource. You do not need to catch the error since it's a ",{"type":3095,"tag":3253,"props":5525,"children":5527},{"className":5526},[],[5528],{"type":3100,"value":5529},"H3Error",{"type":3100,"value":5531}," and will be caught by the Nitro server.",{"type":3095,"tag":3102,"props":5533,"children":5534},{},[5535,5536,5541,5542,5547],{"type":3100,"value":4880},{"type":3095,"tag":3253,"props":5537,"children":5539},{"className":5538},[],[5540],{"type":3100,"value":4845},{"type":3100,"value":5481},{"type":3095,"tag":3253,"props":5543,"children":5545},{"className":5544},[],[5546],{"type":3100,"value":4853},{"type":3100,"value":5548}," functions are useful in the client to perform conditional rendering or logic. You can also use them to have a fine-grained control on you authorization logic.",{"type":3095,"tag":3311,"props":5550,"children":5552},{"id":5551},"use-components",[5553],{"type":3100,"value":5554},"Use Components",{"type":3095,"tag":3102,"props":5556,"children":5557},{},[5558],{"type":3100,"value":5559},"The module provides 2 components help you to conditionally show part of the UI. Imagine you have a button to edit a post, unauthorized users should not see the button.",{"type":3095,"tag":3246,"props":5561,"children":5565},{"className":5562,"code":5563,"language":5564,"meta":3045,"style":3045},"language-vue shiki shiki-themes material-theme-lighter material-theme-lighter material-theme-palenight","\u003Ctemplate>\n  \u003CCan\n    :ability=\"editPost\"\n    :args=\"[post]\" \u002F\u002F Optional if the ability does not take any arguments\n  >\n    \u003Cbutton>Edit\u003C\u002Fbutton>\n  \u003C\u002FCan>\n\u003C\u002Ftemplate>\n","vue",[5566],{"type":3095,"tag":3253,"props":5567,"children":5568},{"__ignoreMap":3045},[5569,5587,5600,5632,5721,5729,5765,5782],{"type":3095,"tag":3178,"props":5570,"children":5571},{"class":3258,"line":3079},[5572,5577,5582],{"type":3095,"tag":3178,"props":5573,"children":5574},{"style":3372},[5575],{"type":3100,"value":5576},"\u003C",{"type":3095,"tag":3178,"props":5578,"children":5579},{"style":3381},[5580],{"type":3100,"value":5581},"template",{"type":3095,"tag":3178,"props":5583,"children":5584},{"style":3372},[5585],{"type":3100,"value":5586},">\n",{"type":3095,"tag":3178,"props":5588,"children":5589},{"class":3258,"line":3072},[5590,5595],{"type":3095,"tag":3178,"props":5591,"children":5592},{"style":3372},[5593],{"type":3100,"value":5594},"  \u003C",{"type":3095,"tag":3178,"props":5596,"children":5597},{"style":3381},[5598],{"type":3100,"value":5599},"Can\n",{"type":3095,"tag":3178,"props":5601,"children":5602},{"class":3258,"line":3068},[5603,5608,5613,5617,5622,5627],{"type":3095,"tag":3178,"props":5604,"children":5605},{"style":3372},[5606],{"type":3100,"value":5607},"    :",{"type":3095,"tag":3178,"props":5609,"children":5610},{"style":3517},[5611],{"type":3100,"value":5612},"ability",{"type":3095,"tag":3178,"props":5614,"children":5615},{"style":3372},[5616],{"type":3100,"value":4509},{"type":3095,"tag":3178,"props":5618,"children":5619},{"style":3372},[5620],{"type":3100,"value":5621},"\"",{"type":3095,"tag":3178,"props":5623,"children":5624},{"style":3366},[5625],{"type":3100,"value":5626},"editPost",{"type":3095,"tag":3178,"props":5628,"children":5629},{"style":3372},[5630],{"type":3100,"value":5631},"\"\n",{"type":3095,"tag":3178,"props":5633,"children":5634},{"class":3258,"line":3433},[5635,5639,5644,5648,5652,5657,5662,5667,5671,5676,5681,5686,5691,5696,5701,5706,5711,5716],{"type":3095,"tag":3178,"props":5636,"children":5637},{"style":3372},[5638],{"type":3100,"value":5607},{"type":3095,"tag":3178,"props":5640,"children":5641},{"style":3517},[5642],{"type":3100,"value":5643},"args",{"type":3095,"tag":3178,"props":5645,"children":5646},{"style":3372},[5647],{"type":3100,"value":4509},{"type":3095,"tag":3178,"props":5649,"children":5650},{"style":3372},[5651],{"type":3100,"value":5621},{"type":3095,"tag":3178,"props":5653,"children":5654},{"style":3372},[5655],{"type":3100,"value":5656},"[",{"type":3095,"tag":3178,"props":5658,"children":5659},{"style":3366},[5660],{"type":3100,"value":5661},"post",{"type":3095,"tag":3178,"props":5663,"children":5664},{"style":3372},[5665],{"type":3100,"value":5666},"]",{"type":3095,"tag":3178,"props":5668,"children":5669},{"style":3372},[5670],{"type":3100,"value":5621},{"type":3095,"tag":3178,"props":5672,"children":5673},{"style":3372},[5674],{"type":3100,"value":5675}," \u002F\u002F ",{"type":3095,"tag":3178,"props":5677,"children":5678},{"style":3517},[5679],{"type":3100,"value":5680},"Optional",{"type":3095,"tag":3178,"props":5682,"children":5683},{"style":3517},[5684],{"type":3100,"value":5685}," if",{"type":3095,"tag":3178,"props":5687,"children":5688},{"style":3517},[5689],{"type":3100,"value":5690}," the",{"type":3095,"tag":3178,"props":5692,"children":5693},{"style":3517},[5694],{"type":3100,"value":5695}," ability",{"type":3095,"tag":3178,"props":5697,"children":5698},{"style":3517},[5699],{"type":3100,"value":5700}," does",{"type":3095,"tag":3178,"props":5702,"children":5703},{"style":3517},[5704],{"type":3100,"value":5705}," not",{"type":3095,"tag":3178,"props":5707,"children":5708},{"style":3517},[5709],{"type":3100,"value":5710}," take",{"type":3095,"tag":3178,"props":5712,"children":5713},{"style":3517},[5714],{"type":3100,"value":5715}," any",{"type":3095,"tag":3178,"props":5717,"children":5718},{"style":3517},[5719],{"type":3100,"value":5720}," arguments\n",{"type":3095,"tag":3178,"props":5722,"children":5723},{"class":3258,"line":3452},[5724],{"type":3095,"tag":3178,"props":5725,"children":5726},{"style":3372},[5727],{"type":3100,"value":5728},"  >\n",{"type":3095,"tag":3178,"props":5730,"children":5731},{"class":3258,"line":3465},[5732,5737,5742,5747,5752,5757,5761],{"type":3095,"tag":3178,"props":5733,"children":5734},{"style":3372},[5735],{"type":3100,"value":5736},"    \u003C",{"type":3095,"tag":3178,"props":5738,"children":5739},{"style":3381},[5740],{"type":3100,"value":5741},"button",{"type":3095,"tag":3178,"props":5743,"children":5744},{"style":3372},[5745],{"type":3100,"value":5746},">",{"type":3095,"tag":3178,"props":5748,"children":5749},{"style":3366},[5750],{"type":3100,"value":5751},"Edit",{"type":3095,"tag":3178,"props":5753,"children":5754},{"style":3372},[5755],{"type":3100,"value":5756},"\u003C\u002F",{"type":3095,"tag":3178,"props":5758,"children":5759},{"style":3381},[5760],{"type":3100,"value":5741},{"type":3095,"tag":3178,"props":5762,"children":5763},{"style":3372},[5764],{"type":3100,"value":5586},{"type":3095,"tag":3178,"props":5766,"children":5767},{"class":3258,"line":3482},[5768,5773,5778],{"type":3095,"tag":3178,"props":5769,"children":5770},{"style":3372},[5771],{"type":3100,"value":5772},"  \u003C\u002F",{"type":3095,"tag":3178,"props":5774,"children":5775},{"style":3381},[5776],{"type":3100,"value":5777},"Can",{"type":3095,"tag":3178,"props":5779,"children":5780},{"style":3372},[5781],{"type":3100,"value":5586},{"type":3095,"tag":3178,"props":5783,"children":5784},{"class":3258,"line":3499},[5785,5789,5793],{"type":3095,"tag":3178,"props":5786,"children":5787},{"style":3372},[5788],{"type":3100,"value":5756},{"type":3095,"tag":3178,"props":5790,"children":5791},{"style":3381},[5792],{"type":3100,"value":5581},{"type":3095,"tag":3178,"props":5794,"children":5795},{"style":3372},[5796],{"type":3100,"value":5586},{"type":3095,"tag":3102,"props":5798,"children":5799},{},[5800,5801,5806],{"type":3100,"value":4880},{"type":3095,"tag":3253,"props":5802,"children":5804},{"className":5803},[],[5805],{"type":3100,"value":5777},{"type":3100,"value":5807}," component will render the button only if the user can edit the post. If the user cannot edit the post, the button will not be rendered.",{"type":3095,"tag":3102,"props":5809,"children":5810},{},[5811,5813,5819],{"type":3100,"value":5812},"As a counterpart, you can use the ",{"type":3095,"tag":3253,"props":5814,"children":5816},{"className":5815},[],[5817],{"type":3100,"value":5818},"Cannot",{"type":3100,"value":5820}," component to render the button only if the user cannot edit the post.",{"type":3095,"tag":3246,"props":5822,"children":5824},{"className":5562,"code":5823,"language":5564,"meta":3045,"style":3045},"\u003Ctemplate>\n  \u003CCannot\n    :ability=\"editPost\"\n    :args=\"[post]\" \u002F\u002F Optional if the ability does not take any arguments\n  >\n    \u003Cp>You're not allowed to edit the post.\u003C\u002Fp>\n  \u003C\u002FCannot>\n\u003C\u002Ftemplate>\n",[5825],{"type":3095,"tag":3253,"props":5826,"children":5827},{"__ignoreMap":3045},[5828,5843,5855,5882,5957,5964,5996,6011],{"type":3095,"tag":3178,"props":5829,"children":5830},{"class":3258,"line":3079},[5831,5835,5839],{"type":3095,"tag":3178,"props":5832,"children":5833},{"style":3372},[5834],{"type":3100,"value":5576},{"type":3095,"tag":3178,"props":5836,"children":5837},{"style":3381},[5838],{"type":3100,"value":5581},{"type":3095,"tag":3178,"props":5840,"children":5841},{"style":3372},[5842],{"type":3100,"value":5586},{"type":3095,"tag":3178,"props":5844,"children":5845},{"class":3258,"line":3072},[5846,5850],{"type":3095,"tag":3178,"props":5847,"children":5848},{"style":3372},[5849],{"type":3100,"value":5594},{"type":3095,"tag":3178,"props":5851,"children":5852},{"style":3381},[5853],{"type":3100,"value":5854},"Cannot\n",{"type":3095,"tag":3178,"props":5856,"children":5857},{"class":3258,"line":3068},[5858,5862,5866,5870,5874,5878],{"type":3095,"tag":3178,"props":5859,"children":5860},{"style":3372},[5861],{"type":3100,"value":5607},{"type":3095,"tag":3178,"props":5863,"children":5864},{"style":3517},[5865],{"type":3100,"value":5612},{"type":3095,"tag":3178,"props":5867,"children":5868},{"style":3372},[5869],{"type":3100,"value":4509},{"type":3095,"tag":3178,"props":5871,"children":5872},{"style":3372},[5873],{"type":3100,"value":5621},{"type":3095,"tag":3178,"props":5875,"children":5876},{"style":3366},[5877],{"type":3100,"value":5626},{"type":3095,"tag":3178,"props":5879,"children":5880},{"style":3372},[5881],{"type":3100,"value":5631},{"type":3095,"tag":3178,"props":5883,"children":5884},{"class":3258,"line":3433},[5885,5889,5893,5897,5901,5905,5909,5913,5917,5921,5925,5929,5933,5937,5941,5945,5949,5953],{"type":3095,"tag":3178,"props":5886,"children":5887},{"style":3372},[5888],{"type":3100,"value":5607},{"type":3095,"tag":3178,"props":5890,"children":5891},{"style":3517},[5892],{"type":3100,"value":5643},{"type":3095,"tag":3178,"props":5894,"children":5895},{"style":3372},[5896],{"type":3100,"value":4509},{"type":3095,"tag":3178,"props":5898,"children":5899},{"style":3372},[5900],{"type":3100,"value":5621},{"type":3095,"tag":3178,"props":5902,"children":5903},{"style":3372},[5904],{"type":3100,"value":5656},{"type":3095,"tag":3178,"props":5906,"children":5907},{"style":3366},[5908],{"type":3100,"value":5661},{"type":3095,"tag":3178,"props":5910,"children":5911},{"style":3372},[5912],{"type":3100,"value":5666},{"type":3095,"tag":3178,"props":5914,"children":5915},{"style":3372},[5916],{"type":3100,"value":5621},{"type":3095,"tag":3178,"props":5918,"children":5919},{"style":3372},[5920],{"type":3100,"value":5675},{"type":3095,"tag":3178,"props":5922,"children":5923},{"style":3517},[5924],{"type":3100,"value":5680},{"type":3095,"tag":3178,"props":5926,"children":5927},{"style":3517},[5928],{"type":3100,"value":5685},{"type":3095,"tag":3178,"props":5930,"children":5931},{"style":3517},[5932],{"type":3100,"value":5690},{"type":3095,"tag":3178,"props":5934,"children":5935},{"style":3517},[5936],{"type":3100,"value":5695},{"type":3095,"tag":3178,"props":5938,"children":5939},{"style":3517},[5940],{"type":3100,"value":5700},{"type":3095,"tag":3178,"props":5942,"children":5943},{"style":3517},[5944],{"type":3100,"value":5705},{"type":3095,"tag":3178,"props":5946,"children":5947},{"style":3517},[5948],{"type":3100,"value":5710},{"type":3095,"tag":3178,"props":5950,"children":5951},{"style":3517},[5952],{"type":3100,"value":5715},{"type":3095,"tag":3178,"props":5954,"children":5955},{"style":3517},[5956],{"type":3100,"value":5720},{"type":3095,"tag":3178,"props":5958,"children":5959},{"class":3258,"line":3452},[5960],{"type":3095,"tag":3178,"props":5961,"children":5962},{"style":3372},[5963],{"type":3100,"value":5728},{"type":3095,"tag":3178,"props":5965,"children":5966},{"class":3258,"line":3465},[5967,5971,5975,5979,5984,5988,5992],{"type":3095,"tag":3178,"props":5968,"children":5969},{"style":3372},[5970],{"type":3100,"value":5736},{"type":3095,"tag":3178,"props":5972,"children":5973},{"style":3381},[5974],{"type":3100,"value":3102},{"type":3095,"tag":3178,"props":5976,"children":5977},{"style":3372},[5978],{"type":3100,"value":5746},{"type":3095,"tag":3178,"props":5980,"children":5981},{"style":3366},[5982],{"type":3100,"value":5983},"You're not allowed to edit the post.",{"type":3095,"tag":3178,"props":5985,"children":5986},{"style":3372},[5987],{"type":3100,"value":5756},{"type":3095,"tag":3178,"props":5989,"children":5990},{"style":3381},[5991],{"type":3100,"value":3102},{"type":3095,"tag":3178,"props":5993,"children":5994},{"style":3372},[5995],{"type":3100,"value":5586},{"type":3095,"tag":3178,"props":5997,"children":5998},{"class":3258,"line":3482},[5999,6003,6007],{"type":3095,"tag":3178,"props":6000,"children":6001},{"style":3372},[6002],{"type":3100,"value":5772},{"type":3095,"tag":3178,"props":6004,"children":6005},{"style":3381},[6006],{"type":3100,"value":5818},{"type":3095,"tag":3178,"props":6008,"children":6009},{"style":3372},[6010],{"type":3100,"value":5586},{"type":3095,"tag":3178,"props":6012,"children":6013},{"class":3258,"line":3499},[6014,6018,6022],{"type":3095,"tag":3178,"props":6015,"children":6016},{"style":3372},[6017],{"type":3100,"value":5756},{"type":3095,"tag":3178,"props":6019,"children":6020},{"style":3381},[6021],{"type":3100,"value":5581},{"type":3095,"tag":3178,"props":6023,"children":6024},{"style":3372},[6025],{"type":3100,"value":5586},{"type":3095,"tag":3102,"props":6027,"children":6028},{},[6029,6030,6036,6038,6043,6044,6049,6051,6058],{"type":3100,"value":4880},{"type":3095,"tag":3253,"props":6031,"children":6033},{"className":6032},[],[6034],{"type":3100,"value":6035},"Bouncer",{"type":3100,"value":6037}," component offers a more flexible and centralized way to handle both can and cannot scenarios within a single component. Instead of using separate ",{"type":3095,"tag":3253,"props":6039,"children":6041},{"className":6040},[],[6042],{"type":3100,"value":5777},{"type":3100,"value":5481},{"type":3095,"tag":3253,"props":6045,"children":6047},{"className":6046},[],[6048],{"type":3100,"value":5818},{"type":3100,"value":6050}," components, you can leverage the Bouncer component and its ",{"type":3095,"tag":3106,"props":6052,"children":6055},{"href":6053,"rel":6054},"https:\u002F\u002Fvuejs.org\u002Fguide\u002Fcomponents\u002Fslots.html#named-slots",[3110],[6056],{"type":3100,"value":6057},"named slots",{"type":3100,"value":6059}," to handle both states in a unified block.",{"type":3095,"tag":3246,"props":6061,"children":6063},{"className":5562,"code":6062,"language":5564,"meta":3045,"style":3045},"\u003CBouncer\n  :ability=\"editPost\"\n  :args=\"[post]\" \u002F\u002F Optional if the ability does not take any arguments\n>\n  \u003Ctemplate #can>\n    \u003Cbutton>Edit\u003C\u002Fbutton>\n  \u003C\u002Ftemplate>\n\n  \u003Ctemplate #cannot>\n    \u003Cp>You're not allowed to edit the post.\u003C\u002Fp>\n  \u003C\u002Ftemplate>\n\u003C\u002FBouncer>\n",[6064],{"type":3095,"tag":3253,"props":6065,"children":6066},{"__ignoreMap":3045},[6067,6079,6107,6175,6182,6190,6198,6206,6213,6221,6229,6236],{"type":3095,"tag":3178,"props":6068,"children":6069},{"class":3258,"line":3079},[6070,6074],{"type":3095,"tag":3178,"props":6071,"children":6072},{"style":3372},[6073],{"type":3100,"value":5576},{"type":3095,"tag":3178,"props":6075,"children":6076},{"style":3381},[6077],{"type":3100,"value":6078},"Bouncer\n",{"type":3095,"tag":3178,"props":6080,"children":6081},{"class":3258,"line":3072},[6082,6087,6091,6095,6099,6103],{"type":3095,"tag":3178,"props":6083,"children":6084},{"style":3372},[6085],{"type":3100,"value":6086},"  :",{"type":3095,"tag":3178,"props":6088,"children":6089},{"style":3517},[6090],{"type":3100,"value":5612},{"type":3095,"tag":3178,"props":6092,"children":6093},{"style":3372},[6094],{"type":3100,"value":4509},{"type":3095,"tag":3178,"props":6096,"children":6097},{"style":3372},[6098],{"type":3100,"value":5621},{"type":3095,"tag":3178,"props":6100,"children":6101},{"style":3366},[6102],{"type":3100,"value":5626},{"type":3095,"tag":3178,"props":6104,"children":6105},{"style":3372},[6106],{"type":3100,"value":5631},{"type":3095,"tag":3178,"props":6108,"children":6109},{"class":3258,"line":3068},[6110,6114,6118,6122,6126,6131,6135,6139,6143,6147,6151,6155,6159,6163,6167,6171],{"type":3095,"tag":3178,"props":6111,"children":6112},{"style":3372},[6113],{"type":3100,"value":6086},{"type":3095,"tag":3178,"props":6115,"children":6116},{"style":3517},[6117],{"type":3100,"value":5643},{"type":3095,"tag":3178,"props":6119,"children":6120},{"style":3372},[6121],{"type":3100,"value":4509},{"type":3095,"tag":3178,"props":6123,"children":6124},{"style":3372},[6125],{"type":3100,"value":5621},{"type":3095,"tag":3178,"props":6127,"children":6128},{"style":3366},[6129],{"type":3100,"value":6130},"[post]",{"type":3095,"tag":3178,"props":6132,"children":6133},{"style":3372},[6134],{"type":3100,"value":5621},{"type":3095,"tag":3178,"props":6136,"children":6137},{"style":3366},[6138],{"type":3100,"value":5675},{"type":3095,"tag":3178,"props":6140,"children":6141},{"style":3517},[6142],{"type":3100,"value":5680},{"type":3095,"tag":3178,"props":6144,"children":6145},{"style":3517},[6146],{"type":3100,"value":5685},{"type":3095,"tag":3178,"props":6148,"children":6149},{"style":3517},[6150],{"type":3100,"value":5690},{"type":3095,"tag":3178,"props":6152,"children":6153},{"style":3517},[6154],{"type":3100,"value":5695},{"type":3095,"tag":3178,"props":6156,"children":6157},{"style":3517},[6158],{"type":3100,"value":5700},{"type":3095,"tag":3178,"props":6160,"children":6161},{"style":3517},[6162],{"type":3100,"value":5705},{"type":3095,"tag":3178,"props":6164,"children":6165},{"style":3517},[6166],{"type":3100,"value":5710},{"type":3095,"tag":3178,"props":6168,"children":6169},{"style":3517},[6170],{"type":3100,"value":5715},{"type":3095,"tag":3178,"props":6172,"children":6173},{"style":3517},[6174],{"type":3100,"value":5720},{"type":3095,"tag":3178,"props":6176,"children":6177},{"class":3258,"line":3433},[6178],{"type":3095,"tag":3178,"props":6179,"children":6180},{"style":3372},[6181],{"type":3100,"value":5586},{"type":3095,"tag":3178,"props":6183,"children":6184},{"class":3258,"line":3452},[6185],{"type":3095,"tag":3178,"props":6186,"children":6187},{"style":3366},[6188],{"type":3100,"value":6189},"  \u003Ctemplate #can>\n",{"type":3095,"tag":3178,"props":6191,"children":6192},{"class":3258,"line":3465},[6193],{"type":3095,"tag":3178,"props":6194,"children":6195},{"style":3366},[6196],{"type":3100,"value":6197},"    \u003Cbutton>Edit\u003C\u002Fbutton>\n",{"type":3095,"tag":3178,"props":6199,"children":6200},{"class":3258,"line":3482},[6201],{"type":3095,"tag":3178,"props":6202,"children":6203},{"style":3366},[6204],{"type":3100,"value":6205},"  \u003C\u002Ftemplate>\n",{"type":3095,"tag":3178,"props":6207,"children":6208},{"class":3258,"line":3499},[6209],{"type":3095,"tag":3178,"props":6210,"children":6211},{"emptyLinePlaceholder":1200},[6212],{"type":3100,"value":4548},{"type":3095,"tag":3178,"props":6214,"children":6215},{"class":3258,"line":3527},[6216],{"type":3095,"tag":3178,"props":6217,"children":6218},{"style":3366},[6219],{"type":3100,"value":6220},"  \u003Ctemplate #cannot>\n",{"type":3095,"tag":3178,"props":6222,"children":6223},{"class":3258,"line":3537},[6224],{"type":3095,"tag":3178,"props":6225,"children":6226},{"style":3366},[6227],{"type":3100,"value":6228},"    \u003Cp>You're not allowed to edit the post.\u003C\u002Fp>\n",{"type":3095,"tag":3178,"props":6230,"children":6231},{"class":3258,"line":3546},[6232],{"type":3095,"tag":3178,"props":6233,"children":6234},{"style":3366},[6235],{"type":3100,"value":6205},{"type":3095,"tag":3178,"props":6237,"children":6238},{"class":3258,"line":3555},[6239,6243,6247],{"type":3095,"tag":3178,"props":6240,"children":6241},{"style":3372},[6242],{"type":3100,"value":5756},{"type":3095,"tag":3178,"props":6244,"children":6245},{"style":3381},[6246],{"type":3100,"value":6035},{"type":3095,"tag":3178,"props":6248,"children":6249},{"style":3372},[6250],{"type":3100,"value":5586},{"type":3095,"tag":3102,"props":6252,"children":6253},{},[6254,6256,6262],{"type":3100,"value":6255},"All of these components accept a prop named ",{"type":3095,"tag":3253,"props":6257,"children":6259},{"className":6258},[],[6260],{"type":3100,"value":6261},"as",{"type":3100,"value":6263}," to define the HTML tag to render. By default, it's a renderless component.",{"type":3095,"tag":3246,"props":6265,"children":6267},{"className":5562,"code":6266,"language":5564,"meta":3045,"style":3045},"\u003CCan\n  :ability=\"editPost\"\n  :args=\"[post]\"\n  as=\"div\"\n>\n  \u003Cbutton>Edit\u003C\u002Fbutton>\n\u003C\u002FCan>\n",[6268],{"type":3095,"tag":3253,"props":6269,"children":6270},{"__ignoreMap":3045},[6271,6282,6309,6336,6361,6368,6376],{"type":3095,"tag":3178,"props":6272,"children":6273},{"class":3258,"line":3079},[6274,6278],{"type":3095,"tag":3178,"props":6275,"children":6276},{"style":3372},[6277],{"type":3100,"value":5576},{"type":3095,"tag":3178,"props":6279,"children":6280},{"style":3381},[6281],{"type":3100,"value":5599},{"type":3095,"tag":3178,"props":6283,"children":6284},{"class":3258,"line":3072},[6285,6289,6293,6297,6301,6305],{"type":3095,"tag":3178,"props":6286,"children":6287},{"style":3372},[6288],{"type":3100,"value":6086},{"type":3095,"tag":3178,"props":6290,"children":6291},{"style":3517},[6292],{"type":3100,"value":5612},{"type":3095,"tag":3178,"props":6294,"children":6295},{"style":3372},[6296],{"type":3100,"value":4509},{"type":3095,"tag":3178,"props":6298,"children":6299},{"style":3372},[6300],{"type":3100,"value":5621},{"type":3095,"tag":3178,"props":6302,"children":6303},{"style":3366},[6304],{"type":3100,"value":5626},{"type":3095,"tag":3178,"props":6306,"children":6307},{"style":3372},[6308],{"type":3100,"value":5631},{"type":3095,"tag":3178,"props":6310,"children":6311},{"class":3258,"line":3068},[6312,6316,6320,6324,6328,6332],{"type":3095,"tag":3178,"props":6313,"children":6314},{"style":3372},[6315],{"type":3100,"value":6086},{"type":3095,"tag":3178,"props":6317,"children":6318},{"style":3517},[6319],{"type":3100,"value":5643},{"type":3095,"tag":3178,"props":6321,"children":6322},{"style":3372},[6323],{"type":3100,"value":4509},{"type":3095,"tag":3178,"props":6325,"children":6326},{"style":3372},[6327],{"type":3100,"value":5621},{"type":3095,"tag":3178,"props":6329,"children":6330},{"style":3366},[6331],{"type":3100,"value":6130},{"type":3095,"tag":3178,"props":6333,"children":6334},{"style":3372},[6335],{"type":3100,"value":5631},{"type":3095,"tag":3178,"props":6337,"children":6338},{"class":3258,"line":3433},[6339,6344,6348,6352,6357],{"type":3095,"tag":3178,"props":6340,"children":6341},{"style":3517},[6342],{"type":3100,"value":6343},"  as",{"type":3095,"tag":3178,"props":6345,"children":6346},{"style":3372},[6347],{"type":3100,"value":4509},{"type":3095,"tag":3178,"props":6349,"children":6350},{"style":3372},[6351],{"type":3100,"value":5621},{"type":3095,"tag":3178,"props":6353,"children":6354},{"style":3268},[6355],{"type":3100,"value":6356},"div",{"type":3095,"tag":3178,"props":6358,"children":6359},{"style":3372},[6360],{"type":3100,"value":5631},{"type":3095,"tag":3178,"props":6362,"children":6363},{"class":3258,"line":3452},[6364],{"type":3095,"tag":3178,"props":6365,"children":6366},{"style":3372},[6367],{"type":3100,"value":5586},{"type":3095,"tag":3178,"props":6369,"children":6370},{"class":3258,"line":3465},[6371],{"type":3095,"tag":3178,"props":6372,"children":6373},{"style":3366},[6374],{"type":3100,"value":6375},"  \u003Cbutton>Edit\u003C\u002Fbutton>\n",{"type":3095,"tag":3178,"props":6377,"children":6378},{"class":3258,"line":3482},[6379,6383,6387],{"type":3095,"tag":3178,"props":6380,"children":6381},{"style":3372},[6382],{"type":3100,"value":5756},{"type":3095,"tag":3178,"props":6384,"children":6385},{"style":3381},[6386],{"type":3100,"value":5777},{"type":3095,"tag":3178,"props":6388,"children":6389},{"style":3372},[6390],{"type":3100,"value":5586},{"type":3095,"tag":3102,"props":6392,"children":6393},{},[6394],{"type":3100,"value":6395},"This will render:",{"type":3095,"tag":3246,"props":6397,"children":6401},{"className":6398,"code":6399,"language":6400,"meta":3045,"style":3045},"language-html shiki shiki-themes material-theme-lighter material-theme-lighter material-theme-palenight","\u003Cdiv>\n  \u003Cbutton>Edit\u003C\u002Fbutton>\n\u003C\u002Fdiv>\n","html",[6402],{"type":3095,"tag":3253,"props":6403,"children":6404},{"__ignoreMap":3045},[6405,6420,6451],{"type":3095,"tag":3178,"props":6406,"children":6407},{"class":3258,"line":3079},[6408,6412,6416],{"type":3095,"tag":3178,"props":6409,"children":6410},{"style":3372},[6411],{"type":3100,"value":5576},{"type":3095,"tag":3178,"props":6413,"children":6414},{"style":3381},[6415],{"type":3100,"value":6356},{"type":3095,"tag":3178,"props":6417,"children":6418},{"style":3372},[6419],{"type":3100,"value":5586},{"type":3095,"tag":3178,"props":6421,"children":6422},{"class":3258,"line":3072},[6423,6427,6431,6435,6439,6443,6447],{"type":3095,"tag":3178,"props":6424,"children":6425},{"style":3372},[6426],{"type":3100,"value":5594},{"type":3095,"tag":3178,"props":6428,"children":6429},{"style":3381},[6430],{"type":3100,"value":5741},{"type":3095,"tag":3178,"props":6432,"children":6433},{"style":3372},[6434],{"type":3100,"value":5746},{"type":3095,"tag":3178,"props":6436,"children":6437},{"style":3366},[6438],{"type":3100,"value":5751},{"type":3095,"tag":3178,"props":6440,"children":6441},{"style":3372},[6442],{"type":3100,"value":5756},{"type":3095,"tag":3178,"props":6444,"children":6445},{"style":3381},[6446],{"type":3100,"value":5741},{"type":3095,"tag":3178,"props":6448,"children":6449},{"style":3372},[6450],{"type":3100,"value":5586},{"type":3095,"tag":3178,"props":6452,"children":6453},{"class":3258,"line":3068},[6454,6458,6462],{"type":3095,"tag":3178,"props":6455,"children":6456},{"style":3372},[6457],{"type":3100,"value":5756},{"type":3095,"tag":3178,"props":6459,"children":6460},{"style":3381},[6461],{"type":3100,"value":6356},{"type":3095,"tag":3178,"props":6463,"children":6464},{"style":3372},[6465],{"type":3100,"value":5586},{"type":3095,"tag":3102,"props":6467,"children":6468},{},[6469],{"type":3100,"value":6470},"Instead of:",{"type":3095,"tag":3246,"props":6472,"children":6474},{"className":6398,"code":6473,"language":6400,"meta":3045,"style":3045},"\u003Cbutton>Edit\u003C\u002Fbutton>\n",[6475],{"type":3095,"tag":3253,"props":6476,"children":6477},{"__ignoreMap":3045},[6478],{"type":3095,"tag":3178,"props":6479,"children":6480},{"class":3258,"line":3079},[6481,6485,6489,6493,6497,6501,6505],{"type":3095,"tag":3178,"props":6482,"children":6483},{"style":3372},[6484],{"type":3100,"value":5576},{"type":3095,"tag":3178,"props":6486,"children":6487},{"style":3381},[6488],{"type":3100,"value":5741},{"type":3095,"tag":3178,"props":6490,"children":6491},{"style":3372},[6492],{"type":3100,"value":5746},{"type":3095,"tag":3178,"props":6494,"children":6495},{"style":3366},[6496],{"type":3100,"value":5751},{"type":3095,"tag":3178,"props":6498,"children":6499},{"style":3372},[6500],{"type":3100,"value":5756},{"type":3095,"tag":3178,"props":6502,"children":6503},{"style":3381},[6504],{"type":3100,"value":5741},{"type":3095,"tag":3178,"props":6506,"children":6507},{"style":3372},[6508],{"type":3100,"value":5586},{"type":3095,"tag":3894,"props":6510,"children":6512},{"id":6511},"multiple-abilities",[6513],{"type":3100,"value":6514},"Multiple abilities",{"type":3095,"tag":3102,"props":6516,"children":6517},{},[6518,6520,6525,6527,6532],{"type":3100,"value":6519},"If you possess multiple abilities, you can provide an array of abilities to the components. The component will render only if ",{"type":3095,"tag":4705,"props":6521,"children":6522},{},[6523],{"type":3100,"value":6524},"all",{"type":3100,"value":6526}," of the abilities ",{"type":3095,"tag":4705,"props":6528,"children":6529},{},[6530],{"type":3100,"value":6531},"match",{"type":3100,"value":6533}," the specified requirements of the component.",{"type":3095,"tag":3246,"props":6535,"children":6537},{"className":5562,"code":6536,"language":5564,"meta":3045,"style":3045},"\u003CCan :ability=\"[editPost, deletePost]\" :args=\"[[post], [post]]\" \u002F>\n\n\u003CCannot :ability=\"[editPost, deletePost]\" :args=\"[[post], [post]]\" \u002F>\n\n\u003CBouncer :ability=\"[editPost, deletePost]\" :args=\"[[post], [post]]\">\n  \u003Ctemplate #can>\n    \u003Cbutton>Edit\u003C\u002Fbutton>\n    \u003Cbutton>Delete\u003C\u002Fbutton>\n  \u003C\u002Ftemplate>\n\n  \u003Ctemplate #cannot>\n    \u003Cp>You're not allowed to edit or delete the post.\u003C\u002Fp>\n  \u003C\u002Ftemplate>\n\u003C\u002FBouncer>\n",[6538],{"type":3095,"tag":3253,"props":6539,"children":6540},{"__ignoreMap":3045},[6541,6626,6633,6712,6719,6798,6805,6812,6820,6827,6834,6841,6849,6856],{"type":3095,"tag":3178,"props":6542,"children":6543},{"class":3258,"line":3079},[6544,6548,6552,6557,6561,6565,6569,6574,6578,6583,6587,6591,6595,6599,6603,6608,6612,6617,6621],{"type":3095,"tag":3178,"props":6545,"children":6546},{"style":3372},[6547],{"type":3100,"value":5576},{"type":3095,"tag":3178,"props":6549,"children":6550},{"style":3381},[6551],{"type":3100,"value":5777},{"type":3095,"tag":3178,"props":6553,"children":6554},{"style":3372},[6555],{"type":3100,"value":6556}," :",{"type":3095,"tag":3178,"props":6558,"children":6559},{"style":3517},[6560],{"type":3100,"value":5612},{"type":3095,"tag":3178,"props":6562,"children":6563},{"style":3372},[6564],{"type":3100,"value":4509},{"type":3095,"tag":3178,"props":6566,"children":6567},{"style":3372},[6568],{"type":3100,"value":5621},{"type":3095,"tag":3178,"props":6570,"children":6571},{"style":3366},[6572],{"type":3100,"value":6573},"[editPost",{"type":3095,"tag":3178,"props":6575,"children":6576},{"style":3372},[6577],{"type":3100,"value":3715},{"type":3095,"tag":3178,"props":6579,"children":6580},{"style":3366},[6581],{"type":3100,"value":6582}," deletePost]",{"type":3095,"tag":3178,"props":6584,"children":6585},{"style":3372},[6586],{"type":3100,"value":5621},{"type":3095,"tag":3178,"props":6588,"children":6589},{"style":3372},[6590],{"type":3100,"value":6556},{"type":3095,"tag":3178,"props":6592,"children":6593},{"style":3517},[6594],{"type":3100,"value":5643},{"type":3095,"tag":3178,"props":6596,"children":6597},{"style":3372},[6598],{"type":3100,"value":4509},{"type":3095,"tag":3178,"props":6600,"children":6601},{"style":3372},[6602],{"type":3100,"value":5621},{"type":3095,"tag":3178,"props":6604,"children":6605},{"style":3366},[6606],{"type":3100,"value":6607},"[[post]",{"type":3095,"tag":3178,"props":6609,"children":6610},{"style":3372},[6611],{"type":3100,"value":3715},{"type":3095,"tag":3178,"props":6613,"children":6614},{"style":3366},[6615],{"type":3100,"value":6616}," [post]]",{"type":3095,"tag":3178,"props":6618,"children":6619},{"style":3372},[6620],{"type":3100,"value":5621},{"type":3095,"tag":3178,"props":6622,"children":6623},{"style":3372},[6624],{"type":3100,"value":6625}," \u002F>\n",{"type":3095,"tag":3178,"props":6627,"children":6628},{"class":3258,"line":3072},[6629],{"type":3095,"tag":3178,"props":6630,"children":6631},{"emptyLinePlaceholder":1200},[6632],{"type":3100,"value":4548},{"type":3095,"tag":3178,"props":6634,"children":6635},{"class":3258,"line":3068},[6636,6640,6644,6648,6652,6656,6660,6664,6668,6672,6676,6680,6684,6688,6692,6696,6700,6704,6708],{"type":3095,"tag":3178,"props":6637,"children":6638},{"style":3372},[6639],{"type":3100,"value":5576},{"type":3095,"tag":3178,"props":6641,"children":6642},{"style":3381},[6643],{"type":3100,"value":5818},{"type":3095,"tag":3178,"props":6645,"children":6646},{"style":3372},[6647],{"type":3100,"value":6556},{"type":3095,"tag":3178,"props":6649,"children":6650},{"style":3517},[6651],{"type":3100,"value":5612},{"type":3095,"tag":3178,"props":6653,"children":6654},{"style":3372},[6655],{"type":3100,"value":4509},{"type":3095,"tag":3178,"props":6657,"children":6658},{"style":3372},[6659],{"type":3100,"value":5621},{"type":3095,"tag":3178,"props":6661,"children":6662},{"style":3366},[6663],{"type":3100,"value":6573},{"type":3095,"tag":3178,"props":6665,"children":6666},{"style":3372},[6667],{"type":3100,"value":3715},{"type":3095,"tag":3178,"props":6669,"children":6670},{"style":3366},[6671],{"type":3100,"value":6582},{"type":3095,"tag":3178,"props":6673,"children":6674},{"style":3372},[6675],{"type":3100,"value":5621},{"type":3095,"tag":3178,"props":6677,"children":6678},{"style":3372},[6679],{"type":3100,"value":6556},{"type":3095,"tag":3178,"props":6681,"children":6682},{"style":3517},[6683],{"type":3100,"value":5643},{"type":3095,"tag":3178,"props":6685,"children":6686},{"style":3372},[6687],{"type":3100,"value":4509},{"type":3095,"tag":3178,"props":6689,"children":6690},{"style":3372},[6691],{"type":3100,"value":5621},{"type":3095,"tag":3178,"props":6693,"children":6694},{"style":3366},[6695],{"type":3100,"value":6607},{"type":3095,"tag":3178,"props":6697,"children":6698},{"style":3372},[6699],{"type":3100,"value":3715},{"type":3095,"tag":3178,"props":6701,"children":6702},{"style":3366},[6703],{"type":3100,"value":6616},{"type":3095,"tag":3178,"props":6705,"children":6706},{"style":3372},[6707],{"type":3100,"value":5621},{"type":3095,"tag":3178,"props":6709,"children":6710},{"style":3372},[6711],{"type":3100,"value":6625},{"type":3095,"tag":3178,"props":6713,"children":6714},{"class":3258,"line":3433},[6715],{"type":3095,"tag":3178,"props":6716,"children":6717},{"emptyLinePlaceholder":1200},[6718],{"type":3100,"value":4548},{"type":3095,"tag":3178,"props":6720,"children":6721},{"class":3258,"line":3452},[6722,6726,6730,6734,6738,6742,6746,6750,6754,6758,6762,6766,6770,6774,6778,6782,6786,6790,6794],{"type":3095,"tag":3178,"props":6723,"children":6724},{"style":3372},[6725],{"type":3100,"value":5576},{"type":3095,"tag":3178,"props":6727,"children":6728},{"style":3381},[6729],{"type":3100,"value":6035},{"type":3095,"tag":3178,"props":6731,"children":6732},{"style":3372},[6733],{"type":3100,"value":6556},{"type":3095,"tag":3178,"props":6735,"children":6736},{"style":3517},[6737],{"type":3100,"value":5612},{"type":3095,"tag":3178,"props":6739,"children":6740},{"style":3372},[6741],{"type":3100,"value":4509},{"type":3095,"tag":3178,"props":6743,"children":6744},{"style":3372},[6745],{"type":3100,"value":5621},{"type":3095,"tag":3178,"props":6747,"children":6748},{"style":3366},[6749],{"type":3100,"value":6573},{"type":3095,"tag":3178,"props":6751,"children":6752},{"style":3372},[6753],{"type":3100,"value":3715},{"type":3095,"tag":3178,"props":6755,"children":6756},{"style":3366},[6757],{"type":3100,"value":6582},{"type":3095,"tag":3178,"props":6759,"children":6760},{"style":3372},[6761],{"type":3100,"value":5621},{"type":3095,"tag":3178,"props":6763,"children":6764},{"style":3372},[6765],{"type":3100,"value":6556},{"type":3095,"tag":3178,"props":6767,"children":6768},{"style":3517},[6769],{"type":3100,"value":5643},{"type":3095,"tag":3178,"props":6771,"children":6772},{"style":3372},[6773],{"type":3100,"value":4509},{"type":3095,"tag":3178,"props":6775,"children":6776},{"style":3372},[6777],{"type":3100,"value":5621},{"type":3095,"tag":3178,"props":6779,"children":6780},{"style":3366},[6781],{"type":3100,"value":6607},{"type":3095,"tag":3178,"props":6783,"children":6784},{"style":3372},[6785],{"type":3100,"value":3715},{"type":3095,"tag":3178,"props":6787,"children":6788},{"style":3366},[6789],{"type":3100,"value":6616},{"type":3095,"tag":3178,"props":6791,"children":6792},{"style":3372},[6793],{"type":3100,"value":5621},{"type":3095,"tag":3178,"props":6795,"children":6796},{"style":3372},[6797],{"type":3100,"value":5586},{"type":3095,"tag":3178,"props":6799,"children":6800},{"class":3258,"line":3465},[6801],{"type":3095,"tag":3178,"props":6802,"children":6803},{"style":3366},[6804],{"type":3100,"value":6189},{"type":3095,"tag":3178,"props":6806,"children":6807},{"class":3258,"line":3482},[6808],{"type":3095,"tag":3178,"props":6809,"children":6810},{"style":3366},[6811],{"type":3100,"value":6197},{"type":3095,"tag":3178,"props":6813,"children":6814},{"class":3258,"line":3499},[6815],{"type":3095,"tag":3178,"props":6816,"children":6817},{"style":3366},[6818],{"type":3100,"value":6819},"    \u003Cbutton>Delete\u003C\u002Fbutton>\n",{"type":3095,"tag":3178,"props":6821,"children":6822},{"class":3258,"line":3527},[6823],{"type":3095,"tag":3178,"props":6824,"children":6825},{"style":3366},[6826],{"type":3100,"value":6205},{"type":3095,"tag":3178,"props":6828,"children":6829},{"class":3258,"line":3537},[6830],{"type":3095,"tag":3178,"props":6831,"children":6832},{"emptyLinePlaceholder":1200},[6833],{"type":3100,"value":4548},{"type":3095,"tag":3178,"props":6835,"children":6836},{"class":3258,"line":3546},[6837],{"type":3095,"tag":3178,"props":6838,"children":6839},{"style":3366},[6840],{"type":3100,"value":6220},{"type":3095,"tag":3178,"props":6842,"children":6843},{"class":3258,"line":3555},[6844],{"type":3095,"tag":3178,"props":6845,"children":6846},{"style":3366},[6847],{"type":3100,"value":6848},"    \u003Cp>You're not allowed to edit or delete the post.\u003C\u002Fp>\n",{"type":3095,"tag":3178,"props":6850,"children":6851},{"class":3258,"line":3084},[6852],{"type":3095,"tag":3178,"props":6853,"children":6854},{"style":3366},[6855],{"type":3100,"value":6205},{"type":3095,"tag":3178,"props":6857,"children":6858},{"class":3258,"line":3572},[6859,6863,6867],{"type":3095,"tag":3178,"props":6860,"children":6861},{"style":3372},[6862],{"type":3100,"value":5756},{"type":3095,"tag":3178,"props":6864,"children":6865},{"style":3381},[6866],{"type":3100,"value":6035},{"type":3095,"tag":3178,"props":6868,"children":6869},{"style":3372},[6870],{"type":3100,"value":5586},{"type":3095,"tag":3199,"props":6872,"children":6874},{"id":6873},"contribution",[6875],{"type":3100,"value":1021},{"type":3095,"tag":6877,"props":6878,"children":6879},"details",{},[6880,6882,6888],{"type":3100,"value":6881},"\n  ",{"type":3095,"tag":6883,"props":6884,"children":6885},"summary",{},[6886],{"type":3100,"value":6887},"Local development",{"type":3095,"tag":3246,"props":6889,"children":6891},{"className":3248,"code":6890,"language":3250,"meta":3045,"style":3045},"# Install dependencies\nnpm install\n\n# Generate type stubs\nnpm run dev:prepare\n\n# Develop with the playground\nnpm run dev\n\n# Build the playground\nnpm run dev:build\n\n# Run ESLint\nnpm run lint\n\n# Run Vitest\nnpm run test\nnpm run test:watch\n\n# Release new version\nnpm run release\n",[6892],{"type":3095,"tag":3253,"props":6893,"children":6894},{"__ignoreMap":3045},[6895,6903,6916,6923,6931,6948,6955,6963,6979,6986,6994,7010,7017,7025,7041,7048,7057,7074,7091,7099,7108],{"type":3095,"tag":3178,"props":6896,"children":6897},{"class":3258,"line":3079},[6898],{"type":3095,"tag":3178,"props":6899,"children":6900},{"style":3531},[6901],{"type":3100,"value":6902},"# Install dependencies\n",{"type":3095,"tag":3178,"props":6904,"children":6905},{"class":3258,"line":3072},[6906,6911],{"type":3095,"tag":3178,"props":6907,"children":6908},{"style":3262},[6909],{"type":3100,"value":6910},"npm",{"type":3095,"tag":3178,"props":6912,"children":6913},{"style":3268},[6914],{"type":3100,"value":6915}," install\n",{"type":3095,"tag":3178,"props":6917,"children":6918},{"class":3258,"line":3068},[6919],{"type":3095,"tag":3178,"props":6920,"children":6921},{"emptyLinePlaceholder":1200},[6922],{"type":3100,"value":4548},{"type":3095,"tag":3178,"props":6924,"children":6925},{"class":3258,"line":3433},[6926],{"type":3095,"tag":3178,"props":6927,"children":6928},{"style":3531},[6929],{"type":3100,"value":6930},"# Generate type stubs\n",{"type":3095,"tag":3178,"props":6932,"children":6933},{"class":3258,"line":3452},[6934,6938,6943],{"type":3095,"tag":3178,"props":6935,"children":6936},{"style":3262},[6937],{"type":3100,"value":6910},{"type":3095,"tag":3178,"props":6939,"children":6940},{"style":3268},[6941],{"type":3100,"value":6942}," run",{"type":3095,"tag":3178,"props":6944,"children":6945},{"style":3268},[6946],{"type":3100,"value":6947}," dev:prepare\n",{"type":3095,"tag":3178,"props":6949,"children":6950},{"class":3258,"line":3465},[6951],{"type":3095,"tag":3178,"props":6952,"children":6953},{"emptyLinePlaceholder":1200},[6954],{"type":3100,"value":4548},{"type":3095,"tag":3178,"props":6956,"children":6957},{"class":3258,"line":3482},[6958],{"type":3095,"tag":3178,"props":6959,"children":6960},{"style":3531},[6961],{"type":3100,"value":6962},"# Develop with the playground\n",{"type":3095,"tag":3178,"props":6964,"children":6965},{"class":3258,"line":3499},[6966,6970,6974],{"type":3095,"tag":3178,"props":6967,"children":6968},{"style":3262},[6969],{"type":3100,"value":6910},{"type":3095,"tag":3178,"props":6971,"children":6972},{"style":3268},[6973],{"type":3100,"value":6942},{"type":3095,"tag":3178,"props":6975,"children":6976},{"style":3268},[6977],{"type":3100,"value":6978}," dev\n",{"type":3095,"tag":3178,"props":6980,"children":6981},{"class":3258,"line":3527},[6982],{"type":3095,"tag":3178,"props":6983,"children":6984},{"emptyLinePlaceholder":1200},[6985],{"type":3100,"value":4548},{"type":3095,"tag":3178,"props":6987,"children":6988},{"class":3258,"line":3537},[6989],{"type":3095,"tag":3178,"props":6990,"children":6991},{"style":3531},[6992],{"type":3100,"value":6993},"# Build the playground\n",{"type":3095,"tag":3178,"props":6995,"children":6996},{"class":3258,"line":3546},[6997,7001,7005],{"type":3095,"tag":3178,"props":6998,"children":6999},{"style":3262},[7000],{"type":3100,"value":6910},{"type":3095,"tag":3178,"props":7002,"children":7003},{"style":3268},[7004],{"type":3100,"value":6942},{"type":3095,"tag":3178,"props":7006,"children":7007},{"style":3268},[7008],{"type":3100,"value":7009}," dev:build\n",{"type":3095,"tag":3178,"props":7011,"children":7012},{"class":3258,"line":3555},[7013],{"type":3095,"tag":3178,"props":7014,"children":7015},{"emptyLinePlaceholder":1200},[7016],{"type":3100,"value":4548},{"type":3095,"tag":3178,"props":7018,"children":7019},{"class":3258,"line":3084},[7020],{"type":3095,"tag":3178,"props":7021,"children":7022},{"style":3531},[7023],{"type":3100,"value":7024},"# Run ESLint\n",{"type":3095,"tag":3178,"props":7026,"children":7027},{"class":3258,"line":3572},[7028,7032,7036],{"type":3095,"tag":3178,"props":7029,"children":7030},{"style":3262},[7031],{"type":3100,"value":6910},{"type":3095,"tag":3178,"props":7033,"children":7034},{"style":3268},[7035],{"type":3100,"value":6942},{"type":3095,"tag":3178,"props":7037,"children":7038},{"style":3268},[7039],{"type":3100,"value":7040}," lint\n",{"type":3095,"tag":3178,"props":7042,"children":7043},{"class":3258,"line":3581},[7044],{"type":3095,"tag":3178,"props":7045,"children":7046},{"emptyLinePlaceholder":1200},[7047],{"type":3100,"value":4548},{"type":3095,"tag":3178,"props":7049,"children":7051},{"class":3258,"line":7050},16,[7052],{"type":3095,"tag":3178,"props":7053,"children":7054},{"style":3531},[7055],{"type":3100,"value":7056},"# Run Vitest\n",{"type":3095,"tag":3178,"props":7058,"children":7060},{"class":3258,"line":7059},17,[7061,7065,7069],{"type":3095,"tag":3178,"props":7062,"children":7063},{"style":3262},[7064],{"type":3100,"value":6910},{"type":3095,"tag":3178,"props":7066,"children":7067},{"style":3268},[7068],{"type":3100,"value":6942},{"type":3095,"tag":3178,"props":7070,"children":7071},{"style":3268},[7072],{"type":3100,"value":7073}," test\n",{"type":3095,"tag":3178,"props":7075,"children":7077},{"class":3258,"line":7076},18,[7078,7082,7086],{"type":3095,"tag":3178,"props":7079,"children":7080},{"style":3262},[7081],{"type":3100,"value":6910},{"type":3095,"tag":3178,"props":7083,"children":7084},{"style":3268},[7085],{"type":3100,"value":6942},{"type":3095,"tag":3178,"props":7087,"children":7088},{"style":3268},[7089],{"type":3100,"value":7090}," test:watch\n",{"type":3095,"tag":3178,"props":7092,"children":7094},{"class":3258,"line":7093},19,[7095],{"type":3095,"tag":3178,"props":7096,"children":7097},{"emptyLinePlaceholder":1200},[7098],{"type":3100,"value":4548},{"type":3095,"tag":3178,"props":7100,"children":7102},{"class":3258,"line":7101},20,[7103],{"type":3095,"tag":3178,"props":7104,"children":7105},{"style":3531},[7106],{"type":3100,"value":7107},"# Release new version\n",{"type":3095,"tag":3178,"props":7109,"children":7111},{"class":3258,"line":7110},21,[7112,7116,7120],{"type":3095,"tag":3178,"props":7113,"children":7114},{"style":3262},[7115],{"type":3100,"value":6910},{"type":3095,"tag":3178,"props":7117,"children":7118},{"style":3268},[7119],{"type":3100,"value":6942},{"type":3095,"tag":3178,"props":7121,"children":7122},{"style":3268},[7123],{"type":3100,"value":7124}," release\n",{"type":3095,"tag":3199,"props":7126,"children":7128},{"id":7127},"credits",[7129],{"type":3100,"value":7130},"Credits",{"type":3095,"tag":3102,"props":7132,"children":7133},{},[7134,7136,7143],{"type":3100,"value":7135},"This module, both code and design, is heavily inspired by the ",{"type":3095,"tag":3106,"props":7137,"children":7140},{"href":7138,"rel":7139},"https:\u002F\u002Fdocs.adonisjs.com\u002Fguides\u002Fsecurity\u002Fauthorization",[3110],[7141],{"type":3100,"value":7142},"Adonis Bouncer",{"type":3100,"value":7144},". It's a well written package and I think reinventing the wheel every time is unnecessary.",{"type":3095,"tag":3199,"props":7146,"children":7148},{"id":7147},"license",[7149],{"type":3100,"value":3133},{"type":3095,"tag":3102,"props":7151,"children":7152},{},[7153],{"type":3095,"tag":3106,"props":7154,"children":7156},{"href":7155},".\u002FLICENSE",[7157],{"type":3100,"value":7158},"MIT License",{"type":3095,"tag":7160,"props":7161,"children":7162},"style",{},[7163],{"type":3100,"value":7164},"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);}",{"title":3045,"searchDepth":3072,"depth":3072,"links":7166},[7167,7168,7169,7175,7176,7177],{"id":3201,"depth":3072,"text":399},{"id":3236,"depth":3072,"text":3239},{"id":3294,"depth":3072,"text":3297,"children":7170},[7171,7172,7173,7174],{"id":3313,"depth":3068,"text":3316},{"id":4432,"depth":3068,"text":4435},{"id":4831,"depth":3068,"text":4834},{"id":5551,"depth":3068,"text":5554},{"id":6873,"depth":3072,"text":1021},{"id":7127,"depth":3072,"text":7130},{"id":7147,"depth":3072,"text":3133},{"v5":7179,"v4":7180,"v3":7181,"v2":7182},"5 (nightly)","4.5.2","3.21.11","2.18.1"]