\n\u003C/template>\n\n### Description\n\nShort description\nSome locale keys in @nuxt/ui-pro/locale are not following the standard BCP-47 format. For example, Persian is exported as fa_ir while Nuxt i18n and most setups expect fa (or fa-IR). This mismatch forces developers to write custom mappings and may happen with other languages as well (pt_br, nb_no, …). Keys should be aligned with BCP-47 (fa, pt-BR, nb-NO, etc.) or at least provide aliases.\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\n\n```",[3137,3140,3143],{"name":3138,"color":3139},"bug","d73a4a",{"name":3141,"color":3142},"v3","49DCB8",{"name":3144,"color":3145},"triage","ffffff",4819,"nuxt","ui","open","Locale keys in @nuxt/ui-pro/locale should follow standard BCP-47 codes (fa not fa_ir)","2025-08-25T09:51:34Z","https://github.com/nuxt/ui/issues/4819",0.69671977,{"description":3155,"labels":3156,"number":3159,"owner":3147,"repository":3148,"state":3149,"title":3160,"updated_at":3161,"url":3162,"score":3163},"### Environment\n\n- Operating system: `Darwin`\n- Node Version: `v22.11.0`\n- Nuxt Version `4.0.3`\n- Package manager `pnpm@10.15.0`\n- Nuxt UI: v3.3.3\n\n\n### Is this bug related to Nuxt or Vue?\n\nNuxt\n\n### Package\n\nv3.x\n\n### Version\n\nv3.3.3\n\n### Reproduction\n\ninstall nuxt, nuxt/ui, @internationalized/date, copy paste the UCalendar example and see the build failure\n\nsee https://github.com/francois-codes/ucalendar-repro for minimal repro\n\nI tried to rollback nuxt/ui, reka-ui and @internationalized/date to what we had on our repo when the typecheck was succesful (v3.3.2, v2.4.1, v3.8.2), but I couldn't get the build to pass like on our main repo (which I can't share unfortunately). \n\nOn our main repo, if I revert before the version bump, the typecheck passes again. Happy to share the diff of the lock file if that's helpful\n\n\n### Description\n\n\nHi !\n\nWe're using nuxt 4.0.3 with nuxt/ui - today our CI bumped our nuxt UI version from v3.3.2 to v3.3.3 and `nuxt typecheck` started to fail on the UCalendar component's v-model prop\n\nWe are using `@internationalized/date`, and our implementation is fairly close from the example given in the docs. \n\nOur repo was running nuxt ui 3.3.2, with reka-ui 2.4.1 and @internationalized/date 3.8.2. If I rollback before the version update and build, everything is fine. \n\nNot super urgent as the component still works, but annoying to have these type issues that can't be fixed easily. I'm not sure I understand why it's failing as DateValue on the calendar is defined as CalendarDate | \u003C...other types> so it should work 🤔 https://github.com/adobe/react-spectrum/blob/f74b9ad1d87af520751cae1405f664f5f5312a77/packages/%40internationalized/date/src/queries.ts#L18\n\nNot sure the issue is with nuxt/ui itself, I tried to trace it to its root but I haven't been able to pin the exact cause\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell-script\n\n```",[3157,3158],{"name":3138,"color":3139},{"name":3144,"color":3145},4928,"Type error on UCalendar v-model on nuxt/ui 3.3.3","2025-09-08T19:30:35Z","https://github.com/nuxt/ui/issues/4928",0.7167546,{"description":3165,"labels":3166,"number":3176,"owner":3147,"repository":3147,"state":3149,"title":3177,"updated_at":3178,"url":3179,"score":3180},"### Describe the feature\n\nI've recently worked on support for static analysis of nuxt plugin hooks when using the object syntax. This massively improved hooking for us and allowed us to discover one short-coming of plugin hooks / plugin execution order.\r\n\r\nImagine the following situation: Your Nuxt App uses two modules, one is the official `@pinia/nuxt` module which is used for creating a store that hold the locale of the application. The other module is one you write yourself and handles authentication. The authentication module allows you to hook into an event whenever the signed in user identity changes. You now want to update your stored locale whenever the locale of the identity changes to reflect the preferences of your user.\r\nTo make that happen you create a plugin in your app that listens to the event, gets the store and updates the locale if necessary.\r\n\r\nYou now realize that this won't work, as you depend on the `pinia` plugin to have been executed before your hook callback is executed, otherwise there is no active pinia instance. Since the authentication module is generic and doesn't need `pinia`, it doesn't depend on `pinia` and might run in parallel with it.\r\n\r\nTo solve this I'm proposing the following solution\r\n1. Emit an event whenever a plugin has been resolved, `app:plugin:resolved`, with a callback parameter of the plugin name.\r\n2. Keep track of the resolved plugins\r\n3. Add a nuxtApp method `runAfterPlugin` that allows a user to register a callback that is executed either immediately (if the plugin has been resolved already) or whenever the `app:plugin:resolved` event for the relevant plugin is called.\r\n\r\nThis allows a user to side-step any race-conditions like described above. It is basically the runtime inverse of the statically defined `dependsOn`. Instead of defining which other plugin you might rely on before executing them, it allows for depending on plugins at runtime.\n\n### Additional information\n\n- [X] Would you be willing to help implement this feature?\n- [ ] Could this feature be implemented as a module?\n\n### Final checks\n\n- [X] Read the [contribution guide](https://nuxt.com/docs/community/contribution).\n- [X] Check existing [discussions](https://github.com/nuxt/nuxt/discussions) and [issues](https://github.com/nuxt/nuxt/issues).",[3167,3170,3173],{"name":3168,"color":3169},"enhancement","8DEF37",{"name":3171,"color":3172},"discussion","538de2",{"name":3174,"color":3175},"pending triage","E99695",27618,"feat: add plugin resolved hook","2024-08-09T09:50:20Z","https://github.com/nuxt/nuxt/issues/27618",0.71842206,{"description":3182,"labels":3183,"number":3187,"owner":3147,"repository":3148,"state":3149,"title":3188,"updated_at":3189,"url":3190,"score":3191},"### Environment\n\n- Operating System: Windows_NT\n- Node Version: v22.12.0\n- Nuxt Version: 3.17.4\n- CLI Version: 3.25.1\n- Nitro Version: 2.11.12\n- Package Manager: npm@10.9.0\n- User Config: compatibilityDate, devtools, ssr, future, app, css, modules, build, vite, eslint, i18n, runtimeConfig, experimental, imports\n- Runtime Modules: @nuxt/eslint@1.4.1, @nuxt/test-utils@3.19.1, @nuxt/ui@3.2.0, @nuxtjs/i18n@9.5.5\n\n### Is this bug related to Nuxt or Vue?\n\nNuxt\n\n### Version\n\nv3.2.0\n\n### Reproduction\n\nhttps://codesandbox.io/p/devbox/nuxt-ui3-n3sxks\n\n### Description\n\nThe UNavigationMenu component doesn't have built-in support for generating localized routes when using @nuxtjs/i18n. When using locale prefixes (e.g., /en/dashboard, /ar/dashboard), the navigation items don't automatically adapt to the current locale.\n\n### Expected behavior:\nThe component should automatically handle locale prefixes when @nuxtjs/i18n is configured, similar to how \u003CNuxtLink> works with localePath().\n\n### Proposed solution:\nAuto-detect @nuxtjs/i18n configuration\nApply localePath() internally to to props\nAdd optional localized prop for explicit control\nMaintain backward compatibility\n\nThis would eliminate boilerplate code and improve DX for internationalized applications using Nuxt UI navigation components.\n\n\n### Additional context\n\n**Current Workaround Required:**\n```vue\n\u003Cscript setup>\nconst { locale } = useI18n()\n\n// Manual helper function needed\nconst getLocalizedRoute = (path) => {\n if (locale.value === 'ar') {\n return `/example/ar${path}`\n }\n return `/example${path}`\n}\n\nconst sidebarItems = computed(() => [\n [{\n label: 'Dashboard',\n icon: 'i-lucide-home',\n to: getLocalizedRoute('/dashboard/'), // Manual localization\n }]\n])\n\u003C/script>\n```\n\n### Logs\n\n```shell-script\n\n```",[3184,3185,3186],{"name":3138,"color":3139},{"name":3141,"color":3142},{"name":3144,"color":3145},4465,"UNavigationMenu lacks built-in support for localized routes (i18n)","2025-07-06T14:40:52Z","https://github.com/nuxt/ui/issues/4465",0.728627,{"description":3193,"labels":3194,"number":3199,"owner":3147,"repository":3148,"state":3200,"title":3201,"updated_at":3202,"url":3203,"score":3204},"### Description\n\nHow can I make the month and week in the calendar component display in Chinese? For example, \"Monday\" is displayed as \"周一\".",[3195,3198],{"name":3196,"color":3197},"question","d876e3",{"name":3141,"color":3142},4136,"closed","Provide multi-language support for calendar component.","2025-05-12T15:35:32Z","https://github.com/nuxt/ui/issues/4136",0.7046349,{"description":3206,"labels":3207,"number":3211,"owner":3147,"repository":3147,"state":3200,"title":3212,"updated_at":3213,"url":3214,"score":3215},"I spent all this morning trying to figure out how to fix ElementUI locale + Nuxt. They just [released a new version](https://github.com/ElemeFE/element/releases/tag/v1.4.2) but even they saying this should be fixed, at least on my end with Nuxt still bugged.\r\n\r\nFor now, the method wrote under this [documentation](http://element.eleme.io/#/en-US/component/i18n) doesn't work as expected.\r\n\r\nI made a small prototype to show the problem on [Glitch.me](https://breezy-newsstand.glitch.me/). As you can see at the screenshot below, all strings disappeared:\r\n\r\n\r\nFor those who tried change the components language like me, the only way I found for now is replacing the request via Webpack plugin like that:\r\n\r\n`nuxt.config.js`\r\n```js\r\n build: {\r\n plugins: [\r\n new webpack.NormalModuleReplacementPlugin(\r\n /element-ui[\\/\\\\]lib[\\/\\\\]locale[\\/\\\\]lang[\\/\\\\]zh-CN/,\r\n 'element-ui/lib/locale/lang/en',\r\n ),\r\n ],\r\n }\r\n```\r\nI don't think this is the best solution.... and I can't define what's the cause of this problem...(if is Nuxt or ElementUI itself) So I'm leaving this workaround to help other people with the same problem here.\r\n\r\nI didn't open a issue under ElementUI repo because seems this problem is related with Nuxt...\n\n\u003C!--cmty-->\u003C!--cmty_prevent_hook-->\n\u003Cdiv align=\"right\">\u003Csub>\u003Cem>This question is available on \u003Ca href=\"https://nuxtjs.cmty.io\">Nuxt.js\u003C/a> community (\u003Ca href=\"https://nuxtjs.cmty.io/nuxt/nuxt.js/issues/c1177\">#c1177\u003C/a>)\u003C/em>\u003C/sub>\u003C/div>",[3208],{"name":3209,"color":3210},"2.x","d4c5f9",1328,"ElementUI Vue components locale / i18n issues (workaround)","2023-01-18T15:54:24Z","https://github.com/nuxt/nuxt/issues/1328",0.7120823,{"description":3217,"labels":3218,"number":3223,"owner":3147,"repository":3147,"state":3200,"title":3224,"updated_at":3225,"url":3226,"score":3227},"### Environment\r\n\r\n- i18n module installed in the Layer Project\r\n\r\n\r\nThe Layer project has 3 languages defined in the nuxt.config.ts as below:\r\n\r\n```\r\n\r\ni18n: {\r\n locales: [\r\n {\r\n code: 'en',\r\n iso: 'en_us',\r\n file: 'en-US.json',\r\n name: 'English',\r\n icon: 'circle-flags:uk'\r\n },\r\n {\r\n code: 'es',\r\n iso: 'es_es',\r\n file: 'es-ES.json',\r\n name: 'Español',\r\n icon: 'circle-flags:es'\r\n },\r\n {\r\n code: 'fr',\r\n iso: 'fr_fr',\r\n file: 'fr-FR.json',\r\n name: 'Français',\r\n icon: 'circle-flags:fr'\r\n }\r\n ],\r\n debug: false,\r\n lazy: true,\r\n langDir: 'locales',\r\n defaultLocale: 'fr'\r\n },\r\n\r\n```\r\n\r\n\r\n### Reproduction\r\n\r\nCreate a new project and extend from the Layer project thta has i18n installed with language settings in the nuxt.config.ts file\r\n\r\n### Describe the bug\r\n\r\nWhen creating a new project that extends from the Layer Poject, the new project inherits the language settings from the Layer even though the new project uses other languages (or only one of the languages from the Layer).\r\n\r\n\r\n\r\n### Additional context\r\n\r\nThis is for a e-Commerce Nuxt Layer projectthat uses languages not only for texts but also for ElasticSearch indexes for fetching products .\r\nHere is the link to the Layer project on github and the nuxt.config.ts file https://github.com/shopinvader/shopinvader-template-nuxtjs/blob/main/nuxt.config.ts\r\n\r\n### Logs\r\n\r\n_No response_",[3219,3222],{"name":3220,"color":3221},"3.x","29bc7f",{"name":3174,"color":3175},22196,"Nuxt.config.ts and (i18n) language settings from Nuxt Layer overwriting the languages setting in current project [Nuxt Layers]","2023-07-18T14:39:55Z","https://github.com/nuxt/nuxt/issues/22196",0.716054,{"description":3229,"labels":3230,"number":3232,"owner":3147,"repository":3147,"state":3200,"title":3233,"updated_at":3234,"url":3235,"score":3236},"Creating this issue to follow up with nuxt/design#5\n\nAt the moment I am thinking of using a `translations` package using TypeScript files for each text.\n\nAny ideas more than welcome about the subject and potential implementation.",[3231],{"name":3220,"color":3221},11069,"message locales","2023-01-19T14:50:27Z","https://github.com/nuxt/nuxt/issues/11069",0.72415507,{"description":3229,"labels":3238,"number":3240,"owner":3147,"repository":3147,"state":3200,"title":3233,"updated_at":3241,"url":3242,"score":3236},[3239],{"name":3220,"color":3221},11090,"2023-01-19T14:44:32Z","https://github.com/nuxt/nuxt/issues/11090",{"description":3229,"labels":3244,"number":3246,"owner":3147,"repository":3147,"state":3200,"title":3233,"updated_at":3247,"url":3248,"score":3236},[3245],{"name":3220,"color":3221},11109,"2023-01-19T14:36:16Z","https://github.com/nuxt/nuxt/issues/11109",["Reactive",3250],{},["Set"],["ShallowReactive",3253],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$fu2BeR6ofXX61Kcg-paE-_lyaHeetXm7uOjhwNUCUthY":-1},"/nuxt/ui/3729"]