From a016440eb0a86545603d26ba315ce0ac7a571c1e Mon Sep 17 00:00:00 2001 From: Bobbie Goede Date: Sat, 5 Oct 2024 20:23:32 +0200 Subject: [PATCH] fix: `vueI18n` resolution not using `restructureDir` defaults (#3159) --- specs/fixtures/empty_options/nuxt.config.ts | 5 ++++- specs/fixtures/restructure/nuxt.config.ts | 4 ---- src/layers.ts | 8 ++++---- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/specs/fixtures/empty_options/nuxt.config.ts b/specs/fixtures/empty_options/nuxt.config.ts index acfd65349..ced024555 100644 --- a/specs/fixtures/empty_options/nuxt.config.ts +++ b/specs/fixtures/empty_options/nuxt.config.ts @@ -1,5 +1,8 @@ // https://nuxt.com/docs/guide/directory-structure/nuxt.config export default defineNuxtConfig({ compatibilityDate: '2024-04-03', - modules: ['@nuxtjs/i18n'] + modules: ['@nuxtjs/i18n'], + i18n: { + restructureDir: false + } }) diff --git a/specs/fixtures/restructure/nuxt.config.ts b/specs/fixtures/restructure/nuxt.config.ts index 3a8f8acd4..f29889370 100644 --- a/specs/fixtures/restructure/nuxt.config.ts +++ b/specs/fixtures/restructure/nuxt.config.ts @@ -24,15 +24,11 @@ export default defineNuxtConfig({ modules: [i18nModule, '@nuxtjs/i18n'], i18n: { - restructureDir: false, baseUrl: 'http://localhost:3000', - // langDir: 'lang', - // defaultLocale: 'fr', detectBrowserLanguage: false, compilation: { strictMessage: false }, - restructureDir: 'i18n', defaultLocale: 'en', lazy: true, locales: [ diff --git a/src/layers.ts b/src/layers.ts index 107ebbd8f..3d483cc08 100644 --- a/src/layers.ts +++ b/src/layers.ts @@ -89,8 +89,8 @@ export const mergeLayerPages = (analyzer: (pathOverride: string) => void, nuxt: } export function resolveI18nDir(layer: NuxtConfigLayer, i18n: NuxtI18nOptions, fromRootDir: boolean = false) { - if (i18n.restructureDir) { - return resolve(layer.config.rootDir, i18n.restructureDir) + if (i18n.restructureDir !== false) { + return resolve(layer.config.rootDir, i18n.restructureDir ?? 'i18n') } return resolve(layer.config.rootDir, fromRootDir ? '' : layer.config.srcDir) @@ -153,9 +153,9 @@ export const getLayerLangPaths = (nuxt: Nuxt) => { for (const layer of nuxt.options._layers) { const i18n = getLayerI18n(layer) - if (!i18n?.restructureDir && i18n?.langDir == null) continue + if (i18n?.restructureDir === false && i18n?.langDir == null) continue - langPaths.push(resolveLayerLangDir(layer, i18n)) + langPaths.push(resolveLayerLangDir(layer, i18n || {})) } return langPaths