[{"data":1,"prerenderedAt":1890},["ShallowReactive",2],{"navigation":3,"v3-navigation":411,"\u002Fguide\u002Fstrategy":738,"\u002Fguide\u002Fstrategy-surround":1885},[4,130,180,277,298,319,346],{"title":5,"order":6,"path":7,"stem":8,"children":9,"page":129},"Guide",10,"\u002Fguide","guide",[10,14,19,24,29,35,40,45,50,56,61,66,71,76,82,87,93,98,103,109,114,119,124],{"title":11,"path":12,"stem":13,"order":6,"group":11},"Getting started","\u002Fguide\u002Fgetting-started","guide\u002Fgetting-started",{"title":15,"path":16,"stem":17,"order":18,"group":11},"Migrating from @nuxtjs\u002Fi18n","\u002Fguide\u002Fmigration","guide\u002Fmigration",20,{"title":20,"path":21,"stem":22,"order":23,"group":11},"Upgrading","\u002Fguide\u002Fupgrade","guide\u002Fupgrade",30,{"title":25,"path":26,"stem":27,"order":28,"group":11},"FAQ","\u002Fguide\u002Ffaq","guide\u002Ffaq",40,{"title":30,"path":31,"stem":32,"order":33,"group":34},"Translation files","\u002Fguide\u002Ftranslations","guide\u002Ftranslations",50,"Core concepts",{"title":36,"path":37,"stem":38,"order":39,"group":34},"Page config","\u002Fguide\u002Fper-component-translations","guide\u002Fper-component-translations",60,{"title":41,"path":42,"stem":43,"order":44,"group":34},"Runtime overrides","\u002Fguide\u002Fruntime-overrides","guide\u002Fruntime-overrides",70,{"title":46,"path":47,"stem":48,"order":49,"group":34},"Server routes and API","\u002Fguide\u002Fserver-side-translations","guide\u002Fserver-side-translations",80,{"title":51,"path":52,"stem":53,"order":54,"group":55},"Routing strategies","\u002Fguide\u002Fstrategy","guide\u002Fstrategy",90,"Routing",{"title":57,"path":58,"stem":59,"order":60,"group":55},"Locale detection","\u002Fguide\u002Flocale-detection","guide\u002Flocale-detection",100,{"title":62,"path":63,"stem":64,"order":65,"group":55},"Localized paths","\u002Fguide\u002Fcustom-locale-routes","guide\u002Fcustom-locale-routes",110,{"title":67,"path":68,"stem":69,"order":70,"group":55},"Custom locale detection","\u002Fguide\u002Fcustom-auto-detect","guide\u002Fcustom-auto-detect",120,{"title":72,"path":73,"stem":74,"order":75,"group":55},"Excluding paths","\u002Fguide\u002Fexcluding-static-files","guide\u002Fexcluding-static-files",130,{"title":77,"path":78,"stem":79,"order":80,"group":81},"SEO","\u002Fguide\u002Fseo","guide\u002Fseo",140,"SEO and domains",{"title":83,"path":84,"stem":85,"order":86,"group":81},"Layers and domains","\u002Fguide\u002Flayers","guide\u002Flayers",150,{"title":88,"path":89,"stem":90,"order":91,"group":92},"Deployment","\u002Fguide\u002Fdeployment","guide\u002Fdeployment",160,"Production",{"title":94,"path":95,"stem":96,"order":97,"group":92},"Performance tuning","\u002Fguide\u002Fperformance","guide\u002Fperformance",170,{"title":99,"path":100,"stem":101,"order":102,"group":92},"Performance Test Results","\u002Fguide\u002Fperformance-results","guide\u002Fperformance-results",180,{"title":104,"path":105,"stem":106,"order":107,"group":108},"DevTools","\u002Fguide\u002Fdevtools","guide\u002Fdevtools",190,"Tooling",{"title":110,"path":111,"stem":112,"order":113,"group":108},"CLI","\u002Fguide\u002Fcli","guide\u002Fcli",200,{"title":115,"path":116,"stem":117,"order":118,"group":108},"Testing your app","\u002Fguide\u002Ftesting","guide\u002Ftesting",210,{"title":120,"path":121,"stem":122,"order":123,"group":108},"Storybook","\u002Fguide\u002Fstorybook","guide\u002Fstorybook",220,{"title":125,"path":126,"stem":127,"order":128,"group":108},"Crowdin","\u002Fguide\u002Fcrowdin","guide\u002Fcrowdin",230,false,{"title":131,"order":18,"path":132,"stem":133,"children":134},"Frameworks","\u002Fintegrations","integrations",[135,138,143,147,151,155,159,163,168,172,176],{"title":136,"path":132,"stem":137,"order":6},"Overview","integrations\u002Findex",{"title":139,"path":140,"stem":141,"order":18,"group":142},"Vue","\u002Fintegrations\u002Fvue-package","integrations\u002Fvue-package","UI frameworks",{"title":144,"path":145,"stem":146,"order":23,"group":142},"React and Preact","\u002Fintegrations\u002Freact-package","integrations\u002Freact-package",{"title":148,"path":149,"stem":150,"order":28,"group":142},"Solid","\u002Fintegrations\u002Fsolid-package","integrations\u002Fsolid-package",{"title":152,"path":153,"stem":154,"order":33,"group":142},"Astro","\u002Fintegrations\u002Fastro-package","integrations\u002Fastro-package",{"title":156,"path":157,"stem":158,"order":39,"group":142},"Astro islands","\u002Fintegrations\u002Fastro-islands","integrations\u002Fastro-islands",{"title":160,"path":161,"stem":162,"order":44,"group":142},"VitePress","\u002Fintegrations\u002Fvitepress-package","integrations\u002Fvitepress-package",{"title":164,"path":165,"stem":166,"order":49,"group":167},"Runtime","\u002Fintegrations\u002Fruntime-package","integrations\u002Fruntime-package","Runtimes",{"title":169,"path":170,"stem":171,"order":54,"group":167},"Node.js","\u002Fintegrations\u002Fnodejs-package","integrations\u002Fnodejs-package",{"title":173,"path":174,"stem":175,"order":60,"group":108},"Types generator","\u002Fintegrations\u002Ftypes-generator","integrations\u002Ftypes-generator",{"title":177,"path":178,"stem":179,"order":65,"group":108},"DevTools UI","\u002Fintegrations\u002Fdevtools-ui-package","integrations\u002Fdevtools-ui-package",{"title":181,"order":23,"path":182,"stem":183,"children":184},"API","\u002Fapi","api",[185,188,192,196,200,204],{"title":186,"path":182,"stem":187,"order":6},"API reference","api\u002Findex",{"title":189,"path":190,"stem":191,"order":18},"Module options","\u002Fapi\u002Fmodule-options","api\u002Fmodule-options",{"title":193,"path":194,"stem":195,"order":23},"CLI commands","\u002Fapi\u002Fcli","api\u002Fcli",{"title":197,"path":198,"stem":199,"order":28},"Helpers","\u002Fapi\u002Fmethods","api\u002Fmethods",{"title":201,"path":202,"stem":203,"order":33},"Hooks","\u002Fapi\u002Fevents","api\u002Fevents",{"title":205,"path":206,"stem":207,"children":208,"order":39},"Package APIs","\u002Fapi\u002Fpackages","api\u002Fpackages",[209,213,217,221,225,229,233,237,241,245,249,253,257,261,265,269,273],{"title":210,"path":211,"stem":212},"astro","\u002Fapi\u002Fpackages\u002Fastro","api\u002Fpackages\u002Fastro",{"title":214,"path":215,"stem":216},"cli","\u002Fapi\u002Fpackages\u002Fcli","api\u002Fpackages\u002Fcli",{"title":218,"path":219,"stem":220},"core","\u002Fapi\u002Fpackages\u002Fcore","api\u002Fpackages\u002Fcore",{"title":222,"path":223,"stem":224},"devtools-ui","\u002Fapi\u002Fpackages\u002Fdevtools-ui","api\u002Fpackages\u002Fdevtools-ui",{"title":226,"path":227,"stem":228},"node","\u002Fapi\u002Fpackages\u002Fnode","api\u002Fpackages\u002Fnode",{"title":230,"path":231,"stem":232},"path-strategy","\u002Fapi\u002Fpackages\u002Fpath-strategy","api\u002Fpackages\u002Fpath-strategy",{"title":234,"path":235,"stem":236},"preact","\u002Fapi\u002Fpackages\u002Fpreact","api\u002Fpackages\u002Fpreact",{"title":238,"path":239,"stem":240},"react","\u002Fapi\u002Fpackages\u002Freact","api\u002Fpackages\u002Freact",{"title":242,"path":243,"stem":244},"route-strategy","\u002Fapi\u002Fpackages\u002Froute-strategy","api\u002Fpackages\u002Froute-strategy",{"title":246,"path":247,"stem":248},"runtime","\u002Fapi\u002Fpackages\u002Fruntime","api\u002Fpackages\u002Fruntime",{"title":250,"path":251,"stem":252},"solid","\u002Fapi\u002Fpackages\u002Fsolid","api\u002Fpackages\u002Fsolid",{"title":254,"path":255,"stem":256},"test-utils","\u002Fapi\u002Fpackages\u002Ftest-utils","api\u002Fpackages\u002Ftest-utils",{"title":258,"path":259,"stem":260},"types","\u002Fapi\u002Fpackages\u002Ftypes","api\u002Fpackages\u002Ftypes",{"title":262,"path":263,"stem":264},"types-generator","\u002Fapi\u002Fpackages\u002Ftypes-generator","api\u002Fpackages\u002Ftypes-generator",{"title":266,"path":267,"stem":268},"utils","\u002Fapi\u002Fpackages\u002Futils","api\u002Fpackages\u002Futils",{"title":270,"path":271,"stem":272},"vitepress","\u002Fapi\u002Fpackages\u002Fvitepress","api\u002Fpackages\u002Fvitepress",{"title":274,"path":275,"stem":276},"vue","\u002Fapi\u002Fpackages\u002Fvue","api\u002Fpackages\u002Fvue",{"title":278,"order":28,"path":279,"stem":280,"children":281,"page":129},"Composables","\u002Fcomposables","composables",[282,286,290,294],{"title":283,"path":284,"stem":285,"order":6},"useI18n","\u002Fcomposables\u002FuseI18n","composables\u002FuseI18n",{"title":287,"path":288,"stem":289,"order":18},"useI18nLocale","\u002Fcomposables\u002FuseI18nLocale","composables\u002FuseI18nLocale",{"title":291,"path":292,"stem":293,"order":23},"useI18nHead","\u002Fcomposables\u002FuseI18nHead","composables\u002FuseI18nHead",{"title":295,"path":296,"stem":297,"order":28},"useLocaleHead","\u002Fcomposables\u002FuseLocaleHead","composables\u002FuseLocaleHead",{"title":299,"order":33,"path":300,"stem":301,"children":302,"page":129},"Components","\u002Fcomponents","components",[303,307,311,315],{"title":304,"path":305,"stem":306,"order":6},"\u003Ci18n-t>","\u002Fcomponents\u002Fi18n-t","components\u002Fi18n-t",{"title":308,"path":309,"stem":310,"order":18},"\u003Ci18n-link>","\u002Fcomponents\u002Fi18n-link","components\u002Fi18n-link",{"title":312,"path":313,"stem":314,"order":23},"\u003Ci18n-switcher>","\u002Fcomponents\u002Fi18n-switcher","components\u002Fi18n-switcher",{"title":316,"path":317,"stem":318,"order":28},"\u003Ci18n-group>","\u002Fcomponents\u002Fi18n-group","components\u002Fi18n-group",{"title":320,"order":39,"path":321,"stem":322,"children":323},"Contributing","\u002Fcontributing","contributing",[324,326,330,334,338,342],{"title":320,"path":321,"stem":325,"order":6},"contributing\u002Findex",{"title":327,"path":328,"stem":329,"order":18},"Architecture","\u002Fcontributing\u002Farchitecture","contributing\u002Farchitecture",{"title":331,"path":332,"stem":333,"order":23},"Testing the module","\u002Fcontributing\u002Ftesting","contributing\u002Ftesting",{"title":335,"path":336,"stem":337,"order":28},"Maintenance commands","\u002Fcontributing\u002Fmaintenance-commands","contributing\u002Fmaintenance-commands",{"title":339,"path":340,"stem":341,"order":33},"Release smoke checks","\u002Fcontributing\u002Frelease-smoke","contributing\u002Frelease-smoke",{"title":343,"path":344,"stem":345,"order":39},"Benchmark methodology","\u002Fcontributing\u002Fperformance-methodology","contributing\u002Fperformance-methodology",{"title":347,"path":348,"stem":349,"children":350,"order":44},"News","\u002Fnews","news\u002Findex",[351,354,359,363,367,371,375,379,383,387,391,395,399,403,407],{"title":352,"path":348,"stem":349,"order":353},"News & Releases",1,{"title":355,"path":356,"stem":357,"order":358},"v4.1.0","\u002Fnews\u002Fv4.1.0","news\u002Fv4.1.0",9,{"title":360,"path":361,"stem":362,"order":6},"v4.0.0","\u002Fnews\u002Fv4.0.0","news\u002Fv4.0.0",{"title":364,"path":365,"stem":366,"order":18},"v3.24.0","\u002Fnews\u002Fv3.24.0","news\u002Fv3.24.0",{"title":368,"path":369,"stem":370,"order":23},"v3.22.0","\u002Fnews\u002Fv3.22.0","news\u002Fv3.22.0",{"title":372,"path":373,"stem":374,"order":28},"v3.21.0","\u002Fnews\u002Fv3.21.0","news\u002Fv3.21.0",{"title":376,"path":377,"stem":378,"order":33},"v3.20.0","\u002Fnews\u002Fv3.20.0","news\u002Fv3.20.0",{"title":380,"path":381,"stem":382,"order":39},"v3.19.0","\u002Fnews\u002Fv3.19.0","news\u002Fv3.19.0",{"title":384,"path":385,"stem":386,"order":44},"v3.0.0","\u002Fnews\u002Fv3.0.0","news\u002Fv3.0.0",{"title":388,"path":389,"stem":390,"order":49},"v2.14.1","\u002Fnews\u002Fv2.14.1","news\u002Fv2.14.1",{"title":392,"path":393,"stem":394,"order":54},"v2.0.0","\u002Fnews\u002Fv2.0.0","news\u002Fv2.0.0",{"title":396,"path":397,"stem":398,"order":60},"v1.73.0","\u002Fnews\u002Fv1.73.0","news\u002Fv1.73.0",{"title":400,"path":401,"stem":402,"order":65},"v1.65.0","\u002Fnews\u002Fv1.65.0","news\u002Fv1.65.0",{"title":404,"path":405,"stem":406,"order":70},"v1.58.0","\u002Fnews\u002Fv1.58.0","news\u002Fv1.58.0",{"title":408,"path":409,"stem":410,"order":75},"v1.1.0","\u002Fnews\u002Fv1.1.0","news\u002Fv1.1.0",[412],{"title":413,"path":414,"stem":415,"children":416},"V3","\u002Fv3","v3",[417,420,557,603,696,717,734],{"title":136,"path":414,"stem":418,"order":419},"v3\u002Findex",0,{"title":5,"order":6,"path":421,"stem":422,"children":423,"page":129},"\u002Fv3\u002Fguide","v3\u002Fguide",[424,429,433,437,441,446,450,454,458,462,466,470,474,478,483,487,492,496,500,504,508,512,516,519,523,527,532,538,543,547,552],{"title":425,"path":426,"stem":427,"order":6,"group":428},"Getting Started","\u002Fv3\u002Fguide\u002Fgetting-started","v3\u002Fguide\u002Fgetting-started","Basics",{"title":430,"path":431,"stem":432,"order":18,"group":428},"Configuration","\u002Fv3\u002Fguide\u002Fconfiguration","v3\u002Fguide\u002Fconfiguration",{"title":434,"path":435,"stem":436,"order":23,"group":428},"Folder Structure","\u002Fv3\u002Fguide\u002Ffolder-structure","v3\u002Fguide\u002Ffolder-structure",{"title":438,"path":439,"stem":440,"order":28,"group":428},"Routing Strategy","\u002Fv3\u002Fguide\u002Fstrategy","v3\u002Fguide\u002Fstrategy",{"title":442,"path":443,"stem":444,"order":33,"group":445},"Translating Content","\u002Fv3\u002Fguide\u002Fusing","v3\u002Fguide\u002Fusing","Usage",{"title":447,"path":448,"stem":449,"order":39,"group":445},"Per Component Translations","\u002Fv3\u002Fguide\u002Fper-component-translations","v3\u002Fguide\u002Fper-component-translations",{"title":451,"path":452,"stem":453,"order":44,"group":445},"Custom Localized Routes","\u002Fv3\u002Fguide\u002Fcustom-locale-routes","v3\u002Fguide\u002Fcustom-locale-routes",{"title":455,"path":456,"stem":457,"order":49,"group":445},"Custom Auto Detect","\u002Fv3\u002Fguide\u002Fcustom-auto-detect","v3\u002Fguide\u002Fcustom-auto-detect",{"title":459,"path":460,"stem":461,"order":54,"group":445},"Runtime Overrides","\u002Fv3\u002Fguide\u002Fruntime-overrides","v3\u002Fguide\u002Fruntime-overrides",{"title":463,"path":464,"stem":465,"order":60,"group":445},"Layers","\u002Fv3\u002Fguide\u002Flayers","v3\u002Fguide\u002Flayers",{"title":77,"path":467,"stem":468,"order":65,"group":469},"\u002Fv3\u002Fguide\u002Fseo","v3\u002Fguide\u002Fseo","SEO & URLs",{"title":471,"path":472,"stem":473,"order":70,"group":469},"Multi Domain Locales","\u002Fv3\u002Fguide\u002Fmulti-domain-locales","v3\u002Fguide\u002Fmulti-domain-locales",{"title":475,"path":476,"stem":477,"order":75,"group":469},"Excluding Static Files","\u002Fv3\u002Fguide\u002Fexcluding-static-files","v3\u002Fguide\u002Fexcluding-static-files",{"title":479,"path":480,"stem":481,"order":80,"group":482},"Performance","\u002Fv3\u002Fguide\u002Fperformance","v3\u002Fguide\u002Fperformance","Performance & Deployment",{"title":484,"path":485,"stem":486,"order":86,"group":482},"Benchmark Results","\u002Fv3\u002Fguide\u002Fperformance-results","v3\u002Fguide\u002Fperformance-results",{"title":488,"path":489,"stem":490,"order":491,"group":482},"Performance methodology","\u002Fv3\u002Fguide\u002Fperformance-methodology","v3\u002Fguide\u002Fperformance-methodology",155,{"title":493,"path":494,"stem":495,"order":91,"group":482},"Server Side Translations","\u002Fv3\u002Fguide\u002Fserver-side-translations","v3\u002Fguide\u002Fserver-side-translations",{"title":497,"path":498,"stem":499,"order":97,"group":482},"Firebase Deployment","\u002Fv3\u002Fguide\u002Ffirebase","v3\u002Fguide\u002Ffirebase",{"title":501,"path":502,"stem":503,"order":102,"group":482},"Release Smoke Checks","\u002Fv3\u002Fguide\u002Frelease-smoke","v3\u002Fguide\u002Frelease-smoke",{"title":505,"path":506,"stem":507,"order":107,"group":482},"Preset local testing","\u002Fv3\u002Fguide\u002Fpreset-local-testing","v3\u002Fguide\u002Fpreset-local-testing",{"title":509,"path":510,"stem":511,"order":113,"group":482},"Maintenance Commands","\u002Fv3\u002Fguide\u002Fmaintenance-commands","v3\u002Fguide\u002Fmaintenance-commands",{"title":513,"path":514,"stem":515,"order":118,"group":108},"CLI Tool","\u002Fv3\u002Fguide\u002Fcli","v3\u002Fguide\u002Fcli",{"title":104,"path":517,"stem":518,"order":123,"group":108},"\u002Fv3\u002Fguide\u002Fdevtools","v3\u002Fguide\u002Fdevtools",{"title":520,"path":521,"stem":522,"order":128,"group":108},"Testing Your App","\u002Fv3\u002Fguide\u002Ftesting","v3\u002Fguide\u002Ftesting",{"title":120,"path":524,"stem":525,"order":526,"group":108},"\u002Fv3\u002Fguide\u002Fstorybook","v3\u002Fguide\u002Fstorybook",240,{"title":528,"path":529,"stem":530,"order":531,"group":108},"Crowdin Integration","\u002Fv3\u002Fguide\u002Fcrowdin","v3\u002Fguide\u002Fcrowdin",250,{"title":533,"path":534,"stem":535,"order":536,"group":537},"Migration from nuxt-i18n","\u002Fv3\u002Fguide\u002Fmigration","v3\u002Fguide\u002Fmigration",260,"Migration & Help",{"title":539,"path":540,"stem":541,"order":542,"group":537},"Upgrade to v3","\u002Fv3\u002Fguide\u002Fv3-upgrade","v3\u002Fguide\u002Fv3-upgrade",270,{"title":25,"path":544,"stem":545,"order":546,"group":537},"\u002Fv3\u002Fguide\u002Ffaq","v3\u002Fguide\u002Ffaq",280,{"title":548,"path":549,"stem":550,"order":551,"group":537},"Contribution","\u002Fv3\u002Fguide\u002Fcontribution","v3\u002Fguide\u002Fcontribution",290,{"title":553,"path":554,"stem":555,"order":556,"group":537},"Testing the Module","\u002Fv3\u002Fguide\u002Ftesting-strategies","v3\u002Fguide\u002Ftesting-strategies",300,{"title":558,"order":18,"path":559,"stem":560,"children":561},"Integrations","\u002Fv3\u002Fintegrations","v3\u002Fintegrations\u002Findex",[562,563,567,571,575,579,583,587,591,595,599],{"title":136,"path":559,"stem":560,"order":6},{"title":564,"path":565,"stem":566,"order":18},"Vue Package","\u002Fv3\u002Fintegrations\u002Fvue-package","v3\u002Fintegrations\u002Fvue-package",{"title":568,"path":569,"stem":570,"order":23},"React Package","\u002Fv3\u002Fintegrations\u002Freact-package","v3\u002Fintegrations\u002Freact-package",{"title":572,"path":573,"stem":574,"order":28},"Preact Package","\u002Fv3\u002Fintegrations\u002Fpreact-package","v3\u002Fintegrations\u002Fpreact-package",{"title":576,"path":577,"stem":578,"order":33},"Solid Package","\u002Fv3\u002Fintegrations\u002Fsolid-package","v3\u002Fintegrations\u002Fsolid-package",{"title":580,"path":581,"stem":582,"order":39},"Astro Package","\u002Fv3\u002Fintegrations\u002Fastro-package","v3\u002Fintegrations\u002Fastro-package",{"title":584,"path":585,"stem":586,"order":44},"VitePress Package","\u002Fv3\u002Fintegrations\u002Fvitepress-package","v3\u002Fintegrations\u002Fvitepress-package",{"title":588,"path":589,"stem":590,"order":49},"Runtime Package","\u002Fv3\u002Fintegrations\u002Fruntime-package","v3\u002Fintegrations\u002Fruntime-package",{"title":592,"path":593,"stem":594,"order":54},"Node.js Package","\u002Fv3\u002Fintegrations\u002Fnodejs-package","v3\u002Fintegrations\u002Fnodejs-package",{"title":596,"path":597,"stem":598,"order":60},"Types Generator","\u002Fv3\u002Fintegrations\u002Ftypes-generator","v3\u002Fintegrations\u002Ftypes-generator",{"title":600,"path":601,"stem":602,"order":65},"Devtools Package","\u002Fv3\u002Fintegrations\u002Fdevtools-ui-package","v3\u002Fintegrations\u002Fdevtools-ui-package",{"title":181,"order":23,"path":604,"stem":605,"children":606},"\u002Fv3\u002Fapi","v3\u002Fapi\u002Findex",[607,608,612,616,620,624],{"title":136,"path":604,"stem":605,"order":6},{"title":609,"path":610,"stem":611,"order":18},"Methods","\u002Fv3\u002Fapi\u002Fmethods","v3\u002Fapi\u002Fmethods",{"title":613,"path":614,"stem":615,"order":23},"Events","\u002Fv3\u002Fapi\u002Fevents","v3\u002Fapi\u002Fevents",{"title":617,"path":618,"stem":619,"order":28},"Translations and Cache","\u002Fv3\u002Fapi\u002Fi18n-cache-api","v3\u002Fapi\u002Fi18n-cache-api",{"title":621,"path":622,"stem":623,"order":33},"Module Options","\u002Fv3\u002Fapi\u002Fmodule-options","v3\u002Fapi\u002Fmodule-options",{"title":205,"path":625,"stem":626,"children":627,"order":39},"\u002Fv3\u002Fapi\u002Fpackages","v3\u002Fapi\u002Fpackages",[628,632,636,640,644,648,652,656,660,664,668,672,676,680,684,688,692],{"title":629,"path":630,"stem":631},"@i18n-micro\u002Fastro","\u002Fv3\u002Fapi\u002Fpackages\u002Fastro","v3\u002Fapi\u002Fpackages\u002Fastro",{"title":633,"path":634,"stem":635},"@i18n-micro\u002Fcore","\u002Fv3\u002Fapi\u002Fpackages\u002Fcore","v3\u002Fapi\u002Fpackages\u002Fcore",{"title":637,"path":638,"stem":639},"@i18n-micro\u002Fdevtools-ui","\u002Fv3\u002Fapi\u002Fpackages\u002Fdevtools-ui","v3\u002Fapi\u002Fpackages\u002Fdevtools-ui",{"title":641,"path":642,"stem":643},"@i18n-micro\u002Fhmr","\u002Fv3\u002Fapi\u002Fpackages\u002Fhmr","v3\u002Fapi\u002Fpackages\u002Fhmr",{"title":645,"path":646,"stem":647},"@i18n-micro\u002Fnode","\u002Fv3\u002Fapi\u002Fpackages\u002Fnode","v3\u002Fapi\u002Fpackages\u002Fnode",{"title":649,"path":650,"stem":651},"@i18n-micro\u002Fpath-strategy","\u002Fv3\u002Fapi\u002Fpackages\u002Fpath-strategy","v3\u002Fapi\u002Fpackages\u002Fpath-strategy",{"title":653,"path":654,"stem":655},"@i18n-micro\u002Fpreact","\u002Fv3\u002Fapi\u002Fpackages\u002Fpreact","v3\u002Fapi\u002Fpackages\u002Fpreact",{"title":657,"path":658,"stem":659},"@i18n-micro\u002Freact","\u002Fv3\u002Fapi\u002Fpackages\u002Freact","v3\u002Fapi\u002Fpackages\u002Freact",{"title":661,"path":662,"stem":663},"@i18n-micro\u002Froute-strategy","\u002Fv3\u002Fapi\u002Fpackages\u002Froute-strategy","v3\u002Fapi\u002Fpackages\u002Froute-strategy",{"title":665,"path":666,"stem":667},"@i18n-micro\u002Fruntime","\u002Fv3\u002Fapi\u002Fpackages\u002Fruntime","v3\u002Fapi\u002Fpackages\u002Fruntime",{"title":669,"path":670,"stem":671},"@i18n-micro\u002Fsolid","\u002Fv3\u002Fapi\u002Fpackages\u002Fsolid","v3\u002Fapi\u002Fpackages\u002Fsolid",{"title":673,"path":674,"stem":675},"@i18n-micro\u002Ftest-utils","\u002Fv3\u002Fapi\u002Fpackages\u002Ftest-utils","v3\u002Fapi\u002Fpackages\u002Ftest-utils",{"title":677,"path":678,"stem":679},"@i18n-micro\u002Ftypes","\u002Fv3\u002Fapi\u002Fpackages\u002Ftypes","v3\u002Fapi\u002Fpackages\u002Ftypes",{"title":681,"path":682,"stem":683},"@i18n-micro\u002Ftypes-generator","\u002Fv3\u002Fapi\u002Fpackages\u002Ftypes-generator","v3\u002Fapi\u002Fpackages\u002Ftypes-generator",{"title":685,"path":686,"stem":687},"@i18n-micro\u002Futils","\u002Fv3\u002Fapi\u002Fpackages\u002Futils","v3\u002Fapi\u002Fpackages\u002Futils",{"title":689,"path":690,"stem":691},"@i18n-micro\u002Fvitepress","\u002Fv3\u002Fapi\u002Fpackages\u002Fvitepress","v3\u002Fapi\u002Fpackages\u002Fvitepress",{"title":693,"path":694,"stem":695},"@i18n-micro\u002Fvue","\u002Fv3\u002Fapi\u002Fpackages\u002Fvue","v3\u002Fapi\u002Fpackages\u002Fvue",{"title":299,"order":28,"path":697,"stem":698,"children":699},"\u002Fv3\u002Fcomponents","v3\u002Fcomponents\u002Findex",[700,701,705,709,713],{"title":136,"path":697,"stem":698,"order":6},{"title":702,"path":703,"stem":704,"order":18},"i18n-t","\u002Fv3\u002Fcomponents\u002Fi18n-t","v3\u002Fcomponents\u002Fi18n-t",{"title":706,"path":707,"stem":708,"order":23},"i18n-switcher","\u002Fv3\u002Fcomponents\u002Fi18n-switcher","v3\u002Fcomponents\u002Fi18n-switcher",{"title":710,"path":711,"stem":712,"order":28},"i18n-link","\u002Fv3\u002Fcomponents\u002Fi18n-link","v3\u002Fcomponents\u002Fi18n-link",{"title":714,"path":715,"stem":716,"order":33},"i18n-group","\u002Fv3\u002Fcomponents\u002Fi18n-group","v3\u002Fcomponents\u002Fi18n-group",{"title":278,"path":718,"stem":719,"children":720,"order":33},"\u002Fv3\u002Fcomposables","v3\u002Fcomposables\u002Findex",[721,722,725,728,731],{"title":136,"path":718,"stem":719,"order":6},{"title":283,"path":723,"stem":724,"order":18},"\u002Fv3\u002Fcomposables\u002FuseI18n","v3\u002Fcomposables\u002FuseI18n",{"title":295,"path":726,"stem":727,"order":23},"\u002Fv3\u002Fcomposables\u002FuseLocaleHead","v3\u002Fcomposables\u002FuseLocaleHead",{"title":291,"path":729,"stem":730,"order":28},"\u002Fv3\u002Fcomposables\u002FuseI18nHead","v3\u002Fcomposables\u002FuseI18nHead",{"title":287,"path":732,"stem":733,"order":33},"\u002Fv3\u002Fcomposables\u002FuseI18nLocale","v3\u002Fcomposables\u002FuseI18nLocale",{"title":735,"path":736,"stem":737,"order":39},"Examples","\u002Fv3\u002Fexamples","v3\u002Fexamples",{"id":739,"title":51,"body":740,"description":1876,"extension":1877,"lastUpdated":1878,"links":1879,"meta":1880,"navigation":1882,"path":52,"seo":1883,"stem":53,"__hash__":1884},"docs\u002Fguide\u002Fstrategy.md",{"type":741,"value":742,"toc":1865},"minimark",[743,747,763,768,775,792,795,826,844,955,1162,1169,1173,1219,1225,1229,1236,1246,1325,1343,1367,1371,1710,1734,1739,1745,1816,1823,1846,1850,1861],[744,745,51],"h1",{"id":746},"routing-strategies",[748,749,750,751,755,756,759,760,762],"p",{},"The ",[752,753,754],"code",{},"strategy"," option decides whether a locale appears in the URL and for which locales. Pick it once, before you publish URLs: changing it later changes every link. The module then generates the localized routes at build time, and ",[752,757,758],{},"$localePath",", ",[752,761,308],{}," and the switcher read them.",[764,765,767],"h2",{"id":766},"the-four-strategies","The four strategies",[748,769,770],{},[771,772],"img",{"alt":773,"src":774},"The \u002Fabout page in en (default) and de under each strategy; the same URLs are listed in the text below","\u002Fdiagrams\u002Fstrategies.svg",[748,776,777,781,782,785,786,781,789],{},[778,779,780],"strong",{},"Type"," ",[752,783,784],{},"Strategies"," · ",[778,787,788],{},"Default",[752,790,791],{},"'prefix_except_default'",[748,793,794],{},"URL routing strategy for locale prefixes.",[796,797,798,805,810,816],"ul",{},[799,800,801,804],"li",{},[752,802,803],{},"'no_prefix'"," — no locale in URL; locale stored in cookie.",[799,806,807,809],{},[752,808,791],{}," — prefix all locales except the default.",[799,811,812,815],{},[752,813,814],{},"'prefix'"," — always prefix, including the default locale.",[799,817,818,821,822,825],{},[752,819,820],{},"'prefix_and_default'"," — like ",[752,823,824],{},"prefix",", but the default locale is also accessible without prefix.",[748,827,828,829,832,833,836,837,759,840,843],{},"URLs for an ",[752,830,831],{},"about"," page with ",[752,834,835],{},"defaultLocale: 'en'"," and locales ",[752,838,839],{},"en",[752,841,842],{},"de",":",[845,846,847,866],"table",{},[848,849,850],"thead",{},[851,852,853,857,860,863],"tr",{},[854,855,856],"th",{},"Strategy",[854,858,859],{},"English",[854,861,862],{},"German",[854,864,865],{},"Not served",[867,868,869,898,917,937],"tbody",{},[851,870,871,878,883,888],{},[872,873,874,877],"td",{},[752,875,876],{},"prefix_except_default"," (default)",[872,879,880],{},[752,881,882],{},"\u002Fabout",[872,884,885],{},[752,886,887],{},"\u002Fde\u002Fabout",[872,889,890,893,894,897],{},[752,891,892],{},"\u002Fen"," and ",[752,895,896],{},"\u002Fen\u002Fabout"," are a 404",[851,899,900,904,908,912],{},[872,901,902],{},[752,903,824],{},[872,905,906],{},[752,907,896],{},[872,909,910],{},[752,911,887],{},[872,913,914,916],{},[752,915,882],{}," redirects to a prefixed URL",[851,918,919,924,930,934],{},[872,920,921],{},[752,922,923],{},"prefix_and_default",[872,925,926,893,928],{},[752,927,882],{},[752,929,896],{},[872,931,932],{},[752,933,887],{},[872,935,936],{},"—",[851,938,939,944,948,952],{},[872,940,941],{},[752,942,943],{},"no_prefix",[872,945,946],{},[752,947,882],{},[872,949,950],{},[752,951,882],{},[872,953,954],{},"the locale is not in the URL",[956,957,962],"pre",{"className":958,"code":959,"language":960,"meta":961,"style":961},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u002F\u002F nuxt.config.ts\nexport default defineNuxtConfig({\n  modules: ['nuxt-i18n-micro'],\n  i18n: {\n    locales: [\n      { code: 'en', iso: 'en-US' },\n      { code: 'de', iso: 'de-DE' },\n    ],\n    defaultLocale: 'en',\n    strategy: 'prefix',\n  },\n})\n","ts","",[752,963,964,972,994,1021,1032,1043,1079,1109,1117,1132,1147,1153],{"__ignoreMap":961},[965,966,968],"span",{"class":967,"line":353},"line",[965,969,971],{"class":970},"sHwdD","\u002F\u002F nuxt.config.ts\n",[965,973,975,979,982,986,990],{"class":967,"line":974},2,[965,976,978],{"class":977},"s7zQu","export",[965,980,981],{"class":977}," default",[965,983,985],{"class":984},"s2Zo4"," defineNuxtConfig",[965,987,989],{"class":988},"sTEyZ","(",[965,991,993],{"class":992},"sMK4o","{\n",[965,995,997,1001,1003,1006,1009,1013,1015,1018],{"class":967,"line":996},3,[965,998,1000],{"class":999},"swJcz","  modules",[965,1002,843],{"class":992},[965,1004,1005],{"class":988}," [",[965,1007,1008],{"class":992},"'",[965,1010,1012],{"class":1011},"sfazB","nuxt-i18n-micro",[965,1014,1008],{"class":992},[965,1016,1017],{"class":988},"]",[965,1019,1020],{"class":992},",\n",[965,1022,1024,1027,1029],{"class":967,"line":1023},4,[965,1025,1026],{"class":999},"  i18n",[965,1028,843],{"class":992},[965,1030,1031],{"class":992}," {\n",[965,1033,1035,1038,1040],{"class":967,"line":1034},5,[965,1036,1037],{"class":999},"    locales",[965,1039,843],{"class":992},[965,1041,1042],{"class":988}," [\n",[965,1044,1046,1049,1052,1054,1057,1059,1061,1064,1067,1069,1071,1074,1076],{"class":967,"line":1045},6,[965,1047,1048],{"class":992},"      {",[965,1050,1051],{"class":999}," code",[965,1053,843],{"class":992},[965,1055,1056],{"class":992}," '",[965,1058,839],{"class":1011},[965,1060,1008],{"class":992},[965,1062,1063],{"class":992},",",[965,1065,1066],{"class":999}," iso",[965,1068,843],{"class":992},[965,1070,1056],{"class":992},[965,1072,1073],{"class":1011},"en-US",[965,1075,1008],{"class":992},[965,1077,1078],{"class":992}," },\n",[965,1080,1082,1084,1086,1088,1090,1092,1094,1096,1098,1100,1102,1105,1107],{"class":967,"line":1081},7,[965,1083,1048],{"class":992},[965,1085,1051],{"class":999},[965,1087,843],{"class":992},[965,1089,1056],{"class":992},[965,1091,842],{"class":1011},[965,1093,1008],{"class":992},[965,1095,1063],{"class":992},[965,1097,1066],{"class":999},[965,1099,843],{"class":992},[965,1101,1056],{"class":992},[965,1103,1104],{"class":1011},"de-DE",[965,1106,1008],{"class":992},[965,1108,1078],{"class":992},[965,1110,1112,1115],{"class":967,"line":1111},8,[965,1113,1114],{"class":988},"    ]",[965,1116,1020],{"class":992},[965,1118,1119,1122,1124,1126,1128,1130],{"class":967,"line":358},[965,1120,1121],{"class":999},"    defaultLocale",[965,1123,843],{"class":992},[965,1125,1056],{"class":992},[965,1127,839],{"class":1011},[965,1129,1008],{"class":992},[965,1131,1020],{"class":992},[965,1133,1134,1137,1139,1141,1143,1145],{"class":967,"line":6},[965,1135,1136],{"class":999},"    strategy",[965,1138,843],{"class":992},[965,1140,1056],{"class":992},[965,1142,824],{"class":1011},[965,1144,1008],{"class":992},[965,1146,1020],{"class":992},[965,1148,1150],{"class":967,"line":1149},11,[965,1151,1152],{"class":992},"  },\n",[965,1154,1156,1159],{"class":967,"line":1155},12,[965,1157,1158],{"class":992},"}",[965,1160,1161],{"class":988},")\n",[748,1163,1164,1165,1168],{},"The strategy is fixed at build: a runtime override of it is ignored with a warning (",[1166,1167,41],"a",{"href":42},").",[764,1170,1172],{"id":1171},"which-one-to-choose","Which one to choose",[796,1174,1175,1182,1193,1204],{},[799,1176,1177,1181],{},[778,1178,1179],{},[752,1180,876],{},": most sites. Existing unprefixed URLs keep working for the default language.",[799,1183,1184,1188,1189,1192],{},[778,1185,1186],{},[752,1187,824],{},": every language is equal; ",[752,1190,1191],{},"\u002F"," always leads to a prefixed home.",[799,1194,1195,1199,1200,1203],{},[778,1196,1197],{},[752,1198,923],{},": you need ",[752,1201,1202],{},"\u002Fen\u002F..."," and the unprefixed URLs both to work, for example while moving from one to the other. Unprefixed URLs are never redirected.",[799,1205,1206,1210,1211,1214,1215,1218],{},[778,1207,1208],{},[752,1209,943],{},": apps behind a login, or one URL per page for every language. The locale comes from a cookie or ",[752,1212,1213],{},"?locale=",". Search engines see one language per URL, so no ",[752,1216,1217],{},"hreflang"," alternates are emitted.",[748,1220,1221,1222,1224],{},"How the locale is picked for a URL, and when a visitor is redirected, is on ",[1166,1223,57],{"href":58},".",[764,1226,1228],{"id":1227},"generated-routes","Generated routes",[748,1230,1231,1232,1235],{},"At build time every page gets the route records its strategy needs. Each record carries ",[752,1233,1234],{},"meta.i18n = { name, locales }",": the page it shows and the locales it serves. Links, switches and redirects are all answered from those records, so a URL the module hands out is always one the router serves.",[748,1237,1238,1239,1242,1243,843],{},"Locales that share the page's path share one record, ",[752,1240,1241],{},"\u002F:locale(de|fr)\u002Fabout",". A locale with its own path gets its own record, named ",[752,1244,1245],{},"localized-\u003Cpage>-\u003Clocale>",[956,1247,1249],{"className":958,"code":1248,"language":960,"meta":961,"style":961},"\u002F\u002F nuxt.config.ts: German has its own path for the about page\ni18n: {\n  globalLocaleRoutes: { about: { de: '\u002Fueber-uns' } },\n}\n\u002F\u002F prefix_except_default, locales en (default), de, fr:\n\u002F\u002F about                 \u002Fabout\n\u002F\u002F localized-about       \u002F:locale(fr)\u002Fabout\n\u002F\u002F localized-about-de    \u002F:locale(de)\u002Fueber-uns\n",[752,1250,1251,1256,1266,1300,1305,1310,1315,1320],{"__ignoreMap":961},[965,1252,1253],{"class":967,"line":353},[965,1254,1255],{"class":970},"\u002F\u002F nuxt.config.ts: German has its own path for the about page\n",[965,1257,1258,1262,1264],{"class":967,"line":974},[965,1259,1261],{"class":1260},"sBMFI","i18n",[965,1263,843],{"class":992},[965,1265,1031],{"class":992},[965,1267,1268,1271,1273,1276,1279,1281,1283,1286,1288,1290,1293,1295,1298],{"class":967,"line":996},[965,1269,1270],{"class":1260},"  globalLocaleRoutes",[965,1272,843],{"class":992},[965,1274,1275],{"class":992}," {",[965,1277,1278],{"class":1260}," about",[965,1280,843],{"class":992},[965,1282,1275],{"class":992},[965,1284,1285],{"class":1260}," de",[965,1287,843],{"class":992},[965,1289,1056],{"class":992},[965,1291,1292],{"class":1011},"\u002Fueber-uns",[965,1294,1008],{"class":992},[965,1296,1297],{"class":992}," }",[965,1299,1078],{"class":992},[965,1301,1302],{"class":967,"line":1023},[965,1303,1304],{"class":992},"}\n",[965,1306,1307],{"class":967,"line":1034},[965,1308,1309],{"class":970},"\u002F\u002F prefix_except_default, locales en (default), de, fr:\n",[965,1311,1312],{"class":967,"line":1045},[965,1313,1314],{"class":970},"\u002F\u002F about                 \u002Fabout\n",[965,1316,1317],{"class":967,"line":1081},[965,1318,1319],{"class":970},"\u002F\u002F localized-about       \u002F:locale(fr)\u002Fabout\n",[965,1321,1322],{"class":967,"line":1111},[965,1323,1324],{"class":970},"\u002F\u002F localized-about-de    \u002F:locale(de)\u002Fueber-uns\n",[748,1326,1327,1328,893,1330,1332,1333,1336,1337,1224],{},"Custom paths, per-page locale lists and excluding a page from localization are on ",[1166,1329,62],{"href":63},[1166,1331,36],{"href":37},". The ",[752,1334,1335],{},"localized-"," prefix is ",[1166,1338,1340],{"href":1339},"\u002Fapi\u002Fmodule-options#localizedroutenameprefix",[752,1341,1342],{},"localizedRouteNamePrefix",[1344,1345,1346],"warning",{},[748,1347,1348,1351,1352,1355,1356,1359,1360,1363,1364,1366],{},[778,1349,1350],{},"Route names are generated"," — Do not hard-code ",[752,1353,1354],{},"localized-…"," names in ",[752,1357,1358],{},"router.push({ name })",". Pass the page's own name to ",[752,1361,1362],{},"$localeRoute"," or ",[752,1365,308],{},"; they pick the right record.",[764,1368,1370],{"id":1369},"linking-to-a-page-in-a-locale","Linking to a page in a locale",[956,1372,1375],{"className":1373,"code":1374,"language":274,"meta":961,"style":961},"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003Cscript setup lang=\"ts\">\nconst { localePath, localeRoute, switchLocalePath } = useI18n()\n\nlocalePath({ name: 'about' }) \u002F\u002F '\u002Fde\u002Fueber-uns' while the page is German\nlocalePath({ name: 'about' }, 'en') \u002F\u002F '\u002Fabout'\nlocalePath('\u002Fabout', 'de') \u002F\u002F '\u002Fde\u002Fueber-uns': a path is read as the page it shows\nlocaleRoute({ name: 'products-id', params: { id: '42' } }, 'de') \u002F\u002F resolved route: name, params, fullPath\nswitchLocalePath('fr') \u002F\u002F the current page in French\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Ci18n-link :to=\"{ name: 'about' }\">{{ $t('nav.about') }}\u003C\u002Fi18n-link>\n  \u003CNuxtLink :to=\"$switchLocalePath('de')\">Deutsch\u003C\u002FNuxtLink>\n\u003C\u002Ftemplate>\n",[752,1376,1377,1405,1436,1442,1471,1503,1528,1584,1603,1612,1616,1625,1656,1701],{"__ignoreMap":961},[965,1378,1379,1382,1385,1389,1392,1395,1398,1400,1402],{"class":967,"line":353},[965,1380,1381],{"class":992},"\u003C",[965,1383,1384],{"class":999},"script",[965,1386,1388],{"class":1387},"spNyl"," setup",[965,1390,1391],{"class":1387}," lang",[965,1393,1394],{"class":992},"=",[965,1396,1397],{"class":992},"\"",[965,1399,960],{"class":1011},[965,1401,1397],{"class":992},[965,1403,1404],{"class":992},">\n",[965,1406,1407,1410,1412,1415,1417,1420,1422,1425,1427,1430,1433],{"class":967,"line":974},[965,1408,1409],{"class":1387},"const",[965,1411,1275],{"class":992},[965,1413,1414],{"class":988}," localePath",[965,1416,1063],{"class":992},[965,1418,1419],{"class":988}," localeRoute",[965,1421,1063],{"class":992},[965,1423,1424],{"class":988}," switchLocalePath ",[965,1426,1158],{"class":992},[965,1428,1429],{"class":992}," =",[965,1431,1432],{"class":984}," useI18n",[965,1434,1435],{"class":988},"()\n",[965,1437,1438],{"class":967,"line":996},[965,1439,1441],{"emptyLinePlaceholder":1440},true,"\n",[965,1443,1444,1447,1449,1452,1455,1457,1459,1461,1463,1465,1468],{"class":967,"line":1023},[965,1445,1446],{"class":984},"localePath",[965,1448,989],{"class":988},[965,1450,1451],{"class":992},"{",[965,1453,1454],{"class":999}," name",[965,1456,843],{"class":992},[965,1458,1056],{"class":992},[965,1460,831],{"class":1011},[965,1462,1008],{"class":992},[965,1464,1297],{"class":992},[965,1466,1467],{"class":988},") ",[965,1469,1470],{"class":970},"\u002F\u002F '\u002Fde\u002Fueber-uns' while the page is German\n",[965,1472,1473,1475,1477,1479,1481,1483,1485,1487,1489,1492,1494,1496,1498,1500],{"class":967,"line":1034},[965,1474,1446],{"class":984},[965,1476,989],{"class":988},[965,1478,1451],{"class":992},[965,1480,1454],{"class":999},[965,1482,843],{"class":992},[965,1484,1056],{"class":992},[965,1486,831],{"class":1011},[965,1488,1008],{"class":992},[965,1490,1491],{"class":992}," },",[965,1493,1056],{"class":992},[965,1495,839],{"class":1011},[965,1497,1008],{"class":992},[965,1499,1467],{"class":988},[965,1501,1502],{"class":970},"\u002F\u002F '\u002Fabout'\n",[965,1504,1505,1507,1509,1511,1513,1515,1517,1519,1521,1523,1525],{"class":967,"line":1045},[965,1506,1446],{"class":984},[965,1508,989],{"class":988},[965,1510,1008],{"class":992},[965,1512,882],{"class":1011},[965,1514,1008],{"class":992},[965,1516,1063],{"class":992},[965,1518,1056],{"class":992},[965,1520,842],{"class":1011},[965,1522,1008],{"class":992},[965,1524,1467],{"class":988},[965,1526,1527],{"class":970},"\u002F\u002F '\u002Fde\u002Fueber-uns': a path is read as the page it shows\n",[965,1529,1530,1533,1535,1537,1539,1541,1543,1546,1548,1550,1553,1555,1557,1560,1562,1564,1567,1569,1571,1573,1575,1577,1579,1581],{"class":967,"line":1081},[965,1531,1532],{"class":984},"localeRoute",[965,1534,989],{"class":988},[965,1536,1451],{"class":992},[965,1538,1454],{"class":999},[965,1540,843],{"class":992},[965,1542,1056],{"class":992},[965,1544,1545],{"class":1011},"products-id",[965,1547,1008],{"class":992},[965,1549,1063],{"class":992},[965,1551,1552],{"class":999}," params",[965,1554,843],{"class":992},[965,1556,1275],{"class":992},[965,1558,1559],{"class":999}," id",[965,1561,843],{"class":992},[965,1563,1056],{"class":992},[965,1565,1566],{"class":1011},"42",[965,1568,1008],{"class":992},[965,1570,1297],{"class":992},[965,1572,1491],{"class":992},[965,1574,1056],{"class":992},[965,1576,842],{"class":1011},[965,1578,1008],{"class":992},[965,1580,1467],{"class":988},[965,1582,1583],{"class":970},"\u002F\u002F resolved route: name, params, fullPath\n",[965,1585,1586,1589,1591,1593,1596,1598,1600],{"class":967,"line":1111},[965,1587,1588],{"class":984},"switchLocalePath",[965,1590,989],{"class":988},[965,1592,1008],{"class":992},[965,1594,1595],{"class":1011},"fr",[965,1597,1008],{"class":992},[965,1599,1467],{"class":988},[965,1601,1602],{"class":970},"\u002F\u002F the current page in French\n",[965,1604,1605,1608,1610],{"class":967,"line":358},[965,1606,1607],{"class":992},"\u003C\u002F",[965,1609,1384],{"class":999},[965,1611,1404],{"class":992},[965,1613,1614],{"class":967,"line":6},[965,1615,1441],{"emptyLinePlaceholder":1440},[965,1617,1618,1620,1623],{"class":967,"line":1149},[965,1619,1381],{"class":992},[965,1621,1622],{"class":999},"template",[965,1624,1404],{"class":992},[965,1626,1627,1630,1632,1635,1637,1639,1642,1644,1647,1650,1652,1654],{"class":967,"line":1155},[965,1628,1629],{"class":992},"  \u003C",[965,1631,710],{"class":999},[965,1633,1634],{"class":1387}," :to",[965,1636,1394],{"class":992},[965,1638,1397],{"class":992},[965,1640,1641],{"class":1011},"{ name: 'about' }",[965,1643,1397],{"class":992},[965,1645,1646],{"class":992},">",[965,1648,1649],{"class":988},"{{ $t('nav.about') }}",[965,1651,1607],{"class":992},[965,1653,710],{"class":999},[965,1655,1404],{"class":992},[965,1657,1659,1661,1664,1667,1670,1672,1674,1677,1679,1681,1683,1685,1688,1690,1692,1695,1697,1699],{"class":967,"line":1658},13,[965,1660,1629],{"class":992},[965,1662,1663],{"class":999},"NuxtLink",[965,1665,1666],{"class":992}," :",[965,1668,1669],{"class":1387},"to",[965,1671,1394],{"class":992},[965,1673,1397],{"class":992},[965,1675,1676],{"class":984},"$switchLocalePath",[965,1678,989],{"class":992},[965,1680,1008],{"class":992},[965,1682,842],{"class":1011},[965,1684,1008],{"class":992},[965,1686,1687],{"class":992},")",[965,1689,1397],{"class":992},[965,1691,1646],{"class":992},[965,1693,1694],{"class":988},"Deutsch",[965,1696,1607],{"class":992},[965,1698,1663],{"class":999},[965,1700,1404],{"class":992},[965,1702,1704,1706,1708],{"class":967,"line":1703},14,[965,1705,1607],{"class":992},[965,1707,1622],{"class":999},[965,1709,1404],{"class":992},[796,1711,1712,1715,1725],{},[799,1713,1714],{},"Named routes and paths both work. A path is matched against the generated routes, so any locale's form of it is accepted.",[799,1716,1717,1718,1721,1722,1724],{},"A locale that does not serve the page (see ",[752,1719,1720],{},"locales"," in ",[1166,1723,36],{"href":37},") links to that locale's home instead of a missing page.",[799,1726,1727,1728,1731,1732,1224],{},"Per-locale params (a translated slug) go through ",[752,1729,1730],{},"$setI18nRouteParams",", see ",[1166,1733,62],{"href":63},[748,1735,1736,1737,1224],{},"Signatures are in ",[1166,1738,609],{"href":198},[764,1740,1742,1744],{"id":1741},"no_prefix-details",[752,1743,943],{}," details",[796,1746,1747,1763,1769,1788],{},[799,1748,1749,1755,1756,1759,1760,1762],{},[1166,1750,1752],{"href":1751},"\u002Fapi\u002Fmodule-options#localecookie",[752,1753,1754],{},"localeCookie"," defaults to ",[752,1757,1758],{},"'user-locale'"," under ",[752,1761,943],{},", so the choice survives a reload.",[799,1764,1765,1768],{},[752,1766,1767],{},"$switchLocale('de')"," loads the German dictionary and replaces the current history entry; the URL does not change.",[799,1770,1771,1772,1775,1776,1778,1779,893,1781,1783,1784,1787],{},"Custom per-locale paths still work: with ",[752,1773,1774],{},"globalLocaleRoutes: { about: { de: '\u002Fueber-uns' } }",", German readers get ",[752,1777,1292],{},". That URL always renders German, whatever the visitor prefers, and a page restricted to some locales renders in one of them. A path several locales share (",[752,1780,839],{},[752,1782,842],{}," both on ",[752,1785,1786],{},"\u002Fpage\u002F:id",") renders the preference when it is one of them. The preference itself stays: the next page returns to it.",[799,1789,1790,1796,1797,1799,1800,1803,1804,1806,1807,1809,1810,1812,1813,1815],{},[1166,1791,1793],{"href":1792},"\u002Fapi\u002Fmodule-options#noprefixredirect",[752,1794,1795],{},"noPrefixRedirect: true"," redirects the original path of a page with a custom path in the default locale: to the custom path of the visitor's locale, the default locale's otherwise (",[752,1798,882],{}," → ",[752,1801,1802],{},"\u002Fabout-us"," when ",[752,1805,839],{}," has ",[752,1808,1802],{},", → ",[752,1811,1292],{}," with cookie ",[752,1814,842],{},"). A locale with no custom path of its own stays on the original path and renders there. Pages with params are not redirected.",[764,1817,1819,1820],{"id":1818},"apps-without-pages","Apps without ",[752,1821,1822],{},"pages\u002F",[748,1824,1825,1826,1829,1830,1833,1834,1837,1838,1841,1842,1845],{},"With ",[752,1827,1828],{},"pages: false"," there are no page routes to localize. Use root translation files only (",[752,1831,1832],{},"disablePageLocales: true","); detection, the cookie and ",[752,1835,1836],{},"$switchLocale"," still work. The ",[752,1839,1840],{},"pages-false"," variant of ",[752,1843,1844],{},"test\u002Ffixtures\u002Fbasic"," in the repository is a working setup.",[764,1847,1849],{"id":1848},"related","Related",[1851,1852,1853,1857,1859],"card-group",{},[1854,1855],"card",{"icon":1856,"title":62,"to":63},"i-lucide-book-open",[1854,1858],{"icon":1856,"title":72,"to":73},[1854,1860],{"icon":1856,"title":77,"to":78},[1862,1863,1864],"style",{},"html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}",{"title":961,"searchDepth":974,"depth":974,"links":1866},[1867,1868,1869,1870,1871,1873,1875],{"id":766,"depth":974,"text":767},{"id":1171,"depth":974,"text":1172},{"id":1227,"depth":974,"text":1228},{"id":1369,"depth":974,"text":1370},{"id":1741,"depth":974,"text":1872},"no_prefix details",{"id":1818,"depth":974,"text":1874},"Apps without pages\u002F",{"id":1848,"depth":974,"text":1849},"The four URL strategies, the localized routes they generate, and how to link to a page in any locale.","md","2026-11-04T00:40:16+04:00",null,{"outline":1881},[974,996],{"order":54,"group":55},{"title":51,"description":1876},"Hj2U0VOmkUJKRDzDlMRHHqPkFXbEdyIbZlFU4An0zV0",[1886,1888],{"title":46,"path":47,"description":1887},"Translate strings and read the request locale inside Nitro server routes and API handlers.",{"title":57,"path":58,"description":1889},"How the locale is chosen for a page or an API request: URL, query, state, cookie, Accept-Language and default, and when a visitor is redirected.",1794131150502]