Description
Describe the bug
Nuxt won't start when i18n is enabled. the following errors printed in console:
ERROR(vue-tsc) ';' expected.
FILE C:/www/nuxt3-boilerplate/.nuxt/typed-router/__paths.d.ts:23:8
21 |
22 |
> 23 | type ValidStringPath<T> = T extends ${string} ${string} ? false : T extends '' ? false : true;
| ^^^^^^^^^^^^^^^
24 |
25 | type ValidParam<T, R extends boolean = true> = T extends ${infer A}/${infer B}
26 | ? A extends ${string} ${string}
ERROR(vue-tsc) ';' expected.
FILE C:/www/nuxt3-boilerplate/.nuxt/typed-router/__paths.d.ts:23:31
21 |
22 |
> 23 | type ValidStringPath<T> = T extends ${string} ${string} ? false : T extends '' ? false : true;
| ^^^^^^^
24 |
25 | type ValidParam<T, R extends boolean = true> = T extends ${infer A}/${infer B}
26 | ? A extends ${string} ${string}
ERROR(vue-tsc) ';' expected.
FILE C:/www/nuxt3-boilerplate/.nuxt/typed-router/__paths.d.ts:23:73
21 |
22 |
> 23 | type ValidStringPath<T> = T extends ${string} ${string} ? false : T extends '' ? false : true;
| ^^^^^^^
24 |
25 | type ValidParam<T, R extends boolean = true> = T extends ${infer A}/${infer B}
26 | ? A extends ${string} ${string}
ERROR(vue-tsc) Type expected.
FILE C:/www/nuxt3-boilerplate/.nuxt/typed-router/__paths.d.ts:91:13
89 | ? T extends '/'
90 | ? "index"
> 91 | : : never
| ^
92 | : never;
93 |
94 |
ERROR(vue-tsc) Declaration or statement expected.
FILE C:/www/nuxt3-boilerplate/.nuxt/typed-router/__paths.d.ts:92:8
90 | ? "index"
91 | : : never
> 92 | : never;
| ^
93 |
94 |
95 |
ERROR(vue-tsc) ';' expected.
FILE C:/www/nuxt3-boilerplate/.nuxt/typed-router/__routes.ts:27:10
25 | *
26 | * */
> 27 | export type RoutesParamsRecord = {
| ^^^^
28 |
29 | }
30 |
ERROR(vue-tsc) ';' expected.
FILE C:/www/nuxt3-boilerplate/.nuxt/typed-router/__routes.ts:54:10
52 | * By default the params are unknown
53 | * */
> 54 | export type RoutesNamedLocationsResolved =
| ^^^^
55 | {
56 | name: RoutesNamesList;
57 | params: unknown;
ERROR(vue-tsc) Function type notation must be parenthesized when used in an intersection type.
FILE C:/www/nuxt3-boilerplate/.nuxt/typed-router/__routes.ts:58:6
56 | name: RoutesNamesList;
57 | params: unknown;
> 58 | } & (
| ^^
> 59 |
| ^^^^
> 60 | )
| ^^^^
> 61 |
| ^^^^
> 62 |
| ^^^^
> 63 | export type RoutesNamesListRecord = {};
| ^^^^^^^^^^^
64 |
65 | export const routesNames = {};
66 |
ERROR(vue-tsc) '=>' expected.
FILE C:/www/nuxt3-boilerplate/.nuxt/typed-router/__routes.ts:63:5
61 |
62 |
> 63 | export type RoutesNamesListRecord = {};
| ^^^^^^
64 |
65 | export const routesNames = {};
66 |
ERROR(vue-tsc) ';' expected.
FILE C:/www/nuxt3-boilerplate/.nuxt/typed-router/__routes.ts:63:12
61 |
62 |
> 63 | export type RoutesNamesListRecord = {};
| ^^^^
64 |
65 | export const routesNames = {};
66 |
[vue-tsc] Found 10 errors. Watching for file changes.
Expected behavior
to run nuxt normally
Screenshots
upon checking the generated .ts files, found those problems:
Environnement infos
- Operating System: Windows_NT
- Node Version: v18.19.0
- Nuxt Version: 3.9.1
- CLI Version: 3.10.0
- Nitro Version: 2.8.1
- Package Manager: [email protected]
- Builder: -
- User Config: devtools, modules, typescript
- Runtime Modules: @pinia/[email protected], @nuxtjs/[email protected], @nuxtjs/[email protected], @formkit/[email protected], @vueuse/[email protected], @nuxt/[email protected], [email protected], [email protected], [email protected], [email protected], @vite-pwa/[email protected]
- Build Modules: -
Your pages
folder structure
pages
├── admin
│ └── index.vue
└── index.vue
Your nuxt.config.ts
modules: [
'@pinia/nuxt',
['@nuxtjs/eslint-module', eslintConfig],
['@nuxtjs/i18n', i18nConfig],
'@formkit/auto-animate',
'@vueuse/nuxt',
['@nuxt/image', imageConfig],
['nuxt-simple-sitemap', sitemapConfig],
['nuxt-jsonld', jsonldConfig],
['nuxt-simple-robots', robotsConfig],
'nuxt-typed-router',
['@vite-pwa/nuxt', pwaConfig],
],
//i18n config
import { type ModuleOptions } from '@nuxtjs/i18n'
const config: ModuleOptions = {
defaultLocale: 'en-US',
langDir: 'config/i18n/locales/',
locales: [
{
code: 'en',
iso: 'en-US',
file: 'en-US.json',
},
{
code: 'ar',
iso: 'ar-JO',
file: 'ar-JO.json',
},
],
lazy: true,
strategy: 'prefix'
}
export default config