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