[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f30r277ag21rfj":3,"module-authorization":3032,"versions":7170},[4,1124,1983,2826],{"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,1280,1431,1813,1890,1912,1946],{"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,1262,1265,1268,1271,1274,1277],{"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":200,"path":1260,"stem":1261,"titleTemplate":6,"icon":203},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fenv","docs\u002F4.x\u002F2.directory-structure\u002F2.env",{"title":205,"path":1263,"stem":1264,"titleTemplate":6,"icon":208},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fgitignore","docs\u002F4.x\u002F2.directory-structure\u002F2.gitignore",{"title":210,"path":1266,"stem":1267,"titleTemplate":6,"icon":213},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fnuxtignore","docs\u002F4.x\u002F2.directory-structure\u002F2.nuxtignore",{"title":215,"path":1269,"stem":1270,"titleTemplate":6,"icon":213},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fnuxtrc","docs\u002F4.x\u002F2.directory-structure\u002F2.nuxtrc",{"title":233,"path":1272,"stem":1273,"titleTemplate":6,"icon":213},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fnuxt-config","docs\u002F4.x\u002F2.directory-structure\u002F3.nuxt-config",{"title":237,"path":1275,"stem":1276,"titleTemplate":6,"icon":240},"\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fpackage","docs\u002F4.x\u002F2.directory-structure\u002F3.package",{"title":242,"path":1278,"stem":1279,"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":1281,"stem":1282,"children":1283,"page":108},"\u002Fdocs\u002F4.x\u002Fguide","docs\u002F4.x\u002F3.guide",[1284,1313,1335,1345,1373,1393],{"title":253,"titleTemplate":254,"icon":255,"path":1285,"stem":1286,"children":1287,"page":108},"\u002Fdocs\u002F4.x\u002Fguide\u002Fconcepts","docs\u002F4.x\u002F3.guide\u002F1.concepts",[1288,1291,1294,1297,1300,1303,1307,1310],{"title":260,"path":1289,"stem":1290,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fconcepts\u002Frendering","docs\u002F4.x\u002F3.guide\u002F1.concepts\u002F1.rendering",{"title":264,"path":1292,"stem":1293,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fconcepts\u002Fnuxt-lifecycle","docs\u002F4.x\u002F3.guide\u002F1.concepts\u002F2.nuxt-lifecycle",{"title":268,"path":1295,"stem":1296,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fconcepts\u002Fauto-imports","docs\u002F4.x\u002F3.guide\u002F1.concepts\u002F3.auto-imports",{"title":272,"path":1298,"stem":1299,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fconcepts\u002Fserver-engine","docs\u002F4.x\u002F3.guide\u002F1.concepts\u002F4.server-engine",{"title":276,"path":1301,"stem":1302,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fconcepts\u002Fmodules","docs\u002F4.x\u002F3.guide\u002F1.concepts\u002F5.modules",{"title":1304,"path":1305,"stem":1306,"titleTemplate":6},"Server Components","\u002Fdocs\u002F4.x\u002Fguide\u002Fconcepts\u002Fserver-components","docs\u002F4.x\u002F3.guide\u002F1.concepts\u002F6.server-components",{"title":280,"path":1308,"stem":1309,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fconcepts\u002Ftypescript","docs\u002F4.x\u002F3.guide\u002F1.concepts\u002F8.typescript",{"title":284,"path":1311,"stem":1312,"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":1314,"stem":1315,"children":1316,"page":108},"\u002Fdocs\u002F4.x\u002Fguide\u002Fbest-practices","docs\u002F4.x\u002F3.guide\u002F2.best-practices",[1317,1321,1325,1329,1332],{"title":1318,"path":1319,"stem":1320,"titleTemplate":6},"Accessibility","\u002Fdocs\u002F4.x\u002Fguide\u002Fbest-practices\u002Faccessibility","docs\u002F4.x\u002F3.guide\u002F2.best-practices\u002Faccessibility",{"title":1322,"path":1323,"stem":1324,"titleTemplate":6},"Dev Containers","\u002Fdocs\u002F4.x\u002Fguide\u002Fbest-practices\u002Fdevcontainers","docs\u002F4.x\u002F3.guide\u002F2.best-practices\u002Fdevcontainers",{"title":1326,"path":1327,"stem":1328,"titleTemplate":6},"Nuxt and Hydration","\u002Fdocs\u002F4.x\u002Fguide\u002Fbest-practices\u002Fhydration","docs\u002F4.x\u002F3.guide\u002F2.best-practices\u002Fhydration",{"title":299,"path":1330,"stem":1331,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fbest-practices\u002Fperformance","docs\u002F4.x\u002F3.guide\u002F2.best-practices\u002Fperformance",{"title":303,"path":1333,"stem":1334,"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":1336,"stem":1337,"children":1338,"page":108},"\u002Fdocs\u002F4.x\u002Fguide\u002Fai","docs\u002F4.x\u002F3.guide\u002F3.ai",[1339,1342],{"title":314,"path":1340,"stem":1341,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fai\u002Fmcp","docs\u002F4.x\u002F3.guide\u002F3.ai\u002F1.mcp",{"title":318,"path":1343,"stem":1344,"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":1346,"stem":1347,"children":1348,"page":108},"\u002Fdocs\u002F4.x\u002Fguide\u002Fmodules","docs\u002F4.x\u002F3.guide\u002F4.modules",[1349,1352,1355,1358,1361,1364,1367,1370],{"title":329,"path":1350,"stem":1351,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fmodules\u002Fgetting-started","docs\u002F4.x\u002F3.guide\u002F4.modules\u002F1.getting-started",{"title":333,"path":1353,"stem":1354,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fmodules\u002Fmodule-anatomy","docs\u002F4.x\u002F3.guide\u002F4.modules\u002F2.module-anatomy",{"title":337,"path":1356,"stem":1357,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fmodules\u002Frecipes-basics","docs\u002F4.x\u002F3.guide\u002F4.modules\u002F3.recipes-basics",{"title":341,"path":1359,"stem":1360,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fmodules\u002Fmodule-dependencies","docs\u002F4.x\u002F3.guide\u002F4.modules\u002F4.module-dependencies",{"title":345,"path":1362,"stem":1363,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fmodules\u002Frecipes-advanced","docs\u002F4.x\u002F3.guide\u002F4.modules\u002F5.recipes-advanced",{"title":349,"path":1365,"stem":1366,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fmodules\u002Ftesting","docs\u002F4.x\u002F3.guide\u002F4.modules\u002F6.testing",{"title":353,"path":1368,"stem":1369,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fmodules\u002Fbest-practices","docs\u002F4.x\u002F3.guide\u002F4.modules\u002F7.best-practices",{"title":357,"path":1371,"stem":1372,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fmodules\u002Fecosystem","docs\u002F4.x\u002F3.guide\u002F4.modules\u002F8.ecosystem",{"title":361,"titleTemplate":362,"icon":363,"path":1374,"stem":1375,"children":1376,"page":108},"\u002Fdocs\u002F4.x\u002Fguide\u002Frecipes","docs\u002F4.x\u002F3.guide\u002F5.recipes",[1377,1380,1383,1386,1389],{"title":368,"path":1378,"stem":1379,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Frecipes\u002Fcustom-routing","docs\u002F4.x\u002F3.guide\u002F5.recipes\u002F1.custom-routing",{"title":372,"path":1381,"stem":1382,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Frecipes\u002Fvite-plugin","docs\u002F4.x\u002F3.guide\u002F5.recipes\u002F2.vite-plugin",{"title":376,"path":1384,"stem":1385,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Frecipes\u002Fcustom-usefetch","docs\u002F4.x\u002F3.guide\u002F5.recipes\u002F3.custom-usefetch",{"title":380,"path":1387,"stem":1388,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Frecipes\u002Fsessions-and-authentication","docs\u002F4.x\u002F3.guide\u002F5.recipes\u002F4.sessions-and-authentication",{"title":1390,"path":1391,"stem":1392,"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":1394,"stem":1395,"children":1396,"page":108},"\u002Fdocs\u002F4.x\u002Fguide\u002Fgoing-further","docs\u002F4.x\u002F3.guide\u002F6.going-further",[1397,1400,1403,1406,1409,1412,1415,1418,1421,1424,1428],{"title":391,"path":1398,"stem":1399,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fgoing-further\u002Fevents","docs\u002F4.x\u002F3.guide\u002F6.going-further\u002F1.events",{"title":395,"path":1401,"stem":1402,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fgoing-further\u002Fexperimental-features","docs\u002F4.x\u002F3.guide\u002F6.going-further\u002F1.experimental-features",{"title":399,"path":1404,"stem":1405,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fgoing-further\u002Ffeatures","docs\u002F4.x\u002F3.guide\u002F6.going-further\u002F1.features",{"title":403,"path":1407,"stem":1408,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fgoing-further\u002Fruntime-config","docs\u002F4.x\u002F3.guide\u002F6.going-further\u002F10.runtime-config",{"title":407,"path":1410,"stem":1411,"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":1413,"stem":1414,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fgoing-further\u002Fhooks","docs\u002F4.x\u002F3.guide\u002F6.going-further\u002F2.hooks",{"title":415,"path":1416,"stem":1417,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fgoing-further\u002Fkit","docs\u002F4.x\u002F3.guide\u002F6.going-further\u002F4.kit",{"title":419,"path":1419,"stem":1420,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fgoing-further\u002Fnuxt-app","docs\u002F4.x\u002F3.guide\u002F6.going-further\u002F6.nuxt-app",{"title":423,"path":1422,"stem":1423,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fguide\u002Fgoing-further\u002Flayers","docs\u002F4.x\u002F3.guide\u002F6.going-further\u002F7.layers",{"title":1425,"path":1426,"stem":1427,"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":1429,"stem":1430,"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":1432,"stem":1433,"children":1434,"page":108},"\u002Fdocs\u002F4.x\u002Fapi","docs\u002F4.x\u002F4.api",[1435,1488,1595,1686,1738,1800,1810],{"title":438,"titleTemplate":439,"icon":324,"path":1436,"stem":1437,"children":1438,"page":108},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents","docs\u002F4.x\u002F4.api\u002F1.components",[1439,1442,1445,1448,1451,1454,1457,1460,1464,1467,1470,1473,1476,1479,1482,1485],{"title":444,"path":1440,"stem":1441,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fclient-only","docs\u002F4.x\u002F4.api\u002F1.components\u002F1.client-only",{"title":448,"path":1443,"stem":1444,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fdev-only","docs\u002F4.x\u002F4.api\u002F1.components\u002F1.dev-only",{"title":452,"path":1446,"stem":1447,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-client-fallback","docs\u002F4.x\u002F4.api\u002F1.components\u002F1.nuxt-client-fallback",{"title":456,"path":1449,"stem":1450,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-picture","docs\u002F4.x\u002F4.api\u002F1.components\u002F10.nuxt-picture",{"title":460,"path":1452,"stem":1453,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fteleports","docs\u002F4.x\u002F4.api\u002F1.components\u002F11.teleports",{"title":464,"path":1455,"stem":1456,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-route-announcer","docs\u002F4.x\u002F4.api\u002F1.components\u002F12.nuxt-route-announcer",{"title":468,"path":1458,"stem":1459,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-time","docs\u002F4.x\u002F4.api\u002F1.components\u002F13.nuxt-time",{"title":1461,"path":1462,"stem":1463,"titleTemplate":6},"\u003CNuxtAnnouncer>","\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-announcer","docs\u002F4.x\u002F4.api\u002F1.components\u002F14.nuxt-announcer",{"title":472,"path":1465,"stem":1466,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-page","docs\u002F4.x\u002F4.api\u002F1.components\u002F2.nuxt-page",{"title":476,"path":1468,"stem":1469,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-layout","docs\u002F4.x\u002F4.api\u002F1.components\u002F3.nuxt-layout",{"title":480,"path":1471,"stem":1472,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-link","docs\u002F4.x\u002F4.api\u002F1.components\u002F4.nuxt-link",{"title":484,"path":1474,"stem":1475,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-loading-indicator","docs\u002F4.x\u002F4.api\u002F1.components\u002F5.nuxt-loading-indicator",{"title":488,"path":1477,"stem":1478,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-error-boundary","docs\u002F4.x\u002F4.api\u002F1.components\u002F6.nuxt-error-boundary",{"title":492,"path":1480,"stem":1481,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-welcome","docs\u002F4.x\u002F4.api\u002F1.components\u002F7.nuxt-welcome",{"title":496,"path":1483,"stem":1484,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-island","docs\u002F4.x\u002F4.api\u002F1.components\u002F8.nuxt-island",{"title":500,"path":1486,"stem":1487,"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":1489,"stem":1490,"children":1491,"page":108},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables","docs\u002F4.x\u002F4.api\u002F2.composables",[1492,1496,1500,1503,1507,1510,1513,1516,1519,1522,1525,1528,1531,1535,1538,1541,1544,1547,1550,1553,1556,1559,1562,1565,1568,1571,1574,1577,1580,1583,1586,1589,1592],{"title":1493,"path":1494,"stem":1495,"titleTemplate":6},"createUseAsyncData","\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fcreate-use-async-data","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fcreate-use-async-data",{"title":1497,"path":1498,"stem":1499,"titleTemplate":6},"createUseFetch","\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fcreate-use-fetch","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fcreate-use-fetch",{"title":511,"path":1501,"stem":1502,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fon-prehydrate","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fon-prehydrate",{"title":1504,"path":1505,"stem":1506,"titleTemplate":6},"useAnnouncer","\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-announcer","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-announcer",{"title":515,"path":1508,"stem":1509,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-app-config","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-app-config",{"title":519,"path":1511,"stem":1512,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-async-data","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-async-data",{"title":523,"path":1514,"stem":1515,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-cookie","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-cookie",{"title":527,"path":1517,"stem":1518,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-error","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-error",{"title":531,"path":1520,"stem":1521,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-fetch","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-fetch",{"title":535,"path":1523,"stem":1524,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-head","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-head",{"title":539,"path":1526,"stem":1527,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-head-safe","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-head-safe",{"title":543,"path":1529,"stem":1530,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-hydration","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-hydration",{"title":1532,"path":1533,"stem":1534,"titleTemplate":6},"useLayout","\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-layout","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-layout",{"title":547,"path":1536,"stem":1537,"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":1539,"stem":1540,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-lazy-fetch","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-lazy-fetch",{"title":555,"path":1542,"stem":1543,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-loading-indicator","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-loading-indicator",{"title":559,"path":1545,"stem":1546,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-nuxt-app","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-nuxt-app",{"title":563,"path":1548,"stem":1549,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-nuxt-data","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-nuxt-data",{"title":567,"path":1551,"stem":1552,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-preview-mode","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-preview-mode",{"title":571,"path":1554,"stem":1555,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-request-event","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-request-event",{"title":575,"path":1557,"stem":1558,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-request-fetch","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-request-fetch",{"title":579,"path":1560,"stem":1561,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-request-header","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-request-header",{"title":583,"path":1563,"stem":1564,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-request-headers","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-request-headers",{"title":587,"path":1566,"stem":1567,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-request-url","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-request-url",{"title":591,"path":1569,"stem":1570,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-response-header","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-response-header",{"title":595,"path":1572,"stem":1573,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-route","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-route",{"title":599,"path":1575,"stem":1576,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-route-announcer","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-route-announcer",{"title":603,"path":1578,"stem":1579,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-router","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-router",{"title":607,"path":1581,"stem":1582,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-runtime-config","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-runtime-config",{"title":611,"path":1584,"stem":1585,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-runtime-hook","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-runtime-hook",{"title":615,"path":1587,"stem":1588,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcomposables\u002Fuse-seo-meta","docs\u002F4.x\u002F4.api\u002F2.composables\u002Fuse-seo-meta",{"title":619,"path":1590,"stem":1591,"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":1593,"stem":1594,"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":1596,"stem":1597,"children":1598,"page":108},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils","docs\u002F4.x\u002F4.api\u002F3.utils",[1599,1602,1605,1608,1611,1614,1617,1620,1623,1626,1629,1632,1635,1638,1641,1644,1647,1650,1653,1656,1659,1662,1665,1668,1671,1674,1677,1680,1683],{"title":634,"path":1600,"stem":1601,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fdollarfetch","docs\u002F4.x\u002F4.api\u002F3.utils\u002F$fetch",{"title":638,"path":1603,"stem":1604,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fabort-navigation","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fabort-navigation",{"title":642,"path":1606,"stem":1607,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fadd-route-middleware","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fadd-route-middleware",{"title":646,"path":1609,"stem":1610,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fcall-once","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fcall-once",{"title":650,"path":1612,"stem":1613,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fclear-error","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fclear-error",{"title":654,"path":1615,"stem":1616,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fclear-nuxt-data","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fclear-nuxt-data",{"title":658,"path":1618,"stem":1619,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fclear-nuxt-state","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fclear-nuxt-state",{"title":662,"path":1621,"stem":1622,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fcreate-error","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fcreate-error",{"title":666,"path":1624,"stem":1625,"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":1627,"stem":1628,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fdefine-nuxt-component","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fdefine-nuxt-component",{"title":674,"path":1630,"stem":1631,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fdefine-nuxt-plugin","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fdefine-nuxt-plugin",{"title":678,"path":1633,"stem":1634,"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":1636,"stem":1637,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fdefine-page-meta","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fdefine-page-meta",{"title":686,"path":1639,"stem":1640,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fdefine-route-rules","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fdefine-route-rules",{"title":690,"path":1642,"stem":1643,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fnavigate-to","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fnavigate-to",{"title":694,"path":1645,"stem":1646,"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":1648,"stem":1649,"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":1651,"stem":1652,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fon-nuxt-ready","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fon-nuxt-ready",{"title":706,"path":1654,"stem":1655,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fprefetch-components","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fprefetch-components",{"title":710,"path":1657,"stem":1658,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fpreload-components","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fpreload-components",{"title":714,"path":1660,"stem":1661,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fpreload-route-components","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fpreload-route-components",{"title":718,"path":1663,"stem":1664,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fprerender-routes","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fprerender-routes",{"title":722,"path":1666,"stem":1667,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Frefresh-cookie","docs\u002F4.x\u002F4.api\u002F3.utils\u002Frefresh-cookie",{"title":726,"path":1669,"stem":1670,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Frefresh-nuxt-data","docs\u002F4.x\u002F4.api\u002F3.utils\u002Frefresh-nuxt-data",{"title":730,"path":1672,"stem":1673,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Freload-nuxt-app","docs\u002F4.x\u002F4.api\u002F3.utils\u002Freload-nuxt-app",{"title":734,"path":1675,"stem":1676,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fset-page-layout","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fset-page-layout",{"title":738,"path":1678,"stem":1679,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fset-response-status","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fset-response-status",{"title":742,"path":1681,"stem":1682,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Futils\u002Fshow-error","docs\u002F4.x\u002F4.api\u002F3.utils\u002Fshow-error",{"title":746,"path":1684,"stem":1685,"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":1687,"stem":1688,"children":1689,"page":108},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands","docs\u002F4.x\u002F4.api\u002F4.commands",[1690,1693,1696,1699,1702,1705,1708,1711,1714,1717,1720,1723,1726,1729,1732,1735],{"title":757,"path":1691,"stem":1692,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fadd","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fadd",{"title":761,"path":1694,"stem":1695,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fanalyze","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fanalyze",{"title":765,"path":1697,"stem":1698,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fbuild","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fbuild",{"title":769,"path":1700,"stem":1701,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fbuild-module","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fbuild-module",{"title":773,"path":1703,"stem":1704,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fcleanup","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fcleanup",{"title":777,"path":1706,"stem":1707,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fdev","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fdev",{"title":781,"path":1709,"stem":1710,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fdevtools","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fdevtools",{"title":785,"path":1712,"stem":1713,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fgenerate","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fgenerate",{"title":789,"path":1715,"stem":1716,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Finfo","docs\u002F4.x\u002F4.api\u002F4.commands\u002Finfo",{"title":793,"path":1718,"stem":1719,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Finit","docs\u002F4.x\u002F4.api\u002F4.commands\u002Finit",{"title":797,"path":1721,"stem":1722,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fmodule","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fmodule",{"title":801,"path":1724,"stem":1725,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fprepare","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fprepare",{"title":805,"path":1727,"stem":1728,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fpreview","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fpreview",{"title":809,"path":1730,"stem":1731,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Ftest","docs\u002F4.x\u002F4.api\u002F4.commands\u002Ftest",{"title":813,"path":1733,"stem":1734,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Ftypecheck","docs\u002F4.x\u002F4.api\u002F4.commands\u002Ftypecheck",{"title":817,"path":1736,"stem":1737,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fcommands\u002Fupgrade","docs\u002F4.x\u002F4.api\u002F4.commands\u002Fupgrade",{"title":415,"titleTemplate":821,"icon":822,"path":1739,"stem":1740,"children":1741,"page":108},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit","docs\u002F4.x\u002F4.api\u002F5.kit",[1742,1745,1748,1751,1755,1758,1761,1764,1767,1770,1773,1776,1779,1782,1785,1788,1791,1794,1797],{"title":276,"path":1743,"stem":1744,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fmodules","docs\u002F4.x\u002F4.api\u002F5.kit\u002F1.modules",{"title":403,"path":1746,"stem":1747,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fruntime-config","docs\u002F4.x\u002F4.api\u002F5.kit\u002F10.runtime-config",{"title":833,"path":1749,"stem":1750,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Ftemplates","docs\u002F4.x\u002F4.api\u002F5.kit\u002F10.templates",{"title":1752,"path":1753,"stem":1754,"titleTemplate":6},"App Config","\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fapp-config","docs\u002F4.x\u002F4.api\u002F5.kit\u002F11.app-config",{"title":837,"path":1756,"stem":1757,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fnitro","docs\u002F4.x\u002F4.api\u002F5.kit\u002F12.nitro",{"title":841,"path":1759,"stem":1760,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fresolving","docs\u002F4.x\u002F4.api\u002F5.kit\u002F13.resolving",{"title":845,"path":1762,"stem":1763,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Flogging","docs\u002F4.x\u002F4.api\u002F5.kit\u002F14.logging",{"title":849,"path":1765,"stem":1766,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fbuilder","docs\u002F4.x\u002F4.api\u002F5.kit\u002F15.builder",{"title":853,"path":1768,"stem":1769,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fexamples","docs\u002F4.x\u002F4.api\u002F5.kit\u002F16.examples",{"title":84,"path":1771,"stem":1772,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Flayers","docs\u002F4.x\u002F4.api\u002F5.kit\u002F17.layers",{"title":860,"path":1774,"stem":1775,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fprogrammatic","docs\u002F4.x\u002F4.api\u002F5.kit\u002F2.programmatic",{"title":864,"path":1777,"stem":1778,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fcompatibility","docs\u002F4.x\u002F4.api\u002F5.kit\u002F3.compatibility",{"title":268,"path":1780,"stem":1781,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fautoimports","docs\u002F4.x\u002F4.api\u002F5.kit\u002F4.autoimports",{"title":438,"path":1783,"stem":1784,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fcomponents","docs\u002F4.x\u002F4.api\u002F5.kit\u002F5.components",{"title":874,"path":1786,"stem":1787,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fcontext","docs\u002F4.x\u002F4.api\u002F5.kit\u002F6.context",{"title":878,"path":1789,"stem":1790,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fpages","docs\u002F4.x\u002F4.api\u002F5.kit\u002F7.pages",{"title":882,"path":1792,"stem":1793,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Flayout","docs\u002F4.x\u002F4.api\u002F5.kit\u002F8.layout",{"title":886,"path":1795,"stem":1796,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fhead","docs\u002F4.x\u002F4.api\u002F5.kit\u002F9.head",{"title":890,"path":1798,"stem":1799,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fkit\u002Fplugins","docs\u002F4.x\u002F4.api\u002F5.kit\u002F9.plugins",{"title":894,"titleTemplate":6,"icon":895,"path":1801,"stem":1802,"children":1803,"page":108},"\u002Fdocs\u002F4.x\u002Fapi\u002Fadvanced","docs\u002F4.x\u002F4.api\u002F6.advanced",[1804,1807],{"title":411,"path":1805,"stem":1806,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fadvanced\u002Fhooks","docs\u002F4.x\u002F4.api\u002F6.advanced\u002F1.hooks",{"title":903,"path":1808,"stem":1809,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fapi\u002Fadvanced\u002Fimport-meta","docs\u002F4.x\u002F4.api\u002F6.advanced\u002F2.import-meta",{"title":907,"path":1811,"stem":1812,"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":1814,"stem":1815,"children":1816,"page":108},"\u002Fdocs\u002F4.x\u002Fexamples","docs\u002F4.x\u002F4.examples",[1817,1820,1839,1852,1883],{"title":918,"path":1818,"stem":1819,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fhello-world","docs\u002F4.x\u002F4.examples\u002F0.hello-world",{"title":399,"path":1821,"stem":1822,"children":1823,"page":108},"\u002Fdocs\u002F4.x\u002Fexamples\u002Ffeatures","docs\u002F4.x\u002F4.examples\u002F1.features",[1824,1827,1830,1833,1836],{"title":926,"path":1825,"stem":1826,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Ffeatures\u002Fauto-imports","docs\u002F4.x\u002F4.examples\u002F1.features\u002F1.auto-imports",{"title":64,"path":1828,"stem":1829,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Ffeatures\u002Fdata-fetching","docs\u002F4.x\u002F4.examples\u002F1.features\u002F2.data-fetching",{"title":69,"path":1831,"stem":1832,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Ffeatures\u002Fstate-management","docs\u002F4.x\u002F4.examples\u002F1.features\u002F3.state-management",{"title":936,"path":1834,"stem":1835,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Ffeatures\u002Fmeta-tags","docs\u002F4.x\u002F4.examples\u002F1.features\u002F4.meta-tags",{"title":940,"path":1837,"stem":1838,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Ffeatures\u002Flayouts","docs\u002F4.x\u002F4.examples\u002F1.features\u002F5.layouts",{"title":49,"path":1840,"stem":1841,"children":1842,"page":108},"\u002Fdocs\u002F4.x\u002Fexamples\u002Frouting","docs\u002F4.x\u002F4.examples\u002F2.routing",[1843,1846,1849],{"title":948,"path":1844,"stem":1845,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Frouting\u002Fmiddleware","docs\u002F4.x\u002F4.examples\u002F2.routing\u002Fmiddleware",{"title":878,"path":1847,"stem":1848,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Frouting\u002Fpages","docs\u002F4.x\u002F4.examples\u002F2.routing\u002Fpages",{"title":955,"path":1850,"stem":1851,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Frouting\u002Funiversal-router","docs\u002F4.x\u002F4.examples\u002F2.routing\u002Funiversal-router",{"title":894,"path":1853,"stem":1854,"children":1855,"page":108},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fadvanced","docs\u002F4.x\u002F4.examples\u002F4.advanced",[1856,1859,1862,1865,1868,1871,1874,1877,1880],{"title":84,"path":1857,"stem":1858,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fadvanced\u002Fconfig-extends","docs\u002F4.x\u002F4.examples\u002F4.advanced\u002Fconfig-extends",{"title":74,"path":1860,"stem":1861,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fadvanced\u002Ferror-handling","docs\u002F4.x\u002F4.examples\u002F4.advanced\u002Ferror-handling",{"title":969,"path":1863,"stem":1864,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fadvanced\u002Fjsx","docs\u002F4.x\u002F4.examples\u002F4.advanced\u002Fjsx",{"title":973,"path":1866,"stem":1867,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fadvanced\u002Flocale","docs\u002F4.x\u002F4.examples\u002F4.advanced\u002Flocale",{"title":977,"path":1869,"stem":1870,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fadvanced\u002Fmodule-extend-pages","docs\u002F4.x\u002F4.examples\u002F4.advanced\u002Fmodule-extend-pages",{"title":981,"path":1872,"stem":1873,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fadvanced\u002Fteleport","docs\u002F4.x\u002F4.examples\u002F4.advanced\u002Fteleport",{"title":99,"path":1875,"stem":1876,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fadvanced\u002Ftesting","docs\u002F4.x\u002F4.examples\u002F4.advanced\u002Ftesting",{"title":523,"path":1878,"stem":1879,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fadvanced\u002Fuse-cookie","docs\u002F4.x\u002F4.examples\u002F4.advanced\u002Fuse-cookie",{"title":991,"path":1881,"stem":1882,"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":1884,"stem":1885,"children":1886,"page":108},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fexperimental","docs\u002F4.x\u002F4.examples\u002F7.experimental",[1887],{"title":1000,"path":1888,"stem":1889,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fexamples\u002Fexperimental\u002Fwasm","docs\u002F4.x\u002F4.examples\u002F7.experimental\u002Fwasm",{"title":1004,"titleTemplate":1005,"icon":1006,"path":1891,"stem":1892,"children":1893,"page":108},"\u002Fdocs\u002F4.x\u002Fcommunity","docs\u002F4.x\u002F5.community",[1894,1897,1900,1903,1906,1909],{"title":1011,"path":1895,"stem":1896,"titleTemplate":6,"icon":1014},"\u002Fdocs\u002F4.x\u002Fcommunity\u002Fgetting-help","docs\u002F4.x\u002F5.community\u002F2.getting-help",{"title":1016,"path":1898,"stem":1899,"titleTemplate":6,"icon":1019},"\u002Fdocs\u002F4.x\u002Fcommunity\u002Freporting-bugs","docs\u002F4.x\u002F5.community\u002F3.reporting-bugs",{"title":1021,"path":1901,"stem":1902,"titleTemplate":6,"icon":1024},"\u002Fdocs\u002F4.x\u002Fcommunity\u002Fcontribution","docs\u002F4.x\u002F5.community\u002F4.contribution",{"title":1026,"path":1904,"stem":1905,"titleTemplate":6,"icon":1029},"\u002Fdocs\u002F4.x\u002Fcommunity\u002Fframework-contribution","docs\u002F4.x\u002F5.community\u002F5.framework-contribution",{"title":1031,"path":1907,"stem":1908,"titleTemplate":6,"icon":1034},"\u002Fdocs\u002F4.x\u002Fcommunity\u002Froadmap","docs\u002F4.x\u002F5.community\u002F6.roadmap",{"title":1036,"path":1910,"stem":1911,"titleTemplate":6,"icon":1039},"\u002Fdocs\u002F4.x\u002Fcommunity\u002Fchangelog","docs\u002F4.x\u002F5.community\u002F7.changelog",{"title":1041,"titleTemplate":1042,"icon":1043,"path":1913,"stem":1914,"children":1915,"page":108},"\u002Fdocs\u002F4.x\u002Fbridge","docs\u002F4.x\u002F6.bridge",[1916,1919,1922,1925,1928,1931,1934,1937,1940,1943],{"title":1048,"path":1917,"stem":1918,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fbridge\u002Foverview","docs\u002F4.x\u002F6.bridge\u002F1.overview",{"title":29,"path":1920,"stem":1921,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fbridge\u002Fconfiguration","docs\u002F4.x\u002F6.bridge\u002F10.configuration",{"title":280,"path":1923,"stem":1924,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fbridge\u002Ftypescript","docs\u002F4.x\u002F6.bridge\u002F2.typescript",{"title":1058,"path":1926,"stem":1927,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fbridge\u002Fbridge-composition-api","docs\u002F4.x\u002F6.bridge\u002F3.bridge-composition-api",{"title":1062,"path":1929,"stem":1930,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fbridge\u002Fplugins-and-middleware","docs\u002F4.x\u002F6.bridge\u002F4.plugins-and-middleware",{"title":1066,"path":1932,"stem":1933,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fbridge\u002Fnuxt3-compatible-api","docs\u002F4.x\u002F6.bridge\u002F5.nuxt3-compatible-api",{"title":936,"path":1935,"stem":1936,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fbridge\u002Fmeta","docs\u002F4.x\u002F6.bridge\u002F6.meta",{"title":403,"path":1938,"stem":1939,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fbridge\u002Fruntime-config","docs\u002F4.x\u002F6.bridge\u002F7.runtime-config",{"title":837,"path":1941,"stem":1942,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fbridge\u002Fnitro","docs\u002F4.x\u002F6.bridge\u002F8.nitro",{"title":1079,"path":1944,"stem":1945,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fbridge\u002Fvite","docs\u002F4.x\u002F6.bridge\u002F9.vite",{"title":1083,"titleTemplate":1084,"icon":107,"path":1947,"stem":1948,"children":1949,"page":108},"\u002Fdocs\u002F4.x\u002Fmigration","docs\u002F4.x\u002F7.migration",[1950,1953,1956,1959,1962,1965,1968,1971,1974,1977,1980],{"title":1048,"path":1951,"stem":1952,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fmigration\u002Foverview","docs\u002F4.x\u002F7.migration\u002F1.overview",{"title":1092,"path":1954,"stem":1955,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fmigration\u002Fbundling","docs\u002F4.x\u002F7.migration\u002F10.bundling",{"title":79,"path":1957,"stem":1958,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fmigration\u002Fserver","docs\u002F4.x\u002F7.migration\u002F11.server",{"title":29,"path":1960,"stem":1961,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fmigration\u002Fconfiguration","docs\u002F4.x\u002F7.migration\u002F2.configuration",{"title":276,"path":1963,"stem":1964,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fmigration\u002Fmodule-authors","docs\u002F4.x\u002F7.migration\u002F20.module-authors",{"title":926,"path":1966,"stem":1967,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fmigration\u002Fauto-imports","docs\u002F4.x\u002F7.migration\u002F3.auto-imports",{"title":936,"path":1969,"stem":1970,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fmigration\u002Fmeta","docs\u002F4.x\u002F7.migration\u002F4.meta",{"title":1062,"path":1972,"stem":1973,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fmigration\u002Fplugins-and-middleware","docs\u002F4.x\u002F7.migration\u002F5.plugins-and-middleware",{"title":1114,"path":1975,"stem":1976,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fmigration\u002Fpages-and-layouts","docs\u002F4.x\u002F7.migration\u002F6.pages-and-layouts",{"title":1118,"path":1978,"stem":1979,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fmigration\u002Fcomponent-options","docs\u002F4.x\u002F7.migration\u002F7.component-options",{"title":403,"path":1981,"stem":1982,"titleTemplate":6},"\u002Fdocs\u002F4.x\u002Fmigration\u002Fruntime-config","docs\u002F4.x\u002F7.migration\u002F8.runtime-config",{"title":5,"titleTemplate":6,"icon":7,"path":1984,"stem":1985,"children":1986,"page":108},"\u002Fdocs\u002F5.x","docs\u002F5.x",[1987,2045,2135,2280,2656,2733,2755,2789],{"title":12,"titleTemplate":13,"icon":14,"path":1988,"stem":1989,"children":1990,"page":108},"\u002Fdocs\u002F5.x\u002Fgetting-started","docs\u002F5.x\u002F1.getting-started",[1991,1994,1997,2000,2003,2006,2009,2012,2015,2018,2021,2024,2027,2030,2033,2036,2039,2042],{"title":19,"path":1992,"stem":1993,"titleTemplate":6,"icon":22},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Fintroduction","docs\u002F5.x\u002F1.getting-started\u002F01.introduction",{"title":24,"path":1995,"stem":1996,"titleTemplate":6,"icon":27},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Finstallation","docs\u002F5.x\u002F1.getting-started\u002F02.installation",{"title":29,"path":1998,"stem":1999,"titleTemplate":6,"icon":32},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Fconfiguration","docs\u002F5.x\u002F1.getting-started\u002F03.configuration",{"title":34,"path":2001,"stem":2002,"titleTemplate":6,"icon":37},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Fviews","docs\u002F5.x\u002F1.getting-started\u002F04.views",{"title":39,"path":2004,"stem":2005,"titleTemplate":6,"icon":42},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Fassets","docs\u002F5.x\u002F1.getting-started\u002F05.assets",{"title":44,"path":2007,"stem":2008,"titleTemplate":6,"icon":47},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Fstyling","docs\u002F5.x\u002F1.getting-started\u002F06.styling",{"title":49,"path":2010,"stem":2011,"titleTemplate":6,"icon":52},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Frouting","docs\u002F5.x\u002F1.getting-started\u002F07.routing",{"title":54,"path":2013,"stem":2014,"titleTemplate":6,"icon":57},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Fseo-meta","docs\u002F5.x\u002F1.getting-started\u002F08.seo-meta",{"title":59,"path":2016,"stem":2017,"titleTemplate":6,"icon":62},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Ftransitions","docs\u002F5.x\u002F1.getting-started\u002F09.transitions",{"title":64,"path":2019,"stem":2020,"titleTemplate":6,"icon":67},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Fdata-fetching","docs\u002F5.x\u002F1.getting-started\u002F10.data-fetching",{"title":69,"path":2022,"stem":2023,"titleTemplate":6,"icon":72},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Fstate-management","docs\u002F5.x\u002F1.getting-started\u002F11.state-management",{"title":74,"path":2025,"stem":2026,"titleTemplate":6,"icon":77},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Ferror-handling","docs\u002F5.x\u002F1.getting-started\u002F12.error-handling",{"title":79,"path":2028,"stem":2029,"titleTemplate":6,"icon":82},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Fserver","docs\u002F5.x\u002F1.getting-started\u002F13.server",{"title":84,"path":2031,"stem":2032,"titleTemplate":6,"icon":87},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Flayers","docs\u002F5.x\u002F1.getting-started\u002F14.layers",{"title":89,"path":2034,"stem":2035,"titleTemplate":6,"icon":92},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Fprerendering","docs\u002F5.x\u002F1.getting-started\u002F15.prerendering",{"title":94,"path":2037,"stem":2038,"titleTemplate":6,"icon":97},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Fdeployment","docs\u002F5.x\u002F1.getting-started\u002F16.deployment",{"title":99,"path":2040,"stem":2041,"titleTemplate":6,"icon":102},"\u002Fdocs\u002F5.x\u002Fgetting-started\u002Ftesting","docs\u002F5.x\u002F1.getting-started\u002F17.testing",{"title":104,"path":2043,"stem":2044,"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":2046,"stem":2047,"children":2048,"page":108},"\u002Fdocs\u002F5.x\u002Fdirectory-structure","docs\u002F5.x\u002F2.directory-structure",[2049,2052,2055,2093,2096,2099,2102,2105,2108,2111,2114,2117,2120,2123,2126,2129,2132],{"title":117,"path":2050,"stem":2051,"titleTemplate":6,"icon":120},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fnuxt","docs\u002F5.x\u002F2.directory-structure\u002F0.nuxt",{"title":122,"path":2053,"stem":2054,"titleTemplate":6,"icon":125},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Foutput","docs\u002F5.x\u002F2.directory-structure\u002F0.output",{"title":1197,"titleTemplate":111,"head":2056,"defaultOpen":1200,"icon":1201,"path":2057,"stem":2058,"children":2059,"page":108},{"title":1199},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fapp","docs\u002F5.x\u002F2.directory-structure\u002F1.app",[2060,2063,2066,2069,2072,2075,2078,2081,2084,2087,2090],{"title":127,"path":2061,"stem":2062,"titleTemplate":6,"icon":130},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fapp\u002Fassets","docs\u002F5.x\u002F2.directory-structure\u002F1.app\u002F1.assets",{"title":132,"path":2064,"stem":2065,"titleTemplate":6,"icon":135},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fapp\u002Fcomponents","docs\u002F5.x\u002F2.directory-structure\u002F1.app\u002F1.components",{"title":137,"path":2067,"stem":2068,"titleTemplate":6,"icon":140},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fapp\u002Fcomposables","docs\u002F5.x\u002F2.directory-structure\u002F1.app\u002F1.composables",{"title":152,"path":2070,"stem":2071,"titleTemplate":6,"icon":155},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fapp\u002Flayouts","docs\u002F5.x\u002F2.directory-structure\u002F1.app\u002F1.layouts",{"title":157,"path":2073,"stem":2074,"titleTemplate":6,"icon":160},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fapp\u002Fmiddleware","docs\u002F5.x\u002F2.directory-structure\u002F1.app\u002F1.middleware",{"title":171,"path":2076,"stem":2077,"titleTemplate":6,"icon":155},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fapp\u002Fpages","docs\u002F5.x\u002F2.directory-structure\u002F1.app\u002F1.pages",{"title":175,"path":2079,"stem":2080,"titleTemplate":6,"icon":178},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fapp\u002Fplugins","docs\u002F5.x\u002F2.directory-structure\u002F1.app\u002F1.plugins",{"title":195,"path":2082,"stem":2083,"titleTemplate":6,"icon":198},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fapp\u002Futils","docs\u002F5.x\u002F2.directory-structure\u002F1.app\u002F1.utils",{"title":219,"path":2085,"stem":2086,"titleTemplate":6,"icon":222},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fapp\u002Fapp","docs\u002F5.x\u002F2.directory-structure\u002F1.app\u002F3.app",{"title":224,"path":2088,"stem":2089,"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":2091,"stem":2092,"titleTemplate":6,"icon":222},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fapp\u002Ferror","docs\u002F5.x\u002F2.directory-structure\u002F1.app\u002F3.error",{"title":142,"path":2094,"stem":2095,"titleTemplate":6,"icon":145},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fcontent","docs\u002F5.x\u002F2.directory-structure\u002F1.content",{"title":147,"path":2097,"stem":2098,"titleTemplate":6,"icon":150},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Flayers","docs\u002F5.x\u002F2.directory-structure\u002F1.layers",{"title":162,"path":2100,"stem":2101,"titleTemplate":6,"icon":150},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fmodules","docs\u002F5.x\u002F2.directory-structure\u002F1.modules",{"title":166,"path":2103,"stem":2104,"titleTemplate":6,"icon":169},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fnode_modules","docs\u002F5.x\u002F2.directory-structure\u002F1.node_modules",{"title":180,"path":2106,"stem":2107,"titleTemplate":6,"icon":183},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fpublic","docs\u002F5.x\u002F2.directory-structure\u002F1.public",{"title":185,"path":2109,"stem":2110,"titleTemplate":6,"icon":188},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fserver","docs\u002F5.x\u002F2.directory-structure\u002F1.server",{"title":190,"path":2112,"stem":2113,"titleTemplate":6,"icon":193},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fshared","docs\u002F5.x\u002F2.directory-structure\u002F1.shared",{"title":200,"path":2115,"stem":2116,"titleTemplate":6,"icon":203},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fenv","docs\u002F5.x\u002F2.directory-structure\u002F2.env",{"title":205,"path":2118,"stem":2119,"titleTemplate":6,"icon":208},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fgitignore","docs\u002F5.x\u002F2.directory-structure\u002F2.gitignore",{"title":210,"path":2121,"stem":2122,"titleTemplate":6,"icon":213},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fnuxtignore","docs\u002F5.x\u002F2.directory-structure\u002F2.nuxtignore",{"title":215,"path":2124,"stem":2125,"titleTemplate":6,"icon":213},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fnuxtrc","docs\u002F5.x\u002F2.directory-structure\u002F2.nuxtrc",{"title":233,"path":2127,"stem":2128,"titleTemplate":6,"icon":213},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fnuxt-config","docs\u002F5.x\u002F2.directory-structure\u002F3.nuxt-config",{"title":237,"path":2130,"stem":2131,"titleTemplate":6,"icon":240},"\u002Fdocs\u002F5.x\u002Fdirectory-structure\u002Fpackage","docs\u002F5.x\u002F2.directory-structure\u002F3.package",{"title":242,"path":2133,"stem":2134,"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":2136,"stem":2137,"children":2138,"page":108},"\u002Fdocs\u002F5.x\u002Fguide","docs\u002F5.x\u002F3.guide",[2139,2167,2186,2196,2224,2243],{"title":253,"titleTemplate":254,"icon":255,"path":2140,"stem":2141,"children":2142,"page":108},"\u002Fdocs\u002F5.x\u002Fguide\u002Fconcepts","docs\u002F5.x\u002F3.guide\u002F1.concepts",[2143,2146,2149,2152,2155,2158,2161,2164],{"title":260,"path":2144,"stem":2145,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fconcepts\u002Frendering","docs\u002F5.x\u002F3.guide\u002F1.concepts\u002F1.rendering",{"title":264,"path":2147,"stem":2148,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fconcepts\u002Fnuxt-lifecycle","docs\u002F5.x\u002F3.guide\u002F1.concepts\u002F2.nuxt-lifecycle",{"title":268,"path":2150,"stem":2151,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fconcepts\u002Fauto-imports","docs\u002F5.x\u002F3.guide\u002F1.concepts\u002F3.auto-imports",{"title":272,"path":2153,"stem":2154,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fconcepts\u002Fserver-engine","docs\u002F5.x\u002F3.guide\u002F1.concepts\u002F4.server-engine",{"title":276,"path":2156,"stem":2157,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fconcepts\u002Fmodules","docs\u002F5.x\u002F3.guide\u002F1.concepts\u002F5.modules",{"title":1304,"path":2159,"stem":2160,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fconcepts\u002Fserver-components","docs\u002F5.x\u002F3.guide\u002F1.concepts\u002F6.server-components",{"title":280,"path":2162,"stem":2163,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fconcepts\u002Ftypescript","docs\u002F5.x\u002F3.guide\u002F1.concepts\u002F8.typescript",{"title":284,"path":2165,"stem":2166,"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":2168,"stem":2169,"children":2170,"page":108},"\u002Fdocs\u002F5.x\u002Fguide\u002Fbest-practices","docs\u002F5.x\u002F3.guide\u002F2.best-practices",[2171,2174,2177,2180,2183],{"title":1318,"path":2172,"stem":2173,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fbest-practices\u002Faccessibility","docs\u002F5.x\u002F3.guide\u002F2.best-practices\u002Faccessibility",{"title":1322,"path":2175,"stem":2176,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fbest-practices\u002Fdevcontainers","docs\u002F5.x\u002F3.guide\u002F2.best-practices\u002Fdevcontainers",{"title":1326,"path":2178,"stem":2179,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fbest-practices\u002Fhydration","docs\u002F5.x\u002F3.guide\u002F2.best-practices\u002Fhydration",{"title":299,"path":2181,"stem":2182,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fbest-practices\u002Fperformance","docs\u002F5.x\u002F3.guide\u002F2.best-practices\u002Fperformance",{"title":303,"path":2184,"stem":2185,"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":2187,"stem":2188,"children":2189,"page":108},"\u002Fdocs\u002F5.x\u002Fguide\u002Fai","docs\u002F5.x\u002F3.guide\u002F3.ai",[2190,2193],{"title":314,"path":2191,"stem":2192,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fai\u002Fmcp","docs\u002F5.x\u002F3.guide\u002F3.ai\u002F1.mcp",{"title":318,"path":2194,"stem":2195,"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":2197,"stem":2198,"children":2199,"page":108},"\u002Fdocs\u002F5.x\u002Fguide\u002Fmodules","docs\u002F5.x\u002F3.guide\u002F4.modules",[2200,2203,2206,2209,2212,2215,2218,2221],{"title":329,"path":2201,"stem":2202,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fmodules\u002Fgetting-started","docs\u002F5.x\u002F3.guide\u002F4.modules\u002F1.getting-started",{"title":333,"path":2204,"stem":2205,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fmodules\u002Fmodule-anatomy","docs\u002F5.x\u002F3.guide\u002F4.modules\u002F2.module-anatomy",{"title":337,"path":2207,"stem":2208,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fmodules\u002Frecipes-basics","docs\u002F5.x\u002F3.guide\u002F4.modules\u002F3.recipes-basics",{"title":341,"path":2210,"stem":2211,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fmodules\u002Fmodule-dependencies","docs\u002F5.x\u002F3.guide\u002F4.modules\u002F4.module-dependencies",{"title":345,"path":2213,"stem":2214,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fmodules\u002Frecipes-advanced","docs\u002F5.x\u002F3.guide\u002F4.modules\u002F5.recipes-advanced",{"title":349,"path":2216,"stem":2217,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fmodules\u002Ftesting","docs\u002F5.x\u002F3.guide\u002F4.modules\u002F6.testing",{"title":353,"path":2219,"stem":2220,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fmodules\u002Fbest-practices","docs\u002F5.x\u002F3.guide\u002F4.modules\u002F7.best-practices",{"title":357,"path":2222,"stem":2223,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fmodules\u002Fecosystem","docs\u002F5.x\u002F3.guide\u002F4.modules\u002F8.ecosystem",{"title":361,"titleTemplate":362,"icon":363,"path":2225,"stem":2226,"children":2227,"page":108},"\u002Fdocs\u002F5.x\u002Fguide\u002Frecipes","docs\u002F5.x\u002F3.guide\u002F5.recipes",[2228,2231,2234,2237,2240],{"title":368,"path":2229,"stem":2230,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Frecipes\u002Fcustom-routing","docs\u002F5.x\u002F3.guide\u002F5.recipes\u002F1.custom-routing",{"title":372,"path":2232,"stem":2233,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Frecipes\u002Fvite-plugin","docs\u002F5.x\u002F3.guide\u002F5.recipes\u002F2.vite-plugin",{"title":376,"path":2235,"stem":2236,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Frecipes\u002Fcustom-usefetch","docs\u002F5.x\u002F3.guide\u002F5.recipes\u002F3.custom-usefetch",{"title":380,"path":2238,"stem":2239,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Frecipes\u002Fsessions-and-authentication","docs\u002F5.x\u002F3.guide\u002F5.recipes\u002F4.sessions-and-authentication",{"title":1390,"path":2241,"stem":2242,"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":2244,"stem":2245,"children":2246,"page":108},"\u002Fdocs\u002F5.x\u002Fguide\u002Fgoing-further","docs\u002F5.x\u002F3.guide\u002F6.going-further",[2247,2250,2253,2256,2259,2262,2265,2268,2271,2274,2277],{"title":391,"path":2248,"stem":2249,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fgoing-further\u002Fevents","docs\u002F5.x\u002F3.guide\u002F6.going-further\u002F1.events",{"title":395,"path":2251,"stem":2252,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fgoing-further\u002Fexperimental-features","docs\u002F5.x\u002F3.guide\u002F6.going-further\u002F1.experimental-features",{"title":399,"path":2254,"stem":2255,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fgoing-further\u002Ffeatures","docs\u002F5.x\u002F3.guide\u002F6.going-further\u002F1.features",{"title":403,"path":2257,"stem":2258,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fgoing-further\u002Fruntime-config","docs\u002F5.x\u002F3.guide\u002F6.going-further\u002F10.runtime-config",{"title":407,"path":2260,"stem":2261,"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":2263,"stem":2264,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fgoing-further\u002Fhooks","docs\u002F5.x\u002F3.guide\u002F6.going-further\u002F2.hooks",{"title":415,"path":2266,"stem":2267,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fgoing-further\u002Fkit","docs\u002F5.x\u002F3.guide\u002F6.going-further\u002F4.kit",{"title":419,"path":2269,"stem":2270,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fgoing-further\u002Fnuxt-app","docs\u002F5.x\u002F3.guide\u002F6.going-further\u002F6.nuxt-app",{"title":423,"path":2272,"stem":2273,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fgoing-further\u002Flayers","docs\u002F5.x\u002F3.guide\u002F6.going-further\u002F7.layers",{"title":1425,"path":2275,"stem":2276,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fguide\u002Fgoing-further\u002Fbuilders","docs\u002F5.x\u002F3.guide\u002F6.going-further\u002F8.builders",{"title":427,"path":2278,"stem":2279,"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":2281,"stem":2282,"children":2283,"page":108},"\u002Fdocs\u002F5.x\u002Fapi","docs\u002F5.x\u002F4.api",[2284,2336,2439,2530,2582,2643,2653],{"title":438,"titleTemplate":439,"icon":324,"path":2285,"stem":2286,"children":2287,"page":108},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents","docs\u002F5.x\u002F4.api\u002F1.components",[2288,2291,2294,2297,2300,2303,2306,2309,2312,2315,2318,2321,2324,2327,2330,2333],{"title":444,"path":2289,"stem":2290,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fclient-only","docs\u002F5.x\u002F4.api\u002F1.components\u002F1.client-only",{"title":448,"path":2292,"stem":2293,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fdev-only","docs\u002F5.x\u002F4.api\u002F1.components\u002F1.dev-only",{"title":452,"path":2295,"stem":2296,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-client-fallback","docs\u002F5.x\u002F4.api\u002F1.components\u002F1.nuxt-client-fallback",{"title":456,"path":2298,"stem":2299,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-picture","docs\u002F5.x\u002F4.api\u002F1.components\u002F10.nuxt-picture",{"title":460,"path":2301,"stem":2302,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fteleports","docs\u002F5.x\u002F4.api\u002F1.components\u002F11.teleports",{"title":464,"path":2304,"stem":2305,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-route-announcer","docs\u002F5.x\u002F4.api\u002F1.components\u002F12.nuxt-route-announcer",{"title":468,"path":2307,"stem":2308,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-time","docs\u002F5.x\u002F4.api\u002F1.components\u002F13.nuxt-time",{"title":1461,"path":2310,"stem":2311,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-announcer","docs\u002F5.x\u002F4.api\u002F1.components\u002F14.nuxt-announcer",{"title":472,"path":2313,"stem":2314,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-page","docs\u002F5.x\u002F4.api\u002F1.components\u002F2.nuxt-page",{"title":476,"path":2316,"stem":2317,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-layout","docs\u002F5.x\u002F4.api\u002F1.components\u002F3.nuxt-layout",{"title":480,"path":2319,"stem":2320,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-link","docs\u002F5.x\u002F4.api\u002F1.components\u002F4.nuxt-link",{"title":484,"path":2322,"stem":2323,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-loading-indicator","docs\u002F5.x\u002F4.api\u002F1.components\u002F5.nuxt-loading-indicator",{"title":488,"path":2325,"stem":2326,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-error-boundary","docs\u002F5.x\u002F4.api\u002F1.components\u002F6.nuxt-error-boundary",{"title":492,"path":2328,"stem":2329,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-welcome","docs\u002F5.x\u002F4.api\u002F1.components\u002F7.nuxt-welcome",{"title":496,"path":2331,"stem":2332,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomponents\u002Fnuxt-island","docs\u002F5.x\u002F4.api\u002F1.components\u002F8.nuxt-island",{"title":500,"path":2334,"stem":2335,"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":2337,"stem":2338,"children":2339,"page":108},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables","docs\u002F5.x\u002F4.api\u002F2.composables",[2340,2343,2346,2349,2352,2355,2358,2361,2364,2367,2370,2373,2376,2379,2382,2385,2388,2391,2394,2397,2400,2403,2406,2409,2412,2415,2418,2421,2424,2427,2430,2433,2436],{"title":1493,"path":2341,"stem":2342,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fcreate-use-async-data","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fcreate-use-async-data",{"title":1497,"path":2344,"stem":2345,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fcreate-use-fetch","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fcreate-use-fetch",{"title":511,"path":2347,"stem":2348,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fon-prehydrate","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fon-prehydrate",{"title":1504,"path":2350,"stem":2351,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-announcer","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-announcer",{"title":515,"path":2353,"stem":2354,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-app-config","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-app-config",{"title":519,"path":2356,"stem":2357,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-async-data","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-async-data",{"title":523,"path":2359,"stem":2360,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-cookie","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-cookie",{"title":527,"path":2362,"stem":2363,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-error","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-error",{"title":531,"path":2365,"stem":2366,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-fetch","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-fetch",{"title":535,"path":2368,"stem":2369,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-head","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-head",{"title":539,"path":2371,"stem":2372,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-head-safe","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-head-safe",{"title":543,"path":2374,"stem":2375,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-hydration","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-hydration",{"title":1532,"path":2377,"stem":2378,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-layout","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-layout",{"title":547,"path":2380,"stem":2381,"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":2383,"stem":2384,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-lazy-fetch","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-lazy-fetch",{"title":555,"path":2386,"stem":2387,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-loading-indicator","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-loading-indicator",{"title":559,"path":2389,"stem":2390,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-nuxt-app","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-nuxt-app",{"title":563,"path":2392,"stem":2393,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-nuxt-data","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-nuxt-data",{"title":567,"path":2395,"stem":2396,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-preview-mode","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-preview-mode",{"title":571,"path":2398,"stem":2399,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-request-event","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-request-event",{"title":575,"path":2401,"stem":2402,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-request-fetch","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-request-fetch",{"title":579,"path":2404,"stem":2405,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-request-header","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-request-header",{"title":583,"path":2407,"stem":2408,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-request-headers","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-request-headers",{"title":587,"path":2410,"stem":2411,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-request-url","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-request-url",{"title":591,"path":2413,"stem":2414,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-response-header","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-response-header",{"title":595,"path":2416,"stem":2417,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-route","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-route",{"title":599,"path":2419,"stem":2420,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-route-announcer","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-route-announcer",{"title":603,"path":2422,"stem":2423,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-router","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-router",{"title":607,"path":2425,"stem":2426,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-runtime-config","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-runtime-config",{"title":611,"path":2428,"stem":2429,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-runtime-hook","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-runtime-hook",{"title":615,"path":2431,"stem":2432,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcomposables\u002Fuse-seo-meta","docs\u002F5.x\u002F4.api\u002F2.composables\u002Fuse-seo-meta",{"title":619,"path":2434,"stem":2435,"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":2437,"stem":2438,"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":2440,"stem":2441,"children":2442,"page":108},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils","docs\u002F5.x\u002F4.api\u002F3.utils",[2443,2446,2449,2452,2455,2458,2461,2464,2467,2470,2473,2476,2479,2482,2485,2488,2491,2494,2497,2500,2503,2506,2509,2512,2515,2518,2521,2524,2527],{"title":634,"path":2444,"stem":2445,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fdollarfetch","docs\u002F5.x\u002F4.api\u002F3.utils\u002F$fetch",{"title":638,"path":2447,"stem":2448,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fabort-navigation","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fabort-navigation",{"title":642,"path":2450,"stem":2451,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fadd-route-middleware","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fadd-route-middleware",{"title":646,"path":2453,"stem":2454,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fcall-once","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fcall-once",{"title":650,"path":2456,"stem":2457,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fclear-error","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fclear-error",{"title":654,"path":2459,"stem":2460,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fclear-nuxt-data","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fclear-nuxt-data",{"title":658,"path":2462,"stem":2463,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fclear-nuxt-state","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fclear-nuxt-state",{"title":662,"path":2465,"stem":2466,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fcreate-error","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fcreate-error",{"title":666,"path":2468,"stem":2469,"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":2471,"stem":2472,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fdefine-nuxt-component","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fdefine-nuxt-component",{"title":674,"path":2474,"stem":2475,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fdefine-nuxt-plugin","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fdefine-nuxt-plugin",{"title":678,"path":2477,"stem":2478,"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":2480,"stem":2481,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fdefine-page-meta","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fdefine-page-meta",{"title":686,"path":2483,"stem":2484,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fdefine-route-rules","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fdefine-route-rules",{"title":690,"path":2486,"stem":2487,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fnavigate-to","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fnavigate-to",{"title":694,"path":2489,"stem":2490,"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":2492,"stem":2493,"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":2495,"stem":2496,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fon-nuxt-ready","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fon-nuxt-ready",{"title":706,"path":2498,"stem":2499,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fprefetch-components","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fprefetch-components",{"title":710,"path":2501,"stem":2502,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fpreload-components","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fpreload-components",{"title":714,"path":2504,"stem":2505,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fpreload-route-components","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fpreload-route-components",{"title":718,"path":2507,"stem":2508,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fprerender-routes","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fprerender-routes",{"title":722,"path":2510,"stem":2511,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Frefresh-cookie","docs\u002F5.x\u002F4.api\u002F3.utils\u002Frefresh-cookie",{"title":726,"path":2513,"stem":2514,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Frefresh-nuxt-data","docs\u002F5.x\u002F4.api\u002F3.utils\u002Frefresh-nuxt-data",{"title":730,"path":2516,"stem":2517,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Freload-nuxt-app","docs\u002F5.x\u002F4.api\u002F3.utils\u002Freload-nuxt-app",{"title":734,"path":2519,"stem":2520,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fset-page-layout","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fset-page-layout",{"title":738,"path":2522,"stem":2523,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fset-response-status","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fset-response-status",{"title":742,"path":2525,"stem":2526,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Futils\u002Fshow-error","docs\u002F5.x\u002F4.api\u002F3.utils\u002Fshow-error",{"title":746,"path":2528,"stem":2529,"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":2531,"stem":2532,"children":2533,"page":108},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands","docs\u002F5.x\u002F4.api\u002F4.commands",[2534,2537,2540,2543,2546,2549,2552,2555,2558,2561,2564,2567,2570,2573,2576,2579],{"title":757,"path":2535,"stem":2536,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fadd","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fadd",{"title":761,"path":2538,"stem":2539,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fanalyze","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fanalyze",{"title":765,"path":2541,"stem":2542,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fbuild","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fbuild",{"title":769,"path":2544,"stem":2545,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fbuild-module","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fbuild-module",{"title":773,"path":2547,"stem":2548,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fcleanup","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fcleanup",{"title":777,"path":2550,"stem":2551,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fdev","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fdev",{"title":781,"path":2553,"stem":2554,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fdevtools","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fdevtools",{"title":785,"path":2556,"stem":2557,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fgenerate","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fgenerate",{"title":789,"path":2559,"stem":2560,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Finfo","docs\u002F5.x\u002F4.api\u002F4.commands\u002Finfo",{"title":793,"path":2562,"stem":2563,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Finit","docs\u002F5.x\u002F4.api\u002F4.commands\u002Finit",{"title":797,"path":2565,"stem":2566,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fmodule","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fmodule",{"title":801,"path":2568,"stem":2569,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fprepare","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fprepare",{"title":805,"path":2571,"stem":2572,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fpreview","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fpreview",{"title":809,"path":2574,"stem":2575,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Ftest","docs\u002F5.x\u002F4.api\u002F4.commands\u002Ftest",{"title":813,"path":2577,"stem":2578,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Ftypecheck","docs\u002F5.x\u002F4.api\u002F4.commands\u002Ftypecheck",{"title":817,"path":2580,"stem":2581,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fcommands\u002Fupgrade","docs\u002F5.x\u002F4.api\u002F4.commands\u002Fupgrade",{"title":415,"titleTemplate":821,"icon":822,"path":2583,"stem":2584,"children":2585,"page":108},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit","docs\u002F5.x\u002F4.api\u002F5.kit",[2586,2589,2592,2595,2598,2601,2604,2607,2610,2613,2616,2619,2622,2625,2628,2631,2634,2637,2640],{"title":276,"path":2587,"stem":2588,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fmodules","docs\u002F5.x\u002F4.api\u002F5.kit\u002F1.modules",{"title":403,"path":2590,"stem":2591,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fruntime-config","docs\u002F5.x\u002F4.api\u002F5.kit\u002F10.runtime-config",{"title":833,"path":2593,"stem":2594,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Ftemplates","docs\u002F5.x\u002F4.api\u002F5.kit\u002F10.templates",{"title":1752,"path":2596,"stem":2597,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fapp-config","docs\u002F5.x\u002F4.api\u002F5.kit\u002F11.app-config",{"title":837,"path":2599,"stem":2600,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fnitro","docs\u002F5.x\u002F4.api\u002F5.kit\u002F12.nitro",{"title":841,"path":2602,"stem":2603,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fresolving","docs\u002F5.x\u002F4.api\u002F5.kit\u002F13.resolving",{"title":845,"path":2605,"stem":2606,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Flogging","docs\u002F5.x\u002F4.api\u002F5.kit\u002F14.logging",{"title":849,"path":2608,"stem":2609,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fbuilder","docs\u002F5.x\u002F4.api\u002F5.kit\u002F15.builder",{"title":853,"path":2611,"stem":2612,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fexamples","docs\u002F5.x\u002F4.api\u002F5.kit\u002F16.examples",{"title":84,"path":2614,"stem":2615,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Flayers","docs\u002F5.x\u002F4.api\u002F5.kit\u002F17.layers",{"title":860,"path":2617,"stem":2618,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fprogrammatic","docs\u002F5.x\u002F4.api\u002F5.kit\u002F2.programmatic",{"title":864,"path":2620,"stem":2621,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fcompatibility","docs\u002F5.x\u002F4.api\u002F5.kit\u002F3.compatibility",{"title":268,"path":2623,"stem":2624,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fautoimports","docs\u002F5.x\u002F4.api\u002F5.kit\u002F4.autoimports",{"title":438,"path":2626,"stem":2627,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fcomponents","docs\u002F5.x\u002F4.api\u002F5.kit\u002F5.components",{"title":874,"path":2629,"stem":2630,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fcontext","docs\u002F5.x\u002F4.api\u002F5.kit\u002F6.context",{"title":878,"path":2632,"stem":2633,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fpages","docs\u002F5.x\u002F4.api\u002F5.kit\u002F7.pages",{"title":882,"path":2635,"stem":2636,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Flayout","docs\u002F5.x\u002F4.api\u002F5.kit\u002F8.layout",{"title":886,"path":2638,"stem":2639,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fhead","docs\u002F5.x\u002F4.api\u002F5.kit\u002F9.head",{"title":890,"path":2641,"stem":2642,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fkit\u002Fplugins","docs\u002F5.x\u002F4.api\u002F5.kit\u002F9.plugins",{"title":894,"titleTemplate":6,"icon":895,"path":2644,"stem":2645,"children":2646,"page":108},"\u002Fdocs\u002F5.x\u002Fapi\u002Fadvanced","docs\u002F5.x\u002F4.api\u002F6.advanced",[2647,2650],{"title":411,"path":2648,"stem":2649,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fadvanced\u002Fhooks","docs\u002F5.x\u002F4.api\u002F6.advanced\u002F1.hooks",{"title":903,"path":2651,"stem":2652,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fapi\u002Fadvanced\u002Fimport-meta","docs\u002F5.x\u002F4.api\u002F6.advanced\u002F2.import-meta",{"title":907,"path":2654,"stem":2655,"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":2657,"stem":2658,"children":2659,"page":108},"\u002Fdocs\u002F5.x\u002Fexamples","docs\u002F5.x\u002F4.examples",[2660,2663,2682,2695,2726],{"title":918,"path":2661,"stem":2662,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fhello-world","docs\u002F5.x\u002F4.examples\u002F0.hello-world",{"title":399,"path":2664,"stem":2665,"children":2666,"page":108},"\u002Fdocs\u002F5.x\u002Fexamples\u002Ffeatures","docs\u002F5.x\u002F4.examples\u002F1.features",[2667,2670,2673,2676,2679],{"title":926,"path":2668,"stem":2669,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Ffeatures\u002Fauto-imports","docs\u002F5.x\u002F4.examples\u002F1.features\u002F1.auto-imports",{"title":64,"path":2671,"stem":2672,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Ffeatures\u002Fdata-fetching","docs\u002F5.x\u002F4.examples\u002F1.features\u002F2.data-fetching",{"title":69,"path":2674,"stem":2675,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Ffeatures\u002Fstate-management","docs\u002F5.x\u002F4.examples\u002F1.features\u002F3.state-management",{"title":936,"path":2677,"stem":2678,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Ffeatures\u002Fmeta-tags","docs\u002F5.x\u002F4.examples\u002F1.features\u002F4.meta-tags",{"title":940,"path":2680,"stem":2681,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Ffeatures\u002Flayouts","docs\u002F5.x\u002F4.examples\u002F1.features\u002F5.layouts",{"title":49,"path":2683,"stem":2684,"children":2685,"page":108},"\u002Fdocs\u002F5.x\u002Fexamples\u002Frouting","docs\u002F5.x\u002F4.examples\u002F2.routing",[2686,2689,2692],{"title":948,"path":2687,"stem":2688,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Frouting\u002Fmiddleware","docs\u002F5.x\u002F4.examples\u002F2.routing\u002Fmiddleware",{"title":878,"path":2690,"stem":2691,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Frouting\u002Fpages","docs\u002F5.x\u002F4.examples\u002F2.routing\u002Fpages",{"title":955,"path":2693,"stem":2694,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Frouting\u002Funiversal-router","docs\u002F5.x\u002F4.examples\u002F2.routing\u002Funiversal-router",{"title":894,"path":2696,"stem":2697,"children":2698,"page":108},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fadvanced","docs\u002F5.x\u002F4.examples\u002F4.advanced",[2699,2702,2705,2708,2711,2714,2717,2720,2723],{"title":84,"path":2700,"stem":2701,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fadvanced\u002Fconfig-extends","docs\u002F5.x\u002F4.examples\u002F4.advanced\u002Fconfig-extends",{"title":74,"path":2703,"stem":2704,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fadvanced\u002Ferror-handling","docs\u002F5.x\u002F4.examples\u002F4.advanced\u002Ferror-handling",{"title":969,"path":2706,"stem":2707,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fadvanced\u002Fjsx","docs\u002F5.x\u002F4.examples\u002F4.advanced\u002Fjsx",{"title":973,"path":2709,"stem":2710,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fadvanced\u002Flocale","docs\u002F5.x\u002F4.examples\u002F4.advanced\u002Flocale",{"title":977,"path":2712,"stem":2713,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fadvanced\u002Fmodule-extend-pages","docs\u002F5.x\u002F4.examples\u002F4.advanced\u002Fmodule-extend-pages",{"title":981,"path":2715,"stem":2716,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fadvanced\u002Fteleport","docs\u002F5.x\u002F4.examples\u002F4.advanced\u002Fteleport",{"title":99,"path":2718,"stem":2719,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fadvanced\u002Ftesting","docs\u002F5.x\u002F4.examples\u002F4.advanced\u002Ftesting",{"title":523,"path":2721,"stem":2722,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fadvanced\u002Fuse-cookie","docs\u002F5.x\u002F4.examples\u002F4.advanced\u002Fuse-cookie",{"title":991,"path":2724,"stem":2725,"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":2727,"stem":2728,"children":2729,"page":108},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fexperimental","docs\u002F5.x\u002F4.examples\u002F7.experimental",[2730],{"title":1000,"path":2731,"stem":2732,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fexamples\u002Fexperimental\u002Fwasm","docs\u002F5.x\u002F4.examples\u002F7.experimental\u002Fwasm",{"title":1004,"titleTemplate":1005,"icon":1006,"path":2734,"stem":2735,"children":2736,"page":108},"\u002Fdocs\u002F5.x\u002Fcommunity","docs\u002F5.x\u002F5.community",[2737,2740,2743,2746,2749,2752],{"title":1011,"path":2738,"stem":2739,"titleTemplate":6,"icon":1014},"\u002Fdocs\u002F5.x\u002Fcommunity\u002Fgetting-help","docs\u002F5.x\u002F5.community\u002F2.getting-help",{"title":1016,"path":2741,"stem":2742,"titleTemplate":6,"icon":1019},"\u002Fdocs\u002F5.x\u002Fcommunity\u002Freporting-bugs","docs\u002F5.x\u002F5.community\u002F3.reporting-bugs",{"title":1021,"path":2744,"stem":2745,"titleTemplate":6,"icon":1024},"\u002Fdocs\u002F5.x\u002Fcommunity\u002Fcontribution","docs\u002F5.x\u002F5.community\u002F4.contribution",{"title":1026,"path":2747,"stem":2748,"titleTemplate":6,"icon":1029},"\u002Fdocs\u002F5.x\u002Fcommunity\u002Fframework-contribution","docs\u002F5.x\u002F5.community\u002F5.framework-contribution",{"title":1031,"path":2750,"stem":2751,"titleTemplate":6,"icon":1034},"\u002Fdocs\u002F5.x\u002Fcommunity\u002Froadmap","docs\u002F5.x\u002F5.community\u002F6.roadmap",{"title":1036,"path":2753,"stem":2754,"titleTemplate":6,"icon":1039},"\u002Fdocs\u002F5.x\u002Fcommunity\u002Fchangelog","docs\u002F5.x\u002F5.community\u002F7.changelog",{"title":1041,"titleTemplate":1042,"icon":1043,"path":2756,"stem":2757,"children":2758,"page":108},"\u002Fdocs\u002F5.x\u002Fbridge","docs\u002F5.x\u002F6.bridge",[2759,2762,2765,2768,2771,2774,2777,2780,2783,2786],{"title":1048,"path":2760,"stem":2761,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fbridge\u002Foverview","docs\u002F5.x\u002F6.bridge\u002F1.overview",{"title":29,"path":2763,"stem":2764,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fbridge\u002Fconfiguration","docs\u002F5.x\u002F6.bridge\u002F10.configuration",{"title":280,"path":2766,"stem":2767,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fbridge\u002Ftypescript","docs\u002F5.x\u002F6.bridge\u002F2.typescript",{"title":1058,"path":2769,"stem":2770,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fbridge\u002Fbridge-composition-api","docs\u002F5.x\u002F6.bridge\u002F3.bridge-composition-api",{"title":1062,"path":2772,"stem":2773,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fbridge\u002Fplugins-and-middleware","docs\u002F5.x\u002F6.bridge\u002F4.plugins-and-middleware",{"title":1066,"path":2775,"stem":2776,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fbridge\u002Fnuxt3-compatible-api","docs\u002F5.x\u002F6.bridge\u002F5.nuxt3-compatible-api",{"title":936,"path":2778,"stem":2779,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fbridge\u002Fmeta","docs\u002F5.x\u002F6.bridge\u002F6.meta",{"title":403,"path":2781,"stem":2782,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fbridge\u002Fruntime-config","docs\u002F5.x\u002F6.bridge\u002F7.runtime-config",{"title":837,"path":2784,"stem":2785,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fbridge\u002Fnitro","docs\u002F5.x\u002F6.bridge\u002F8.nitro",{"title":1079,"path":2787,"stem":2788,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fbridge\u002Fvite","docs\u002F5.x\u002F6.bridge\u002F9.vite",{"title":1083,"titleTemplate":1084,"icon":107,"path":2790,"stem":2791,"children":2792,"page":108},"\u002Fdocs\u002F5.x\u002Fmigration","docs\u002F5.x\u002F7.migration",[2793,2796,2799,2802,2805,2808,2811,2814,2817,2820,2823],{"title":1048,"path":2794,"stem":2795,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fmigration\u002Foverview","docs\u002F5.x\u002F7.migration\u002F1.overview",{"title":1092,"path":2797,"stem":2798,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fmigration\u002Fbundling","docs\u002F5.x\u002F7.migration\u002F10.bundling",{"title":79,"path":2800,"stem":2801,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fmigration\u002Fserver","docs\u002F5.x\u002F7.migration\u002F11.server",{"title":29,"path":2803,"stem":2804,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fmigration\u002Fconfiguration","docs\u002F5.x\u002F7.migration\u002F2.configuration",{"title":276,"path":2806,"stem":2807,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fmigration\u002Fmodule-authors","docs\u002F5.x\u002F7.migration\u002F20.module-authors",{"title":926,"path":2809,"stem":2810,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fmigration\u002Fauto-imports","docs\u002F5.x\u002F7.migration\u002F3.auto-imports",{"title":936,"path":2812,"stem":2813,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fmigration\u002Fmeta","docs\u002F5.x\u002F7.migration\u002F4.meta",{"title":1062,"path":2815,"stem":2816,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fmigration\u002Fplugins-and-middleware","docs\u002F5.x\u002F7.migration\u002F5.plugins-and-middleware",{"title":1114,"path":2818,"stem":2819,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fmigration\u002Fpages-and-layouts","docs\u002F5.x\u002F7.migration\u002F6.pages-and-layouts",{"title":1118,"path":2821,"stem":2822,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fmigration\u002Fcomponent-options","docs\u002F5.x\u002F7.migration\u002F7.component-options",{"title":403,"path":2824,"stem":2825,"titleTemplate":6},"\u002Fdocs\u002F5.x\u002Fmigration\u002Fruntime-config","docs\u002F5.x\u002F7.migration\u002F8.runtime-config",{"title":2827,"icon":2828,"path":2829,"stem":2830,"children":2831,"page":108},"Blog","i-lucide-newspaper","\u002Fblog","blog",[2832,2836,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],{"title":2833,"path":2834,"stem":2835},"Announcing 3.0","\u002Fblog\u002Fv3","blog\u002F1.v3",{"title":2837,"path":2838,"stem":2839},"Nuxt 3.3","\u002Fblog\u002Fv3-3","blog\u002F10.v3-3",{"title":2841,"path":2842,"stem":2843},"Nuxt 3.4","\u002Fblog\u002Fv3-4","blog\u002F11.v3-4",{"title":2845,"path":2846,"stem":2847},"Nuxt 3.5","\u002Fblog\u002Fv3-5","blog\u002F12.v3-5",{"title":2849,"path":2850,"stem":2851},"Nuxt 3.6","\u002Fblog\u002Fv3-6","blog\u002F13.v3-6",{"title":2853,"path":2854,"stem":2855},"Nuxt on the Edge","\u002Fblog\u002Fnuxt-on-the-edge","blog\u002F14.nuxt-on-the-edge",{"title":2857,"path":2858,"stem":2859},"Nuxt 3.7","\u002Fblog\u002Fv3-7","blog\u002F15.v3-7",{"title":2861,"path":2862,"stem":2863},"A New Website","\u002Fblog\u002Fnew-website","blog\u002F16.new-website",{"title":2865,"path":2866,"stem":2867},"Nuxt 3.8","\u002Fblog\u002Fv3-8","blog\u002F17.v3-8",{"title":2869,"path":2870,"stem":2871},"Nuxt DevTools v1.0","\u002Fblog\u002Fnuxt-devtools-v1-0","blog\u002F18.nuxt-devtools-v1-0",{"title":2873,"path":2874,"stem":2875},"Nuxt 3.9","\u002Fblog\u002Fv3-9","blog\u002F19.v3-9",{"title":2877,"path":2878,"stem":2879},"Nuxt: A vision for 2023","\u002Fblog\u002Fvision-2023","blog\u002F2.vision-2023",{"title":2881,"path":2882,"stem":2883},"Nuxt 3.10","\u002Fblog\u002Fv3-10","blog\u002F20.v3-10",{"title":2885,"path":2886,"stem":2887},"The Evolution of Shiki v1.0","\u002Fblog\u002Fshiki-v1","blog\u002F21.shiki-v1",{"title":2889,"path":2890,"stem":2891},"Nuxt 3.11","\u002Fblog\u002Fv3-11","blog\u002F22.v3-11",{"title":2893,"path":2894,"stem":2895},"Nuxt: Looking forward","\u002Fblog\u002Flooking-forward-2024","blog\u002F23.looking-forward-2024",{"title":2897,"path":2898,"stem":2899},"Refreshed Nuxt ESLint Integrations","\u002Fblog\u002Feslint-module","blog\u002F24.eslint-module",{"title":2901,"path":2902,"stem":2903},"Nuxt 3.12","\u002Fblog\u002Fv3-12","blog\u002F25.v3-12",{"title":2905,"path":2906,"stem":2907},"Introducing Nuxt Scripts","\u002Fblog\u002Fnuxt-scripts","blog\u002F26.nuxt-scripts",{"title":2909,"path":2910,"stem":2911},"Nuxt 3.13","\u002Fblog\u002Fv3-13","blog\u002F27.v3-13",{"title":2913,"path":2914,"stem":2915},"Nuxt 3.14","\u002Fblog\u002Fv3-14","blog\u002F27.v3-14",{"title":2917,"path":2918,"stem":2919},"Introducing Nuxt Icon v1","\u002Fblog\u002Fnuxt-icon-v1-0","blog\u002F29.nuxt-icon-v1-0",{"title":2921,"path":2922,"stem":2923},"Introducing Nuxt DevTools","\u002Fblog\u002Fintroducing-nuxt-devtools","blog\u002F3.introducing-nuxt-devtools",{"title":2925,"path":2926,"stem":2927},"Announcing Nuxt 3 Release Candidate","\u002Fblog\u002Fnuxt3-rc","blog\u002F3.nuxt3-rc",{"title":2929,"path":2930,"stem":2931},"Nuxt 3.15","\u002Fblog\u002Fv3-15","blog\u002F30.v3-15",{"title":2933,"path":2934,"stem":2935},"Nuxt 3.16","\u002Fblog\u002Fv3-16","blog\u002F31.v3-16",{"title":2937,"path":2938,"stem":2939},"Nuxt UI v3","\u002Fblog\u002Fnuxt-ui-v3","blog\u002F32.nuxt-ui-v3",{"title":2941,"path":2942,"stem":2943},"Nuxt 3.17","\u002Fblog\u002Fv3-17","blog\u002F33.v3-17",{"title":2945,"path":2946,"stem":2947},"Roadmap to v4","\u002Fblog\u002Froadmap-v4","blog\u002F34.roadmap-v4",{"title":2949,"path":2950,"stem":2951},"Building a Privacy-First Feedback Widget","\u002Fblog\u002Fbuilding-a-feedback-widget","blog\u002F35.building-a-feedback-widget",{"title":2953,"path":2954,"stem":2955},"Announcing Nuxt 4.0","\u002Fblog\u002Fv4","blog\u002F36.v4",{"title":2957,"path":2958,"stem":2959},"Nuxt 3.18","\u002Fblog\u002Fv3-18","blog\u002F37.v3-18",{"title":2961,"path":2962,"stem":2963},"Nuxt 4.1","\u002Fblog\u002Fv4-1","blog\u002F38.v4-1",{"title":2965,"path":2966,"stem":2967},"Nuxt UI v4","\u002Fblog\u002Fnuxt-ui-v4","blog\u002F39.nuxt-ui-v4",{"title":2969,"path":2970,"stem":2971},"Nuxt 2 End-of-Life (EOL)","\u002Fblog\u002Fnuxt2-eol","blog\u002F4.nuxt2-eol",{"title":2973,"path":2974,"stem":2975},"Introducing Nuxt 3 Beta","\u002Fblog\u002Fnuxt3-beta","blog\u002F4.nuxt3-beta",{"title":2977,"path":2978,"stem":2979},"Building an MCP Server for Nuxt","\u002Fblog\u002Fbuilding-nuxt-mcp","blog\u002F40.building-nuxt-mcp",{"title":2981,"path":2982,"stem":2983},"Nuxt 4.2","\u002Fblog\u002Fv4-2","blog\u002F40.v4-2",{"title":2985,"path":2986,"stem":2987},"Nuxt Image v2","\u002Fblog\u002Fnuxt-image-v2","blog\u002F41.nuxt-image-v2",{"title":2989,"path":2990,"stem":2991},"Nuxt 4.3","\u002Fblog\u002Fv4-3","blog\u002F42.v4-3",{"title":2993,"path":2994,"stem":2995},"Nuxt 4.4","\u002Fblog\u002Fv4-4","blog\u002F43.v4-4",{"title":2997,"path":2998,"stem":2999},"Introducing the Nuxt Agent","\u002Fblog\u002Fintroducing-nuxt-agent","blog\u002F44.introducing-nuxt-agent",{"title":3001,"path":3002,"stem":3003},"Meet Nuxi","\u002Fblog\u002Fmeet-nuxi","blog\u002F45.meet-nuxi",{"title":3005,"path":3006,"stem":3007},"Nuxt 4.5","\u002Fblog\u002Fv4-5","blog\u002F46.v4-5",{"title":3009,"path":3010,"stem":3011},"Nuxt Security Patch Releases","\u002Fblog\u002Fv4-5-security","blog\u002F47.v4-5-security",{"title":3013,"path":3014,"stem":3015},"Going Full Static","\u002Fblog\u002Fgoing-full-static","blog\u002F5.going-full-static",{"title":3017,"path":3018,"stem":3019},"Introducing Smart Prefetching","\u002Fblog\u002Fintroducing-smart-prefetching","blog\u002F6.introducing-smart-prefetching",{"title":3021,"path":3022,"stem":3023},"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":3025,"path":3026,"stem":3027},"Nuxt 2 Static Improvements","\u002Fblog\u002Fnuxt-static-improvements","blog\u002F8.nuxt-static-improvements",{"title":3029,"path":3030,"stem":3031},"Nuxt 2: From Terminal to Browser","\u002Fblog\u002Fnuxtjs-from-terminal-to-browser","blog\u002F9.nuxtjs-from-terminal-to-browser",{"name":3033,"description":3034,"repo":3035,"npm":3036,"icon":3037,"github":3038,"website":3038,"learn_more":3039,"category":3040,"type":3041,"maintainers":3042,"compatibility":3048,"generatedAt":3051,"contributors":3052,"stats":3072,"readme":3080},"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",[3043],{"name":3044,"github":3045,"twitter":3046,"bluesky":3047},"Estéban","barbapapazes","soubiran_","soubiran.dev",{"nuxt":3049,"requires":3050},">=3.0.0",{},"2026-08-07T08:48:28.079Z",[3053,3057,3061,3065,3068],{"id":3054,"username":3055,"contributions":3056},45267552,"Barbapapazes",60,{"id":3058,"username":3059,"contributions":3060},41266342,"zAlweNy26",3,{"id":3062,"username":3063,"contributions":3064},7252657,"maartenvanhunsel",2,{"id":3066,"username":3067,"contributions":3064},343392,"madc",{"id":3069,"username":3070,"contributions":3071},5769861,"stanislav-janu",1,{"version":3073,"downloads":3074,"stars":3075,"watchers":3075,"forks":3076,"defaultBranch":3077,"publishedAt":3078,"createdAt":3079},"0.3.5",16628,359,13,"main",1752673833614,1718198976583,{"data":3081,"body":3083,"toc":7157},{"title":3082,"description":3037},"Nuxt Authorization",{"type":3084,"children":3085},"root",[3086,3093,3148,3153,3162,3177,3190,3196,3226,3232,3237,3279,3284,3290,3302,3309,3314,3327,3585,3598,3610,3839,3862,3880,3885,3898,3910,3915,4136,4141,4417,4422,4428,4455,4460,4473,4667,4712,4717,4816,4821,4827,4868,4880,4934,4942,5000,5011,5071,5078,5143,5154,5201,5208,5246,5251,5463,5504,5524,5541,5547,5552,5789,5800,5813,6018,6052,6243,6256,6383,6388,6458,6463,6501,6507,6526,6863,6868,7117,7123,7137,7142,7151],{"type":3087,"tag":3088,"props":3089,"children":3090},"element","h1",{"id":3036},[3091],{"type":3092,"value":3082},"text",{"type":3087,"tag":3094,"props":3095,"children":3096},"p",{},[3097,3110,3119,3128,3138],{"type":3087,"tag":3098,"props":3099,"children":3103},"a",{"href":3100,"rel":3101},"https:\u002F\u002Fnpmjs.com\u002Fpackage\u002Fnuxt-authorization",[3102],"nofollow",[3104],{"type":3087,"tag":3105,"props":3106,"children":3109},"img",{"alt":3107,"src":3108},"npm version","https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fv\u002Fnuxt-authorization\u002Flatest.svg?style=flat&colorA=020420&colorB=00DC82",[],{"type":3087,"tag":3098,"props":3111,"children":3113},{"href":3100,"rel":3112},[3102],[3114],{"type":3087,"tag":3105,"props":3115,"children":3118},{"alt":3116,"src":3117},"npm downloads","https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fdm\u002Fnuxt-authorization.svg?style=flat&colorA=020420&colorB=00DC82",[],{"type":3087,"tag":3098,"props":3120,"children":3122},{"href":3100,"rel":3121},[3102],[3123],{"type":3087,"tag":3105,"props":3124,"children":3127},{"alt":3125,"src":3126},"License","https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fl\u002Fnuxt-authorization.svg?style=flat&colorA=020420&colorB=00DC82",[],{"type":3087,"tag":3098,"props":3129,"children":3132},{"href":3130,"rel":3131},"https:\u002F\u002Fnuxt.com",[3102],[3133],{"type":3087,"tag":3105,"props":3134,"children":3137},{"alt":3135,"src":3136},"Nuxt","https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FNuxt-020420?logo=nuxt.js",[],{"type":3087,"tag":3098,"props":3139,"children":3142},{"href":3140,"rel":3141},"https:\u002F\u002Fpkg.pr.new\u002F~\u002FBarbapapazes\u002Fnuxt-authorization",[3102],[3143],{"type":3087,"tag":3105,"props":3144,"children":3147},{"alt":3145,"src":3146},"pkg.pr.new","https:\u002F\u002Fpkg.pr.new\u002Fbadge\u002FBarbapapazes\u002Fnuxt-authorization",[],{"type":3087,"tag":3094,"props":3149,"children":3150},{},[3151],{"type":3092,"value":3152},"Handle authorization with ease in both Nuxt and Nitro.",{"type":3087,"tag":3094,"props":3154,"children":3155},{},[3156],{"type":3087,"tag":3157,"props":3158,"children":3159},"em",{},[3160],{"type":3092,"value":3161},"This module does not implement ACL or RBAC. It provides low-level primitives that you can use to implement your own authorization logic.",{"type":3087,"tag":3163,"props":3164,"children":3165},"blockquote",{},[3166],{"type":3087,"tag":3094,"props":3167,"children":3168},{},[3169,3175],{"type":3087,"tag":3170,"props":3171,"children":3172},"span",{},[3173],{"type":3092,"value":3174},"!NOTE",{"type":3092,"value":3176},"\nIn the future, this module could be available as a Nitro module and a Nuxt module, but Nitro module are not yet ready.",{"type":3087,"tag":3094,"props":3178,"children":3179},{},[3180,3182,3188],{"type":3092,"value":3181},"To learn more about this module and which problem it solves, checkout my blog post about ",{"type":3087,"tag":3098,"props":3183,"children":3185},{"href":3039,"rel":3184},[3102],[3186],{"type":3092,"value":3187},"Authorization in Nuxt",{"type":3092,"value":3189},".",{"type":3087,"tag":3191,"props":3192,"children":3194},"h2",{"id":3193},"features",[3195],{"type":3092,"value":399},{"type":3087,"tag":3197,"props":3198,"children":3199},"ul",{},[3200,3206,3211,3216,3221],{"type":3087,"tag":3201,"props":3202,"children":3203},"li",{},[3204],{"type":3092,"value":3205},"⛰  Works on both the client (Nuxt) and the server (Nitro)",{"type":3087,"tag":3201,"props":3207,"children":3208},{},[3209],{"type":3092,"value":3210},"🌟  Write abilities once and use them everywhere",{"type":3087,"tag":3201,"props":3212,"children":3213},{},[3214],{"type":3092,"value":3215},"👨‍👩‍👧‍👦  Agnostic of the authentication layer",{"type":3087,"tag":3201,"props":3217,"children":3218},{},[3219],{"type":3092,"value":3220},"🫸  Use components to conditionally show part of the UI",{"type":3087,"tag":3201,"props":3222,"children":3223},{},[3224],{"type":3092,"value":3225},"💧  Primitives are can be accessed for a full customization",{"type":3087,"tag":3191,"props":3227,"children":3229},{"id":3228},"quick-setup",[3230],{"type":3092,"value":3231},"Quick Setup",{"type":3087,"tag":3094,"props":3233,"children":3234},{},[3235],{"type":3092,"value":3236},"Install the module to your Nuxt application with one command:",{"type":3087,"tag":3238,"props":3239,"children":3243},"pre",{"className":3240,"code":3241,"language":3242,"meta":3037,"style":3037},"language-bash shiki shiki-themes material-theme-lighter material-theme-lighter material-theme-palenight","npx nuxi module add nuxt-authorization\n","bash",[3244],{"type":3087,"tag":3245,"props":3246,"children":3247},"code",{"__ignoreMap":3037},[3248],{"type":3087,"tag":3170,"props":3249,"children":3251},{"class":3250,"line":3071},"line",[3252,3258,3264,3269,3274],{"type":3087,"tag":3170,"props":3253,"children":3255},{"style":3254},"--shiki-light:#E2931D;--shiki-default:#E2931D;--shiki-dark:#FFCB6B",[3256],{"type":3092,"value":3257},"npx",{"type":3087,"tag":3170,"props":3259,"children":3261},{"style":3260},"--shiki-light:#91B859;--shiki-default:#91B859;--shiki-dark:#C3E88D",[3262],{"type":3092,"value":3263}," nuxi",{"type":3087,"tag":3170,"props":3265,"children":3266},{"style":3260},[3267],{"type":3092,"value":3268}," module",{"type":3087,"tag":3170,"props":3270,"children":3271},{"style":3260},[3272],{"type":3092,"value":3273}," add",{"type":3087,"tag":3170,"props":3275,"children":3276},{"style":3260},[3277],{"type":3092,"value":3278}," nuxt-authorization\n",{"type":3087,"tag":3094,"props":3280,"children":3281},{},[3282],{"type":3092,"value":3283},"That's it! You can now use the module in your Nuxt app ✨",{"type":3087,"tag":3191,"props":3285,"children":3287},{"id":3286},"documentation",[3288],{"type":3092,"value":3289},"Documentation",{"type":3087,"tag":3163,"props":3291,"children":3292},{},[3293],{"type":3087,"tag":3094,"props":3294,"children":3295},{},[3296,3300],{"type":3087,"tag":3170,"props":3297,"children":3298},{},[3299],{"type":3092,"value":3174},{"type":3092,"value":3301},"\nYou can take a look at the playground to see the module in action.",{"type":3087,"tag":3303,"props":3304,"children":3306},"h3",{"id":3305},"setup",[3307],{"type":3092,"value":3308},"Setup",{"type":3087,"tag":3094,"props":3310,"children":3311},{},[3312],{"type":3092,"value":3313},"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":3087,"tag":3094,"props":3315,"children":3316},{},[3317,3319,3325],{"type":3092,"value":3318},"For the Nuxt app, create a new plugin in ",{"type":3087,"tag":3245,"props":3320,"children":3322},{"className":3321},[],[3323],{"type":3092,"value":3324},"plugins\u002Fauthorization-resolver.ts",{"type":3092,"value":3326},":",{"type":3087,"tag":3238,"props":3328,"children":3332},{"className":3329,"code":3330,"language":3331,"meta":3037,"style":3037},"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",[3333],{"type":3087,"tag":3245,"props":3334,"children":3335},{"__ignoreMap":3037},[3336,3368,3401,3423,3442,3455,3472,3489,3517,3527,3536,3545,3554,3562,3571],{"type":3087,"tag":3170,"props":3337,"children":3338},{"class":3250,"line":3071},[3339,3345,3350,3356,3362],{"type":3087,"tag":3170,"props":3340,"children":3342},{"style":3341},"--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#39ADB5;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic",[3343],{"type":3092,"value":3344},"export",{"type":3087,"tag":3170,"props":3346,"children":3347},{"style":3341},[3348],{"type":3092,"value":3349}," default",{"type":3087,"tag":3170,"props":3351,"children":3353},{"style":3352},"--shiki-light:#6182B8;--shiki-default:#6182B8;--shiki-dark:#82AAFF",[3354],{"type":3092,"value":3355}," defineNuxtPlugin",{"type":3087,"tag":3170,"props":3357,"children":3359},{"style":3358},"--shiki-light:#90A4AE;--shiki-default:#90A4AE;--shiki-dark:#BABED8",[3360],{"type":3092,"value":3361},"(",{"type":3087,"tag":3170,"props":3363,"children":3365},{"style":3364},"--shiki-light:#39ADB5;--shiki-default:#39ADB5;--shiki-dark:#89DDFF",[3366],{"type":3092,"value":3367},"{\n",{"type":3087,"tag":3170,"props":3369,"children":3370},{"class":3250,"line":3064},[3371,3377,3381,3386,3391,3396],{"type":3087,"tag":3170,"props":3372,"children":3374},{"style":3373},"--shiki-light:#E53935;--shiki-default:#E53935;--shiki-dark:#F07178",[3375],{"type":3092,"value":3376},"  name",{"type":3087,"tag":3170,"props":3378,"children":3379},{"style":3364},[3380],{"type":3092,"value":3326},{"type":3087,"tag":3170,"props":3382,"children":3383},{"style":3364},[3384],{"type":3092,"value":3385}," '",{"type":3087,"tag":3170,"props":3387,"children":3388},{"style":3260},[3389],{"type":3092,"value":3390},"authorization-resolver",{"type":3087,"tag":3170,"props":3392,"children":3393},{"style":3364},[3394],{"type":3092,"value":3395},"'",{"type":3087,"tag":3170,"props":3397,"children":3398},{"style":3364},[3399],{"type":3092,"value":3400},",\n",{"type":3087,"tag":3170,"props":3402,"children":3403},{"class":3250,"line":3060},[3404,3409,3413,3419],{"type":3087,"tag":3170,"props":3405,"children":3406},{"style":3373},[3407],{"type":3092,"value":3408},"  parallel",{"type":3087,"tag":3170,"props":3410,"children":3411},{"style":3364},[3412],{"type":3092,"value":3326},{"type":3087,"tag":3170,"props":3414,"children":3416},{"style":3415},"--shiki-light:#FF5370;--shiki-default:#FF5370;--shiki-dark:#FF9CAC",[3417],{"type":3092,"value":3418}," true",{"type":3087,"tag":3170,"props":3420,"children":3421},{"style":3364},[3422],{"type":3092,"value":3400},{"type":3087,"tag":3170,"props":3424,"children":3426},{"class":3250,"line":3425},4,[3427,3432,3437],{"type":3087,"tag":3170,"props":3428,"children":3429},{"style":3373},[3430],{"type":3092,"value":3431},"  setup",{"type":3087,"tag":3170,"props":3433,"children":3434},{"style":3364},[3435],{"type":3092,"value":3436},"()",{"type":3087,"tag":3170,"props":3438,"children":3439},{"style":3364},[3440],{"type":3092,"value":3441}," {\n",{"type":3087,"tag":3170,"props":3443,"children":3445},{"class":3250,"line":3444},5,[3446,3451],{"type":3087,"tag":3170,"props":3447,"children":3448},{"style":3341},[3449],{"type":3092,"value":3450},"    return",{"type":3087,"tag":3170,"props":3452,"children":3453},{"style":3364},[3454],{"type":3092,"value":3441},{"type":3087,"tag":3170,"props":3456,"children":3458},{"class":3250,"line":3457},6,[3459,3464,3468],{"type":3087,"tag":3170,"props":3460,"children":3461},{"style":3373},[3462],{"type":3092,"value":3463},"      provide",{"type":3087,"tag":3170,"props":3465,"children":3466},{"style":3364},[3467],{"type":3092,"value":3326},{"type":3087,"tag":3170,"props":3469,"children":3470},{"style":3364},[3471],{"type":3092,"value":3441},{"type":3087,"tag":3170,"props":3473,"children":3475},{"class":3250,"line":3474},7,[3476,3481,3485],{"type":3087,"tag":3170,"props":3477,"children":3478},{"style":3373},[3479],{"type":3092,"value":3480},"        authorization",{"type":3087,"tag":3170,"props":3482,"children":3483},{"style":3364},[3484],{"type":3092,"value":3326},{"type":3087,"tag":3170,"props":3486,"children":3487},{"style":3364},[3488],{"type":3092,"value":3441},{"type":3087,"tag":3170,"props":3490,"children":3492},{"class":3250,"line":3491},8,[3493,3498,3502,3507,3513],{"type":3087,"tag":3170,"props":3494,"children":3495},{"style":3352},[3496],{"type":3092,"value":3497},"          resolveClientUser",{"type":3087,"tag":3170,"props":3499,"children":3500},{"style":3364},[3501],{"type":3092,"value":3326},{"type":3087,"tag":3170,"props":3503,"children":3504},{"style":3364},[3505],{"type":3092,"value":3506}," ()",{"type":3087,"tag":3170,"props":3508,"children":3510},{"style":3509},"--shiki-light:#9C3EDA;--shiki-default:#9C3EDA;--shiki-dark:#C792EA",[3511],{"type":3092,"value":3512}," =>",{"type":3087,"tag":3170,"props":3514,"children":3515},{"style":3364},[3516],{"type":3092,"value":3441},{"type":3087,"tag":3170,"props":3518,"children":3520},{"class":3250,"line":3519},9,[3521],{"type":3087,"tag":3170,"props":3522,"children":3524},{"style":3523},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#90A4AE;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic",[3525],{"type":3092,"value":3526},"            \u002F\u002F Your logic to retrieve the user from the client\n",{"type":3087,"tag":3170,"props":3528,"children":3530},{"class":3250,"line":3529},10,[3531],{"type":3087,"tag":3170,"props":3532,"children":3533},{"style":3364},[3534],{"type":3092,"value":3535},"          },\n",{"type":3087,"tag":3170,"props":3537,"children":3539},{"class":3250,"line":3538},11,[3540],{"type":3087,"tag":3170,"props":3541,"children":3542},{"style":3364},[3543],{"type":3092,"value":3544},"        },\n",{"type":3087,"tag":3170,"props":3546,"children":3548},{"class":3250,"line":3547},12,[3549],{"type":3087,"tag":3170,"props":3550,"children":3551},{"style":3364},[3552],{"type":3092,"value":3553},"      },\n",{"type":3087,"tag":3170,"props":3555,"children":3556},{"class":3250,"line":3076},[3557],{"type":3087,"tag":3170,"props":3558,"children":3559},{"style":3364},[3560],{"type":3092,"value":3561},"    }\n",{"type":3087,"tag":3170,"props":3563,"children":3565},{"class":3250,"line":3564},14,[3566],{"type":3087,"tag":3170,"props":3567,"children":3568},{"style":3364},[3569],{"type":3092,"value":3570},"  },\n",{"type":3087,"tag":3170,"props":3572,"children":3574},{"class":3250,"line":3573},15,[3575,3580],{"type":3087,"tag":3170,"props":3576,"children":3577},{"style":3364},[3578],{"type":3092,"value":3579},"}",{"type":3087,"tag":3170,"props":3581,"children":3582},{"style":3358},[3583],{"type":3092,"value":3584},")\n",{"type":3087,"tag":3094,"props":3586,"children":3587},{},[3588,3590,3596],{"type":3092,"value":3589},"This function is called every time you check for authorization on the client. It should return the user object or ",{"type":3087,"tag":3245,"props":3591,"children":3593},{"className":3592},[],[3594],{"type":3092,"value":3595},"null",{"type":3092,"value":3597}," if the user is not authenticated. It can by async.",{"type":3087,"tag":3094,"props":3599,"children":3600},{},[3601,3603,3609],{"type":3092,"value":3602},"For the Nitro server, create a new plugin in ",{"type":3087,"tag":3245,"props":3604,"children":3606},{"className":3605},[],[3607],{"type":3092,"value":3608},"server\u002Fplugins\u002Fauthorization-resolver.ts",{"type":3092,"value":3326},{"type":3087,"tag":3238,"props":3611,"children":3613},{"className":3329,"code":3612,"language":3331,"meta":3037,"style":3037},"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",[3614],{"type":3087,"tag":3245,"props":3615,"children":3616},{"__ignoreMap":3037},[3617,3660,3735,3770,3794,3802,3809,3816,3828],{"type":3087,"tag":3170,"props":3618,"children":3619},{"class":3250,"line":3071},[3620,3624,3628,3633,3637,3641,3647,3652,3656],{"type":3087,"tag":3170,"props":3621,"children":3622},{"style":3341},[3623],{"type":3092,"value":3344},{"type":3087,"tag":3170,"props":3625,"children":3626},{"style":3341},[3627],{"type":3092,"value":3349},{"type":3087,"tag":3170,"props":3629,"children":3630},{"style":3352},[3631],{"type":3092,"value":3632}," defineNitroPlugin",{"type":3087,"tag":3170,"props":3634,"children":3635},{"style":3358},[3636],{"type":3092,"value":3361},{"type":3087,"tag":3170,"props":3638,"children":3639},{"style":3364},[3640],{"type":3092,"value":3361},{"type":3087,"tag":3170,"props":3642,"children":3644},{"style":3643},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#90A4AE;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic",[3645],{"type":3092,"value":3646},"nitroApp",{"type":3087,"tag":3170,"props":3648,"children":3649},{"style":3364},[3650],{"type":3092,"value":3651},")",{"type":3087,"tag":3170,"props":3653,"children":3654},{"style":3509},[3655],{"type":3092,"value":3512},{"type":3087,"tag":3170,"props":3657,"children":3658},{"style":3364},[3659],{"type":3092,"value":3441},{"type":3087,"tag":3170,"props":3661,"children":3662},{"class":3250,"line":3064},[3663,3668,3672,3677,3681,3686,3690,3694,3699,3703,3708,3713,3718,3723,3727,3731],{"type":3087,"tag":3170,"props":3664,"children":3665},{"style":3358},[3666],{"type":3092,"value":3667},"  nitroApp",{"type":3087,"tag":3170,"props":3669,"children":3670},{"style":3364},[3671],{"type":3092,"value":3189},{"type":3087,"tag":3170,"props":3673,"children":3674},{"style":3358},[3675],{"type":3092,"value":3676},"hooks",{"type":3087,"tag":3170,"props":3678,"children":3679},{"style":3364},[3680],{"type":3092,"value":3189},{"type":3087,"tag":3170,"props":3682,"children":3683},{"style":3352},[3684],{"type":3092,"value":3685},"hook",{"type":3087,"tag":3170,"props":3687,"children":3688},{"style":3373},[3689],{"type":3092,"value":3361},{"type":3087,"tag":3170,"props":3691,"children":3692},{"style":3364},[3693],{"type":3092,"value":3395},{"type":3087,"tag":3170,"props":3695,"children":3696},{"style":3260},[3697],{"type":3092,"value":3698},"request",{"type":3087,"tag":3170,"props":3700,"children":3701},{"style":3364},[3702],{"type":3092,"value":3395},{"type":3087,"tag":3170,"props":3704,"children":3705},{"style":3364},[3706],{"type":3092,"value":3707},",",{"type":3087,"tag":3170,"props":3709,"children":3710},{"style":3509},[3711],{"type":3092,"value":3712}," async",{"type":3087,"tag":3170,"props":3714,"children":3715},{"style":3364},[3716],{"type":3092,"value":3717}," (",{"type":3087,"tag":3170,"props":3719,"children":3720},{"style":3643},[3721],{"type":3092,"value":3722},"event",{"type":3087,"tag":3170,"props":3724,"children":3725},{"style":3364},[3726],{"type":3092,"value":3651},{"type":3087,"tag":3170,"props":3728,"children":3729},{"style":3509},[3730],{"type":3092,"value":3512},{"type":3087,"tag":3170,"props":3732,"children":3733},{"style":3364},[3734],{"type":3092,"value":3441},{"type":3087,"tag":3170,"props":3736,"children":3737},{"class":3250,"line":3060},[3738,3743,3747,3752,3756,3761,3766],{"type":3087,"tag":3170,"props":3739,"children":3740},{"style":3358},[3741],{"type":3092,"value":3742},"    event",{"type":3087,"tag":3170,"props":3744,"children":3745},{"style":3364},[3746],{"type":3092,"value":3189},{"type":3087,"tag":3170,"props":3748,"children":3749},{"style":3358},[3750],{"type":3092,"value":3751},"context",{"type":3087,"tag":3170,"props":3753,"children":3754},{"style":3364},[3755],{"type":3092,"value":3189},{"type":3087,"tag":3170,"props":3757,"children":3758},{"style":3358},[3759],{"type":3092,"value":3760},"$authorization",{"type":3087,"tag":3170,"props":3762,"children":3763},{"style":3364},[3764],{"type":3092,"value":3765}," =",{"type":3087,"tag":3170,"props":3767,"children":3768},{"style":3364},[3769],{"type":3092,"value":3441},{"type":3087,"tag":3170,"props":3771,"children":3772},{"class":3250,"line":3425},[3773,3778,3782,3786,3790],{"type":3087,"tag":3170,"props":3774,"children":3775},{"style":3352},[3776],{"type":3092,"value":3777},"      resolveServerUser",{"type":3087,"tag":3170,"props":3779,"children":3780},{"style":3364},[3781],{"type":3092,"value":3326},{"type":3087,"tag":3170,"props":3783,"children":3784},{"style":3364},[3785],{"type":3092,"value":3506},{"type":3087,"tag":3170,"props":3787,"children":3788},{"style":3509},[3789],{"type":3092,"value":3512},{"type":3087,"tag":3170,"props":3791,"children":3792},{"style":3364},[3793],{"type":3092,"value":3441},{"type":3087,"tag":3170,"props":3795,"children":3796},{"class":3250,"line":3444},[3797],{"type":3087,"tag":3170,"props":3798,"children":3799},{"style":3523},[3800],{"type":3092,"value":3801},"        \u002F\u002F Your logic to retrieve the user from the server\n",{"type":3087,"tag":3170,"props":3803,"children":3804},{"class":3250,"line":3457},[3805],{"type":3087,"tag":3170,"props":3806,"children":3807},{"style":3364},[3808],{"type":3092,"value":3553},{"type":3087,"tag":3170,"props":3810,"children":3811},{"class":3250,"line":3474},[3812],{"type":3087,"tag":3170,"props":3813,"children":3814},{"style":3364},[3815],{"type":3092,"value":3561},{"type":3087,"tag":3170,"props":3817,"children":3818},{"class":3250,"line":3491},[3819,3824],{"type":3087,"tag":3170,"props":3820,"children":3821},{"style":3364},[3822],{"type":3092,"value":3823},"  }",{"type":3087,"tag":3170,"props":3825,"children":3826},{"style":3373},[3827],{"type":3092,"value":3584},{"type":3087,"tag":3170,"props":3829,"children":3830},{"class":3250,"line":3519},[3831,3835],{"type":3087,"tag":3170,"props":3832,"children":3833},{"style":3364},[3834],{"type":3092,"value":3579},{"type":3087,"tag":3170,"props":3836,"children":3837},{"style":3358},[3838],{"type":3092,"value":3584},{"type":3087,"tag":3163,"props":3840,"children":3841},{},[3842],{"type":3087,"tag":3094,"props":3843,"children":3844},{},[3845,3849,3851],{"type":3087,"tag":3170,"props":3846,"children":3847},{},[3848],{"type":3092,"value":3174},{"type":3092,"value":3850},"\nRead more about the ",{"type":3087,"tag":3098,"props":3852,"children":3855},{"href":3853,"rel":3854},"https:\u002F\u002Fh3.unjs.io\u002Fguide\u002Fevent#eventcontext",[3102],[3856],{"type":3087,"tag":3245,"props":3857,"children":3859},{"className":3858},[],[3860],{"type":3092,"value":3861},"event.context",{"type":3087,"tag":3094,"props":3863,"children":3864},{},[3865,3867,3872,3874,3879],{"type":3092,"value":3866},"This resolver is setup within the hook ",{"type":3087,"tag":3245,"props":3868,"children":3870},{"className":3869},[],[3871],{"type":3092,"value":3698},{"type":3092,"value":3873}," 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":3087,"tag":3245,"props":3875,"children":3877},{"className":3876},[],[3878],{"type":3092,"value":3595},{"type":3092,"value":3597},{"type":3087,"tag":3094,"props":3881,"children":3882},{},[3883],{"type":3092,"value":3884},"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":3087,"tag":3886,"props":3887,"children":3889},"h4",{"id":3888},"example-with-nuxt-auth-utils",[3890,3892],{"type":3092,"value":3891},"Example with ",{"type":3087,"tag":3245,"props":3893,"children":3895},{"className":3894},[],[3896],{"type":3092,"value":3897},"nuxt-auth-utils",{"type":3087,"tag":3094,"props":3899,"children":3900},{},[3901,3903,3908],{"type":3092,"value":3902},"The module ",{"type":3087,"tag":3245,"props":3904,"children":3906},{"className":3905},[],[3907],{"type":3092,"value":3897},{"type":3092,"value":3909}," provides an authentication layer for Nuxt. If you use this module, you can use the following resolvers:",{"type":3087,"tag":3094,"props":3911,"children":3912},{},[3913],{"type":3092,"value":3914},"Nuxt plugin:",{"type":3087,"tag":3238,"props":3916,"children":3918},{"className":3329,"code":3917,"language":3331,"meta":3037,"style":3037},"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",[3919],{"type":3087,"tag":3245,"props":3920,"children":3921},{"__ignoreMap":3037},[3922,3945,3972,3991,4006,4017,4032,4047,4097,4104,4111,4118,4125],{"type":3087,"tag":3170,"props":3923,"children":3924},{"class":3250,"line":3071},[3925,3929,3933,3937,3941],{"type":3087,"tag":3170,"props":3926,"children":3927},{"style":3341},[3928],{"type":3092,"value":3344},{"type":3087,"tag":3170,"props":3930,"children":3931},{"style":3341},[3932],{"type":3092,"value":3349},{"type":3087,"tag":3170,"props":3934,"children":3935},{"style":3352},[3936],{"type":3092,"value":3355},{"type":3087,"tag":3170,"props":3938,"children":3939},{"style":3358},[3940],{"type":3092,"value":3361},{"type":3087,"tag":3170,"props":3942,"children":3943},{"style":3364},[3944],{"type":3092,"value":3367},{"type":3087,"tag":3170,"props":3946,"children":3947},{"class":3250,"line":3064},[3948,3952,3956,3960,3964,3968],{"type":3087,"tag":3170,"props":3949,"children":3950},{"style":3373},[3951],{"type":3092,"value":3376},{"type":3087,"tag":3170,"props":3953,"children":3954},{"style":3364},[3955],{"type":3092,"value":3326},{"type":3087,"tag":3170,"props":3957,"children":3958},{"style":3364},[3959],{"type":3092,"value":3385},{"type":3087,"tag":3170,"props":3961,"children":3962},{"style":3260},[3963],{"type":3092,"value":3390},{"type":3087,"tag":3170,"props":3965,"children":3966},{"style":3364},[3967],{"type":3092,"value":3395},{"type":3087,"tag":3170,"props":3969,"children":3970},{"style":3364},[3971],{"type":3092,"value":3400},{"type":3087,"tag":3170,"props":3973,"children":3974},{"class":3250,"line":3060},[3975,3979,3983,3987],{"type":3087,"tag":3170,"props":3976,"children":3977},{"style":3373},[3978],{"type":3092,"value":3408},{"type":3087,"tag":3170,"props":3980,"children":3981},{"style":3364},[3982],{"type":3092,"value":3326},{"type":3087,"tag":3170,"props":3984,"children":3985},{"style":3415},[3986],{"type":3092,"value":3418},{"type":3087,"tag":3170,"props":3988,"children":3989},{"style":3364},[3990],{"type":3092,"value":3400},{"type":3087,"tag":3170,"props":3992,"children":3993},{"class":3250,"line":3425},[3994,3998,4002],{"type":3087,"tag":3170,"props":3995,"children":3996},{"style":3373},[3997],{"type":3092,"value":3431},{"type":3087,"tag":3170,"props":3999,"children":4000},{"style":3364},[4001],{"type":3092,"value":3436},{"type":3087,"tag":3170,"props":4003,"children":4004},{"style":3364},[4005],{"type":3092,"value":3441},{"type":3087,"tag":3170,"props":4007,"children":4008},{"class":3250,"line":3444},[4009,4013],{"type":3087,"tag":3170,"props":4010,"children":4011},{"style":3341},[4012],{"type":3092,"value":3450},{"type":3087,"tag":3170,"props":4014,"children":4015},{"style":3364},[4016],{"type":3092,"value":3441},{"type":3087,"tag":3170,"props":4018,"children":4019},{"class":3250,"line":3457},[4020,4024,4028],{"type":3087,"tag":3170,"props":4021,"children":4022},{"style":3373},[4023],{"type":3092,"value":3463},{"type":3087,"tag":3170,"props":4025,"children":4026},{"style":3364},[4027],{"type":3092,"value":3326},{"type":3087,"tag":3170,"props":4029,"children":4030},{"style":3364},[4031],{"type":3092,"value":3441},{"type":3087,"tag":3170,"props":4033,"children":4034},{"class":3250,"line":3474},[4035,4039,4043],{"type":3087,"tag":3170,"props":4036,"children":4037},{"style":3373},[4038],{"type":3092,"value":3480},{"type":3087,"tag":3170,"props":4040,"children":4041},{"style":3364},[4042],{"type":3092,"value":3326},{"type":3087,"tag":3170,"props":4044,"children":4045},{"style":3364},[4046],{"type":3092,"value":3441},{"type":3087,"tag":3170,"props":4048,"children":4049},{"class":3250,"line":3491},[4050,4054,4058,4062,4066,4071,4075,4079,4084,4088,4093],{"type":3087,"tag":3170,"props":4051,"children":4052},{"style":3352},[4053],{"type":3092,"value":3497},{"type":3087,"tag":3170,"props":4055,"children":4056},{"style":3364},[4057],{"type":3092,"value":3326},{"type":3087,"tag":3170,"props":4059,"children":4060},{"style":3364},[4061],{"type":3092,"value":3506},{"type":3087,"tag":3170,"props":4063,"children":4064},{"style":3509},[4065],{"type":3092,"value":3512},{"type":3087,"tag":3170,"props":4067,"children":4068},{"style":3352},[4069],{"type":3092,"value":4070}," useUserSession",{"type":3087,"tag":3170,"props":4072,"children":4073},{"style":3373},[4074],{"type":3092,"value":3436},{"type":3087,"tag":3170,"props":4076,"children":4077},{"style":3364},[4078],{"type":3092,"value":3189},{"type":3087,"tag":3170,"props":4080,"children":4081},{"style":3358},[4082],{"type":3092,"value":4083},"user",{"type":3087,"tag":3170,"props":4085,"children":4086},{"style":3364},[4087],{"type":3092,"value":3189},{"type":3087,"tag":3170,"props":4089,"children":4090},{"style":3358},[4091],{"type":3092,"value":4092},"value",{"type":3087,"tag":3170,"props":4094,"children":4095},{"style":3364},[4096],{"type":3092,"value":3400},{"type":3087,"tag":3170,"props":4098,"children":4099},{"class":3250,"line":3519},[4100],{"type":3087,"tag":3170,"props":4101,"children":4102},{"style":3364},[4103],{"type":3092,"value":3544},{"type":3087,"tag":3170,"props":4105,"children":4106},{"class":3250,"line":3529},[4107],{"type":3087,"tag":3170,"props":4108,"children":4109},{"style":3364},[4110],{"type":3092,"value":3553},{"type":3087,"tag":3170,"props":4112,"children":4113},{"class":3250,"line":3538},[4114],{"type":3087,"tag":3170,"props":4115,"children":4116},{"style":3364},[4117],{"type":3092,"value":3561},{"type":3087,"tag":3170,"props":4119,"children":4120},{"class":3250,"line":3547},[4121],{"type":3087,"tag":3170,"props":4122,"children":4123},{"style":3364},[4124],{"type":3092,"value":3570},{"type":3087,"tag":3170,"props":4126,"children":4127},{"class":3250,"line":3076},[4128,4132],{"type":3087,"tag":3170,"props":4129,"children":4130},{"style":3364},[4131],{"type":3092,"value":3579},{"type":3087,"tag":3170,"props":4133,"children":4134},{"style":3358},[4135],{"type":3092,"value":3584},{"type":3087,"tag":3094,"props":4137,"children":4138},{},[4139],{"type":3092,"value":4140},"Nitro plugin:",{"type":3087,"tag":3238,"props":4142,"children":4144},{"className":3329,"code":4143,"language":3331,"meta":3037,"style":3037},"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",[4145],{"type":3087,"tag":3245,"props":4146,"children":4147},{"__ignoreMap":3037},[4148,4187,4254,4285,4312,4351,4381,4388,4395,4406],{"type":3087,"tag":3170,"props":4149,"children":4150},{"class":3250,"line":3071},[4151,4155,4159,4163,4167,4171,4175,4179,4183],{"type":3087,"tag":3170,"props":4152,"children":4153},{"style":3341},[4154],{"type":3092,"value":3344},{"type":3087,"tag":3170,"props":4156,"children":4157},{"style":3341},[4158],{"type":3092,"value":3349},{"type":3087,"tag":3170,"props":4160,"children":4161},{"style":3352},[4162],{"type":3092,"value":3632},{"type":3087,"tag":3170,"props":4164,"children":4165},{"style":3358},[4166],{"type":3092,"value":3361},{"type":3087,"tag":3170,"props":4168,"children":4169},{"style":3364},[4170],{"type":3092,"value":3361},{"type":3087,"tag":3170,"props":4172,"children":4173},{"style":3643},[4174],{"type":3092,"value":3646},{"type":3087,"tag":3170,"props":4176,"children":4177},{"style":3364},[4178],{"type":3092,"value":3651},{"type":3087,"tag":3170,"props":4180,"children":4181},{"style":3509},[4182],{"type":3092,"value":3512},{"type":3087,"tag":3170,"props":4184,"children":4185},{"style":3364},[4186],{"type":3092,"value":3441},{"type":3087,"tag":3170,"props":4188,"children":4189},{"class":3250,"line":3064},[4190,4194,4198,4202,4206,4210,4214,4218,4222,4226,4230,4234,4238,4242,4246,4250],{"type":3087,"tag":3170,"props":4191,"children":4192},{"style":3358},[4193],{"type":3092,"value":3667},{"type":3087,"tag":3170,"props":4195,"children":4196},{"style":3364},[4197],{"type":3092,"value":3189},{"type":3087,"tag":3170,"props":4199,"children":4200},{"style":3358},[4201],{"type":3092,"value":3676},{"type":3087,"tag":3170,"props":4203,"children":4204},{"style":3364},[4205],{"type":3092,"value":3189},{"type":3087,"tag":3170,"props":4207,"children":4208},{"style":3352},[4209],{"type":3092,"value":3685},{"type":3087,"tag":3170,"props":4211,"children":4212},{"style":3373},[4213],{"type":3092,"value":3361},{"type":3087,"tag":3170,"props":4215,"children":4216},{"style":3364},[4217],{"type":3092,"value":3395},{"type":3087,"tag":3170,"props":4219,"children":4220},{"style":3260},[4221],{"type":3092,"value":3698},{"type":3087,"tag":3170,"props":4223,"children":4224},{"style":3364},[4225],{"type":3092,"value":3395},{"type":3087,"tag":3170,"props":4227,"children":4228},{"style":3364},[4229],{"type":3092,"value":3707},{"type":3087,"tag":3170,"props":4231,"children":4232},{"style":3509},[4233],{"type":3092,"value":3712},{"type":3087,"tag":3170,"props":4235,"children":4236},{"style":3364},[4237],{"type":3092,"value":3717},{"type":3087,"tag":3170,"props":4239,"children":4240},{"style":3643},[4241],{"type":3092,"value":3722},{"type":3087,"tag":3170,"props":4243,"children":4244},{"style":3364},[4245],{"type":3092,"value":3651},{"type":3087,"tag":3170,"props":4247,"children":4248},{"style":3509},[4249],{"type":3092,"value":3512},{"type":3087,"tag":3170,"props":4251,"children":4252},{"style":3364},[4253],{"type":3092,"value":3441},{"type":3087,"tag":3170,"props":4255,"children":4256},{"class":3250,"line":3060},[4257,4261,4265,4269,4273,4277,4281],{"type":3087,"tag":3170,"props":4258,"children":4259},{"style":3358},[4260],{"type":3092,"value":3742},{"type":3087,"tag":3170,"props":4262,"children":4263},{"style":3364},[4264],{"type":3092,"value":3189},{"type":3087,"tag":3170,"props":4266,"children":4267},{"style":3358},[4268],{"type":3092,"value":3751},{"type":3087,"tag":3170,"props":4270,"children":4271},{"style":3364},[4272],{"type":3092,"value":3189},{"type":3087,"tag":3170,"props":4274,"children":4275},{"style":3358},[4276],{"type":3092,"value":3760},{"type":3087,"tag":3170,"props":4278,"children":4279},{"style":3364},[4280],{"type":3092,"value":3765},{"type":3087,"tag":3170,"props":4282,"children":4283},{"style":3364},[4284],{"type":3092,"value":3441},{"type":3087,"tag":3170,"props":4286,"children":4287},{"class":3250,"line":3425},[4288,4292,4296,4300,4304,4308],{"type":3087,"tag":3170,"props":4289,"children":4290},{"style":3352},[4291],{"type":3092,"value":3777},{"type":3087,"tag":3170,"props":4293,"children":4294},{"style":3364},[4295],{"type":3092,"value":3326},{"type":3087,"tag":3170,"props":4297,"children":4298},{"style":3509},[4299],{"type":3092,"value":3712},{"type":3087,"tag":3170,"props":4301,"children":4302},{"style":3364},[4303],{"type":3092,"value":3506},{"type":3087,"tag":3170,"props":4305,"children":4306},{"style":3509},[4307],{"type":3092,"value":3512},{"type":3087,"tag":3170,"props":4309,"children":4310},{"style":3364},[4311],{"type":3092,"value":3441},{"type":3087,"tag":3170,"props":4313,"children":4314},{"class":3250,"line":3444},[4315,4320,4325,4329,4334,4339,4343,4347],{"type":3087,"tag":3170,"props":4316,"children":4317},{"style":3509},[4318],{"type":3092,"value":4319},"        const",{"type":3087,"tag":3170,"props":4321,"children":4322},{"style":3358},[4323],{"type":3092,"value":4324}," session",{"type":3087,"tag":3170,"props":4326,"children":4327},{"style":3364},[4328],{"type":3092,"value":3765},{"type":3087,"tag":3170,"props":4330,"children":4331},{"style":3341},[4332],{"type":3092,"value":4333}," await",{"type":3087,"tag":3170,"props":4335,"children":4336},{"style":3352},[4337],{"type":3092,"value":4338}," getUserSession",{"type":3087,"tag":3170,"props":4340,"children":4341},{"style":3373},[4342],{"type":3092,"value":3361},{"type":3087,"tag":3170,"props":4344,"children":4345},{"style":3358},[4346],{"type":3092,"value":3722},{"type":3087,"tag":3170,"props":4348,"children":4349},{"style":3373},[4350],{"type":3092,"value":3584},{"type":3087,"tag":3170,"props":4352,"children":4353},{"class":3250,"line":3457},[4354,4359,4363,4367,4371,4376],{"type":3087,"tag":3170,"props":4355,"children":4356},{"style":3341},[4357],{"type":3092,"value":4358},"        return",{"type":3087,"tag":3170,"props":4360,"children":4361},{"style":3358},[4362],{"type":3092,"value":4324},{"type":3087,"tag":3170,"props":4364,"children":4365},{"style":3364},[4366],{"type":3092,"value":3189},{"type":3087,"tag":3170,"props":4368,"children":4369},{"style":3358},[4370],{"type":3092,"value":4083},{"type":3087,"tag":3170,"props":4372,"children":4373},{"style":3364},[4374],{"type":3092,"value":4375}," ??",{"type":3087,"tag":3170,"props":4377,"children":4378},{"style":3364},[4379],{"type":3092,"value":4380}," null\n",{"type":3087,"tag":3170,"props":4382,"children":4383},{"class":3250,"line":3474},[4384],{"type":3087,"tag":3170,"props":4385,"children":4386},{"style":3364},[4387],{"type":3092,"value":3553},{"type":3087,"tag":3170,"props":4389,"children":4390},{"class":3250,"line":3491},[4391],{"type":3087,"tag":3170,"props":4392,"children":4393},{"style":3364},[4394],{"type":3092,"value":3561},{"type":3087,"tag":3170,"props":4396,"children":4397},{"class":3250,"line":3519},[4398,4402],{"type":3087,"tag":3170,"props":4399,"children":4400},{"style":3364},[4401],{"type":3092,"value":3823},{"type":3087,"tag":3170,"props":4403,"children":4404},{"style":3373},[4405],{"type":3092,"value":3584},{"type":3087,"tag":3170,"props":4407,"children":4408},{"class":3250,"line":3529},[4409,4413],{"type":3087,"tag":3170,"props":4410,"children":4411},{"style":3364},[4412],{"type":3092,"value":3579},{"type":3087,"tag":3170,"props":4414,"children":4415},{"style":3358},[4416],{"type":3092,"value":3584},{"type":3087,"tag":3094,"props":4418,"children":4419},{},[4420],{"type":3092,"value":4421},"Easy!",{"type":3087,"tag":3303,"props":4423,"children":4425},{"id":4424},"define-abilities",[4426],{"type":3092,"value":4427},"Define Abilities",{"type":3087,"tag":3163,"props":4429,"children":4430},{},[4431],{"type":3087,"tag":3094,"props":4432,"children":4433},{},[4434,4438,4440,4445,4447,4454],{"type":3087,"tag":3170,"props":4435,"children":4436},{},[4437],{"type":3092,"value":3174},{"type":3092,"value":4439},"\nWith Nuxt 4, a new ",{"type":3087,"tag":3245,"props":4441,"children":4443},{"className":4442},[],[4444],{"type":3092,"value":190},{"type":3092,"value":4446}," directory will be introduced to easily share code between the client and the server.\nSee ",{"type":3087,"tag":3098,"props":4448,"children":4451},{"href":4449,"rel":4450},"https:\u002F\u002Fyoutu.be\u002F_m5ct5e8nVo?si=2iNcPVMttlIq5fLR",[3102],[4452],{"type":3092,"value":4453},"the video from Alexander Lichter",{"type":3092,"value":3189},{"type":3087,"tag":3094,"props":4456,"children":4457},{},[4458],{"type":3092,"value":4459},"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":3087,"tag":3094,"props":4461,"children":4462},{},[4463,4465,4471],{"type":3092,"value":4464},"I recommend to create a new file ",{"type":3087,"tag":3245,"props":4466,"children":4468},{"className":4467},[],[4469],{"type":3092,"value":4470},"shared\u002Futils\u002Fabilities.ts",{"type":3092,"value":4472}," to create your abilities:",{"type":3087,"tag":3238,"props":4474,"children":4476},{"className":3329,"code":4475,"language":3331,"meta":3037,"style":3037},"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",[4477],{"type":3087,"tag":3245,"props":4478,"children":4479},{"__ignoreMap":3037},[4480,4533,4541,4616,4656],{"type":3087,"tag":3170,"props":4481,"children":4482},{"class":3250,"line":3071},[4483,4487,4492,4497,4502,4507,4511,4515,4519,4523,4528],{"type":3087,"tag":3170,"props":4484,"children":4485},{"style":3341},[4486],{"type":3092,"value":3344},{"type":3087,"tag":3170,"props":4488,"children":4489},{"style":3509},[4490],{"type":3092,"value":4491}," const",{"type":3087,"tag":3170,"props":4493,"children":4494},{"style":3358},[4495],{"type":3092,"value":4496}," listPosts ",{"type":3087,"tag":3170,"props":4498,"children":4499},{"style":3364},[4500],{"type":3092,"value":4501},"=",{"type":3087,"tag":3170,"props":4503,"children":4504},{"style":3352},[4505],{"type":3092,"value":4506}," defineAbility",{"type":3087,"tag":3170,"props":4508,"children":4509},{"style":3358},[4510],{"type":3092,"value":3361},{"type":3087,"tag":3170,"props":4512,"children":4513},{"style":3364},[4514],{"type":3092,"value":3436},{"type":3087,"tag":3170,"props":4516,"children":4517},{"style":3509},[4518],{"type":3092,"value":3512},{"type":3087,"tag":3170,"props":4520,"children":4521},{"style":3415},[4522],{"type":3092,"value":3418},{"type":3087,"tag":3170,"props":4524,"children":4525},{"style":3358},[4526],{"type":3092,"value":4527},") ",{"type":3087,"tag":3170,"props":4529,"children":4530},{"style":3523},[4531],{"type":3092,"value":4532},"\u002F\u002F Only authenticated users can list posts\n",{"type":3087,"tag":3170,"props":4534,"children":4535},{"class":3250,"line":3064},[4536],{"type":3087,"tag":3170,"props":4537,"children":4538},{"emptyLinePlaceholder":1200},[4539],{"type":3092,"value":4540},"\n",{"type":3087,"tag":3170,"props":4542,"children":4543},{"class":3250,"line":3060},[4544,4548,4552,4557,4561,4565,4569,4573,4577,4581,4586,4590,4595,4599,4604,4608,4612],{"type":3087,"tag":3170,"props":4545,"children":4546},{"style":3341},[4547],{"type":3092,"value":3344},{"type":3087,"tag":3170,"props":4549,"children":4550},{"style":3509},[4551],{"type":3092,"value":4491},{"type":3087,"tag":3170,"props":4553,"children":4554},{"style":3358},[4555],{"type":3092,"value":4556}," editPost ",{"type":3087,"tag":3170,"props":4558,"children":4559},{"style":3364},[4560],{"type":3092,"value":4501},{"type":3087,"tag":3170,"props":4562,"children":4563},{"style":3352},[4564],{"type":3092,"value":4506},{"type":3087,"tag":3170,"props":4566,"children":4567},{"style":3358},[4568],{"type":3092,"value":3361},{"type":3087,"tag":3170,"props":4570,"children":4571},{"style":3364},[4572],{"type":3092,"value":3361},{"type":3087,"tag":3170,"props":4574,"children":4575},{"style":3643},[4576],{"type":3092,"value":4083},{"type":3087,"tag":3170,"props":4578,"children":4579},{"style":3364},[4580],{"type":3092,"value":3326},{"type":3087,"tag":3170,"props":4582,"children":4583},{"style":3254},[4584],{"type":3092,"value":4585}," User",{"type":3087,"tag":3170,"props":4587,"children":4588},{"style":3364},[4589],{"type":3092,"value":3707},{"type":3087,"tag":3170,"props":4591,"children":4592},{"style":3643},[4593],{"type":3092,"value":4594}," post",{"type":3087,"tag":3170,"props":4596,"children":4597},{"style":3364},[4598],{"type":3092,"value":3326},{"type":3087,"tag":3170,"props":4600,"children":4601},{"style":3254},[4602],{"type":3092,"value":4603}," Post",{"type":3087,"tag":3170,"props":4605,"children":4606},{"style":3364},[4607],{"type":3092,"value":3651},{"type":3087,"tag":3170,"props":4609,"children":4610},{"style":3509},[4611],{"type":3092,"value":3512},{"type":3087,"tag":3170,"props":4613,"children":4614},{"style":3364},[4615],{"type":3092,"value":3441},{"type":3087,"tag":3170,"props":4617,"children":4618},{"class":3250,"line":3425},[4619,4624,4629,4633,4638,4643,4647,4651],{"type":3087,"tag":3170,"props":4620,"children":4621},{"style":3341},[4622],{"type":3092,"value":4623},"  return",{"type":3087,"tag":3170,"props":4625,"children":4626},{"style":3358},[4627],{"type":3092,"value":4628}," user",{"type":3087,"tag":3170,"props":4630,"children":4631},{"style":3364},[4632],{"type":3092,"value":3189},{"type":3087,"tag":3170,"props":4634,"children":4635},{"style":3358},[4636],{"type":3092,"value":4637},"id",{"type":3087,"tag":3170,"props":4639,"children":4640},{"style":3364},[4641],{"type":3092,"value":4642}," ===",{"type":3087,"tag":3170,"props":4644,"children":4645},{"style":3358},[4646],{"type":3092,"value":4594},{"type":3087,"tag":3170,"props":4648,"children":4649},{"style":3364},[4650],{"type":3092,"value":3189},{"type":3087,"tag":3170,"props":4652,"children":4653},{"style":3358},[4654],{"type":3092,"value":4655},"authorId\n",{"type":3087,"tag":3170,"props":4657,"children":4658},{"class":3250,"line":3444},[4659,4663],{"type":3087,"tag":3170,"props":4660,"children":4661},{"style":3364},[4662],{"type":3092,"value":3579},{"type":3087,"tag":3170,"props":4664,"children":4665},{"style":3358},[4666],{"type":3092,"value":3584},{"type":3087,"tag":3094,"props":4668,"children":4669},{},[4670,4672,4678,4680,4686,4688,4694,4696,4702,4704,4710],{"type":3092,"value":4671},"If you have many abilities, you could prefer to create a directory ",{"type":3087,"tag":3245,"props":4673,"children":4675},{"className":4674},[],[4676],{"type":3092,"value":4677},"shared\u002Futils\u002Fabilities\u002F",{"type":3092,"value":4679}," and create a file for each ability. Having the abilities in the ",{"type":3087,"tag":3245,"props":4681,"children":4683},{"className":4682},[],[4684],{"type":3092,"value":4685},"shared\u002Futils",{"type":3092,"value":4687}," directory allows auto-import to work in the client while having a simple import in the server ",{"type":3087,"tag":3245,"props":4689,"children":4691},{"className":4690},[],[4692],{"type":3092,"value":4693},"~~\u002Fshared\u002Futils\u002Fabilities",{"type":3092,"value":4695},". ",{"type":3087,"tag":4697,"props":4698,"children":4699},"strong",{},[4700],{"type":3092,"value":4701},"Remember that the shared folder only exports the first level of the directory.",{"type":3092,"value":4703}," So you have to export the abilities in the ",{"type":3087,"tag":3245,"props":4705,"children":4707},{"className":4706},[],[4708],{"type":3092,"value":4709},"shared\u002Futils\u002Fabilities\u002Findex.ts",{"type":3092,"value":4711}," file.",{"type":3087,"tag":3094,"props":4713,"children":4714},{},[4715],{"type":3092,"value":4716},"By default, guests are not allowed to perform any action and the ability is not called. This behavior can be changed per ability:",{"type":3087,"tag":3238,"props":4718,"children":4720},{"className":3329,"code":4719,"language":3331,"meta":3037,"style":3037},"export const listPosts = defineAbility({ allowGuest: true }, (user: User | null) => true)\n",[4721],{"type":3087,"tag":3245,"props":4722,"children":4723},{"__ignoreMap":3037},[4724],{"type":3087,"tag":3170,"props":4725,"children":4726},{"class":3250,"line":3071},[4727,4731,4735,4739,4743,4747,4751,4756,4761,4765,4769,4774,4778,4782,4786,4790,4795,4800,4804,4808,4812],{"type":3087,"tag":3170,"props":4728,"children":4729},{"style":3341},[4730],{"type":3092,"value":3344},{"type":3087,"tag":3170,"props":4732,"children":4733},{"style":3509},[4734],{"type":3092,"value":4491},{"type":3087,"tag":3170,"props":4736,"children":4737},{"style":3358},[4738],{"type":3092,"value":4496},{"type":3087,"tag":3170,"props":4740,"children":4741},{"style":3364},[4742],{"type":3092,"value":4501},{"type":3087,"tag":3170,"props":4744,"children":4745},{"style":3352},[4746],{"type":3092,"value":4506},{"type":3087,"tag":3170,"props":4748,"children":4749},{"style":3358},[4750],{"type":3092,"value":3361},{"type":3087,"tag":3170,"props":4752,"children":4753},{"style":3364},[4754],{"type":3092,"value":4755},"{",{"type":3087,"tag":3170,"props":4757,"children":4758},{"style":3373},[4759],{"type":3092,"value":4760}," allowGuest",{"type":3087,"tag":3170,"props":4762,"children":4763},{"style":3364},[4764],{"type":3092,"value":3326},{"type":3087,"tag":3170,"props":4766,"children":4767},{"style":3415},[4768],{"type":3092,"value":3418},{"type":3087,"tag":3170,"props":4770,"children":4771},{"style":3364},[4772],{"type":3092,"value":4773}," },",{"type":3087,"tag":3170,"props":4775,"children":4776},{"style":3364},[4777],{"type":3092,"value":3717},{"type":3087,"tag":3170,"props":4779,"children":4780},{"style":3643},[4781],{"type":3092,"value":4083},{"type":3087,"tag":3170,"props":4783,"children":4784},{"style":3364},[4785],{"type":3092,"value":3326},{"type":3087,"tag":3170,"props":4787,"children":4788},{"style":3254},[4789],{"type":3092,"value":4585},{"type":3087,"tag":3170,"props":4791,"children":4792},{"style":3364},[4793],{"type":3092,"value":4794}," |",{"type":3087,"tag":3170,"props":4796,"children":4797},{"style":3254},[4798],{"type":3092,"value":4799}," null",{"type":3087,"tag":3170,"props":4801,"children":4802},{"style":3364},[4803],{"type":3092,"value":3651},{"type":3087,"tag":3170,"props":4805,"children":4806},{"style":3509},[4807],{"type":3092,"value":3512},{"type":3087,"tag":3170,"props":4809,"children":4810},{"style":3415},[4811],{"type":3092,"value":3418},{"type":3087,"tag":3170,"props":4813,"children":4814},{"style":3358},[4815],{"type":3092,"value":3584},{"type":3087,"tag":3094,"props":4817,"children":4818},{},[4819],{"type":3092,"value":4820},"Now, unauthenticated users can list posts.",{"type":3087,"tag":3303,"props":4822,"children":4824},{"id":4823},"use-abilities",[4825],{"type":3092,"value":4826},"Use Abilities",{"type":3087,"tag":3094,"props":4828,"children":4829},{},[4830,4832,4838,4840,4846,4848,4854,4856],{"type":3092,"value":4831},"To use ability, you have access to 3 bouncer functions: ",{"type":3087,"tag":3245,"props":4833,"children":4835},{"className":4834},[],[4836],{"type":3092,"value":4837},"allows",{"type":3092,"value":4839},", ",{"type":3087,"tag":3245,"props":4841,"children":4843},{"className":4842},[],[4844],{"type":3092,"value":4845},"denies",{"type":3092,"value":4847},", and ",{"type":3087,"tag":3245,"props":4849,"children":4851},{"className":4850},[],[4852],{"type":3092,"value":4853},"authorize",{"type":3092,"value":4855},". Both of them are available in the client and the server. ",{"type":3087,"tag":3157,"props":4857,"children":4858},{},[4859,4861,4866],{"type":3092,"value":4860},"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":3087,"tag":3245,"props":4862,"children":4864},{"className":4863},[],[4865],{"type":3092,"value":3722},{"type":3092,"value":4867}," from the handler.",{"type":3087,"tag":3094,"props":4869,"children":4870},{},[4871,4873,4878],{"type":3092,"value":4872},"The ",{"type":3087,"tag":3245,"props":4874,"children":4876},{"className":4875},[],[4877],{"type":3092,"value":4837},{"type":3092,"value":4879}," function returns a boolean if the user can perform the action:",{"type":3087,"tag":3238,"props":4881,"children":4883},{"className":3329,"code":4882,"language":3331,"meta":3037,"style":3037},"if (await allows(listPosts)) {\n  \u002F\u002F User can list posts\n}\n",[4884],{"type":3087,"tag":3245,"props":4885,"children":4886},{"__ignoreMap":3037},[4887,4918,4926],{"type":3087,"tag":3170,"props":4888,"children":4889},{"class":3250,"line":3071},[4890,4895,4899,4904,4909,4914],{"type":3087,"tag":3170,"props":4891,"children":4892},{"style":3341},[4893],{"type":3092,"value":4894},"if",{"type":3087,"tag":3170,"props":4896,"children":4897},{"style":3358},[4898],{"type":3092,"value":3717},{"type":3087,"tag":3170,"props":4900,"children":4901},{"style":3341},[4902],{"type":3092,"value":4903},"await",{"type":3087,"tag":3170,"props":4905,"children":4906},{"style":3352},[4907],{"type":3092,"value":4908}," allows",{"type":3087,"tag":3170,"props":4910,"children":4911},{"style":3358},[4912],{"type":3092,"value":4913},"(listPosts)) ",{"type":3087,"tag":3170,"props":4915,"children":4916},{"style":3364},[4917],{"type":3092,"value":3367},{"type":3087,"tag":3170,"props":4919,"children":4920},{"class":3250,"line":3064},[4921],{"type":3087,"tag":3170,"props":4922,"children":4923},{"style":3523},[4924],{"type":3092,"value":4925},"  \u002F\u002F User can list posts\n",{"type":3087,"tag":3170,"props":4927,"children":4928},{"class":3250,"line":3060},[4929],{"type":3087,"tag":3170,"props":4930,"children":4931},{"style":3364},[4932],{"type":3092,"value":4933},"}\n",{"type":3087,"tag":3094,"props":4935,"children":4936},{},[4937],{"type":3087,"tag":3157,"props":4938,"children":4939},{},[4940],{"type":3092,"value":4941},"For the server:",{"type":3087,"tag":3238,"props":4943,"children":4945},{"className":3329,"code":4944,"language":3331,"meta":3037,"style":3037},"if (await allows(event, listPosts)) {\n  \u002F\u002F User can list posts\n}\n",[4946],{"type":3087,"tag":3245,"props":4947,"children":4948},{"__ignoreMap":3037},[4949,4986,4993],{"type":3087,"tag":3170,"props":4950,"children":4951},{"class":3250,"line":3071},[4952,4956,4960,4964,4968,4973,4977,4982],{"type":3087,"tag":3170,"props":4953,"children":4954},{"style":3341},[4955],{"type":3092,"value":4894},{"type":3087,"tag":3170,"props":4957,"children":4958},{"style":3358},[4959],{"type":3092,"value":3717},{"type":3087,"tag":3170,"props":4961,"children":4962},{"style":3341},[4963],{"type":3092,"value":4903},{"type":3087,"tag":3170,"props":4965,"children":4966},{"style":3352},[4967],{"type":3092,"value":4908},{"type":3087,"tag":3170,"props":4969,"children":4970},{"style":3358},[4971],{"type":3092,"value":4972},"(event",{"type":3087,"tag":3170,"props":4974,"children":4975},{"style":3364},[4976],{"type":3092,"value":3707},{"type":3087,"tag":3170,"props":4978,"children":4979},{"style":3358},[4980],{"type":3092,"value":4981}," listPosts)) ",{"type":3087,"tag":3170,"props":4983,"children":4984},{"style":3364},[4985],{"type":3092,"value":3367},{"type":3087,"tag":3170,"props":4987,"children":4988},{"class":3250,"line":3064},[4989],{"type":3087,"tag":3170,"props":4990,"children":4991},{"style":3523},[4992],{"type":3092,"value":4925},{"type":3087,"tag":3170,"props":4994,"children":4995},{"class":3250,"line":3060},[4996],{"type":3087,"tag":3170,"props":4997,"children":4998},{"style":3364},[4999],{"type":3092,"value":4933},{"type":3087,"tag":3094,"props":5001,"children":5002},{},[5003,5004,5009],{"type":3092,"value":4872},{"type":3087,"tag":3245,"props":5005,"children":5007},{"className":5006},[],[5008],{"type":3092,"value":4845},{"type":3092,"value":5010}," function returns a boolean if the user cannot perform the action:",{"type":3087,"tag":3238,"props":5012,"children":5014},{"className":3329,"code":5013,"language":3331,"meta":3037,"style":3037},"if (await denies(editPost, post)) {\n  \u002F\u002F User cannot edit the post\n}\n",[5015],{"type":3087,"tag":3245,"props":5016,"children":5017},{"__ignoreMap":3037},[5018,5056,5064],{"type":3087,"tag":3170,"props":5019,"children":5020},{"class":3250,"line":3071},[5021,5025,5029,5033,5038,5043,5047,5052],{"type":3087,"tag":3170,"props":5022,"children":5023},{"style":3341},[5024],{"type":3092,"value":4894},{"type":3087,"tag":3170,"props":5026,"children":5027},{"style":3358},[5028],{"type":3092,"value":3717},{"type":3087,"tag":3170,"props":5030,"children":5031},{"style":3341},[5032],{"type":3092,"value":4903},{"type":3087,"tag":3170,"props":5034,"children":5035},{"style":3352},[5036],{"type":3092,"value":5037}," denies",{"type":3087,"tag":3170,"props":5039,"children":5040},{"style":3358},[5041],{"type":3092,"value":5042},"(editPost",{"type":3087,"tag":3170,"props":5044,"children":5045},{"style":3364},[5046],{"type":3092,"value":3707},{"type":3087,"tag":3170,"props":5048,"children":5049},{"style":3358},[5050],{"type":3092,"value":5051}," post)) ",{"type":3087,"tag":3170,"props":5053,"children":5054},{"style":3364},[5055],{"type":3092,"value":3367},{"type":3087,"tag":3170,"props":5057,"children":5058},{"class":3250,"line":3064},[5059],{"type":3087,"tag":3170,"props":5060,"children":5061},{"style":3523},[5062],{"type":3092,"value":5063},"  \u002F\u002F User cannot edit the post\n",{"type":3087,"tag":3170,"props":5065,"children":5066},{"class":3250,"line":3060},[5067],{"type":3087,"tag":3170,"props":5068,"children":5069},{"style":3364},[5070],{"type":3092,"value":4933},{"type":3087,"tag":3094,"props":5072,"children":5073},{},[5074],{"type":3087,"tag":3157,"props":5075,"children":5076},{},[5077],{"type":3092,"value":4941},{"type":3087,"tag":3238,"props":5079,"children":5081},{"className":3329,"code":5080,"language":3331,"meta":3037,"style":3037},"if (await denies(event, editPost, post)) {\n  \u002F\u002F User cannot edit the post\n}\n",[5082],{"type":3087,"tag":3245,"props":5083,"children":5084},{"__ignoreMap":3037},[5085,5129,5136],{"type":3087,"tag":3170,"props":5086,"children":5087},{"class":3250,"line":3071},[5088,5092,5096,5100,5104,5108,5112,5117,5121,5125],{"type":3087,"tag":3170,"props":5089,"children":5090},{"style":3341},[5091],{"type":3092,"value":4894},{"type":3087,"tag":3170,"props":5093,"children":5094},{"style":3358},[5095],{"type":3092,"value":3717},{"type":3087,"tag":3170,"props":5097,"children":5098},{"style":3341},[5099],{"type":3092,"value":4903},{"type":3087,"tag":3170,"props":5101,"children":5102},{"style":3352},[5103],{"type":3092,"value":5037},{"type":3087,"tag":3170,"props":5105,"children":5106},{"style":3358},[5107],{"type":3092,"value":4972},{"type":3087,"tag":3170,"props":5109,"children":5110},{"style":3364},[5111],{"type":3092,"value":3707},{"type":3087,"tag":3170,"props":5113,"children":5114},{"style":3358},[5115],{"type":3092,"value":5116}," editPost",{"type":3087,"tag":3170,"props":5118,"children":5119},{"style":3364},[5120],{"type":3092,"value":3707},{"type":3087,"tag":3170,"props":5122,"children":5123},{"style":3358},[5124],{"type":3092,"value":5051},{"type":3087,"tag":3170,"props":5126,"children":5127},{"style":3364},[5128],{"type":3092,"value":3367},{"type":3087,"tag":3170,"props":5130,"children":5131},{"class":3250,"line":3064},[5132],{"type":3087,"tag":3170,"props":5133,"children":5134},{"style":3523},[5135],{"type":3092,"value":5063},{"type":3087,"tag":3170,"props":5137,"children":5138},{"class":3250,"line":3060},[5139],{"type":3087,"tag":3170,"props":5140,"children":5141},{"style":3364},[5142],{"type":3092,"value":4933},{"type":3087,"tag":3094,"props":5144,"children":5145},{},[5146,5147,5152],{"type":3092,"value":4872},{"type":3087,"tag":3245,"props":5148,"children":5150},{"className":5149},[],[5151],{"type":3092,"value":4853},{"type":3092,"value":5153}," function throws an error if the user cannot perform the action:",{"type":3087,"tag":3238,"props":5155,"children":5157},{"className":3329,"code":5156,"language":3331,"meta":3037,"style":3037},"await authorize(editPost, post)\n\n\u002F\u002F User can edit the post\n",[5158],{"type":3087,"tag":3245,"props":5159,"children":5160},{"__ignoreMap":3037},[5161,5186,5193],{"type":3087,"tag":3170,"props":5162,"children":5163},{"class":3250,"line":3071},[5164,5168,5173,5177,5181],{"type":3087,"tag":3170,"props":5165,"children":5166},{"style":3341},[5167],{"type":3092,"value":4903},{"type":3087,"tag":3170,"props":5169,"children":5170},{"style":3352},[5171],{"type":3092,"value":5172}," authorize",{"type":3087,"tag":3170,"props":5174,"children":5175},{"style":3358},[5176],{"type":3092,"value":5042},{"type":3087,"tag":3170,"props":5178,"children":5179},{"style":3364},[5180],{"type":3092,"value":3707},{"type":3087,"tag":3170,"props":5182,"children":5183},{"style":3358},[5184],{"type":3092,"value":5185}," post)\n",{"type":3087,"tag":3170,"props":5187,"children":5188},{"class":3250,"line":3064},[5189],{"type":3087,"tag":3170,"props":5190,"children":5191},{"emptyLinePlaceholder":1200},[5192],{"type":3092,"value":4540},{"type":3087,"tag":3170,"props":5194,"children":5195},{"class":3250,"line":3060},[5196],{"type":3087,"tag":3170,"props":5197,"children":5198},{"style":3523},[5199],{"type":3092,"value":5200},"\u002F\u002F User can edit the post\n",{"type":3087,"tag":3094,"props":5202,"children":5203},{},[5204],{"type":3087,"tag":3157,"props":5205,"children":5206},{},[5207],{"type":3092,"value":4941},{"type":3087,"tag":3238,"props":5209,"children":5211},{"className":3329,"code":5210,"language":3331,"meta":3037,"style":3037},"await authorize(event, editPost, post)\n",[5212],{"type":3087,"tag":3245,"props":5213,"children":5214},{"__ignoreMap":3037},[5215],{"type":3087,"tag":3170,"props":5216,"children":5217},{"class":3250,"line":3071},[5218,5222,5226,5230,5234,5238,5242],{"type":3087,"tag":3170,"props":5219,"children":5220},{"style":3341},[5221],{"type":3092,"value":4903},{"type":3087,"tag":3170,"props":5223,"children":5224},{"style":3352},[5225],{"type":3092,"value":5172},{"type":3087,"tag":3170,"props":5227,"children":5228},{"style":3358},[5229],{"type":3092,"value":4972},{"type":3087,"tag":3170,"props":5231,"children":5232},{"style":3364},[5233],{"type":3092,"value":3707},{"type":3087,"tag":3170,"props":5235,"children":5236},{"style":3358},[5237],{"type":3092,"value":5116},{"type":3087,"tag":3170,"props":5239,"children":5240},{"style":3364},[5241],{"type":3092,"value":3707},{"type":3087,"tag":3170,"props":5243,"children":5244},{"style":3358},[5245],{"type":3092,"value":5185},{"type":3087,"tag":3094,"props":5247,"children":5248},{},[5249],{"type":3092,"value":5250},"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":3087,"tag":3238,"props":5252,"children":5254},{"className":3329,"code":5253,"language":3331,"meta":3037,"style":3037},"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",[5255],{"type":3087,"tag":3245,"props":5256,"children":5257},{"__ignoreMap":3037},[5258,5329,5378,5394,5402,5409,5452],{"type":3087,"tag":3170,"props":5259,"children":5260},{"class":3250,"line":3071},[5261,5265,5269,5273,5277,5281,5285,5289,5293,5297,5301,5305,5309,5313,5317,5321,5325],{"type":3087,"tag":3170,"props":5262,"children":5263},{"style":3341},[5264],{"type":3092,"value":3344},{"type":3087,"tag":3170,"props":5266,"children":5267},{"style":3509},[5268],{"type":3092,"value":4491},{"type":3087,"tag":3170,"props":5270,"children":5271},{"style":3358},[5272],{"type":3092,"value":4556},{"type":3087,"tag":3170,"props":5274,"children":5275},{"style":3364},[5276],{"type":3092,"value":4501},{"type":3087,"tag":3170,"props":5278,"children":5279},{"style":3352},[5280],{"type":3092,"value":4506},{"type":3087,"tag":3170,"props":5282,"children":5283},{"style":3358},[5284],{"type":3092,"value":3361},{"type":3087,"tag":3170,"props":5286,"children":5287},{"style":3364},[5288],{"type":3092,"value":3361},{"type":3087,"tag":3170,"props":5290,"children":5291},{"style":3643},[5292],{"type":3092,"value":4083},{"type":3087,"tag":3170,"props":5294,"children":5295},{"style":3364},[5296],{"type":3092,"value":3326},{"type":3087,"tag":3170,"props":5298,"children":5299},{"style":3254},[5300],{"type":3092,"value":4585},{"type":3087,"tag":3170,"props":5302,"children":5303},{"style":3364},[5304],{"type":3092,"value":3707},{"type":3087,"tag":3170,"props":5306,"children":5307},{"style":3643},[5308],{"type":3092,"value":4594},{"type":3087,"tag":3170,"props":5310,"children":5311},{"style":3364},[5312],{"type":3092,"value":3326},{"type":3087,"tag":3170,"props":5314,"children":5315},{"style":3254},[5316],{"type":3092,"value":4603},{"type":3087,"tag":3170,"props":5318,"children":5319},{"style":3364},[5320],{"type":3092,"value":3651},{"type":3087,"tag":3170,"props":5322,"children":5323},{"style":3509},[5324],{"type":3092,"value":3512},{"type":3087,"tag":3170,"props":5326,"children":5327},{"style":3364},[5328],{"type":3092,"value":3441},{"type":3087,"tag":3170,"props":5330,"children":5331},{"class":3250,"line":3064},[5332,5337,5341,5345,5349,5353,5357,5361,5365,5370,5374],{"type":3087,"tag":3170,"props":5333,"children":5334},{"style":3341},[5335],{"type":3092,"value":5336},"  if",{"type":3087,"tag":3170,"props":5338,"children":5339},{"style":3373},[5340],{"type":3092,"value":3361},{"type":3087,"tag":3170,"props":5342,"children":5343},{"style":3358},[5344],{"type":3092,"value":4083},{"type":3087,"tag":3170,"props":5346,"children":5347},{"style":3364},[5348],{"type":3092,"value":3189},{"type":3087,"tag":3170,"props":5350,"children":5351},{"style":3358},[5352],{"type":3092,"value":4637},{"type":3087,"tag":3170,"props":5354,"children":5355},{"style":3364},[5356],{"type":3092,"value":4642},{"type":3087,"tag":3170,"props":5358,"children":5359},{"style":3358},[5360],{"type":3092,"value":4594},{"type":3087,"tag":3170,"props":5362,"children":5363},{"style":3364},[5364],{"type":3092,"value":3189},{"type":3087,"tag":3170,"props":5366,"children":5367},{"style":3358},[5368],{"type":3092,"value":5369},"authorId",{"type":3087,"tag":3170,"props":5371,"children":5372},{"style":3373},[5373],{"type":3092,"value":4527},{"type":3087,"tag":3170,"props":5375,"children":5376},{"style":3364},[5377],{"type":3092,"value":3367},{"type":3087,"tag":3170,"props":5379,"children":5380},{"class":3250,"line":3060},[5381,5385,5389],{"type":3087,"tag":3170,"props":5382,"children":5383},{"style":3341},[5384],{"type":3092,"value":3450},{"type":3087,"tag":3170,"props":5386,"children":5387},{"style":3415},[5388],{"type":3092,"value":3418},{"type":3087,"tag":3170,"props":5390,"children":5391},{"style":3523},[5392],{"type":3092,"value":5393}," \u002F\u002F or allow()\n",{"type":3087,"tag":3170,"props":5395,"children":5396},{"class":3250,"line":3425},[5397],{"type":3087,"tag":3170,"props":5398,"children":5399},{"style":3364},[5400],{"type":3092,"value":5401},"  }\n",{"type":3087,"tag":3170,"props":5403,"children":5404},{"class":3250,"line":3444},[5405],{"type":3087,"tag":3170,"props":5406,"children":5407},{"emptyLinePlaceholder":1200},[5408],{"type":3092,"value":4540},{"type":3087,"tag":3170,"props":5410,"children":5411},{"class":3250,"line":3457},[5412,5416,5421,5425,5429,5434,5438,5442,5448],{"type":3087,"tag":3170,"props":5413,"children":5414},{"style":3341},[5415],{"type":3092,"value":4623},{"type":3087,"tag":3170,"props":5417,"children":5418},{"style":3352},[5419],{"type":3092,"value":5420}," deny",{"type":3087,"tag":3170,"props":5422,"children":5423},{"style":3373},[5424],{"type":3092,"value":3361},{"type":3087,"tag":3170,"props":5426,"children":5427},{"style":3364},[5428],{"type":3092,"value":3395},{"type":3087,"tag":3170,"props":5430,"children":5431},{"style":3260},[5432],{"type":3092,"value":5433},"This post does not exist",{"type":3087,"tag":3170,"props":5435,"children":5436},{"style":3364},[5437],{"type":3092,"value":3395},{"type":3087,"tag":3170,"props":5439,"children":5440},{"style":3364},[5441],{"type":3092,"value":3707},{"type":3087,"tag":3170,"props":5443,"children":5445},{"style":5444},"--shiki-light:#F76D47;--shiki-default:#F76D47;--shiki-dark:#F78C6C",[5446],{"type":3092,"value":5447}," 404",{"type":3087,"tag":3170,"props":5449,"children":5450},{"style":3373},[5451],{"type":3092,"value":3584},{"type":3087,"tag":3170,"props":5453,"children":5454},{"class":3250,"line":3474},[5455,5459],{"type":3087,"tag":3170,"props":5456,"children":5457},{"style":3364},[5458],{"type":3092,"value":3579},{"type":3087,"tag":3170,"props":5460,"children":5461},{"style":3358},[5462],{"type":3092,"value":3584},{"type":3087,"tag":3094,"props":5464,"children":5465},{},[5466,5472,5474,5480,5482,5488,5489,5495,5497,5502],{"type":3087,"tag":3245,"props":5467,"children":5469},{"className":5468},[],[5470],{"type":3092,"value":5471},"allow",{"type":3092,"value":5473}," and ",{"type":3087,"tag":3245,"props":5475,"children":5477},{"className":5476},[],[5478],{"type":3092,"value":5479},"deny",{"type":3092,"value":5481}," are similar to returning ",{"type":3087,"tag":3245,"props":5483,"children":5485},{"className":5484},[],[5486],{"type":3092,"value":5487},"true",{"type":3092,"value":5473},{"type":3087,"tag":3245,"props":5490,"children":5492},{"className":5491},[],[5493],{"type":3092,"value":5494},"false",{"type":3092,"value":5496}," but ",{"type":3087,"tag":3245,"props":5498,"children":5500},{"className":5499},[],[5501],{"type":3092,"value":5479},{"type":3092,"value":5503}," allows to return a custom message and status code for the error.",{"type":3087,"tag":3094,"props":5505,"children":5506},{},[5507,5509,5514,5516,5522],{"type":3092,"value":5508},"Most of the times, you API endpoints will use the ",{"type":3087,"tag":3245,"props":5510,"children":5512},{"className":5511},[],[5513],{"type":3092,"value":4853},{"type":3092,"value":5515},". 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":3087,"tag":3245,"props":5517,"children":5519},{"className":5518},[],[5520],{"type":3092,"value":5521},"H3Error",{"type":3092,"value":5523}," and will be caught by the Nitro server.",{"type":3087,"tag":3094,"props":5525,"children":5526},{},[5527,5528,5533,5534,5539],{"type":3092,"value":4872},{"type":3087,"tag":3245,"props":5529,"children":5531},{"className":5530},[],[5532],{"type":3092,"value":4837},{"type":3092,"value":5473},{"type":3087,"tag":3245,"props":5535,"children":5537},{"className":5536},[],[5538],{"type":3092,"value":4845},{"type":3092,"value":5540}," 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":3087,"tag":3303,"props":5542,"children":5544},{"id":5543},"use-components",[5545],{"type":3092,"value":5546},"Use Components",{"type":3087,"tag":3094,"props":5548,"children":5549},{},[5550],{"type":3092,"value":5551},"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":3087,"tag":3238,"props":5553,"children":5557},{"className":5554,"code":5555,"language":5556,"meta":3037,"style":3037},"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",[5558],{"type":3087,"tag":3245,"props":5559,"children":5560},{"__ignoreMap":3037},[5561,5579,5592,5624,5713,5721,5757,5774],{"type":3087,"tag":3170,"props":5562,"children":5563},{"class":3250,"line":3071},[5564,5569,5574],{"type":3087,"tag":3170,"props":5565,"children":5566},{"style":3364},[5567],{"type":3092,"value":5568},"\u003C",{"type":3087,"tag":3170,"props":5570,"children":5571},{"style":3373},[5572],{"type":3092,"value":5573},"template",{"type":3087,"tag":3170,"props":5575,"children":5576},{"style":3364},[5577],{"type":3092,"value":5578},">\n",{"type":3087,"tag":3170,"props":5580,"children":5581},{"class":3250,"line":3064},[5582,5587],{"type":3087,"tag":3170,"props":5583,"children":5584},{"style":3364},[5585],{"type":3092,"value":5586},"  \u003C",{"type":3087,"tag":3170,"props":5588,"children":5589},{"style":3373},[5590],{"type":3092,"value":5591},"Can\n",{"type":3087,"tag":3170,"props":5593,"children":5594},{"class":3250,"line":3060},[5595,5600,5605,5609,5614,5619],{"type":3087,"tag":3170,"props":5596,"children":5597},{"style":3364},[5598],{"type":3092,"value":5599},"    :",{"type":3087,"tag":3170,"props":5601,"children":5602},{"style":3509},[5603],{"type":3092,"value":5604},"ability",{"type":3087,"tag":3170,"props":5606,"children":5607},{"style":3364},[5608],{"type":3092,"value":4501},{"type":3087,"tag":3170,"props":5610,"children":5611},{"style":3364},[5612],{"type":3092,"value":5613},"\"",{"type":3087,"tag":3170,"props":5615,"children":5616},{"style":3358},[5617],{"type":3092,"value":5618},"editPost",{"type":3087,"tag":3170,"props":5620,"children":5621},{"style":3364},[5622],{"type":3092,"value":5623},"\"\n",{"type":3087,"tag":3170,"props":5625,"children":5626},{"class":3250,"line":3425},[5627,5631,5636,5640,5644,5649,5654,5659,5663,5668,5673,5678,5683,5688,5693,5698,5703,5708],{"type":3087,"tag":3170,"props":5628,"children":5629},{"style":3364},[5630],{"type":3092,"value":5599},{"type":3087,"tag":3170,"props":5632,"children":5633},{"style":3509},[5634],{"type":3092,"value":5635},"args",{"type":3087,"tag":3170,"props":5637,"children":5638},{"style":3364},[5639],{"type":3092,"value":4501},{"type":3087,"tag":3170,"props":5641,"children":5642},{"style":3364},[5643],{"type":3092,"value":5613},{"type":3087,"tag":3170,"props":5645,"children":5646},{"style":3364},[5647],{"type":3092,"value":5648},"[",{"type":3087,"tag":3170,"props":5650,"children":5651},{"style":3358},[5652],{"type":3092,"value":5653},"post",{"type":3087,"tag":3170,"props":5655,"children":5656},{"style":3364},[5657],{"type":3092,"value":5658},"]",{"type":3087,"tag":3170,"props":5660,"children":5661},{"style":3364},[5662],{"type":3092,"value":5613},{"type":3087,"tag":3170,"props":5664,"children":5665},{"style":3364},[5666],{"type":3092,"value":5667}," \u002F\u002F ",{"type":3087,"tag":3170,"props":5669,"children":5670},{"style":3509},[5671],{"type":3092,"value":5672},"Optional",{"type":3087,"tag":3170,"props":5674,"children":5675},{"style":3509},[5676],{"type":3092,"value":5677}," if",{"type":3087,"tag":3170,"props":5679,"children":5680},{"style":3509},[5681],{"type":3092,"value":5682}," the",{"type":3087,"tag":3170,"props":5684,"children":5685},{"style":3509},[5686],{"type":3092,"value":5687}," ability",{"type":3087,"tag":3170,"props":5689,"children":5690},{"style":3509},[5691],{"type":3092,"value":5692}," does",{"type":3087,"tag":3170,"props":5694,"children":5695},{"style":3509},[5696],{"type":3092,"value":5697}," not",{"type":3087,"tag":3170,"props":5699,"children":5700},{"style":3509},[5701],{"type":3092,"value":5702}," take",{"type":3087,"tag":3170,"props":5704,"children":5705},{"style":3509},[5706],{"type":3092,"value":5707}," any",{"type":3087,"tag":3170,"props":5709,"children":5710},{"style":3509},[5711],{"type":3092,"value":5712}," arguments\n",{"type":3087,"tag":3170,"props":5714,"children":5715},{"class":3250,"line":3444},[5716],{"type":3087,"tag":3170,"props":5717,"children":5718},{"style":3364},[5719],{"type":3092,"value":5720},"  >\n",{"type":3087,"tag":3170,"props":5722,"children":5723},{"class":3250,"line":3457},[5724,5729,5734,5739,5744,5749,5753],{"type":3087,"tag":3170,"props":5725,"children":5726},{"style":3364},[5727],{"type":3092,"value":5728},"    \u003C",{"type":3087,"tag":3170,"props":5730,"children":5731},{"style":3373},[5732],{"type":3092,"value":5733},"button",{"type":3087,"tag":3170,"props":5735,"children":5736},{"style":3364},[5737],{"type":3092,"value":5738},">",{"type":3087,"tag":3170,"props":5740,"children":5741},{"style":3358},[5742],{"type":3092,"value":5743},"Edit",{"type":3087,"tag":3170,"props":5745,"children":5746},{"style":3364},[5747],{"type":3092,"value":5748},"\u003C\u002F",{"type":3087,"tag":3170,"props":5750,"children":5751},{"style":3373},[5752],{"type":3092,"value":5733},{"type":3087,"tag":3170,"props":5754,"children":5755},{"style":3364},[5756],{"type":3092,"value":5578},{"type":3087,"tag":3170,"props":5758,"children":5759},{"class":3250,"line":3474},[5760,5765,5770],{"type":3087,"tag":3170,"props":5761,"children":5762},{"style":3364},[5763],{"type":3092,"value":5764},"  \u003C\u002F",{"type":3087,"tag":3170,"props":5766,"children":5767},{"style":3373},[5768],{"type":3092,"value":5769},"Can",{"type":3087,"tag":3170,"props":5771,"children":5772},{"style":3364},[5773],{"type":3092,"value":5578},{"type":3087,"tag":3170,"props":5775,"children":5776},{"class":3250,"line":3491},[5777,5781,5785],{"type":3087,"tag":3170,"props":5778,"children":5779},{"style":3364},[5780],{"type":3092,"value":5748},{"type":3087,"tag":3170,"props":5782,"children":5783},{"style":3373},[5784],{"type":3092,"value":5573},{"type":3087,"tag":3170,"props":5786,"children":5787},{"style":3364},[5788],{"type":3092,"value":5578},{"type":3087,"tag":3094,"props":5790,"children":5791},{},[5792,5793,5798],{"type":3092,"value":4872},{"type":3087,"tag":3245,"props":5794,"children":5796},{"className":5795},[],[5797],{"type":3092,"value":5769},{"type":3092,"value":5799}," 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":3087,"tag":3094,"props":5801,"children":5802},{},[5803,5805,5811],{"type":3092,"value":5804},"As a counterpart, you can use the ",{"type":3087,"tag":3245,"props":5806,"children":5808},{"className":5807},[],[5809],{"type":3092,"value":5810},"Cannot",{"type":3092,"value":5812}," component to render the button only if the user cannot edit the post.",{"type":3087,"tag":3238,"props":5814,"children":5816},{"className":5554,"code":5815,"language":5556,"meta":3037,"style":3037},"\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",[5817],{"type":3087,"tag":3245,"props":5818,"children":5819},{"__ignoreMap":3037},[5820,5835,5847,5874,5949,5956,5988,6003],{"type":3087,"tag":3170,"props":5821,"children":5822},{"class":3250,"line":3071},[5823,5827,5831],{"type":3087,"tag":3170,"props":5824,"children":5825},{"style":3364},[5826],{"type":3092,"value":5568},{"type":3087,"tag":3170,"props":5828,"children":5829},{"style":3373},[5830],{"type":3092,"value":5573},{"type":3087,"tag":3170,"props":5832,"children":5833},{"style":3364},[5834],{"type":3092,"value":5578},{"type":3087,"tag":3170,"props":5836,"children":5837},{"class":3250,"line":3064},[5838,5842],{"type":3087,"tag":3170,"props":5839,"children":5840},{"style":3364},[5841],{"type":3092,"value":5586},{"type":3087,"tag":3170,"props":5843,"children":5844},{"style":3373},[5845],{"type":3092,"value":5846},"Cannot\n",{"type":3087,"tag":3170,"props":5848,"children":5849},{"class":3250,"line":3060},[5850,5854,5858,5862,5866,5870],{"type":3087,"tag":3170,"props":5851,"children":5852},{"style":3364},[5853],{"type":3092,"value":5599},{"type":3087,"tag":3170,"props":5855,"children":5856},{"style":3509},[5857],{"type":3092,"value":5604},{"type":3087,"tag":3170,"props":5859,"children":5860},{"style":3364},[5861],{"type":3092,"value":4501},{"type":3087,"tag":3170,"props":5863,"children":5864},{"style":3364},[5865],{"type":3092,"value":5613},{"type":3087,"tag":3170,"props":5867,"children":5868},{"style":3358},[5869],{"type":3092,"value":5618},{"type":3087,"tag":3170,"props":5871,"children":5872},{"style":3364},[5873],{"type":3092,"value":5623},{"type":3087,"tag":3170,"props":5875,"children":5876},{"class":3250,"line":3425},[5877,5881,5885,5889,5893,5897,5901,5905,5909,5913,5917,5921,5925,5929,5933,5937,5941,5945],{"type":3087,"tag":3170,"props":5878,"children":5879},{"style":3364},[5880],{"type":3092,"value":5599},{"type":3087,"tag":3170,"props":5882,"children":5883},{"style":3509},[5884],{"type":3092,"value":5635},{"type":3087,"tag":3170,"props":5886,"children":5887},{"style":3364},[5888],{"type":3092,"value":4501},{"type":3087,"tag":3170,"props":5890,"children":5891},{"style":3364},[5892],{"type":3092,"value":5613},{"type":3087,"tag":3170,"props":5894,"children":5895},{"style":3364},[5896],{"type":3092,"value":5648},{"type":3087,"tag":3170,"props":5898,"children":5899},{"style":3358},[5900],{"type":3092,"value":5653},{"type":3087,"tag":3170,"props":5902,"children":5903},{"style":3364},[5904],{"type":3092,"value":5658},{"type":3087,"tag":3170,"props":5906,"children":5907},{"style":3364},[5908],{"type":3092,"value":5613},{"type":3087,"tag":3170,"props":5910,"children":5911},{"style":3364},[5912],{"type":3092,"value":5667},{"type":3087,"tag":3170,"props":5914,"children":5915},{"style":3509},[5916],{"type":3092,"value":5672},{"type":3087,"tag":3170,"props":5918,"children":5919},{"style":3509},[5920],{"type":3092,"value":5677},{"type":3087,"tag":3170,"props":5922,"children":5923},{"style":3509},[5924],{"type":3092,"value":5682},{"type":3087,"tag":3170,"props":5926,"children":5927},{"style":3509},[5928],{"type":3092,"value":5687},{"type":3087,"tag":3170,"props":5930,"children":5931},{"style":3509},[5932],{"type":3092,"value":5692},{"type":3087,"tag":3170,"props":5934,"children":5935},{"style":3509},[5936],{"type":3092,"value":5697},{"type":3087,"tag":3170,"props":5938,"children":5939},{"style":3509},[5940],{"type":3092,"value":5702},{"type":3087,"tag":3170,"props":5942,"children":5943},{"style":3509},[5944],{"type":3092,"value":5707},{"type":3087,"tag":3170,"props":5946,"children":5947},{"style":3509},[5948],{"type":3092,"value":5712},{"type":3087,"tag":3170,"props":5950,"children":5951},{"class":3250,"line":3444},[5952],{"type":3087,"tag":3170,"props":5953,"children":5954},{"style":3364},[5955],{"type":3092,"value":5720},{"type":3087,"tag":3170,"props":5957,"children":5958},{"class":3250,"line":3457},[5959,5963,5967,5971,5976,5980,5984],{"type":3087,"tag":3170,"props":5960,"children":5961},{"style":3364},[5962],{"type":3092,"value":5728},{"type":3087,"tag":3170,"props":5964,"children":5965},{"style":3373},[5966],{"type":3092,"value":3094},{"type":3087,"tag":3170,"props":5968,"children":5969},{"style":3364},[5970],{"type":3092,"value":5738},{"type":3087,"tag":3170,"props":5972,"children":5973},{"style":3358},[5974],{"type":3092,"value":5975},"You're not allowed to edit the post.",{"type":3087,"tag":3170,"props":5977,"children":5978},{"style":3364},[5979],{"type":3092,"value":5748},{"type":3087,"tag":3170,"props":5981,"children":5982},{"style":3373},[5983],{"type":3092,"value":3094},{"type":3087,"tag":3170,"props":5985,"children":5986},{"style":3364},[5987],{"type":3092,"value":5578},{"type":3087,"tag":3170,"props":5989,"children":5990},{"class":3250,"line":3474},[5991,5995,5999],{"type":3087,"tag":3170,"props":5992,"children":5993},{"style":3364},[5994],{"type":3092,"value":5764},{"type":3087,"tag":3170,"props":5996,"children":5997},{"style":3373},[5998],{"type":3092,"value":5810},{"type":3087,"tag":3170,"props":6000,"children":6001},{"style":3364},[6002],{"type":3092,"value":5578},{"type":3087,"tag":3170,"props":6004,"children":6005},{"class":3250,"line":3491},[6006,6010,6014],{"type":3087,"tag":3170,"props":6007,"children":6008},{"style":3364},[6009],{"type":3092,"value":5748},{"type":3087,"tag":3170,"props":6011,"children":6012},{"style":3373},[6013],{"type":3092,"value":5573},{"type":3087,"tag":3170,"props":6015,"children":6016},{"style":3364},[6017],{"type":3092,"value":5578},{"type":3087,"tag":3094,"props":6019,"children":6020},{},[6021,6022,6028,6030,6035,6036,6041,6043,6050],{"type":3092,"value":4872},{"type":3087,"tag":3245,"props":6023,"children":6025},{"className":6024},[],[6026],{"type":3092,"value":6027},"Bouncer",{"type":3092,"value":6029}," component offers a more flexible and centralized way to handle both can and cannot scenarios within a single component. Instead of using separate ",{"type":3087,"tag":3245,"props":6031,"children":6033},{"className":6032},[],[6034],{"type":3092,"value":5769},{"type":3092,"value":5473},{"type":3087,"tag":3245,"props":6037,"children":6039},{"className":6038},[],[6040],{"type":3092,"value":5810},{"type":3092,"value":6042}," components, you can leverage the Bouncer component and its ",{"type":3087,"tag":3098,"props":6044,"children":6047},{"href":6045,"rel":6046},"https:\u002F\u002Fvuejs.org\u002Fguide\u002Fcomponents\u002Fslots.html#named-slots",[3102],[6048],{"type":3092,"value":6049},"named slots",{"type":3092,"value":6051}," to handle both states in a unified block.",{"type":3087,"tag":3238,"props":6053,"children":6055},{"className":5554,"code":6054,"language":5556,"meta":3037,"style":3037},"\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",[6056],{"type":3087,"tag":3245,"props":6057,"children":6058},{"__ignoreMap":3037},[6059,6071,6099,6167,6174,6182,6190,6198,6205,6213,6221,6228],{"type":3087,"tag":3170,"props":6060,"children":6061},{"class":3250,"line":3071},[6062,6066],{"type":3087,"tag":3170,"props":6063,"children":6064},{"style":3364},[6065],{"type":3092,"value":5568},{"type":3087,"tag":3170,"props":6067,"children":6068},{"style":3373},[6069],{"type":3092,"value":6070},"Bouncer\n",{"type":3087,"tag":3170,"props":6072,"children":6073},{"class":3250,"line":3064},[6074,6079,6083,6087,6091,6095],{"type":3087,"tag":3170,"props":6075,"children":6076},{"style":3364},[6077],{"type":3092,"value":6078},"  :",{"type":3087,"tag":3170,"props":6080,"children":6081},{"style":3509},[6082],{"type":3092,"value":5604},{"type":3087,"tag":3170,"props":6084,"children":6085},{"style":3364},[6086],{"type":3092,"value":4501},{"type":3087,"tag":3170,"props":6088,"children":6089},{"style":3364},[6090],{"type":3092,"value":5613},{"type":3087,"tag":3170,"props":6092,"children":6093},{"style":3358},[6094],{"type":3092,"value":5618},{"type":3087,"tag":3170,"props":6096,"children":6097},{"style":3364},[6098],{"type":3092,"value":5623},{"type":3087,"tag":3170,"props":6100,"children":6101},{"class":3250,"line":3060},[6102,6106,6110,6114,6118,6123,6127,6131,6135,6139,6143,6147,6151,6155,6159,6163],{"type":3087,"tag":3170,"props":6103,"children":6104},{"style":3364},[6105],{"type":3092,"value":6078},{"type":3087,"tag":3170,"props":6107,"children":6108},{"style":3509},[6109],{"type":3092,"value":5635},{"type":3087,"tag":3170,"props":6111,"children":6112},{"style":3364},[6113],{"type":3092,"value":4501},{"type":3087,"tag":3170,"props":6115,"children":6116},{"style":3364},[6117],{"type":3092,"value":5613},{"type":3087,"tag":3170,"props":6119,"children":6120},{"style":3358},[6121],{"type":3092,"value":6122},"[post]",{"type":3087,"tag":3170,"props":6124,"children":6125},{"style":3364},[6126],{"type":3092,"value":5613},{"type":3087,"tag":3170,"props":6128,"children":6129},{"style":3358},[6130],{"type":3092,"value":5667},{"type":3087,"tag":3170,"props":6132,"children":6133},{"style":3509},[6134],{"type":3092,"value":5672},{"type":3087,"tag":3170,"props":6136,"children":6137},{"style":3509},[6138],{"type":3092,"value":5677},{"type":3087,"tag":3170,"props":6140,"children":6141},{"style":3509},[6142],{"type":3092,"value":5682},{"type":3087,"tag":3170,"props":6144,"children":6145},{"style":3509},[6146],{"type":3092,"value":5687},{"type":3087,"tag":3170,"props":6148,"children":6149},{"style":3509},[6150],{"type":3092,"value":5692},{"type":3087,"tag":3170,"props":6152,"children":6153},{"style":3509},[6154],{"type":3092,"value":5697},{"type":3087,"tag":3170,"props":6156,"children":6157},{"style":3509},[6158],{"type":3092,"value":5702},{"type":3087,"tag":3170,"props":6160,"children":6161},{"style":3509},[6162],{"type":3092,"value":5707},{"type":3087,"tag":3170,"props":6164,"children":6165},{"style":3509},[6166],{"type":3092,"value":5712},{"type":3087,"tag":3170,"props":6168,"children":6169},{"class":3250,"line":3425},[6170],{"type":3087,"tag":3170,"props":6171,"children":6172},{"style":3364},[6173],{"type":3092,"value":5578},{"type":3087,"tag":3170,"props":6175,"children":6176},{"class":3250,"line":3444},[6177],{"type":3087,"tag":3170,"props":6178,"children":6179},{"style":3358},[6180],{"type":3092,"value":6181},"  \u003Ctemplate #can>\n",{"type":3087,"tag":3170,"props":6183,"children":6184},{"class":3250,"line":3457},[6185],{"type":3087,"tag":3170,"props":6186,"children":6187},{"style":3358},[6188],{"type":3092,"value":6189},"    \u003Cbutton>Edit\u003C\u002Fbutton>\n",{"type":3087,"tag":3170,"props":6191,"children":6192},{"class":3250,"line":3474},[6193],{"type":3087,"tag":3170,"props":6194,"children":6195},{"style":3358},[6196],{"type":3092,"value":6197},"  \u003C\u002Ftemplate>\n",{"type":3087,"tag":3170,"props":6199,"children":6200},{"class":3250,"line":3491},[6201],{"type":3087,"tag":3170,"props":6202,"children":6203},{"emptyLinePlaceholder":1200},[6204],{"type":3092,"value":4540},{"type":3087,"tag":3170,"props":6206,"children":6207},{"class":3250,"line":3519},[6208],{"type":3087,"tag":3170,"props":6209,"children":6210},{"style":3358},[6211],{"type":3092,"value":6212},"  \u003Ctemplate #cannot>\n",{"type":3087,"tag":3170,"props":6214,"children":6215},{"class":3250,"line":3529},[6216],{"type":3087,"tag":3170,"props":6217,"children":6218},{"style":3358},[6219],{"type":3092,"value":6220},"    \u003Cp>You're not allowed to edit the post.\u003C\u002Fp>\n",{"type":3087,"tag":3170,"props":6222,"children":6223},{"class":3250,"line":3538},[6224],{"type":3087,"tag":3170,"props":6225,"children":6226},{"style":3358},[6227],{"type":3092,"value":6197},{"type":3087,"tag":3170,"props":6229,"children":6230},{"class":3250,"line":3547},[6231,6235,6239],{"type":3087,"tag":3170,"props":6232,"children":6233},{"style":3364},[6234],{"type":3092,"value":5748},{"type":3087,"tag":3170,"props":6236,"children":6237},{"style":3373},[6238],{"type":3092,"value":6027},{"type":3087,"tag":3170,"props":6240,"children":6241},{"style":3364},[6242],{"type":3092,"value":5578},{"type":3087,"tag":3094,"props":6244,"children":6245},{},[6246,6248,6254],{"type":3092,"value":6247},"All of these components accept a prop named ",{"type":3087,"tag":3245,"props":6249,"children":6251},{"className":6250},[],[6252],{"type":3092,"value":6253},"as",{"type":3092,"value":6255}," to define the HTML tag to render. By default, it's a renderless component.",{"type":3087,"tag":3238,"props":6257,"children":6259},{"className":5554,"code":6258,"language":5556,"meta":3037,"style":3037},"\u003CCan\n  :ability=\"editPost\"\n  :args=\"[post]\"\n  as=\"div\"\n>\n  \u003Cbutton>Edit\u003C\u002Fbutton>\n\u003C\u002FCan>\n",[6260],{"type":3087,"tag":3245,"props":6261,"children":6262},{"__ignoreMap":3037},[6263,6274,6301,6328,6353,6360,6368],{"type":3087,"tag":3170,"props":6264,"children":6265},{"class":3250,"line":3071},[6266,6270],{"type":3087,"tag":3170,"props":6267,"children":6268},{"style":3364},[6269],{"type":3092,"value":5568},{"type":3087,"tag":3170,"props":6271,"children":6272},{"style":3373},[6273],{"type":3092,"value":5591},{"type":3087,"tag":3170,"props":6275,"children":6276},{"class":3250,"line":3064},[6277,6281,6285,6289,6293,6297],{"type":3087,"tag":3170,"props":6278,"children":6279},{"style":3364},[6280],{"type":3092,"value":6078},{"type":3087,"tag":3170,"props":6282,"children":6283},{"style":3509},[6284],{"type":3092,"value":5604},{"type":3087,"tag":3170,"props":6286,"children":6287},{"style":3364},[6288],{"type":3092,"value":4501},{"type":3087,"tag":3170,"props":6290,"children":6291},{"style":3364},[6292],{"type":3092,"value":5613},{"type":3087,"tag":3170,"props":6294,"children":6295},{"style":3358},[6296],{"type":3092,"value":5618},{"type":3087,"tag":3170,"props":6298,"children":6299},{"style":3364},[6300],{"type":3092,"value":5623},{"type":3087,"tag":3170,"props":6302,"children":6303},{"class":3250,"line":3060},[6304,6308,6312,6316,6320,6324],{"type":3087,"tag":3170,"props":6305,"children":6306},{"style":3364},[6307],{"type":3092,"value":6078},{"type":3087,"tag":3170,"props":6309,"children":6310},{"style":3509},[6311],{"type":3092,"value":5635},{"type":3087,"tag":3170,"props":6313,"children":6314},{"style":3364},[6315],{"type":3092,"value":4501},{"type":3087,"tag":3170,"props":6317,"children":6318},{"style":3364},[6319],{"type":3092,"value":5613},{"type":3087,"tag":3170,"props":6321,"children":6322},{"style":3358},[6323],{"type":3092,"value":6122},{"type":3087,"tag":3170,"props":6325,"children":6326},{"style":3364},[6327],{"type":3092,"value":5623},{"type":3087,"tag":3170,"props":6329,"children":6330},{"class":3250,"line":3425},[6331,6336,6340,6344,6349],{"type":3087,"tag":3170,"props":6332,"children":6333},{"style":3509},[6334],{"type":3092,"value":6335},"  as",{"type":3087,"tag":3170,"props":6337,"children":6338},{"style":3364},[6339],{"type":3092,"value":4501},{"type":3087,"tag":3170,"props":6341,"children":6342},{"style":3364},[6343],{"type":3092,"value":5613},{"type":3087,"tag":3170,"props":6345,"children":6346},{"style":3260},[6347],{"type":3092,"value":6348},"div",{"type":3087,"tag":3170,"props":6350,"children":6351},{"style":3364},[6352],{"type":3092,"value":5623},{"type":3087,"tag":3170,"props":6354,"children":6355},{"class":3250,"line":3444},[6356],{"type":3087,"tag":3170,"props":6357,"children":6358},{"style":3364},[6359],{"type":3092,"value":5578},{"type":3087,"tag":3170,"props":6361,"children":6362},{"class":3250,"line":3457},[6363],{"type":3087,"tag":3170,"props":6364,"children":6365},{"style":3358},[6366],{"type":3092,"value":6367},"  \u003Cbutton>Edit\u003C\u002Fbutton>\n",{"type":3087,"tag":3170,"props":6369,"children":6370},{"class":3250,"line":3474},[6371,6375,6379],{"type":3087,"tag":3170,"props":6372,"children":6373},{"style":3364},[6374],{"type":3092,"value":5748},{"type":3087,"tag":3170,"props":6376,"children":6377},{"style":3373},[6378],{"type":3092,"value":5769},{"type":3087,"tag":3170,"props":6380,"children":6381},{"style":3364},[6382],{"type":3092,"value":5578},{"type":3087,"tag":3094,"props":6384,"children":6385},{},[6386],{"type":3092,"value":6387},"This will render:",{"type":3087,"tag":3238,"props":6389,"children":6393},{"className":6390,"code":6391,"language":6392,"meta":3037,"style":3037},"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",[6394],{"type":3087,"tag":3245,"props":6395,"children":6396},{"__ignoreMap":3037},[6397,6412,6443],{"type":3087,"tag":3170,"props":6398,"children":6399},{"class":3250,"line":3071},[6400,6404,6408],{"type":3087,"tag":3170,"props":6401,"children":6402},{"style":3364},[6403],{"type":3092,"value":5568},{"type":3087,"tag":3170,"props":6405,"children":6406},{"style":3373},[6407],{"type":3092,"value":6348},{"type":3087,"tag":3170,"props":6409,"children":6410},{"style":3364},[6411],{"type":3092,"value":5578},{"type":3087,"tag":3170,"props":6413,"children":6414},{"class":3250,"line":3064},[6415,6419,6423,6427,6431,6435,6439],{"type":3087,"tag":3170,"props":6416,"children":6417},{"style":3364},[6418],{"type":3092,"value":5586},{"type":3087,"tag":3170,"props":6420,"children":6421},{"style":3373},[6422],{"type":3092,"value":5733},{"type":3087,"tag":3170,"props":6424,"children":6425},{"style":3364},[6426],{"type":3092,"value":5738},{"type":3087,"tag":3170,"props":6428,"children":6429},{"style":3358},[6430],{"type":3092,"value":5743},{"type":3087,"tag":3170,"props":6432,"children":6433},{"style":3364},[6434],{"type":3092,"value":5748},{"type":3087,"tag":3170,"props":6436,"children":6437},{"style":3373},[6438],{"type":3092,"value":5733},{"type":3087,"tag":3170,"props":6440,"children":6441},{"style":3364},[6442],{"type":3092,"value":5578},{"type":3087,"tag":3170,"props":6444,"children":6445},{"class":3250,"line":3060},[6446,6450,6454],{"type":3087,"tag":3170,"props":6447,"children":6448},{"style":3364},[6449],{"type":3092,"value":5748},{"type":3087,"tag":3170,"props":6451,"children":6452},{"style":3373},[6453],{"type":3092,"value":6348},{"type":3087,"tag":3170,"props":6455,"children":6456},{"style":3364},[6457],{"type":3092,"value":5578},{"type":3087,"tag":3094,"props":6459,"children":6460},{},[6461],{"type":3092,"value":6462},"Instead of:",{"type":3087,"tag":3238,"props":6464,"children":6466},{"className":6390,"code":6465,"language":6392,"meta":3037,"style":3037},"\u003Cbutton>Edit\u003C\u002Fbutton>\n",[6467],{"type":3087,"tag":3245,"props":6468,"children":6469},{"__ignoreMap":3037},[6470],{"type":3087,"tag":3170,"props":6471,"children":6472},{"class":3250,"line":3071},[6473,6477,6481,6485,6489,6493,6497],{"type":3087,"tag":3170,"props":6474,"children":6475},{"style":3364},[6476],{"type":3092,"value":5568},{"type":3087,"tag":3170,"props":6478,"children":6479},{"style":3373},[6480],{"type":3092,"value":5733},{"type":3087,"tag":3170,"props":6482,"children":6483},{"style":3364},[6484],{"type":3092,"value":5738},{"type":3087,"tag":3170,"props":6486,"children":6487},{"style":3358},[6488],{"type":3092,"value":5743},{"type":3087,"tag":3170,"props":6490,"children":6491},{"style":3364},[6492],{"type":3092,"value":5748},{"type":3087,"tag":3170,"props":6494,"children":6495},{"style":3373},[6496],{"type":3092,"value":5733},{"type":3087,"tag":3170,"props":6498,"children":6499},{"style":3364},[6500],{"type":3092,"value":5578},{"type":3087,"tag":3886,"props":6502,"children":6504},{"id":6503},"multiple-abilities",[6505],{"type":3092,"value":6506},"Multiple abilities",{"type":3087,"tag":3094,"props":6508,"children":6509},{},[6510,6512,6517,6519,6524],{"type":3092,"value":6511},"If you possess multiple abilities, you can provide an array of abilities to the components. The component will render only if ",{"type":3087,"tag":4697,"props":6513,"children":6514},{},[6515],{"type":3092,"value":6516},"all",{"type":3092,"value":6518}," of the abilities ",{"type":3087,"tag":4697,"props":6520,"children":6521},{},[6522],{"type":3092,"value":6523},"match",{"type":3092,"value":6525}," the specified requirements of the component.",{"type":3087,"tag":3238,"props":6527,"children":6529},{"className":5554,"code":6528,"language":5556,"meta":3037,"style":3037},"\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",[6530],{"type":3087,"tag":3245,"props":6531,"children":6532},{"__ignoreMap":3037},[6533,6618,6625,6704,6711,6790,6797,6804,6812,6819,6826,6833,6841,6848],{"type":3087,"tag":3170,"props":6534,"children":6535},{"class":3250,"line":3071},[6536,6540,6544,6549,6553,6557,6561,6566,6570,6575,6579,6583,6587,6591,6595,6600,6604,6609,6613],{"type":3087,"tag":3170,"props":6537,"children":6538},{"style":3364},[6539],{"type":3092,"value":5568},{"type":3087,"tag":3170,"props":6541,"children":6542},{"style":3373},[6543],{"type":3092,"value":5769},{"type":3087,"tag":3170,"props":6545,"children":6546},{"style":3364},[6547],{"type":3092,"value":6548}," :",{"type":3087,"tag":3170,"props":6550,"children":6551},{"style":3509},[6552],{"type":3092,"value":5604},{"type":3087,"tag":3170,"props":6554,"children":6555},{"style":3364},[6556],{"type":3092,"value":4501},{"type":3087,"tag":3170,"props":6558,"children":6559},{"style":3364},[6560],{"type":3092,"value":5613},{"type":3087,"tag":3170,"props":6562,"children":6563},{"style":3358},[6564],{"type":3092,"value":6565},"[editPost",{"type":3087,"tag":3170,"props":6567,"children":6568},{"style":3364},[6569],{"type":3092,"value":3707},{"type":3087,"tag":3170,"props":6571,"children":6572},{"style":3358},[6573],{"type":3092,"value":6574}," deletePost]",{"type":3087,"tag":3170,"props":6576,"children":6577},{"style":3364},[6578],{"type":3092,"value":5613},{"type":3087,"tag":3170,"props":6580,"children":6581},{"style":3364},[6582],{"type":3092,"value":6548},{"type":3087,"tag":3170,"props":6584,"children":6585},{"style":3509},[6586],{"type":3092,"value":5635},{"type":3087,"tag":3170,"props":6588,"children":6589},{"style":3364},[6590],{"type":3092,"value":4501},{"type":3087,"tag":3170,"props":6592,"children":6593},{"style":3364},[6594],{"type":3092,"value":5613},{"type":3087,"tag":3170,"props":6596,"children":6597},{"style":3358},[6598],{"type":3092,"value":6599},"[[post]",{"type":3087,"tag":3170,"props":6601,"children":6602},{"style":3364},[6603],{"type":3092,"value":3707},{"type":3087,"tag":3170,"props":6605,"children":6606},{"style":3358},[6607],{"type":3092,"value":6608}," [post]]",{"type":3087,"tag":3170,"props":6610,"children":6611},{"style":3364},[6612],{"type":3092,"value":5613},{"type":3087,"tag":3170,"props":6614,"children":6615},{"style":3364},[6616],{"type":3092,"value":6617}," \u002F>\n",{"type":3087,"tag":3170,"props":6619,"children":6620},{"class":3250,"line":3064},[6621],{"type":3087,"tag":3170,"props":6622,"children":6623},{"emptyLinePlaceholder":1200},[6624],{"type":3092,"value":4540},{"type":3087,"tag":3170,"props":6626,"children":6627},{"class":3250,"line":3060},[6628,6632,6636,6640,6644,6648,6652,6656,6660,6664,6668,6672,6676,6680,6684,6688,6692,6696,6700],{"type":3087,"tag":3170,"props":6629,"children":6630},{"style":3364},[6631],{"type":3092,"value":5568},{"type":3087,"tag":3170,"props":6633,"children":6634},{"style":3373},[6635],{"type":3092,"value":5810},{"type":3087,"tag":3170,"props":6637,"children":6638},{"style":3364},[6639],{"type":3092,"value":6548},{"type":3087,"tag":3170,"props":6641,"children":6642},{"style":3509},[6643],{"type":3092,"value":5604},{"type":3087,"tag":3170,"props":6645,"children":6646},{"style":3364},[6647],{"type":3092,"value":4501},{"type":3087,"tag":3170,"props":6649,"children":6650},{"style":3364},[6651],{"type":3092,"value":5613},{"type":3087,"tag":3170,"props":6653,"children":6654},{"style":3358},[6655],{"type":3092,"value":6565},{"type":3087,"tag":3170,"props":6657,"children":6658},{"style":3364},[6659],{"type":3092,"value":3707},{"type":3087,"tag":3170,"props":6661,"children":6662},{"style":3358},[6663],{"type":3092,"value":6574},{"type":3087,"tag":3170,"props":6665,"children":6666},{"style":3364},[6667],{"type":3092,"value":5613},{"type":3087,"tag":3170,"props":6669,"children":6670},{"style":3364},[6671],{"type":3092,"value":6548},{"type":3087,"tag":3170,"props":6673,"children":6674},{"style":3509},[6675],{"type":3092,"value":5635},{"type":3087,"tag":3170,"props":6677,"children":6678},{"style":3364},[6679],{"type":3092,"value":4501},{"type":3087,"tag":3170,"props":6681,"children":6682},{"style":3364},[6683],{"type":3092,"value":5613},{"type":3087,"tag":3170,"props":6685,"children":6686},{"style":3358},[6687],{"type":3092,"value":6599},{"type":3087,"tag":3170,"props":6689,"children":6690},{"style":3364},[6691],{"type":3092,"value":3707},{"type":3087,"tag":3170,"props":6693,"children":6694},{"style":3358},[6695],{"type":3092,"value":6608},{"type":3087,"tag":3170,"props":6697,"children":6698},{"style":3364},[6699],{"type":3092,"value":5613},{"type":3087,"tag":3170,"props":6701,"children":6702},{"style":3364},[6703],{"type":3092,"value":6617},{"type":3087,"tag":3170,"props":6705,"children":6706},{"class":3250,"line":3425},[6707],{"type":3087,"tag":3170,"props":6708,"children":6709},{"emptyLinePlaceholder":1200},[6710],{"type":3092,"value":4540},{"type":3087,"tag":3170,"props":6712,"children":6713},{"class":3250,"line":3444},[6714,6718,6722,6726,6730,6734,6738,6742,6746,6750,6754,6758,6762,6766,6770,6774,6778,6782,6786],{"type":3087,"tag":3170,"props":6715,"children":6716},{"style":3364},[6717],{"type":3092,"value":5568},{"type":3087,"tag":3170,"props":6719,"children":6720},{"style":3373},[6721],{"type":3092,"value":6027},{"type":3087,"tag":3170,"props":6723,"children":6724},{"style":3364},[6725],{"type":3092,"value":6548},{"type":3087,"tag":3170,"props":6727,"children":6728},{"style":3509},[6729],{"type":3092,"value":5604},{"type":3087,"tag":3170,"props":6731,"children":6732},{"style":3364},[6733],{"type":3092,"value":4501},{"type":3087,"tag":3170,"props":6735,"children":6736},{"style":3364},[6737],{"type":3092,"value":5613},{"type":3087,"tag":3170,"props":6739,"children":6740},{"style":3358},[6741],{"type":3092,"value":6565},{"type":3087,"tag":3170,"props":6743,"children":6744},{"style":3364},[6745],{"type":3092,"value":3707},{"type":3087,"tag":3170,"props":6747,"children":6748},{"style":3358},[6749],{"type":3092,"value":6574},{"type":3087,"tag":3170,"props":6751,"children":6752},{"style":3364},[6753],{"type":3092,"value":5613},{"type":3087,"tag":3170,"props":6755,"children":6756},{"style":3364},[6757],{"type":3092,"value":6548},{"type":3087,"tag":3170,"props":6759,"children":6760},{"style":3509},[6761],{"type":3092,"value":5635},{"type":3087,"tag":3170,"props":6763,"children":6764},{"style":3364},[6765],{"type":3092,"value":4501},{"type":3087,"tag":3170,"props":6767,"children":6768},{"style":3364},[6769],{"type":3092,"value":5613},{"type":3087,"tag":3170,"props":6771,"children":6772},{"style":3358},[6773],{"type":3092,"value":6599},{"type":3087,"tag":3170,"props":6775,"children":6776},{"style":3364},[6777],{"type":3092,"value":3707},{"type":3087,"tag":3170,"props":6779,"children":6780},{"style":3358},[6781],{"type":3092,"value":6608},{"type":3087,"tag":3170,"props":6783,"children":6784},{"style":3364},[6785],{"type":3092,"value":5613},{"type":3087,"tag":3170,"props":6787,"children":6788},{"style":3364},[6789],{"type":3092,"value":5578},{"type":3087,"tag":3170,"props":6791,"children":6792},{"class":3250,"line":3457},[6793],{"type":3087,"tag":3170,"props":6794,"children":6795},{"style":3358},[6796],{"type":3092,"value":6181},{"type":3087,"tag":3170,"props":6798,"children":6799},{"class":3250,"line":3474},[6800],{"type":3087,"tag":3170,"props":6801,"children":6802},{"style":3358},[6803],{"type":3092,"value":6189},{"type":3087,"tag":3170,"props":6805,"children":6806},{"class":3250,"line":3491},[6807],{"type":3087,"tag":3170,"props":6808,"children":6809},{"style":3358},[6810],{"type":3092,"value":6811},"    \u003Cbutton>Delete\u003C\u002Fbutton>\n",{"type":3087,"tag":3170,"props":6813,"children":6814},{"class":3250,"line":3519},[6815],{"type":3087,"tag":3170,"props":6816,"children":6817},{"style":3358},[6818],{"type":3092,"value":6197},{"type":3087,"tag":3170,"props":6820,"children":6821},{"class":3250,"line":3529},[6822],{"type":3087,"tag":3170,"props":6823,"children":6824},{"emptyLinePlaceholder":1200},[6825],{"type":3092,"value":4540},{"type":3087,"tag":3170,"props":6827,"children":6828},{"class":3250,"line":3538},[6829],{"type":3087,"tag":3170,"props":6830,"children":6831},{"style":3358},[6832],{"type":3092,"value":6212},{"type":3087,"tag":3170,"props":6834,"children":6835},{"class":3250,"line":3547},[6836],{"type":3087,"tag":3170,"props":6837,"children":6838},{"style":3358},[6839],{"type":3092,"value":6840},"    \u003Cp>You're not allowed to edit or delete the post.\u003C\u002Fp>\n",{"type":3087,"tag":3170,"props":6842,"children":6843},{"class":3250,"line":3076},[6844],{"type":3087,"tag":3170,"props":6845,"children":6846},{"style":3358},[6847],{"type":3092,"value":6197},{"type":3087,"tag":3170,"props":6849,"children":6850},{"class":3250,"line":3564},[6851,6855,6859],{"type":3087,"tag":3170,"props":6852,"children":6853},{"style":3364},[6854],{"type":3092,"value":5748},{"type":3087,"tag":3170,"props":6856,"children":6857},{"style":3373},[6858],{"type":3092,"value":6027},{"type":3087,"tag":3170,"props":6860,"children":6861},{"style":3364},[6862],{"type":3092,"value":5578},{"type":3087,"tag":3191,"props":6864,"children":6866},{"id":6865},"contribution",[6867],{"type":3092,"value":1021},{"type":3087,"tag":6869,"props":6870,"children":6871},"details",{},[6872,6874,6880],{"type":3092,"value":6873},"\n  ",{"type":3087,"tag":6875,"props":6876,"children":6877},"summary",{},[6878],{"type":3092,"value":6879},"Local development",{"type":3087,"tag":3238,"props":6881,"children":6883},{"className":3240,"code":6882,"language":3242,"meta":3037,"style":3037},"# 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",[6884],{"type":3087,"tag":3245,"props":6885,"children":6886},{"__ignoreMap":3037},[6887,6895,6908,6915,6923,6940,6947,6955,6971,6978,6986,7002,7009,7017,7033,7040,7049,7066,7083,7091,7100],{"type":3087,"tag":3170,"props":6888,"children":6889},{"class":3250,"line":3071},[6890],{"type":3087,"tag":3170,"props":6891,"children":6892},{"style":3523},[6893],{"type":3092,"value":6894},"# Install dependencies\n",{"type":3087,"tag":3170,"props":6896,"children":6897},{"class":3250,"line":3064},[6898,6903],{"type":3087,"tag":3170,"props":6899,"children":6900},{"style":3254},[6901],{"type":3092,"value":6902},"npm",{"type":3087,"tag":3170,"props":6904,"children":6905},{"style":3260},[6906],{"type":3092,"value":6907}," install\n",{"type":3087,"tag":3170,"props":6909,"children":6910},{"class":3250,"line":3060},[6911],{"type":3087,"tag":3170,"props":6912,"children":6913},{"emptyLinePlaceholder":1200},[6914],{"type":3092,"value":4540},{"type":3087,"tag":3170,"props":6916,"children":6917},{"class":3250,"line":3425},[6918],{"type":3087,"tag":3170,"props":6919,"children":6920},{"style":3523},[6921],{"type":3092,"value":6922},"# Generate type stubs\n",{"type":3087,"tag":3170,"props":6924,"children":6925},{"class":3250,"line":3444},[6926,6930,6935],{"type":3087,"tag":3170,"props":6927,"children":6928},{"style":3254},[6929],{"type":3092,"value":6902},{"type":3087,"tag":3170,"props":6931,"children":6932},{"style":3260},[6933],{"type":3092,"value":6934}," run",{"type":3087,"tag":3170,"props":6936,"children":6937},{"style":3260},[6938],{"type":3092,"value":6939}," dev:prepare\n",{"type":3087,"tag":3170,"props":6941,"children":6942},{"class":3250,"line":3457},[6943],{"type":3087,"tag":3170,"props":6944,"children":6945},{"emptyLinePlaceholder":1200},[6946],{"type":3092,"value":4540},{"type":3087,"tag":3170,"props":6948,"children":6949},{"class":3250,"line":3474},[6950],{"type":3087,"tag":3170,"props":6951,"children":6952},{"style":3523},[6953],{"type":3092,"value":6954},"# Develop with the playground\n",{"type":3087,"tag":3170,"props":6956,"children":6957},{"class":3250,"line":3491},[6958,6962,6966],{"type":3087,"tag":3170,"props":6959,"children":6960},{"style":3254},[6961],{"type":3092,"value":6902},{"type":3087,"tag":3170,"props":6963,"children":6964},{"style":3260},[6965],{"type":3092,"value":6934},{"type":3087,"tag":3170,"props":6967,"children":6968},{"style":3260},[6969],{"type":3092,"value":6970}," dev\n",{"type":3087,"tag":3170,"props":6972,"children":6973},{"class":3250,"line":3519},[6974],{"type":3087,"tag":3170,"props":6975,"children":6976},{"emptyLinePlaceholder":1200},[6977],{"type":3092,"value":4540},{"type":3087,"tag":3170,"props":6979,"children":6980},{"class":3250,"line":3529},[6981],{"type":3087,"tag":3170,"props":6982,"children":6983},{"style":3523},[6984],{"type":3092,"value":6985},"# Build the playground\n",{"type":3087,"tag":3170,"props":6987,"children":6988},{"class":3250,"line":3538},[6989,6993,6997],{"type":3087,"tag":3170,"props":6990,"children":6991},{"style":3254},[6992],{"type":3092,"value":6902},{"type":3087,"tag":3170,"props":6994,"children":6995},{"style":3260},[6996],{"type":3092,"value":6934},{"type":3087,"tag":3170,"props":6998,"children":6999},{"style":3260},[7000],{"type":3092,"value":7001}," dev:build\n",{"type":3087,"tag":3170,"props":7003,"children":7004},{"class":3250,"line":3547},[7005],{"type":3087,"tag":3170,"props":7006,"children":7007},{"emptyLinePlaceholder":1200},[7008],{"type":3092,"value":4540},{"type":3087,"tag":3170,"props":7010,"children":7011},{"class":3250,"line":3076},[7012],{"type":3087,"tag":3170,"props":7013,"children":7014},{"style":3523},[7015],{"type":3092,"value":7016},"# Run ESLint\n",{"type":3087,"tag":3170,"props":7018,"children":7019},{"class":3250,"line":3564},[7020,7024,7028],{"type":3087,"tag":3170,"props":7021,"children":7022},{"style":3254},[7023],{"type":3092,"value":6902},{"type":3087,"tag":3170,"props":7025,"children":7026},{"style":3260},[7027],{"type":3092,"value":6934},{"type":3087,"tag":3170,"props":7029,"children":7030},{"style":3260},[7031],{"type":3092,"value":7032}," lint\n",{"type":3087,"tag":3170,"props":7034,"children":7035},{"class":3250,"line":3573},[7036],{"type":3087,"tag":3170,"props":7037,"children":7038},{"emptyLinePlaceholder":1200},[7039],{"type":3092,"value":4540},{"type":3087,"tag":3170,"props":7041,"children":7043},{"class":3250,"line":7042},16,[7044],{"type":3087,"tag":3170,"props":7045,"children":7046},{"style":3523},[7047],{"type":3092,"value":7048},"# Run Vitest\n",{"type":3087,"tag":3170,"props":7050,"children":7052},{"class":3250,"line":7051},17,[7053,7057,7061],{"type":3087,"tag":3170,"props":7054,"children":7055},{"style":3254},[7056],{"type":3092,"value":6902},{"type":3087,"tag":3170,"props":7058,"children":7059},{"style":3260},[7060],{"type":3092,"value":6934},{"type":3087,"tag":3170,"props":7062,"children":7063},{"style":3260},[7064],{"type":3092,"value":7065}," test\n",{"type":3087,"tag":3170,"props":7067,"children":7069},{"class":3250,"line":7068},18,[7070,7074,7078],{"type":3087,"tag":3170,"props":7071,"children":7072},{"style":3254},[7073],{"type":3092,"value":6902},{"type":3087,"tag":3170,"props":7075,"children":7076},{"style":3260},[7077],{"type":3092,"value":6934},{"type":3087,"tag":3170,"props":7079,"children":7080},{"style":3260},[7081],{"type":3092,"value":7082}," test:watch\n",{"type":3087,"tag":3170,"props":7084,"children":7086},{"class":3250,"line":7085},19,[7087],{"type":3087,"tag":3170,"props":7088,"children":7089},{"emptyLinePlaceholder":1200},[7090],{"type":3092,"value":4540},{"type":3087,"tag":3170,"props":7092,"children":7094},{"class":3250,"line":7093},20,[7095],{"type":3087,"tag":3170,"props":7096,"children":7097},{"style":3523},[7098],{"type":3092,"value":7099},"# Release new version\n",{"type":3087,"tag":3170,"props":7101,"children":7103},{"class":3250,"line":7102},21,[7104,7108,7112],{"type":3087,"tag":3170,"props":7105,"children":7106},{"style":3254},[7107],{"type":3092,"value":6902},{"type":3087,"tag":3170,"props":7109,"children":7110},{"style":3260},[7111],{"type":3092,"value":6934},{"type":3087,"tag":3170,"props":7113,"children":7114},{"style":3260},[7115],{"type":3092,"value":7116}," release\n",{"type":3087,"tag":3191,"props":7118,"children":7120},{"id":7119},"credits",[7121],{"type":3092,"value":7122},"Credits",{"type":3087,"tag":3094,"props":7124,"children":7125},{},[7126,7128,7135],{"type":3092,"value":7127},"This module, both code and design, is heavily inspired by the ",{"type":3087,"tag":3098,"props":7129,"children":7132},{"href":7130,"rel":7131},"https:\u002F\u002Fdocs.adonisjs.com\u002Fguides\u002Fsecurity\u002Fauthorization",[3102],[7133],{"type":3092,"value":7134},"Adonis Bouncer",{"type":3092,"value":7136},". It's a well written package and I think reinventing the wheel every time is unnecessary.",{"type":3087,"tag":3191,"props":7138,"children":7140},{"id":7139},"license",[7141],{"type":3092,"value":3125},{"type":3087,"tag":3094,"props":7143,"children":7144},{},[7145],{"type":3087,"tag":3098,"props":7146,"children":7148},{"href":7147},".\u002FLICENSE",[7149],{"type":3092,"value":7150},"MIT License",{"type":3087,"tag":7152,"props":7153,"children":7154},"style",{},[7155],{"type":3092,"value":7156},"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":3037,"searchDepth":3064,"depth":3064,"links":7158},[7159,7160,7161,7167,7168,7169],{"id":3193,"depth":3064,"text":399},{"id":3228,"depth":3064,"text":3231},{"id":3286,"depth":3064,"text":3289,"children":7162},[7163,7164,7165,7166],{"id":3305,"depth":3060,"text":3308},{"id":4424,"depth":3060,"text":4427},{"id":4823,"depth":3060,"text":4826},{"id":5543,"depth":3060,"text":5546},{"id":6865,"depth":3064,"text":1021},{"id":7119,"depth":3064,"text":7122},{"id":7139,"depth":3064,"text":3125},{"v5":7171,"v4":7172,"v3":7173,"v2":7174},"5 (nightly)","4.5.2","3.21.11","2.18.1"]